joyce8/EMBER2024-capa huggingface dataset:
Function at 0x140002ae0
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rdi
push r13
sub rsp, 0x20
xor r13d, r13d
mov ebp, r9d
mov rbx, rdx
mov rdi, rcx
test rcx, rcx
je 0x140002b01
mov dword [rcx], r13d
test rdx, rdx
je 0x140002ce2
mov dword [rdx + 0x13e8], r13d
test r8, r8
je 0x140002ce2
test r9d, r9d
js 0x140002ce2
cmp byte [rdx + 0x1394], r13b
je 0x140002b51
test rcx, rcx
je 0x140002b37
mov dword [rcx], 0xffffffff
mov dword [rdx + 0x13e8], 0xffffffff
xor eax, eax
mov rbx, qword [rsp + 0x50]
add rsp, 0x20
pop r13
pop rdi
pop rbp
ret
test r9d, r9d
jne 0x140002b75
test rcx, rcx
je 0x140002b5e
mov dword [rcx], r13d
mov dword [rdx + 0x13e8], r13d
xor eax, eax
mov rbx, qword [rsp + 0x50]
add rsp, 0x20
pop r13
pop rdi
pop rbp
ret
mov rcx, qword [rdx]
mov qword [rsp + 0x40], rsi
mov dword [rdx + 0x13b8], r9d
mov qword [rsp + 0x48], r12
mov qword [rdx + 0x13b0], r8
call fcn.14000617c
test eax, eax
jne 0x140002c5a
nop dword [rax]
cmp dword [rbx + 0x13a0], r13d
jne 0x140002bff
mov rsi, qword [rbx]
mov rcx, rsi
call fcn.1400069b8
cmp eax, 0xffffffff
je 0x140002bff
mov rdx, rsi
mov ecx, eax
call fcn.140006958
mov r9, qword [rbx]
lea r12, [rbx + 8]
mov rcx, r12
mov edx, 1
mov r8d, 0x1388
call fcn.140006484
mov rcx, qword [rbx]
mov rsi, rax
call fcn.14000617c
test eax, eax
jne 0x140002c5a
mov dword [rbx + 0x1390], esi
mov dword [rbx + 0x13a0], esi
mov qword [rbx + 0x1398], r12
lea rcx, [rbx + 0x1398]
call fcn.140002920
test eax, eax
jne 0x140002cb3
mov rsi, qword [rbx]
mov rcx, rsi
call fcn.1400069b8
cmp eax, 0xffffffff
je 0x140002c2f
mov rdx, rsi
mov ecx, eax
call fcn.140006958
jmp 0x140002c41
cmp dword [rbx + 0x13a0], r13d
jne 0x140002c41
cmp dword [rbx + 0x13b8], r13d
ja 0x140002c89
cmp dword [rbx + 0x13b8], r13d
je 0x140002ca0
mov rcx, qword [rbx]
call fcn.14000617c
test eax, eax
je 0x140002ba0
test rdi, rdi
je 0x140002c65
mov dword [rdi], 0xfffffffa
mov dword [rbx + 0x13e8], 0xfffffffa
xor eax, eax
mov rsi, qword [rsp + 0x40]
mov r12, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x50]
add rsp, 0x20
pop r13
pop rdi
pop rbp
ret
test rdi, rdi
je 0x140002c94
mov dword [rdi], 0xfffffff9
mov dword [rbx + 0x13e8], 0xfffffff9
jmp 0x140002c6f
test rdi, rdi
je 0x140002ca8
mov dword [rdi], r13d
mov dword [rbx + 0x13e8], r13d
mov eax, ebp
jmp 0x140002c71
cmp eax, 4
jne 0x140002cd3
test rdi, rdi
je 0x140002cbf
mov dword [rdi], eax
sub ebp, dword [rbx + 0x13b8]
mov dword [rbx + 0x13e8], 4
mov eax, ebp
jmp 0x140002c71
test rdi, rdi
je 0x140002cda
mov dword [rdi], eax
mov dword [rbx + 0x13e8], eax
jmp 0x140002c6f
test rcx, rcx
je 0x140002ced
mov dword [rcx], 0xfffffffe
test rdx, rdx
je 0x140002cfc
mov dword [rdx + 0x13e8], 0xfffffffe
xor eax, eax
mov rbx, qword [rsp + 0x50]
add rsp, 0x20
pop r13
pop rdi
pop rbp
ret

Function at 0x140005878
Capabilities:
Terminate process

Disassembly:
xor r8d, r8d
xor edx, edx
jmp fcn.1400056e8
Function at 0x14000b58b
Capabilities:
Terminate process

Disassembly:
cmp rcx, qword [0x140018cb8]
jne 0x1400065ba
rol rcx, 0x10
test cx, 0xffff
jne 0x1400065b6
repz ret
ror rcx, 0x10
jmp 0x14000b4e4
mov qword [rsp + 8], rcx
sub rsp, 0x88
lea rcx, [0x14001ad70]
call qword [sym.imp.KERNEL32.dll_RtlCaptureContext]
mov rax, qword [0x14001ae68]
mov qword [rsp + 0x58], rax
xor r8d, r8d
lea rdx, [rsp + 0x60]
mov rcx, qword [rsp + 0x58]
call sub.KERNEL32.dll_RtlLookupFunctionEntry
mov qword [rsp + 0x50], rax
cmp qword [rsp + 0x50], 0
je 0x14000b569
mov qword [rsp + 0x38], 0
lea rax, [rsp + 0x48]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
lea rax, [0x14001ad70]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x50]
mov r8, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x60]
xor ecx, ecx
call sub.KERNEL32.dll_RtlVirtualUnwind
jmp 0x14000b58b
mov rax, qword [rsp + 0x88]
mov qword [0x14001ae68], rax
lea rax, [rsp + 0x88]
add rax, 8
mov qword [0x14001ae08], rax
mov rax, qword [0x14001ae68]
mov qword [0x14001ace0], rax
mov rax, qword [rsp + 0x90]
mov qword [0x14001adf0], rax
mov dword [0x14001acd0], 0xc0000409
mov dword [0x14001acd4], 1
mov rax, qword [0x140018cb8]
mov qword [rsp + 0x68], rax
mov rax, qword [0x140018cc0]
mov qword [rsp + 0x70], rax
call qword [sym.imp.KERNEL32.dll_IsDebuggerPresent]
mov dword [0x14001ad68], eax
mov ecx, 1
call fcn.14000dff4
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetUnhandledExceptionFilter]
lea rcx, [0x140015738]
call qword [sym.imp.KERNEL32.dll_UnhandledExceptionFilter]
cmp dword [0x14001ad68], 0
jne 0x14000b612
mov ecx, 1
call fcn.14000dff4
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov edx, 0xc0000409
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_TerminateProcess]
add rsp, 0x88
ret
Function at 0x14000e108
Capabilities:
Link many functions at runtime

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
sub rsp, 0x50
mov rax, qword [0x140018cb8]
xor rax, rsp
mov qword [rsp + 0x48], rax
mov ebp, r8d
mov r14, rdx
mov r13, rcx
call fcn.140007da0
xor ebx, ebx
cmp qword [0x14001b380], rbx
mov rdi, rax
jne 0x14000e21b
lea rcx, str.USER32.DLL
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov rsi, rax
test rax, rax
je 0x14000e2f2
lea rdx, str.MessageBoxW
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x14000e2f2
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_EncodePointer]
lea rdx, str.GetActiveWindow
mov rcx, rsi
mov qword [0x14001b380], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_EncodePointer]
lea rdx, str.GetLastActivePopup
mov rcx, rsi
mov qword [0x14001b388], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_EncodePointer]
lea rdx, str.GetUserObjectInformationW
mov rcx, rsi
mov qword [0x14001b390], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_EncodePointer]
mov r11, rax
mov qword [0x14001b3a0], rax
test rax, rax
je 0x14000e212
lea rdx, str.GetProcessWindowStation
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_EncodePointer]
mov qword [0x14001b398], rax
jmp 0x14000e222
mov rax, qword [0x14001b398]
jmp 0x14000e229
mov rax, qword [0x14001b398]
mov r11, qword [0x14001b3a0]
cmp rax, rdi
je 0x14000e290
cmp r11, rdi
je 0x14000e290
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_DecodePointer]
mov rcx, qword [0x14001b3a0]
mov rsi, rax
call qword [sym.imp.KERNEL32.dll_DecodePointer]
mov r12, rax
test rsi, rsi
je 0x14000e290
test rax, rax
je 0x14000e290
call rsi
test rax, rax
je 0x14000e28a
lea rcx, [rsp + 0x30]
mov r9d, 0xc
lea r8, [rsp + 0x38]
mov qword [rsp + 0x20], rcx
lea edx, [r9 - 0xb]
mov rcx, rax
call r12
test eax, eax
je 0x14000e28a
test byte [rsp + 0x40], 1
jne 0x14000e290
bts ebp, 0x15
jmp 0x14000e2d0
mov rcx, qword [0x14001b388]
cmp rcx, rdi
je 0x14000e2d0
call qword [sym.imp.KERNEL32.dll_DecodePointer]
test rax, rax
je 0x14000e2d0
call rax
mov rbx, rax
test rax, rax
je 0x14000e2d0
mov rcx, qword [0x14001b390]
cmp rcx, rdi
je 0x14000e2d0
call qword [sym.imp.KERNEL32.dll_DecodePointer]
test rax, rax
je 0x14000e2d0
mov rcx, rbx
call rax
mov rbx, rax
mov rcx, qword [0x14001b380]
call qword [sym.imp.KERNEL32.dll_DecodePointer]
test rax, rax
je 0x14000e2f2
mov r9d, ebp
mov r8, r14
mov rdx, r13
mov rcx, rbx
call rax
jmp 0x14000e2f4
xor eax, eax
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.1400065a0
add rsp, 0x50
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
Function at 0x404700
Capabilities:
Access peb ldr_data

Disassembly:
sub rsp, 0x70
mov qword [rsp + 0x68], rbp
lea rbp, [rsp + 0x68]
mov rax, qword gs:[0x28]
mov rax, qword [rax]
mov qword [rsp + 0x60], rax
mov rcx, qword [rax + 0x30]
cmp qword [rcx + 0x90], rax
jne 0x4048a4
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
mov rcx, qword [rcx + 0x30]
nop
inc dword [rcx + 0x244]
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
mov rdx, qword [rcx + 0x30]
nop
mov rbx, rcx
mov qword [rdx + 0x138], rcx
mov rcx, qword [rbx + 0x30]
mov qword [rbx + 0xd8], rcx
mov rcx, qword [rax + 0x30]
movups xmm0, xmmword [rcx + 0x2e0]
movups xmmword [rsp + 0x20], xmm0
movups xmm0, xmmword [rcx + 0x2f0]
movups xmmword [rsp + 0x30], xmm0
movups xmm0, xmmword [rcx + 0x300]
movups xmmword [rsp + 0x40], xmm0
mov rcx, qword [rax + 0x70]
mov qword [rsp + 0x50], rcx
mov rdx, qword [rax + 0x78]
mov qword [rsp + 0x18], rdx
call fcn.00466000
mov rax, qword [rsp + 0x60]
mov rcx, qword [rax + 0x30]
mov byte [rcx + 0xe8], 0
mov rcx, qword [rax + 0x30]
xor edx, edx
xchg dword [rcx + 0x350], edx
mov rcx, qword [rsp + 0x78]
mov qword [rsp], rcx
mov rcx, qword [rsp + 0x80]
mov qword [rsp + 8], rcx
mov rcx, qword [rsp + 0x88]
mov qword [rsp + 0x10], rcx
call fcn.00404900
mov rax, qword [rsp + 0x60]
mov rcx, qword [rax + 0x30]
mov qword [rsp + 0x58], rcx
jmp 0x40482f
nop
mov rax, qword [0x0060cfe0]
mov qword [rsp], rax
mov dword [rsp + 8], 0
call fcn.0046cbe0
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x58]
mov rdx, rax
xor eax, eax
mov ebx, 1
lock cmpxchg dword [rcx + 0x350], ebx
sete sil
test sil, sil
je 0x40480c
mov rax, qword [rdx + 0x30]
mov byte [rax + 0xe8], 1
mov rax, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x18]
mov qword [rsp], rcx
mov qword [rsp + 8], rax
call fcn.00442cc0
mov rax, qword [rsp + 0x60]
mov rax, qword [rax + 0x30]
movups xmm0, xmmword [rsp + 0x20]
movups xmmword [rax + 0x2e0], xmm0
movups xmm0, xmmword [rsp + 0x30]
movups xmmword [rax + 0x2f0], xmm0
movups xmm0, xmmword [rsp + 0x40]
movups xmmword [rax + 0x300], xmm0
mov rbp, qword [rsp + 0x68]
add rsp, 0x70
ret
call fcn.00439d60
lea rax, [0x00541f39]
mov qword [rsp], rax
mov qword [rsp + 8], 0x1e
nop dword [rax]
call fcn.0043a7e0
call fcn.00439e00
mov dword [rsp], 2
call fcn.00433ce0
mov rax, qword [rsp + 0x60]
nop dword [rax + rax]
jmp 0x404734
Function at 0x422480
Capabilities:
Hash data using murmur3

Disassembly:
sub rsp, 0x18
mov qword [rsp + 0x10], rbp
lea rbp, [rsp + 0x10]
cmp byte [0x00650ad4], 0
jne 0x4225e5
mov rdx, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x20]
sub rdx, qword [rbx + 0x18]
nop
test rdx, rdx
jne 0x42258e
xor eax, eax
nop
nop
nop
mov rcx, rax
shr rax, 3
and rcx, 7
mov edx, 1
shl edx, cl
nop
add rax, qword [rbx + 0x50]
lock or byte [rax], dl
nop
nop
mov rcx, qword [rbx + 0x18]
nop
movabs rdx, 0x800000000000
lea rax, [rdx + rcx]
mov rdx, rax
shr rax, 0x2a
cmp rax, 0x40
jae 0x4225da
lea rbx, [0x00632978]
mov rax, qword [rbx + rax*8]
shr rdx, 0x16
and rdx, 0xfffff
mov rdx, qword [rax + rdx*8]
test byte [rdx], al
test byte [rax], al
mov rax, rcx
shr rcx, 0x10
and rcx, 0x3f
movzx ebx, byte [rdx + rcx + 0x21040]
lea rdx, [rdx + rcx]
lea rdx, [rdx + 0x21040]
shr rax, 0xd
and rax, 7
mov rcx, rax
mov esi, 1
shl esi, cl
test sil, bl
jne 0x42254f
lock or byte [rdx], sil
mov rax, qword gs:[0x28]
mov rax, qword [rax]
mov rax, qword [rax + 0x30]
mov rax, qword [rax + 0xa0]
test byte [rax], al
mov rcx, qword [rsp + 0x30]
add qword [rax + 0x16a8], rcx
mov rcx, qword [rsp + 0x38]
add qword [rax + 0x16b0], rcx
mov rbp, qword [rsp + 0x10]
add rsp, 0x18
ret
cmp word [rbx + 0x5e], 0
je 0x4225aa
movzx ecx, byte [rbx + 0x65]
cmp cl, 0x40
sbb rax, rax
shr rdx, cl
and rax, rdx
jmp 0x4224b5
movzx ecx, byte [rbx + 0x65]
cmp cl, 0x40
sbb rax, rax
movzx esi, byte [rbx + 0x66]
cmp sil, 0x40
sbb rdi, rdi
shr rdx, cl
and rax, rdx
movzx edx, word [rbx + 0x5c]
imul rax, rdx
mov ecx, esi
shr rax, cl
and rax, rdi
jmp 0x4224b5
mov ecx, 0x40
nop
call fcn.0046b5a0
lea rax, [0x005446c6]
mov qword [rsp], rax
mov qword [rsp + 8], 0x2c
call fcn.00438580
nop
int3
Function at 0x4299c0
Capabilities:
Access peb ldr_data

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
cmp rsp, qword [rcx + 0x10]
jbe 0x429c2e
sub rsp, 0x58
mov qword [rsp + 0x50], rbp
lea rbp, [rsp + 0x50]
nop
lea rax, [0x00639330]
mov qword [rsp], rax
call fcn.0040be80
lea rax, [0x006392a0]
mov qword [rsp], rax
call fcn.0041a7c0
mov rax, qword [rsp + 8]
mov qword [rsp + 0x48], rax
nop
nop
lea rcx, [0x00639330]
mov qword [rsp], rcx
call fcn.0040c0e0
mov rax, qword [rsp + 0x48]
mov byte [rax + 0xa], 1
lea rdi, [rax + 0x10]
cmp dword [0x00650da0], 0
jne 0x429c1f
mov rcx, qword [rsp + 0x68]
mov qword [rax + 0x10], rcx
mov qword [rsp + 0x40], rdi
mov rcx, qword [rsp + 0x70]
mov qword [rax + 0x18], rcx
cmp dword [0x00650da0], 0
nop dword [rax]
jne 0x429bf8
mov rcx, qword [rsp + 0x78]
mov qword [rax + 0x20], rcx
mov rcx, qword [rsp + 0x80]
mov qword [rax + 0x28], rcx
mov rcx, qword [rsp + 0x60]
mov qword [rsp], rcx
mov qword [rsp + 8], rax
call fcn.00429520
cmp byte [rsp + 0x10], 0
je 0x429b96
cmp dword [0x00650b18], 0
jne 0x429ab4
mov byte [rsp + 0x88], 1
mov rbp, qword [rsp + 0x50]
add rsp, 0x58
ret
mov rax, qword [rsp + 0x60]
mov qword [rsp], rax
xorps xmm0, xmm0
movups xmmword [rsp + 8], xmm0
call fcn.00415180
mov rax, qword gs:[0x28]
mov rax, qword [rax]
mov rcx, qword [rax + 0x30]
mov rdx, qword [rsp + 0x18]
nop
inc dword [rcx + 0xd8]
mov rcx, qword [rax + 0x30]
mov qword [rsp + 0x30], rcx
mov rbx, qword [rcx + 0xa0]
test byte [rbx], al
test byte [rax], al
mov qword [rsp], rdx
lea rax, [rbx + 0x1698]
mov qword [rsp + 0x38], rax
mov qword [rsp + 8], rax
call fcn.00421520
mov rax, qword [rsp + 0x40]
mov qword [rsp], rax
mov qword [rsp + 8], 8
lea rax, [0x005f5160]
mov qword [rsp + 0x10], rax
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x18], rax
mov qword [rsp + 0x20], 0
call fcn.00421380
nop
mov rax, qword gs:[0x28]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x30]
mov edx, dword [rcx + 0xd8]
lea ebx, [rdx - 1]
mov dword [rcx + 0xd8], ebx
cmp edx, 1
jne 0x429aa2
cmp byte [rax + 0xb1], 0
je 0x429aa2
mov qword [rax + 0x10], 0xfffffffffffffade
jmp 0x429aa2
nop
nop
lea rax, [0x00639330]
mov qword [rsp], rax
call fcn.0040be80
nop
mov rax, qword [0x006392d0]
sub rax, qword [0x006392a0]
mov qword [0x006392d0], rax
mov rax, qword [0x006392b8]
mov rcx, qword [rsp + 0x48]
mov qword [rcx], rax
mov qword [0x006392b8], rcx
nop
nop
lea rax, [0x00639330]
mov qword [rsp], rax
call fcn.0040c0e0
mov byte [rsp + 0x88], 0
mov rbp, qword [rsp + 0x50]
add rsp, 0x58
ret
lea rcx, [rax + 0x20]
mov rdi, rcx
mov rbx, qword [rsp + 0x78]
call fcn.0046b220
lea rdi, [rax + 0x28]
mov rcx, qword [rsp + 0x80]
call fcn.0046b1e0
jmp 0x429a7b
mov rcx, qword [rsp + 0x68]
call fcn.0046b1e0
jmp 0x429a48
call fcn.004693a0
jmp fcn.004299c0
Function at 0x454e80
Capabilities:
Encrypt data using rc4 prga

Disassembly:
sub rsp, 0x18
mov qword [rsp + 0x10], rbp
lea rbp, [rsp + 0x10]
mov rcx, qword [rsp + 0x28]
test rcx, rcx
jbe 0x455039
mov rdx, qword [rsp + 0x20]
movzx ebx, byte [rdx]
test ebx, ebx
jne 0x454eb6
movzx esi, byte [rsp + 0x48]
test sil, sil
je 0x454fe7
bt ebx, 7
nop word [rax + rax]
jae 0x454fd9
xor eax, eax
xor ebx, ebx
xor esi, esi
jmp 0x454ee0
lea esi, [rcx + 7]
mov rcx, rax
mov eax, r8d
nop word [rax + rax]
cmp rcx, rax
jbe 0x455034
movzx edi, byte [rax + rdx]
lea r8d, [rax + 1]
mov r9d, edi
and edi, 0x7f
mov rax, rcx
mov ecx, esi
shl edi, cl
or ebx, edi
test r9b, 0x80
jne 0x454ece
mov esi, ebx
and ebx, 1
neg ebx
shr esi, 1
xor ebx, esi
mov rsi, qword [rsp + 0x40]
add dword [rsi], ebx
nop dword [rax + rax]
cmp rax, r8
jb 0x455029
sub rax, r8
mov rbx, qword [rsp + 0x30]
sub rbx, r8
mov rsi, rbx
neg rbx
sar rbx, 0x3f
and r8, rbx
lea rbx, [rdx + r8]
test rax, rax
jbe 0x45501f
movzx edx, byte [rdx + r8]
bt edx, 7
jae 0x454fd1
xor ecx, ecx
xor edx, edx
xor edi, edi
nop
jmp 0x454f68
lea edi, [rcx + 7]
mov ecx, r9d
cmp rax, rcx
jbe 0x455012
movzx r8d, byte [rcx + rbx]
lea r9d, [rcx + 1]
mov r10d, r8d
and r8d, 0x7f
mov ecx, edi
shl r8d, cl
or edx, r8d
test r10b, 0x80
jne 0x454f62
cmp rax, r9
jb 0x455007
mov rcx, qword [rsp + 0x38]
add qword [rcx], rdx
sub rsi, r9
mov rcx, rsi
neg rsi
sar rsi, 0x3f
and rsi, r9
lea rdx, [rbx + rsi]
mov qword [rsp + 0x50], rdx
sub rax, r9
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], rcx
mov byte [rsp + 0x68], 1
mov rbp, qword [rsp + 0x10]
add rsp, 0x18
ret
mov r9d, 1
jmp 0x454f8f
mov rax, rcx
mov r8d, 1
jmp 0x454f06
mov qword [rsp + 0x50], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0x58], xmm0
mov byte [rsp + 0x68], 0
mov rbp, qword [rsp + 0x10]
add rsp, 0x18
ret
mov rcx, rax
mov eax, r9d
call fcn.0046b640
mov rdx, rax
mov eax, ecx
mov rcx, rdx
call fcn.0046b580
mov rcx, rax
xor eax, eax
call fcn.0046b580
mov rcx, rax
mov eax, r8d
call fcn.0046b640
call fcn.0046b580
xor eax, eax
nop dword [rax + rax]
call fcn.0046b580
nop
int3

Function at 0x45c720
Capabilities:
Access peb ldr_data

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
cmp rsp, qword [rcx + 0x10]
jbe 0x45c801
sub rsp, 0x60
mov qword [rsp + 0x58], rbp
lea rbp, [rsp + 0x58]
mov rax, qword gs:[0x28]
mov rax, qword [rax]
mov qword [rsp + 8], 0
mov qword [rsp + 0x10], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0x18], xmm0
movups xmmword [rsp + 0x28], xmm0
movups xmmword [rsp + 0x38], xmm0
movups xmmword [rsp + 0x48], xmm0
lea rcx, [0x004646e0]
mov qword [rsp + 0x10], rcx
mov rcx, qword [rsp + 0x60]
mov qword [rsp + 0x18], rcx
lea rcx, [rsp + 0x68]
mov qword [rsp + 0x20], rcx
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x48], rax
lea rax, [rsp + 8]
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x10]
mov qword [rsp], rax
call fcn.00469240
mov rax, qword [rsp + 8]
mov qword [rsp + 0x88], rax
mov rbp, qword [rsp + 0x58]
add rsp, 0x60
nop
ret
call fcn.004693a0
jmp fcn.0045c720
Function at 0x46af80
Capabilities:
Encrypt data using aes via x86 extensions

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
cmp rsp, qword [rcx + 0x10]
jbe 0x403160
sub rsp, 0x28
mov qword [rsp + 0x20], rbp
lea rbp, [rsp + 0x20]
mov rax, qword [rsp + 0x30]
mov rcx, qword [rax]
mov rax, qword [rax + 8]
mov qword [rsp], rcx
mov rcx, qword [rsp + 0x38]
mov qword [rsp + 8], rcx
mov qword [rsp + 0x10], rax
call fcn.0040a300
mov rax, qword [rsp + 0x18]
mov qword [rsp + 0x40], rax
mov rbp, qword [rsp + 0x20]
add rsp, 0x28
ret
call fcn.004693a0
jmp 0x403100
cmp byte [0x00650ad3], 0
je 0x46af9f
mov rax, qword [rsp + 8]
mov rcx, qword [rax + 8]
mov rax, qword [rax]
lea rdx, [rsp + 0x18]
jmp 0x4683c0
jmp 0x403100

Function at 0x46afc0
Capabilities:
Encrypt data using aes via x86 extensions

Disassembly:
mov rax, qword [0x00650e20]
nop
mov rcx, qword [rsp + 8]
mov ecx, dword [rcx]
mov rdx, qword [rsp + 0x10]
lea rax, [rdx + rax*4]
xor rax, rcx
shl rcx, 0x20
xor rcx, rax
movabs rax, 0xea38ec9079f01541
imul rax, rcx
rol rax, 0x1f
movabs rcx, 0x2723a30d96da1399
imul rcx, rax
mov rax, rcx
shr rcx, 0x1d
xor rcx, rax
movabs rax, 0x83cf8eadf876d2d7
imul rax, rcx
mov rcx, rax
shr rax, 0x20
xor rax, rcx
mov qword [rsp + 0x18], rax
ret
cmp byte [0x00650ad3], 0
je 0x46affc
mov rax, qword [rsp + 8]
movq xmm0, qword [rsp + 0x10]
pinsrd xmm0, dword [rax], 2
aesenc xmm0, xmmword [0x006510a0]
aesenc xmm0, xmmword [0x006510b0]
aesenc xmm0, xmmword [0x006510c0]
movq qword [rsp + 0x18], xmm0
ret
jmp 0x40a580

Function at 0x46b020
Capabilities:
Encrypt data using aes via x86 extensions

Disassembly:
mov rax, qword [0x00650e20]
mov rcx, qword [rsp + 8]
mov rcx, qword [rcx]
mov rdx, qword [rsp + 0x10]
lea rax, [rdx + rax*8]
xor rcx, rax
movabs rax, 0xea38ec9079f01541
imul rax, rcx
rol rax, 0x1f
movabs rcx, 0x2723a30d96da1399
imul rcx, rax
mov rax, rcx
shr rcx, 0x1d
xor rax, rcx
movabs rcx, 0x83cf8eadf876d2d7
imul rcx, rax
mov rax, rcx
shr rcx, 0x20
xor rax, rcx
mov qword [rsp + 0x18], rax
ret
cmp byte [0x00650ad3], 0
je 0x46b05d
mov rax, qword [rsp + 8]
movq xmm0, qword [rsp + 0x10]
pinsrq xmm0, qword [rax], 1
aesenc xmm0, xmmword [0x006510a0]
aesenc xmm0, xmmword [0x006510b0]
aesenc xmm0, xmmword [0x006510c0]
movq qword [rsp + 0x18], xmm0
ret
jmp 0x40a600

Function at 0x46c8c0
Capabilities:
Write file on windows

Disassembly:
sub rsp, 0x30
mov rcx, 0xfffffffffffffff4
mov qword [rsp], rcx
mov rax, qword [sym.imp.kernel32.dll_GetStdHandle]
call rax
mov rcx, rax
mov qword [rsp], rcx
lea rdx, [0x00651020]
mov qword [rsp + 8], rdx
lea r8d, [0x00650af0]
mov qword [rsp + 0x10], r8
lea r9, [rsp + 0x28]
mov qword [r9], 0
mov qword [rsp + 0x18], r9
mov qword [rsp + 0x20], 0
mov rax, qword [sym.imp.kernel32.dll_WriteFile]
call rax
add rsp, 0x30
ret
Function at 0x476340
Capabilities:
Encode data using base64

Disassembly:
sub rsp, 0x18
mov qword [rsp + 0x10], rbp
lea rbp, [rsp + 0x10]
mov rdx, qword [rsp + 0x20]
mov rbx, qword [rdx + 8]
lea rsi, [rbx + 0x2e]
imul rsi, rsi, 0xffffffffffffffe4
movabs rax, 0x5816058160581606
mov rcx, rdx
imul rsi
sar rdx, 5
sar rsi, 0x3f
sub rdx, rsi
lea rsi, [rdx + 0x15c]
sar rsi, 0x3f
shr rsi, 0x3d
lea rdx, [rsi + rdx]
lea rdx, [rdx + 0x15c]
sar rdx, 3
cmp rdx, 0x57
jae 0x476419
lea rsi, [rdx + rdx*2]
lea rdi, [0x00601880]
mov r8, qword [rdi + rsi*8 + 8]
lea r9, [r8 + rbx]
lea r9, [r9 + 0x40]
cmp r9, 0xffffffffffffffc4
jge 0x4763c2
inc rdx
nop
jmp 0x476398
cmp r9, 0xffffffffffffffe0
jle 0x4763cd
dec rdx
jmp 0x476398
mov rbx, qword [rdi + rsi*8]
mov rax, qword [rcx]
mov rsi, rdx
mul rbx
shr rax, 0x3f
add rdx, rax
mov qword [rcx], rdx
mov rdx, qword [rcx + 8]
lea rdx, [rdx + r8]
lea rdx, [rdx + 0x40]
mov qword [rcx + 8], rdx
mov rcx, rsi
shl rsi, 3
lea rdx, [rsi - 0x15c]
neg rdx
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x30], rcx
mov rbp, qword [rsp + 0x10]
add rsp, 0x18
ret
mov rax, rdx
mov ecx, 0x57
call fcn.0046b580
nop
int3
Function at 0x489580
Capabilities:
Hash data using fnv

Disassembly:
mov rax, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov edx, dword [rsp + 8]
xor ebx, ebx
jmp 0x4895a1
movzx esi, byte [rax + rbx]
inc rbx
imul edx, edx, 0x1000193
xor edx, esi
cmp rcx, rbx
jg 0x489592
mov dword [rsp + 0x28], edx
ret
Function at 0x4f2d20
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
cmp rsp, qword [rcx + 0x10]
jbe 0x4f2e51
sub rsp, 0x50
mov qword [rsp + 0x48], rbp
lea rbp, [rsp + 0x48]
mov rdx, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x68]
mov r8, qword [rsp + 0x60]
xor eax, eax
xor ecx, ecx
jmp 0x4f2d6f
add rax, 2
lea ecx, [r10 + 1]
cmp rax, rdx
jge 0x4f2de3
jae 0x4f2e48
mov r9d, dword [rbx + rax*4]
lea r10, [rax + 1]
cmp r10, rdx
jae 0x4f2e3d
mov r10d, dword [rbx + rax*4 + 4]
dec r9d
cmp r9d, ecx
jl 0x4f2d67
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x3c], r10d
mov qword [rsp], rsi
mov qword [rsp + 8], r8
mov qword [rsp + 0x10], rdi
mov dword [rsp + 0x18], ecx
mov dword [rsp + 0x1c], r9d
call fcn.004f26c0
mov rsi, qword [rsp + 0x20]
mov r8, qword [rsp + 0x28]
mov rdi, qword [rsp + 0x30]
mov rax, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x70]
mov r10d, dword [rsp + 0x3c]
jmp 0x4f2d67
cmp ecx, 0x10ffff
jle 0x4f2e0d
mov qword [rsp + 0x88], rsi
mov qword [rsp + 0x90], r8
mov qword [rsp + 0x98], rdi
mov rbp, qword [rsp + 0x48]
add rsp, 0x50
ret
mov qword [rsp], rsi
mov qword [rsp + 8], r8
mov qword [rsp + 0x10], rdi
mov dword [rsp + 0x18], ecx
mov dword [rsp + 0x1c], 0x10ffff
call fcn.004f26c0
mov rsi, qword [rsp + 0x20]
mov r8, qword [rsp + 0x28]
mov rdi, qword [rsp + 0x30]
jmp 0x4f2deb
mov rax, r10
mov rcx, rdx
call fcn.0046b580
mov rcx, rdx
call fcn.0046b580
nop
call fcn.004693a0
jmp fcn.004f2d20