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

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
sub rsp, 0x20
cmp qword [rcx + 0x5fd8], 0
lea rbx, [rcx + 0x5fe0]
mov rsi, r8
mov rbp, rdx
mov rdi, rcx
je 0x1800a0677
mov r9d, dword [rbx + 4]
mov qword [rsp + 0x30], r14
xor r14d, r14d
test r9d, r9d
jns 0x1800a062a
mov eax, r9d
mov rcx, rbx
cdq
sub eax, edx
mov edx, r14d
sar eax, 1
add eax, r9d
test eax, eax
cmovg edx, eax
call fcn.1800a2f00
mov r8, rsi
mov dword [rbx], r14d
mov rdx, rbp
mov rcx, rbx
call fcn.1800871d0
mov eax, dword [rbx]
mov edx, 1
mov r9, qword [rdi + 0x5fd8]
test eax, eax
lea ecx, [rax - 1]
mov rax, qword [rdi + 0x5fe8]
cmove ecx, r14d
test rax, rax
movsxd r8, ecx
lea rcx, [0x1802e11bd]
cmovne rcx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
mov r14, qword [rsp + 0x30]
jmp 0x1800a067f
mov rcx, rbx
call fcn.1800871d0
mov rbx, qword [rsp + 0x38]
mov rbp, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
Function at 0x1800a09c0
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rdi
sub rsp, 0x20
mov rbx, qword [0x1802e14f8]
xor ebp, ebp
cmp byte [rbx + 0x5f30], bpl
jne 0x1800a0abc
cmp dword [rbx + 0x5f58], ebp
je 0x1800a0a07
mov r8d, 0x33ae
lea rdx, str.C:UsersEtoShinya_source_reposMminty_apiimguiImGuiimgui.cpp
lea rcx, str.g.SettingsWindows.empty__
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov rcx, qword [rbx + 0x20]
test rcx, rcx
je 0x1800a0ab5
lea r8, [rsp + 0x30]
mov qword [rsp + 0x30], rbp
call fcn.1800868b0
mov rdi, rax
test rax, rax
je 0x1800a0ab5
mov rdx, qword [rsp + 0x30]
test rdx, rdx
je 0x1800a0a41
mov rcx, rax
call fcn.1800a0c10
mov r8, qword [0x1802e14f8]
test r8, r8
je 0x1800a0aac
movsx rdx, word [r8 + 0x60b0]
lea rcx, [r8 + 0x60b4]
mov r9d, dword [r8 + 0x3f68]
lea rcx, [rcx + rdx*8]
cmp dword [rcx], r9d
je 0x1800a0aa1
lea ecx, [rdx + 1]
mov eax, 0x2aaaaaab
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
add eax, eax
sub ecx, eax
mov word [r8 + 0x60b0], cx
movsx rax, cx
lea rcx, [r8 + 0x60b4]
lea rcx, [rcx + rax*8]
mov dword [rcx], r9d
mov dword [rcx + 4], ebp
inc word [rcx + 6]
inc dword [r8 + 0x60ac]
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov byte [rbx + 0x5f30], 1
movss xmm0, dword [rbx + 0x5f34]
xorps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x1800a0b59
subss xmm0, dword [rbx + 0x18]
comiss xmm1, xmm0
movss dword [rbx + 0x5f34], xmm0
jb 0x1800a0b59
mov rdi, qword [rbx + 0x20]
mov qword [rsp + 0x38], rsi
test rdi, rdi
je 0x1800a0b47
mov rax, qword [0x1802e14f8]
lea rcx, [rsp + 0x30]
mov qword [rsp + 0x30], rbp
mov dword [rax + 0x5f34], ebp
call fcn.1800a0e90
lea rdx, [0x1802b16e8]
mov rcx, rdi
mov rsi, rax
call fcn.1800867c0
mov rdi, rax
test rax, rax
je 0x1800a0b4e
mov r8, qword [rsp + 0x30]
mov r9, rax
mov edx, 1
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
jmp 0x1800a0b4e
mov byte [rbx + 0xce], 1
mov rsi, qword [rsp + 0x38]
mov dword [rbx + 0x5f34], ebp
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret

Function at 0x1800a0b70
Capabilities:
Hash data with crc32

Disassembly:
sub rsp, 8
movzx r9d, byte [rcx]
lea r8, [rcx + 1]
mov r10, qword [0x1802e14f8]
mov r11d, 0xffffffff
mov eax, r11d
test r9b, r9b
je 0x1800a0bd3
mov qword [rsp], rbx
lea rbx, [0x1801838a0]
nop dword [rax]
cmp r9b, 0x23
jne 0x1800a0bb3
cmp byte [r8], r9b
jne 0x1800a0bb3
cmp byte [r8 + 1], r9b
cmove eax, r11d
movzx edx, al
movzx ecx, r9b
movzx r9d, byte [r8]
xor rdx, rcx
shr eax, 8
inc r8
xor eax, dword [rbx + rdx*4]
test r9b, r9b
jne 0x1800a0ba0
mov rbx, qword [rsp]
movsxd rcx, dword [r10 + 0x5f48]
not eax
mov r8, qword [r10 + 0x5f50]
lea rdx, [rcx + rcx*8]
lea rcx, [r8 + rdx*8]
cmp r8, rcx
je 0x1800a0bff
cmp dword [r8 + 8], eax
je 0x1800a0c06
add r8, 0x48
cmp r8, rcx
jne 0x1800a0bf0
xor eax, eax
add rsp, 8
ret
mov rax, r8
add rsp, 8
ret
Function at 0x1800b7a70
Capabilities:
Get geographical location
Get keyboard layout

Disassembly:
mov qword [rsp + 0x18], rbp
push rsi
sub rsp, 0x70
mov rax, qword [0x1802dd038]
xor rax, rsp
mov qword [rsp + 0x68], rax
mov rsi, qword [0x1802e14f8]
mov rbp, rcx
test rsi, rsi
jne 0x1800b7ab9
mov r8d, 0x10b6
lea rdx, str.C:UsersEtoShinya_source_reposMminty_apiimguiImGuiimgui.cpp
lea rcx, str.GImGui___0___No_current_context._Did_you_call_ImGui::CreateContext___and_ImGui::SetCurrentContext_____
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov rsi, qword [0x1802e14f8]
cmp qword [rsi + 0x90], 0
je 0x1800b7add
mov r8d, 0x8b
lea rdx, str.C:UsersEtoShinya_source_reposMminty_apiimguiImGuiimgui_impl_win32.cpp
lea rcx, str.io.BackendPlatformUserData__nullptr___Already_initialized_a_platform_backend__
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
lea rcx, [rsp + 0x58]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
test eax, eax
je 0x1800b7c72
lea rcx, [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
je 0x1800b7c72
mov qword [rsp + 0x80], rbx
mov ecx, 0x50
mov qword [rsp + 0x88], rdi
call fcn.18008acd0
xor ebx, ebx
mov qword [rsp + 0x28], rax
mov rdi, rax
test rax, rax
je 0x1800b7b44
xorps xmm0, xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm0
movups xmmword [rax + 0x40], xmm0
jmp 0x1800b7b47
mov rdi, rbx
or dword [rsi + 0xc], 6
lea rax, str.imgui_impl_win32
mov qword [rsi + 0x80], rax
mov qword [rsi + 0x90], rdi
mov qword [rdi], rbp
mov rax, qword [rsp + 0x58]
mov qword [rdi + 0x20], rax
mov rax, qword [rsp + 0x60]
mov qword [rdi + 0x18], rax
mov rax, qword [0x1802e14f8]
mov dword [rdi + 0x28], 9
test rax, rax
je 0x1800b7b91
mov rsi, qword [rax + 0x90]
jmp 0x1800b7b94
mov rsi, rbx
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetKeyboardLayout]
shr rax, 0x10
mov r9d, 4
movzx ecx, ax
lea r8, [rsi + 0x2c]
mov edx, 0x20001004
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoA]
test eax, eax
jne 0x1800b7bbf
mov dword [rsi + 0x2c], ebx
mov rax, qword [0x1802e14f8]
mov rcx, qword [rax + 0x4b08]
mov rax, qword [rcx]
mov qword [rax + 0x28], rbp
lea rax, str.xinput1_4.dll
mov qword [rsp + 0x30], rax
lea rax, str.xinput1_3.dll
mov qword [rsp + 0x38], rax
lea rax, str.xinput9_1_0.dll
mov qword [rsp + 0x40], rax
lea rax, str.xinput1_2.dll
mov qword [rsp + 0x48], rax
lea rax, [0x1802b3e00]
mov qword [rsp + 0x50], rax
mov byte [rdi + 0x31], 1
mov rcx, qword [rsp + rbx*8 + 0x30]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov rsi, rax
test rax, rax
jne 0x1800b7c32
inc rbx
cmp rbx, 5
jl 0x1800b7c14
jmp 0x1800b7c5e
lea rdx, str.XInputGetCapabilities
mov qword [rdi + 0x38], rsi
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.XInputGetState
mov rcx, rsi
mov qword [rdi + 0x40], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rdi + 0x48], rax
mov rdi, qword [rsp + 0x88]
mov al, 1
mov rbx, qword [rsp + 0x80]
jmp 0x1800b7c74
xor al, al
mov rcx, qword [rsp + 0x68]
xor rcx, rsp
call fcn.18011b790
mov rbp, qword [rsp + 0x90]
add rsp, 0x70
pop rsi
ret
Function at 0x1800e0dc0
Capabilities:
Hash data using fnv

Disassembly:
push rdi
sub rsp, 0x30
mov rdi, rcx
mov rcx, qword [rcx + 0x10]
test rcx, rcx
je 0x1800e0e6c
mov rax, qword [rdi + 0x38]
shr rax, 3
cmp rax, rcx
jbe 0x1800e0dfa
mov rdx, qword [rdi + 8]
mov rcx, rdi
mov r8, rdx
mov rdx, qword [rdx]
add rsp, 0x30
pop rdi
jmp 0x1800e1080
mov rcx, qword [rdi + 8]
mov rax, qword [rcx + 8]
mov qword [rax], 0
mov rcx, qword [rcx]
test rcx, rcx
je 0x1800e0e3a
mov qword [rsp + 0x48], rbx
nop word [rax + rax]
mov rbx, qword [rcx]
mov edx, 0x18
call fcn.18011b7b0
mov rcx, rbx
test rbx, rbx
jne 0x1800e0e20
mov rbx, qword [rsp + 0x48]
mov rax, qword [rdi + 8]
lea r8, [rsp + 0x20]
mov qword [rax], rax
mov rax, qword [rdi + 8]
mov qword [rax + 8], rax
mov qword [rdi + 0x10], 0
mov rax, qword [rdi + 8]
mov rdx, qword [rdi + 0x20]
mov rcx, qword [rdi + 0x18]
mov qword [rsp + 0x20], rax
call fcn.1800e2a20
add rsp, 0x30
pop rdi
ret
mov rax, rsp
push rbp
push rsi
push r14
sub rsp, 0x50
mov rbp, r8
mov r14, rdx
mov rsi, rcx
cmp rdx, r8
je 0x1800e1184
mov rdx, qword [rcx + 0x18]
movabs r8, 0x100000001b3
mov qword [rax + 0x10], rbx
mov rbx, r14
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r12
mov r12, qword [rcx + 8]
movzx ecx, byte [r14 + 0x10]
mov qword [rax - 0x20], r13
mov r13, qword [r14 + 8]
mov qword [rax - 0x28], r15
movabs rax, 0xcbf29ce484222325
mov r15, qword [rsi + 0x30]
xor rcx, rax
movzx eax, byte [r14 + 0x11]
imul rcx, r8
mov qword [rsp + 0x30], rdx
xor rcx, rax
movzx eax, byte [r14 + 0x12]
imul rcx, r8
xor rcx, rax
movzx eax, byte [r14 + 0x13]
imul rcx, r8
xor rcx, rax
imul rcx, r8
and r15, rcx
shl r15, 4
add r15, rdx
mov rax, qword [r15]
mov qword [rsp + 0x20], rax
mov rax, qword [r15 + 8]
mov qword [rsp + 0x28], rax
nop dword [rax + rax]
mov rcx, rbx
mov rdi, rbx
mov rbx, qword [rbx]
mov edx, 0x18
call fcn.18011b7b0
dec qword [rsi + 0x10]
cmp rdi, qword [rsp + 0x28]
je 0x1800e1190
cmp rbx, rbp
jne 0x1800e1130
cmp qword [rsp + 0x20], r14
jne 0x1800e115d
mov qword [r15], rbx
mov r12, qword [rsp + 0x88]
mov rdi, qword [rsp + 0x80]
mov r15, qword [rsp + 0x40]
mov qword [r13], rbx
mov qword [rbx + 8], r13
mov r13, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x78]
mov rax, rbp
add rsp, 0x50
pop r14
pop rsi
pop rbp
ret
cmp qword [rsp + 0x20], r14
jne 0x1800e119f
mov qword [r15], r12
mov rax, r12
jmp 0x1800e11a2
mov rax, r13
mov qword [r15 + 8], rax
cmp rbx, rbp
je 0x1800e115d
nop dword [rax + rax]
movzx ecx, byte [rbx + 0x10]
movabs rdx, 0x100000001b3
mov r15, qword [rsi + 0x30]
movabs rax, 0xcbf29ce484222325
xor rcx, rax
movzx eax, byte [rbx + 0x11]
imul rcx, rdx
xor rcx, rax
movzx eax, byte [rbx + 0x12]
imul rcx, rdx
xor rcx, rax
movzx eax, byte [rbx + 0x13]
imul rcx, rdx
xor rcx, rax
imul rcx, rdx
and r15, rcx
shl r15, 4
add r15, qword [rsp + 0x30]
mov r14, qword [r15 + 8]
nop dword [rax]
nop dword [rax + rax]
mov rcx, rbx
mov rdi, rbx
mov rbx, qword [rbx]
mov edx, 0x18
call fcn.18011b7b0
dec qword [rsi + 0x10]
cmp rdi, r14
je 0x1800e1236
cmp rbx, rbp
jne 0x1800e1210
jmp 0x1800e115a
mov qword [r15], r12
mov qword [r15 + 8], r12
cmp rbx, rbp
jne 0x1800e11b0
jmp 0x1800e115d
Function at 0x1800e0ed0
Capabilities:
Hash data using fnv

Disassembly:
push rbx
push rsi
sub rsp, 0x28
movabs rax, 0xfffffffffffffff
mov rsi, rcx
bsr rcx, rax
mov ebx, 1
mov eax, ebx
shl rax, cl
cmp rdx, rax
jbe 0x1800e0f05
lea rcx, str.invalid_hash_bucket_count
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const____ptr64_]
int3
lea rax, [rdx - 1]
mov qword [rsp + 0x58], rdi
mov rdi, qword [rsi + 8]
or rax, rbx
bsr rcx, rax
mov r8, rdi
mov qword [rsp + 0x20], r14
inc ecx
shl rbx, cl
lea rcx, [rsi + 0x18]
lea rdx, [rbx + rbx]
call fcn.1800e0c80
mov qword [rsi + 0x38], rbx
lea rax, [rbx - 1]
mov qword [rsi + 0x30], rax
mov rcx, qword [rsi + 8]
mov rcx, qword [rcx]
cmp rcx, rdi
je 0x1800e1044
mov qword [rsp + 0x50], rbp
mov rax, rcx
movabs rbp, 0xcbf29ce484222325
movabs rbx, 0x100000001b3
nop dword [rax + rax]
movzx edx, byte [rax + 0x11]
movzx r11d, byte [rax + 0x10]
mov rcx, qword [rcx]
xor r11, rbp
imul r11, rbx
xor r11, rdx
movzx edx, byte [rax + 0x12]
imul r11, rbx
xor r11, rdx
movzx edx, byte [rax + 0x13]
imul r11, rbx
xor r11, rdx
imul r11, rbx
and r11, qword [rsi + 0x30]
shl r11, 4
add r11, qword [rsi + 0x18]
mov r9, qword [r11]
cmp r9, rdi
jne 0x1800e0fbd
mov qword [r11], rax
mov qword [r11 + 8], rax
jmp 0x1800e1033
mov rdx, qword [r11 + 8]
mov r8d, dword [rax + 0x10]
cmp r8d, dword [rdx + 0x10]
jne 0x1800e0ffa
mov r10, qword [rdx]
cmp r10, rax
je 0x1800e0ff4
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov r8, qword [rcx + 8]
mov qword [r8], r10
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
mov qword [r10 + 8], r8
mov qword [rcx + 8], r9
mov qword [rax + 8], rdx
mov qword [r11 + 8], rax
jmp 0x1800e1033
cmp r9, rdx
je 0x1800e100f
nop
mov rdx, qword [rdx + 8]
cmp r8d, dword [rdx + 0x10]
je 0x1800e1055
cmp r9, rdx
jne 0x1800e1000
mov r10, qword [rax + 8]
mov qword [r10], rcx
mov r9, qword [rcx + 8]
mov qword [r9], rdx
mov r8, qword [rdx + 8]
mov qword [r8], rax
mov qword [rdx + 8], r9
mov qword [rcx + 8], r10
mov qword [rax + 8], r8
mov qword [r11], rax
mov rax, rcx
cmp rcx, rdi
jne 0x1800e0f70
mov rbp, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
mov r14, qword [rsp + 0x20]
add rsp, 0x28
pop rsi
pop rbx
ret
mov r10, qword [rdx]
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov r8, qword [rcx + 8]
mov qword [r8], r10
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
mov qword [r10 + 8], r8
mov qword [rcx + 8], r9
mov qword [rax + 8], rdx
jmp 0x1800e1033
Function at 0x1800e1080
Capabilities:
Hash data using fnv

Disassembly:
push rdi
sub rsp, 0x30
mov rdi, rcx
mov rcx, qword [rcx + 0x10]
test rcx, rcx
je 0x1800e0e6c
mov rax, qword [rdi + 0x38]
shr rax, 3
cmp rax, rcx
jbe 0x1800e0dfa
mov rdx, qword [rdi + 8]
mov rcx, rdi
mov r8, rdx
mov rdx, qword [rdx]
add rsp, 0x30
pop rdi
jmp 0x1800e1080
mov rcx, qword [rdi + 8]
mov rax, qword [rcx + 8]
mov qword [rax], 0
mov rcx, qword [rcx]
test rcx, rcx
je 0x1800e0e3a
mov qword [rsp + 0x48], rbx
nop word [rax + rax]
mov rbx, qword [rcx]
mov edx, 0x18
call fcn.18011b7b0
mov rcx, rbx
test rbx, rbx
jne 0x1800e0e20
mov rbx, qword [rsp + 0x48]
mov rax, qword [rdi + 8]
lea r8, [rsp + 0x20]
mov qword [rax], rax
mov rax, qword [rdi + 8]
mov qword [rax + 8], rax
mov qword [rdi + 0x10], 0
mov rax, qword [rdi + 8]
mov rdx, qword [rdi + 0x20]
mov rcx, qword [rdi + 0x18]
mov qword [rsp + 0x20], rax
call fcn.1800e2a20
add rsp, 0x30
pop rdi
ret
mov rax, rsp
push rbp
push rsi
push r14
sub rsp, 0x50
mov rbp, r8
mov r14, rdx
mov rsi, rcx
cmp rdx, r8
je 0x1800e1184
mov rdx, qword [rcx + 0x18]
movabs r8, 0x100000001b3
mov qword [rax + 0x10], rbx
mov rbx, r14
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r12
mov r12, qword [rcx + 8]
movzx ecx, byte [r14 + 0x10]
mov qword [rax - 0x20], r13
mov r13, qword [r14 + 8]
mov qword [rax - 0x28], r15
movabs rax, 0xcbf29ce484222325
mov r15, qword [rsi + 0x30]
xor rcx, rax
movzx eax, byte [r14 + 0x11]
imul rcx, r8
mov qword [rsp + 0x30], rdx
xor rcx, rax
movzx eax, byte [r14 + 0x12]
imul rcx, r8
xor rcx, rax
movzx eax, byte [r14 + 0x13]
imul rcx, r8
xor rcx, rax
imul rcx, r8
and r15, rcx
shl r15, 4
add r15, rdx
mov rax, qword [r15]
mov qword [rsp + 0x20], rax
mov rax, qword [r15 + 8]
mov qword [rsp + 0x28], rax
nop dword [rax + rax]
mov rcx, rbx
mov rdi, rbx
mov rbx, qword [rbx]
mov edx, 0x18
call fcn.18011b7b0
dec qword [rsi + 0x10]
cmp rdi, qword [rsp + 0x28]
je 0x1800e1190
cmp rbx, rbp
jne 0x1800e1130
cmp qword [rsp + 0x20], r14
jne 0x1800e115d
mov qword [r15], rbx
mov r12, qword [rsp + 0x88]
mov rdi, qword [rsp + 0x80]
mov r15, qword [rsp + 0x40]
mov qword [r13], rbx
mov qword [rbx + 8], r13
mov r13, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x78]
mov rax, rbp
add rsp, 0x50
pop r14
pop rsi
pop rbp
ret
cmp qword [rsp + 0x20], r14
jne 0x1800e119f
mov qword [r15], r12
mov rax, r12
jmp 0x1800e11a2
mov rax, r13
mov qword [r15 + 8], rax
cmp rbx, rbp
je 0x1800e115d
nop dword [rax + rax]
movzx ecx, byte [rbx + 0x10]
movabs rdx, 0x100000001b3
mov r15, qword [rsi + 0x30]
movabs rax, 0xcbf29ce484222325
xor rcx, rax
movzx eax, byte [rbx + 0x11]
imul rcx, rdx
xor rcx, rax
movzx eax, byte [rbx + 0x12]
imul rcx, rdx
xor rcx, rax
movzx eax, byte [rbx + 0x13]
imul rcx, rdx
xor rcx, rax
imul rcx, rdx
and r15, rcx
shl r15, 4
add r15, qword [rsp + 0x30]
mov r14, qword [r15 + 8]
nop dword [rax]
nop dword [rax + rax]
mov rcx, rbx
mov rdi, rbx
mov rbx, qword [rbx]
mov edx, 0x18
call fcn.18011b7b0
dec qword [rsi + 0x10]
cmp rdi, r14
je 0x1800e1236
cmp rbx, rbp
jne 0x1800e1210
jmp 0x1800e115a
mov qword [r15], r12
mov qword [r15 + 8], r12
cmp rbx, rbp
jne 0x1800e11b0
jmp 0x1800e115d
Function at 0x1800ec740
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x20
mov eax, dword [rdx]
lea rdi, [rdx + 8]
mov ebp, r8d
mov rsi, rdx
mov rbx, rcx
cmp eax, 0xc
jne 0x1800ec7a2
mov rax, qword [rcx]
movsxd r10, dword [rdi]
mov r9, qword [rax + 0x38]
mov edx, dword [r9 + r10*4]
mov eax, edx
and eax, 0x3f
cmp al, 0xe
jne 0x1800ec7a7
dec dword [rcx + 0x20]
and edx, 0xffddffff
or edx, 0x5c0000
xor eax, eax
shr edx, 0x11
mov ecx, 0x4000
test r8d, r8d
cmove eax, ecx
or edx, eax
jmp 0x1800ec801
cmp eax, 7
je 0x1800ec7de
mov rdx, qword [rbx]
movzx ecx, byte [rcx + 0x3c]
inc ecx
movzx eax, byte [rdx + 0xc]
cmp ecx, eax
jbe 0x1800ec7c3
cmp ecx, 0xff
jae 0x1800ec825
mov byte [rdx + 0xc], cl
inc byte [rbx + 0x3c]
mov rdx, rsi
movzx r8d, byte [rbx + 0x3c]
mov rcx, rbx
dec r8d
call fcn.1800ec080
cmp dword [rsi], 7
jne 0x1800ec7f1
mov edx, dword [rdi]
bt edx, 8
jb 0x1800ec7f1
movzx eax, byte [rbx + 0x3a]
cmp edx, eax
jl 0x1800ec7f1
dec byte [rbx + 0x3c]
mov edx, dword [rdi]
shl edx, 9
or edx, ebp
shl edx, 0xe
or edx, 0x3fe3
mov rcx, rbx
call fcn.1800ebbc0
mov rcx, rbx
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
jmp fcn.1800eb8b0
mov rcx, qword [rbx + 0x10]
lea rdx, str.function_or_expression_needs_too_many_registers
call fcn.1800f7da0
int3

Function at 0x1800f6640
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 8], rbx
push rdi
mov eax, 0x2050
call fcn.18011cf40
sub rsp, rax
mov rax, qword [0x1802dd038]
xor rax, rsp
mov qword [rsp + 0x2040], rax
lea rax, [rsp + 0x40]
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x20], rax
mov rbx, rdx
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x28], 0x2000
nop dword [rax]
mov edx, 0x2000
lea rcx, [rsp + 0x20]
call fcn.1800e8450
mov r9, rbx
mov edx, 1
mov r8d, 0x2000
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
mov r8, qword [rsp + 0x30]
add r8, rax
mov qword [rsp + 0x30], r8
cmp rax, 0x2000
je 0x1800f6690
mov rdi, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x20]
mov rcx, rdi
call fcn.1800e60a0
lea rax, [rsp + 0x40]
cmp qword [rsp + 0x20], rax
je 0x1800f6748
mov rax, qword [rdi + 0x18]
mov rbx, qword [rdi + 0x10]
mov rcx, qword [rax + 8]
mov r10, qword [rax]
mov eax, dword [rbx - 0x18]
and eax, 0xf
cmp eax, 2
je 0x1800f6716
cmp eax, 7
je 0x1800f670c
xor ebx, ebx
jmp 0x1800f671a
mov rbx, qword [rbx - 0x20]
add rbx, 0x28
jmp 0x1800f671a
mov rbx, qword [rbx - 0x20]
mov r8, qword [rbx + 8]
xor r9d, r9d
mov rdx, qword [rbx]
call r10
mov edx, 0xfffffffe
mov qword [rbx], rax
mov rcx, rdi
mov qword [rbx + 8], 0
lea r8d, [rdx + 1]
call fcn.1800e5d40
add qword [rdi + 0x10], 0xfffffffffffffff0
mov rcx, qword [rsp + 0x2040]
xor rcx, rsp
call fcn.18011b790
mov rbx, qword [rsp + 0x2060]
add rsp, 0x2050
pop rdi
ret
Function at 0x1800f6770
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
mov eax, 0x2050
call fcn.18011cf40
sub rsp, rax
mov rax, qword [0x1802dd038]
xor rax, rsp
mov qword [rsp + 0x2040], rax
mov rbx, rdx
mov qword [rsp + 0x38], rcx
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], 0x2000
xor esi, esi
mov qword [rsp + 0x20], rax
mov rdx, r8
mov qword [rsp + 0x30], rsi
lea rcx, [rsp + 0x20]
mov rdi, r8
call fcn.1800e8450
mov r9, rbx
lea edx, [rsi + 1]
mov r8, rdi
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
mov r8, qword [rsp + 0x30]
mov rbp, rax
mov rdi, qword [rsp + 0x38]
add r8, rax
mov rdx, qword [rsp + 0x20]
mov rcx, rdi
mov qword [rsp + 0x30], r8
call fcn.1800e60a0
lea rax, [rsp + 0x40]
cmp qword [rsp + 0x20], rax
je 0x1800f6864
mov rax, qword [rdi + 0x18]
mov rbx, qword [rdi + 0x10]
mov rcx, qword [rax + 8]
mov r10, qword [rax]
mov eax, dword [rbx - 0x18]
and eax, 0xf
cmp eax, 2
je 0x1800f6836
cmp eax, 7
je 0x1800f682c
mov ebx, esi
jmp 0x1800f683a
mov rbx, qword [rbx - 0x20]
add rbx, 0x28
jmp 0x1800f683a
mov rbx, qword [rbx - 0x20]
mov r8, qword [rbx + 8]
xor r9d, r9d
mov rdx, qword [rbx]
call r10
mov edx, 0xfffffffe
mov qword [rbx], rax
mov rcx, rdi
mov qword [rbx + 8], rsi
lea r8d, [rdx + 1]
call fcn.1800e5d40
add qword [rdi + 0x10], 0xfffffffffffffff0
test rbp, rbp
setne sil
mov eax, esi
mov rcx, qword [rsp + 0x2040]
xor rcx, rsp
call fcn.18011b790
mov rbx, qword [rsp + 0x2070]
add rsp, 0x2050
pop rdi
pop rsi
pop rbp
ret
Function at 0x1800fb000
Capabilities:
Query environment variable

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r14
push r15
sub rsp, 0x148
mov rax, qword [0x1802dd038]
xor rax, rsp
mov qword [rsp + 0x130], rax
mov r14, r9
mov r15, rdx
lea r9, [0x1802b96dc]
mov rbx, r8
lea rdx, str._s_s
mov rdi, rcx
call fcn.1800e6220
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
xor esi, esi
mov rbp, rax
test rax, rax
jne 0x1800fb06b
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
mov rbp, rax
test rax, rax
jne 0x1800fb06b
lea rbx, [rdi + 0x10]
jmp 0x1800fb0a1
mov rdx, qword [rdi + 0x18]
lea r8, str.LUA_NOENV
add rdx, 0x40
mov rcx, rdi
call fcn.1800e6350
mov rax, qword [rdi + 0x10]
lea rbx, [rdi + 0x10]
add rax, 0xfffffffffffffff0
mov ecx, dword [rax + 8]
test ecx, ecx
je 0x1800fb0e1
cmp ecx, 1
jne 0x1800fb09e
cmp dword [rax], esi
je 0x1800fb0e1
mov qword [rbx], rax
test r14, r14
jne 0x1800fb0ae
mov rax, qword [rbx]
mov dword [rax + 8], esi
jmp 0x1800fb0c9
mov rdx, r14
mov rcx, rdi
call fcn.180105f00
mov rcx, qword [rbx]
mov qword [rcx], rax
movzx eax, byte [rax + 8]
or eax, 0x40
mov dword [rcx + 8], eax
mov rax, qword [rdi + 0x18]
add qword [rbx], 0x10
cmp qword [rax + 0x18], rsi
jle 0x1800fb127
mov rcx, rdi
call fcn.1800f5070
jmp 0x1800fb127
lea r9, [0x1802b96ec]
mov qword [rbx], rax
lea r8, [0x1802b96f0]
mov rdx, rbp
mov rcx, rdi
call fcn.1800e94d0
mov r9, r14
lea r8, [0x1802b9868]
mov rdx, rax
mov rcx, rdi
call fcn.1800e94d0
mov edx, 0xfffffffe
mov rcx, rdi
lea r8d, [rdx + 1]
call fcn.1800e5d40
add qword [rbx], 0xfffffffffffffff0
mov r8d, 0x105
lea rdx, [rsp + 0x20]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x1800fb20d
cmp eax, 0x105
je 0x1800fb20d
mov edx, 0x5c
lea rcx, [rsp + 0x20]
call qword [sym.imp.VCRUNTIME140.dll_strrchr]
test rax, rax
je 0x1800fb20d
mov byte [rax], sil
mov rax, qword [rbx]
sub rax, 0x10
mov ecx, dword [rax + 8]
and ecx, 0xf
cmp ecx, 4
je 0x1800fb1a4
cmp ecx, 3
jne 0x1800fb1ab
mov rdx, rax
mov rcx, rdi
call fcn.1800fd710
mov rax, qword [rdi + 0x18]
cmp qword [rax + 0x18], rsi
jle 0x1800fb19d
mov rcx, rdi
call fcn.1800f5070
mov rax, qword [rbx]
sub rax, 0x10
mov rsi, qword [rax]
add rsi, 0x18
lea r9, [rsp + 0x20]
mov rdx, rsi
lea r8, [0x1802b96b0]
mov rcx, rdi
call fcn.1800e94d0
mov edx, 0xfffffffe
mov rcx, rdi
lea r8d, [rdx + 1]
call fcn.1800e5d40
add qword [rbx], 0xfffffffffffffff0
mov r8, r15
mov rdx, qword [rbx]
mov rcx, rdi
add rdx, 0xffffffffffffffd0
call fcn.1800e66e0
add qword [rbx], 0xfffffffffffffff0
mov rcx, qword [rsp + 0x130]
xor rcx, rsp
call fcn.18011b790
add rsp, 0x148
pop r15
pop r14
pop rdi
pop rsi
pop rbp
pop rbx
ret
lea rdx, str.unable_to_get_ModuleFileName
mov rcx, rdi
call fcn.1800e7df0
int3