joyce8/EMBER2024-capa huggingface dataset:
Function at 0x4512d7
Capabilities:
Create directory
Enumerate files on windows
Set current directory

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4e5c36
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x260
mov dword [ebp - 0x26c], ecx
lea ecx, [ebp - 0x14]
call fcn.004048b0
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x10]
call fcn.004048b0
mov byte [ebp - 4], 1
push 0x725
mov ecx, dword [ebp - 0x26c]
call fcn.004cd5d4
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0x18]
call fcn.0040a3d0
push 0x104
push 0
lea eax, [ebp - 0x268]
push eax
call fcn.004a9cd0
add esp, 0xc
mov ecx, dword [ebp - 0x26c]
add ecx, 0x5c
push ecx
lea edx, [ebp - 0x268]
push edx
call fcn.004a9f30
add esp, 8
push 0x516dc8
lea eax, [ebp - 0x268]
push eax
call fcn.004a9f40
add esp, 8
lea ecx, [ebp - 0x268]
push ecx
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
test eax, eax
jne 0x451403
push 0
lea edx, [ebp - 0x268]
push edx
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
test eax, eax
jne 0x4513e3
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x160], eax
cmp dword [ebp - 0x160], 0xb7
je 0x4513e3
lea eax, [ebp - 0x268]
push eax
push 0x516dcc
lea ecx, [ebp - 0x10]
push ecx
call fcn.004c3f32
add esp, 0xc
push 0
push 0x516e10
lea ecx, [ebp - 0x10]
call fcn.004048d0
push eax
mov ecx, dword [ebp - 0x26c]
call fcn.004cbd0e
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x10]
call fcn.004ce361
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14]
call fcn.004ce361
jmp 0x45152c
push 0x140
push 0
lea edx, [ebp - 0x158]
push edx
call fcn.004a9cd0
add esp, 0xc
lea eax, [ebp - 0x158]
push eax
push str...ini
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov dword [ebp - 0x15c], eax
cmp dword [ebp - 0x15c], 0xffffffff
jne 0x45145a
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x10]
call fcn.004ce361
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14]
call fcn.004ce361
jmp 0x45152c
cmp dword [ebp - 0x15c], 0xffffffff
je 0x4514c8
lea ecx, [ebp - 0x14]
call fcn.004ce2ec
lea ecx, [ebp - 0x12c]
push ecx
lea ecx, [ebp - 0x14]
call fcn.004ce4ea
push 0x2e
lea ecx, [ebp - 0x14]
call fcn.004c3bcf
mov dword [ebp - 0x164], eax
push 0
mov edx, dword [ebp - 0x164]
push edx
lea ecx, [ebp - 0x14]
call fcn.004c36a2
lea ecx, [ebp - 0x14]
call fcn.004048d0
push eax
mov ecx, dword [ebp - 0x18]
call fcn.0040a3a0
lea eax, [ebp - 0x158]
push eax
mov ecx, dword [ebp - 0x15c]
push ecx
call dword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
jne 0x4514c6
jmp 0x4514c8
jmp 0x45145a
mov edx, dword [ebp - 0x15c]
push edx
call dword [sym.imp.KERNEL32.dll_FindClose]
push 0x104
push 0
mov eax, dword [ebp - 0x26c]
add eax, 0x674
push eax
call fcn.004a9cd0
add esp, 0xc
mov ecx, dword [ebp - 0x26c]
add ecx, 0x674
push ecx
push 0
mov ecx, dword [ebp - 0x18]
call fcn.00413960
push 0
mov ecx, dword [ebp - 0x18]
call fcn.0040a310
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x10]
call fcn.004ce361
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14]
call fcn.004ce361
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret
Function at 0x452fb2
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x44
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x40], 0
jmp 0x452fcd
mov eax, dword [ebp - 0x40]
add eax, 1
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 7
jge 0x45301f
push 0x3c
push 0
lea ecx, [ebp - 0x3c]
push ecx
call fcn.004a9cd0
add esp, 0xc
mov edx, dword [ebp - 0x40]
add edx, 1
push edx
push str.ITEM_d
lea eax, [ebp - 0x3c]
push eax
call fcn.004aa1dd
add esp, 0xc
mov ecx, dword [ebp + 8]
push ecx
push 0
lea edx, [ebp - 0x3c]
push edx
push str.QCCHECK
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov dword [edx + ecx*4 + 0x778], eax
jmp 0x452fc4
push 0x58
push 0
mov eax, dword [ebp - 0x44]
add eax, 0x794
push eax
call fcn.004a9cd0
add esp, 0xc
mov ecx, dword [ebp + 8]
push ecx
push 0x29
mov edx, dword [ebp - 0x44]
add edx, 0x794
push edx
push 0
push str.MODELNAME
push 0x516fd4
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov eax, dword [ebp + 8]
push eax
push 0x15
mov ecx, dword [ebp - 0x44]
add ecx, 0x7bd
push ecx
push 0
push 0x516fe0
push 0x516fe4
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov edx, dword [ebp + 8]
push edx
push 9
mov eax, dword [ebp - 0x44]
add eax, 0x7d2
push eax
push 0
push str.FWVERSION
push 0x516ffc
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov ecx, dword [ebp + 8]
push ecx
push 0
push str.BADBLOCK
push 0x517014
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov edx, dword [ebp - 0x44]
mov dword [edx + 0x7e0], eax
mov eax, dword [ebp + 8]
push eax
push 0
push str.SATASPEED
push 0x51702c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0x44]
mov dword [ecx + 0x7e4], eax
mov edx, dword [ebp + 8]
push edx
push 0
push str.DISKSIZETYPE
push 0x517048
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0x44]
mov byte [ecx + 0x7db], al
mov edx, dword [ebp + 8]
push edx
push 0
push str.CAPACITY
push 0x517060
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0x44]
mov dword [ecx + 0x7dc], eax
mov edx, dword [ebp + 8]
push edx
push 0
push 0x51706c
push str.QCCONFIG
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0x44]
mov dword [ecx + 0x7e8], eax
mov esp, ebp
pop ebp
ret 4
Function at 0x46006c
Capabilities:
Hash data using sha256

Disassembly:
push ebp
mov ebp, esp
push ecx
mov dword [ebp - 4], 0
jmp 0x460082
mov eax, dword [ebp - 4]
add eax, 1
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 8
jge 0x46009d
mov ecx, dword [ebp - 4]
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 4]
mov eax, dword [eax*4 + 0x4ed18c]
mov dword [edx + ecx*4], eax
jmp 0x460079
mov esp, ebp
pop ebp
ret
Function at 0x465f13
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x50
mov dword [ebp - 0x50], ecx
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 0
jmp 0x465f3c
mov eax, dword [ebp - 0x48]
add eax, 1
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 0x40
jae 0x46604a
mov ecx, dword [ebp - 0x48]
push ecx
push 0x51e540
lea edx, [ebp - 0x44]
push edx
call fcn.004aa1dd
add esp, 0xc
mov eax, dword [ebp - 0x50]
add eax, 0x8ec
push eax
push 0x40
lea ecx, [ebp - 0x40]
push ecx
push 0
lea edx, [ebp - 0x44]
push edx
push 0x51e544
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 0
jne 0x465f89
jmp 0x46604a
push str.0_255
lea eax, [ebp - 0x40]
push eax
call fcn.004aab30
add esp, 8
test eax, eax
jne 0x465fb4
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x50]
mov dword [edx + ecx*4 + 0x10cc], 0x100
jmp 0x466045
push 0x51e55c
lea eax, [ebp - 0x40]
push eax
call fcn.004aab30
add esp, 8
test eax, eax
jne 0x465fdc
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x50]
mov dword [edx + ecx*4 + 0x10cc], 0x101
jmp 0x466045
push 0x51e568
lea eax, [ebp - 0x40]
push eax
call fcn.004aab30
add esp, 8
test eax, eax
jne 0x466004
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x50]
mov dword [edx + ecx*4 + 0x10cc], 0x102
jmp 0x466045
push 0x51e574
lea eax, [ebp - 0x40]
push eax
call fcn.004aab30
add esp, 8
test eax, eax
jne 0x46602c
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x50]
mov dword [edx + ecx*4 + 0x10cc], 0x103
jmp 0x466045
lea eax, [ebp - 0x40]
push eax
call fcn.00491cdd
add esp, 4
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x50]
mov dword [edx + ecx*4 + 0x10cc], eax
jmp 0x465f33
mov esp, ebp
pop ebp
ret
Function at 0x489281
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x110
mov dword [ebp - 0x110], ecx
mov eax, dword [ebp - 0x110]
add eax, 0x4dc
push eax
push 0
push str.ENABLEAUTOTEST
push 0x5238a8
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0x110]
mov dword [ecx + 0xcfc], eax
cmp dword [0x5291b0], 0
jne 0x4892d5
cmp dword [0x5291ac], 0
jne 0x4892d5
cmp dword [0x528ec4], 0
je 0x4892fe
mov edx, dword [ebp - 0x110]
mov dword [edx + 0xcfc], 0
push 0
push 0x54f
mov ecx, dword [ebp - 0x110]
call fcn.004cd5d4
mov ecx, eax
call fcn.004cd9f2
mov eax, dword [ebp - 0x110]
mov ecx, dword [eax + 0xcfc]
push ecx
push 0x54f
mov ecx, dword [ebp - 0x110]
call fcn.004cd5d4
mov ecx, eax
call fcn.00404c60
mov ecx, dword [ebp - 0x110]
call fcn.00488d7c
mov dword [ebp - 0x108], 1
jmp 0x489348
mov edx, dword [ebp - 0x108]
add edx, 1
mov dword [ebp - 0x108], edx
cmp dword [ebp - 0x108], 0x11
jge 0x4893d6
push 0x104
push 0
lea eax, [ebp - 0x104]
push eax
call fcn.004a9cd0
add esp, 0xc
mov ecx, dword [ebp - 0x108]
push ecx
push str.InitialPort_d
lea edx, [ebp - 0x104]
push edx
call fcn.004aa1dd
add esp, 0xc
mov eax, dword [ebp - 0x110]
add eax, 0x4dc
push eax
push 1
lea ecx, [ebp - 0x104]
push ecx
push 0x5238c0
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x10c], eax
mov edx, dword [ebp - 0x10c]
push edx
mov eax, dword [ebp - 0x108]
add eax, 0x608
push eax
mov ecx, dword [ebp - 0x110]
call fcn.004cd5d4
mov ecx, eax
call fcn.00404c60
jmp 0x489339
mov ecx, dword [ebp - 0x110]
add ecx, 0x4dc
push ecx
push 0x14
push str.MinProgSpeed
push 0x5238d8
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov edx, dword [ebp - 0x110]
mov dword [edx + 0x208c], eax
push 0x104
push 0
lea eax, [ebp - 0x104]
push eax
call fcn.004a9cd0
add esp, 0xc
mov ecx, dword [ebp - 0x110]
mov edx, dword [ecx + 0x208c]
push edx
push 0x5238e0
lea eax, [ebp - 0x104]
push eax
call fcn.004aa1dd
add esp, 0xc
lea ecx, [ebp - 0x104]
push ecx
push 0x898
mov ecx, dword [ebp - 0x110]
call fcn.004cd6fd
cmp dword [0x528ea0], 0
je 0x489483
mov edx, dword [ebp - 0x110]
add edx, 0x4dc
push edx
push 0
push 0x5238e4
push 0x5238f8
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0x110]
mov dword [ecx + 0x2098], eax
mov edx, dword [ebp - 0x110]
mov eax, dword [edx + 0x2098]
push eax
push 0x418
mov ecx, dword [ebp - 0x110]
call fcn.004cd5d4
mov ecx, eax
call fcn.00404c60
mov ecx, dword [ebp - 0x110]
call fcn.00491476
mov esp, ebp
pop ebp
ret
Function at 0x4894d6
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x51c
mov dword [ebp - 0x51c], ecx
push 0x104
push 0
lea eax, [ebp - 0x208]
push eax
call fcn.004a9cd0
add esp, 0xc
mov ecx, dword [ebp - 0x51c]
add ecx, 0x2d4
push ecx
lea edx, [ebp - 0x208]
push edx
call fcn.004a9f30
add esp, 8
push 0x104
push 0
lea eax, [ebp - 0x518]
push eax
call fcn.004a9cd0
add esp, 0xc
mov ecx, dword [ebp + 0xc]
push ecx
push str.Config_s.ini
lea edx, [ebp - 0x518]
push edx
call fcn.004aa1dd
add esp, 0xc
lea eax, [ebp - 0x518]
push eax
lea ecx, [ebp - 0x208]
push ecx
call fcn.004a9f40
add esp, 8
push 0x104
push 0
lea edx, [ebp - 0x30c]
push edx
call fcn.004a9cd0
add esp, 0xc
lea eax, [ebp - 0x208]
push eax
push 0x104
lea ecx, [ebp - 0x30c]
push ecx
push 0
push str.FLASHNAME
push 0x52391c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push 0x104
push 0
lea edx, [ebp - 0x414]
push edx
call fcn.004a9cd0
add esp, 0xc
lea eax, [ebp - 0x208]
push eax
push 0
push str.RDTTEST
push 0x52392c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x310], eax
cmp dword [ebp - 0x310], 0
je 0x489618
cmp dword [0x5284f8], 0x979
jne 0x4895f6
push str.ISP2258RDT.bin
lea ecx, [ebp - 0x414]
push ecx
call fcn.004a9f30
add esp, 8
jmp 0x489616
cmp dword [0x5284f8], 0x97a
jne 0x489616
push str.ISP2256RDT.bin
lea edx, [ebp - 0x414]
push edx
call fcn.004a9f30
add esp, 8
jmp 0x48965a
cmp dword [0x5284f8], 0x979
jne 0x48963a
push str.ISP2258.bin
lea eax, [ebp - 0x414]
push eax
call fcn.004a9f30
add esp, 8
jmp 0x48965a
cmp dword [0x5284f8], 0x97a
jne 0x48965a
push str.ISP2256.bin
lea ecx, [ebp - 0x414]
push ecx
call fcn.004a9f30
add esp, 8
lea edx, [ebp - 0x30c]
push edx
push str.________________________Current_Parameter_setting__r_nFlash:____s_r_n
mov eax, dword [ebp + 8]
push eax
call fcn.004aa1dd
add esp, 0xc
push 0x104
push 0
lea ecx, [ebp - 0x104]
push ecx
call fcn.004a9cd0
add esp, 0xc
lea edx, [ebp - 0x414]
push edx
push str.Firmware:____s_n
lea eax, [ebp - 0x104]
push eax
call fcn.004aa1dd
add esp, 0xc
lea ecx, [ebp - 0x104]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.004a9f40
add esp, 8
mov esp, ebp
pop ebp
ret 8
Function at 0x48a0ab
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x108
mov dword [ebp - 0x108], ecx
push 0x104
push 0
mov eax, dword [ebp - 0x108]
add eax, 0x15c0
push eax
call fcn.004a9cd0
add esp, 0xc
mov ecx, dword [ebp - 0x108]
add ecx, 0x6e4
push ecx
push 0x104
mov edx, dword [ebp - 0x108]
add edx, 0x15c0
push edx
push 0
push str.MESLOGDIR
push 0x523b68
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov eax, dword [ebp - 0x108]
movsx ecx, byte [eax + 0x15c0]
test ecx, ecx
jne 0x48a152
mov edx, dword [ebp - 0x108]
add edx, 0x2d4
push edx
mov eax, dword [ebp - 0x108]
add eax, 0x15c0
push eax
call fcn.004a9f30
add esp, 8
push str.Log_file
mov ecx, dword [ebp - 0x108]
add ecx, 0x15c0
push ecx
call fcn.004a9f40
add esp, 8
push 0x104
push 0
lea edx, [ebp - 0x104]
push edx
call fcn.004a9cd0
add esp, 0xc
mov eax, dword [ebp - 0x108]
xor ecx, ecx
mov cx, word [eax + 0x207c]
push ecx
mov edx, dword [ebp - 0x108]
xor eax, eax
mov ax, word [edx + 0x2078]
push eax
mov ecx, dword [ebp - 0x108]
xor edx, edx
mov dx, word [ecx + 0x2076]
push edx
push str._04d_02d_02d_000.txt
lea eax, [ebp - 0x104]
push eax
call fcn.004aa1dd
add esp, 0x14
push 0x523b90
mov ecx, dword [ebp - 0x108]
add ecx, 0x15c0
push ecx
call fcn.004a9f40
add esp, 8
lea edx, [ebp - 0x104]
push edx
mov eax, dword [ebp - 0x108]
add eax, 0x15c0
push eax
call fcn.004a9f40
add esp, 8
mov ecx, dword [ebp - 0x108]
mov dword [ecx + 0x15bc], 0
mov esp, ebp
pop ebp
ret
Function at 0x48bae8
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc18
mov dword [ebp - 0xc14], ecx
mov eax, 1
test eax, eax
je 0x48bb0c
mov dword [ebp - 0xc18], 0
jmp 0x48bb1f
push str._TCPIP_:_Report_BadCnt_Result_n
call fcn.00410eb0
add esp, 4
mov dword [ebp - 0xc18], eax
mov dword [ebp - 0x810], 1
jmp 0x48bb3a
mov ecx, dword [ebp - 0x810]
add ecx, 1
mov dword [ebp - 0x810], ecx
mov edx, dword [ebp - 0xc14]
xor eax, eax
mov al, byte [edx + 0x1558]
add eax, 1
cmp dword [ebp - 0x810], eax
jge 0x48bcdc
push 0x800
push 0
lea ecx, [ebp - 0x80c]
push ecx
call fcn.004a9cd0
add esp, 0xc
push str._TEST_ACK
lea edx, [ebp - 0x80c]
push edx
call fcn.004a9f30
add esp, 8
push 0xa
push 0
lea eax, [ebp - 0xc]
push eax
call fcn.004a9cd0
add esp, 0xc
mov ecx, dword [ebp - 0xc14]
mov edx, dword [ecx + 0x1554]
push edx
push 0x524060
lea eax, [ebp - 0xc]
push eax
call fcn.004aa1dd
add esp, 0xc
lea ecx, [ebp - 0xc]
push ecx
lea edx, [ebp - 0x80c]
push edx
call fcn.004a9f40
add esp, 8
push 0xa
push 0
lea eax, [ebp - 0xc]
push eax
call fcn.004a9cd0
add esp, 0xc
mov ecx, dword [ebp - 0x810]
push ecx
push str.__02d
lea edx, [ebp - 0xc]
push edx
call fcn.004aa1dd
add esp, 0xc
lea eax, [ebp - 0xc]
push eax
lea ecx, [ebp - 0x80c]
push ecx
call fcn.004a9f40
add esp, 8
mov edx, dword [ebp - 0x810]
mov eax, dword [ebp - 0xc14]
cmp dword [eax + edx*4 + 0x156c], 0
je 0x48bc29
push str._FFFF
lea ecx, [ebp - 0x80c]
push ecx
call fcn.004a9f40
add esp, 8
jmp 0x48bc6e
push 0x400
push 0
lea edx, [ebp - 0xc10]
push edx
call fcn.004a9cd0
add esp, 0xc
lea eax, [ebp - 0xc10]
push eax
mov ecx, dword [ebp - 0x810]
push ecx
mov ecx, dword [ebp - 0xc14]
call fcn.0048bcfd
lea edx, [ebp - 0xc10]
push edx
lea eax, [ebp - 0x80c]
push eax
call fcn.004a9f40
add esp, 8
push 0x524078
lea ecx, [ebp - 0x80c]
push ecx
call fcn.004a9f40
add esp, 8
lea edx, [ebp - 0x80c]
push edx
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
push 0
lea eax, [ebp - 0x80c]
push eax
call fcn.004aabc0
add esp, 4
push eax
lea ecx, [ebp - 0x80c]
push ecx
mov ecx, dword [ebp - 0xc14]
add ecx, 0x130c
mov edx, dword [ebp - 0xc14]
mov eax, dword [edx + 0x130c]
call dword [eax + 0x18]
push 1
lea ecx, [ebp - 0x80c]
push ecx
mov ecx, dword [ebp - 0xc14]
call fcn.0048b380
jmp 0x48bb2b
mov edx, dword [ebp - 0xc14]
mov dword [edx + 0x15b0], 0
mov eax, dword [ebp - 0xc14]
mov byte [eax + 0x1558], 0
mov esp, ebp
pop ebp
ret
Function at 0x48ec30
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4e64f0
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x24
mov dword [ebp - 0x30], ecx
lea ecx, [ebp - 0x28]
call fcn.004048b0
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x30]
add eax, 0x6e4
push eax
push 0
push str.ENSNINDICATOR
push 0x5247b8
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0x30]
mov dword [ecx + 0x2310], eax
mov edx, dword [ebp - 0x30]
cmp dword [edx + 0x2310], 0
je 0x48edb5
push 0x44
push 0
mov eax, dword [ebp - 0x30]
add eax, 0x2314
push eax
call fcn.004a9cd0
add esp, 0xc
push 0x165
push 0
mov ecx, dword [ebp - 0x30]
add ecx, 0x2358
push ecx
call fcn.004a9cd0
add esp, 0xc
mov dword [ebp - 0x2c], 0
jmp 0x48ecd1
mov edx, dword [ebp - 0x2c]
add edx, 1
mov dword [ebp - 0x2c], edx
cmp dword [ebp - 0x2c], 0x10
jge 0x48edb5
push 0x15
push 0
lea eax, [ebp - 0x24]
push eax
call fcn.004a9cd0
add esp, 0xc
mov ecx, dword [ebp - 0x2c]
add ecx, 1
push ecx
push str.PHYSICALDRIVE_d
lea edx, [ebp - 0x28]
push edx
call fcn.004c3f32
add esp, 0xc
mov eax, dword [ebp - 0x30]
add eax, 0x6e4
push eax
push 0x15
lea ecx, [ebp - 0x24]
push ecx
push 0x5247d4
lea ecx, [ebp - 0x28]
call fcn.004048d0
push eax
push str.SNINDICATOR
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov edx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x30]
mov dword [eax + edx*4 + 0x2318], 1
push str.DEFAULT
lea ecx, [ebp - 0x24]
push ecx
call fcn.004aab30
add esp, 8
test eax, eax
jne 0x48ed64
mov edx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x30]
mov dword [eax + edx*4 + 0x2318], 0
jmp 0x48edb0
movsx ecx, byte [ebp - 0x24]
test ecx, ecx
jne 0x48ed8e
push 0x14
push 0x20
mov edx, dword [ebp - 0x2c]
add edx, 1
imul edx, edx, 0x15
mov eax, dword [ebp - 0x30]
lea ecx, [eax + edx + 0x2358]
push ecx
call fcn.004a9cd0
add esp, 0xc
jmp 0x48edb0
push 0x14
lea edx, [ebp - 0x24]
push edx
mov eax, dword [ebp - 0x2c]
add eax, 1
imul eax, eax, 0x15
mov ecx, dword [ebp - 0x30]
lea edx, [ecx + eax + 0x2358]
push edx
call fcn.004aa370
add esp, 0xc
jmp 0x48ecc8
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x28]
call fcn.004ce361
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret

Function at 0x48fb2b
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x20c
mov dword [ebp - 0x20c], ecx
cmp dword [0x528474], 0
je 0x48fbcb
push 0x104
push 0
lea eax, [ebp - 0x104]
push eax
call fcn.004a9cd0
add esp, 0xc
push 0x104
push 0
lea ecx, [ebp - 0x208]
push ecx
call fcn.004a9cd0
add esp, 0xc
push str.C:SMI_Port_InfoBypassVol.map
lea edx, [ebp - 0x104]
push edx
call fcn.004a9f30
add esp, 8
lea eax, [ebp - 0x104]
push eax
push 0x104
lea ecx, [ebp - 0x208]
push ecx
push 0x5296e0
push 0x524a48
push 0x524a4c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push 0
push 5
lea edx, [ebp - 0x208]
push edx
mov ecx, dword [ebp - 0x20c]
add ecx, 0xd4
call fcn.00491870
mov esp, ebp
pop ebp
ret
Function at 0x4911fc
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x28
mov dword [ebp - 0x28], ecx
push 0x208
push 0
mov eax, dword [ebp - 0x28]
add eax, 0x20a4
push eax
call fcn.004a9cd0
add esp, 0xc
mov ecx, dword [ebp - 0x28]
add ecx, 0x2d4
push ecx
mov edx, dword [ebp - 0x28]
add edx, 0x20a4
push edx
call fcn.004a9f30
add esp, 8
push str.Layout.set
mov eax, dword [ebp - 0x28]
add eax, 0x20a4
push eax
call fcn.004a9f40
add esp, 8
push 0x22
push 0
mov ecx, dword [ebp - 0x28]
add ecx, 0x22ac
push ecx
call fcn.004a9cd0
add esp, 0xc
mov edx, dword [ebp - 0x28]
add edx, 0x20a4
push edx
push 0
push str.PackageNo
push 0x524c38
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0x28]
mov byte [ecx + 0x22ad], al
mov edx, dword [ebp - 0x28]
add edx, 0x20a4
push edx
push 2
push str.CeNoByPackage
push 0x524c50
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0x28]
mov byte [ecx + 0x22ac], al
mov dword [ebp - 0x20], 0
jmp 0x4912c1
mov edx, dword [ebp - 0x20]
add edx, 1
mov dword [ebp - 0x20], edx
cmp dword [ebp - 0x20], 0x10
jge 0x49136c
mov dword [ebp - 0x24], 0
jmp 0x4912dd
mov eax, dword [ebp - 0x24]
add eax, 1
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 2
jge 0x491367
push 0xa
push 0
lea ecx, [ebp - 0xc]
push ecx
call fcn.004a9cd0
add esp, 0xc
mov edx, dword [ebp - 0x24]
push edx
mov eax, dword [ebp - 0x20]
add eax, 1
push eax
push str.F_d__d
lea ecx, [ebp - 0xc]
push ecx
call fcn.004aa1dd
add esp, 0x10
mov edx, dword [ebp - 0x28]
add edx, 0x20a4
push edx
push 0xa
lea eax, [ebp - 0x18]
push eax
push 0
lea ecx, [ebp - 0xc]
push ecx
push str.LAYOUT
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
movsx edx, byte [ebp - 0x18]
test edx, edx
je 0x491362
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x18]
push ecx
call fcn.00491b69
add esp, 8
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x24]
lea ecx, [eax + edx*2]
mov edx, dword [ebp - 0x28]
mov al, byte [ebp - 0x1c]
mov byte [edx + ecx + 0x22ae], al
jmp 0x4912d4
jmp 0x4912b8
mov ecx, dword [ebp - 0x28]
call fcn.00491378
mov esp, ebp
pop ebp
ret
Function at 0x493791
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x220
mov dword [ebp - 0x220], 0
cmp dword [ebp + 8], 0xffffffff
jne 0x4937bc
push str._Send_Genesys_ScanDevice_:_CreateHandle_failed
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
xor eax, eax
jmp 0x4938a8
push 0x200
push 0
lea eax, [ebp - 0x200]
push eax
call fcn.004a9cd0
add esp, 0xc
push 0x10
push 0
lea ecx, [ebp - 0x210]
push ecx
call fcn.004a9cd0
add esp, 0xc
mov byte [ebp - 0x210], 0xf8
mov byte [ebp - 0x20f], 0xff
mov byte [ebp - 0x205], 1
mov edx, dword [ebp + 8]
push edx
push 0x1e
lea eax, [ebp - 0x200]
push eax
push 0x200
push 0x10
lea ecx, [ebp - 0x210]
push ecx
lea edx, [ebp - 0x21c]
push edx
call fcn.0049ae03
add esp, 0x1c
mov dword [ebp - 0x220], eax
cmp dword [ebp - 0x220], 0
je 0x4938a6
mov eax, dword [ebp - 0x180]
and eax, 0xff
cmp eax, 0x53
jne 0x4938a6
mov ecx, dword [ebp - 0x17f]
and ecx, 0xff
cmp ecx, 0x4d
jne 0x4938a6
mov edx, dword [ebp - 0x17e]
and edx, 0xff
cmp edx, 0x49
jne 0x4938a6
cmp dword [ebp + 0x10], 0x200
ja 0x493887
mov eax, dword [ebp + 0x10]
push eax
lea ecx, [ebp - 0x200]
push ecx
mov edx, dword [ebp + 0xc]
push edx
call fcn.004aa370
add esp, 0xc
jmp 0x49389f
push 0x200
lea eax, [ebp - 0x200]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.004aa370
add esp, 0xc
mov eax, 1
jmp 0x4938a8
xor eax, eax
mov esp, ebp
pop ebp
ret