joyce8/EMBER2024-capa huggingface dataset:
Function at 0x481ba5
Capabilities:
Check if file exists
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4a84cb
mov eax, dword fs:[0]
push eax
sub esp, 0x238
mov eax, dword [0x4e106c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
and dword [ebp - 0x228], 0
and dword [ebp - 0x230], 0
lea eax, [ebp - 0x228]
push eax
push 0x20019
push 0
push str.SOFTWAREkingsoftAntivirus
push reloc.OLEAUT32.dll_SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x481d70
and dword [ebp - 0x238], 0
xor eax, eax
mov word [ebp - 0x21c], ax
push 0x208
push 0
lea eax, [ebp - 0x21a]
push eax
call fcn.00458260
add esp, 0xc
mov dword [ebp - 0x234], 0x208
lea eax, [ebp - 0x234]
push eax
lea eax, [ebp - 0x21c]
push eax
lea eax, [ebp - 0x238]
push eax
push 0
push 0x4baad4
push dword [ebp - 0x228]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x481d70
lea eax, [ebp - 0x21c]
push eax
call fcn.0045b661
pop ecx
mov dword [ebp - 0x224], eax
mov eax, dword [ebp - 0x224]
movzx eax, word [ebp + eax*2 - 0x21e]
cmp eax, 0x5c
je 0x481cce
push 0x5c
pop eax
mov ecx, dword [ebp - 0x224]
mov word [ebp + ecx*2 - 0x21c], ax
mov eax, dword [ebp - 0x224]
lea eax, [eax + eax + 2]
mov dword [ebp - 0x22c], eax
cmp dword [ebp - 0x22c], 0x20a
jae 0x481cb9
jmp 0x481cbe
call fcn.00455d3d
xor eax, eax
mov ecx, dword [ebp - 0x22c]
mov word [ebp + ecx - 0x21c], ax
lea eax, [ebp - 0x21c]
push eax
lea ecx, [ebp - 0x220]
call fcn.0040700c
and dword [ebp - 4], 0
push str.kxetray.exe
lea eax, [ebp - 0x220]
push eax
lea eax, [ebp - 0x244]
push eax
call fcn.0040c429
add esp, 0xc
mov dword [ebp - 0x23c], eax
mov eax, dword [ebp - 0x23c]
mov dword [ebp - 0x240], eax
mov byte [ebp - 4], 1
push dword [ebp - 0x240]
lea ecx, [ebp - 0x220]
call fcn.00406ff1
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x244]
call fcn.00405d4a
lea ecx, [ebp - 0x220]
call fcn.004026c4
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x481d55
mov dword [ebp - 0x230], 1
push dword [ebp - 0x228]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x220]
call fcn.00405d4a
mov eax, dword [ebp - 0x230]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00455912
mov esp, ebp
pop ebp
ret
Function at 0x481d8f
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x210
mov eax, dword [0x4e106c]
xor eax, ebp
mov dword [ebp - 4], eax
xor eax, eax
mov word [ebp - 0x210], ax
push 0x20a
push 0
lea eax, [ebp - 0x20e]
push eax
call fcn.00458260
add esp, 0xc
lea eax, [ebp - 0x210]
push eax
push 0x4bacec
push 0x4ba914
call fcn.0048ea9c
add esp, 0xc
test eax, eax
jne 0x481de2
xor eax, eax
jmp 0x481e22
lea eax, [ebp - 0x210]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAddBackslashW]
push 0x4ba9a4
push 0x104
lea eax, [ebp - 0x210]
push eax
call fcn.0045f982
add esp, 0xc
lea eax, [ebp - 0x210]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x481e20
xor eax, eax
inc eax
jmp 0x481e22
xor eax, eax
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00455912
mov esp, ebp
pop ebp
ret

Function at 0x481e5e
Capabilities:
Enumerate processes

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x48c
mov eax, dword [0x4e106c]
xor eax, ebp
mov dword [ebp - 4], eax
push 0
push 2
call dword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
mov dword [ebp - 0x480], eax
xor eax, eax
mov word [ebp - 0x48], ax
push 0x40
push 0
lea eax, [ebp - 0x46]
push eax
call fcn.00458260
add esp, 0xc
and dword [ebp - 0x48c], 0
cmp dword [ebp - 0x480], 0xffffffff
je 0x481fc9
cmp dword [ebp - 0x480], 0
je 0x481fc9
push 0x22c
push 0
lea eax, [ebp - 0x47c]
push eax
call fcn.00458260
add esp, 0xc
mov dword [ebp - 0x47c], 0x22c
lea eax, [ebp - 0x47c]
push eax
push dword [ebp - 0x480]
call dword [sym.imp.KERNEL32.dll_Process32FirstW]
mov dword [ebp - 0x488], eax
cmp dword [ebp - 0x488], 0
je 0x481fc9
lea eax, [ebp - 0x458]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFindFileNameW]
mov dword [ebp - 0x484], eax
cmp dword [ebp - 0x484], 0
je 0x481fab
xor eax, eax
mov word [ebp - 0x250], ax
push 0x206
push 0
lea eax, [ebp - 0x24e]
push eax
call fcn.00458260
add esp, 0xc
push 0x103
push dword [ebp - 0x484]
lea eax, [ebp - 0x250]
push eax
call fcn.0045f321
add esp, 0xc
lea eax, [ebp - 0x250]
push eax
call dword [sym.imp.USER32.dll_CharUpperW]
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x250]
push eax
call fcn.0045b661
pop ecx
shl eax, 1
mov edx, eax
lea ecx, [ebp - 0x250]
call fcn.00433217
pop ecx
movzx eax, al
test eax, eax
je 0x481fab
push dword [ebp + 8]
lea eax, [ebp - 0x48]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x481fab
mov dword [ebp - 0x48c], 1
jmp 0x481fc9
lea eax, [ebp - 0x47c]
push eax
push dword [ebp - 0x480]
call dword [sym.imp.KERNEL32.dll_Process32NextW]
mov dword [ebp - 0x488], eax
jmp 0x481ef1
cmp dword [ebp - 0x480], 0xffffffff
je 0x481fee
cmp dword [ebp - 0x480], 0
je 0x481fee
push dword [ebp - 0x480]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
or dword [ebp - 0x480], 0xffffffff
mov eax, dword [ebp - 0x48c]
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00455912
mov esp, ebp
pop ebp
ret
Function at 0x4874e8
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
mov dword [ebp - 8], ecx
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 8]
mov eax, dword [eax + 0x1c]
imul eax, dword [ecx + 0x18]
mov ecx, dword [ebp - 8]
mov dword [ecx + 8], eax
cmp dword [ebp + 0xc], 0
jne 0x487510
mov eax, dword [ebp + 8]
mov dword [ebp + 0xc], eax
and dword [ebp - 0xc], 0
mov eax, dword [ebp - 8]
push dword [eax + 4]
call fcn.00488f59
pop ecx
movzx eax, al
test eax, eax
je 0x4875b4
cmp dword [ebp + 8], 0
jne 0x487578
xor ecx, ecx
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x1c]
push 2
pop edx
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00455e19
pop ecx
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x1c]
shl eax, 1
push eax
push dword [ebp + 0xc]
push dword [ebp - 0xc]
call fcn.00457ce0
add esp, 0xc
mov eax, dword [ebp - 0xc]
mov dword [ebp + 8], eax
mov eax, dword [ebp - 0xc]
mov dword [ebp + 0xc], eax
mov eax, dword [ebp - 8]
push dword [eax + 0x1c]
push dword [ebp + 8]
call fcn.00488f13
pop ecx
pop ecx
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0
push ecx
mov ecx, esp
push 0
call fcn.004017f0
push ecx
mov ecx, esp
push 0x4be544
call fcn.004017f0
mov eax, dword [ebp - 8]
add eax, 0x20
push eax
call fcn.00489c79
add esp, 0x18
mov eax, dword [ebp - 8]
push dword [eax]
push 1
mov eax, dword [ebp - 8]
push dword [eax + 8]
push dword [ebp + 0xc]
call fcn.004695fa
add esp, 0x10
cmp eax, 1
jne 0x4875da
mov dword [ebp - 0x10], 1
jmp 0x4875de
and dword [ebp - 0x10], 0
mov al, byte [ebp - 0x10]
mov byte [ebp - 1], al
cmp dword [ebp - 0xc], 0
je 0x4875f9
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x18], eax
push dword [ebp - 0x18]
call fcn.00455c15
pop ecx
movzx eax, byte [ebp - 1]
test eax, eax
je 0x48764a
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x14]
mov ecx, dword [ebp - 8]
add eax, dword [ecx + 8]
mov ecx, dword [ebp - 8]
mov dword [ecx + 0x14], eax
push 0xffffffffffffffff
mov eax, dword [ebp - 8]
push dword [eax + 0x1c]
push 0x18
mov eax, dword [ebp - 8]
add eax, 0x38
push ecx
mov ecx, esp
push eax
call fcn.00415bbe
push ecx
mov ecx, esp
push 0x4be55c
call fcn.004017f0
mov eax, dword [ebp - 8]
add eax, 0x20
push eax
call fcn.00489c79
add esp, 0x18
jmp 0x487652
mov ecx, dword [ebp - 8]
call fcn.0048856f
mov al, byte [ebp - 1]
mov esp, ebp
pop ebp
ret 8
Function at 0x48a8b7
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4a8c19
mov eax, dword fs:[0]
push eax
sub esp, 0x434
mov eax, dword [0x4e106c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x43c], ecx
push 0x4c0d78
lea ecx, [ebp - 0x438]
call fcn.0040224c
and dword [ebp - 4], 0
mov eax, dword [ebp - 0x43c]
add eax, 4
push eax
lea ecx, [ebp - 0x438]
call fcn.00402035
push 0x4c0d7c
lea ecx, [ebp - 0x438]
call fcn.00406ea1
push 0x4c0d80
lea ecx, [ebp - 0x438]
call fcn.00406ea1
push dword [ebp + 8]
lea ecx, [ebp - 0x438]
call fcn.00406ea1
lea ecx, [ebp - 0x438]
call fcn.00406ddd
push eax
push 0x208
push 0x4e5828
call fcn.0045f91e
add esp, 0xc
xor eax, eax
mov word [ebp - 0x218], ax
push 0x206
push 0
lea eax, [ebp - 0x216]
push eax
call fcn.00458260
add esp, 0xc
push 0x104
lea eax, [ebp - 0x218]
push eax
push dword [0x4e5c60]
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea eax, [ebp - 0x218]
push eax
call dword [sym.imp.SHLWAPI.dll_PathQuoteSpacesW]
push 0x4c0d84
push 0x104
lea eax, [ebp - 0x218]
push eax
call fcn.0045f982
add esp, 0xc
xor eax, eax
mov word [ebp - 0x420], ax
push 0x206
push 0
lea eax, [ebp - 0x41e]
push eax
call fcn.00458260
add esp, 0xc
push 0x104
lea eax, [ebp - 0x420]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
push str.rundll32.exe
lea eax, [ebp - 0x420]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
push 0
push 0
push 0
lea eax, [ebp - 0x218]
push eax
lea eax, [ebp - 0x420]
push eax
call fcn.0048ef41
add esp, 0x14
mov dword [ebp - 0x440], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x438]
call fcn.004020b1
mov eax, dword [ebp - 0x440]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00455912
mov esp, ebp
pop ebp
ret 4
Function at 0x48b5c3
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4a8dc1
mov eax, dword fs:[0]
push eax
push ecx
mov eax, dword [0x4e106c]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], ecx
mov eax, dword [ebp - 0x10]
mov dword [eax], vtable.Txdl::CServiceLauncher.0
mov eax, dword [ebp - 0x10]
cmp dword [eax + 0x38], 0
je 0x48b61f
mov ecx, dword [ebp - 0x10]
add ecx, 0x6c
call fcn.00401e75
movzx eax, al
test eax, eax
jne 0x48b61f
mov ecx, dword [ebp - 0x10]
add ecx, 0x6c
call fcn.00406ddd
push eax
call fcn.0048d313
pop ecx
mov ecx, dword [ebp - 0x10]
add ecx, 0x54
call fcn.00406ddd
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov ecx, dword [ebp - 0x10]
add ecx, 0x6c
call fcn.004020b1
mov ecx, dword [ebp - 0x10]
add ecx, 0x54
call fcn.004020b1
mov ecx, dword [ebp - 0x10]
add ecx, 0x3c
call fcn.004020b1
mov ecx, dword [ebp - 0x10]
call fcn.00417aba
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov esp, ebp
pop ebp
ret

Function at 0x48b6bb
Capabilities:
Enumerate processes

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x23c
mov eax, dword [0x4e106c]
xor eax, ebp
mov dword [ebp - 4], eax
push 0
push 2
call dword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
mov dword [ebp - 0x234], eax
cmp dword [ebp - 0x234], 0xffffffff
jne 0x48b6eb
xor eax, eax
jmp 0x48b762
and dword [ebp - 0x238], 0
and dword [ebp - 0x23c], 0
mov dword [ebp - 0x230], 0x22c
lea eax, [ebp - 0x230]
push eax
push dword [ebp - 0x234]
call dword [sym.imp.KERNEL32.dll_Process32FirstW]
test eax, eax
je 0x48b750
push dword [ebp + 8]
lea eax, [ebp - 0x20c]
push eax
call fcn.0045f75d
pop ecx
pop ecx
test eax, eax
jne 0x48b739
mov dword [ebp - 0x238], 1
lea eax, [ebp - 0x230]
push eax
push dword [ebp - 0x234]
call dword [sym.imp.KERNEL32.dll_Process32NextW]
test eax, eax
jne 0x48b71a
push dword [ebp - 0x234]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x238]
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00455912
mov esp, ebp
pop ebp
ret
Function at 0x48b7a4
Capabilities:
Check if file exists
Delete file
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4a8de4
mov eax, dword fs:[0]
push eax
sub esp, 0x48
mov eax, dword [0x4e106c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x54], ecx
cmp dword [ebp + 8], 0
jne 0x48b7dc
xor eax, eax
jmp 0x48b932
call fcn.004014c0
mov dword [ebp - 0x34], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
jne 0x48b7f6
and dword [ebp - 0x2c], 0
jmp 0x48b83c
push dword [ebp - 0x20]
call fcn.0045b661
pop ecx
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0x3fffffff
jle 0x48b812
and dword [ebp - 0x28], 0
jmp 0x48b836
mov eax, dword [ebp - 0x1c]
shl eax, 1
call fcn.00456380
mov dword [ebp - 0x38], esp
push dword [ebp - 0x34]
mov eax, dword [ebp - 0x1c]
shl eax, 1
push eax
push dword [ebp - 0x20]
push dword [ebp - 0x38]
call fcn.00419b87
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x24], eax
push dword [ebp - 0x24]
call fcn.0045b340
pop ecx
mov dword [ebp - 0x30], eax
push dword [ebp - 0x30]
push dword [ebp - 0x24]
call fcn.00417d63
pop ecx
pop ecx
mov dword [ebp - 0x48], eax
lea eax, [ebp - 0x44]
push eax
call fcn.0048e96b
pop ecx
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x40], eax
and dword [ebp - 4], 0
push str.TxdlService.dat
push dword [ebp - 0x40]
lea eax, [ebp - 0x18]
push eax
call fcn.0040c429
add esp, 0xc
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x44]
call fcn.00405d4a
lea ecx, [ebp - 0x18]
call fcn.004026c4
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x48b8b7
lea ecx, [ebp - 0x18]
call fcn.004026c4
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
and dword [ebp - 0x14], 0
push 0x4c0a14
lea ecx, [ebp - 0x18]
call fcn.004026c4
push eax
lea eax, [ebp - 0x14]
push eax
call fcn.0046880f
add esp, 0xc
cmp dword [ebp - 0x14], 0
je 0x48b920
push dword [ebp - 0x14]
push 1
push 4
lea eax, [ebp - 0x48]
push eax
call fcn.004695fa
add esp, 0x10
push dword [ebp - 0x14]
mov eax, dword [ebp - 0x30]
inc eax
push eax
push 1
push dword [ebp - 0x24]
call fcn.004695fa
add esp, 0x10
push dword [ebp - 0x14]
call fcn.004696c8
pop ecx
mov dword [ebp - 0x4c], 1
lea ecx, [ebp - 0x18]
call fcn.00405d4a
mov eax, dword [ebp - 0x4c]
jmp 0x48b932
mov dword [ebp - 0x50], 1
lea ecx, [ebp - 0x18]
call fcn.00405d4a
mov eax, dword [ebp - 0x50]
lea esp, [ebp - 0x58]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00455912
mov esp, ebp
pop ebp
ret 4
Function at 0x48bbd8
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
mov dword [ebp - 4], ecx
push dword [ebp + 8]
mov ecx, dword [ebp - 4]
add ecx, 0x3c
call fcn.00406eb9
mov eax, dword [ebp - 4]
mov dword [eax + 0x58], 0
and dword [ebp - 8], 0
lea eax, [ebp - 8]
push eax
push 0
push dword [ebp - 4]
push 0x48ba52
push 0
push 0
call fcn.0045fd24
add esp, 0x18
push eax
lea ecx, [ebp - 0x10]
call fcn.004017f0
mov dword [ebp - 0xc], eax
push dword [ebp - 0xc]
mov ecx, dword [ebp - 4]
add ecx, 0x38
call fcn.00419bd1
lea ecx, [ebp - 0x10]
call fcn.004159bb
mov ecx, dword [ebp - 4]
add ecx, 0x38
call fcn.004026c4
test eax, eax
je 0x48bc64
push 0xffffffffffffffff
mov ecx, dword [ebp - 4]
add ecx, 0x54
call fcn.004026c4
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x58]
jmp 0x48bc66
xor eax, eax
mov esp, ebp
pop ebp
ret 4

Function at 0x48bccb
Capabilities:
Create process on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x274
mov eax, dword [0x4e106c]
xor eax, ebp
mov dword [ebp - 4], eax
push edi
mov dword [ebp - 0x214], ecx
xor eax, eax
mov word [ebp - 0x210], ax
push 0x208
push 0
lea eax, [ebp - 0x20e]
push eax
call fcn.00458260
add esp, 0xc
push 0x105
lea eax, [ebp - 0x210]
push eax
mov ecx, dword [ebp - 0x214]
call fcn.0048bc6c
push 0x4c09a8
lea eax, [ebp - 0x210]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
and dword [ebp - 0x274], 0
push 0x40
push 0
lea eax, [ebp - 0x270]
push eax
call fcn.00458260
add esp, 0xc
and dword [ebp - 0x230], 0
xor eax, eax
lea edi, [ebp - 0x22c]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov dword [ebp - 0x274], 0x44
mov dword [ebp - 0x248], 0x80
lea eax, [ebp - 0x230]
push eax
lea eax, [ebp - 0x274]
push eax
push 0
push 0
push 0
push 0
push 0
push 0
lea eax, [ebp - 0x210]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
mov dword [ebp - 0x218], eax
cmp dword [ebp - 0x218], 0
je 0x48bde7
push dword [ebp - 0x230]
lea ecx, [ebp - 0x220]
call fcn.004017f0
mov dword [ebp - 0x21c], eax
push dword [ebp - 0x21c]
mov ecx, dword [ebp - 0x214]
add ecx, 0x38
call fcn.00419bd1
lea ecx, [ebp - 0x220]
call fcn.004159bb
push dword [ebp - 0x22c]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x218]
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00455912
mov esp, ebp
pop ebp
ret
Function at 0x48bdfc
Capabilities:
Check if file exists
Delete file
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x238
mov eax, dword [0x4e106c]
xor eax, ebp
mov dword [ebp - 4], eax
mov dword [ebp - 0x234], ecx
cmp dword [ebp + 8], 0
jne 0x48be22
xor eax, eax
jmp 0x48bfa2
call fcn.004014c0
mov dword [ebp - 0x22c], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x21c], eax
cmp dword [ebp - 0x21c], 0
jne 0x48be48
and dword [ebp - 0x228], 0
jmp 0x48beb5
push dword [ebp - 0x21c]
call fcn.0045b661
pop ecx
inc eax
mov dword [ebp - 0x218], eax
cmp dword [ebp - 0x218], 0x3fffffff
jle 0x48be70
and dword [ebp - 0x224], 0
jmp 0x48bea9
mov eax, dword [ebp - 0x218]
shl eax, 1
call fcn.00456380
mov dword [ebp - 0x230], esp
push dword [ebp - 0x22c]
mov eax, dword [ebp - 0x218]
shl eax, 1
push eax
push dword [ebp - 0x21c]
push dword [ebp - 0x230]
call fcn.00419b87
mov dword [ebp - 0x224], eax
mov eax, dword [ebp - 0x224]
mov dword [ebp - 0x228], eax
mov eax, dword [ebp - 0x228]
mov dword [ebp - 0x220], eax
cmp dword [ebp - 0x220], 0
je 0x48bfa0
xor eax, eax
mov word [ebp - 0x210], ax
push 0x208
push 0
lea eax, [ebp - 0x20e]
push eax
call fcn.00458260
add esp, 0xc
push 0x105
lea eax, [ebp - 0x210]
push eax
mov ecx, dword [ebp - 0x234]
call fcn.0048bc6c
push 0x4c0988
lea eax, [ebp - 0x210]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
lea eax, [ebp - 0x210]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x48bf34
lea eax, [ebp - 0x210]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
and dword [ebp - 0x214], 0
push 0x4c09a4
lea eax, [ebp - 0x210]
push eax
lea eax, [ebp - 0x214]
push eax
call fcn.0046880f
add esp, 0xc
cmp dword [ebp - 0x214], 0
je 0x48bfa0
push dword [ebp - 0x220]
call fcn.0045b340
pop ecx
mov dword [ebp - 0x238], eax
push dword [ebp - 0x214]
mov eax, dword [ebp - 0x238]
inc eax
push eax
push 1
push dword [ebp - 0x220]
call fcn.004695fa
add esp, 0x10
push dword [ebp - 0x214]
call fcn.004696c8
pop ecx
xor eax, eax
inc eax
jmp 0x48bfa2
xor eax, eax
lea esp, [ebp - 0x238]
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00455912
mov esp, ebp
pop ebp
ret 4
Function at 0x48c121
Capabilities:
Create process on windows
Create process suspended

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4a8e3e
mov eax, dword fs:[0]
push eax
sub esp, 0x84
mov eax, dword [0x4e106c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x2c], ecx
and dword [ebp - 0x90], 0
push 0x40
push 0
lea eax, [ebp - 0x8c]
push eax
call fcn.00458260
add esp, 0xc
and dword [ebp - 0x4c], 0
xor eax, eax
lea edi, [ebp - 0x48]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov dword [ebp - 0x90], 0x44
mov dword [ebp - 0x64], 0x81
xor eax, eax
mov word [ebp - 0x60], ax
push 0x4c0970
lea ecx, [ebp - 0x28]
call fcn.0040224c
and dword [ebp - 4], 0
mov ecx, dword [ebp - 0x2c]
add ecx, 4
call fcn.00406ddd
push eax
lea ecx, [ebp - 0x28]
call fcn.00406ea1
push 0x4c0974
lea ecx, [ebp - 0x28]
call fcn.00406ea1
push 0x4c0978
lea ecx, [ebp - 0x28]
call fcn.00406ea1
push dword [ebp + 8]
lea ecx, [ebp - 0x28]
call fcn.00406ea1
lea eax, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x90]
push eax
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x28]
call fcn.00406ddd
push eax
push 0
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0
je 0x48c237
push dword [ebp - 0x4c]
lea ecx, [ebp - 0x38]
call fcn.004017f0
mov dword [ebp - 0x34], eax
push dword [ebp - 0x34]
mov ecx, dword [ebp - 0x2c]
add ecx, 0x38
call fcn.00419bd1
lea ecx, [ebp - 0x38]
call fcn.004159bb
push dword [ebp - 0x48]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x48c24a
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
call fcn.00417daa
mov ecx, eax
call fcn.004989a9
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x3c], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x28]
call fcn.004020b1
mov eax, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00455912
mov esp, ebp
pop ebp
ret 4
Function at 0x48cb94
Capabilities:
Check if file exists
Delete file
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4a8f75
mov eax, dword fs:[0]
push eax
sub esp, 0x250
mov eax, dword [0x4e106c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x224], ecx
and dword [ebp - 0x21c], 0
and dword [ebp - 0x22c], 0
or dword [ebp - 0x220], 0xffffffff
lea ecx, [ebp - 0x25c]
call fcn.0048d11a
and dword [ebp - 4], 0
xor eax, eax
mov word [ebp - 0x218], ax
push 0x206
push 0
lea eax, [ebp - 0x216]
push eax
call fcn.00458260
add esp, 0xc
mov eax, dword [ebp - 0x224]
mov ecx, dword [ebp + 8]
mov dword [eax], ecx
push 0x4c0dfc
mov eax, dword [ebp - 0x224]
movzx eax, word [eax]
push eax
push 0x400000
lea ecx, [ebp - 0x25c]
call fcn.0048d1a1
mov dword [ebp - 0x21c], eax
cmp dword [ebp - 0x21c], 0
jne 0x48cc46
jmp 0x48cd9e
cmp dword [ebp + 0xc], 0
je 0x48cc67
push 0xffffffffffffffff
push dword [ebp + 0xc]
push 0x104
lea eax, [ebp - 0x218]
push eax
call fcn.0045f23e
add esp, 0x10
jmp 0x48cc9e
push 0x104
lea eax, [ebp - 0x218]
push eax
mov ecx, dword [ebp - 0x224]
add ecx, 4
call fcn.00406ddd
push eax
call fcn.0048ce97
add esp, 0xc
mov dword [ebp - 0x21c], eax
cmp dword [ebp - 0x21c], 0
jne 0x48cc9e
jmp 0x48cd9e
lea eax, [ebp - 0x218]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
mov dword [ebp - 0x21c], eax
cmp dword [ebp - 0x21c], 0
je 0x48cd34
mov dword [ebp - 0x228], 1
lea eax, [ebp - 0x218]
push eax
call fcn.0048ce38
pop ecx
mov dword [ebp - 0x238], eax
mov dword [ebp - 0x234], edx
lea ecx, [ebp - 0x25c]
call fcn.00419c47
cdq
mov dword [ebp - 0x240], eax
mov dword [ebp - 0x23c], edx
mov eax, dword [ebp - 0x238]
cmp eax, dword [ebp - 0x240]
jne 0x48cd11
mov eax, dword [ebp - 0x234]
cmp eax, dword [ebp - 0x23c]
je 0x48cd29
lea eax, [ebp - 0x218]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
je 0x48cd29
and dword [ebp - 0x228], 0
cmp dword [ebp - 0x228], 0
je 0x48cd34
jmp 0x48cd9e
push 0
push 0x80
push 2
push 0
push 0
push 0x40000000
lea eax, [ebp - 0x218]
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov dword [ebp - 0x220], eax
cmp dword [ebp - 0x220], 0xffffffff
jne 0x48cd6b
and dword [ebp - 0x21c], 0
jmp 0x48cd9e
push 0
lea eax, [ebp - 0x22c]
push eax
lea ecx, [ebp - 0x25c]
call fcn.00419c47
push eax
lea ecx, [ebp - 0x25c]
call fcn.004018d0
push eax
push dword [ebp - 0x220]
call dword [sym.imp.KERNEL32.dll_WriteFile]
mov dword [ebp - 0x21c], eax
cmp dword [ebp - 0x220], 0xffffffff
je 0x48cdb3
push dword [ebp - 0x220]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea ecx, [ebp - 0x25c]
call fcn.00415667
test eax, eax
je 0x48cdcd
lea ecx, [ebp - 0x25c]
call fcn.0048d2c7
mov eax, dword [ebp - 0x21c]
mov dword [ebp - 0x230], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x25c]
call fcn.0048d15b
mov eax, dword [ebp - 0x230]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00455912
mov esp, ebp
pop ebp
ret 8