joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1800062a0
Capabilities:
Read file on windows

Disassembly:
jmp 0x180191800
mov qword [rsp + 0x20], r9
mov dword [rsp + 0x18], r8d
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0x90
lea rdi, [rsp + 0x50]
mov ecx, 0x10
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0xa0]
mov qword [rsp + 0x88], 0
mov rax, qword [rsp + 0xa0]
mov eax, dword [rax + 8]
and eax, 8
test eax, eax
je 0x180191867
mov rax, qword [rsp + 0xa0]
add rax, 0x10
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x40], 0
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x38], rax
mov eax, dword [rsp + 0xb0]
mov dword [rsp + 0x30], eax
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x68]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rax, qword [rsp + 0xa0]
mov rcx, qword [rax]
call qword [sym.imp.ntdll.dll_NtReadFile]
mov dword [rsp + 0x50], eax
cmp dword [rsp + 0x50], 0x103
jne 0x1801918ef
xor r8d, r8d
xor edx, edx
mov rax, qword [rsp + 0xa0]
mov rcx, qword [rax]
call qword [sym.imp.ntdll.dll_NtWaitForSingleObject]
mov dword [rsp + 0x50], eax
cmp dword [rsp + 0x50], 0
jl 0x1801918ef
mov eax, dword [rsp + 0x68]
mov dword [rsp + 0x50], eax
cmp dword [rsp + 0x50], 0
jl 0x18019192c
mov rax, qword [rsp + 0xa0]
mov rax, qword [rax + 0x10]
add rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0xa0]
mov qword [rcx + 0x10], rax
cmp qword [rsp + 0xb8], 0
je 0x18019192c
mov rax, qword [rsp + 0xb8]
mov ecx, dword [rsp + 0x70]
mov dword [rax], ecx
mov eax, dword [rsp + 0x50]
mov edi, eax
mov rcx, rsp
lea rdx, [0x1804ba1c0]
call fcn.180014e20
mov eax, edi
add rsp, 0x90
pop rdi
ret
Function at 0x1800062d0
Capabilities:
Enumerate services

Disassembly:
jmp 0x1801b8460
mov qword [rsp + 0x20], r9
mov dword [rsp + 0x18], r8d
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0xb0
lea rdi, [rsp + 0x50]
mov ecx, 0x18
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0xc0]
cmp dword [rsp + 0xc8], 0
jne 0x1801b84d5
cmp dword [0x18059ff7c], 0x66
jb 0x1801b84b4
mov dword [rsp + 0xc8], 0x3ff
jmp 0x1801b84d5
cmp dword [0x18059ff7c], 0x64
jb 0x1801b84ca
mov dword [rsp + 0xc8], 0x1ff
jmp 0x1801b84d5
mov dword [rsp + 0xc8], 0x3b
cmp dword [rsp + 0xd0], 0
jne 0x1801b84ea
mov dword [rsp + 0xd0], 3
mov eax, dword [0x1805a0628]
mov dword [rsp + 0x60], eax
mov eax, dword [rsp + 0x60]
mov ecx, eax
call sym.ProcessMonitor.dll_PhAllocate
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x48], 0
mov qword [rsp + 0x40], 0
lea rax, [rsp + 0x94]
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0x74]
mov qword [rsp + 0x30], rax
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0x28], eax
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x20], rax
mov r9d, dword [rsp + 0xd0]
mov r8d, dword [rsp + 0xc8]
xor edx, edx
mov rcx, qword [rsp + 0xc0]
call qword [sym.imp.ADVAPI32.dll_EnumServicesStatusExW]
mov dword [rsp + 0x50], eax
cmp dword [rsp + 0x50], 0
jne 0x1801b861d
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xea
jne 0x1801b8608
mov rcx, qword [rsp + 0x58]
call sym.ProcessMonitor.dll_PhFree
mov eax, dword [rsp + 0x74]
mov ecx, dword [rsp + 0x60]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x60], eax
mov eax, dword [rsp + 0x60]
mov ecx, eax
call sym.ProcessMonitor.dll_PhAllocate
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x48], 0
mov qword [rsp + 0x40], 0
lea rax, [rsp + 0x94]
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0x74]
mov qword [rsp + 0x30], rax
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0x28], eax
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x20], rax
mov r9d, dword [rsp + 0xd0]
mov r8d, dword [rsp + 0xc8]
xor edx, edx
mov rcx, qword [rsp + 0xc0]
call qword [sym.imp.ADVAPI32.dll_EnumServicesStatusExW]
mov dword [rsp + 0x50], eax
cmp dword [rsp + 0x50], 0
jne 0x1801b861d
mov rcx, qword [rsp + 0x58]
call sym.ProcessMonitor.dll_PhFree
xor eax, eax
jmp 0x1801b8647
cmp dword [rsp + 0x60], 0x20000
ja 0x1801b8631
mov eax, dword [rsp + 0x60]
mov dword [0x1805a0628], eax
mov rax, qword [rsp + 0xd8]
mov ecx, dword [rsp + 0x94]
mov dword [rax], ecx
mov rax, qword [rsp + 0x58]
mov rdi, rax
mov rcx, rsp
lea rdx, [0x1804ca250]
call fcn.180014e20
mov rax, rdi
add rsp, 0xb0
pop rdi
ret

Function at 0x1800065b0
Capabilities:
Receive http response

Disassembly:
jmp 0x1802263b0
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0x30
xor edx, edx
mov rax, qword [rsp + 0x40]
mov rcx, qword [rax + 0x10]
call qword [sym.imp.WINHTTP.dll_WinHttpReceiveResponse]
test eax, eax
je 0x1802263d9
mov dword [rsp + 0x20], 1
jmp 0x1802263e1
mov dword [rsp + 0x20], 0
movzx eax, byte [rsp + 0x20]
add rsp, 0x30
pop rdi
ret
Function at 0x180006880
Capabilities:
Parse pe header

Disassembly:
jmp 0x1801785e0
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0x20
mov rax, qword [rsp + 0x30]
mov qword [rsp], rax
mov rax, qword [rsp]
movzx eax, word [rax]
cmp eax, 0x5a4d
je 0x18017860d
mov eax, 0xc000012f
jmp 0x180178667
mov rax, qword [rsp]
mov eax, dword [rax + 0x3c]
mov dword [rsp + 0x10], eax
cmp dword [rsp + 0x10], 0
je 0x180178629
cmp dword [rsp + 0x10], 0x7fffffff
jb 0x180178630
mov eax, 0xc000007b
jmp 0x180178667
mov eax, dword [rsp + 0x10]
mov rcx, qword [rsp + 0x30]
add rcx, rax
mov rax, rcx
mov qword [rsp + 8], rax
mov rax, qword [rsp + 8]
cmp dword [rax], 0x4550
je 0x180178658
mov eax, 0xc000007b
jmp 0x180178667
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 8]
mov qword [rax], rcx
xor eax, eax
add rsp, 0x20
pop rdi
ret
Function at 0x180006a90
Capabilities:
Map section object

Disassembly:
jmp 0x18021b410
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0xe0
lea rdi, [rsp + 0x50]
mov ecx, 0x24
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0xf0]
mov byte [rsp + 0x54], 0
mov qword [rsp + 0x88], 0
cmp qword [rsp + 0xf0], 0
jne 0x18021b476
cmp qword [rsp + 0xf8], 0
jne 0x18021b476
mov eax, 0xc0000030
jmp 0x18021b611
cmp qword [rsp + 0xf8], 0
jne 0x18021b4d3
mov dword [rsp + 0x30], 0x60
mov dword [rsp + 0x28], 1
mov dword [rsp + 0x20], 1
mov r9d, 0x80
mov r8d, 0x100081
mov rdx, qword [rsp + 0xf0]
lea rcx, [rsp + 0xf8]
call sym.ProcessMonitor.dll_PhCreateFileWin32
mov dword [rsp + 0x50], eax
cmp dword [rsp + 0x50], 0
jge 0x18021b4ce
mov eax, dword [rsp + 0x50]
jmp 0x18021b611
mov byte [rsp + 0x54], 1
lea rdx, [rsp + 0x68]
mov rcx, qword [rsp + 0xf8]
call sym.ProcessMonitor.dll_PhGetFileSize
mov dword [rsp + 0x50], eax
cmp dword [rsp + 0x50], 0
jge 0x18021b4f5
jmp 0x18021b5dd
mov rax, qword [rsp + 0xf8]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], 0x8000000
mov dword [rsp + 0x20], 2
lea r9, [rsp + 0x68]
xor r8d, r8d
mov edx, 5
lea rcx, [rsp + 0x88]
call qword [sym.imp.ntdll.dll_NtCreateSection]
mov dword [rsp + 0x50], eax
cmp dword [rsp + 0x50], 0
jge 0x18021b53d
jmp 0x18021b5dd
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0xa8], rax
mov qword [rsp + 0xc8], 0
mov dword [rsp + 0x48], 2
mov dword [rsp + 0x40], 0
mov dword [rsp + 0x38], 1
lea rax, [rsp + 0xa8]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
xor r9d, r9d
lea r8, [rsp + 0xc8]
mov rdx, 0xffffffffffffffff
mov rcx, qword [rsp + 0x88]
call qword [sym.imp.ntdll.dll_NtMapViewOfSection]
mov dword [rsp + 0x50], eax
cmp dword [rsp + 0x50], 0
jge 0x18021b5ba
jmp 0x18021b5dd
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0xc8]
mov qword [rax], rcx
mov rax, qword [rsp + 0x108]
mov rcx, qword [rsp + 0x68]
mov qword [rax], rcx
cmp qword [rsp + 0x88], 0
je 0x18021b5f6
mov rcx, qword [rsp + 0x88]
call qword [sym.imp.ntdll.dll_NtClose]
movzx eax, byte [rsp + 0x54]
test eax, eax
je 0x18021b60d
mov rcx, qword [rsp + 0xf8]
call qword [sym.imp.ntdll.dll_NtClose]
mov eax, dword [rsp + 0x50]
mov rdi, rax
mov rcx, rsp
lea rdx, [0x1804de410]
call fcn.180014e20
mov rax, rdi
add rsp, 0xe0
pop rdi
ret
Function at 0x180007030
Capabilities:
Map section object

Disassembly:
jmp 0x18021b640
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0xe0
lea rdi, [rsp + 0x50]
mov ecx, 0x24
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0xf0]
mov byte [rsp + 0x54], 0
mov qword [rsp + 0x88], 0
cmp qword [rsp + 0xf0], 0
jne 0x18021b6a6
cmp qword [rsp + 0xf8], 0
jne 0x18021b6a6
mov eax, 0xc0000030
jmp 0x18021b841
cmp qword [rsp + 0xf8], 0
jne 0x18021b703
mov dword [rsp + 0x30], 0x60
mov dword [rsp + 0x28], 1
mov dword [rsp + 0x20], 1
mov r9d, 0x80
mov r8d, 0x100081
mov rdx, qword [rsp + 0xf0]
lea rcx, [rsp + 0xf8]
call sym.ProcessMonitor.dll_PhCreateFile
mov dword [rsp + 0x50], eax
cmp dword [rsp + 0x50], 0
jge 0x18021b6fe
mov eax, dword [rsp + 0x50]
jmp 0x18021b841
mov byte [rsp + 0x54], 1
lea rdx, [rsp + 0x68]
mov rcx, qword [rsp + 0xf8]
call sym.ProcessMonitor.dll_PhGetFileSize
mov dword [rsp + 0x50], eax
cmp dword [rsp + 0x50], 0
jge 0x18021b725
jmp 0x18021b80d
mov rax, qword [rsp + 0xf8]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], 0x8000000
mov dword [rsp + 0x20], 2
lea r9, [rsp + 0x68]
xor r8d, r8d
mov edx, 5
lea rcx, [rsp + 0x88]
call qword [sym.imp.ntdll.dll_NtCreateSection]
mov dword [rsp + 0x50], eax
cmp dword [rsp + 0x50], 0
jge 0x18021b76d
jmp 0x18021b80d
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0xa8], rax
mov qword [rsp + 0xc8], 0
mov dword [rsp + 0x48], 2
mov dword [rsp + 0x40], 0
mov dword [rsp + 0x38], 1
lea rax, [rsp + 0xa8]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
xor r9d, r9d
lea r8, [rsp + 0xc8]
mov rdx, 0xffffffffffffffff
mov rcx, qword [rsp + 0x88]
call qword [sym.imp.ntdll.dll_NtMapViewOfSection]
mov dword [rsp + 0x50], eax
cmp dword [rsp + 0x50], 0
jge 0x18021b7ea
jmp 0x18021b80d
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0xc8]
mov qword [rax], rcx
mov rax, qword [rsp + 0x108]
mov rcx, qword [rsp + 0x68]
mov qword [rax], rcx
cmp qword [rsp + 0x88], 0
je 0x18021b826
mov rcx, qword [rsp + 0x88]
call qword [sym.imp.ntdll.dll_NtClose]
movzx eax, byte [rsp + 0x54]
test eax, eax
je 0x18021b83d
mov rcx, qword [rsp + 0xf8]
call qword [sym.imp.ntdll.dll_NtClose]
mov eax, dword [rsp + 0x50]
mov rdi, rax
mov rcx, rsp
lea rdx, [0x1804de560]
call fcn.180014e20
mov rax, rdi
add rsp, 0xe0
pop rdi
ret
Function at 0x180007e90
Capabilities:
Get system information on windows

Disassembly:
jmp 0x180190140
push rdi
sub rsp, 0x20
xor r9d, r9d
mov r8d, 0x40
lea rdx, [sym.ProcessMonitor.dll_PhSystemBasicInformation]
xor ecx, ecx
call qword [sym.imp.ntdll.dll_NtQuerySystemInformation]
add rsp, 0x20
pop rdi
ret
Function at 0x180008230
Capabilities:
Delete service
Stop service

Disassembly:
jmp 0x1801b68c0
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0x90
lea rdi, [rsp + 0x20]
mov ecx, 0x1c
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0xa0]
mov rax, qword [0x1805a6200]
xor rax, rsp
mov qword [rsp + 0x88], rax
mov dword [rsp + 0x20], 0
mov r8d, 1
xor edx, edx
xor ecx, ecx
call qword [sym.imp.ADVAPI32.dll_OpenSCManagerW]
mov qword [rsp + 0x28], rax
cmp qword [rsp + 0x28], 0
jne 0x1801b6927
call fcn.180010890
jmp 0x1801b69cb
cmp qword [rsp + 0xa0], 0
je 0x1801b6944
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x80], rax
jmp 0x1801b6953
lea rax, str.KProcessHacker3
mov qword [rsp + 0x80], rax
mov r8d, 0x10020
mov rdx, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x28]
call qword [sym.imp.ADVAPI32.dll_OpenServiceW]
mov qword [rsp + 0x30], rax
cmp qword [rsp + 0x30], 0
je 0x1801b69b3
lea r8, [rsp + 0x48]
mov edx, 1
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.ADVAPI32.dll_ControlService]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.ADVAPI32.dll_DeleteService]
test eax, eax
jne 0x1801b69a6
call fcn.180010890
mov dword [rsp + 0x20], eax
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
jmp 0x1801b69bc
call fcn.180010890
mov dword [rsp + 0x20], eax
mov rcx, qword [rsp + 0x28]
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov eax, dword [rsp + 0x20]
mov rdi, rax
mov rcx, rsp
lea rdx, [0x1804c90f0]
call fcn.180014e20
mov rax, rdi
mov rcx, qword [rsp + 0x88]
xor rcx, rsp
call fcn.18000ce90
add rsp, 0x90
pop rdi
ret
Function at 0x180008530
Capabilities:
Initialize winhttp library

Disassembly:
jmp 0x180225f60
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0xc0
lea rdi, [rsp + 0x30]
mov ecx, 0x24
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0xd0]
mov ecx, 0x20
call sym.ProcessMonitor.dll_PhAllocate
mov qword [rsp + 0x30], rax
mov r8d, 0x20
xor edx, edx
mov rcx, qword [rsp + 0x30]
call fcn.180013180
cmp dword [0x18059ff7c], 0x3f
jb 0x180225fc2
mov dword [rsp + 0xb4], 4
jmp 0x180225fcd
mov dword [rsp + 0xb4], 0
mov dword [rsp + 0x20], 0
xor r9d, r9d
xor r8d, r8d
mov edx, dword [rsp + 0xb4]
mov rcx, qword [rsp + 0xd8]
call qword [sym.imp.WINHTTP.dll_WinHttpOpen]
mov rcx, qword [rsp + 0x30]
mov qword [rcx], rax
mov rax, qword [rsp + 0x30]
cmp qword [rax], 0
jne 0x180226014
mov rcx, qword [rsp + 0x30]
call sym.ProcessMonitor.dll_PhFree
xor al, al
jmp 0x1802260e1
cmp dword [0x18059ff7c], 0x3f
jae 0x180226048
mov dword [rsp + 0x44], 0xa00
mov r9d, 4
lea r8, [rsp + 0x44]
mov edx, 0x54
mov rax, qword [rsp + 0x30]
mov rcx, qword [rax]
call qword [sym.imp.WINHTTP.dll_WinHttpSetOption]
jmp 0x1802260cf
mov dword [rsp + 0x64], 0x2a00
mov r9d, 4
lea r8, [rsp + 0x64]
mov edx, 0x54
mov rax, qword [rsp + 0x30]
mov rcx, qword [rax]
call qword [sym.imp.WINHTTP.dll_WinHttpSetOption]
mov dword [rsp + 0x84], 3
mov r9d, 4
lea r8, [rsp + 0x84]
mov edx, 0x76
mov rax, qword [rsp + 0x30]
mov rcx, qword [rax]
call qword [sym.imp.WINHTTP.dll_WinHttpSetOption]
cmp dword [0x18059ff7c], 0x64
jb 0x1802260cf
mov dword [rsp + 0xa4], 1
mov r9d, 4
lea r8, [rsp + 0xa4]
mov edx, 0x85
mov rax, qword [rsp + 0x30]
mov rcx, qword [rax]
call qword [sym.imp.WINHTTP.dll_WinHttpSetOption]
mov rax, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0x30]
mov qword [rax], rcx
mov al, 1
mov rdi, rax
mov rcx, rsp
lea rdx, [0x1804e1850]
call fcn.180014e20
mov rax, rdi
add rsp, 0xc0
pop rdi
ret
Function at 0x1800087e0
Capabilities:
Hash data with crc32

Disassembly:
jmp 0x180175da0
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov dword [rsp + 8], ecx
push rdi
sub rsp, 0x10
mov eax, dword [rsp + 0x20]
xor eax, 0xffffffff
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0x30]
mov qword [rsp], rax
mov rax, qword [rsp + 0x30]
dec rax
mov qword [rsp + 0x30], rax
cmp qword [rsp], 0
je 0x180175e17
mov eax, dword [rsp + 0x20]
shr eax, 8
mov rcx, qword [rsp + 0x28]
movsx ecx, byte [rcx]
mov edx, dword [rsp + 0x20]
xor edx, ecx
mov ecx, edx
and ecx, 0xff
mov ecx, ecx
lea rdx, [0x1805a1760]
xor eax, dword [rdx + rcx*4]
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0x28]
inc rax
mov qword [rsp + 0x28], rax
jmp 0x180175dbe
mov eax, dword [rsp + 0x20]
xor eax, 0xffffffff
add rsp, 0x10
pop rdi
ret

Function at 0x180008a20
Capabilities:
Get graphical window text

Disassembly:
jmp 0x180181460
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0x30
mov dword [rsp + 0x20], 0
mov eax, dword [rsp + 0x48]
and eax, 1
test eax, eax
je 0x1801814a6
mov r8d, dword [rsp + 0x58]
mov rdx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.USER32.dll_InternalGetWindowText]
mov dword [rsp + 0x24], eax
jmp 0x1801814bf
mov r8d, dword [rsp + 0x58]
mov rdx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.USER32.dll_GetWindowTextW]
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0
jne 0x1801814d0
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x20], eax
cmp qword [rsp + 0x60], 0
je 0x1801814e3
mov rax, qword [rsp + 0x60]
mov ecx, dword [rsp + 0x24]
mov dword [rax], ecx
mov eax, dword [rsp + 0x20]
add rsp, 0x30
pop rdi
ret
Function at 0x180008a50
Capabilities:
Encrypt data using rc4 prga

Disassembly:
jmp 0x1800c9840
mov byte [rsp + 0x20], r9b
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0xb0
lea rdi, [rsp + 0x20]
mov ecx, 0x24
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0xc0]
mov rax, qword [0x1805a6200]
xor rax, rsp
mov qword [rsp + 0xa8], rax
mov rax, qword [rsp + 0xd0]
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
cmp qword [rsp + 0x20], 0
jne 0x1800c98be
movzx eax, byte [rsp + 0xe0]
test eax, eax
je 0x1800c98b4
xor eax, eax
jmp 0x1800c99f5
mov eax, 0xc0000005
jmp 0x1800c99f5
mov rax, qword [rsp + 0xc0]
mov eax, dword [rax]
cmp qword [rsp + 0x20], rax
jb 0x1800c98d9
mov eax, 0xc0000005
jmp 0x1800c99f5
mov rax, qword [rsp + 0x20]
and rax, 1
test rax, rax
je 0x1800c98f1
mov eax, 0x80000002
jmp 0x1800c99f5
mov rax, qword [rsp + 0x20]
mov rcx, qword [rsp + 0xc8]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0xc0]
mov eax, dword [rax]
and eax, 0xfffffffe
mov eax, eax
mov rcx, qword [rsp + 0xc8]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x30]
sub rcx, rax
mov rax, rcx
sar rax, 1
shl rax, 1
mov qword [rsp + 0x48], rax
movzx eax, byte [rsp + 0xd8]
test eax, eax
je 0x1800c99bf
mov qword [rsp + 0x98], 0
lea r9, [rsp + 0x48]
lea r8, [rsp + 0x78]
xor edx, edx
lea rcx, [rsp + 0x48]
call sym.ProcessMonitor.dll_PhSplitStringRefAtChar
movzx eax, al
test eax, eax
je 0x1800c99bd
mov rax, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x78]
lea rax, [rax + rcx + 2]
mov qword [rsp + 0x98], rax
cmp qword [rsp + 0x78], 0
jne 0x1800c99bb
mov rax, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0x28]
mov qword [rax], rcx
xor eax, eax
jmp 0x1800c99f5
jmp 0x1800c9968
jmp 0x1800c99f0
lea r9, [rsp + 0x48]
lea r8, [rsp + 0x78]
xor edx, edx
lea rcx, [rsp + 0x48]
call sym.ProcessMonitor.dll_PhSplitStringRefAtChar
movzx eax, al
test eax, eax
je 0x1800c99f0
mov rax, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0x28]
mov qword [rax], rcx
xor eax, eax
jmp 0x1800c99f5
mov eax, 0xc0000005
mov rdi, rax
mov rcx, rsp
lea rdx, [0x180483d60]
call fcn.180014e20
mov rax, rdi
mov rcx, qword [rsp + 0xa8]
xor rcx, rsp
call fcn.18000ce90
add rsp, 0xb0
pop rdi
ret
Function at 0x180008ad0
Capabilities:
Receive http response

Disassembly:
jmp 0x180226880
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rdi
mov eax, 0x1080
call fcn.180005520
sub rsp, rax
lea rdi, [rsp + 0x20]
mov ecx, 0x418
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0x1090]
mov rax, qword [0x1805a6200]
xor rax, rsp
mov qword [rsp + 0x1070], rax
mov dword [rsp + 0x28], 0x1000
mov eax, dword [rsp + 0x28]
mov ecx, eax
call sym.ProcessMonitor.dll_PhAllocate
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x2c], 0
lea r9, [rsp + 0x34]
mov r8d, 0x1000
lea rdx, [rsp + 0x60]
mov rcx, qword [rsp + 0x1090]
call qword [sym.imp.WINHTTP.dll_WinHttpReadData]
test eax, eax
je 0x180226979
cmp dword [rsp + 0x34], 0
jne 0x180226913
jmp 0x180226979
mov eax, dword [rsp + 0x34]
mov ecx, dword [rsp + 0x2c]
add ecx, eax
mov eax, ecx
cmp dword [rsp + 0x28], eax
jae 0x180226944
mov eax, dword [rsp + 0x28]
shl eax, 1
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x28]
mov edx, eax
mov rcx, qword [rsp + 0x20]
call sym.ProcessMonitor.dll_PhReAllocate
mov qword [rsp + 0x20], rax
mov eax, dword [rsp + 0x34]
mov ecx, dword [rsp + 0x2c]
mov rdx, qword [rsp + 0x20]
add rdx, rcx
mov rcx, rdx
mov r8d, eax
lea rdx, [rsp + 0x60]
call fcn.18000cf00
mov eax, dword [rsp + 0x34]
mov ecx, dword [rsp + 0x2c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x2c], eax
jmp 0x1802268e8
mov eax, dword [rsp + 0x2c]
inc eax
cmp dword [rsp + 0x28], eax
jae 0x1802269a4
mov eax, dword [rsp + 0x28]
inc eax
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x28]
mov edx, eax
mov rcx, qword [rsp + 0x20]
call sym.ProcessMonitor.dll_PhReAllocate
mov qword [rsp + 0x20], rax
mov eax, dword [rsp + 0x2c]
mov rcx, qword [rsp + 0x20]
mov byte [rcx + rax], 0
cmp dword [rsp + 0x2c], 0
je 0x1802269fe
cmp qword [rsp + 0x1098], 0
je 0x1802269d5
mov rax, qword [rsp + 0x1098]
mov rcx, qword [rsp + 0x20]
mov qword [rax], rcx
jmp 0x1802269df
mov rcx, qword [rsp + 0x20]
call sym.ProcessMonitor.dll_PhFree
cmp qword [rsp + 0x10a0], 0
je 0x1802269f8
mov rax, qword [rsp + 0x10a0]
mov ecx, dword [rsp + 0x2c]
mov dword [rax], ecx
mov al, 1
jmp 0x180226a0a
mov rcx, qword [rsp + 0x20]
call sym.ProcessMonitor.dll_PhFree
xor al, al
mov rdi, rax
mov rcx, rsp
lea rdx, [0x1804e1b20]
call fcn.180014e20
mov rax, rdi
mov rcx, qword [rsp + 0x1070]
xor rcx, rsp
call fcn.18000ce90
add rsp, 0x1080
pop rdi
ret
Function at 0x180008dd0
Capabilities:
Enumerate pe sections

Disassembly:
jmp 0x180178840
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0x20
mov qword [rsp], 0
mov qword [rsp + 0x10], 0
mov dword [rsp + 0x18], 0
jmp 0x18017887d
mov eax, dword [rsp + 0x18]
inc eax
mov dword [rsp + 0x18], eax
mov rax, qword [rsp + 0x30]
movzx eax, word [rax + 6]
cmp dword [rsp + 0x18], eax
jae 0x1801788f9
mov rax, qword [rsp + 0x30]
movzx eax, word [rax + 0x14]
mov rcx, qword [rsp + 0x30]
lea rax, [rcx + rax + 0x18]
mov ecx, dword [rsp + 0x18]
imul rcx, rcx, 0x28
add rax, rcx
mov qword [rsp + 8], rax
mov eax, dword [rsp + 0x38]
mov rcx, qword [rsp + 8]
mov ecx, dword [rcx + 0xc]
cmp rax, rcx
jb 0x1801788f4
mov eax, dword [rsp + 0x38]
mov rcx, qword [rsp + 8]
mov ecx, dword [rcx + 0xc]
mov rdx, qword [rsp + 8]
mov edx, dword [rdx + 0x10]
add rcx, rdx
cmp rax, rcx
jae 0x1801788f4
mov rax, qword [rsp + 8]
mov eax, dword [rax + 8]
mov qword [rsp], rax
mov rax, qword [rsp + 8]
mov qword [rsp + 0x10], rax
jmp 0x1801788f9
jmp 0x180178873
cmp qword [rsp + 0x10], 0
je 0x180178925
cmp qword [rsp], 0
je 0x180178925
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x10]
mov qword [rax], rcx
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp]
mov qword [rax], rcx
xor eax, eax
jmp 0x18017892a
mov eax, 0xc0000049
add rsp, 0x20
pop rdi
ret

Function at 0x1800094e0
Capabilities:
Get system information on windows

Disassembly:
jmp 0x18009aa60
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0x20
xor r9d, r9d
mov r8d, 4
mov rdx, qword [rsp + 0x30]
mov ecx, 0xdd
call qword [sym.imp.ntdll.dll_NtQuerySystemInformation]
add rsp, 0x20
pop rdi
ret
Function at 0x180009630
Capabilities:
Write file on windows

Disassembly:
jmp 0x180191960
mov dword [rsp + 0x18], r8d
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0x90
lea rdi, [rsp + 0x50]
mov ecx, 0x10
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0xa0]
mov qword [rsp + 0x88], 0
mov rax, qword [rsp + 0xa0]
mov eax, dword [rax + 8]
and eax, 8
test eax, eax
je 0x1801919c2
mov rax, qword [rsp + 0xa0]
add rax, 0x10
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x40], 0
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x38], rax
mov eax, dword [rsp + 0xb0]
mov dword [rsp + 0x30], eax
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x68]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rax, qword [rsp + 0xa0]
mov rcx, qword [rax]
call qword [sym.imp.ntdll.dll_NtWriteFile]
mov dword [rsp + 0x50], eax
cmp dword [rsp + 0x50], 0x103
jne 0x180191a4a
xor r8d, r8d
xor edx, edx
mov rax, qword [rsp + 0xa0]
mov rcx, qword [rax]
call qword [sym.imp.ntdll.dll_NtWaitForSingleObject]
mov dword [rsp + 0x50], eax
cmp dword [rsp + 0x50], 0
jl 0x180191a4a
mov eax, dword [rsp + 0x68]
mov dword [rsp + 0x50], eax
cmp dword [rsp + 0x50], 0
jl 0x180191a88
mov rax, qword [rsp + 0xa0]
mov rax, qword [rax + 0x10]
add rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0xa0]
mov qword [rcx + 0x10], rax
mov rax, qword [rsp + 0xa0]
mov eax, dword [rax + 8]
bts eax, 0x1f
mov rcx, qword [rsp + 0xa0]
mov dword [rcx + 8], eax
mov eax, dword [rsp + 0x50]
mov edi, eax
mov rcx, rsp
lea rdx, [0x1804ba220]
call fcn.180014e20
mov eax, edi
add rsp, 0x90
pop rdi
ret