joyce8/EMBER2024-capa huggingface dataset:
Function at 0x141228058
Capabilities:
Decompress data using aplib

Disassembly:
call 0x1412281df
push r10
mov r10, rsp
push r10
mov rsi, qword [r10 + 0x10]
mov rdi, qword [r10 + 0x20]
cld
mov dl, 0x80
mov al, byte [rsi]
inc rsi
mov byte [rdi], al
inc rdi
mov ebx, 2
add dl, dl
jne 0x141228089
mov dl, byte [rsi]
inc rsi
adc dl, dl
jae 0x14122806f
add dl, dl
jne 0x141228096
mov dl, byte [rsi]
inc rsi
adc dl, dl
jae 0x1412280f6
xor eax, eax
add dl, dl
jne 0x1412280a5
mov dl, byte [rsi]
inc rsi
adc dl, dl
jae 0x1412281ad
add dl, dl
jne 0x1412280b6
mov dl, byte [rsi]
inc rsi
adc dl, dl
adc eax, eax
add dl, dl
jne 0x1412280c3
mov dl, byte [rsi]
inc rsi
adc dl, dl
adc eax, eax
add dl, dl
jne 0x1412280d0
mov dl, byte [rsi]
inc rsi
adc dl, dl
adc eax, eax
add dl, dl
jne 0x1412280dd
mov dl, byte [rsi]
inc rsi
adc dl, dl
adc eax, eax
je 0x1412280ea
push rdi
mov eax, eax
sub rdi, rax
mov al, byte [rdi]
pop rdi
mov byte [rdi], al
inc rdi
mov ebx, 2
jmp 0x14122807e
mov eax, 1
add dl, dl
jne 0x141228106
mov dl, byte [rsi]
inc rsi
adc dl, dl
adc eax, eax
add dl, dl
jne 0x141228113
mov dl, byte [rsi]
inc rsi
adc dl, dl
jb 0x1412280fb
sub eax, ebx
mov ebx, 1
jne 0x14122814c
mov ecx, 1
add dl, dl
jne 0x14122812e
mov dl, byte [rsi]
inc rsi
adc dl, dl
adc ecx, ecx
add dl, dl
jne 0x14122813b
mov dl, byte [rsi]
inc rsi
adc dl, dl
jb 0x141228123
push rsi
mov rsi, rdi
sub rsi, rbp
rep movsb byte [rdi], byte [rsi]
pop rsi
jmp 0x14122807e
dec eax
shl eax, 8
mov al, byte [rsi]
inc rsi
mov ebp, eax
mov ecx, 1
add dl, dl
jne 0x141228168
mov dl, byte [rsi]
inc rsi
adc dl, dl
adc ecx, ecx
add dl, dl
jne 0x141228175
mov dl, byte [rsi]
inc rsi
adc dl, dl
jb 0x14122815d
cmp eax, 0x7d00
jae 0x14122819b
cmp eax, 0x500
jb 0x141228196
inc ecx
push rsi
mov rsi, rdi
sub rsi, rax
rep movsb byte [rdi], byte [rsi]
pop rsi
jmp 0x14122807e
cmp eax, 0x7f
ja 0x14122819e
add ecx, 2
push rsi
mov rsi, rdi
sub rsi, rax
rep movsb byte [rdi], byte [rsi]
pop rsi
jmp 0x14122807e
mov al, byte [rsi]
inc rsi
xor ecx, ecx
shr al, 1
je 0x1412281d2
adc ecx, 2
mov ebp, eax
push rsi
mov rsi, rdi
sub rsi, rax
rep movsb byte [rdi], byte [rsi]
pop rsi
mov ebx, 1
jmp 0x14122807e
pop r10
sub rdi, qword [r10 + 0x20]
mov eax, edi
pop r10
ret 0x20
Function at 0x14010e310
Capabilities:
Query environment variable

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
mov eax, 0x10090
call fcn.140112b90
sub rsp, rax
mov rax, qword [0x140155d40]
xor rax, rsp
mov qword [rsp + 0x10080], rax
movzx eax, byte [rcx]
lea rbx, [rsp + 0x30]
xor ebp, ebp
mov rsi, rcx
mov word [rsp + 0x80], bp
mov edi, 0x28
mov word [rsp + 0x30], bp
test al, al
je 0x14010e3d2
nop dword [rax]
nop word [rax + rax]
mov r8d, 2
mov byte [rsp + 0x20], al
lea rdx, [rsp + 0x20]
mov byte [rsp + 0x21], bpl
lea rcx, [rsp + 0x24]
call fcn.140121b64
cmp rax, 1
jne 0x14010e42e
mov rcx, rdi
mov rax, rbx
cmp word [rbx], bp
je 0x14010e3af
add rax, 2
dec rcx
cmp word [rax], bp
jne 0x14010e3a3
cmp rcx, 1
jb 0x14010e42e
movzx ecx, word [rsp + 0x24]
inc rsi
mov word [rax], cx
add rbx, 2
mov word [rax + 2], bp
dec rdi
movzx eax, byte [rsi]
test al, al
jne 0x14010e370
mov r8d, 0x10000
lea rdx, [rsp + 0x80]
lea rcx, [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
dec eax
cmp eax, 0xffff
ja 0x14010e403
lea rcx, [rsp + 0x80]
call fcn.1401245e0
jmp 0x14010e405
xor eax, eax
mov rcx, qword [rsp + 0x10080]
xor rcx, rsp
call fcn.1401128c0
lea r11, [rsp + 0x10090]
mov rbx, qword [r11 + 0x18]
mov rbp, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rsp, r11
pop rdi
ret
call fcn.140116080
int3
Function at 0x14010f2e0
Capabilities:
Extract resource via kernel32 functions

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r14
sub rsp, 0x20
cmp byte [0x14016013e], 0
mov rbp, r8
mov rsi, rdx
mov r14, rcx
jne 0x14010f370
mov edx, 3
xor ecx, ecx
mov r8d, 0xa
call qword [sym.imp.KERNEL32.dll_FindResourceA]
mov rdx, rax
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_LoadResource]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LockResource]
mov qword [0x14015ff20], rax
mov ebx, dword [rax]
lea rcx, [rax + 4]
mov qword [0x14015ff20], rcx
lea rdi, [rcx + 4]
mov r8d, dword [rcx]
mov rdx, rdi
xor ecx, ecx
mov qword [0x14015ff20], rdi
call fcn.14010d1b0
cmp eax, ebx
jne 0x14010f513
mov byte [0x14016013e], 1
jmp 0x14010f377
mov rdi, qword [0x14015ff20]
lea rdx, [0x140133b80]
mov rcx, rbp
call fcn.140121610
test eax, eax
je 0x14010f431
cmp byte [0x14016013d], 1
je 0x14010f431
call qword [sym.imp.python310.dll_PyDict_New]
mov qword [0x140160e60], rax
call qword [sym.imp.python310.dll_PyDict_New]
mov qword [0x140160e68], rax
call qword [sym.imp.python310.dll_PyDict_New]
mov qword [0x140160e70], rax
call qword [sym.imp.python310.dll_PyDict_New]
mov qword [0x140160e78], rax
call qword [sym.imp.python310.dll_PyDict_New]
mov qword [0x140160e80], rax
call qword [sym.imp.python310.dll_PyDict_New]
mov qword [0x140160e88], rax
call qword [sym.imp.python310.dll_PyDict_New]
mov qword [0x140160e90], rax
call qword [sym.imp.python310.dll_PyDict_New]
mov qword [0x140160e98], rax
mov rax, qword [sym.imp.python310.dll__PyRuntime]
mov rax, qword [rax + 0x1f0]
mov rdi, qword [0x14015ff20]
mov byte [0x14016013d], 1
mov rcx, qword [rax + 0x10]
add rcx, 0xda0
mov qword [0x140162250], rcx
mov rdx, rdi
mov rax, rbp
sub rdx, rbp
nop word [rax + rax]
movzx ecx, byte [rax]
xor r9d, r9d
cmp cl, byte [rax + rdx]
jne 0x14010f457
inc rax
test cl, cl
jne 0x14010f440
mov ecx, r9d
jmp 0x14010f45c
sbb ecx, ecx
or ecx, 1
mov rax, 0xffffffffffffffff
cmp byte [rdi + rax + 1], r9b
lea rax, [rax + 1]
jne 0x14010f463
lea rdx, [rdi + rax]
mov eax, dword [rdi + rax + 1]
add rdx, 5
test ecx, ecx
je 0x14010f4c8
nop
add rdx, rax
mov rax, rbp
mov r8, rdx
sub r8, rbp
nop dword [rax]
movzx ecx, byte [rax]
cmp cl, byte [rax + r8]
jne 0x14010f4a5
inc rax
test cl, cl
jne 0x14010f490
mov ecx, r9d
jmp 0x14010f4aa
sbb ecx, ecx
or ecx, 1
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rdx + rax], r9b
jne 0x14010f4b1
add rdx, rax
mov eax, dword [rdx + 1]
add rdx, 5
test ecx, ecx
jne 0x14010f480
movzx ecx, word [rdx]
lea rax, [rdx + 2]
cmp r9w, cx
jae 0x14010f4f8
mov ebx, ecx
nop word [rax + rax]
mov r8, rax
mov rdx, rsi
mov rcx, r14
call fcn.14010b9c0
add rsi, 8
sub rbx, 1
jne 0x14010f4e0
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
add rsp, 0x20
pop r14
ret
lea rcx, str.Error__corrupted_constants_object
call fcn.14011e324
call fcn.140116080
int3
Function at 0x140112470
Capabilities:
Set environment variable

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rsi
push rdi
push r14
sub rsp, 0x90
mov rax, qword [0x140155d40]
xor rax, rsp
mov qword [rsp + 0x80], rax
movzx eax, byte [rcx]
lea rbx, [rsp + 0x30]
xor r14d, r14d
mov rbp, rdx
mov word [rsp + 0x30], r14w
mov rsi, rcx
mov edi, 0x28
test al, al
je 0x140112521
nop word [rax + rax]
mov r8d, 2
mov byte [rsp + 0x20], al
lea rdx, [rsp + 0x20]
mov byte [rsp + 0x21], r14b
lea rcx, [rsp + 0x24]
call fcn.140121b64
cmp rax, 1
jne 0x140112557
mov rcx, rdi
mov rax, rbx
cmp word [rbx], r14w
je 0x1401124fd
add rax, 2
dec rcx
cmp word [rax], r14w
jne 0x1401124f0
cmp rcx, 1
jb 0x140112557
movzx ecx, word [rsp + 0x24]
inc rsi
mov word [rax], cx
add rbx, 2
mov word [rax + 2], r14w
dec rdi
movzx eax, byte [rsi]
test al, al
jne 0x1401124c0
mov rdx, rbp
lea rcx, [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.1401128c0
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsp, r11
pop r14
pop rdi
pop rsi
ret
call fcn.140116080
int3

Function at 0x140112740
Capabilities:
Set environment variable

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
sub rsp, 0x90
mov rax, qword [0x140155d40]
xor rax, rsp
mov qword [rsp + 0x80], rax
movzx eax, byte [rcx]
lea rbx, [rsp + 0x30]
xor ebp, ebp
mov rsi, rcx
mov word [rsp + 0x30], bp
mov edi, 0x28
test al, al
je 0x1401127ef
nop dword [rax]
nop dword [rax + rax]
mov r8d, 2
mov byte [rsp + 0x20], al
lea rdx, [rsp + 0x20]
mov byte [rsp + 0x21], bpl
lea rcx, [rsp + 0x24]
call fcn.140121b64
cmp rax, 1
jne 0x140112825
mov rcx, rdi
mov rax, rbx
cmp word [rbx], bp
je 0x1401127cc
nop
add rax, 2
dec rcx
cmp word [rax], bp
jne 0x1401127c0
cmp rcx, 1
jb 0x140112825
movzx ecx, word [rsp + 0x24]
inc rsi
mov word [rax], cx
add rbx, 2
mov word [rax + 2], bp
dec rdi
movzx eax, byte [rsi]
test al, al
jne 0x140112790
xor edx, edx
lea rcx, [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.1401128c0
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x18]
mov rbp, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rsp, r11
pop rdi
ret
call fcn.140116080
int3

Function at 0x140113328
Capabilities:
Parse pe header

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

Disassembly:
mov dword [rsp + 0x18], r8d
mov dword [rsp + 0x10], edx
push rbp
mov rbp, rsp
sub rsp, 0x50
mov qword [rbp - 0x20], 0xfffffffffffffffe
mov qword [rsp + 0x60], rbx
mov ebx, ecx
test r8d, r8d
jne 0x140117763
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
test rax, rax
je 0x140117763
mov ecx, 0x5a4d
cmp word [rax], cx
jne 0x140117763
movsxd rcx, dword [rax + 0x3c]
add rcx, rax
cmp dword [rcx], 0x4550
jne 0x140117763
mov eax, 0x20b
cmp word [rcx + 0x18], ax
jne 0x140117763
cmp dword [rcx + 0x84], 0xe
jbe 0x140117763
cmp dword [rcx + 0xf8], 0
je 0x140117763
mov ecx, ebx
call fcn.140117814
mov byte [rbp + 0x28], 0
lea rax, [rbp + 0x18]
mov qword [rbp - 0x18], rax
lea rax, [rbp + 0x20]
mov qword [rbp - 0x10], rax
lea rax, [rbp + 0x28]
mov qword [rbp - 8], rax
mov eax, 2
mov dword [rbp - 0x2c], eax
mov dword [rbp - 0x28], eax
lea r9, [rbp - 0x2c]
lea r8, [rbp - 0x18]
lea rdx, [rbp - 0x28]
lea rcx, [rbp - 0x30]
call fcn.1401175f0
nop
cmp dword [rbp + 0x20], 0
je 0x1401177b1
mov rbx, qword [rsp + 0x60]
add rsp, 0x50
pop rbp
ret
mov ecx, ebx
call fcn.1401177bc
int3
xor r8d, r8d
xor edx, edx
jmp 0x1401176f4

Function at 0x1401178f8
Capabilities:
Parse pe header

Disassembly:
mov dword [rsp + 0x18], r8d
mov dword [rsp + 0x10], edx
push rbp
mov rbp, rsp
sub rsp, 0x50
mov qword [rbp - 0x20], 0xfffffffffffffffe
mov qword [rsp + 0x60], rbx
mov ebx, ecx
test r8d, r8d
jne 0x140117763
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
test rax, rax
je 0x140117763
mov ecx, 0x5a4d
cmp word [rax], cx
jne 0x140117763
movsxd rcx, dword [rax + 0x3c]
add rcx, rax
cmp dword [rcx], 0x4550
jne 0x140117763
mov eax, 0x20b
cmp word [rcx + 0x18], ax
jne 0x140117763
cmp dword [rcx + 0x84], 0xe
jbe 0x140117763
cmp dword [rcx + 0xf8], 0
je 0x140117763
mov ecx, ebx
call fcn.140117814
mov byte [rbp + 0x28], 0
lea rax, [rbp + 0x18]
mov qword [rbp - 0x18], rax
lea rax, [rbp + 0x20]
mov qword [rbp - 0x10], rax
lea rax, [rbp + 0x28]
mov qword [rbp - 8], rax
mov eax, 2
mov dword [rbp - 0x2c], eax
mov dword [rbp - 0x28], eax
lea r9, [rbp - 0x2c]
lea r8, [rbp - 0x18]
lea rdx, [rbp - 0x28]
lea rcx, [rbp - 0x30]
call fcn.1401175f0
nop
cmp dword [rbp + 0x20], 0
je 0x1401177b1
mov rbx, qword [rsp + 0x60]
add rsp, 0x50
pop rbp
ret
mov ecx, ebx
call fcn.1401177bc
int3
xor r8d, r8d
xor edx, edx
jmp 0x1401176f4
Function at 0x140129450
Capabilities:
Query environment variable

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x20
call qword [sym.imp.KERNEL32.dll_GetEnvironmentStringsW]
xor ebp, ebp
mov rbx, rax
test rax, rax
je 0x1401294d7
mov rsi, rbx
cmp word [rax], bp
je 0x140129496
or rax, 0xffffffffffffffff
inc rax
cmp word [rsi + rax*2], bp
jne 0x140129480
lea rsi, [rsi + rax*2]
add rsi, 2
cmp word [rsi], bp
jne 0x14012947c
sub rsi, rbx
add rsi, 2
sar rsi, 1
add rsi, rsi
mov rcx, rsi
call fcn.140124ab8
mov rdi, rax
test rax, rax
je 0x1401294c4
mov r8, rsi
mov rdx, rbx
mov rcx, rax
call fcn.14012f110
mov rbp, rdi
xor ecx, ecx
call fcn.140125600
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FreeEnvironmentStringsW]
mov rax, rbp
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret
Function at 0x14012b780
Capabilities:
Get file size

Disassembly:
push rbx
sub rsp, 0x20
mov edx, dword [rcx + 0x14]
nop
shr edx, 3
test dl, 1
je 0x14012b796
mov al, 1
jmp 0x14012b7f6
mov eax, dword [rcx + 0x14]
nop
test al, 0xc0
je 0x14012b7a7
mov rax, qword [rcx + 8]
cmp qword [rcx], rax
je 0x14012b7f4
mov ecx, dword [rcx + 0x18]
nop
call fcn.140129798
mov rbx, rax
cmp rax, 0xffffffffffffffff
je 0x14012b7f4
mov r9d, 1
lea r8, [rsp + 0x38]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetFilePointerEx]
test eax, eax
je 0x14012b7f4
lea rdx, [rsp + 0x30]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetFileSizeEx]
test eax, eax
je 0x14012b7f4
mov rax, qword [rsp + 0x30]
cmp qword [rsp + 0x38], rax
sete al
jmp 0x14012b7f6
xor al, al
add rsp, 0x20
pop rbx
ret

Function at 0x14012ef60
Capabilities:
Parse pe header

Disassembly:
mov eax, 0x5a4d
cmp word [rcx], ax
jne 0x14012ef88
movsxd rdx, dword [rcx + 0x3c]
add rdx, rcx
cmp dword [rdx], 0x4550
jne 0x14012ef88
xor eax, eax
mov ecx, 0x20b
cmp word [rdx + 0x18], cx
sete al
ret
xor eax, eax
ret
Function at 0x416300
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x4164a6
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.00432420
xorps xmm15, xmm15
mov r14, qword [0x006467d0]
mov r14, qword gs:[r14]
mov r14, qword [r14]
cmp qword [rsp + 0x20], 0
jne 0x41636b
mov rax, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x60]
jmp 0x416380
mov rbp, qword [rsp + 0x48]
add rsp, 0x50
ret
sub rcx, rbx
add rax, rbx
mov rbx, rcx
nop
test rbx, rbx
jbe 0x4163a5
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x40], rax
mov rcx, rbx
jmp 0x4163b9
cmp rbx, 0x1000
jae 0x416375
nop dword [rax]
jmp 0x416429
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 0x4163cd
xor edx, edx
jmp 0x416420
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.00432420
xorps xmm15, xmm15
mov r14, qword [0x006467d0]
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 0x4163af
jmp 0x416394
call fcn.004629c0
xorps xmm15, xmm15
mov r14, qword [0x006467d0]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov eax, dword [rsp]
mov qword [rsp + 0x30], rax
call fcn.00436a00
lea rax, [0x00517b3e]
mov ebx, 0x18
call fcn.00437300
mov rax, qword [rsp + 0x38]
call fcn.00437000
lea rax, [0x00517c16]
mov ebx, 0x19
call fcn.00437300
mov rax, qword [rsp + 0x30]
nop
call fcn.00437000
call fcn.00436c60
call fcn.00436a80
lea rax, [0x0051a47e]
mov ebx, 0x21
nop dword [rax + rax]
call fcn.004350c0
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
call fcn.0045ee00
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
nop
jmp fcn.00416300
Function at 0x4164e0
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x41670a
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.004324a0
xorps xmm15, xmm15
mov r14, qword [0x006467d0]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x60]
mov rcx, rax
cmp qword [rsp + 0x28], rax
je 0x416559
mov rbx, qword [rsp + 0x68]
mov rax, rbx
jmp 0x41656c
mov rbp, qword [rsp + 0x50]
add rsp, 0x58
ret
sub rdx, rbx
add rcx, rbx
mov rbx, rdx
test rbx, rbx
jbe 0x416590
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rcx
mov rdx, rbx
nop
jmp 0x4165a4
cmp rbx, 0x1000
jae 0x416563
jmp 0x416625
mov rbp, qword [rsp + 0x50]
add rsp, 0x58
ret
shr rbx, 1
and rbx, 0xfffffffffffff000
mov qword [rsp + 0x38], rbx
cmp rbx, 0x1000
jae 0x4165b6
xor esi, esi
jmp 0x416616
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.004324a0
xorps xmm15, xmm15
mov r14, qword [0x006467d0]
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 0x41659a
nop
jmp 0x416582
call fcn.004629c0
xorps xmm15, xmm15
mov r14, qword [0x006467d0]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov eax, dword [rsp]
mov dword [rsp + 0x34], eax
cmp eax, 8
jne 0x4166a5
call fcn.00436a00
lea rax, [0x00518094]
mov ebx, 0x19
call fcn.00437300
mov rax, qword [rsp + 0x68]
call fcn.00437000
lea rax, [0x00517c16]
mov ebx, 0x19
call fcn.00437300
mov eax, dword [rsp + 0x34]
nop dword [rax]
call fcn.00437000
call fcn.00436c60
call fcn.00436a80
lea rax, [0x005146f9]
mov ebx, 0xd
nop dword [rax + rax]
call fcn.004350c0
cmp eax, 0x5af
je 0x416648
call fcn.00436a00
lea rax, [0x00518094]
mov ebx, 0x19
nop dword [rax]
call fcn.00437300
mov rax, qword [rsp + 0x38]
call fcn.00437000
lea rax, [0x00517c16]
mov ebx, 0x19
nop dword [rax + rax]
call fcn.00437300
mov eax, dword [rsp + 0x34]
call fcn.00437000
call fcn.00436c60
call fcn.00436a80
lea rax, [0x00519bd0]
mov ebx, 0x1f
call fcn.004350c0
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
call fcn.0045ee00
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
jmp fcn.004164e0
Function at 0x41e9c0
Capabilities:
Hash data using murmur3

Disassembly:
sub rsp, 0x18
mov qword [rsp + 0x10], rbp
lea rbp, [rsp + 0x10]
cmp byte [0x006465f0], 0
jne 0x41eaaf
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 0x41eaa5
lea rbx, [0x00618a30]
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 0x41ea87
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.00461480
lea rax, [0x0051c31d]
mov ebx, 0x2c
nop dword [rax + rax]
call fcn.004350c0
nop
int3

Function at 0x420ea0
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x420f9e
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 0x420ee0
mov rax, qword [rsp + 0x50]
mov rcx, rdx
mov rbx, qword [rsp + 0x58]
nop
cmp qword [rsp + 8], rbx
jae 0x420f8f
test byte [rax], al
lea rcx, [rax + 0x100b8]
mov rax, rcx
call fcn.00421a60
nop dword [rax]
test rax, rax
je 0x420f8f
movups xmmword [rsp + 0x10], xmm15
movups xmmword [rsp + 0x20], xmm15
movups xmmword [rsp + 0x30], xmm15
lea rcx, [0x00420fe0]
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.0045ecc0
xorps xmm15, xmm15
mov r14, qword [0x006467d0]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rdx, qword [rsp + 0x60]
test rdx, rdx
jne 0x420f7d
xor eax, eax
jmp 0x420f87
mov rax, qword [rdx]
call rax
mov rdx, qword [rsp + 0x60]
test al, al
je 0x420ed2
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.0045ee00
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
jmp fcn.00420ea0
Function at 0x42e8a0
Capabilities:
Hash data using murmur3

Disassembly:
cmp rsp, qword [r14 + 0x18]
jbe 0x42eb46
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 0x42eb3a
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x30], rcx
mov qword [rax + 0x1260], 0
cmp byte [0x006465f0], 0
jne 0x42e902
xor edx, edx
xor ebx, ebx
nop
jmp 0x42e94a
xor edx, edx
jmp 0x42e92d
mov qword [rsp + 0x28], rdx
mov rcx, qword [rax + rdx*8 + 0x1270]
mov rax, rcx
call fcn.0041e1e0
mov rdx, qword [rsp + 0x28]
inc rdx
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x30]
cmp rdx, rcx
jl 0x42e906
add rax, 0x1260
call fcn.0042e760
mov rbp, qword [rsp + 0x38]
add rsp, 0x40
ret
inc rdx
cmp rdx, rcx
jge 0x42ead4
mov rsi, qword [rax + rdx*8 + 0x1270]
nop dword [rax + rax]
cmp rsi, 0x1000
jb 0x42e947
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.00413280
test rax, rax
jne 0x42e9a2
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x20]
nop
jmp 0x42e947
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 0x42e9e9
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x20]
jmp 0x42e947
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 0x42eb2d
lea r10, [0x00618a30]
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 0x42ea6f
lock or byte [r9], r8b
movzx r8d, byte [rbx + 0x62]
test r8b, 1
je 0x42eaa5
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 0x42e947
mov r8, qword [rsp + 0x20]
mov rcx, qword [rsp + 0x30]
cmp r8, rcx
jae 0x42eb25
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 0x42e947
cmp rbx, 0x200
ja 0x42eb18
lea rdx, [rax + 0x1270]
lea rsi, [rax + 0x1238]
mov rcx, rbx
mov edi, 0x200
mov rbx, rdx
mov rax, rsi
call fcn.00424360
mov rax, qword [rsp + 0x48]
add rax, 0x1260
call fcn.0042e760
mov rbp, qword [rsp + 0x38]
add rsp, 0x40
ret
mov rcx, rbx
mov edx, 0x200
call fcn.004614e0
mov rax, r8
call fcn.00461460
mov rax, r8
mov ecx, 0x40
call fcn.00461480
mov edx, 0x200
nop
call fcn.004614c0
nop
mov qword [rsp + 8], rax
call fcn.00463860
mov rax, qword [rsp + 8]
jmp fcn.0042e8a0