joyce8/EMBER2024-capa huggingface dataset:
Function at 0x459c50
Capabilities:
Enumerate gui resources

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4a0f4d
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x5c
lea ecx, [ebp - 0x68]
call fcn.0044a050
mov dword [ebp - 4], 0
mov dword [ebp - 0x38], 1
mov dword [ebp - 0x34], 1
cmp dword [ebp + 0xc], 0
je 0x459c96
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x10], eax
jmp 0x459c9d
mov dword [ebp - 0x10], 0x4b2ed0
mov ecx, dword [ebp - 0x10]
push ecx
call fcn.00470706
add esp, 4
mov dword [ebp - 0x18], eax
mov edx, dword [ebp - 0x18]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x1c]
push eax
mov ecx, dword [ebp - 0x10]
push ecx
lea ecx, [ebp - 0x68]
call fcn.00401490
cmp dword [ebp + 0x10], 0
je 0x459cd0
mov edx, dword [ebp + 0x10]
mov dword [ebp - 0x14], edx
jmp 0x459cd7
mov dword [ebp - 0x14], 0x4b2ed4
mov eax, dword [ebp - 0x14]
push eax
call fcn.00470706
add esp, 4
mov dword [ebp - 0x20], eax
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0x24], ecx
mov edx, dword [ebp - 0x24]
push edx
mov eax, dword [ebp - 0x14]
push eax
lea ecx, [ebp - 0x50]
call fcn.00401490
cmp dword [ebp + 8], 0
jne 0x459d13
lea ecx, [ebp - 0x68]
push ecx
push 0x459610
call dword [sym.imp.USER32.dll_EnumWindows]
jmp 0x459d26
lea edx, [ebp - 0x68]
push edx
push 0x459610
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_EnumChildWindows]
cmp dword [ebp + 0x14], 0
je 0x459d38
lea ecx, [ebp - 0x68]
push ecx
mov ecx, dword [ebp + 0x14]
call fcn.00459220
mov dword [ebp - 0x28], 1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x30]
call fcn.0044a150
lea ecx, [ebp - 0x50]
call fcn.00431070
lea ecx, [ebp - 0x68]
call fcn.00431070
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret
Function at 0x45bcc0
Capabilities:
Get process heap flags

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4a10e3
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
mov dword [ebp - 0x10], ecx
mov ecx, dword [ebp - 0x10]
call fcn.0042c0f0
mov dword [ebp - 4], 0
mov ecx, dword [ebp - 0x10]
add ecx, 0x18
call fcn.0042c0f0
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x10]
add ecx, 0x30
call fcn.0042c0f0
mov byte [ebp - 4], 2
mov eax, dword [ebp + 0x10]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 8]
push edx
mov ecx, dword [ebp - 0x10]
call fcn.0045c360
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0xc

Function at 0x45cca0
Capabilities:
Hash data with md5

Disassembly:
push ebp
mov ebp, esp
mov eax, dword [ebp + 8]
mov dword [eax], 0x67452301
mov ecx, dword [ebp + 8]
mov dword [ecx + 4], 0xefcdab89
mov edx, dword [ebp + 8]
mov dword [edx + 8], 0x98badcfe
mov eax, dword [ebp + 8]
mov dword [eax + 0xc], 0x10325476
mov ecx, 4
imul edx, ecx, 0
mov eax, dword [ebp + 8]
mov dword [eax + edx + 0x10], 0
mov ecx, 4
shl ecx, 0
mov edx, dword [ebp + 8]
mov dword [edx + ecx + 0x10], 0
mov eax, dword [ebp + 8]
mov dword [eax + 0x18], 0
pop ebp
ret
Function at 0x45e4e0
Capabilities:
Hash data using sha256

Disassembly:
push ebp
mov ebp, esp
push ecx
mov dword [ebp - 4], 0
jmp 0x45e4f6
mov eax, dword [ebp - 4]
add eax, 1
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 8
jge 0x45e515
mov ecx, dword [ebp - 4]
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 4]
mov eax, dword [eax*4 + 0x4cb4d0]
mov dword [edx + ecx*4 + 0x88], eax
jmp 0x45e4ed
mov ecx, dword [ebp + 8]
mov dword [ecx + 4], 0
mov edx, dword [ebp + 8]
mov dword [edx], 0
mov esp, ebp
pop ebp
ret
Function at 0x45eb20
Capabilities:
Authenticate hmac

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x30
cmp dword [ebp + 0x10], 0x40
jne 0x45eb3b
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], 0x40
jmp 0x45ebb3
cmp dword [ebp + 0x10], 0x40
jbe 0x45eb64
mov dword [ebp - 8], 0x20
lea ecx, [ebp - 0x30]
push ecx
mov edx, dword [ebp + 0x10]
push edx
mov eax, dword [ebp + 0xc]
push eax
call fcn.0045e330
add esp, 0xc
lea ecx, [ebp - 0x30]
mov dword [ebp - 0xc], ecx
jmp 0x45eb70
mov edx, dword [ebp + 0xc]
mov dword [ebp - 0xc], edx
mov eax, dword [ebp + 0x10]
mov dword [ebp - 8], eax
mov ecx, 0x40
sub ecx, dword [ebp - 8]
mov dword [ebp - 0x10], ecx
mov edx, dword [ebp - 0x10]
push edx
push 0x36
mov eax, dword [ebp - 8]
mov ecx, dword [ebp + 8]
lea edx, [ecx + eax + 0x2a0]
push edx
call fcn.00464f70
add esp, 0xc
mov eax, dword [ebp - 0x10]
push eax
push 0x5c
mov ecx, dword [ebp - 8]
mov edx, dword [ebp + 8]
lea eax, [edx + ecx + 0x2e0]
push eax
call fcn.00464f70
add esp, 0xc
mov dword [ebp - 4], 0
jmp 0x45ebc5
mov ecx, dword [ebp - 4]
add ecx, 1
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 4]
cmp edx, dword [ebp - 8]
jge 0x45ebff
mov eax, dword [ebp - 0xc]
add eax, dword [ebp - 4]
movzx ecx, byte [eax]
xor ecx, 0x36
mov edx, dword [ebp + 8]
add edx, dword [ebp - 4]
mov byte [edx + 0x2a0], cl
mov eax, dword [ebp - 0xc]
add eax, dword [ebp - 4]
movzx ecx, byte [eax]
xor ecx, 0x5c
mov edx, dword [ebp + 8]
add edx, dword [ebp - 4]
mov byte [edx + 0x2e0], cl
jmp 0x45ebbc
mov eax, dword [ebp + 8]
push eax
call fcn.0045e4e0
add esp, 4
push 0x40
mov ecx, dword [ebp + 8]
add ecx, 0x2a0
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.0045e960
add esp, 0xc
mov eax, dword [ebp + 8]
add eax, 0xa8
push eax
call fcn.0045e4e0
add esp, 4
push 0x40
mov ecx, dword [ebp + 8]
add ecx, 0x2e0
push ecx
mov edx, dword [ebp + 8]
add edx, 0xa8
push edx
call fcn.0045e960
add esp, 0xc
push 0xa8
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp + 8]
add ecx, 0x150
push ecx
call fcn.004649f0
add esp, 0xc
push 0xa8
mov edx, dword [ebp + 8]
add edx, 0xa8
push edx
mov eax, dword [ebp + 8]
add eax, 0x1f8
push eax
call fcn.004649f0
add esp, 0xc
mov esp, ebp
pop ebp
ret

Function at 0x45ecc0
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
cmp dword [ebp + 8], 0
je 0x45ece4
mov eax, dword [ebp + 8]
movzx ecx, word [eax]
test ecx, ecx
je 0x45ece4
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x45ece8
xor eax, eax
jmp 0x45ed38
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.SHELL32.dll_ILCreateFromPathW]
mov dword [ebp - 4], eax
mov dword [ebp - 8], 1
cmp dword [ebp - 4], 0
je 0x45ed1f
push 0
push 0
push 0
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.SHELL32.dll_SHOpenFolderAndSelectItems]
mov dword [ebp - 8], eax
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.SHELL32.dll_ILFree]
cmp dword [ebp - 8], 0
jne 0x45ed2e
mov dword [ebp - 0xc], 1
jmp 0x45ed35
mov dword [ebp - 0xc], 0
mov eax, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
Function at 0x461470
Capabilities:
Open clipboard
Read clipboard data
Write clipboard data

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x38
cmp dword [ebp + 8], 0
je 0x461486
mov eax, dword [ebp + 8]
movzx ecx, word [eax]
test ecx, ecx
jne 0x46148d
xor eax, eax
jmp 0x4615f2
mov dword [ebp - 0x18], 0
push 0
call dword [sym.imp.USER32.dll_OpenClipboard]
test eax, eax
je 0x4615ef
mov dword [ebp - 4], 0
cmp dword [ebp + 0xc], 0
je 0x461564
mov dword [ebp - 8], 0
mov dword [ebp - 0x10], 0
mov edx, dword [ebp - 8]
push edx
call dword [sym.imp.USER32.dll_EnumClipboardFormats]
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jne 0x4614db
jmp 0x461564
mov eax, dword [ebp - 8]
push eax
call dword [sym.imp.USER32.dll_GetClipboardData]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
je 0x461543
mov ecx, dword [ebp - 4]
push ecx
call fcn.00461600
add esp, 4
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
je 0x461543
lea edx, [ebp - 8]
mov dword [ebp - 0x24], edx
lea eax, [ebp - 4]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x20], ecx
mov edx, dword [ebp - 0x20]
mov eax, dword [edx]
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x28], ecx
mov edx, dword [ebp - 0x28]
mov eax, dword [edx]
mov dword [ebp - 0x34], eax
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x2c], ecx
mov edx, dword [ebp - 0x2c]
mov dword [ebp - 0x30], edx
mov eax, dword [ebp - 0x30]
push eax
mov ecx, dword [ebp + 0xc]
call fcn.004613b0
mov ecx, dword [ebp - 0x10]
add ecx, 1
mov dword [ebp - 0x10], ecx
cmp dword [ebp - 0x10], 0x186a0
jle 0x461557
jmp 0x461564
mov edx, 1
test edx, edx
jne 0x4614c3
call dword [sym.imp.USER32.dll_EmptyClipboard]
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
lea ecx, [eax + eax + 2]
push ecx
push 2
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
je 0x4615e9
mov edx, dword [ebp - 0xc]
push edx
call dword [sym.imp.KERNEL32.dll_GlobalLock]
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
je 0x4615e9
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
lea ecx, [eax + eax + 2]
push ecx
mov edx, dword [ebp + 8]
push edx
mov eax, dword [ebp - 0x14]
push eax
call fcn.004649f0
add esp, 0xc
mov ecx, dword [ebp - 0xc]
push ecx
call dword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov edx, dword [ebp - 0xc]
push edx
push 0xd
call dword [sym.imp.USER32.dll_SetClipboardData]
test eax, eax
jne 0x4615e2
mov eax, dword [ebp - 0xc]
push eax
call dword [sym.imp.KERNEL32.dll_GlobalFree]
jmp 0x4615e9
mov dword [ebp - 0x18], 1
call dword [sym.imp.USER32.dll_CloseClipboard]
mov eax, dword [ebp - 0x18]
mov esp, ebp
pop ebp
ret
Function at 0x461d60
Capabilities:
Log keystrokes via polling

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x84
mov eax, 1
test eax, eax
je 0x461e40
push 0
push 0
push 0
push 0xa2
call dword [sym.imp.USER32.dll_keybd_event]
push 0
push 0
push 0
push 0x41
call dword [sym.imp.USER32.dll_keybd_event]
push 0
push 2
push 0
push 0x41
call dword [sym.imp.USER32.dll_keybd_event]
xor ecx, ecx
je 0x461df4
mov dword [ebp - 0x10], 0x186a0
mov dword [ebp - 0xc], 0
push 0x41
call dword [sym.imp.USER32.dll_GetKeyState]
mov word [ebp - 4], ax
movsx edx, word [ebp - 4]
and edx, 1
je 0x461dcc
jmp 0x461dce
jmp 0x461df2
mov eax, dword [ebp - 0xc]
cmp eax, dword [ebp - 0x10]
jb 0x461dd8
jmp 0x461df2
push 1
call dword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, dword [ebp - 0xc]
add ecx, 1
mov dword [ebp - 0xc], ecx
mov edx, 1
test edx, edx
jne 0x461db5
jmp 0x461e2a
push 0x41
call dword [sym.imp.USER32.dll_GetKeyState]
mov word [ebp - 8], ax
movsx eax, word [ebp - 8]
and eax, 1
je 0x461e2a
push 0xc8
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0xc8
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0x1f4
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0
push 2
push 0
push 0xa2
call dword [sym.imp.USER32.dll_keybd_event]
jmp 0x461f29
mov dword [ebp - 0x84], 0
push 0x6c
push 0
lea ecx, [ebp - 0x80]
push ecx
call fcn.00464f70
add esp, 0xc
mov edx, 0x1c
imul eax, edx, 0
mov dword [ebp + eax - 0x84], 1
mov ecx, 0x1c
imul edx, ecx, 0
mov eax, 0xa2
mov word [ebp + edx - 0x80], ax
mov ecx, 0x1c
shl ecx, 0
mov dword [ebp + ecx - 0x84], 1
mov edx, 0x1c
shl edx, 0
mov eax, 0x41
mov word [ebp + edx - 0x80], ax
mov ecx, 0x1c
shl ecx, 1
mov dword [ebp + ecx - 0x84], 1
mov edx, 0x1c
shl edx, 1
mov eax, 0x41
mov word [ebp + edx - 0x80], ax
mov ecx, 0x1c
shl ecx, 1
mov dword [ebp + ecx - 0x7c], 2
mov edx, 0x1c
imul eax, edx, 3
mov dword [ebp + eax - 0x84], 1
mov ecx, 0x1c
imul edx, ecx, 3
mov eax, 0xa2
mov word [ebp + edx - 0x80], ax
mov ecx, 0x1c
imul edx, ecx, 3
mov dword [ebp + edx - 0x7c], 2
push 0x1c
lea eax, [ebp - 0x84]
push eax
push 4
call dword [sym.imp.USER32.dll_SendInput]
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 4
je 0x461f29
xor eax, eax
jmp 0x461f2e
mov eax, 1
mov esp, ebp
pop ebp
ret

Function at 0x4623b0
Capabilities:
Set http header

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
mov dword [ebp - 0xc], ecx
push 0xa0000000
push 0xffffffffffffffff
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.WINHTTP.dll_WinHttpAddRequestHeaders]
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jne 0x4623e6
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 4], eax
mov edx, dword [ebp - 4]
mov dword [ebp - 4], edx
mov eax, dword [ebp - 8]
mov esp, ebp
pop ebp
ret 8
Function at 0x462eb0
Capabilities:
Read http header

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x50
mov dword [ebp - 0x50], ecx
mov dword [ebp - 8], 0
cmp dword [ebp + 8], 0
je 0x463068
cmp dword [ebp + 0xc], 0
je 0x462f39
mov dword [ebp - 0xc], 0
push 0
lea eax, [ebp - 0xc]
push eax
push 0
push 0
push 0x80000016
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.WINHTTP.dll_WinHttpQueryHeaders]
mov dword [ebp - 8], eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0x7a
jne 0x462f39
push 0
mov edx, dword [ebp - 0xc]
push edx
mov ecx, dword [ebp + 0xc]
call fcn.00464170
mov ecx, dword [ebp + 0xc]
call fcn.00430cc0
mov dword [ebp - 0x34], eax
push 0
lea eax, [ebp - 0xc]
push eax
mov ecx, dword [ebp - 0x34]
push ecx
push 0
push 0x80000016
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.WINHTTP.dll_WinHttpQueryHeaders]
mov dword [ebp - 8], eax
cmp dword [ebp + 0x10], 0
je 0x463068
mov dword [ebp - 0xc], 0
push 0
lea eax, [ebp - 0xc]
push eax
push 0
push 0
push 0x16
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.WINHTTP.dll_WinHttpQueryHeaders]
mov dword [ebp - 8], eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0x7a
jne 0x463068
mov edx, dword [ebp - 0xc]
mov dword [ebp - 0x14], edx
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x10]
mov dword [ebp - 0x20], ecx
mov edx, dword [ebp - 0x14]
cmp edx, dword [ebp - 0x20]
ja 0x462f9b
mov eax, dword [ebp - 0x14]
push eax
mov ecx, dword [ebp + 0x10]
call fcn.00430af0
jmp 0x462fac
push 0
mov ecx, dword [ebp - 0x14]
sub ecx, dword [ebp - 0x20]
push ecx
mov ecx, dword [ebp + 0x10]
call fcn.00431310
mov edx, dword [ebp + 0x10]
mov dword [ebp - 0x18], edx
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x18]
cmp dword [ecx + 0x14], 8
jb 0x462fca
mov dword [ebp - 0x24], 1
jmp 0x462fd1
mov dword [ebp - 0x24], 0
mov dl, byte [ebp - 0x24]
mov byte [ebp - 1], dl
movzx eax, byte [ebp - 1]
test eax, eax
je 0x462fed
mov ecx, dword [ebp - 0x18]
mov edx, dword [ecx]
mov dword [ebp - 0x38], edx
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x28]
mov dword [ebp - 0x3c], ecx
mov edx, dword [ebp - 0x3c]
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x40], 0
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x30], ecx
mov edx, dword [ebp - 0x1c]
cmp dword [edx + 0x14], 8
jb 0x46301e
mov dword [ebp - 0x2c], 1
jmp 0x463025
mov dword [ebp - 0x2c], 0
mov al, byte [ebp - 0x2c]
mov byte [ebp - 2], al
movzx ecx, byte [ebp - 2]
test ecx, ecx
je 0x463041
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx]
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x44]
mov dword [ebp - 0x30], ecx
mov edx, dword [ebp - 0x30]
mov dword [ebp - 0x48], edx
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x4c], eax
push 0
lea ecx, [ebp - 0xc]
push ecx
mov edx, dword [ebp - 0x4c]
push edx
push 0
push 0x16
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpQueryHeaders]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
mov esp, ebp
pop ebp
ret 0xc
Function at 0x4634a0
Capabilities:
Prepare http request

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
mov dword [ebp - 0xc], ecx
mov dword [ebp - 8], 0
cmp dword [ebp + 8], 0
je 0x4635f5
mov eax, dword [ebp + 0x18]
push eax
mov ecx, dword [ebp + 0x24]
push ecx
mov edx, dword [ebp + 0x20]
push edx
mov eax, dword [ebp + 0x1c]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 0x10]
push edx
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpOpenRequest]
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4635f5
xor ecx, ecx
je 0x463525
push 0
push 0x10000
push 0x4636e0
mov edx, dword [ebp - 8]
push edx
call dword [sym.imp.WINHTTP.dll_WinHttpSetStatusCallback]
cmp eax, 0xffffffff
jne 0x463525
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x4b429c
push str._s:WinHttpSetStatusCallback___failed:_d
mov eax, dword [ebp - 0xc]
push eax
call fcn.00464140
add esp, 0x10
mov dword [ebp - 4], 0
mov dword [ebp - 0x10], 4
lea ecx, [ebp - 0x10]
push ecx
lea edx, [ebp - 4]
push edx
push 0x1f
mov eax, dword [ebp - 8]
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpQueryOption]
test eax, eax
jne 0x463568
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x4b4318
push str._s:WinHttpQueryOption___failed:_d
mov ecx, dword [ebp - 0xc]
push ecx
call fcn.00464140
add esp, 0x10
mov edx, dword [ebp - 4]
or edx, 0x100
mov dword [ebp - 4], edx
mov eax, dword [ebp - 4]
or eax, 0x2000
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 4]
or ecx, 0x1000
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 4]
or edx, 0x3300
mov dword [ebp - 4], edx
push 4
lea eax, [ebp - 4]
push eax
push 0x1f
mov ecx, dword [ebp - 8]
push ecx
call dword [sym.imp.WINHTTP.dll_WinHttpSetOption]
test eax, eax
jne 0x4635ca
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.CJHHttp::OpenRequest
push str._s:WinHttpSetOption___failed:_d
mov edx, dword [ebp - 0xc]
push edx
call fcn.00464140
add esp, 0x10
cmp dword [ebp + 0x14], 0
je 0x4635f5
mov eax, dword [ebp + 0x14]
cmp dword [eax], 0
je 0x4635f5
mov ecx, dword [ebp + 0x14]
mov edx, dword [ecx]
push edx
mov eax, dword [ebp - 8]
push eax
mov ecx, dword [ebp - 0xc]
call fcn.004623b0
mov ecx, dword [ebp + 0x14]
add ecx, 4
mov dword [ebp + 0x14], ecx
jmp 0x4635d0
mov eax, dword [ebp - 8]
mov esp, ebp
pop ebp
ret 0x20
Function at 0x463600
Capabilities:
Initialize winhttp library

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
mov dword [ebp - 4], ecx
mov eax, dword [ebp - 4]
cmp dword [eax + 4], 0
je 0x463629
mov ecx, dword [ebp - 4]
mov edx, dword [ecx + 4]
push edx
call dword [sym.imp.WINHTTP.dll_WinHttpCloseHandle]
mov eax, dword [ebp - 4]
mov dword [eax + 4], 0
mov ecx, dword [ebp + 0x18]
push ecx
mov edx, dword [ebp + 0x14]
push edx
mov eax, dword [ebp + 0x10]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.WINHTTP.dll_WinHttpOpen]
mov ecx, dword [ebp - 4]
mov dword [ecx + 4], eax
mov edx, dword [ebp - 4]
cmp dword [edx + 4], 0
jne 0x463671
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x4b3fcc
push str._s:WinHttpOpen___failed:_d
mov eax, dword [ebp - 4]
push eax
call fcn.00464140
add esp, 0x10
jmp 0x4636ba
mov dword [ebp - 8], 0x2a0
mov ecx, dword [ebp - 8]
or ecx, 0x800
mov dword [ebp - 8], ecx
push 4
lea edx, [ebp - 8]
push edx
push 0x54
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 4]
push ecx
call dword [sym.imp.WINHTTP.dll_WinHttpSetOption]
test eax, eax
jne 0x4636ba
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.CJHHttp::OpenSession
push 0x4b4060
mov edx, dword [ebp - 4]
push edx
call fcn.00464140
add esp, 0x10
mov eax, dword [ebp - 4]
cmp dword [eax + 4], 0
je 0x4636cc
mov dword [ebp - 0xc], 1
jmp 0x4636d3
mov dword [ebp - 0xc], 0
mov eax, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret 0x14

Function at 0x464060
Capabilities:
Receive http response
Send data
Send http request

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2c
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 8], 0
cmp dword [ebp + 8], 0
je 0x464130
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x10]
mov dword [ebp - 0x10], ecx
push 0
mov edx, dword [ebp - 0x10]
push edx
push 0
push 0
push 0
push 0
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpSendRequest]
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x464130
cmp dword [ebp - 0x10], 0
je 0x46411b
mov dword [ebp - 0x24], 0
mov ecx, dword [ebp + 0xc]
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 0xc]
mov dword [ebp - 0x18], edx
mov eax, dword [ebp - 0xc]
cmp dword [eax + 0x14], 0x10
jb 0x4640d3
mov dword [ebp - 0x14], 1
jmp 0x4640da
mov dword [ebp - 0x14], 0
mov cl, byte [ebp - 0x14]
mov byte [ebp - 1], cl
movzx edx, byte [ebp - 1]
test edx, edx
je 0x4640f6
mov eax, dword [ebp - 0xc]
mov ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
mov edx, dword [ebp - 0x1c]
mov dword [ebp - 0x18], edx
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x20], eax
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0x28], ecx
lea edx, [ebp - 0x24]
push edx
mov eax, dword [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x28]
push ecx
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.WINHTTP.dll_WinHttpWriteData]
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x464130
push 0
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpReceiveResponse]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
mov esp, ebp
pop ebp
ret 8
Function at 0x48b0d0
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x49eec0
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x24
mov dword [ebp - 0x10], ecx
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax + 0x3c]
and ecx, 1
je 0x48b19e
mov edx, dword [ebp - 0x10]
mov eax, dword [edx + 0x20]
mov ecx, dword [eax]
mov dword [ebp - 0x20], ecx
cmp dword [ebp - 0x20], 0
je 0x48b123
mov edx, dword [ebp - 0x10]
mov eax, dword [edx + 0x30]
mov ecx, dword [ebp - 0x10]
mov edx, dword [ecx + 0x20]
mov ecx, dword [edx]
add ecx, dword [eax]
mov dword [ebp - 0x18], ecx
jmp 0x48b136
mov edx, dword [ebp - 0x10]
mov eax, dword [edx + 0x2c]
mov ecx, dword [ebp - 0x10]
mov edx, dword [ecx + 0x1c]
mov ecx, dword [edx]
add ecx, dword [eax]
mov dword [ebp - 0x18], ecx
mov edx, dword [ebp - 0x10]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax]
mov dword [ebp - 0x2c], ecx
mov edx, dword [ebp - 0x10]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax]
mov dword [ebp - 0x24], ecx
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x28], edx
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x30], eax
mov ecx, dword [ebp - 0x18]
sub ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x14], ecx
mov edx, dword [ebp - 0x30]
mov dword [ebp - 0x1c], edx
mov dword [ebp - 4], 0
cmp dword [ebp - 0x14], 0x1000
jb 0x48b187
lea eax, [ebp - 0x14]
push eax
lea ecx, [ebp - 0x1c]
push ecx
call fcn.004305d0
add esp, 8
mov edx, dword [ebp - 0x14]
push edx
mov eax, dword [ebp - 0x1c]
push eax
call fcn.00429ebb
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x10]
mov edx, dword [ecx + 0xc]
mov dword [edx], 0
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax + 0x1c]
mov dword [ecx], 0
xor edx, edx
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax + 0x2c]
mov dword [ecx], edx
mov edx, dword [ebp - 0x10]
mov eax, dword [edx + 0x10]
mov dword [eax], 0
mov ecx, dword [ebp - 0x10]
mov edx, dword [ecx + 0x20]
mov dword [edx], 0
xor eax, eax
mov ecx, dword [ebp - 0x10]
mov edx, dword [ecx + 0x30]
mov dword [edx], eax
mov eax, dword [ebp - 0x10]
mov dword [eax + 0x38], 0
mov ecx, dword [ebp - 0x10]
mov edx, dword [ecx + 0x3c]
and edx, 0xfffffffe
mov eax, dword [ebp - 0x10]
mov dword [eax + 0x3c], edx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret
Function at 0x100010b0
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc0
push ebx
push esi
push edi
mov edi, ebp
xor ecx, ecx
mov eax, 0xcccccccc
rep stosd dword es:[edi], eax
mov ecx, 0x10054066
call fcn.100063e0
nop
call fcn.100051b0
nop
mov esi, esp
call dword [sym.imp.KERNEL32.dll_GetCurrentThread]
cmp esi, esp
call fcn.100063b0
push eax
call fcn.10005680
nop
push 0x100015e0
push 0x10052bbc
call fcn.10004c40
nop
call fcn.10005210
test eax, eax
je 0x1000112f
mov esi, esp
push 0x30
push 0x100401c4
push str.Error_in_Attack_Connect
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
cmp esi, esp
call fcn.100063b0
nop
push 0
call fcn.1000e7c0
nop
jmp 0x1000119e
call fcn.100051b0
nop
mov esi, esp
call dword [sym.imp.KERNEL32.dll_GetCurrentThread]
cmp esi, esp
call fcn.100063b0
push eax
call fcn.10005680
nop
push 0x100014b0
push 0x10052bc0
call fcn.10004c40
nop
call fcn.10005210
nop
call fcn.100051b0
nop
mov esi, esp
call dword [sym.imp.KERNEL32.dll_GetCurrentThread]
cmp esi, esp
call fcn.100063b0
push eax
call fcn.10005680
nop
push 0x100017f0
push 0x10052bb0
call fcn.10004c40
nop
call fcn.10005210
test eax, eax
je 0x1000119e
push 0
call fcn.1000e7c0
nop
pop edi
pop esi
pop ebx
add esp, 0xc0
cmp ebp, esp
call fcn.100063b0
mov esp, ebp
pop ebp
ret