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

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
cmp qword [rcx + 0x20], 0
mov rax, rdx
mov edi, r8d
mov rbx, rcx
jne 0x1402b3137
xor al, al
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
mov r9, qword [rcx + 0x20]
mov r8, rdi
mov rcx, rax
mov edx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
cmp rdi, rax
sete dil
test dil, dil
je 0x1402b3162
mov rcx, qword [rbx + 0x20]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fflush]
mov rbx, qword [rsp + 0x30]
movzx eax, dil
add rsp, 0x20
pop rdi
ret
Function at 0x1402b50f0
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x10], rbx
push rdi
sub rsp, 0x20
mov r8, rcx
movzx r9d, byte [rdx]
movabs rax, 0xcbf29ce484222325
xor r9, rax
movabs rcx, 0x100000001b3
imul r9, rcx
movzx eax, byte [rdx + 1]
xor r9, rax
imul r9, rcx
movzx eax, byte [rdx + 2]
xor r9, rax
imul r9, rcx
movzx eax, byte [rdx + 3]
xor r9, rax
imul r9, rcx
movzx eax, byte [rdx + 4]
xor r9, rax
imul r9, rcx
movzx eax, byte [rdx + 5]
xor r9, rax
imul r9, rcx
movzx eax, byte [rdx + 6]
xor r9, rax
imul r9, rcx
movzx eax, byte [rdx + 7]
xor r9, rax
imul r9, rcx
mov rcx, qword [r8 + 0x30]
and rcx, r9
lea rax, [rcx + rcx]
mov rbx, qword [r8 + 0x18]
mov rbx, qword [rbx + rax*8 + 8]
cmp rbx, qword [r8 + 8]
je 0x1402b51a8
add rcx, rcx
mov rax, qword [r8 + 0x18]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rdx]
cmp rax, qword [rbx + 0x10]
je 0x1402b51aa
cmp rbx, rcx
je 0x1402b51a8
mov rbx, qword [rbx + 8]
cmp rax, qword [rbx + 0x10]
jne 0x1402b5197
jmp 0x1402b51aa
xor ebx, ebx
test rbx, rbx
je 0x1402b5266
mov rcx, qword [r8 + 0x30]
and rcx, r9
mov rdx, rcx
shl rdx, 4
add rdx, qword [r8 + 0x18]
add rcx, rcx
mov rax, qword [r8 + 0x18]
lea r9, [rax + rcx*8]
cmp qword [r9 + 8], rbx
jne 0x1402b51f2
cmp qword [rdx], rbx
jne 0x1402b51e8
mov rax, qword [r8 + 8]
mov qword [rdx], rax
mov qword [r9 + 8], rax
jmp 0x1402b51fd
mov rax, qword [rbx + 8]
mov qword [r9 + 8], rax
jmp 0x1402b51fd
cmp qword [rdx], rbx
jne 0x1402b51fd
mov rax, qword [rbx]
mov qword [rdx], rax
mov rcx, qword [rbx]
dec qword [r8 + 0x10]
mov rax, qword [rbx + 8]
mov qword [rax], rcx
mov rax, qword [rbx + 8]
mov qword [rcx + 8], rax
lea rax, [rbx + 0x10]
mov qword [rsp + 0x30], rax
lea rdi, [rax + 8]
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x48], rdi
cmp qword [rdi + 0x38], 0
je 0x1402b5249
mov rcx, qword [rdi + 0x38]
mov rax, qword [rcx]
cmp rcx, rdi
setne dl
call qword [rax + 0x20]
mov qword [rdi + 0x38], 0
mov edx, 0x60
mov rcx, rbx
call fcn.1402f1e30
mov eax, 1
mov rbx, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
xor eax, eax
mov rbx, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
Function at 0x1402b5280
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x10], rbx
push rdi
sub rsp, 0x20
mov r8, rcx
movzx r9d, byte [rdx]
movabs rax, 0xcbf29ce484222325
xor r9, rax
movabs rcx, 0x100000001b3
imul r9, rcx
movzx eax, byte [rdx + 1]
xor r9, rax
imul r9, rcx
movzx eax, byte [rdx + 2]
xor r9, rax
imul r9, rcx
movzx eax, byte [rdx + 3]
xor r9, rax
imul r9, rcx
movzx eax, byte [rdx + 4]
xor r9, rax
imul r9, rcx
movzx eax, byte [rdx + 5]
xor r9, rax
imul r9, rcx
movzx eax, byte [rdx + 6]
xor r9, rax
imul r9, rcx
movzx eax, byte [rdx + 7]
xor r9, rax
imul r9, rcx
mov rcx, qword [r8 + 0x30]
and rcx, r9
lea rax, [rcx + rcx]
mov rbx, qword [r8 + 0x18]
mov rbx, qword [rbx + rax*8 + 8]
cmp rbx, qword [r8 + 8]
je 0x1402b5338
add rcx, rcx
mov rax, qword [r8 + 0x18]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rdx]
cmp rax, qword [rbx + 0x10]
je 0x1402b533a
cmp rbx, rcx
je 0x1402b5338
mov rbx, qword [rbx + 8]
cmp rax, qword [rbx + 0x10]
jne 0x1402b5327
jmp 0x1402b533a
xor ebx, ebx
test rbx, rbx
je 0x1402b53f1
mov rcx, qword [r8 + 0x30]
and rcx, r9
mov rdx, rcx
shl rdx, 4
add rdx, qword [r8 + 0x18]
add rcx, rcx
mov rax, qword [r8 + 0x18]
lea r9, [rax + rcx*8]
cmp qword [r9 + 8], rbx
jne 0x1402b5382
cmp qword [rdx], rbx
jne 0x1402b5378
mov rax, qword [r8 + 8]
mov qword [rdx], rax
mov qword [r9 + 8], rax
jmp 0x1402b538d
mov rax, qword [rbx + 8]
mov qword [r9 + 8], rax
jmp 0x1402b538d
cmp qword [rdx], rbx
jne 0x1402b538d
mov rax, qword [rbx]
mov qword [rdx], rax
mov rcx, qword [rbx]
dec qword [r8 + 0x10]
mov rax, qword [rbx + 8]
mov qword [rax], rcx
mov rax, qword [rbx + 8]
mov qword [rcx + 8], rax
lea rax, [rbx + 0x10]
mov qword [rsp + 0x30], rax
lea rdi, [rax + 8]
mov qword [rsp + 0x40], rdi
cmp qword [rdi + 0x38], 0
je 0x1402b53d4
mov rcx, qword [rdi + 0x38]
mov rax, qword [rcx]
cmp rcx, rdi
setne dl
call qword [rax + 0x20]
mov qword [rdi + 0x38], 0
mov edx, 0x58
mov rcx, rbx
call fcn.1402f1e30
mov eax, 1
mov rbx, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
xor eax, eax
mov rbx, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
Function at 0x1402b5c30
Capabilities:
Hash data using fnv

Disassembly:
movzx r9d, byte [r8]
mov r11, rcx
movabs rcx, 0x100000001b3
movabs rax, 0xcbf29ce484222325
xor r9, rax
mov r10, rdx
movzx eax, byte [r8 + 1]
mov rdx, qword [r11 + 0x30]
imul r9, rcx
xor r9, rax
movzx eax, byte [r8 + 2]
imul r9, rcx
xor r9, rax
movzx eax, byte [r8 + 3]
imul r9, rcx
xor r9, rax
movzx eax, byte [r8 + 4]
imul r9, rcx
xor r9, rax
movzx eax, byte [r8 + 5]
imul r9, rcx
xor r9, rax
movzx eax, byte [r8 + 6]
imul r9, rcx
xor r9, rax
movzx eax, byte [r8 + 7]
imul r9, rcx
xor r9, rax
mov rax, qword [r11 + 0x18]
imul r9, rcx
and rdx, r9
lea rcx, [rdx + rdx]
mov rax, qword [rax + rcx*8 + 8]
cmp rax, qword [r11 + 8]
je 0x1402b5ce8
mov rcx, qword [r11 + 0x18]
add rdx, rdx
mov rdx, qword [rcx + rdx*8]
mov rcx, qword [r8]
cmp rcx, qword [rax + 0x10]
je 0x1402b5cea
cmp rax, rdx
je 0x1402b5ce8
mov rax, qword [rax + 8]
cmp rcx, qword [rax + 0x10]
jne 0x1402b5cd7
jmp 0x1402b5cea
xor eax, eax
test rax, rax
jne 0x1402b5cf3
mov rax, qword [r11 + 8]
mov qword [r10], rax
mov rax, r10
ret
Function at 0x1402b6700
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r14
sub rsp, 0x20
mov rsi, rcx
movabs rax, 0xfffffffffffffff
bsr rcx, rax
mov edi, 1
mov eax, edi
shl rax, cl
cmp rdx, rax
ja 0x1402b68f1
lea rax, [rdx - 1]
or rax, rdi
bsr rcx, rax
inc ecx
shl rdi, cl
mov rbx, qword [rsi + 8]
lea rcx, [rsi + 0x18]
lea rdx, [rdi + rdi]
mov r8, rbx
call fcn.140056db0
lea rax, [rdi - 1]
mov qword [rsi + 0x30], rax
mov qword [rsi + 0x38], rdi
mov qword [rsp + 0x48], rsi
mov rcx, qword [rsi + 8]
mov rcx, qword [rcx]
mov rdx, rcx
cmp rcx, rbx
je 0x1402b68af
movabs rbp, 0x100000001b3
movabs r14, 0xcbf29ce484222325
nop dword [rax]
nop word [rax + rax]
mov rdx, qword [rdx]
movzx r8d, byte [rcx + 0x10]
xor r8, r14
imul r8, rbp
movzx eax, byte [rcx + 0x11]
xor r8, rax
imul r8, rbp
movzx eax, byte [rcx + 0x12]
xor r8, rax
imul r8, rbp
movzx eax, byte [rcx + 0x13]
xor r8, rax
imul r8, rbp
movzx eax, byte [rcx + 0x14]
xor r8, rax
imul r8, rbp
movzx eax, byte [rcx + 0x15]
xor r8, rax
imul r8, rbp
movzx eax, byte [rcx + 0x16]
xor r8, rax
imul r8, rbp
movzx eax, byte [rcx + 0x17]
xor r8, rax
imul r8, rbp
and r8, qword [rsi + 0x30]
mov r11, r8
shl r11, 4
add r11, qword [rsi + 0x18]
add r8, r8
mov rax, qword [rsi + 0x18]
lea rdi, [rax + r8*8]
cmp qword [r11], rbx
jne 0x1402b6824
mov qword [r11], rcx
mov qword [rdi + 8], rcx
jmp 0x1402b68a3
mov rax, qword [rdi + 8]
mov r8, qword [rax + 0x10]
cmp qword [rcx + 0x10], r8
jne 0x1402b6861
mov r8, qword [rax]
cmp r8, rcx
je 0x1402b685b
mov r10, qword [rcx + 8]
mov qword [r10], rdx
mov rax, qword [rdx + 8]
mov qword [rax], r8
mov r9, qword [r8 + 8]
mov qword [r9], rcx
mov qword [r8 + 8], rax
mov qword [rdx + 8], r10
mov qword [rcx + 8], r9
mov qword [rdi + 8], rcx
jmp 0x1402b68a3
cmp qword [r11], rax
je 0x1402b687f
mov r9, qword [rcx + 0x10]
mov r8, qword [r11]
nop dword [rax]
mov rax, qword [rax + 8]
cmp r9, qword [rax + 0x10]
je 0x1402b68cb
cmp r8, rax
jne 0x1402b6870
mov r10, qword [rcx + 8]
mov qword [r10], rdx
mov r8, qword [rdx + 8]
mov qword [r8], rax
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov qword [rax + 8], r8
mov qword [rdx + 8], r10
mov qword [rcx + 8], r9
mov qword [r11], rcx
mov rcx, rdx
cmp rdx, rbx
jne 0x1402b67a0
mov qword [rsp + 0x48], 0
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x50]
add rsp, 0x20
pop r14
pop rdi
pop rsi
ret
mov rax, qword [rax]
mov r10, qword [rcx + 8]
mov qword [r10], rdx
mov r8, qword [rdx + 8]
mov qword [r8], rax
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov qword [rax + 8], r8
mov qword [rdx + 8], r10
mov qword [rcx + 8], r9
jmp 0x1402b68a3
lea rcx, str.invalid_hash_bucket_count
call sub.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const____ptr64_
int3
Function at 0x1402b6900
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r14
sub rsp, 0x20
mov rsi, rcx
movabs rax, 0xfffffffffffffff
bsr rcx, rax
mov edi, 1
mov eax, edi
shl rax, cl
cmp rdx, rax
ja 0x1402b6af1
lea rax, [rdx - 1]
or rax, rdi
bsr rcx, rax
inc ecx
shl rdi, cl
mov rbx, qword [rsi + 8]
lea rcx, [rsi + 0x18]
lea rdx, [rdi + rdi]
mov r8, rbx
call fcn.140056db0
lea rax, [rdi - 1]
mov qword [rsi + 0x30], rax
mov qword [rsi + 0x38], rdi
mov qword [rsp + 0x48], rsi
mov rcx, qword [rsi + 8]
mov rcx, qword [rcx]
mov rdx, rcx
cmp rcx, rbx
je 0x1402b6aaf
movabs rbp, 0x100000001b3
movabs r14, 0xcbf29ce484222325
nop dword [rax]
nop word [rax + rax]
mov rdx, qword [rdx]
movzx r8d, byte [rcx + 0x10]
xor r8, r14
imul r8, rbp
movzx eax, byte [rcx + 0x11]
xor r8, rax
imul r8, rbp
movzx eax, byte [rcx + 0x12]
xor r8, rax
imul r8, rbp
movzx eax, byte [rcx + 0x13]
xor r8, rax
imul r8, rbp
movzx eax, byte [rcx + 0x14]
xor r8, rax
imul r8, rbp
movzx eax, byte [rcx + 0x15]
xor r8, rax
imul r8, rbp
movzx eax, byte [rcx + 0x16]
xor r8, rax
imul r8, rbp
movzx eax, byte [rcx + 0x17]
xor r8, rax
imul r8, rbp
and r8, qword [rsi + 0x30]
mov r11, r8
shl r11, 4
add r11, qword [rsi + 0x18]
add r8, r8
mov rax, qword [rsi + 0x18]
lea rdi, [rax + r8*8]
cmp qword [r11], rbx
jne 0x1402b6a24
mov qword [r11], rcx
mov qword [rdi + 8], rcx
jmp 0x1402b6aa3
mov rax, qword [rdi + 8]
mov r8, qword [rax + 0x10]
cmp qword [rcx + 0x10], r8
jne 0x1402b6a61
mov r8, qword [rax]
cmp r8, rcx
je 0x1402b6a5b
mov r10, qword [rcx + 8]
mov qword [r10], rdx
mov rax, qword [rdx + 8]
mov qword [rax], r8
mov r9, qword [r8 + 8]
mov qword [r9], rcx
mov qword [r8 + 8], rax
mov qword [rdx + 8], r10
mov qword [rcx + 8], r9
mov qword [rdi + 8], rcx
jmp 0x1402b6aa3
cmp qword [r11], rax
je 0x1402b6a7f
mov r9, qword [rcx + 0x10]
mov r8, qword [r11]
nop dword [rax]
mov rax, qword [rax + 8]
cmp r9, qword [rax + 0x10]
je 0x1402b6acb
cmp r8, rax
jne 0x1402b6a70
mov r10, qword [rcx + 8]
mov qword [r10], rdx
mov r8, qword [rdx + 8]
mov qword [r8], rax
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov qword [rax + 8], r8
mov qword [rdx + 8], r10
mov qword [rcx + 8], r9
mov qword [r11], rcx
mov rcx, rdx
cmp rdx, rbx
jne 0x1402b69a0
mov qword [rsp + 0x48], 0
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x50]
add rsp, 0x20
pop r14
pop rdi
pop rsi
ret
mov rax, qword [rax]
mov r10, qword [rcx + 8]
mov qword [r10], rdx
mov r8, qword [rdx + 8]
mov qword [r8], rax
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov qword [rax + 8], r8
mov qword [rdx + 8], r10
mov qword [rcx + 8], r9
jmp 0x1402b6aa3
lea rcx, str.invalid_hash_bucket_count
call sub.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const____ptr64_
int3
Function at 0x1402b79e0
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x80
mov rax, qword [0x14065ef68]
xor rax, rsp
mov qword [rsp + 0x70], rax
xor edi, edi
mov dword [rsp + 0x30], edi
lea rdx, [rsp + 0x40]
lea rcx, [0x140695300]
call fcn.1402913d0
nop
lea rcx, [rsp + 0x40]
call fcn.1402b6550
mov byte [rax], dil
lea ecx, [rdi + 8]
call fcn.1402f1df4
test rax, rax
je 0x1402b7a3a
lea rcx, [0x1402b8100]
mov qword [rax], rcx
jmp 0x1402b7a3d
mov rax, rdi
mov qword [rsp + 0x38], rax
mov ebx, 2
mov dword [rsp + 0x30], ebx
lea rcx, [rsp + 0x68]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], edi
mov r9, rax
lea r8, [0x1402b5500]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
mov qword [rsp + 0x60], rax
test rax, rax
je 0x1402b7b66
mov qword [rsp + 0x38], rdi
and ebx, 0xfffffffd
mov dword [rsp + 0x30], ebx
cmp dword [0x1406950c8], 0
je 0x1402b7a97
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_terminate]
int3
xorps xmm0, xmm0
movaps xmm1, xmmword [rsp + 0x60]
movdqa xmmword [rsp + 0x60], xmm0
movups xmmword [0x1406950c0], xmm1
cmp dword [rsp + 0x68], 0
je 0x1402b7aba
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_terminate]
int3
call sub.MSVCP140.dll__Xtime_get_ticks
imul rcx, rax, 0x64
add rcx, 0x3b9aca00
movabs rax, 0x112e0be826d694b3
imul rcx
sar rdx, 0x1a
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov qword [rsp + 0x60], rdx
imul rax, rdx, 0x3b9aca00
sub rcx, rax
mov dword [rsp + 0x68], ecx
mov rcx, qword [rsp + 0x50]
call sub.MSVCP140.dll__Mtx_current_owns
test eax, eax
je 0x1402b7b5b
lea r8, [rsp + 0x60]
mov rdx, qword [rsp + 0x50]
lea rcx, [0x140695040]
call sub.MSVCP140.dll__Cnd_timedwait
lea rcx, [rsp + 0x40]
call fcn.1402b6550
movzx ebx, byte [rax]
cmp byte [rsp + 0x58], 0
je 0x1402b7b3a
mov rcx, qword [rsp + 0x50]
call fcn.1402f17f0
movzx eax, bl
mov rcx, qword [rsp + 0x70]
xor rcx, rsp
call fcn.1402f2210
mov rbx, qword [rsp + 0x90]
add rsp, 0x80
pop rdi
ret
mov ecx, 4
call sub.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_
nop
mov dword [rsp + 0x68], edi
mov ecx, 6
call sub.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_
int3
Function at 0x1402ba970
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r14
sub rsp, 0x20
mov rsi, rcx
movabs rax, 0xfffffffffffffff
bsr rcx, rax
mov edi, 1
mov eax, edi
shl rax, cl
cmp rdx, rax
ja 0x1402bab32
lea rax, [rdx - 1]
or rax, rdi
bsr rcx, rax
inc ecx
shl rdi, cl
mov rbx, qword [rsi + 8]
lea rcx, [rsi + 0x18]
lea rdx, [rdi + rdi]
mov r8, rbx
call fcn.1402ba820
lea rax, [rdi - 1]
mov qword [rsi + 0x30], rax
mov qword [rsi + 0x38], rdi
mov qword [rsp + 0x48], rsi
mov rcx, qword [rsi + 8]
mov rcx, qword [rcx]
mov rdx, rcx
cmp rcx, rbx
je 0x1402baaf0
movabs rbp, 0x100000001b3
movabs r14, 0xcbf29ce484222325
nop dword [rax]
nop word [rax + rax]
mov rdx, qword [rdx]
movzx r8d, byte [rcx + 0x10]
xor r8, r14
imul r8, rbp
movzx eax, byte [rcx + 0x11]
xor r8, rax
imul r8, rbp
movzx eax, byte [rcx + 0x12]
xor r8, rax
imul r8, rbp
movzx eax, byte [rcx + 0x13]
xor r8, rax
imul r8, rbp
and r8, qword [rsi + 0x30]
mov r11, r8
shl r11, 4
add r11, qword [rsi + 0x18]
add r8, r8
mov rax, qword [rsi + 0x18]
lea rdi, [rax + r8*8]
cmp qword [r11], rbx
jne 0x1402baa68
mov qword [r11], rcx
mov qword [rdi + 8], rcx
jmp 0x1402baae4
mov rax, qword [rdi + 8]
mov r8d, dword [rax + 0x10]
cmp dword [rcx + 0x10], r8d
jne 0x1402baaa5
mov r8, qword [rax]
cmp r8, rcx
je 0x1402baa9f
mov r10, qword [rcx + 8]
mov qword [r10], rdx
mov rax, qword [rdx + 8]
mov qword [rax], r8
mov r9, qword [r8 + 8]
mov qword [r9], rcx
mov qword [r8 + 8], rax
mov qword [rdx + 8], r10
mov qword [rcx + 8], r9
mov qword [rdi + 8], rcx
jmp 0x1402baae4
cmp qword [r11], rax
je 0x1402baac0
mov r9d, dword [rcx + 0x10]
mov r8, qword [r11]
mov rax, qword [rax + 8]
cmp r9d, dword [rax + 0x10]
je 0x1402bab0c
cmp r8, rax
jne 0x1402baab1
mov r10, qword [rcx + 8]
mov qword [r10], rdx
mov r8, qword [rdx + 8]
mov qword [r8], rax
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov qword [rax + 8], r8
mov qword [rdx + 8], r10
mov qword [rcx + 8], r9
mov qword [r11], rcx
mov rcx, rdx
cmp rdx, rbx
jne 0x1402baa10
mov qword [rsp + 0x48], 0
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x50]
add rsp, 0x20
pop r14
pop rdi
pop rsi
ret
mov rax, qword [rax]
mov r10, qword [rcx + 8]
mov qword [r10], rdx
mov r8, qword [rdx + 8]
mov qword [r8], rax
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov qword [rax + 8], r8
mov qword [rdx + 8], r10
mov qword [rcx + 8], r9
jmp 0x1402baae4
lea rcx, str.invalid_hash_bucket_count
call sub.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const____ptr64_
int3
Function at 0x1402bad30
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x10], rbx
mov dword [rsp + 8], ecx
push rdi
sub rsp, 0x50
mov rax, qword [0x14065ef68]
xor rax, rsp
mov qword [rsp + 0x40], rax
mov edi, ecx
mov edx, dword [0x140696aa8]
mov rax, qword gs:[0x58]
mov ecx, 0x30
mov rax, qword [rax + rdx*8]
xor ebx, ebx
mov eax, dword [rcx + rax]
cmp dword [0x1406953e0], eax
jg 0x1402bae34
nop dword [rax + rax]
movzx edx, dil
movabs rax, 0xcbf29ce484222325
xor rdx, rax
movabs rcx, 0x100000001b3
imul rdx, rcx
movzx eax, byte [rsp + 0x61]
xor rdx, rax
imul rdx, rcx
movzx eax, byte [rsp + 0x62]
xor rdx, rax
imul rdx, rcx
movzx eax, byte [rsp + 0x63]
xor rdx, rax
imul rdx, rcx
and rdx, qword [0x1406953d0]
lea rax, [rdx + rdx]
mov r9, qword [0x1406953b8]
mov rcx, qword [r9 + rax*8 + 8]
mov r8, qword [0x1406953a8]
cmp rcx, r8
je 0x1402bae03
add rdx, rdx
mov rax, qword [r9 + rdx*8]
cmp edi, dword [rcx + 0x10]
je 0x1402bae00
cmp rcx, rax
je 0x1402bae03
mov rcx, qword [rcx + 8]
cmp edi, dword [rcx + 0x10]
jne 0x1402badf2
mov rbx, rcx
mov rax, r8
test rbx, rbx
cmovne rax, rbx
cmp rax, r8
je 0x1402bae17
mov eax, dword [rax + 0x14]
jmp 0x1402bae1c
mov eax, 3
mov rcx, qword [rsp + 0x40]
xor rcx, rsp
call fcn.1402f2210
mov rbx, qword [rsp + 0x68]
add rsp, 0x50
pop rdi
ret
lea rcx, [0x1406953e0]
call fcn.1402f23d4
cmp dword [0x1406953e0], 0xffffffff
jne 0x1402bad80
mov qword [rsp + 0x28], 2
mov dword [rsp + 0x30], 3
mov dword [rsp + 0x34], 1
mov dword [rsp + 0x38], 4
mov dword [rsp + 0x3c], 2
mov dword [rsp + 0x20], 0
mov eax, dword [rsp + 0x20]
mov dword [0x1406953a0], eax
mov qword [0x1406953a8], rbx
mov qword [0x1406953b0], rbx
mov ecx, 0x18
call fcn.1402f1df4
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [0x1406953a8], rax
mov qword [0x1406953b8], rbx
xorps xmm0, xmm0
movdqa xmmword [0x1406953c0], xmm0
mov qword [0x1406953d0], 7
mov qword [0x1406953d8], 8
mov dword [0x1406953a0], 0x3f800000
mov r8, qword [0x1406953a8]
mov edx, reloc.WS2_32.dll_recv
lea rcx, [0x1406953b8]
call fcn.140056db0
nop
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x28]
lea rcx, [0x1406953a0]
call fcn.1402b9530
nop
lea rcx, [0x1404681f0]
call fcn.1402f2080
nop
lea rcx, [0x1406953e0]
call fcn.1402f2368
jmp 0x1402bad80
Function at 0x1402baf30
Capabilities:
Hash data using fnv

Disassembly:
mov dword [rsp + 8], ecx
push rbx
sub rsp, 0x80
mov rax, qword [0x14065ef68]
xor rax, rsp
mov qword [rsp + 0x70], rax
mov ebx, ecx
mov edx, dword [0x140696aa8]
mov rax, qword gs:[0x58]
mov ecx, 0x30
mov rax, qword [rax + rdx*8]
mov eax, dword [rcx + rax]
cmp dword [0x140695430], eax
jg 0x1402bb03e
nop dword [rax]
nop dword [rax + rax]
movzx edx, bl
movabs rax, 0xcbf29ce484222325
xor rdx, rax
movabs rcx, 0x100000001b3
imul rdx, rcx
movzx eax, byte [rsp + 0x91]
xor rdx, rax
imul rdx, rcx
movzx eax, byte [rsp + 0x92]
xor rdx, rax
imul rdx, rcx
movzx eax, byte [rsp + 0x93]
xor rdx, rax
imul rdx, rcx
and rdx, qword [0x140695420]
lea rax, [rdx + rdx]
mov r9, qword [0x140695408]
mov rcx, qword [r9 + rax*8 + 8]
mov r8, qword [0x1406953f8]
cmp rcx, r8
je 0x1402bb010
add rdx, rdx
mov rax, qword [r9 + rdx*8]
cmp ebx, dword [rcx + 0x10]
je 0x1402bb012
nop word [rax + rax]
cmp rcx, rax
je 0x1402bb010
mov rcx, qword [rcx + 8]
cmp ebx, dword [rcx + 0x10]
jne 0x1402bb000
jmp 0x1402bb012
xor ecx, ecx
mov rax, r8
test rcx, rcx
cmovne rax, rcx
cmp rax, r8
jne 0x1402bb025
xor eax, eax
jmp 0x1402bb028
mov eax, dword [rax + 0x14]
mov rcx, qword [rsp + 0x70]
xor rcx, rsp
call fcn.1402f2210
add rsp, 0x80
pop rbx
ret
lea rcx, [0x140695430]
call fcn.1402f23d4
cmp dword [0x140695430], 0xffffffff
jne 0x1402baf80
movdqa xmm0, xmmword [0x1404b7a60]
movdqa xmmword [rsp + 0x30], xmm0
movdqa xmm1, xmmword [0x1404b7a50]
movdqa xmmword [rsp + 0x40], xmm1
movdqa xmm0, xmmword [0x1404b7a70]
movdqa xmmword [rsp + 0x50], xmm0
movdqa xmm1, xmmword [0x1404b7a40]
movdqa xmmword [rsp + 0x60], xmm1
mov dword [rsp + 0x20], 0
mov eax, dword [rsp + 0x20]
mov dword [0x1406953f0], eax
mov qword [0x1406953f8], 0
mov qword [0x140695400], 0
mov ecx, 0x18
call fcn.1402f1df4
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [0x1406953f8], rax
mov qword [0x140695408], 0
xorps xmm0, xmm0
movdqa xmmword [0x140695410], xmm0
mov qword [0x140695420], 7
mov qword [0x140695428], 8
mov dword [0x1406953f0], 0x3f800000
mov r8, qword [0x1406953f8]
mov edx, reloc.WS2_32.dll_recv
lea rcx, [0x140695408]
call fcn.1402ba820
nop
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x30]
lea rcx, [0x1406953f0]
call fcn.1402b9840
nop
lea rcx, [0x140468200]
call fcn.1402f2080
nop
lea rcx, [0x140695430]
call fcn.1402f2368
jmp 0x1402baf80
Function at 0x1402f19ac
Capabilities:
Get geographical location

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x40
mov rdi, rdx
lea r8, [rsp + 0x60]
mov ebx, ecx
mov edx, 0x20000001
lea rcx, str._x_sys_default_locale
mov r9d, 2
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoEx]
mov r8d, ebx
mov ecx, 0x1300
neg eax
sbb r9d, r9d
and qword [rsp + 0x30], 0
and r9d, dword [rsp + 0x60]
xor edx, edx
and dword [rsp + 0x28], 0
mov dword [rsp + 0x60], r9d
mov qword [rsp + 0x20], rdi
call qword [sym.imp.KERNEL32.dll_FormatMessageA]
mov edx, eax
test eax, eax
je 0x1402f1a30
mov r8, qword [rdi]
dec r8
add r8, rdx
movzx ecx, byte [r8]
lea rax, [0x1404c0240]
cmp byte [rcx + rax], 0
je 0x1402f1a30
dec r8
sub rdx, 1
jne 0x1402f1a16
mov rbx, qword [rsp + 0x50]
mov rax, rdx
add rsp, 0x40
pop rdi
ret

Function at 0x1402f2d54
Capabilities:
Parse pe header

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

Function at 0x1402f7650
Capabilities:
Terminate process

Disassembly:
push rbx
sub rsp, 0x20
cmp byte [rcx + 9], 0
mov rbx, rcx
je 0x1402f766b
lea rcx, str.User_requested_cancellation_of_run._n
call fcn.140138770
mov rcx, qword [rbx + 0x6f8]
mov edx, 0xffff
call qword [sym.imp.KERNEL32.dll_TerminateProcess]
mov byte [rbx + 0x48], 0
add rsp, 0x20
pop rbx
ret

Function at 0x1402f80b0
Capabilities:
Terminate process

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
cmp byte [rcx + 9], 0
mov rdi, rdx
mov rbx, rcx
je 0x1402f80ff
lea rcx, str.Target_process_generated_an_exception._n
call fcn.140138770
mov edx, dword [rdi]
lea rcx, str._Code______0x_08x_n
call fcn.140138770
mov rdx, qword [rdi + 0x10]
lea rcx, str._Address___0x_016llX__n
call fcn.140138770
mov edx, dword [rdi + 4]
lea rcx, str._Flags_____0x_08x_n
call fcn.140138770
mov rcx, qword [rbx + 0x6f8]
mov edx, 0xffff
call qword [sym.imp.KERNEL32.dll_TerminateProcess]
mov byte [rbx + 0x48], 0
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret

Function at 0x1402fa1d0
Capabilities:
Query environment variable

Disassembly:
sub rsp, 0x38
xor r10d, r10d
mov r11, rcx
cmp byte [rcx + 0x558], r10b
je 0x1402fa22a
cmp qword [rcx + 0x5b8], 0xffffffffffffffff
je 0x1402fa1f9
mov r10, qword [rcx + 0x5b8]
cmp r8, r10
jb 0x1402fa232
mov rcx, qword [rcx + 0x5c0]
add rcx, r10
cmp r8, rcx
jae 0x1402fa232
cmp byte [r11 + 0x5b0], 0
je 0x1402fa215
sub r8, r10
mov rax, qword [rsp + 0x60]
mov rcx, r11
mov qword [rsp + 0x20], rax
call fcn.1402fb8c0
mov r10d, eax
mov eax, r10d
add rsp, 0x38
ret
mov rcx, r11
add rsp, 0x38
jmp fcn.1402fb8c0