joyce8/EMBER2024-capa huggingface dataset:
Function at 0x140035370
Capabilities:
Enumerate gui resources

Disassembly:
sub rsp, 0x38
mov eax, dword [0x14004ca78]
lea rdx, [rsp + 0x20]
lea rcx, [0x1400353c0]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], 0
call qword [sym.imp.USER32.dll_EnumWindows]
test eax, eax
jne 0x1400353b2
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xffffffff
jne 0x1400353b2
mov rax, qword [rsp + 0x20]
test rax, rax
jne 0x1400353b4
xor eax, eax
add rsp, 0x38
ret

Function at 0x140035520
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0xc0
xor edi, edi
lea r8, [0x140035420]
mov qword [rsp + 0x28], rdi
xor r9d, r9d
xor edx, edx
mov dword [rsp + 0x20], edi
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rax, qword [sym.imp.USER32.dll_DefWindowProcA]
mov edx, 0x7f00
xor ecx, ecx
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x70], 0x50
mov qword [rsp + 0x80], rdi
mov qword [rsp + 0x88], rdi
call qword [sym.imp.USER32.dll_LoadIconW]
mov edx, 0x7f00
xor ecx, ecx
mov qword [rsp + 0x90], rax
call qword [sym.imp.USER32.dll_LoadCursorW]
xorps xmm0, xmm0
lea rbx, str.Overlay
mov edx, 0x7f00
mov qword [rsp + 0x98], rax
xor ecx, ecx
movdqa xmmword [rsp + 0xa0], xmm0
mov qword [rsp + 0xb0], rbx
call qword [sym.imp.USER32.dll_LoadIconW]
mov qword [rsp + 0xb8], rax
call qword [sym.imp.USER32.dll_GetDesktopWindow]
mov rcx, rax
lea rdx, [0x14004cb80]
call qword [sym.imp.USER32.dll_GetWindowRect]
lea rcx, [rsp + 0x70]
call qword [sym.imp.USER32.dll_RegisterClassExA]
mov rax, qword [rsp + 0x88]
mov r9d, 0x80000000
mov qword [rsp + 0x58], rdi
mov r8, rbx
mov qword [rsp + 0x50], rax
mov rdx, rbx
mov eax, dword [0x14004cb8c]
xor ecx, ecx
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x40], rdi
mov dword [rsp + 0x38], eax
mov eax, dword [0x14004cb88]
mov dword [rsp + 0x30], eax
mov eax, dword [0x14004cb84]
mov dword [rsp + 0x28], eax
mov eax, dword [0x14004cb80]
mov dword [rsp + 0x20], eax
call qword [sym.imp.USER32.dll_CreateWindowExA]
lea edx, [rdi - 0x14]
mov r8d, 0x800a0
mov rcx, rax
mov qword [0x14004caf0], rax
call qword [sym.imp.USER32.dll_SetWindowLongW]
mov rcx, qword [0x14004caf0]
lea r9d, [rdi + 2]
mov r8b, 0xff
xor edx, edx
call qword [sym.imp.USER32.dll_SetLayeredWindowAttributes]
movdqa xmm0, xmmword [0x140044d00]
lea rdx, [rsp + 0x60]
mov rcx, qword [0x14004caf0]
movdqu xmmword [rsp + 0x60], xmm0
call qword [sym.imp.dwmapi.dll_DwmExtendFrameIntoClientArea]
mov rcx, qword [0x14004caf0]
lea edx, [rdi + 5]
call qword [sym.imp.USER32.dll_ShowWindow]
mov rcx, qword [0x14004caf0]
call qword [sym.imp.USER32.dll_UpdateWindow]
mov rbx, qword [rsp + 0xd0]
add rsp, 0xc0
pop rdi
ret
Function at 0x14003c140
Capabilities:
Enumerate processes

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x260
xor edx, edx
mov dword [rsp + 0x20], 0x238
mov rbx, rcx
lea ecx, [rdx + 2]
call qword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
mov rdi, rax
cmp rax, 0xffffffffffffffff
je 0x14003c286
lea rdx, [rsp + 0x20]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_Process32FirstW]
lea rax, [rsp + 0x4c]
mov rcx, 0xffffffffffffffff
nop word [rax + rax]
inc rcx
cmp word [rax + rcx*2], 0
jne 0x14003c190
cmp qword [rbx + 0x18], 8
mov r9, rbx
mov r10, qword [rbx + 0x10]
jb 0x14003c1ab
mov r9, qword [rbx]
cmp rcx, r10
lea rdx, [rsp + 0x4c]
mov r8, r10
cmovb r8, rcx
test r8, r8
je 0x14003c1e4
lea rax, [rsp + 0x4c]
sub r9, rax
nop word [rax + rax]
movzx eax, word [r9 + rdx]
cmp ax, word [rdx]
jne 0x14003c1ef
add rdx, 2
sub r8, 1
jne 0x14003c1d0
cmp r10, rcx
jb 0x14003c1ef
jbe 0x14003c2e7
lea rdx, [rsp + 0x20]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_Process32NextW]
test eax, eax
je 0x14003c27d
lea rax, [rsp + 0x4c]
mov rcx, 0xffffffffffffffff
nop dword [rax]
inc rcx
cmp word [rax + rcx*2], 0
jne 0x14003c210
cmp qword [rbx + 0x18], 8
mov r9, rbx
mov r10, qword [rbx + 0x10]
jb 0x14003c22b
mov r9, qword [rbx]
cmp rcx, r10
lea rdx, [rsp + 0x4c]
mov r8, r10
cmovb r8, rcx
test r8, r8
je 0x14003c264
lea rax, [rsp + 0x4c]
sub r9, rax
nop word [rax + rax]
movzx eax, word [r9 + rdx]
cmp ax, word [rdx]
jne 0x14003c26b
add rdx, 2
sub r8, 1
jne 0x14003c250
cmp r10, rcx
jb 0x14003c26b
jbe 0x14003c2e7
lea rdx, [rsp + 0x20]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_Process32NextW]
test eax, eax
jne 0x14003c201
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rdx, qword [rbx + 0x18]
cmp rdx, 8
jb 0x14003c2c5
mov rcx, qword [rbx]
lea rdx, [rdx*2 + 2]
cmp rdx, 0x1000
jb 0x14003c2c0
mov r8, qword [rcx - 8]
add rdx, 0x27
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14003c353
mov rcx, r8
call fcn.14003d698
xor eax, eax
mov word [rbx], ax
mov qword [rbx + 0x18], 7
mov qword [rbx + 0x10], rax
mov rbx, qword [rsp + 0x270]
add rsp, 0x260
pop rdi
ret
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rdx, qword [rbx + 0x18]
mov edi, dword [rsp + 0x28]
cmp rdx, 8
jb 0x14003c32f
mov rcx, qword [rbx]
lea rdx, [rdx*2 + 2]
cmp rdx, 0x1000
jb 0x14003c32a
mov r8, qword [rcx - 8]
add rdx, 0x27
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14003c353
mov rcx, r8
call fcn.14003d698
xor eax, eax
mov qword [rbx + 0x10], rax
mov qword [rbx + 0x18], 7
mov word [rbx], ax
mov eax, edi
mov rbx, qword [rsp + 0x270]
add rsp, 0x260
pop rdi
ret
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
Function at 0x14003c360
Capabilities:
Terminate process

Disassembly:
sub rsp, 0x48
lea rcx, str.__cs2_cheat_starting...__n
call fcn.1400011e0
cmp qword [0x14004cb90], 0
jne 0x14003c3c5
nop word [rax + rax]
lea rcx, str.__waiting_for_counter_strike..._r
call fcn.1400011e0
lea rcx, [rsp + 0x20]
call fcn.14003ca90
mov rcx, rax
call fcn.14003c140
mov dword [0x14004ca78], eax
call fcn.140035370
mov qword [0x14004cb90], rax
mov ecx, 1
call qword [sym.imp.KERNEL32.dll_Sleep]
cmp qword [0x14004cb90], 0
je 0x14003c380
call fcn.140034f80
call fcn.140034fd0
mov qword [0x14004cb20], rax
call fcn.140035520
call fcn.140035020
lea rcx, [rsp + 0x20]
call fcn.14003ce60
nop
mov rcx, rax
call fcn.140034f30
nop
lea rcx, [rsp + 0x20]
call fcn.140034f10
call qword [sym.imp.KERNEL32.dll_GetConsoleWindow]
mov rcx, rax
xor edx, edx
call qword [sym.imp.USER32.dll_ShowWindow]
call fcn.14003c630
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
Function at 0x14003ce60
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdx
push rdi
sub rsp, 0x30
mov rbx, rcx
mov ecx, 8
call fcn.14003dbc8
lea rcx, [0x1400381d0]
mov qword [rax], rcx
mov qword [rsp + 0x48], rax
lea rdi, [rbx + 8]
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], 0
mov r9, rax
lea r8, [0x14003d5a0]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
mov qword [rbx], rax
test rax, rax
je 0x14003cec6
mov rax, rbx
mov rbx, qword [rsp + 0x40]
add rsp, 0x30
pop rdi
ret
mov dword [rdi], 0
mov ecx, 6
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3

Function at 0x14003e00c
Capabilities:
Parse pe header

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

Disassembly:
push rsi
push rbx
sub rsp, 0x38
mov rbx, rcx
lea rax, [rsp + 0x58]
mov ecx, 2
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x60], r8
mov qword [rsp + 0x68], r9
mov qword [rsp + 0x28], rax
call fcn.140004a20
mov r8d, 0x1b
mov edx, 1
lea rcx, str.Mingw_w64_runtime_failure:_n
mov r9, rax
call sub.msvcrt.dll_fwrite
mov rsi, qword [rsp + 0x28]
mov ecx, 2
call fcn.140004a20
mov rdx, rbx
mov rcx, rax
mov r8, rsi
call sub.msvcrt.dll_vfprintf
call sub.msvcrt.dll_abort
nop
nop dword [rax]

Function at 0x140002d20
Capabilities:
Allocate or change rwx memory

Disassembly:
push rdi
push rsi
push rbx
sub rsp, 0x50
movsxd rsi, dword [0x14000a0a4]
mov rbx, rcx
test esi, esi
jle 0x140002e50
mov rax, qword [0x14000a0a8]
xor r9d, r9d
add rax, 0x18
nop word [rax + rax]
mov r8, qword [rax]
cmp rbx, r8
jb 0x140002d6b
mov rdx, qword [rax + 8]
mov edx, dword [rdx + 8]
add r8, rdx
cmp rbx, r8
jb 0x140002df5
add r9d, 1
add rax, 0x28
cmp r9d, esi
jne 0x140002d50
mov rcx, rbx
call fcn.140003770
mov rdi, rax
test rax, rax
je 0x140002e72
mov rax, qword [0x14000a0a8]
lea rbx, [rsi + rsi*4]
shl rbx, 3
add rax, rbx
mov qword [rax + 0x20], rdi
mov dword [rax], 0
call fcn.1400038b0
mov edx, dword [rdi + 0xc]
mov r8d, 0x30
lea rcx, [rax + rdx]
mov rax, qword [0x14000a0a8]
lea rdx, [rsp + 0x20]
mov qword [rax + rbx + 0x18], rcx
call qword [sym.imp.KERNEL32.dll_VirtualQuery]
test rax, rax
je 0x140002e57
mov eax, dword [rsp + 0x44]
lea edx, [rax - 0x40]
and edx, 0xffffffbf
je 0x140002dee
lea edx, [rax - 4]
and edx, 0xfffffffb
jne 0x140002e00
add dword [0x14000a0a4], 1
add rsp, 0x50
pop rbx
pop rsi
pop rdi
ret
cmp eax, 2
mov rcx, qword [rsp + 0x20]
mov rdx, qword [rsp + 0x38]
mov r8d, 0x40
mov eax, 4
cmove r8d, eax
add rbx, qword [0x14000a0a8]
mov qword [rbx + 8], rcx
mov r9, rbx
mov qword [rbx + 0x10], rdx
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
test eax, eax
jne 0x140002dee
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.__VirtualProtect_failed_with_code_0x_x
mov edx, eax
call fcn.140002cb0
nop dword [rax]
xor esi, esi
jmp 0x140002d78
mov rax, qword [0x14000a0a8]
mov edx, dword [rdi + 8]
lea rcx, str.__VirtualQuery_failed_for__d_bytes_at_address__p
mov r8, qword [rax + rbx + 0x18]
call fcn.140002cb0
mov rdx, rbx
lea rcx, str.Address__p_has_no_image_section
call fcn.140002cb0
nop
nop word cs:[rax + rax]
nop dword [rax]

Function at 0x1400033e0
Capabilities:
Get thread local storage value

Disassembly:
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x20
lea r12, [0x14000a100]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [0x14000a0e0]
test rbx, rbx
je 0x14000343c
mov rbp, qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rdi, qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax]
mov ecx, dword [rbx]
call rbp
mov rsi, rax
call rdi
test eax, eax
jne 0x140003433
test rsi, rsi
je 0x140003433
mov rax, qword [rbx + 8]
mov rcx, rsi
call rax
mov rbx, qword [rbx + 0x10]
test rbx, rbx
jne 0x140003418
mov rcx, r12
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
jmp qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
Function at 0x140003770
Capabilities:
Enumerate pe sections
Parse pe header

Disassembly:
mov rdx, qword [0x140006b20]
xor eax, eax
cmp word [rdx], 0x5a4d
jne 0x140003790
movsxd r8, dword [rdx + 0x3c]
add r8, rdx
cmp dword [r8], 0x4550
je 0x140003798
ret
cmp word [r8 + 0x18], 0x20b
jne 0x140003790
movzx eax, word [r8 + 0x14]
sub rcx, rdx
lea rax, [r8 + rax + 0x18]
movzx r8d, word [r8 + 6]
test r8w, r8w
je 0x1400037ed
lea edx, [r8 - 1]
lea rdx, [rdx + rdx*4]
lea r9, [rax + rdx*8 + 0x28]
nop word cs:[rax + rax]
mov r8d, dword [rax + 0xc]
mov rdx, r8
cmp rcx, r8
jb 0x1400037e4
add edx, dword [rax + 8]
cmp rcx, rdx
jb 0x140003790
add rax, 0x28
cmp rax, r9
jne 0x1400037d0
xor eax, eax
ret

Function at 0x1400037f0
Capabilities:
Parse pe header

Disassembly:
mov rax, qword [0x140006b20]
xor ecx, ecx
cmp word [rax], 0x5a4d
jne 0x14000380f
movsxd rdx, dword [rax + 0x3c]
add rax, rdx
cmp dword [rax], 0x4550
je 0x140003818
mov eax, ecx
ret
cmp word [rax + 0x18], 0x20b
jne 0x14000380f
movzx ecx, word [rax + 6]
mov eax, ecx
ret

Function at 0x1400038b0
Capabilities:
Parse pe header

Disassembly:
mov rax, qword [0x140006b20]
xor edx, edx
cmp word [rax], 0x5a4d
jne 0x1400038cf
movsxd rcx, dword [rax + 0x3c]
add rcx, rax
cmp dword [rcx], 0x4550
je 0x1400038d8
mov rax, rdx
ret
cmp word [rcx + 0x18], 0x20b
cmove rdx, rax
mov rax, rdx
ret
Function at 0x140002de0
Capabilities:
Write file on windows

Disassembly:
push rsi
push rbx
sub rsp, 0x38
mov rbx, rcx
lea rax, [rsp + 0x58]
mov ecx, 2
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x60], r8
mov qword [rsp + 0x68], r9
mov qword [rsp + 0x28], rax
call fcn.140004ad0
mov r8d, 0x1b
mov edx, 1
lea rcx, str.Mingw_w64_runtime_failure:_n
mov r9, rax
call sub.msvcrt.dll_fwrite
mov rsi, qword [rsp + 0x28]
mov ecx, 2
call fcn.140004ad0
mov rdx, rbx
mov rcx, rax
mov r8, rsi
call sub.msvcrt.dll_vfprintf
call sub.msvcrt.dll_abort
nop
nop dword [rax]

Function at 0x140002e50
Capabilities:
Allocate or change rwx memory

Disassembly:
push rdi
push rsi
push rbx
sub rsp, 0x50
movsxd rsi, dword [0x14000a0a4]
mov rbx, rcx
test esi, esi
jle 0x140002f80
mov rax, qword [0x14000a0a8]
xor r9d, r9d
add rax, 0x18
nop word [rax + rax]
mov r8, qword [rax]
cmp rbx, r8
jb 0x140002e9b
mov rdx, qword [rax + 8]
mov edx, dword [rdx + 8]
add r8, rdx
cmp rbx, r8
jb 0x140002f25
add r9d, 1
add rax, 0x28
cmp r9d, esi
jne 0x140002e80
mov rcx, rbx
call fcn.1400038a0
mov rdi, rax
test rax, rax
je 0x140002fa2
mov rax, qword [0x14000a0a8]
lea rbx, [rsi + rsi*4]
shl rbx, 3
add rax, rbx
mov qword [rax + 0x20], rdi
mov dword [rax], 0
call fcn.1400039e0
mov edx, dword [rdi + 0xc]
mov r8d, 0x30
lea rcx, [rax + rdx]
mov rax, qword [0x14000a0a8]
lea rdx, [rsp + 0x20]
mov qword [rax + rbx + 0x18], rcx
call qword [sym.imp.KERNEL32.dll_VirtualQuery]
test rax, rax
je 0x140002f87
mov eax, dword [rsp + 0x44]
lea edx, [rax - 0x40]
and edx, 0xffffffbf
je 0x140002f1e
lea edx, [rax - 4]
and edx, 0xfffffffb
jne 0x140002f30
add dword [0x14000a0a4], 1
add rsp, 0x50
pop rbx
pop rsi
pop rdi
ret
cmp eax, 2
mov rcx, qword [rsp + 0x20]
mov rdx, qword [rsp + 0x38]
mov r8d, 0x40
mov eax, 4
cmove r8d, eax
add rbx, qword [0x14000a0a8]
mov qword [rbx + 8], rcx
mov r9, rbx
mov qword [rbx + 0x10], rdx
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
test eax, eax
jne 0x140002f1e
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.__VirtualProtect_failed_with_code_0x_x
mov edx, eax
call fcn.140002de0
nop dword [rax]
xor esi, esi
jmp 0x140002ea8
mov rax, qword [0x14000a0a8]
mov edx, dword [rdi + 8]
lea rcx, str.__VirtualQuery_failed_for__d_bytes_at_address__p
mov r8, qword [rax + rbx + 0x18]
call fcn.140002de0
mov rdx, rbx
lea rcx, str.Address__p_has_no_image_section
call fcn.140002de0
nop
nop word cs:[rax + rax]
nop dword [rax]

Function at 0x140003510
Capabilities:
Get thread local storage value

Disassembly:
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x20
lea r12, [0x14000a100]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [0x14000a0e0]
test rbx, rbx
je 0x14000356c
mov rbp, qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rdi, qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax]
mov ecx, dword [rbx]
call rbp
mov rsi, rax
call rdi
test eax, eax
jne 0x140003563
test rsi, rsi
je 0x140003563
mov rax, qword [rbx + 8]
mov rcx, rsi
call rax
mov rbx, qword [rbx + 0x10]
test rbx, rbx
jne 0x140003548
mov rcx, r12
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
jmp qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
Function at 0x1400038a0
Capabilities:
Enumerate pe sections
Parse pe header

Disassembly:
mov rdx, qword [0x140006b50]
xor eax, eax
cmp word [rdx], 0x5a4d
jne 0x1400038c0
movsxd r8, dword [rdx + 0x3c]
add r8, rdx
cmp dword [r8], 0x4550
je 0x1400038c8
ret
cmp word [r8 + 0x18], 0x20b
jne 0x1400038c0
movzx eax, word [r8 + 0x14]
sub rcx, rdx
lea rax, [r8 + rax + 0x18]
movzx r8d, word [r8 + 6]
test r8w, r8w
je 0x14000391d
lea edx, [r8 - 1]
lea rdx, [rdx + rdx*4]
lea r9, [rax + rdx*8 + 0x28]
nop word cs:[rax + rax]
mov r8d, dword [rax + 0xc]
mov rdx, r8
cmp rcx, r8
jb 0x140003914
add edx, dword [rax + 8]
cmp rcx, rdx
jb 0x1400038c0
add rax, 0x28
cmp rax, r9
jne 0x140003900
xor eax, eax
ret

Function at 0x140003920
Capabilities:
Parse pe header

Disassembly:
mov rax, qword [0x140006b50]
xor ecx, ecx
cmp word [rax], 0x5a4d
jne 0x14000393f
movsxd rdx, dword [rax + 0x3c]
add rax, rdx
cmp dword [rax], 0x4550
je 0x140003948
mov eax, ecx
ret
cmp word [rax + 0x18], 0x20b
jne 0x14000393f
movzx ecx, word [rax + 6]
mov eax, ecx
ret

Function at 0x1400039e0
Capabilities:
Parse pe header

Disassembly:
mov rax, qword [0x140006b50]
xor edx, edx
cmp word [rax], 0x5a4d
jne 0x1400039ff
movsxd rcx, dword [rax + 0x3c]
add rcx, rax
cmp dword [rcx], 0x4550
je 0x140003a08
mov rax, rdx
ret
cmp word [rcx + 0x18], 0x20b
cmove rdx, rax
mov rax, rdx
ret
Function at 0x414340
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x4144e6
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.00432400
xorps xmm15, xmm15
mov r14, qword [0x00518e60]
mov r14, qword gs:[r14]
mov r14, qword [r14]
cmp qword [rsp + 0x20], 0
jne 0x4143ab
mov rax, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x60]
jmp 0x4143c7
mov rbp, qword [rsp + 0x48]
add rsp, 0x50
ret
call fcn.0044c180
mov rbx, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x38]
sub rbx, rcx
test rbx, rbx
jbe 0x4143eb
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x40], rax
mov rcx, rbx
jmp 0x4143ff
cmp rbx, 0x1000
jae 0x4143b5
jmp 0x414469
mov rbp, qword [rsp + 0x48]
add rsp, 0x50
ret
shr rbx, 1
and rbx, 0xfffffffffffff000
mov qword [rsp + 0x38], rbx
cmp rbx, 0x1000
jae 0x414411
xor edx, edx
jmp 0x414460
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.00432400
xorps xmm15, xmm15
mov r14, qword [0x00518e60]
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]
test dl, dl
jne 0x4143f5
jmp 0x4143e0
call fcn.0045fe00
xorps xmm15, xmm15
mov r14, qword [0x00518e60]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov eax, dword [rsp]
mov qword [rsp + 0x30], rax
call fcn.004369e0
lea rax, [0x0047471f]
mov ebx, 0x18
call fcn.004372e0
mov rax, qword [rsp + 0x38]
call fcn.00436fe0
lea rax, [0x004747c7]
mov ebx, 0x19
call fcn.004372e0
mov rax, qword [rsp + 0x30]
nop
call fcn.00436fe0
call fcn.00436c40
call fcn.00436a60
lea rax, [0x00475b2a]
mov ebx, 0x21
nop dword [rax + rax]
call fcn.004351a0
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
call fcn.0045c2c0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
nop
jmp fcn.00414340
Function at 0x414520
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x41474a
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 [0x00518e60]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x60]
mov rcx, rax
cmp qword [rsp + 0x28], rax
je 0x414599
mov rbx, qword [rsp + 0x68]
mov rax, rbx
jmp 0x4145c0
mov rbp, qword [rsp + 0x50]
add rsp, 0x58
ret
mov rax, rcx
call fcn.0044c180
mov rbx, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x38]
sub rbx, rcx
mov rcx, rax
mov rax, qword [rsp + 0x68]
test rbx, rbx
jbe 0x4145e5
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rcx
mov rdx, rbx
jmp 0x4145f9
cmp rbx, 0x1000
jae 0x4145a3
nop dword [rax]
jmp 0x414674
mov rbp, qword [rsp + 0x50]
add rsp, 0x58
ret
shr rbx, 1
and rbx, 0xfffffffffffff000
mov qword [rsp + 0x38], rbx
nop
cmp rbx, 0x1000
jae 0x41460d
xor esi, esi
jmp 0x41466a
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
call fcn.004324a0
xorps xmm15, xmm15
mov r14, qword [0x00518e60]
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 0x4145ef
jmp 0x4145d4
call fcn.0045fe00
xorps xmm15, xmm15
mov r14, qword [0x00518e60]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov eax, dword [rsp]
mov dword [rsp + 0x34], eax
cmp eax, 8
jne 0x4146ec
call fcn.004369e0
lea rax, [0x0047493e]
mov ebx, 0x19
call fcn.004372e0
mov rax, qword [rsp + 0x68]
call fcn.00436fe0
lea rax, [0x004747c7]
mov ebx, 0x19
call fcn.004372e0
mov eax, dword [rsp + 0x34]
call fcn.00436fe0
call fcn.00436c40
call fcn.00436a60
lea rax, [0x00473358]
mov ebx, 0xd
call fcn.004351a0
cmp eax, 0x5af
je 0x414697
call fcn.004369e0
lea rax, [0x0047493e]
mov ebx, 0x19
call fcn.004372e0
mov rax, qword [rsp + 0x38]
call fcn.00436fe0
lea rax, [0x004747c7]
mov ebx, 0x19
nop
call fcn.004372e0
mov eax, dword [rsp + 0x34]
call fcn.00436fe0
call fcn.00436c40
call fcn.00436a60
lea rax, [0x00475686]
mov ebx, 0x1f
call fcn.004351a0
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
call fcn.0045c2c0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
jmp fcn.00414520
Function at 0x41ece0
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x41edde
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 0x41ed20
mov rax, qword [rsp + 0x50]
mov rcx, rdx
mov rbx, qword [rsp + 0x58]
nop
cmp qword [rsp + 8], rbx
jae 0x41edcf
test byte [rax], al
lea rcx, [rax + 0x100b8]
mov rax, rcx
call fcn.0041f840
nop dword [rax]
test rax, rax
je 0x41edcf
movups xmmword [rsp + 0x10], xmm15
movups xmmword [rsp + 0x20], xmm15
movups xmmword [rsp + 0x30], xmm15
lea rcx, [0x0041ee20]
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.0045c180
xorps xmm15, xmm15
mov r14, qword [0x00518e60]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rdx, qword [rsp + 0x60]
test rdx, rdx
jne 0x41edbd
xor eax, eax
jmp 0x41edc7
mov rax, qword [rdx]
call rax
mov rdx, qword [rsp + 0x60]
test al, al
je 0x41ed12
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.0045c2c0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
jmp fcn.0041ece0

Function at 0x455e40
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x455ef9
sub rsp, 0x60
mov qword [rsp + 0x58], rbp
lea rbp, [rsp + 0x58]
mov qword [rsp + 0x70], rbx
mov qword [rsp + 8], 0
movups xmmword [rsp + 0x10], xmm15
movups xmmword [rsp + 0x18], xmm15
movups xmmword [rsp + 0x28], xmm15
movups xmmword [rsp + 0x38], xmm15
movups xmmword [rsp + 0x48], xmm15
lea rdx, [0x00455f40]
mov qword [rsp + 0x10], rdx
lea rdx, [rsp + 8]
mov qword [rsp + 0x18], rdx
mov rdx, qword [rsp + 0x60]
mov qword [rsp + 0x20], rdx
lea rdx, [rsp + 0x68]
mov qword [rsp + 0x28], rdx
mov rdx, r14
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x50], rdi
lea rax, [rsp + 0x10]
mov qword [rsp], rax
call fcn.0045c180
xorps xmm15, xmm15
mov r14, qword [0x00518e60]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 8]
mov rbp, qword [rsp + 0x58]
add rsp, 0x60
ret
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
call fcn.0045c2c0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
jmp fcn.00455e40