joyce8/EMBER2024-capa huggingface dataset:
Function at 0x4c6550
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xd0
mov eax, dword [0x575494]
xor eax, ebp
mov dword [ebp - 4], eax
xor eax, eax
mov word [ebp - 0xd0], ax
mov eax, dword [esi + 0x1f0]
push edi
test eax, eax
je 0x4c65a3
push 0x65
lea ecx, [ebp - 0xd0]
push ecx
push eax
call dword [sym.imp.USER32.dll_GetWindowTextW]
test eax, eax
jg 0x4c65a3
mov edx, dword [esi + 0x1ec]
push ebx
mov ebx, dword [edx + 4]
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebx + esi + 0x1ec], eax
pop ebx
mov eax, dword [ebp + 8]
cmp eax, 0x300
jne 0x4c65ce
lea edi, [esi + 0x2fc]
push edi
lea eax, [ebp - 0xd0]
push eax
call dword [sym.imp.SHLWAPI.dll_StrCmpW]
test eax, eax
je 0x4c65f9
lea ecx, [ebp - 0xd0]
push ecx
jmp 0x4c65e2
cmp eax, 0x200
jne 0x4c65f9
lea edx, [ebp - 0xd0]
lea edi, [esi + 0x2fc]
push edx
push 0x104
push edi
call fcn.0051f979
add esp, 0xc
mov ecx, edi
mov edx, esi
call fcn.004c6870
mov ecx, dword [ebp - 4]
xor ecx, ebp
pop edi
call fcn.0051eb9c
mov esp, ebp
pop ebp
ret 4
Function at 0x4c8f20
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push ecx
cmp byte [ebp + 0x14], 0
push ebx
push esi
push edi
mov esi, ecx
lea edi, [esi + 0x3c]
mov ebx, eax
push edi
je 0x4c8f49
mov ecx, str.BrCcAdvnc.sdd
call fcn.00470370
push str.RangeScan_ImageArea
jmp 0x4c8f58
mov ecx, str.BrCcHome.sdd
call fcn.00470370
push str.ScanImgCrop_ImageArea
lea eax, [esi + 0x4c]
call fcn.005080c0
mov eax, dword [edi + 0x10]
mov ecx, eax
test eax, eax
jne 0x4c8f6e
mov ecx, 0x54ee24
xor eax, eax
cmp dword [edi + 8], eax
jle 0x4c8f99
test ecx, ecx
je 0x4c8f99
cmp word [ecx], ax
je 0x4c8f99
mov eax, dword [edi + 4]
test eax, eax
jne 0x4c8f8a
mov eax, 0x54ee24
push eax
push 0
push str.TMargin
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [esi + 0x10c4], eax
mov eax, dword [edi + 0x10]
mov ecx, eax
test eax, eax
jne 0x4c8fad
mov ecx, 0x54ee24
xor eax, eax
cmp dword [edi + 8], eax
jle 0x4c8fd8
test ecx, ecx
je 0x4c8fd8
cmp word [ecx], ax
je 0x4c8fd8
mov eax, dword [edi + 4]
test eax, eax
jne 0x4c8fc9
mov eax, 0x54ee24
push eax
push 0
push str.BMargin
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [esi + 0x10c8], eax
mov eax, dword [edi + 0x10]
mov ecx, eax
test eax, eax
jne 0x4c8fec
mov ecx, 0x54ee24
xor eax, eax
cmp dword [edi + 8], eax
jle 0x4c9017
test ecx, ecx
je 0x4c9017
cmp word [ecx], ax
je 0x4c9017
mov eax, dword [edi + 4]
test eax, eax
jne 0x4c9008
mov eax, 0x54ee24
push eax
push 0
push str.LMargin
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [esi + 0x10cc], eax
mov eax, dword [edi + 0x10]
mov ecx, eax
test eax, eax
jne 0x4c902b
mov ecx, 0x54ee24
xor eax, eax
cmp dword [edi + 8], eax
jle 0x4c9056
test ecx, ecx
je 0x4c9056
cmp word [ecx], ax
je 0x4c9056
mov eax, dword [edi + 4]
test eax, eax
jne 0x4c9047
mov eax, 0x54ee24
push eax
push 0
push str.RMargin
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov ecx, dword [esi + 0x10cc]
mov edx, dword [esi + 0x10c4]
mov edi, dword [ebp + 0x10]
sub edi, ecx
sub edi, eax
mov dword [esi + 0x10d0], eax
sub ebx, edx
sub ebx, dword [esi + 0x10c8]
push 0
mov eax, edi
mov edi, ebx
push edi
push eax
mov eax, dword [ebp + 8]
push edx
push ecx
mov ecx, dword [ebp + 0xc]
push 0x10300000
push eax
add esi, 0x5c
mov eax, 0x2374
call fcn.00468ac0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
Function at 0x4d0380
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x537da8
mov eax, dword fs:[0]
push eax
sub esp, 0x264
mov eax, dword [0x575494]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
xor ebx, ebx
xor esi, esi
mov dword [ebp - 0x224], ebx
mov dword [ebp - 0x230], esi
mov dword [ebp - 0x22c], ebx
mov dword [ebp - 0x228], ebx
mov dword [ebp - 4], ebx
mov dword [ebp - 0x24c], ebx
mov dword [ebp - method.CUseDll.virtual_0], vtable.CUseDll.0
mov dword [ebp - 0x248], ebx
mov byte [ebp - 0x244], bl
mov dword [ebp - 0x240], ebx
mov dword [ebp - 0x23c], ebx
mov dword [ebp - 0x238], ebx
mov byte [ebp - 4], 1
mov eax, dword [0x57656c]
mov edx, dword [eax + 0xc]
mov ecx, 0x57656c
call edx
add eax, 0x10
mov dword [ebp - 0x268], eax
mov byte [ebp - 4], 2
push 0x18
mov byte [ebp - 0x26c], bl
mov dword [ebp - 0x264], ebx
mov dword [ebp - 0x260], ebx
mov dword [ebp - 0x270], ebx
call fcn.0051ec07
add esp, 4
cmp eax, ebx
je 0x4d0458
mov dword [eax + 4], ebx
mov dword [eax], vtable.CUseDll.0
mov dword [eax + 8], ebx
mov byte [eax + 0xc], bl
mov dword [eax + 0x10], ebx
mov byte [eax + 0x14], bl
jmp 0x4d045a
xor eax, eax
mov dword [ebp - 0x270], eax
lea ecx, [ebp - 0x220]
push ecx
xor eax, eax
mov byte [ebp - 4], 3
push 0x104
mov word [ebp - 0x220], ax
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
test eax, eax
je 0x4d0550
push 1
lea eax, [ebp - 0x250]
call fcn.004b0230
test al, al
je 0x4d0550
mov eax, dword [ebp - 0x23c]
xor esi, esi
mov dword [ebp - 0x234], eax
cmp eax, ebx
jle 0x4d053f
lea edx, [ebp - 0x25c]
push edx
mov ecx, esi
lea edi, [ebp - 0x250]
call fcn.004b0320
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 4
call fcn.00508010
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x25c]
cmp eax, ebx
je 0x4d04fe
push eax
call fcn.0051ebab
add esp, 4
mov dword [ebp - 0x25c], ebx
mov dword [ebp - 0x258], ebx
mov dword [ebp - 0x254], ebx
cmp dword [ebp - 0x22c], ebx
jle 0x4d0532
mov eax, dword [ebp - 0x230]
cmp eax, ebx
jne 0x4d0515
mov eax, 0x54ee24
lea ecx, [ebp - 0x220]
push ecx
push eax
lea ecx, [ebp - 0x270]
call fcn.00403c80
test al, al
je 0x4d0532
inc dword [ebp - 0x224]
inc esi
cmp esi, dword [ebp - 0x234]
jl 0x4d04b2
lea edi, [ebp - 0x250]
call fcn.004b02c0
mov esi, dword [ebp - 0x230]
lea edx, [ebp - 0x270]
push edx
mov byte [ebp - 4], 1
call fcn.00403bc0
lea edi, [ebp - 0x250]
mov byte [ebp - 4], 5
call fcn.004b02c0
mov eax, edi
push eax
mov byte [ebp - 4], bl
call fcn.00441400
mov dword [ebp - 4], 0xffffffff
cmp esi, ebx
je 0x4d058e
push esi
call fcn.0051ebab
add esp, 4
mov eax, dword [ebp - 0x224]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0051eb9c
mov esp, ebp
pop ebp
ret
Function at 0x4d3610
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
mov esi, ecx
push edi
lea edi, [esi + 0x3c]
push edi
mov ecx, str.BrCcHome.sdd
mov ebx, eax
call fcn.00470370
push str.ScanFuncPage_ViewWnd_ImageArea
lea eax, [esi + 0x4c]
call fcn.005080c0
mov eax, dword [edi + 0x10]
mov ecx, eax
test eax, eax
jne 0x4d3643
mov ecx, 0x54ee24
xor eax, eax
cmp dword [edi + 8], eax
jle 0x4d366e
test ecx, ecx
je 0x4d366e
cmp word [ecx], ax
je 0x4d366e
mov eax, dword [edi + 4]
test eax, eax
jne 0x4d365f
mov eax, 0x54ee24
push eax
push 0
push str.TMargin
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [esi + 0x1658], eax
mov eax, dword [edi + 0x10]
mov ecx, eax
test eax, eax
jne 0x4d3682
mov ecx, 0x54ee24
xor eax, eax
cmp dword [edi + 8], eax
jle 0x4d36af
test ecx, ecx
je 0x4d36af
cmp word [ecx], ax
je 0x4d36af
mov edi, dword [edi + 4]
mov eax, edi
test edi, edi
jne 0x4d36a0
mov eax, 0x54ee24
push eax
push 0
push str.BMargin
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov ecx, dword [esi + 0x1644]
mov edx, dword [esi + 0x1658]
lea edi, [ecx + ecx]
sub ebx, edi
mov edi, dword [ebp + 0x10]
push 0
sub edi, edx
sub edi, eax
push edi
push ebx
push edx
push ecx
mov ecx, dword [ebp + 0xc]
mov dword [esi + 0x165c], eax
mov eax, dword [ebp + 8]
push 0x10300000
push eax
add esi, 0x5dc
mov eax, 0x2374
call fcn.00468ac0
pop edi
pop esi
pop ebx
pop ebp
ret 0xc

Function at 0x4d3f80
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x536920
mov eax, dword fs:[0]
push eax
sub esp, 0x18
push esi
push edi
mov eax, dword [0x575494]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
cmp dword [ebx + 4], 0
jle 0x4d4097
mov eax, dword [ebp + 8]
cmp dword [eax + 0xc], 0
mov esi, dword [eax + 0x20]
jle 0x4d4097
mov edi, dword [eax + 0x10]
mov eax, dword [eax + 0x14]
cmp edi, eax
je 0x4d4097
sub eax, edi
mov ecx, eax
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
test esi, esi
js 0x4d4097
cmp esi, eax
jge 0x4d4097
lea eax, [esi*8]
sub eax, esi
lea edi, [edi + eax*4 + 0xc]
push edi
lea ecx, [ebp - 0x24]
call fcn.005072b0
xor esi, esi
mov eax, ebx
lea ecx, [ebp - 0x24]
mov dword [ebp - 4], esi
call fcn.00445420
test al, al
je 0x4d4080
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x10], esi
mov eax, dword [ebp + 8]
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 1
call fcn.00508010
push 0x54ede0
call dword [sym.imp.KERNEL32.dll_lstrlenW]
push 0x54ede0
lea edi, [ebp - 0x18]
call fcn.00507dd0
mov ecx, dword [ebx]
mov eax, dword [ebx + 4]
push ecx
call fcn.00507dd0
mov edi, dword [ebp - 0x18]
mov eax, edi
cmp edi, esi
jne 0x4d4068
mov eax, 0x54ee24
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov byte [ebp - 4], 0
cmp edi, esi
je 0x4d4080
push edi
call fcn.0051ebab
add esp, 4
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x24]
cmp eax, esi
je 0x4d4097
push eax
call fcn.0051ebab
add esp, 4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 4
Function at 0x4d8530
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
lea esi, [edi + 0x3c]
push esi
mov ecx, str.BrCcHome.sdd
call fcn.00470370
cmp byte [ebp + 0x14], 0
lea eax, [edi + 0x4c]
je 0x4d855a
push str.ScanFuncPage_Mini_ScanSizeListBox
jmp 0x4d855f
push str.ScanFuncPage_ScanSizeListBox
call fcn.005080c0
mov eax, dword [esi + 0x10]
xor ebx, ebx
cmp eax, ebx
jne 0x4d8572
mov eax, 0x54ee24
mov dword [ebp - 8], ebx
cmp dword [esi + 8], ebx
jle 0x4d85a4
cmp eax, ebx
je 0x4d85a4
cmp word [eax], bx
je 0x4d85a4
mov ecx, dword [esi + 4]
cmp ecx, ebx
jne 0x4d858f
mov ecx, 0x54ee24
mov edi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
push ecx
push ebx
push str.PosiX
push eax
call edi
mov dword [ebp - 8], eax
jmp 0x4d85aa
mov edi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov ecx, dword [esi + 0x10]
cmp ecx, ebx
jne 0x4d85b6
mov ecx, 0x54ee24
mov dword [ebp - 4], ebx
cmp dword [esi + 8], ebx
jle 0x4d85e0
cmp ecx, ebx
je 0x4d85e0
cmp word [ecx], bx
je 0x4d85e0
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x4d85d3
mov eax, 0x54ee24
push eax
push ebx
push str.PosiY
push ecx
call edi
mov dword [ebp - 4], eax
mov ecx, dword [esi + 0x10]
cmp ecx, ebx
jne 0x4d85ec
mov ecx, 0x54ee24
mov dword [ebp + 0x14], ebx
cmp dword [esi + 8], ebx
jle 0x4d8616
cmp ecx, ebx
je 0x4d8616
cmp word [ecx], bx
je 0x4d8616
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x4d8609
mov eax, 0x54ee24
push eax
push ebx
push str.Width
push ecx
call edi
mov dword [ebp + 0x14], eax
mov ecx, dword [esi + 0x10]
cmp ecx, ebx
jne 0x4d8622
mov ecx, 0x54ee24
cmp dword [esi + 8], ebx
jle 0x4d8649
test ecx, ecx
je 0x4d8649
cmp word [ecx], bx
je 0x4d8649
mov eax, dword [esi + 4]
test eax, eax
jne 0x4d863c
mov eax, 0x54ee24
push eax
push 0
push str.Height
push ecx
call edi
mov ebx, eax
mov ecx, dword [esi + 0x10]
test ecx, ecx
jne 0x4d8655
mov ecx, 0x54ee24
xor edi, edi
cmp dword [esi + 8], edi
jle 0x4d8682
test ecx, ecx
je 0x4d8682
cmp word [ecx], di
je 0x4d8682
mov eax, dword [esi + 4]
test eax, eax
jne 0x4d8671
mov eax, 0x54ee24
push eax
push 0
push str.FontPoint
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov edi, eax
push 0x2af8
lea eax, [ebp - 0x14]
push eax
mov ecx, 0x5776a0
call fcn.00471480
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x4d86a1
mov eax, 0x54ee24
mov ecx, dword [ebp + 0x14]
mov edx, dword [ebp - 4]
push 1
push edi
push ebx
push ecx
mov ecx, dword [ebp - 8]
push edx
mov edx, dword [ebp + 0x10]
push ecx
mov ecx, dword [ebp + 0xc]
push 0x1646
push edx
mov edx, dword [ebp + 8]
add edx, 0x5c8
push ecx
push edx
mov edx, 0x10200003
call fcn.0042c680
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x4d86e2
push eax
call fcn.0051ebab
add esp, 4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
Function at 0x4dee20
Capabilities:
Access peb ldr_data
Get ntdll base address

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x537899
mov eax, dword fs:[0]
push eax
push ecx
push ebx
push esi
push edi
mov eax, dword [0x575494]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, dword [ebp + 8]
xor ebx, ebx
mov dword [edi + 4], 0x55cdc4
mov dword [edi + 0x2c], 0x55cdcc
mov dword [edi + 0x3c], 0x55cdd4
mov dword [edi + 0xb578], ebx
mov dword [edi + 8], ebx
mov dword [edi + 0xc], ebx
mov dword [edi + 0x10], ebx
mov dword [edi + 0x18], ebx
mov dword [edi + 0x14], ebx
mov byte [edi + 0x1c], bl
mov dword [edi + 0x20], ebx
mov dword [edi + 0x24], ebx
mov dword [edi + 0x28], ebx
mov dword [edi + 0x30], ebx
mov dword [edi + 0x34], ebx
mov byte [edi + 0x38], bl
mov dword [edi + 0x40], ebx
mov dword [ebp - 0x10], ebx
mov dword [edi + 0x44], ebx
mov dword [edi + 0x48], ebx
mov byte [edi + 0x4c], bl
mov dword [ebp - 4], ebx
mov dword [edi], vtable.CScanToFaxTxDlg.0
mov eax, 0x55e624
mov dword [edi + 0x60], eax
mov dword [edi + 0x70], ebx
mov dword [edi + 0x64], ebx
mov dword [edi + 0x68], ebx
mov byte [edi + 0x6c], bl
mov dword [edi + 0x50], ebx
mov dword [edi + 0x54], ebx
mov dword [edi + 0x58], ebx
mov dword [edi + 0x5c], ebx
mov dword [edi + 0x84], eax
mov dword [edi + 0x94], ebx
mov dword [edi + 0x88], ebx
mov dword [edi + 0x8c], ebx
mov byte [edi + 0x90], bl
mov dword [edi + 0x74], ebx
mov dword [edi + 0x78], ebx
mov dword [edi + 0x7c], ebx
mov dword [edi + 0x80], ebx
mov dword [edi + 0xa8], eax
mov dword [edi + 0xb8], ebx
mov dword [edi + 0xac], ebx
mov dword [edi + 0xb0], ebx
mov byte [edi + 0xb4], bl
mov dword [edi + 0x98], ebx
mov dword [edi + 0x9c], ebx
mov dword [edi + 0xa0], ebx
mov dword [edi + 0xa4], ebx
mov dword [edi + 0xcc], eax
mov dword [edi + 0xdc], ebx
mov dword [edi + 0xd0], ebx
mov dword [edi + 0xd4], ebx
mov byte [edi + 0xd8], bl
mov dword [edi + 0xbc], ebx
mov dword [edi + 0xc0], ebx
mov dword [edi + 0xc4], ebx
mov dword [edi + 0xc8], ebx
mov dword [edi + 0xf0], eax
mov dword [edi + 0x100], ebx
mov dword [edi + 0xf4], ebx
mov dword [edi + 0xf8], ebx
mov byte [edi + 0xfc], bl
mov dword [edi + 0xe0], ebx
mov dword [edi + 0xe4], ebx
mov dword [edi + 0xe8], ebx
mov dword [edi + 0xec], ebx
mov dword [edi + 0x114], eax
mov dword [edi + 0x124], ebx
mov dword [edi + 0x118], ebx
mov dword [edi + 0x11c], ebx
mov byte [edi + 0x120], bl
mov dword [edi + 0x104], ebx
mov dword [edi + 0x108], ebx
mov dword [edi + 0x10c], ebx
mov dword [edi + 0x110], ebx
mov dword [edi + 0x128], ebx
mov dword [edi + 0x12c], ebx
mov dword [edi + 0x130], ebx
lea esi, [edi + 0x134]
call fcn.0047d5e0
lea edx, [edi + 0xc90]
call fcn.004f4f40
push fcn.00507320
push 0x507280
push 5
push 0xc
lea eax, [edi + 0xb53c]
push eax
mov byte [ebp - 4], 7
call fcn.0051f880
mov dword [edi + 0xc88], ebx
mov byte [edi + 0xc8c], bl
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
Function at 0x4e83a0
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x53aa8b
mov eax, dword fs:[0]
push eax
sub esp, 0x25c
mov eax, dword [0x575494]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
mov edi, ecx
mov dword [ebp - 0x25c], eax
mov eax, dword [edi + 0x234]
xor ebx, ebx
cmp eax, ebx
jne 0x4e83ea
mov eax, 0x54ee24
mov edx, eax
mov eax, 0x19
lea ecx, [ebp - 0x44]
call fcn.00404800
lea ecx, [ebp - 0x44]
push ecx
mov dword [ebp - 0x258], ebx
mov dword [ebp - 0x254], ebx
mov dword [ebp - 0x250], ebx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov esi, eax
xor edx, edx
cmp esi, edx
jle 0x4e8475
mov ecx, esi
lea ebx, [ebp - 0x268]
mov dword [ebp - 0x268], edx
mov dword [ebp - 0x264], edx
mov dword [ebp - 0x260], edx
call fcn.00507c00
mov ecx, dword [eax]
mov ebx, dword [eax + 4]
mov eax, dword [eax + 8]
xor edx, edx
mov dword [ebp - 0x258], ecx
mov dword [ebp - 0x254], ebx
mov dword [ebp - 0x250], eax
cmp ecx, edx
je 0x4e847b
lea edx, [esi + 1]
push edx
lea eax, [ebp - 0x44]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpynW]
mov ebx, esi
mov dword [ebp - 0x254], ebx
xor edx, edx
mov ecx, dword [ebp - 0x258]
mov dword [ebp - 4], edx
cmp ebx, edx
jg 0x4e84c7
push edx
push 0x30
push 0xa439
mov ecx, dword [ebp - 0x25c]
push ecx
call fcn.00443b80
mov eax, dword [edi + 0x218]
test eax, eax
je 0x4e84ac
push eax
call dword [sym.imp.USER32.dll_SetFocus]
jmp 0x4e859a
mov edx, dword [edi + 0x220]
mov eax, dword [edx + 4]
lea edi, [eax + edi + 0x220]
mov dword [edi], 6
jmp 0x4e859a
cmp ecx, edx
jne 0x4e84d0
mov ecx, 0x54ee24
mov ebx, ecx
mov eax, edi
call fcn.004e9340
test al, al
je 0x4e84e8
push 0
push 0x30
push 0xa436
jmp 0x4e848a
lea ecx, [ebp - 0x44]
push ecx
lea eax, [edi + 0x234]
call fcn.005080c0
mov eax, dword [edi + 0x118]
xor edx, edx
mov word [ebp - 0x24c], dx
test eax, eax
je 0x4e8534
push 0x19
lea ecx, [ebp - 0x24c]
push ecx
push eax
call dword [sym.imp.USER32.dll_GetWindowTextW]
test eax, eax
jg 0x4e8534
mov edx, dword [edi + 0x114]
mov ebx, dword [edx + 4]
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebx + edi + 0x114], eax
mov esi, dword [edi + 0xb664]
mov ecx, esi
lea eax, [ebp - 0x24c]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4e8568
test dx, dx
je 0x4e8564
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4e8568
add eax, 4
add ecx, 4
test dx, dx
jne 0x4e8542
xor eax, eax
jmp 0x4e856d
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4e8583
lea eax, [ebp - 0x24c]
push eax
push 0x19
push esi
call fcn.0051f979
add esp, 0xc
lea ecx, [edi + 0xdb8]
call fcn.004f6250
mov ecx, 0x3e9
mov eax, edi
call fcn.00442470
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x258]
test eax, eax
je 0x4e85b4
push eax
call fcn.0051ebab
add esp, 4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0051eb9c
mov esp, ebp
pop ebp
ret 4
Function at 0x4e8980
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x537126
mov eax, dword fs:[0]
push eax
sub esp, 0x228
mov eax, dword [0x575494]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov esi, edx
lea edi, [esi + 0x1ec]
mov dword [ebp - 0x21c], esi
call fcn.00476df0
cmp ebx, 0x200
jne 0x4e8b23
xor eax, eax
lea edi, [esi + 0x114]
mov word [ebp - 0x218], ax
mov eax, dword [edi + 4]
xor ebx, ebx
cmp eax, ebx
je 0x4e8a0f
push 0x19
lea ecx, [ebp - 0x218]
push ecx
push eax
call dword [sym.imp.USER32.dll_GetWindowTextW]
cmp eax, ebx
jg 0x4e8a0f
mov edx, dword [edi]
mov esi, dword [edx + 4]
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [esi + edi], eax
mov esi, dword [ebp - 0x21c]
mov edi, dword [esi + 0xb664]
mov ecx, edi
lea eax, [ebp - 0x218]
lea ecx, [ecx]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4e8a46
cmp dx, bx
je 0x4e8a42
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4e8a46
add eax, 4
add ecx, 4
cmp dx, bx
jne 0x4e8a20
xor eax, eax
jmp 0x4e8a4b
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
je 0x4e8b23
lea eax, [ebp - 0x218]
push eax
push 0x19
push edi
call fcn.0051f979
mov eax, dword [esi + 0xb664]
add esp, 0xc
push eax
lea esi, [ebp - 0x228]
mov dword [ebp - 0x228], ebx
mov dword [ebp - 0x224], ebx
mov dword [ebp - 0x220], ebx
call fcn.00507d60
push 0x55ce4c
mov dword [ebp - 4], ebx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
push 0x55ce4c
mov edi, esi
call fcn.00507dd0
push 0x7531
lea ecx, [ebp - 0x234]
push ecx
mov ecx, 0x5776a0
call fcn.00471480
mov byte [ebp - 4], 1
mov edx, dword [eax]
mov eax, dword [eax + 4]
push edx
call fcn.00507dd0
mov byte [ebp - 4], bl
mov eax, dword [ebp - 0x234]
cmp eax, ebx
je 0x4e8af0
push eax
call fcn.0051ebab
add esp, 4
mov dword [ebp - 0x234], ebx
mov dword [ebp - 0x230], ebx
mov dword [ebp - 0x22c], ebx
mov edi, dword [ebp - 0x228]
mov ecx, edi
cmp edi, ebx
jne 0x4e8b01
mov ecx, 0x54ee24
mov esi, dword [ebp - 0x21c]
add esi, 0x2c
call fcn.0051c650
mov dword [ebp - 4], 0xffffffff
cmp edi, ebx
je 0x4e8b23
push edi
call fcn.0051ebab
add esp, 4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0051eb9c
mov esp, ebp
pop ebp
ret
Function at 0x4ee1e0
Capabilities:
Hide graphical window

Disassembly:
mov eax, dword [esi + 0x40]
push edi
mov edi, dword [sym.imp.USER32.dll_ShowWindow]
test eax, eax
je 0x4ee1f5
push 9
push eax
call edi
jmp 0x4ee203
mov eax, dword [esi + 0x3c]
mov ecx, dword [eax + 4]
mov dword [esi + ecx + 0x3c], 6
mov eax, dword [esi + 0x834]
test eax, eax
je 0x4ee214
push 0
push eax
call edi
jmp 0x4ee228
mov edx, dword [esi + 0x830]
mov eax, dword [edx + 4]
mov dword [esi + eax + 0x830], 6
mov eax, dword [esi + 0x588]
test eax, eax
je 0x4ee239
push 5
push eax
call edi
pop edi
ret
mov ecx, dword [esi + 0x584]
mov edx, dword [ecx + 4]
mov dword [esi + edx + 0x584], 6
pop edi
ret

Function at 0x4ee4a0
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
cmp dword [ebp + 0xc], 2
push ebx
mov ebx, dword [sym.imp.USER32.dll_ShowWindow]
push esi
lea esi, [edi + 0x1fc]
jne 0x4ee503
mov eax, dword [esi + 0x38c]
test eax, eax
je 0x4ee4c8
push 0
push eax
call ebx
jmp 0x4ee4dc
mov eax, dword [esi + 0x388]
mov ecx, dword [eax + 4]
mov dword [esi + ecx + 0x388], 6
mov eax, dword [esi + 0x638]
test eax, eax
je 0x4ee4ed
push 5
push eax
call ebx
jmp 0x4ee553
mov edx, dword [esi + 0x634]
mov eax, dword [edx + 4]
mov dword [esi + eax + 0x634], 6
jmp 0x4ee553
mov eax, dword [esi + 0x638]
test eax, eax
je 0x4ee514
push 0
push eax
call ebx
jmp 0x4ee528
mov ecx, dword [esi + 0x634]
mov edx, dword [ecx + 4]
mov dword [esi + edx + 0x634], 6
mov eax, dword [esi + 0x38c]
test eax, eax
je 0x4ee539
push 5
push eax
call ebx
jmp 0x4ee54d
mov eax, dword [esi + 0x388]
mov ecx, dword [eax + 4]
mov dword [esi + ecx + 0x388], 6
cmp dword [ebp + 0xc], 0
jne 0x4ee56d
mov ebx, dword [ebp + 8]
lea eax, [edi + 0xb8]
call fcn.0051c750
mov ebx, dword [ebp + 0x10]
mov eax, ebx
call fcn.00516770
jmp 0x4ee570
mov ebx, dword [ebp + 0x10]
mov dx, word [edi + 0xd94]
sub dx, word [edi + 0xd78]
mov cx, word [edi + 0xd7c]
add dx, word [ebp + 0x14]
add cx, cx
movzx eax, dx
sub bx, cx
mov ecx, dword [edi + 0xdcc]
movzx edx, bx
shl eax, 0x10
or eax, edx
push eax
mov eax, dword [ebp + 0xc]
push eax
push 5
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
pop esi
pop ebx
pop ebp
ret 0x10