joyce8/EMBER2024-capa huggingface dataset:
Function at 0x14000720c
Capabilities:
Terminate thread

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov rdi, rcx
call fcn.14000719c
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_TerminateThread]
lea rcx, [0x140021170]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [0x1400205b8]
jmp 0x140007248
cmp qword [rbx + 0x18], rdi
je 0x14000724f
mov rbx, qword [rbx]
test rbx, rbx
jne 0x14000723f
jmp 0x140007269
mov rcx, qword [rbx + 0x10]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rdx, [rbx + 0x10]
lea rcx, [0x1400205b8]
call fcn.140011c68
lea rcx, [0x140021170]
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
jmp qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add al, 4
add al, 0xff
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add dword [rcx], eax
add edi, edi
add al, byte [rdx]
add bh, bh
invalid
Function at 0x40f800
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x40f979
push rbp
mov rbp, rsp
sub rsp, 0x48
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], 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.00428080
xorps xmm15, xmm15
mov r14, qword [0x0057d248]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x58]
mov rcx, rax
cmp qword [rsp + 0x28], rax
je 0x40f870
mov rbx, qword [rsp + 0x60]
jmp 0x40f880
add rsp, 0x48
pop rbp
ret
sub rax, rbx
add rcx, rbx
mov rbx, rax
nop
test rbx, rbx
jbe 0x40f8a5
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x40], rcx
mov rax, rbx
jmp 0x40f8b5
cmp rbx, 0x1000
jae 0x40f876
nop dword [rax]
jmp 0x40f929
add rsp, 0x48
pop rbp
ret
shr rbx, 1
and rbx, 0xfffffffffffff000
cmp rbx, 0x1000
jae 0x40f8c2
xor edx, edx
jmp 0x40f920
mov qword [rsp + 0x30], rbx
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.00428080
xorps xmm15, xmm15
mov r14, qword [0x0057d248]
mov r14, qword gs:[r14]
mov r14, qword [r14]
cmp qword [rsp + 0x28], 0
sete al
mov rcx, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x30]
mov edx, eax
mov rax, qword [rsp + 0x38]
nop
test dl, dl
jne 0x40f8ab
jmp 0x40f894
call fcn.0044d7a0
xorps xmm15, xmm15
mov r14, qword [0x0057d248]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov eax, dword [rsp]
cmp eax, 8
jne 0x40f960
lea rax, [0x00474b43]
mov ebx, 0xd
call fcn.0042a5c0
nop dword [rax]
cmp eax, 0x5af
je 0x40f948
lea rax, [0x004774fb]
mov ebx, 0x1f
call fcn.0042a5c0
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
call fcn.0044a100
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
jmp fcn.0040f800
Function at 0x4162c0
Capabilities:
Hash data using murmur3

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x4164da
push rbp
mov rbp, rsp
sub rsp, 0x30
test rax, 7
jne 0x4164c8
mov qword [rsp + 0x40], rax
mov rdx, qword [rdi + 0x50]
test byte [rdx], al
mov r9, r8
shr r9, 3
mov r10, r8
and r10d, 7
nop
mov r11, rcx
mov rcx, r10
mov r12d, 1
shl r12d, cl
lea r10, [rdx + r9]
cmp byte [0x0057d053], 0
jne 0x416401
cmp dword [0x0057d550], 0
nop
jle 0x416349
cmp qword [rdi + 0xa0], r8
ja 0x416349
mov r8, qword [rdi + 0x48]
test byte [r8], al
movzx r8d, byte [r9 + r8]
nop
nop dword [rax + rax]
test r12b, r8b
je 0x416478
movzx edx, byte [r9 + rdx]
test r12b, dl
jne 0x4163fb
nop
lock or byte [r10], r12b
mov rcx, qword [rdi + 0x18]
movabs rdx, 0x800000000000
add rdx, rcx
mov r8, rdx
shr rdx, 0x2a
nop
nop
nop
nop word [rax + rax]
cmp rdx, 0x40
jae 0x41646b
lea r9, [0x0054f438]
mov rdx, qword [r9 + rdx*8]
test byte [rdx], al
mov r9, rcx
shr r9, 0x10
and r9d, 0x3f
shr rcx, 0xd
and ecx, 7
mov r10d, 1
shl r10d, cl
shr r8, 0x16
and r8d, 0xfffff
mov rdx, qword [rdx + r8*8]
test byte [rdx], al
movzx r8d, byte [rdx + r9 + 0x11440]
lea rdx, [rdx + r9]
lea rdx, [rdx + 0x11440]
test r10b, r8b
jne 0x4163e0
lock or byte [rdx], r10b
movzx edx, byte [rdi + 0x6a]
test dl, 1
je 0x416422
mov rax, qword [rsi + 0x10]
add rax, qword [rdi + 0x70]
mov qword [rsi + 0x10], rax
add rsp, 0x30
pop rbp
ret
add rsp, 0x30
pop rbp
ret
mov qword [rsp + 0x60], rsi
mov rcx, r11
mov rdi, r10
mov esi, r12d
call fcn.0040f420
test al, al
jne 0x416458
mov rax, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x60]
prefetcht0 byte [rax]
mov rdx, qword [rsi]
test rdx, rdx
je 0x416447
mov rdi, qword [rdx + 0x10]
cmp rdi, 0xfd
je 0x416447
jae 0x41645e
mov qword [rdx + rdi*8 + 0x18], rax
inc qword [rdx + 0x10]
jmp 0x416452
mov rbx, rax
mov rax, rsi
call fcn.0041b880
add rsp, 0x30
pop rbp
ret
add rsp, 0x30
pop rbp
ret
mov rax, rdi
mov ecx, 0xfd
call fcn.0044c360
mov rax, rdx
mov ecx, 0x40
call fcn.0044c380
lea rax, [0x0047451a]
mov rcx, rbx
mov rdi, r11
mov ebx, 4
call fcn.00416540
lea rax, [0x004744f7]
mov ebx, 3
mov rcx, qword [rsp + 0x40]
mov rdi, 0xffffffffffffffff
call fcn.00416540
mov rdx, qword [r14 + 0x30]
mov byte [rdx + 0xf9], 2
lea rax, [0x00475725]
mov ebx, 0x13
call fcn.0042a5c0
lea rax, [0x00477ca7]
mov ebx, 0x23
call fcn.0042a5c0
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x30], r8
call fcn.0044a100
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
mov r8, qword [rsp + 0x30]
nop dword [rax + rax]
jmp fcn.004162c0
Function at 0x416640
Capabilities:
Hash data using murmur3

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x10
cmp byte [0x0057d053], 0
jne 0x416727
sub rbx, qword [rax + 0x18]
mov rdx, qword [rax + 0x50]
test byte [rdx], al
mov esi, dword [rax + 0x64]
imul rbx, rsi
mov rsi, rbx
shr rbx, 0x20
shr rsi, 0x23
and ebx, 7
mov rdi, rcx
mov rcx, rbx
mov r8d, 1
shl r8d, cl
add rdx, rsi
nop
nop
nop
nop
lock or byte [rdx], r8b
mov rcx, qword [rax + 0x18]
movabs rdx, 0x800000000000
lea rax, [rdx + rcx]
mov rdx, rax
shr rdx, 0x2a
nop
nop
nop
cmp rdx, 0x40
jae 0x41671a
lea rbx, [0x0054f438]
mov rdx, qword [rbx + rdx*8]
test byte [rdx], al
mov rbx, rcx
shr rbx, 0x10
and ebx, 0x3f
shr rcx, 0xd
and ecx, 7
mov esi, 1
shl esi, cl
shr rax, 0x16
and eax, 0xfffff
mov rax, qword [rdx + rax*8]
test byte [rax], al
movzx edx, byte [rax + rbx + 0x11440]
lea rax, [rax + rbx]
lea rax, [rax + 0x11440]
test sil, dl
jne 0x416700
lock or byte [rax], sil
mov rax, qword [r14 + 0x30]
mov rax, qword [rax + 0xa0]
test byte [rax], al
add qword [rax + 0x1250], rdi
add rsp, 0x10
pop rbp
ret
mov rax, rdx
mov ecx, 0x40
call fcn.0044c380
lea rax, [0x00478b53]
mov ebx, 0x2c
call fcn.0042a5c0
nop
int3

Function at 0x418500
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x418606
push rbp
mov rbp, rsp
sub rsp, 0x50
mov qword [rsp + 0x70], rcx
mov byte [rsp + 0x17], dil
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x18], 0
jmp 0x418543
mov rax, qword [rsp + 0x60]
mov rcx, rdx
mov rbx, qword [rsp + 0x68]
movzx edi, byte [rsp + 0x17]
cmp qword [rsp + 0x18], rbx
jae 0x4185fb
test byte [rax], al
lea rcx, [rax + 0x100b8]
mov ebx, edi
mov rax, rcx
nop dword [rax]
call fcn.004190a0
test rax, rax
je 0x4185fb
movups xmmword [rsp + 0x20], xmm15
movups xmmword [rsp + 0x30], xmm15
movups xmmword [rsp + 0x40], xmm15
lea rcx, [0x00418640]
mov qword [rsp + 0x20], rcx
lea rdx, [rsp + 0x18]
mov qword [rsp + 0x28], rdx
mov rdx, qword [rsp + 0x60]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x40], rbx
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x48], rax
lea rbx, [rsp + 0x20]
mov qword [rsp], rbx
nop dword [rax]
call fcn.00449fc0
xorps xmm15, xmm15
mov r14, qword [0x0057d248]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rdx, qword [rsp + 0x70]
nop dword [rax]
test rdx, rdx
jne 0x4185e9
xor eax, eax
jmp 0x4185f3
mov rax, qword [rdx]
call rax
mov rdx, qword [rsp + 0x70]
test al, al
je 0x418531
mov rax, qword [rsp + 0x18]
add rsp, 0x50
pop rbp
ret
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov byte [rsp + 0x20], dil
call fcn.0044a100
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
movzx edi, byte [rsp + 0x20]
jmp fcn.00418500
Function at 0x424bc0
Capabilities:
Hash data using murmur3

Disassembly:
cmp rsp, qword [r14 + 0x18]
jbe 0x424e46
push rbp
mov rbp, rsp
sub rsp, 0x38
test byte [rax], al
mov rcx, qword [rax + 0x1268]
lea rsi, [rax + 0x1278]
sub rcx, rsi
shr rcx, 3
cmp rcx, 0x200
ja 0x424e3a
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x30], rcx
mov qword [rax + 0x1268], 0
cmp byte [0x0057d053], 0
jne 0x424c1a
xor edx, edx
xor ebx, ebx
jmp 0x424c60
xor edx, edx
jmp 0x424c45
mov qword [rsp + 0x28], rdx
mov rcx, qword [rax + rdx*8 + 0x1278]
mov rax, rcx
call fcn.00416260
mov rdx, qword [rsp + 0x28]
inc rdx
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x30]
cmp rdx, rcx
jl 0x424c1e
add rax, 0x1268
call fcn.00424b40
add rsp, 0x38
pop rbp
ret
inc rdx
nop
cmp rdx, rcx
jge 0x424dd4
mov rsi, qword [rax + rdx*8 + 0x1278]
cmp rsi, 0x1000
jb 0x424c5b
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rbx
mov rax, rsi
xor ebx, ebx
mov rcx, rbx
call fcn.0040cb60
test rax, rax
jne 0x424cac
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x20]
jmp 0x424c5b
mov rsi, qword [rbx + 0x50]
test byte [rsi], al
mov r8, rcx
shr r8, 3
movzx r9d, byte [rsi + r8]
and ecx, 7
mov r10d, 1
shl r10d, cl
nop
add rsi, r8
test r10b, r9b
je 0x424cec
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x20]
jmp 0x424c5b
nop
lock or byte [rsi], r10b
mov rcx, qword [rbx + 0x18]
movabs rsi, 0x800000000000
lea r8, [rsi + rcx]
mov r9, r8
shr r8, 0x2a
nop
nop
nop
cmp r8, 0x40
jae 0x424e2d
lea r10, [0x0054f438]
mov r8, qword [r10 + r8*8]
test byte [r8], al
mov r10, rcx
shr r10, 0x10
and r10d, 0x3f
shr rcx, 0xd
and ecx, 7
mov r11d, 1
shl r11d, cl
shr r9, 0x16
and r9d, 0xfffff
mov r8, qword [r8 + r9*8]
test byte [r8], al
movzx r9d, byte [r8 + r10 + 0x11440]
lea r8, [r8 + r10]
lea r8, [r8 + 0x11440]
test r11b, r9b
jne 0x424d6f
lock or byte [r8], r11b
movzx r8d, byte [rbx + 0x6a]
test r8b, 1
je 0x424da5
mov rax, qword [rsp + 0x48]
mov r8, qword [rax + 0x1250]
add r8, qword [rbx + 0x70]
mov qword [rax + 0x1250], r8
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x20]
jmp 0x424c5b
mov r8, qword [rsp + 0x20]
mov rcx, qword [rsp + 0x30]
cmp r8, rcx
jae 0x424e25
mov rbx, qword [rsp + 0x48]
mov qword [rbx + r8*8 + 0x1278], rax
inc r8
mov rax, rbx
mov rdx, qword [rsp + 0x28]
mov rbx, r8
jmp 0x424c5b
cmp rbx, 0x200
ja 0x424e14
lea rdx, [rax + 0x1278]
lea rsi, [rax + 0x1240]
mov rcx, rbx
mov edi, 0x200
mov rbx, rdx
mov rax, rsi
call fcn.0041b9a0
mov rax, qword [rsp + 0x48]
add rax, 0x1268
call fcn.00424b40
add rsp, 0x38
pop rbp
ret
mov rcx, rbx
mov edx, 0x200
nop dword [rax]
call fcn.0044c3e0
mov rax, r8
call fcn.0044c360
mov rax, r8
mov ecx, 0x40
call fcn.0044c380
mov edx, 0x200
nop
call fcn.0044c3c0
nop
mov qword [rsp + 8], rax
call fcn.004508e0
mov rax, qword [rsp + 8]
jmp fcn.00424bc0
Function at 0x4279a0
Capabilities:
Access peb ldr_data

Disassembly:
lea r12, [rsp - 0x20]
cmp r12, qword [r14 + 0x10]
jbe 0x427c59
push rbp
mov rbp, rsp
sub rsp, 0x98
mov qword [rsp + 0x48], 0
mov rax, qword [sym.imp.kernel32.dll_DuplicateHandle]
lea rcx, [rsp + 0x48]
mov qword [rsp], rax
mov qword [rsp + 8], 0xffffffffffffffff
mov qword [rsp + 0x10], 0xfffffffffffffffe
mov qword [rsp + 0x18], 0xffffffffffffffff
mov qword [rsp + 0x20], rcx
movups xmmword [rsp + 0x28], xmm15
mov qword [rsp + 0x38], 2
call fcn.00428200
xorps xmm15, xmm15
mov r14, qword [0x0057d248]
mov r14, qword gs:[r14]
mov r14, qword [r14]
cmp qword [rsp + 0x40], 0
nop
je 0x427c30
mov rax, qword [r14 + 0x30]
mov qword [rsp + 0x80], rax
test byte [rax], al
lea rcx, [rax + 0x310]
mov qword [rsp + 0x88], rcx
nop
mov rax, rcx
call fcn.00407180
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x80]
mov qword [rdx + 0x318], rcx
mov rax, qword [sym.imp.kernel32.dll_GetCurrentThreadId]
call fcn.00427ec0
mov rcx, qword [rsp + 0x80]
mov qword [rcx + 0x48], rax
cmp qword [rcx + 0x330], 0
jne 0x427ae9
cmp byte [0x0057d054], 0
je 0x427ae9
mov rax, qword [sym.imp.kernel32.dll_CreateWaitableTimerExW]
mov qword [rsp], rax
movups xmmword [rsp + 8], xmm15
mov qword [rsp + 0x18], 2
mov qword [rsp + 0x20], 0x100003
call fcn.00428080
xorps xmm15, xmm15
mov r14, qword [0x0057d248]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x80]
mov qword [rcx + 0x330], rax
nop dword [rax]
test rax, rax
je 0x427c08
nop
nop
mov rax, qword [rsp + 0x88]
call fcn.004073a0
movups xmmword [rsp + 0x50], xmm15
movups xmmword [rsp + 0x60], xmm15
movups xmmword [rsp + 0x70], xmm15
mov rcx, qword [sym.imp.kernel32.dll_VirtualQuery]
lea rdx, [rsp + 0x50]
mov qword [rsp], rcx
mov qword [rsp + 8], rdx
mov qword [rsp + 0x10], rdx
mov qword [rsp + 0x18], 0x30
call fcn.00428000
xorps xmm15, xmm15
mov r14, qword [0x0057d248]
mov r14, qword gs:[r14]
mov r14, qword [r14]
cmp qword [rsp + 0x20], 0
je 0x427be0
mov rcx, qword [rsp + 0x58]
lea rdx, [rcx + 0x4000]
mov qword [rsp + 0x90], r14
mov rsi, qword [r14 + 8]
cmp rsi, rdx
jb 0x427bc1
sub rsi, rcx
add rsi, 0xffffffffffffc000
nop word [rax + rax]
cmp rsi, 0x4000000
ja 0x427bc1
mov qword [r14], rdx
lea rax, [rcx + 0x53a0]
mov qword [r14 + 0x10], rax
mov qword [r14 + 0x18], rax
nop dword [rax + rax]
call fcn.0044be40
xorps xmm15, xmm15
mov r14, qword [0x0057d248]
mov r14, qword gs:[r14]
mov r14, qword [r14]
add rsp, 0x98
pop rbp
nop
ret
mov rcx, qword [rsp + 0x90]
test byte [rcx], al
lea rax, [0x004749fd]
mov ebx, 0xc
call fcn.0042a5c0
nop dword [rax]
call fcn.0044d7a0
xorps xmm15, xmm15
mov r14, qword [0x0057d248]
mov r14, qword gs:[r14]
mov r14, qword [r14]
lea rax, [0x00477b94]
mov ebx, 0x22
call fcn.0042a5c0
call fcn.0044d7a0
xorps xmm15, xmm15
mov r14, qword [0x0057d248]
mov r14, qword gs:[r14]
mov r14, qword [r14]
lea rax, [0x00479053]
mov ebx, 0x30
call fcn.0042a5c0
call fcn.0044d7a0
xorps xmm15, xmm15
mov r14, qword [0x0057d248]
mov r14, qword gs:[r14]
mov r14, qword [r14]
lea rax, [0x00478096]
mov ebx, 0x25
call fcn.0042a5c0
nop
call fcn.0044a100
nop
jmp fcn.004279a0
Function at 0x4367c0
Capabilities:
Encode data using base64

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x436927
push rbp
mov rbp, rsp
sub rsp, 0x18
mov ecx, dword [rax + 0x190]
mov edx, dword [rax + 0x194]
mov rsi, qword [rax + 0x998]
mov edi, dword [rax + 0x194]
cmp edi, edx
jne 0x4367d2
cmp edx, ecx
jne 0x436915
nop word [rax + rax]
test rsi, rsi
jne 0x436915
mov qword [rsp + 0x28], rax
test rbx, rbx
jne 0x436834
nop
call fcn.0044dbc0
xorps xmm15, xmm15
mov r14, qword [0x0057d248]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rbx, qword [rsp]
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0x10], rbx
call fcn.004366e0
mov rcx, qword [rsp + 0x28]
mov edx, dword [rcx]
mov ebx, edx
sar edx, 0x1f
shr edx, 0x1b
add edx, ebx
mov esi, edx
and edx, 0xffffffe0
sub ebx, edx
test ebx, ebx
jl 0x436910
mov rdx, qword [0x0052a278]
sar esi, 5
mov rax, rcx
mov ecx, ebx
mov edi, 1
shl edi, cl
movsxd rsi, esi
cmp ecx, 0x20
sbb r8d, r8d
and edi, r8d
cmp rdx, rsi
jbe 0x436905
mov rcx, qword [0x0052a270]
lea rcx, [rcx + rsi*4]
lock or dword [rcx], edi
mov rcx, qword [0x0052acd0]
mov qword [rax + 8], rcx
mov rcx, rax
nop
mov qword [0x0052acd0], rax
nop
mov edx, 1
lea rsi, [0x0052acd8]
lock xadd dword [rsi], edx
mov rdx, qword [rcx + 0x1228]
shr rdx, 0x3d
test dl, dl
jne 0x4368f3
mov rax, qword [rsp + 0x10]
movabs rdx, 0x1fffffffffffffff
and rdx, rax
bts rdx, 0x3f
nop
nop
xchg qword [rcx + 0x1228], rdx
add rsp, 0x18
pop rbp
ret
lea rax, [0x00478592]
mov ebx, 0x28
nop
call fcn.0042a5c0
mov rax, rsi
mov rcx, rdx
call fcn.0044c360
call fcn.004290e0
lea rax, [0x00477d79]
mov ebx, 0x23
call fcn.0042a5c0
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
call fcn.0044a100
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
jmp fcn.004367c0
Function at 0x43ed80
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x10
mov qword [rsp + 0x20], rax
test rbx, rbx
jbe 0x43eef7
movzx edx, byte [rax]
test edx, edx
jne 0x43edb4
nop dword [rax]
test r8b, r8b
jne 0x43edb4
xor eax, eax
xor ebx, ebx
mov rcx, rbx
xor edi, edi
add rsp, 0x10
pop rbp
ret
bt edx, 7
jae 0x43edc7
xor edx, edx
xor r8d, r8d
xor r9d, r9d
jmp 0x43eeb7
mov r8d, 1
mov r9d, edx
and edx, 1
neg edx
shr r9d, 1
xor edx, r9d
add dword [rsi], edx
nop dword [rax]
cmp rbx, r8
jb 0x43eea5
sub rbx, r8
sub rcx, r8
mov rdx, rcx
neg rdx
sar rdx, 0x3f
and r8, rdx
lea rdx, [rax + r8]
test rbx, rbx
jbe 0x43ee97
movzx esi, byte [rax + r8]
bt esi, 7
jae 0x43ee1d
xor eax, eax
xor esi, esi
xor r8d, r8d
jmp 0x43ee60
mov eax, 1
cmp rax, rbx
ja 0x43ee4b
add qword [rdi], rsi
sub rcx, rax
sub rbx, rax
mov rsi, rcx
neg rsi
sar rsi, 0x3f
and rax, rsi
add rax, rdx
mov edi, 1
add rsp, 0x10
pop rbp
ret
mov rcx, rbx
call fcn.0044c420
lea r8d, [rcx + 7]
mov rcx, r11
mov eax, r12d
nop dword [rax]
cmp rax, rbx
jae 0x43ee8f
movzx r9d, byte [rax + rdx]
mov r10d, r9d
and r9d, 0x7f
mov r11, rcx
mov ecx, r8d
shl r9d, cl
lea r12d, [rax + 1]
or esi, r9d
test r10b, 0x80
jne 0x43ee53
mov rcx, r11
mov eax, r12d
jmp 0x43ee22
mov rcx, rbx
call fcn.0044c360
xor eax, eax
mov rcx, rax
nop dword [rax]
call fcn.0044c360
mov eax, r8d
mov rcx, rbx
call fcn.0044c420
lea r9d, [rcx + 7]
mov rcx, r12
cmp rbx, rdx
jbe 0x43eeed
movzx r10d, byte [rdx + rax]
mov r11d, r10d
and r10d, 0x7f
mov r12, rcx
mov ecx, r9d
shl r10d, cl
inc edx
or r8d, r10d
test r11b, 0x80
jne 0x43eeb0
mov rcx, r12
mov r9d, edx
mov edx, r8d
mov r8d, r9d
jmp 0x43edcd
mov eax, edx
mov rcx, rbx
call fcn.0044c360
xor eax, eax
mov rcx, rax
nop dword [rax]
call fcn.0044c360
nop
int3

Function at 0x444600
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x4446af
push rbp
mov rbp, rsp
sub rsp, 0x58
mov qword [rsp + 0x70], rbx
lea rdx, [rsp + 0x68]
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 rsi, [0x00444700]
mov qword [rsp + 0x10], rsi
mov rsi, qword [rsp + 0x60]
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdx
mov rdx, r14
mov qword [rsp + 0x28], rdx
lea rdx, [rsp + 8]
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.00449fc0
xorps xmm15, xmm15
mov r14, qword [0x0057d248]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 8]
add rsp, 0x58
pop rbp
ret
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
call fcn.0044a100
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
nop dword [rax]
jmp fcn.00444600
Function at 0x44bf40
Capabilities:
Encrypt data using aes via x86 extensions

Disassembly:
nop
mov rax, qword [rax]
movabs rcx, 0xe7037ed1a0b428db
xor rcx, rax
xor rax, rbx
xor rax, qword [0x0057d2e0]
movabs rdx, 0xa0761d6478bd642f
xor rdx, rax
mov rax, rcx
mul rdx
xor rax, rdx
mov rcx, rax
movabs rax, 0x1d8e4e27c47d1247
mul rcx
xor rax, rdx
nop
nop
ret
cmp byte [0x0057d04c], 0
je 0x44bf76
movq xmm0, rbx
pinsrq xmm0, qword [rax], 1
aesenc xmm0, xmmword [0x0057d5a0]
aesenc xmm0, xmmword [0x0057d5b0]
aesenc xmm0, xmmword [0x0057d5c0]
movq rax, xmm0
ret
jmp 0x405fc0

Function at 0x44dc20
Capabilities:
Allocate thread local storage

Disassembly:
push rbp
mov rbp, rsp
mov rax, rsp
and rsp, 0xfffffffffffffff0
sub rsp, 0x30
mov qword [rsp + 0x20], rax
mov rax, qword [sym.imp.kernel32.dll_TlsAlloc]
call rax
mov rsp, qword [rsp + 0x20]
mov rcx, rax
cmp rcx, 0x40
jb 0x44dc54
mov rcx, 0x28
jmp 0x44dc5f
shl rcx, 3
add rcx, 0x1480
mov qword [0x0057d248], rcx
pop rbp
ret

Function at 0x452440
Capabilities:
Encode data using xor

Disassembly:
mov rbx, qword [rsp + 8]
mov rsi, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdx, qword [rsp + 0x20]
test rdx, 0xf
jne 0x4524ab
mov rax, 0
movdqu xmm0, xmmword [rsi + rax]
movdqu xmm1, xmmword [rcx + rax]
pxor xmm0, xmm1
movdqu xmmword [rbx + rax], xmm0
add rax, 0x10
cmp rdx, rax
jne 0x452464
ret
sub rdx, 1
mov dil, byte [rsi + rdx]
mov al, byte [rcx + rdx]
xor dil, al
mov byte [rbx + rdx], dil
test rdx, 7
jne 0x452481
cmp rdx, 0
je 0x4524cd
test rdx, 0xf
je 0x45245d
test rdx, 7
jne 0x452481
sub rdx, 8
mov rdi, qword [rsi + rdx]
mov rax, qword [rcx + rdx]
xor rdi, rax
mov qword [rbx + rdx], rdi
cmp rdx, 0x10
jge 0x45245d
ret
Function at 0x455240
Capabilities:
Encrypt data using aes via x86 extensions

Disassembly:
mov rcx, qword [rsp + 8]
mov rax, qword [rsp + 0x10]
mov rdx, qword [rsp + 0x18]
mov rbx, qword [rsp + 0x20]
movups xmm1, xmmword [rax]
movups xmm0, xmmword [rbx]
add rax, 0x10
pxor xmm0, xmm1
sub rcx, 0xc
je 0x45527f
jb 0x455294
movups xmm1, xmmword [rax]
aesenc xmm0, xmm1
movups xmm1, xmmword [rax + 0x10]
aesenc xmm0, xmm1
add rax, 0x20
movups xmm1, xmmword [rax]
aesenc xmm0, xmm1
movups xmm1, xmmword [rax + 0x10]
aesenc xmm0, xmm1
add rax, 0x20
movups xmm1, xmmword [rax]
aesenc xmm0, xmm1
movups xmm1, xmmword [rax + 0x10]
aesenc xmm0, xmm1
movups xmm1, xmmword [rax + 0x20]
aesenc xmm0, xmm1
movups xmm1, xmmword [rax + 0x30]
aesenc xmm0, xmm1
movups xmm1, xmmword [rax + 0x40]
aesenc xmm0, xmm1
movups xmm1, xmmword [rax + 0x50]
aesenc xmm0, xmm1
movups xmm1, xmmword [rax + 0x60]
aesenc xmm0, xmm1
movups xmm1, xmmword [rax + 0x70]
aesenc xmm0, xmm1
movups xmm1, xmmword [rax + 0x80]
aesenc xmm0, xmm1
movups xmm1, xmmword [rax + 0x90]
aesenclast xmm0, xmm1
movups xmmword [rdx], xmm0
ret