joyce8/EMBER2024-capa huggingface dataset:
Function at 0x140016610
Capabilities:
Write file on windows

Disassembly:
push rbx
sub rsp, 0x20
mov rax, qword [0x1400520e0]
mov rbx, rcx
xor ecx, ecx
mov dword [rax + 0x5bfc], ecx
test rbx, rbx
je 0x14001667f
mov qword [rsp + 0x30], rcx
lea rcx, [rsp + 0x30]
mov qword [rsp + 0x38], rdi
call fcn.140016690
lea rdx, [0x140045fb4]
mov rcx, rbx
mov rdi, rax
call fcn.14000b460
mov rbx, rax
test rax, rax
je 0x14001667a
mov r8, qword [rsp + 0x30]
mov r9, rax
mov edx, 1
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov rdi, qword [rsp + 0x38]
add rsp, 0x20
pop rbx
ret

Function at 0x14001ab10
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 0x20], rbx
push r14
sub rsp, 0x20
mov rbx, qword [0x1400520e0]
cmp byte [rbx + 0x5bf9], 0
jne 0x14001ac6a
mov rcx, qword [rbx + 0x20]
test rcx, rcx
je 0x14001ac63
lea rdx, [0x140045fb0]
mov qword [rsp + 0x40], rdi
call fcn.14000b460
mov rdi, rax
test rax, rax
je 0x14001ac5e
mov qword [rsp + 0x30], rbp
mov rcx, rax
mov qword [rsp + 0x38], rsi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_ftell]
mov ebp, eax
cmp eax, 0xffffffff
je 0x14001ac4b
xor edx, edx
mov rcx, rdi
lea r8d, [rdx + 2]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fseek]
test eax, eax
jne 0x14001ac4b
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_ftell]
movsxd rsi, eax
cmp esi, 0xffffffff
je 0x14001ac4b
xor r8d, r8d
mov edx, ebp
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fseek]
test eax, eax
jne 0x14001ac4b
cmp rsi, 0xffffffffffffffff
je 0x14001ac4b
mov rax, qword [0x1400520e0]
test rax, rax
je 0x14001abd5
inc dword [rax + 0xec]
mov rdx, qword [0x1400520f0]
mov rcx, rsi
call qword [section..data]
mov rbp, rax
test rax, rax
je 0x14001ac4b
mov r9, rdi
mov r8, rsi
mov edx, 1
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
mov rcx, rdi
cmp rax, rsi
je 0x14001ac11
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
jmp 0x14001ac27
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
test rsi, rsi
je 0x14001ac27
mov rdx, rsi
mov rcx, rbp
call fcn.14000d4d0
mov rax, qword [0x1400520e0]
test rax, rax
je 0x14001ac39
dec dword [rax + 0xec]
mov rdx, qword [0x1400520f0]
mov rcx, rbp
call qword [0x140052008]
jmp 0x14001ac54
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov rsi, qword [rsp + 0x38]
mov rbp, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x40]
mov byte [rbx + 0x5bf9], 1
movss xmm0, dword [rbx + 0x5bfc]
xorps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x14001acad
subss xmm0, dword [rbx + 0x18]
comiss xmm1, xmm0
movss dword [rbx + 0x5bfc], xmm0
jb 0x14001acad
mov rcx, qword [rbx + 0x20]
test rcx, rcx
je 0x14001ac9c
call fcn.140016610
jmp 0x14001aca3
mov byte [rbx + 0xd4], 1
mov dword [rbx + 0x5bfc], 0
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop r14
ret
Function at 0x14002f440
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub rsp, 0x38
mov rax, qword [0x1400520e0]
mov rcx, qword [rax + 0x4b38]
mov r10, qword [rax + 0x3ed8]
movsxd rax, dword [rcx + 0x74]
movups xmm0, xmmword [rcx + 0x168]
movss xmm4, dword [rcx + 0x168]
movss xmm3, dword [rcx + 0x16c]
movss xmm2, dword [rcx + 0x170]
movss xmm1, dword [rcx + 0x174]
movss dword [rsp + 0x20], xmm4
movss dword [rsp + 0x24], xmm3
movss dword [rsp + 0x28], xmm2
movss dword [rsp + 0x2c], xmm1
imul r9, rax, 0x70
mov rax, qword [r10 + 0x298]
add r9, qword [rcx + 0x18]
movups xmmword [r10 + 0x238], xmm0
movss dword [rax + 0x88], xmm4
movss dword [rax + 0x8c], xmm3
movss dword [rax + 0x90], xmm2
movss dword [rax + 0x94], xmm1
mov rax, qword [r10 + 0x298]
movups xmm0, xmmword [rsp + 0x20]
movsxd r8, dword [rax + 0x58]
mov rdx, qword [rax + 0x60]
add r8, r8
movups xmmword [rdx + r8*8 - 0x10], xmm0
movzx r8d, word [r9 + 0x5c]
mov rdx, qword [r10 + 0x298]
mov rcx, qword [rcx + 0x198]
add rsp, 0x38
jmp 0x140024960

Function at 0x14002f510
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub rsp, 0x38
mov rax, qword [0x1400520e0]
mov rcx, qword [rax + 0x4b38]
mov r9, qword [rax + 0x3ed8]
movups xmm0, xmmword [r9 + 0x238]
movups xmmword [rcx + 0x168], xmm0
mov rax, qword [r9 + 0x298]
movups xmm0, xmmword [rcx + 0x148]
movss xmm4, dword [rcx + 0x148]
movss xmm3, dword [rcx + 0x14c]
movss xmm2, dword [rcx + 0x150]
movss xmm1, dword [rcx + 0x154]
movups xmmword [r9 + 0x238], xmm0
movss dword [rsp + 0x20], xmm4
movss dword [rsp + 0x24], xmm3
movss dword [rsp + 0x28], xmm2
movss dword [rsp + 0x2c], xmm1
movss dword [rax + 0x88], xmm4
movss dword [rax + 0x8c], xmm3
movss dword [rax + 0x90], xmm2
movss dword [rax + 0x94], xmm1
mov rax, qword [r9 + 0x298]
movups xmm0, xmmword [rsp + 0x20]
movsxd r8, dword [rax + 0x58]
mov rdx, qword [rax + 0x60]
add r8, r8
movups xmmword [rdx + r8*8 - 0x10], xmm0
movzx r8d, word [rcx + 0x21e]
mov rcx, qword [rcx + 0x198]
mov rdx, qword [r9 + 0x298]
add rsp, 0x38
jmp 0x140024960
Function at 0x14003f000
Capabilities:
Allocate or change rwx memory
Execute shellcode via indirect call

Disassembly:
test rcx, rcx
je 0x14003f23e
push rbx
sub rsp, 0xa0
mov rax, qword [0x140052098]
xor rax, rsp
mov qword [rsp + 0x70], rax
mov rbx, rcx
call fcn.140040b60
test al, al
je 0x14003f229
movaps xmmword [rsp + 0x90], xmm6
lea rcx, [rsp + 0x20]
mov r8d, 0x6d
movaps xmmword [rsp + 0x80], xmm7
mov rdx, rbx
call fcn.140040900
movups xmm0, xmmword [rsp + 0x20]
lea rdx, [rsp + 0x40]
movsd xmm1, qword [rsp + 0x30]
lea rcx, [rsp + 0x20]
movaps xmmword [rsp + 0x40], xmm0
movsd qword [rsp + 0x50], xmm1
call fcn.140041070
movsd xmm6, qword [rsp + 0x20]
xorps xmm4, xmm4
ucomisd xmm6, xmm4
movss xmm7, dword [0x140052018]
xorps xmm3, xmm3
xorps xmm2, xmm2
jp 0x14003f097
je 0x14003f0fe
mov eax, dword [0x140052238]
movd xmm5, eax
cvtdq2pd xmm5, xmm5
comisd xmm6, xmm5
jbe 0x14003f0da
movaps xmm3, xmm5
add eax, eax
subsd xmm3, xmm6
cvtps2pd xmm0, xmm7
xorps xmm3, xmmword [0x14004a4c0]
divsd xmm3, xmm0
movd xmm0, eax
movaps xmm1, xmm3
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm5
comisd xmm1, xmm0
jbe 0x14003f0da
xorps xmm3, xmm3
comisd xmm5, xmm6
jbe 0x14003f0fe
movaps xmm3, xmm6
cvtps2pd xmm0, xmm7
subsd xmm3, xmm5
divsd xmm3, xmm0
movaps xmm0, xmm3
addsd xmm0, xmm5
comisd xmm4, xmm0
jbe 0x14003f0fe
xorps xmm3, xmm3
movsd xmm5, qword [rsp + 0x28]
ucomisd xmm5, xmm4
jp 0x14003f10c
je 0x14003f173
mov eax, dword [0x14005223c]
movd xmm6, eax
cvtdq2pd xmm6, xmm6
comisd xmm5, xmm6
jbe 0x14003f14f
movaps xmm2, xmm6
add eax, eax
subsd xmm2, xmm5
cvtps2pd xmm0, xmm7
xorps xmm2, xmmword [0x14004a4c0]
divsd xmm2, xmm0
movd xmm0, eax
movaps xmm1, xmm2
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm6
comisd xmm1, xmm0
jbe 0x14003f14f
xorps xmm2, xmm2
comisd xmm6, xmm5
jbe 0x14003f173
movaps xmm2, xmm5
cvtps2pd xmm0, xmm7
subsd xmm2, xmm6
divsd xmm2, xmm0
movaps xmm0, xmm2
addsd xmm0, xmm6
comisd xmm4, xmm0
jbe 0x14003f173
xorps xmm2, xmm2
xor eax, eax
mov qword [rsp + 0x54], 0x4001
mov qword [rsp + 0x40], rax
xor ecx, ecx
mov qword [rsp + 0x5c], rax
mov edx, 0x1000
mov dword [rsp + 0x64], eax
mov r8d, edx
mov dword [rsp + 0x50], eax
cvttsd2si eax, xmm3
lea r9d, [rcx + 0x40]
mov dword [rsp + 0x48], eax
cvttsd2si eax, xmm2
mov dword [rsp + 0x4c], eax
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
movaps xmm7, xmmword [rsp + 0x80]
mov rbx, rax
movaps xmm6, xmmword [rsp + 0x90]
test rax, rax
je 0x14003f229
movups xmm0, xmmword [0x140052210]
mov r8d, 0x28
lea rdx, [rsp + 0x40]
movups xmmword [rax], xmm0
movsd xmm1, qword [0x140052220]
movsd qword [rax + 0x10], xmm1
mov ecx, dword [0x140052228]
mov dword [rax + 0x18], ecx
movzx ecx, word [0x14005222c]
mov word [rax + 0x1c], cx
lea ecx, [r8 - 0x27]
call rbx
xor edx, edx
mov r8d, 0x1000
mov rcx, rbx
call sub.VCRUNTIME140.dll_memset
xor edx, edx
mov r8d, 0x8000
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_VirtualFree]
mov rcx, qword [rsp + 0x70]
xor rcx, rsp
call fcn.140042610
add rsp, 0xa0
pop rbx
ret
Function at 0x14003f760
Capabilities:
Terminate process

Disassembly:
sub rsp, 0x48
lea rdx, [0x140052168]
mov ecx, 0x20
call sub.d3d9.dll_Direct3DCreate9Ex
test eax, eax
jns 0x14003f785
mov ecx, 3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov eax, dword [0x140052230]
lea rdx, [0x140052170]
mov rcx, qword [0x140052168]
mov r9, qword [0x140052178]
mov qword [rsp + 0x38], rdx
lea rdx, [0x140052180]
mov dword [0x140052180], eax
mov eax, dword [0x140052234]
mov qword [0x140052198], 1
mov dword [0x1400521a8], 1
mov qword [0x1400521a0], r9
mov dword [0x140052188], 0x15
mov dword [0x140052184], eax
mov dword [0x1400521ac], 1
mov dword [0x1400521b0], 0x50
mov qword [rsp + 0x40], rbx
xor ebx, ebx
mov qword [0x14005218c], rbx
mov qword [0x1400521b4], rbx
mov dword [0x140052194], ebx
mov dword [0x1400521bc], ebx
lea r8d, [rbx + 1]
mov rax, qword [rcx]
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x28], rdx
xor edx, edx
mov dword [rsp + 0x20], 0x40
call qword [rax + 0xa0]
test eax, eax
jns 0x14003f855
mov rcx, qword [0x140052168]
mov rax, qword [rcx]
call qword [rax + 0x10]
lea ecx, [rbx + 4]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
xor ecx, ecx
call fcn.1400079b0
mov rcx, qword [0x140052178]
call fcn.14002de10
mov rcx, qword [0x140052170]
call fcn.14002d190
call fcn.14000aad0
mov qword [rax + 0x18], rbx
call fcn.14000b2a0
movaps xmm1, xmmword [0x14004a7b0]
xorps xmm0, xmm0
mov dword [rax + 0x14], 0x3f800000
mov dword [rax + 0x48], 0x3f800000
mov dword [rax + 0x20], 0x3f000000
mov dword [rax + 0x24], 0x3f000000
movups xmmword [rax + 0x12c], xmm1
movups xmmword [rax + 0x13c], xmm0
movaps xmm0, xmmword [0x14004a7c0]
movups xmmword [rax + 0x17c], xmm0
movups xmmword [rax + 0x18c], xmm0
movups xmmword [rax + 0xfc], xmm0
movaps xmm1, xmm0
movaps xmm1, xmmword [0x14004a790]
movups xmmword [rax + 0x14c], xmm1
movups xmmword [rax + 0x16c], xmm1
movups xmmword [rax + 0x15c], xmm1
movups xmmword [rax + 0x22c], xmm1
movups xmmword [rax + 0x24c], xmm1
movups xmmword [rax + 0x23c], xmm1
movaps xmm0, xmm1
movaps xmm1, xmmword [0x14004a7d0]
movups xmmword [rax + 0x20c], xmm1
movups xmmword [rax + 0x21c], xmm1
movups xmmword [rax + 0x1fc], xmm1
movups xmmword [rax + 0x25c], xmm1
movaps xmm0, xmm1
xorps xmm1, xmm1
movups xmmword [rax + 0x27c], xmm1
movaps xmm1, xmmword [0x14004a7c0]
movups xmmword [rax + 0x11c], xmm1
movups xmmword [rax + 0x26c], xmm0
mov rcx, qword [0x140052168]
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rbx, qword [rsp + 0x40]
xor eax, eax
add rsp, 0x48
ret
Function at 0x140042f90
Capabilities:
Parse pe header

Disassembly:
sub rsp, 0x28
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
test rax, rax
je 0x140042fda
mov ecx, 0x5a4d
cmp word [rax], cx
jne 0x140042fda
movsxd rcx, dword [rax + 0x3c]
add rcx, rax
cmp dword [rcx], 0x4550
jne 0x140042fda
mov eax, 0x20b
cmp word [rcx + 0x18], ax
jne 0x140042fda
cmp dword [rcx + 0x84], 0xe
jbe 0x140042fda
cmp dword [rcx + 0xf8], 0
setne al
jmp 0x140042fdc
xor al, al
add rsp, 0x28
ret
Function at 0x10007510
Capabilities:
Terminate process

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0xa0
mov dword [rsp + 0x20], 0
lea rcx, [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetStartupInfoA]
nop
mov rax, qword gs:[0x30]
mov rbx, qword [rax + 8]
xor edi, edi
xor eax, eax
lock cmpxchg qword [0x10015150], rbx
je 0x10007566
cmp rax, rbx
jne 0x10007559
mov edi, 1
jmp 0x10007566
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x10007540
mov eax, dword [0x10015148]
cmp eax, 1
jne 0x1000757b
lea ecx, [rax + 0x1e]
call sub.MSVCR80.dll__amsg_exit
jmp 0x100075ba
mov eax, dword [0x10015148]
test eax, eax
jne 0x100075b0
mov dword [0x10015148], 1
lea rdx, [0x100014d0]
lea rcx, [0x100014b8]
call sub.MSVCR80.dll__initterm_e
test eax, eax
je 0x100075ba
mov eax, 0xff
jmp 0x10007714
mov dword [0x10014314], 1
mov eax, dword [0x10015148]
cmp eax, 1
jne 0x100075e2
lea rdx, [0x100014b0]
lea rcx, [0x10001470]
call sub.MSVCR80.dll__initterm
mov dword [0x10015148], 2
test edi, edi
jne 0x100075ef
xor eax, eax
xchg qword [0x10015150], rax
cmp qword [0x10015168], 0
je 0x10007618
lea rcx, [0x10015168]
call fcn.10007b90
test eax, eax
je 0x10007618
xor r8d, r8d
lea edx, [r8 + 2]
xor ecx, ecx
call qword [0x10015168]
mov rax, qword [sym.imp.MSVCR80.dll__acmdln]
mov rbx, qword [rax]
mov qword [rsp + 0x28], rbx
mov edi, dword [rsp + 0x20]
nop
nop
movzx ecx, byte [rbx]
cmp cl, 0x20
ja 0x100076aa
test cl, cl
je 0x10007640
test edi, edi
jne 0x100076aa
movzx eax, byte [rbx]
test al, al
je 0x10007656
cmp al, 0x20
ja 0x10007656
add rbx, 1
mov qword [rsp + 0x28], rbx
jmp 0x10007640
test byte [rsp + 0x6c], 1
je 0x10007665
movzx r9d, word [rsp + 0x70]
jmp 0x1000766b
mov r9d, 0xa
mov r8, rbx
xor edx, edx
lea rcx, [0x10000000]
call fcn.10005300
mov dword [0x10014310], eax
cmp dword [0x100142f4], 0
jne 0x10007693
mov ecx, eax
call qword [sym.imp.MSVCR80.dll_exit]
cmp dword [0x10014314], 0
jne 0x100076a8
call qword [sym.imp.MSVCR80.dll__cexit]
mov eax, dword [0x10014310]
jmp 0x1000770d
cmp cl, 0x22
jne 0x100076bc
xor eax, eax
test edi, edi
sete al
mov edi, eax
mov dword [rsp + 0x20], eax
movzx ecx, cl
call qword [sym.imp.MSVCR80.dll__ismbblead]
test eax, eax
je 0x100076d2
add rbx, 1
mov qword [rsp + 0x28], rbx
add rbx, 1
mov qword [rsp + 0x28], rbx
jmp 0x10007630
jmp 0x10007714
mov rbx, qword [rsp + 0xb0]
add rsp, 0xa0
pop rdi
ret
sub rsp, 0x28
call fcn.10145000
add rsp, 0x28
jmp 0x10007510
Function at 0x414a20
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x414bc6
sub rsp, 0x50
mov qword [rsp + 0x48], rbp
lea rbp, [rsp + 0x48]
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], rbx
mov rcx, qword [sym.imp.kernel32.dll_VirtualFree]
mov qword [rsp], rcx
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], 0x4000
call fcn.00430b40
xorps xmm15, xmm15
mov r14, qword [0x00597440]
mov r14, qword gs:[r14]
mov r14, qword [r14]
cmp qword [rsp + 0x20], 0
jne 0x414a8b
mov rax, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x60]
jmp 0x414aa0
mov rbp, qword [rsp + 0x48]
add rsp, 0x50
ret
sub rcx, rbx
add rax, rbx
mov rbx, rcx
nop
test rbx, rbx
jbe 0x414ac5
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x40], rax
mov rcx, rbx
jmp 0x414ad9
cmp rbx, 0x1000
jae 0x414a95
nop dword [rax]
jmp 0x414b49
mov rbp, qword [rsp + 0x48]
add rsp, 0x50
ret
shr rbx, 1
and rbx, 0xfffffffffffff000
mov qword [rsp + 0x38], rbx
nop
cmp rbx, 0x1000
jae 0x414aed
xor edx, edx
jmp 0x414b40
mov rcx, qword [sym.imp.kernel32.dll_VirtualFree]
mov qword [rsp], rcx
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], 0x4000
call fcn.00430b40
xorps xmm15, xmm15
mov r14, qword [0x00597440]
mov r14, qword gs:[r14]
mov r14, qword [r14]
cmp qword [rsp + 0x20], 0
sete al
mov rcx, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x38]
mov edx, eax
mov rax, qword [rsp + 0x40]
nop dword [rax]
test dl, dl
jne 0x414acf
jmp 0x414ab4
call fcn.0045fb00
xorps xmm15, xmm15
mov r14, qword [0x00597440]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov eax, dword [rsp]
mov qword [rsp + 0x30], rax
call fcn.00435080
lea rax, [0x004ac735]
mov ebx, 0x18
call fcn.00435980
mov rax, qword [rsp + 0x38]
call fcn.00435680
lea rax, [0x004ac7f5]
mov ebx, 0x19
call fcn.00435980
mov rax, qword [rsp + 0x30]
nop
call fcn.00435680
call fcn.004352e0
call fcn.00435100
lea rax, [0x004ae9ac]
mov ebx, 0x21
nop dword [rax + rax]
call fcn.00433740
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
call fcn.0045bf60
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
nop
jmp fcn.00414a20
Function at 0x414c00
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x414e2a
sub rsp, 0x58
mov qword [rsp + 0x50], rbp
lea rbp, [rsp + 0x50]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rbx
mov rcx, qword [sym.imp.kernel32.dll_VirtualAlloc]
mov qword [rsp], rcx
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], 0x1000
mov qword [rsp + 0x20], 4
call fcn.00430bc0
xorps xmm15, xmm15
mov r14, qword [0x00597440]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x60]
mov rcx, rax
cmp qword [rsp + 0x28], rax
je 0x414c79
mov rbx, qword [rsp + 0x68]
mov rax, rbx
jmp 0x414c8c
mov rbp, qword [rsp + 0x50]
add rsp, 0x58
ret
sub rdx, rbx
add rcx, rbx
mov rbx, rdx
test rbx, rbx
jbe 0x414cb0
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rcx
mov rdx, rbx
nop
jmp 0x414cc4
cmp rbx, 0x1000
jae 0x414c83
jmp 0x414d45
mov rbp, qword [rsp + 0x50]
add rsp, 0x58
ret
shr rbx, 1
and rbx, 0xfffffffffffff000
mov qword [rsp + 0x38], rbx
cmp rbx, 0x1000
jae 0x414cd6
xor esi, esi
jmp 0x414d36
mov rax, qword [sym.imp.kernel32.dll_VirtualAlloc]
mov qword [rsp], rax
mov qword [rsp + 8], rcx
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], 0x1000
mov qword [rsp + 0x20], 4
nop dword [rax]
call fcn.00430bc0
xorps xmm15, xmm15
mov r14, qword [0x00597440]
mov r14, qword gs:[r14]
mov r14, qword [r14]
cmp qword [rsp + 0x28], 0
sete al
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x38]
mov esi, eax
mov rax, qword [rsp + 0x68]
test sil, sil
jne 0x414cba
nop
jmp 0x414ca2
call fcn.0045fb00
xorps xmm15, xmm15
mov r14, qword [0x00597440]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov eax, dword [rsp]
mov dword [rsp + 0x34], eax
cmp eax, 8
jne 0x414dc5
call fcn.00435080
lea rax, [0x004acbc4]
mov ebx, 0x19
call fcn.00435980
mov rax, qword [rsp + 0x68]
call fcn.00435680
lea rax, [0x004ac7f5]
mov ebx, 0x19
call fcn.00435980
mov eax, dword [rsp + 0x34]
nop dword [rax]
call fcn.00435680
call fcn.004352e0
call fcn.00435100
lea rax, [0x004a981c]
mov ebx, 0xd
nop dword [rax + rax]
call fcn.00433740
cmp eax, 0x5af
je 0x414d68
call fcn.00435080
lea rax, [0x004acbc4]
mov ebx, 0x19
nop dword [rax]
call fcn.00435980
mov rax, qword [rsp + 0x38]
call fcn.00435680
lea rax, [0x004ac7f5]
mov ebx, 0x19
nop dword [rax + rax]
call fcn.00435980
mov eax, dword [rsp + 0x34]
call fcn.00435680
call fcn.004352e0
call fcn.00435100
lea rax, [0x004ae2c0]
mov ebx, 0x1f
call fcn.00433740
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
call fcn.0045bf60
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
jmp fcn.00414c00
Function at 0x41d0e0
Capabilities:
Hash data using murmur3

Disassembly:
sub rsp, 0x18
mov qword [rsp + 0x10], rbp
lea rbp, [rsp + 0x10]
cmp byte [0x00597270], 0
jne 0x41d1cf
mov rdx, qword [rax + 0x50]
test byte [rdx], al
nop
nop
nop
sub rbx, qword [rax + 0x18]
mov esi, dword [rax + 0x5c]
imul rbx, rsi
mov rsi, rbx
shr rbx, 0x20
shr rsi, 0x23
and ebx, 7
mov rdi, rcx
mov rcx, rbx
mov r8d, 1
shl r8d, cl
add rdx, rsi
lock or byte [rdx], r8b
nop
nop
mov rcx, qword [rax + 0x18]
nop
movabs rdx, 0x800000000000
lea rax, [rdx + rcx]
mov rdx, rax
shr rax, 0x2a
cmp rax, 0x40
jae 0x41d1c5
lea rbx, [0x005696b0]
mov rax, qword [rbx + rax*8]
shr rdx, 0x16
and edx, 0xfffff
mov rdx, qword [rax + rdx*8]
test byte [rdx], al
test byte [rax], al
mov rax, rcx
shr rcx, 0x10
and ecx, 0x3f
movzx ebx, byte [rdx + rcx + 0x11440]
lea rdx, [rdx + rcx]
lea rdx, [rdx + 0x11440]
shr rax, 0xd
and eax, 7
mov rcx, rax
mov eax, 1
shl eax, cl
test al, bl
jne 0x41d1a7
lock or byte [rdx], al
mov rax, qword [r14 + 0x30]
mov rax, qword [rax + 0xa0]
test byte [rax], al
add qword [rax + 0x1248], rdi
mov rbp, qword [rsp + 0x10]
add rsp, 0x18
ret
mov ecx, 0x40
call fcn.0045e5e0
lea rax, [0x004b033b]
mov ebx, 0x2c
nop dword [rax + rax]
call fcn.00433740
nop
int3

Function at 0x41f5c0
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x41f6be
sub rsp, 0x48
mov qword [rsp + 0x40], rbp
lea rbp, [rsp + 0x40]
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], rbx
mov qword [rsp + 8], 0
jmp 0x41f600
mov rax, qword [rsp + 0x50]
mov rcx, rdx
mov rbx, qword [rsp + 0x58]
nop
cmp qword [rsp + 8], rbx
jae 0x41f6af
test byte [rax], al
lea rcx, [rax + 0x100b8]
mov rax, rcx
call fcn.00420180
nop dword [rax]
test rax, rax
je 0x41f6af
movups xmmword [rsp + 0x10], xmm15
movups xmmword [rsp + 0x20], xmm15
movups xmmword [rsp + 0x30], xmm15
lea rcx, [0x0041f700]
mov qword [rsp + 0x10], rcx
lea rdx, [rsp + 8]
mov qword [rsp + 0x18], rdx
mov rdx, qword [rsp + 0x50]
mov qword [rsp + 0x20], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x30], rbx
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x38], rax
lea rbx, [rsp + 0x10]
mov qword [rsp], rbx
call fcn.0045be20
xorps xmm15, xmm15
mov r14, qword [0x00597440]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rdx, qword [rsp + 0x60]
test rdx, rdx
jne 0x41f69d
xor eax, eax
jmp 0x41f6a7
mov rax, qword [rdx]
call rax
mov rdx, qword [rsp + 0x60]
test al, al
je 0x41f5f2
mov rax, qword [rsp + 8]
mov rbp, qword [rsp + 0x40]
add rsp, 0x48
ret
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
call fcn.0045bf60
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
jmp fcn.0041f5c0
Function at 0x42cfc0
Capabilities:
Hash data using murmur3

Disassembly:
cmp rsp, qword [r14 + 0x18]
jbe 0x42d266
sub rsp, 0x40
mov qword [rsp + 0x38], rbp
lea rbp, [rsp + 0x38]
test byte [rax], al
lea rsi, [rax + 0x1270]
mov rcx, qword [rax + 0x1260]
sub rcx, rsi
shr rcx, 3
cmp rcx, 0x200
ja 0x42d25a
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x30], rcx
mov qword [rax + 0x1260], 0
cmp byte [0x00597270], 0
jne 0x42d022
xor edx, edx
xor ebx, ebx
nop
jmp 0x42d06a
xor edx, edx
jmp 0x42d04d
mov qword [rsp + 0x28], rdx
mov rcx, qword [rax + rdx*8 + 0x1270]
mov rax, rcx
call fcn.0041c900
mov rdx, qword [rsp + 0x28]
inc rdx
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x30]
cmp rdx, rcx
jl 0x42d026
add rax, 0x1260
call fcn.0042ce80
mov rbp, qword [rsp + 0x38]
add rsp, 0x40
ret
inc rdx
cmp rdx, rcx
jge 0x42d1f4
mov rsi, qword [rax + rdx*8 + 0x1270]
nop dword [rax + rax]
cmp rsi, 0x1000
jb 0x42d067
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rbx
mov rax, rsi
xor ebx, ebx
mov rcx, rbx
nop dword [rax + rax]
call fcn.004119a0
test rax, rax
jne 0x42d0c2
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x20]
nop
jmp 0x42d067
mov rsi, qword [rbx + 0x50]
test byte [rsi], al
nop
mov r8, rcx
shr rcx, 3
movzx r9d, byte [rsi + rcx]
and r8d, 7
mov rdx, rcx
mov rcx, r8
mov r10d, 1
shl r10d, cl
add rsi, rdx
test r10b, r9b
je 0x42d109
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x20]
jmp 0x42d067
nop
lock or byte [rsi], r10b
nop
nop
mov rcx, qword [rbx + 0x18]
nop
movabs rsi, 0x800000000000
lea r8, [rsi + rcx]
mov r9, r8
shr r8, 0x2a
cmp r8, 0x40
jae 0x42d24d
lea r10, [0x005696b0]
mov r8, qword [r10 + r8*8]
shr r9, 0x16
and r9d, 0xfffff
mov r9, qword [r8 + r9*8]
test byte [r9], al
test byte [r8], al
mov r8, rcx
shr rcx, 0x10
and ecx, 0x3f
movzx r10d, byte [r9 + rcx + 0x11440]
lea r9, [r9 + rcx]
lea r9, [r9 + 0x11440]
shr r8, 0xd
and r8d, 7
mov rcx, r8
mov r8d, 1
shl r8d, cl
test r8b, r10b
jne 0x42d18f
lock or byte [r9], r8b
movzx r8d, byte [rbx + 0x62]
test r8b, 1
je 0x42d1c5
mov rax, qword [rsp + 0x48]
mov r8, qword [rax + 0x1248]
add r8, qword [rbx + 0x68]
mov qword [rax + 0x1248], r8
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x20]
jmp 0x42d067
mov r8, qword [rsp + 0x20]
mov rcx, qword [rsp + 0x30]
cmp r8, rcx
jae 0x42d245
mov rbx, qword [rsp + 0x48]
mov qword [rbx + r8*8 + 0x1270], rax
inc r8
mov rax, rbx
mov rdx, qword [rsp + 0x28]
mov rbx, r8
jmp 0x42d067
cmp rbx, 0x200
ja 0x42d238
lea rdx, [rax + 0x1270]
lea rsi, [rax + 0x1238]
mov rcx, rbx
mov edi, 0x200
mov rbx, rdx
mov rax, rsi
call fcn.00422a80
mov rax, qword [rsp + 0x48]
add rax, 0x1260
call fcn.0042ce80
mov rbp, qword [rsp + 0x38]
add rsp, 0x40
ret
mov rcx, rbx
mov edx, 0x200
call fcn.0045e640
mov rax, r8
call fcn.0045e5c0
mov rax, r8
mov ecx, 0x40
call fcn.0045e5e0
mov edx, 0x200
nop
call fcn.0045e620
nop
mov qword [rsp + 8], rax
call fcn.004609a0
mov rax, qword [rsp + 8]
jmp fcn.0042cfc0