joyce8/EMBER2024-capa huggingface dataset:
Function at 0x44ebe0
Capabilities:
Get thread local storage value

Disassembly:
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x28
lea rcx, [0x005029a0]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [0x00502980]
test rbx, rbx
je 0x44ec34
mov rbp, qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rdi, qword [sym.imp.KERNEL32.dll_GetLastError]
nop
mov ecx, dword [rbx]
call rbp
mov rsi, rax
call rdi
test eax, eax
jne 0x44ec2b
test rsi, rsi
je 0x44ec2b
mov rax, qword [rbx + 8]
mov rcx, rsi
call rax
mov rbx, qword [rbx + 0x10]
test rbx, rbx
jne 0x44ec10
mov rax, qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea rcx, [0x005029a0]
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
jmp rax

Function at 0x44ee50
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 0x44ee91
sub ecx, 1
lea rcx, [rcx + rcx*4]
lea r9, [rax + rcx*8 + 0x28]
mov r8d, dword [rax + 0xc]
cmp r8, rdx
mov rcx, r8
ja 0x44ee88
add ecx, dword [rax + 8]
cmp rdx, rcx
jb 0x44ee93
add rax, 0x28
cmp rax, r9
jne 0x44ee74
xor eax, eax
repz ret

Function at 0x44ef40
Capabilities:
Enumerate pe sections

Disassembly:
push rsi
push rbx
sub rsp, 0x28
mov rbx, qword [0x004e1640]
cmp word [rbx], 0x5a4d
je 0x44ef60
xor eax, eax
add rsp, 0x28
pop rbx
pop rsi
ret
mov rsi, rcx
mov rcx, rbx
call fcn.0044ee10
test eax, eax
je 0x44ef54
sub rsi, rbx
mov rcx, rbx
mov rdx, rsi
add rsp, 0x28
pop rbx
pop rsi
jmp fcn.0044ee50

Function at 0x44f270
Capabilities:
Allocate thread local storage

Disassembly:
push rdi
push rsi
push rbx
sub rsp, 0x20
mov eax, dword [0x00502988]
test eax, eax
jne 0x44ec70
add rsp, 0x20
pop rbx
pop rsi
pop rdi
ret
mov rsi, rdx
mov edi, ecx
mov edx, 0x18
mov ecx, 1
call sub.msvcrt.dll_calloc
test rax, rax
mov rbx, rax
je 0x44ecc8
mov dword [rax], edi
mov qword [rax + 8], rsi
lea rcx, [0x005029a0]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [0x00502980]
lea rcx, [0x005029a0]
mov qword [0x00502980], rbx
mov qword [rbx + 0x10], rax
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
xor eax, eax
add rsp, 0x20
pop rbx
pop rsi
pop rdi
ret
mov eax, 0xffffffff
jmp 0x44ec61
push rsi
push rbx
sub rsp, 0x28
mov rsi, rcx
mov rbx, rdx
call qword [sym.imp.KERNEL32.dll_TlsAlloc]
cmp eax, 0xffffffff
je 0x44f2a0
mov rdx, rbx
mov ecx, eax
mov dword [rsi], eax
add rsp, 0x28
pop rbx
pop rsi
jmp 0x45e770
mov rax, qword [sym.imp.KERNEL32.dll_GetLastError]
add rsp, 0x28
pop rbx
pop rsi
jmp rax
test rdx, rdx
je 0x45e780
jmp 0x44ec50
xor eax, eax
ret

Function at 0x44f2e0
Capabilities:
Get thread local storage value

Disassembly:
push rsi
push rbx
sub rsp, 0x28
mov ebx, ecx
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, ebx
mov esi, eax
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rbx, rax
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rax, rbx
add rsp, 0x28
pop rbx
pop rsi
ret
Function at 0x44f310
Capabilities:
Set thread local storage value

Disassembly:
sub rsp, 0x28
call qword [sym.imp.KERNEL32.dll_TlsSetValue]
test eax, eax
je 0x44f325
xor eax, eax
add rsp, 0x28
ret
mov rax, qword [sym.imp.KERNEL32.dll_GetLastError]
add rsp, 0x28
jmp rax
Function at 0x451760
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x28
test rdx, rdx
mov rsi, rcx
mov r12, rdx
mov edi, r8d
je 0x451782
mov qword [r12], rcx
cmp edi, 0x24
ja 0x451863
cmp edi, 1
jne 0x451799
jmp 0x451863
add rsi, 1
movsx ecx, byte [rsi]
mov ebx, ecx
call sub.msvcrt.dll_isspace
test eax, eax
jne 0x451795
lea edx, [rbx - 0x2b]
mov rcx, rsi
mov eax, ebx
and edx, 0xfd
jne 0x4517bf
movzx eax, byte [rcx + 1]
add rsi, 1
test edi, edi
jne 0x4518f5
cmp al, 0x30
mov dil, 0xa
je 0x451950
movsx r15d, al
lea edx, [r15 - 0x30]
cmp edx, 9
ja 0x4518d0
movsx r15d, al
sub r15d, 0x30
cmp edi, r15d
jle 0x451975
mov eax, r15d
shr eax, 0x1f
test al, al
jne 0x451975
lea r14, [rsi + 1]
movsxd r15, r15d
xor r13d, r13d
movsxd rsi, edi
nop
movsx ebp, byte [r14]
lea r9d, [rbp - 0x30]
cmp r9d, 9
mov ecx, r9d
jbe 0x451884
mov ecx, ebp
call sub.msvcrt.dll_isupper
test eax, eax
lea ecx, [rbp - 0x37]
jne 0x451884
mov ecx, ebp
call sub.msvcrt.dll_islower
test eax, eax
jne 0x451881
test r12, r12
je 0x451843
mov qword [r12], r14
test r13d, r13d
jne 0x451920
xor edx, edx
cmp bl, 0x2d
sete dl
mov rax, rdx
neg rax
xor r15, rax
lea rax, [r15 + rdx]
jmp 0x451870
call sub.msvcrt.dll__errno
mov dword [rax], 0x21
xor eax, eax
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
lea ecx, [rbp - 0x57]
cmp edi, ecx
jle 0x45183a
test ecx, ecx
js 0x45183a
xor edx, edx
mov rax, 0xffffffffffffffff
div rsi
add rax, 1
cmp r15, rax
ja 0x4518c0
mov rax, r15
movsxd rcx, ecx
imul rax, rsi
add rcx, rax
cmp r15, rcx
ja 0x4518c0
mov r15, rcx
add r14, 1
jmp 0x451810
mov r13d, 1
jmp 0x4518b6
mov ecx, r15d
call sub.msvcrt.dll_isupper
test eax, eax
jne 0x451940
mov ecx, r15d
call sub.msvcrt.dll_islower
mov edx, eax
xor eax, eax
test edx, edx
je 0x451870
sub r15d, 0x57
jmp 0x4517eb
cmp edi, 0x10
jne 0x4517d2
cmp al, 0x30
jne 0x4517d2
movzx eax, byte [rsi + 1]
and eax, 0xffffffdf
cmp al, 0x58
je 0x451963
mov eax, 0x30
jmp 0x4517e3
call sub.msvcrt.dll__errno
mov dword [rax], 0x22
mov rax, 0xffffffffffffffff
jmp 0x451870
sub r15d, 0x37
jmp 0x4517eb
movzx edx, byte [rsi + 1]
mov dil, 8
and edx, 0xffffffdf
cmp dl, 0x58
jne 0x4517d2
movzx eax, byte [rsi + 2]
mov edi, 0x10
add rsi, 2
jmp 0x4517d2
xor eax, eax
jmp 0x451870
Function at 0x415040
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x4151cb
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_VirtualFree]
mov qword [rsp], rcx
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], 0x4000
call fcn.00430e80
xorps xmm15, xmm15
mov r14, qword [0x005e49d0]
mov r14, qword gs:[r14]
mov r14, qword [r14]
cmp qword [rsp + 0x20], 0
jne 0x4150a5
mov rax, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x60]
jmp 0x4150b4
add rsp, 0x48
pop rbp
ret
sub rcx, rbx
add rax, rbx
mov rbx, rcx
test rbx, rbx
jbe 0x4150d3
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x40], rax
mov rcx, rbx
jmp 0x4150e3
cmp rbx, 0x1000
jae 0x4150ab
jmp 0x41514d
add rsp, 0x48
pop rbp
ret
shr rbx, 1
and rbx, 0xfffffffffffff000
mov qword [rsp + 0x38], rbx
cmp rbx, 0x1000
jae 0x4150f5
xor edx, edx
jmp 0x415144
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.00430e80
xorps xmm15, xmm15
mov r14, qword [0x005e49d0]
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 0x4150d9
jmp 0x4150c8
call fcn.00460380
xorps xmm15, xmm15
mov r14, qword [0x005e49d0]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov eax, dword [rsp]
mov qword [rsp + 0x30], rax
call fcn.00435280
lea rax, [0x004e174d]
mov ebx, 0x18
nop dword [rax]
call fcn.00435b00
mov rax, qword [rsp + 0x38]
call fcn.00435840
lea rax, [0x004e1b73]
mov ebx, 0x19
nop dword [rax + rax]
call fcn.00435b00
mov rax, qword [rsp + 0x30]
call fcn.00435840
call fcn.004354c0
call fcn.004352e0
lea rax, [0x004e3c6d]
mov ebx, 0x21
call fcn.004338e0
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
call fcn.0045ccc0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
jmp fcn.00415040
Function at 0x415200
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x415426
push rbp
mov rbp, rsp
sub 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.00430f00
xorps xmm15, xmm15
mov r14, qword [0x005e49d0]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x60]
mov rcx, rax
cmp qword [rsp + 0x28], rax
je 0x415273
mov rbx, qword [rsp + 0x68]
mov rax, rbx
jmp 0x415282
add rsp, 0x50
pop rbp
ret
sub rdx, rbx
add rcx, rbx
mov rbx, rdx
test rbx, rbx
jbe 0x4152a5
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rcx
mov rdx, rbx
jmp 0x4152b5
cmp rbx, 0x1000
jae 0x415279
nop
jmp 0x415338
add rsp, 0x50
pop rbp
ret
shr rbx, 1
and rbx, 0xfffffffffffff000
mov qword [rsp + 0x38], rbx
nop word [rax + rax]
cmp rbx, 0x1000
jae 0x4152cd
xor esi, esi
jmp 0x41532a
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.00430f00
xorps xmm15, xmm15
mov r14, qword [0x005e49d0]
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 0x4152ab
jmp 0x415296
call fcn.00460380
xorps xmm15, xmm15
mov r14, qword [0x005e49d0]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov eax, dword [rsp]
mov dword [rsp + 0x34], eax
cmp eax, 8
jne 0x4153c0
nop dword [rax + rax]
call fcn.00435280
lea rax, [0x004e1b8c]
mov ebx, 0x19
call fcn.00435b00
mov rax, qword [rsp + 0x68]
nop dword [rax + rax]
call fcn.00435840
lea rax, [0x004e1b73]
mov ebx, 0x19
call fcn.00435b00
mov eax, dword [rsp + 0x34]
call fcn.00435840
nop
call fcn.004354c0
call fcn.004352e0
lea rax, [0x004de910]
mov ebx, 0xd
call fcn.004338e0
nop dword [rax + rax]
cmp eax, 0x5af
je 0x415360
call fcn.00435280
lea rax, [0x004e1b8c]
mov ebx, 0x19
call fcn.00435b00
mov rax, qword [rsp + 0x38]
call fcn.00435840
lea rax, [0x004e1b73]
mov ebx, 0x19
call fcn.00435b00
mov eax, dword [rsp + 0x34]
nop dword [rax]
call fcn.00435840
call fcn.004354c0
call fcn.004352e0
lea rax, [0x004e3537]
mov ebx, 0x1f
nop dword [rax + rax]
call fcn.004338e0
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
call fcn.0045ccc0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
nop
jmp fcn.00415200
Function at 0x41d140
Capabilities:
Hash data using murmur3

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x10
cmp byte [0x005e47b5], 0
jne 0x41d227
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 0x41d21a
lea rbx, [0x005b6b98]
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 0x41d200
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.0045ef60
lea rax, [0x004e58e3]
mov ebx, 0x2c
call fcn.004338e0
nop
int3

Function at 0x41f500
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x41f606
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 0x41f543
mov rax, qword [rsp + 0x60]
mov rcx, rdx
mov rbx, qword [rsp + 0x68]
movzx edi, byte [rsp + 0x17]
cmp qword [rsp + 0x18], rbx
jae 0x41f5fb
test byte [rax], al
lea rcx, [rax + 0x100b8]
mov ebx, edi
mov rax, rcx
nop dword [rax]
call fcn.004202e0
test rax, rax
je 0x41f5fb
movups xmmword [rsp + 0x20], xmm15
movups xmmword [rsp + 0x30], xmm15
movups xmmword [rsp + 0x40], xmm15
lea rcx, [0x0041f640]
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.0045cb80
xorps xmm15, xmm15
mov r14, qword [0x005e49d0]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rdx, qword [rsp + 0x70]
nop dword [rax]
test rdx, rdx
jne 0x41f5e9
xor eax, eax
jmp 0x41f5f3
mov rax, qword [rdx]
call rax
mov rdx, qword [rsp + 0x70]
test al, al
je 0x41f531
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.0045ccc0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
movzx edi, byte [rsp + 0x20]
jmp fcn.0041f500
Function at 0x42d5e0
Capabilities:
Hash data using murmur3

Disassembly:
cmp rsp, qword [r14 + 0x18]
jbe 0x42d866
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 0x42d85a
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x30], rcx
mov qword [rax + 0x1268], 0
cmp byte [0x005e47b5], 0
jne 0x42d63a
xor edx, edx
xor ebx, ebx
jmp 0x42d680
xor edx, edx
jmp 0x42d665
mov qword [rsp + 0x28], rdx
mov rcx, qword [rax + rdx*8 + 0x1278]
mov rax, rcx
call fcn.0041c9a0
mov rdx, qword [rsp + 0x28]
inc rdx
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x30]
cmp rdx, rcx
jl 0x42d63e
add rax, 0x1268
call fcn.0042d560
add rsp, 0x38
pop rbp
ret
inc rdx
nop
cmp rdx, rcx
jge 0x42d7f4
mov rsi, qword [rax + rdx*8 + 0x1278]
cmp rsi, 0x1000
jb 0x42d67b
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rbx
mov rax, rsi
xor ebx, ebx
mov rcx, rbx
call fcn.00412360
test rax, rax
jne 0x42d6cc
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x20]
jmp 0x42d67b
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 0x42d70c
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x20]
jmp 0x42d67b
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 0x42d84d
lea r10, [0x005b6b98]
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 0x42d78f
lock or byte [r8], r11b
movzx r8d, byte [rbx + 0x6a]
test r8b, 1
je 0x42d7c5
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 0x42d67b
mov r8, qword [rsp + 0x20]
mov rcx, qword [rsp + 0x30]
cmp r8, rcx
jae 0x42d845
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 0x42d67b
cmp rbx, 0x200
ja 0x42d834
lea rdx, [rax + 0x1278]
lea rsi, [rax + 0x1240]
mov rcx, rbx
mov edi, 0x200
mov rbx, rdx
mov rax, rsi
call fcn.004231e0
mov rax, qword [rsp + 0x48]
add rax, 0x1268
call fcn.0042d560
add rsp, 0x38
pop rbp
ret
mov rcx, rbx
mov edx, 0x200
nop dword [rax]
call fcn.0045efc0
mov rax, r8
call fcn.0045ef40
mov rax, r8
mov ecx, 0x40
call fcn.0045ef60
mov edx, 0x200
nop
call fcn.0045efa0
nop
mov qword [rsp + 8], rax
call fcn.00463780
mov rax, qword [rsp + 8]
jmp fcn.0042d5e0
Function at 0x442480
Capabilities:
Encode data using base64

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x4425e7
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 0x442492
cmp edx, ecx
jne 0x4425d5
nop word [rax + rax]
test rsi, rsi
jne 0x4425d5
mov qword [rsp + 0x28], rax
test rbx, rbx
jne 0x4424f4
nop
call fcn.004607a0
xorps xmm15, xmm15
mov r14, qword [0x005e49d0]
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.004423a0
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 0x4425d0
mov rdx, qword [0x00591858]
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 0x4425c5
mov rcx, qword [0x00591850]
lea rcx, [rcx + rsi*4]
lock or dword [rcx], edi
mov rcx, qword [0x00592430]
mov qword [rax + 8], rcx
mov rcx, rax
nop
mov qword [0x00592430], rax
nop
mov edx, 1
lea rsi, [0x00592438]
lock xadd dword [rsi], edx
mov rdx, qword [rcx + 0x1228]
shr rdx, 0x3d
test dl, dl
jne 0x4425b3
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, [0x004e5060]
mov ebx, 0x28
nop
call fcn.004338e0
mov rax, rsi
mov rcx, rdx
call fcn.0045ef40
call fcn.00431f80
lea rax, [0x004e4346]
mov ebx, 0x23
call fcn.004338e0
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
call fcn.0045ccc0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
jmp fcn.00442480
Function at 0x44d9c0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x10
mov qword [rsp + 0x20], rax
test rbx, rbx
jbe 0x44db37
movzx edx, byte [rax]
test edx, edx
jne 0x44d9f4
nop dword [rax]
test r8b, r8b
jne 0x44d9f4
xor eax, eax
xor ebx, ebx
mov rcx, rbx
xor edi, edi
add rsp, 0x10
pop rbp
ret
bt edx, 7
jae 0x44da07
xor edx, edx
xor r8d, r8d
xor r9d, r9d
jmp 0x44daf7
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 0x44dae5
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 0x44dad7
movzx esi, byte [rax + r8]
bt esi, 7
jae 0x44da5d
xor eax, eax
xor esi, esi
xor r8d, r8d
jmp 0x44daa0
mov eax, 1
cmp rax, rbx
ja 0x44da8b
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.0045f000
lea r8d, [rcx + 7]
mov rcx, r11
mov eax, r12d
nop dword [rax]
cmp rax, rbx
jae 0x44dacf
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 0x44da93
mov rcx, r11
mov eax, r12d
jmp 0x44da62
mov rcx, rbx
call fcn.0045ef40
xor eax, eax
mov rcx, rax
nop dword [rax]
call fcn.0045ef40
mov eax, r8d
mov rcx, rbx
call fcn.0045f000
lea r9d, [rcx + 7]
mov rcx, r12
cmp rbx, rdx
jbe 0x44db2d
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 0x44daf0
mov rcx, r12
mov r9d, edx
mov edx, r8d
mov r8d, r9d
jmp 0x44da0d
mov eax, edx
mov rcx, rbx
call fcn.0045ef40
xor eax, eax
mov rcx, rax
nop dword [rax]
call fcn.0045ef40
nop
int3
Function at 0x454f40
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x454fef
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, [0x00455040]
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.0045cb80
xorps xmm15, xmm15
mov r14, qword [0x005e49d0]
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.0045ccc0
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.00454f40
Function at 0x45eac0
Capabilities:
Encrypt data using aes via x86 extensions

Disassembly:
nop
mov eax, dword [rax]
movabs rcx, 0xe7037ed1a0b428db
xor rcx, rax
xor rax, rbx
xor rax, qword [0x005e4a80]
movabs rdx, 0xa0761d6478bd642f
xor rdx, rax
mov rax, rcx
mul rdx
xor rax, rdx
mov rcx, rax
movabs rax, 0x1d8e4e27c47d124b
mul rcx
xor rax, rdx
nop
nop
ret
cmp byte [0x005e47ae], 0
je 0x45eaf5
movq xmm0, rbx
pinsrd xmm0, dword [rax], 2
aesenc xmm0, xmmword [0x005e4d40]
aesenc xmm0, xmmword [0x005e4d50]
aesenc xmm0, xmmword [0x005e4d60]
movq rax, xmm0
ret
jmp 0x409880

Function at 0x45eb00
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 [0x005e4a80]
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 [0x005e47ae], 0
je 0x45eb36
movq xmm0, rbx
pinsrq xmm0, qword [rax], 1
aesenc xmm0, xmmword [0x005e4d40]
aesenc xmm0, xmmword [0x005e4d50]
aesenc xmm0, xmmword [0x005e4d60]
movq rax, xmm0
ret
jmp 0x4098e0

Function at 0x460800
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 0x460834
mov rcx, 0x28
jmp 0x46083f
shl rcx, 3
add rcx, 0x1480
mov qword [0x005e49d0], rcx
pop rbp
ret