joyce8/EMBER2024-capa huggingface dataset:
Function at 0x484ea0
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x484f8d
push rbp
mov rbp, rsp
sub rsp, 0x48
mov qword [rsp + 0x58], rax
lea rcx, [rbx + 1]
nop dword [rax + rax]
test rcx, rcx
jle 0x484f79
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x58], rax
mov qword [rsp], rcx
nop dword [rax]
call dbg.main._cgo_cmalloc
xorps xmm15, xmm15
mov r14, qword [0x0058f488]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 8]
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x18]
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x40], rcx
mov rdx, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x60]
cmp rbx, rcx
mov rsi, rcx
cmovl rsi, rbx
mov rdi, qword [rsp + 0x58]
cmp rdi, rdx
jne 0x484f33
cmp rbx, rcx
jmp 0x484f65
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], rdx
mov rax, rdx
mov rbx, rdi
mov rcx, rsi
call dbg.runtime.memmove
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x18]
cmp rax, rcx
mov rdx, qword [rsp + 0x28]
mov rbx, rax
mov rax, qword [rsp + 0x20]
jae 0x484f71
mov byte [rdx + rbx], 0
add rsp, 0x48
pop rbp
ret
mov rax, rbx
call dbg.runtime.panicIndex
lea rax, [0x0049c7e0]
lea rbx, [0x004d00e8]
call dbg.runtime.gopanic
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
call dbg.runtime.morestack_noctxt
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
jmp dbg.main._Cfunc_CString

Function at 0x485620
Capabilities:
Write file on windows

Disassembly:
sub rsp, 0x28
xor r9d, r9d
xor r8d, r8d
mov edx, 1
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateEventA]
mov qword [0x005932d0], rax
test rax, rax
je 0x485655
lea rcx, [0x005932e0]
add rsp, 0x28
jmp qword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
mov ecx, 2
call qword [dbg.__acrt_iob_func]
mov r8d, 0x3d
mov edx, 1
lea rcx, str.runtime:_failed_to_create_runtime_initialization_wait_event._n
mov r9, rax
call sym.fwrite
call sym.abort
nop

Function at 0x4857e0
Capabilities:
Write file on windows

Disassembly:
sub rsp, 0x28
mov ecx, 2
call qword [dbg.__acrt_iob_func]
mov r8d, 0x20
mov edx, 1
lea rcx, str.unexpected_cgo_bindm_on_Windows_n
mov r9, rax
call sym.fwrite
call sym.abort
nop
nop

Function at 0x485810
Capabilities:
Write file on windows

Disassembly:
sub rsp, 0x28
call sym._cgo_maybe_run_preinit
lea rcx, [0x005932e0]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [0x005932e0]
mov dword [0x005932c8], 1
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rcx, qword [0x005932d0]
call qword [sym.imp.KERNEL32.dll_SetEvent]
test eax, eax
je 0x485853
add rsp, 0x28
ret
mov ecx, 2
call qword [dbg.__acrt_iob_func]
mov r8d, 0x3b
mov edx, 1
lea rcx, str.runtime:_failed_to_signal_runtime_initialization_complete._n
mov r9, rax
call sym.fwrite
call sym.abort
nop
nop
Function at 0x4859a0
Capabilities:
Write file on windows

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov ecx, 0x18
call sym.malloc
mov rcx, rax
test rax, rax
je 0x4859d3
movdqu xmm0, xmmword [rbx]
movups xmmword [rax], xmm0
mov rax, qword [rbx + 0x10]
mov qword [rcx + 0x10], rax
add rsp, 0x20
pop rbx
jmp dbg._cgo_sys_thread_start
mov ecx, 2
call qword [dbg.__acrt_iob_func]
mov r8d, 0x2b
mov edx, 1
lea rcx, str.runtime_cgo:_out_of_memory_in_thread_start_n
mov r9, rax
call sym.fwrite
call sym.abort
nop
nop
nop

Function at 0x485a50
Capabilities:
Create thread

Disassembly:
mov rdx, rcx
lea rcx, [dbg.threadentry]
jmp sym._cgo_beginthread

Function at 0x485f30
Capabilities:
Write file on windows

Disassembly:
push r12
push rbx
sub rsp, 0x38
mov r12, 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 dbg.__acrt_iob_func
mov r8d, 0x1b
mov edx, 1
lea rcx, str.Mingw_w64_runtime_failure:_n
mov r9, rax
call sym.fwrite
mov rbx, qword [rsp + 0x28]
mov ecx, 2
call dbg.__acrt_iob_func
mov rdx, r12
mov rcx, rax
mov r8, rbx
call sym.vfprintf
call sym.abort
nop
nop word [rax + rax]
Function at 0x485fa0
Capabilities:
Allocate or change rwx memory

Disassembly:
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x50
movsxd rdi, dword [0x00593914]
mov r12, rcx
mov rsi, rdx
mov rbx, r8
test edi, edi
jle 0x486148
mov rax, qword [0x00593918]
xor ecx, ecx
add rax, 0x18
nop
mov rdx, qword [rax]
cmp r12, rdx
jb 0x485fec
mov r8, qword [rax + 8]
mov r8d, dword [r8 + 8]
add rdx, r8
cmp r12, rdx
jb 0x486077
add ecx, 1
add rax, 0x28
cmp ecx, edi
jne 0x485fd0
mov rcx, r12
call dbg.__mingw_GetSectionForAddress
mov rbp, rax
test rax, rax
je 0x486182
mov rax, qword [0x00593918]
lea rdi, [rdi + rdi*4]
shl rdi, 3
add rax, rdi
mov qword [rax + 0x20], rbp
mov dword [rax], 0
call dbg._GetPEImageBase
mov ecx, dword [rbp + 0xc]
lea rdx, [rsp + 0x20]
mov r8d, 0x30
add rcx, rax
mov rax, qword [0x00593918]
mov qword [rax + rdi + 0x18], rcx
call qword [sym.imp.KERNEL32.dll_VirtualQuery]
test rax, rax
je 0x486191
mov eax, dword [rsp + 0x44]
lea edx, [rax - 0x40]
and edx, 0xffffffbf
je 0x486070
sub eax, 4
and eax, 0xfffffffb
jne 0x486100
add dword [0x00593914], 1
cmp ebx, 8
jae 0x4860a8
test bl, 4
jne 0x486150
test ebx, ebx
je 0x486099
movzx eax, byte [rsi]
mov byte [r12], al
test bl, 2
jne 0x486170
add rsp, 0x50
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
ret
mov rax, qword [rsi]
lea rcx, [r12 + 8]
and rcx, 0xfffffffffffffff8
mov qword [r12], rax
mov eax, ebx
mov rdx, qword [rsi + rax - 8]
mov qword [r12 + rax - 8], rdx
sub r12, rcx
add ebx, r12d
sub rsi, r12
and ebx, 0xfffffff8
cmp ebx, 8
jb 0x486099
and ebx, 0xfffffff8
xor eax, eax
mov edx, eax
add eax, 8
mov r8, qword [rsi + rdx]
mov qword [rcx + rdx], r8
cmp eax, ebx
jb 0x4860da
add rsp, 0x50
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
ret
mov rcx, qword [rsp + 0x20]
mov rdx, qword [rsp + 0x38]
mov r8d, 0x40
add rdi, qword [0x00593918]
mov qword [rdi + 8], rcx
mov r9, rdi
mov qword [rdi + 0x10], rdx
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
test eax, eax
jne 0x486070
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.__VirtualProtect_failed_with_code_0x_x
mov edx, eax
call dbg.__report_error
nop dword [rax]
xor edi, edi
jmp 0x485ff7
mov eax, dword [rsi]
mov ebx, ebx
mov dword [r12], eax
mov eax, dword [rsi + rbx - 4]
mov dword [r12 + rbx - 4], eax
jmp 0x486099
mov ebx, ebx
movzx eax, word [rsi + rbx - 2]
mov word [r12 + rbx - 2], ax
jmp 0x486099
mov rdx, r12
lea rcx, str.Address__p_has_no_image_section
call dbg.__report_error
mov rax, qword [0x00593918]
mov edx, dword [rbp + 8]
lea rcx, str.__VirtualQuery_failed_for__d_bytes_at_address__p
mov r8, qword [rax + rdi + 0x18]
call dbg.__report_error
nop
nop dword [rax]
Function at 0x486970
Capabilities:
Get thread local storage value

Disassembly:
push r12
push rdi
push rsi
push rbx
sub rsp, 0x28
lea rcx, [0x00593c00]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [0x00593be0]
test rbx, rbx
je 0x4869c4
mov rdi, qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rsi, qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [rbx]
call rdi
mov r12, rax
call rsi
test eax, eax
jne 0x4869bb
test r12, r12
je 0x4869bb
mov rax, qword [rbx + 8]
mov rcx, r12
call rax
mov rbx, qword [rbx + 0x10]
test rbx, rbx
jne 0x4869a0
lea rcx, [0x00593c00]
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop r12
jmp qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]

Function at 0x486bf0
Capabilities:
Parse pe header

Disassembly:
cmp word [rcx], 0x5a4d
jne 0x486c00
jmp sym._ValidateImageBase.part.0
xor eax, eax
ret

Function at 0x486c10
Capabilities:
Enumerate pe sections

Disassembly:
movsxd rax, dword [rcx + 0x3c]
add rcx, rax
movzx eax, word [rcx + 0x14]
lea rax, [rcx + rax + 0x18]
movzx ecx, word [rcx + 6]
test ecx, ecx
je 0x486c55
sub ecx, 1
lea rcx, [rcx + rcx*4]
lea r9, [rax + rcx*8 + 0x28]
nop dword [rax]
mov r8d, dword [rax + 0xc]
mov rcx, r8
cmp r8, rdx
ja 0x486c4c
add ecx, dword [rax + 8]
cmp rcx, rdx
ja 0x486c57
add rax, 0x28
cmp rax, r9
jne 0x486c38
xor eax, eax
ret

Function at 0x486d00
Capabilities:
Enumerate pe sections

Disassembly:
sub rsp, 0x28
mov r10, qword [0x00535610]
xor r8d, r8d
cmp word [r10], 0x5a4d
mov r9, rcx
jne 0x486d79
mov rcx, r10
call sym._ValidateImageBase.part.0
test eax, eax
je 0x486d79
movsxd rax, dword [r10 + 0x3c]
mov rcx, r9
sub rcx, r10
add r10, rax
movzx eax, word [r10 + 0x14]
lea r8, [r10 + rax + 0x18]
movzx eax, word [r10 + 6]
test eax, eax
je 0x486d76
sub eax, 1
lea rax, [rax + rax*4]
lea r9, [r8 + rax*8 + 0x28]
nop dword [rax]
mov edx, dword [r8 + 0xc]
mov rax, rdx
cmp rcx, rdx
jb 0x486d6d
add eax, dword [r8 + 8]
cmp rcx, rax
jb 0x486d79
add r8, 0x28
cmp r8, r9
jne 0x486d58
xor r8d, r8d
mov rax, r8
add rsp, 0x28
ret

Function at 0x486e60
Capabilities:
Enumerate pe sections

Disassembly:
sub rsp, 0x28
mov r9, qword [0x00535610]
xor eax, eax
cmp word [r9], 0x5a4d
mov r8, rcx
jne 0x486ecf
mov rcx, r9
call sym._ValidateImageBase.part.0
test eax, eax
je 0x486ecf
movsxd rax, dword [r9 + 0x3c]
mov rcx, r8
sub rcx, r9
add r9, rax
movzx eax, word [r9 + 0x14]
movzx edx, word [r9 + 6]
lea rax, [r9 + rax + 0x18]
test edx, edx
je 0x486ecd
sub edx, 1
lea rdx, [rdx + rdx*4]
lea r9, [rax + rdx*8 + 0x28]
mov r8d, dword [rax + 0xc]
mov rdx, r8
cmp rcx, r8
jb 0x486ec4
add edx, dword [rax + 8]
cmp rcx, rdx
jb 0x486ed8
add rax, 0x28
cmp rax, r9
jne 0x486eb0
xor eax, eax
add rsp, 0x28
ret
mov eax, dword [rax + 0x24]
not eax
shr eax, 0x1f
add rsp, 0x28
ret
Function at 0x486ef0
Capabilities:
Enumerate pe sections

Disassembly:
sub rsp, 0x28
mov r11, qword [0x00535610]
xor r9d, r9d
cmp word [r11], 0x5a4d
mov r8d, ecx
jne 0x486f68
mov rcx, r11
call sym._ValidateImageBase.part.0
test eax, eax
je 0x486f68
movsxd rcx, dword [r11 + 0x3c]
add rcx, r11
mov eax, dword [rcx + 0x90]
test eax, eax
je 0x486f68
movzx edx, word [rcx + 0x14]
lea rdx, [rcx + rdx + 0x18]
movzx ecx, word [rcx + 6]
test ecx, ecx
je 0x486f68
sub ecx, 1
lea rcx, [rcx + rcx*4]
lea r10, [rdx + rcx*8 + 0x28]
nop dword [rax + rax]
mov r9d, dword [rdx + 0xc]
mov rcx, r9
cmp rax, r9
jb 0x486f5c
add ecx, dword [rdx + 8]
cmp rax, rcx
jb 0x486f70
add rdx, 0x28
cmp rdx, r10
jne 0x486f48
xor r9d, r9d
mov rax, r9
add rsp, 0x28
ret
add rax, r11
jmp 0x486f80
sub r8d, 1
add rax, 0x14
mov ecx, dword [rax + 4]
test ecx, ecx
jne 0x486f8e
mov edx, dword [rax + 0xc]
test edx, edx
je 0x486f65
test r8d, r8d
jg 0x486f78
mov r9d, dword [rax + 0xc]
add r9, r11
mov rax, r9
add rsp, 0x28
ret
Function at 0x1401f5298
Capabilities:
Check os version
Parse pe header

Disassembly:
mov rax, qword gs:[0x60]
mov r9, rcx
test rax, rax
je 0x1401f5333
cmp dword [rax + 0x118], 0xa
jne 0x1401f5333
mov rax, qword [rax + 0x18]
mov rdx, qword [rax + 0x20]
mov rax, qword [rdx]
mov rdx, qword [rax + 0x20]
test rdx, rdx
je 0x1401f5333
mov eax, 0x5a4d
cmp word [rdx], ax
jne 0x1401f5333
movsxd rax, dword [rdx + 0x3c]
cmp dword [rax + rdx], 0x4550
jne 0x1401f5333
mov r8d, dword [rax + rdx + 0x88]
add r8, rdx
je 0x1401f5333
mov qword [rcx + 0x20], rdx
mov ecx, dword [r8 + 0x18]
mov dword [r9 + 0x18], ecx
mov r11d, dword [r8 + 0x20]
add r11, rdx
mov qword [r9 + 8], r11
mov r10d, dword [r8 + 0x1c]
add r10, rdx
mov qword [r9], r10
mov r8d, dword [r8 + 0x24]
add r8, rdx
mov qword [r9 + 0x10], r8
test ecx, ecx
je 0x1401f5333
test r11, r11
je 0x1401f5333
test r10, r10
je 0x1401f5333
test r8, r8
je 0x1401f5333
mov eax, 1
ret
xor eax, eax
ret

Function at 0x1401f6400
Capabilities:
Parse pe header

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

Function at 0x1401faa80
Capabilities:
Parse pe header

Disassembly:
xor r8d, r8d
xor edx, edx
jmp 0x1401fa87c
Function at 0x1401fdb34
Capabilities:
Query environment variable

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r14
sub rsp, 0x40
call qword [sym.imp.KERNEL32.dll_GetEnvironmentStringsW]
xor esi, esi
mov rbx, rax
test rax, rax
jne 0x1401fdb64
xor eax, eax
jmp 0x1401fdc27
mov rbp, rbx
cmp word [rax], si
je 0x1401fdb89
or rax, 0xffffffffffffffff
inc rax
cmp word [rbp + rax*2], si
jne 0x1401fdb70
lea rbp, [rbp + rax*2]
add rbp, 2
cmp word [rbp], si
jne 0x1401fdb6c
mov qword [rsp + 0x38], rsi
sub rbp, rbx
mov qword [rsp + 0x30], rsi
add rbp, 2
sar rbp, 1
mov r8, rbx
mov r9d, ebp
mov dword [rsp + 0x28], esi
xor edx, edx
mov qword [rsp + 0x20], rsi
xor ecx, ecx
call fcn.1401fda54
movsxd r14, eax
test eax, eax
jne 0x1401fdbc7
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FreeEnvironmentStringsW]
jmp 0x1401fdb5d
mov rcx, r14
call fcn.1401fe5c8
mov rdi, rax
test rax, rax
jne 0x1401fdbe0
xor ecx, ecx
call fcn.1401fc08c
jmp 0x1401fdbbc
mov qword [rsp + 0x38], rsi
mov r9d, ebp
mov qword [rsp + 0x30], rsi
mov r8, rbx
mov dword [rsp + 0x28], r14d
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.1401fda54
test eax, eax
jne 0x1401fdc11
mov rcx, rdi
call fcn.1401fc08c
jmp 0x1401fdc1b
xor ecx, ecx
call fcn.1401fc08c
mov rsi, rdi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FreeEnvironmentStringsW]
mov rax, rsi
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
add rsp, 0x40
pop r14
ret
Function at 0x140203390
Capabilities:
Parse pe header

Disassembly:
mov eax, 0x5a4d
cmp word [rcx], ax
jne 0x1402033b8
movsxd rdx, dword [rcx + 0x3c]
add rdx, rcx
cmp dword [rdx], 0x4550
jne 0x1402033b8
xor eax, eax
mov ecx, 0x20b
cmp word [rdx + 0x18], cx
sete al
ret
xor eax, eax
ret
Function at 0x140009e70
Capabilities:
Terminate process

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push r15
sub rsp, 0x30
mov rax, qword gs:[0x30]
mov rbx, qword [rax + 8]
xor esi, esi
xor eax, eax
lock cmpxchg qword [0x14000f880], rbx
je 0x140009ebc
cmp rax, rbx
jne 0x140009eaf
mov ebx, 1
mov esi, ebx
jmp 0x140009ec1
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x140009e94
mov ebx, 1
mov eax, dword [0x14000f888]
cmp eax, ebx
jne 0x140009ed7
mov ecx, 0x1f
call sub.msvcrt.dll__amsg_exit
jmp 0x140009f3c
mov eax, dword [0x14000f888]
test eax, eax
jne 0x140009f36
mov dword [0x14000f888], ebx
lea r15, [0x14000b540]
lea rdi, [0x14000b528]
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], eax
cmp rdi, r15
jae 0x140009f28
test eax, eax
jne 0x140009f2c
cmp qword [rdi], 0
je 0x140009f1d
mov rax, qword [rdi]
mov rcx, qword [0x14000b508]
call rcx
mov dword [rsp + 0x20], eax
add rdi, 8
mov qword [rsp + 0x28], rdi
jmp 0x140009efe
test eax, eax
je 0x140009f3c
mov eax, 0xff
jmp 0x14000a018
mov dword [0x14000d034], ebx
mov eax, dword [0x14000f888]
cmp eax, ebx
jne 0x140009f63
lea rdx, [0x14000b520]
lea rcx, [0x14000b510]
call sub.msvcrt.dll__initterm
mov dword [0x14000f888], 2
test esi, esi
jne 0x140009f70
xor eax, eax
xchg qword [0x14000f880], rax
cmp qword [0x14000f890], 0
je 0x140009fa4
lea rcx, [0x14000f890]
call fcn.14000a220
test eax, eax
je 0x140009fa4
xor r8d, r8d
lea edx, [r8 + 2]
xor ecx, ecx
mov rax, qword [0x14000f890]
mov r9, qword [0x14000b508]
call r9
mov r8, qword [0x14000d048]
mov rdx, qword [0x14000d040]
mov ecx, dword [0x14000d038]
call fcn.140001008
mov dword [0x14000d030], eax
cmp dword [0x14000d050], 0
jne 0x140009fd4
mov ecx, eax
call qword [sym.imp.msvcrt.dll_exit]
cmp dword [0x14000d034], 0
jne 0x140009fe9
call qword [sym.imp.msvcrt.dll__cexit]
mov eax, dword [0x14000d030]
jmp 0x14000a018
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x50]
add rsp, 0x30
pop r15
ret
sub rsp, 0x28
call fcn.140184000
add rsp, 0x28
jmp 0x140009e70

Function at 0x14000a10c
Capabilities:
Parse pe header

Disassembly:
sub rsp, 0x18
xor edx, edx
lea rax, [rcx - 1]
cmp rax, 0xfffffffffffffffd
ja 0x14000a158
mov eax, 0x5a4d
cmp word [rcx], ax
jne 0x14000a150
cmp dword [rcx + 0x3c], edx
jl 0x14000a150
cmp dword [rcx + 0x3c], 0x10000000
jae 0x14000a150
movsxd rax, dword [rcx + 0x3c]
add rax, rcx
mov qword [rsp], rax
cmp dword [rax], 0x4550
cmovne rax, rdx
mov rdx, rax
mov qword [rsp], rax
jmp 0x14000a158
mov rax, rdx
add rsp, 0x18
ret
Function at 0x23411f0
Capabilities:
Terminate process

Disassembly:
cld
pop r11
jmp 0x23411fd
inc rsi
mov byte [rdi], dl
inc rdi
mov dl, byte [rsi]
add ebx, ebx
jne 0x234120d
mov ebx, dword [rsi]
sub rsi, 0xfffffffffffffffc
adc ebx, ebx
mov dl, byte [rsi]
jb 0x23411f5
lea eax, [rcx + 1]
jmp 0x234121b
dec eax
call r11
adc eax, eax
call r11
adc eax, eax
add ebx, ebx
jne 0x234122e
mov ebx, dword [rsi]
sub rsi, 0xfffffffffffffffc
adc ebx, ebx
mov dl, byte [rsi]
jae 0x2341214
sub eax, 3
jb 0x234124e
shl eax, 8
movzx edx, dl
or eax, edx
inc rsi
xor eax, 0xffffffff
je 0x234129d
sar eax, 1
movsxd rbp, eax
jb 0x2341284
jmp 0x234125c
add ebx, ebx
jne 0x234125a
mov ebx, dword [rsi]
sub rsi, 0xfffffffffffffffc
adc ebx, ebx
jb 0x2341284
inc ecx
add ebx, ebx
jne 0x234126a
mov ebx, dword [rsi]
sub rsi, 0xfffffffffffffffc
adc ebx, ebx
jb 0x2341284
call r11
adc ecx, ecx
add ebx, ebx
jne 0x234127d
mov ebx, dword [rsi]
sub rsi, 0xfffffffffffffffc
adc ebx, ebx
jae 0x234126c
add ecx, 2
jmp 0x2341289
call r11
adc ecx, ecx
cmp rbp, 0xfffffffffffffb00
adc ecx, 2
call fcn.023411b2
jmp 0x23411fd
pop rsi
sub rsp, 0x28
lea rdi, [rsi + 0x1f25000]
mov eax, dword [rdi]
or eax, eax
je 0x23412f9
mov ebx, dword [rdi + 4]
lea rcx, [rax + rsi + 0x1f41000]
add rbx, rsi
add rdi, 8
call qword [sym.imp.KERNEL32.DLL_LoadLibraryA]
xchg rbp, rax
mov al, byte [rdi]
inc rdi
or al, al
je 0x23412a9
mov rcx, rdi
mov rdx, rdi
dec eax
repne scasb al, byte [rdi]
mov rcx, rbp
call qword [sym.imp.KERNEL32.DLL_GetProcAddress]
or rax, rax
je 0x23412f3
mov qword [rbx], rax
add rbx, 8
jmp 0x23412c9
jmp qword [sym.imp.KERNEL32.DLL_ExitProcess]
add rsp, 0x28
add rdi, 4
lea rbx, [rsi - 4]
xor eax, eax
mov al, byte [rdi]
inc rdi
or eax, eax
je 0x234133d
cmp al, 0xef
ja 0x2341325
add rbx, rax
mov rax, qword [rbx]
bswap rax
add rax, rsi
mov qword [rbx], rax
jmp 0x2341305
and al, 0xf
shl eax, 0x10
mov ax, word [rdi]
add rdi, 2
or eax, eax
jne 0x2341314
mov eax, dword [rdi]
add rdi, 4
jmp 0x2341314
mov rbp, qword [sym.imp.KERNEL32.DLL_VirtualProtect]
lea rdi, [rsi - 0x1000]
mov ebx, 0x1000
push rax
mov r9, rsp
mov r8d, 4
mov rdx, rbx
mov rcx, rdi
sub rsp, 0x20
call rbp
lea rax, [rdi + 0x1af]
and byte [rax], 0x7f
and byte [rax + 0x28], 0x7f
lea r9, [rsp + 0x20]
mov r8, qword [r9]
mov rdx, rbx
mov rcx, rdi
call rbp
add rsp, 0x28
pop rbp
pop rdi
pop rsi
pop rbx
lea rax, [rsp - 0x80]
push 0
cmp rsp, rax
jne 0x2341391
sub rsp, 0xffffffffffffff80
jmp 0x4683e0
Function at 0x14002938e
Capabilities:
Hash data using fnv

Disassembly:
jmp 0x140055290
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rdi
sub rsp, 0x108
lea rbp, [rsp + 0x20]
lea rcx, [0x1400a4036]
call fcn.14002a748
mov qword [rbp + 8], 0
jmp 0x1400552ce
mov rax, qword [rbp + 8]
inc rax
mov qword [rbp + 8], rax
mov rax, qword [rbp + 0x110]
cmp qword [rbp + 8], rax
jae 0x140055324
mov rax, qword [rbp + 8]
mov rcx, qword [rbp + 0x108]
add rcx, rax
mov rax, rcx
movzx eax, byte [rax]
mov rcx, qword [rbp + 0x100]
xor rcx, rax
mov rax, rcx
mov qword [rbp + 0x100], rax
movabs rax, 0x100000001b3
mov rcx, qword [rbp + 0x100]
imul rcx, rax
mov rax, rcx
mov qword [rbp + 0x100], rax
jmp 0x1400552c3
mov rax, qword [rbp + 0x100]
lea rsp, [rbp + 0xe8]
pop rdi
pop rbp
ret

Function at 0x140029cf3
Capabilities:
Terminate process

Disassembly:
jmp 0x1400782e0
mov qword [rsp + 8], rcx
sub rsp, 0x28
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetUnhandledExceptionFilter]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_UnhandledExceptionFilter]
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov edx, 0xc0000409
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_TerminateProcess]
add rsp, 0x28
ret
Function at 0x140029fe1
Capabilities:
Parse pe header

Disassembly:
jmp 0x1400776a0
sub rsp, 0x38
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov qword [rsp + 0x20], rax
cmp qword [rsp + 0x20], 0
jne 0x1400776c0
xor al, al
jmp 0x140077741
mov rax, qword [rsp + 0x20]
movzx eax, word [rax]
cmp eax, 0x5a4d
je 0x1400776d3
xor al, al
jmp 0x140077741
mov rax, qword [rsp + 0x20]
movsxd rax, dword [rax + 0x3c]
mov rcx, qword [rsp + 0x20]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x28]
cmp dword [rax], 0x4550
je 0x1400776fd
xor al, al
jmp 0x140077741
mov rax, qword [rsp + 0x28]
movzx eax, word [rax + 0x18]
cmp eax, 0x20b
je 0x140077711
xor al, al
jmp 0x140077741
mov rax, qword [rsp + 0x28]
cmp dword [rax + 0x84], 0xe
ja 0x140077723
xor al, al
jmp 0x140077741
mov eax, 8
imul rax, rax, 0xe
mov rcx, qword [rsp + 0x28]
cmp dword [rcx + rax + 0x88], 0
jne 0x14007773f
xor al, al
jmp 0x140077741
mov al, 1
add rsp, 0x38
ret
Function at 0x14010edc0
Capabilities:
Terminate process

Disassembly:
imul ecx, dword [0x191edfdf8], 0xb146008a
adc cl, byte [rdi - 0x7e]
sbb ah, bh
sub al, 5
add ah, byte [rbx + rax*2 + 0x72008a7]
jmp rbx
cld
pop r11
jmp 0x14010edcd
inc rsi
mov byte [rdi], dl
inc rdi
mov dl, byte [rsi]
add ebx, ebx
jne 0x14010eddd
mov ebx, dword [rsi]
sub rsi, 0xfffffffffffffffc
adc ebx, ebx
mov dl, byte [rsi]
jb 0x14010edc5
lea eax, [rcx + 1]
jmp 0x14010edeb
dec eax
call r11
adc eax, eax
call r11
adc eax, eax
add ebx, ebx
jne 0x14010edfe
mov ebx, dword [rsi]
sub rsi, 0xfffffffffffffffc
adc ebx, ebx
mov dl, byte [rsi]
jae 0x14010ede4
sub eax, 3
jb 0x14010ee1e
shl eax, 8
movzx edx, dl
or eax, edx
inc rsi
xor eax, 0xffffffff
je 0x14010ee6d
sar eax, 1
movsxd rbp, eax
jb 0x14010ee54
jmp 0x14010ee2c
add ebx, ebx
jne 0x14010ee2a
mov ebx, dword [rsi]
sub rsi, 0xfffffffffffffffc
adc ebx, ebx
jb 0x14010ee54
inc ecx
add ebx, ebx
jne 0x14010ee3a
mov ebx, dword [rsi]
sub rsi, 0xfffffffffffffffc
adc ebx, ebx
jb 0x14010ee54
call r11
adc ecx, ecx
add ebx, ebx
jne 0x14010ee4d
mov ebx, dword [rsi]
sub rsi, 0xfffffffffffffffc
adc ebx, ebx
jae 0x14010ee3c
add ecx, 2
jmp 0x14010ee59
call r11
adc ecx, ecx
cmp rbp, 0xfffffffffffffb00
adc ecx, 2
call fcn.14010ed82
jmp 0x14010edcd
pop rsi
sub rsp, 0x28
lea rdi, [rsi + 0x10c000]
mov eax, dword [rdi]
or eax, eax
je 0x14010eec9
mov ebx, dword [rdi + 4]
lea rcx, [rax + rsi + 0x10f000]
add rbx, rsi
add rdi, 8
call qword [sym.imp.KERNEL32.DLL_LoadLibraryA]
xchg rbp, rax
mov al, byte [rdi]
inc rdi
or al, al
je 0x14010ee79
mov rcx, rdi
mov rdx, rdi
dec eax
repne scasb al, byte [rdi]
mov rcx, rbp
call qword [sym.imp.KERNEL32.DLL_GetProcAddress]
or rax, rax
je 0x14010eec3
mov qword [rbx], rax
add rbx, 8
jmp 0x14010ee99
jmp qword [sym.imp.KERNEL32.DLL_ExitProcess]
add rsp, 0x28
add rdi, 4
lea rbx, [rsi - 4]
xor eax, eax
mov al, byte [rdi]
inc rdi
or eax, eax
je 0x14010ef03
cmp al, 0xef
ja 0x14010eef5
add rbx, rax
mov rax, qword [rbx]
bswap rax
add rax, rsi
mov qword [rbx], rax
jmp 0x14010eed5
and al, 0xf
shl eax, 0x10
mov ax, word [rdi]
add rdi, 2
jmp 0x14010eee4
mov rbp, qword [sym.imp.KERNEL32.DLL_VirtualProtect]
lea rdi, [rsi - 0x1000]
mov ebx, 0x1000
push rax
mov r9, rsp
mov r8d, 4
mov rdx, rbx
mov rcx, rdi
sub rsp, 0x20
call rbp
lea rax, [rdi + 0x21f]
and byte [rax], 0x7f
and byte [rax + 0x28], 0x7f
lea r9, [rsp + 0x20]
mov r8, qword [r9]
mov rdx, rbx
mov rcx, rdi
call rbp
add rsp, 0x28
pop rbp
pop rdi
pop rsi
pop rbx
lea rax, [rsp - 0x80]
push 0
cmp rsp, rax
jne 0x14010ef57
sub rsp, 0xffffffffffffff80
jmp 0x1400e3080