쓸만한 코드들 && 개념들

def chk(val):
    return val - 0x100000000 if val > 0x7FFFFFFF else val

ida 숫자 음수 양수 구별(DWORD)

from pwm import *
elf = ELF('./main')
data = elf.read('{address}', '{length}')

ELF 파일 데이터 불러오기(byte형)

import struct
def double(h):  # h ex) 'deadbeef'
	return struct.unpack('d', bytes.fromhex(h))[0]
union {
    uint64_t i;
    double d;
} u;
long long tmp[N] = {};
double arr[N] = {};
int main() {
    for (int i = 0; i < N; i++) {
        u.i = tmp[i];
        arr[i] = u.d;
    }
}

원시 바이트 → float/double 해석