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

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x43dac2
push rbp
mov rbp, rsp
sub rsp, 0x30
jmp 0x43d87a
inc dword [0x005024f8]
mov ecx, dword [rax + 0x18c]
cmp dword [rax + 0x188], ecx
je 0x43d8cc
dec ecx
mov dword [rax + 0x18c], ecx
movzx ecx, cl
mov rcx, qword [rax + rcx*8 + 0x190]
mov rdx, qword [0x005024e8]
nop
nop
mov qword [rcx + 0xa8], rdx
mov rdx, rcx
nop
mov qword [0x005024e8], rcx
cmp qword [0x005024f0], 0
nop
jne 0x43d874
nop
mov qword [0x005024f0], rdx
jmp 0x43d874
mov rcx, qword [rax + 0x990]
test rcx, rcx
je 0x43d917
mov rdx, qword [0x005024e8]
nop
nop
nop
mov qword [rcx + 0xa8], rdx
mov rdx, rcx
nop
mov qword [0x005024e8], rcx
cmp qword [0x005024f0], 0
jne 0x43d906
nop
mov qword [0x005024f0], rdx
inc dword [0x005024f8]
mov qword [rax + 0x990], 0
mov qword [rsp + 0x40], rax
mov rcx, qword [r14 + 0x30]
mov rcx, qword [rcx + 0xa0]
lea rbx, [rax + 0x2288]
test byte [rcx], al
add rcx, 0x2288
mov rax, rcx
call sym.runtime._timers_.take
cmp dword [0x00545c44], 0
je 0x43d966
mov rax, qword [rsp + 0x40]
call sym.runtime.wbBufFlush1
mov rax, qword [rsp + 0x40]
lea rcx, [rax + 0x1248]
mov rax, rcx
call sym.runtime._gcWork_.dispose
mov rax, qword [rsp + 0x40]
lea rcx, [rax + 0x9c0]
mov ebx, 0x400
mov rax, rcx
call sym.runtime.memclrHasPointers
mov rax, qword [rsp + 0x40]
mov qword [rax + 0x9b0], 0
mov qword [rax + 0x9b8], 0x80
lea rcx, [rax + 0x9c0]
cmp dword [0x00545e50], 0
je 0x43d9c8
call sym.runtime.gcWriteBarrier3
mov qword [r11], rcx
mov rdx, qword [rax + 0x9a8]
mov qword [r11 + 8], rdx
mov rdx, qword [rax + 0x11c8]
mov qword [r11 + 0x10], rdx
mov qword [rax + 0x9a8], rcx
mov qword [rax + 0x11c8], 0
lea rcx, [rax + 0x78]
mov ebx, 0x100
mov rax, rcx
call sym.runtime.memclrHasPointers
mov rcx, qword [rsp + 0x40]
mov qword [rcx + 0x68], 0
mov qword [rcx + 0x70], 0x20
lea rdx, [rcx + 0x78]
cmp dword [0x00545e50], 0
je 0x43da1d
call sym.runtime.gcWriteBarrier2
mov qword [r11], rdx
mov rax, qword [rcx + 0x60]
mov qword [r11 + 8], rax
mov qword [rcx + 0x60], rdx
lea rax, [sym.runtime._p_.destroy.func1]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], rcx
lea rax, [rsp + 0x20]
mov qword [rsp], rax
nop dword [rax + rax]
call sym.runtime.systemstack.abi0
xorps xmm15, xmm15
mov r14, qword [0x00545e30]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x40]
mov rcx, qword [rax + 0x38]
lea rdx, [sym.runtime._p_.destroy.freemcache.func2]
mov qword [rsp + 0x10], rdx
mov qword [rsp + 0x18], rcx
lea rcx, [rsp + 0x10]
mov qword [rsp], rcx
call sym.runtime.systemstack.abi0
xorps xmm15, xmm15
mov r14, qword [0x00545e30]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x40]
mov qword [rax + 0x38], 0
nop
call sym.runtime.gfpurge
mov rax, qword [rsp + 0x40]
mov qword [rax + 0x1220], 0
mov dword [rax + 4], 4
add rsp, 0x30
pop rbp
ret
mov qword [rsp + 8], rax
call sym.runtime.morestack_noctxt.abi0
mov rax, qword [rsp + 8]
jmp sym.runtime._p_.destroy
Function at 0x4403e0
Capabilities:
Encode data using base64

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x44059c
push rbp
mov rbp, rsp
sub rsp, 0x10
mov edx, dword [rax + 0x188]
mov esi, dword [rax + 0x18c]
mov rdi, qword [rax + 0x990]
mov r8d, dword [rax + 0x18c]
cmp r8d, esi
jne 0x4403f2
cmp esi, edx
jne 0x44058a
nop dword [rax]
test rdi, rdi
jne 0x44058a
test rbx, rbx
jne 0x440454
mov qword [rsp + 0x20], rax
nop
call sym.runtime.nanotime1.abi0
xorps xmm15, xmm15
mov r14, qword [0x00545e30]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rbx, qword [rsp]
mov rax, qword [rsp + 0x20]
mov edx, dword [rax + 0x22a8]
test edx, edx
jne 0x4404b1
mov ecx, dword [rax]
mov edx, ecx
sar edx, 0x1f
shr edx, 0x1b
add edx, ecx
mov esi, edx
and edx, 0xffffffe0
sub ecx, edx
test ecx, ecx
jl 0x440585
mov rdx, qword [0x00500e78]
sar esi, 5
mov edi, 1
shl edi, cl
movsxd rsi, esi
cmp ecx, 0x20
sbb r8d, r8d
and r8d, edi
cmp rdx, rsi
jbe 0x440579
mov rdx, qword [0x00500e70]
lea rdx, [rdx + rsi*4]
not r8d
lock and dword [rdx], r8d
mov ecx, dword [rax]
mov edx, ecx
sar edx, 0x1f
shr edx, 0x1b
add edx, ecx
mov esi, edx
and edx, 0xffffffe0
sub ecx, edx
test ecx, ecx
jl 0x440574
mov rdx, qword [0x00500e58]
sar esi, 5
mov edi, 1
shl edi, cl
movsxd rsi, esi
cmp ecx, 0x20
sbb r8d, r8d
and r8d, edi
cmp rdx, rsi
jbe 0x440569
mov rcx, qword [0x00500e50]
lea rcx, [rcx + rsi*4]
lock or dword [rcx], r8d
mov rcx, qword [0x005024d0]
mov qword [rax + 8], rcx
mov rcx, rax
nop
mov qword [0x005024d0], rax
nop
mov edx, 1
lea rsi, [0x005024d8]
lock xadd dword [rsi], edx
nop
mov rdx, qword [rcx + 0x1230]
shr rdx, 0x3d
test dl, dl
jne 0x440558
movabs rdx, 0x1fffffffffffffff
and rdx, rbx
bts rdx, 0x3f
nop
nop
xchg qword [rcx + 0x1230], rdx
mov rax, rbx
add rsp, 0x10
pop rbp
ret
lea rax, [0x0048827f]
mov ebx, 0x28
call sym.runtime.throw
mov rax, rsi
mov rcx, rdx
call sym.runtime.panicIndex
call sym.runtime.panicshift
mov rax, rsi
mov rcx, rdx
nop
call sym.runtime.panicIndex
call sym.runtime.panicshift
lea rax, [0x0048789e]
mov ebx, 0x23
call sym.runtime.throw
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
call sym.runtime.morestack_noctxt.abi0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
jmp sym.runtime.pidleput
Function at 0x444860
Capabilities:
Access peb ldr_data

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x70
mov rcx, r14
test rcx, rcx
je 0x4448a8
mov rcx, qword [rcx + 0x30]
mov rcx, qword [rcx + 0x90]
nop dword [rax + rax]
test rcx, rcx
je 0x4448a8
mov qword [rsp + 0x68], rcx
nop
mov rax, qword [rdi + 0x28]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x58], 0
mov qword [rsp + 0x50], 0
jmp 0x4448b8
mov eax, 1
add rsp, 0x70
pop rbp
ret
mov rax, qword [rsp + 0x60]
mov rcx, qword [sym.imp.kernel32.dll_RtlLookupFunctionEntry]
lea rdx, [rsp + 0x58]
mov rbx, qword [rax + 0xf8]
mov qword [rsp], rcx
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdx
mov qword [rsp + 0x18], 0
call sym.runtime.stdcall3.abi0
xorps xmm15, xmm15
mov r14, qword [0x00545e30]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x20]
nop
test rax, rax
je 0x444991
mov rcx, qword [rsp + 0x58]
mov rdx, qword [sym.imp.kernel32.dll_RtlVirtualUnwind]
mov rbx, qword [rsp + 0x60]
mov rsi, rbx
lea rdi, [rsp + 0x50]
mov r8, qword [rsi + 0xf8]
mov qword [rsp], rdx
mov qword [rsp + 8], 0
mov qword [rsp + 0x10], rcx
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x40], 0
call sym.runtime.stdcall8.abi0
xorps xmm15, xmm15
mov r14, qword [0x00545e30]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x68]
cmp qword [rcx], rax
ja 0x444991
cmp qword [rcx + 8], rax
ja 0x4448b3
mov eax, 1
add rsp, 0x70
pop rbp
ret
Function at 0x457380
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x457423
push rbp
mov rbp, rsp
sub rsp, 0x48
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x68], rcx
mov qword [rsp + 0x70], rdi
test byte [rax], al
lea rdx, [rax + 0x10]
mov rsi, qword [rsp + 0x68]
mov rcx, rdi
mov rax, rdx
mov rbx, rsi
call sym.runtime._traceMap_.put
nop
test bl, bl
je 0x45741d
mov qword [rsp + 0x18], rax
lea rcx, [sym.runtime._traceStringTable_.put.func1]
mov qword [rsp + 0x20], rcx
mov rcx, qword [rsp + 0x58]
mov qword [rsp + 0x28], rcx
mov rcx, qword [rsp + 0x60]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x38], rax
lea rcx, [rsp + 0x68]
mov qword [rsp + 0x40], rcx
lea rcx, [rsp + 0x20]
mov qword [rsp], rcx
call sym.runtime.systemstack.abi0
xorps xmm15, xmm15
mov r14, qword [0x00545e30]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x18]
add rsp, 0x48
pop rbp
ret
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
call sym.runtime.morestack_noctxt.abi0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
jmp sym.runtime._traceStringTable_.put
Function at 0x45de60
Capabilities:
Access peb ldr_data

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x78
mov qword [rsp + 0x30], r14
mov rax, qword [r14 + 0x30]
inc dword [rax + 0xd8]
mov byte [r14 + 0xbf], 1
mov qword [r14 + 0x10], 0xfffffffffffffade
mov rax, qword [r14 + 0x30]
mov rcx, qword [rax + 0xa0]
mov ecx, dword [rcx + 0x14]
mov dword [rax + 0x2b4], ecx
mov rax, qword [r14 + 0x30]
mov rax, qword [rax + 0xa0]
inc dword [rax + 0x14]
lea rax, [rsp + 0x88]
mov qword [rsp + 0x18], rax
call sym.runtime.getcallerfp
mov qword [rsp + 0x20], rax
mov rbx, qword [rsp + 0x18]
mov rcx, rax
mov rax, qword [rsp + 0x80]
call sym.runtime.save
mov rax, qword [rsp + 0x30]
mov rcx, qword [rax + 0x38]
mov qword [rax + 0x70], rcx
mov rdx, qword [rax + 0x40]
mov qword [rax + 0x78], rdx
mov rdx, qword [rax + 0x68]
mov qword [rax + 0x80], rdx
cmp qword [rax], rcx
ja 0x45df06
nop word [rax + rax]
cmp qword [rax + 8], rcx
jae 0x45df54
mov rdx, qword [rax + 0x38]
lea rbx, [sym.runtime.entersyscallblock.func1]
mov qword [rsp + 0x50], rbx
mov rbx, qword [rsp + 0x18]
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x68], rcx
mov qword [rsp + 0x70], rax
lea rcx, [rsp + 0x50]
mov qword [rsp], rcx
call sym.runtime.systemstack.abi0
xorps xmm15, xmm15
mov r14, qword [0x00545e30]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x30]
mov ebx, 2
mov ecx, 3
nop
call sym.runtime.casgstatus
mov rdx, qword [rsp + 0x30]
mov rsi, qword [rdx + 0x70]
cmp qword [rdx], rsi
ja 0x45df79
cmp qword [rdx + 8], rsi
jae 0x45dfbc
lea rax, [sym.runtime.entersyscallblock.func2]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x18]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rdx
lea rax, [rsp + 0x38]
mov qword [rsp], rax
nop dword [rax]
call sym.runtime.systemstack.abi0
xorps xmm15, xmm15
mov r14, qword [0x00545e30]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rdx, qword [rsp + 0x30]
mov rax, qword [rdx + 0x80]
test rax, rax
je 0x45dfcd
cmp qword [rdx], rax
ja 0x45dfd3
cmp qword [rdx + 8], rax
jae 0x45e00e
lea rax, [sym.runtime.entersyscallblock.func3]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rdx
lea rax, [rsp + 0x38]
mov qword [rsp], rax
call sym.runtime.systemstack.abi0
xorps xmm15, xmm15
mov r14, qword [0x00545e30]
mov r14, qword gs:[r14]
mov r14, qword [r14]
lea rax, sym.runtime.entersyscallblock_handoff
mov qword [rsp], rax
call sym.runtime.systemstack.abi0
xorps xmm15, xmm15
mov r14, qword [0x00545e30]
mov r14, qword gs:[r14]
mov r14, qword [r14]
lea rax, [rsp + 0x88]
mov qword [rsp + 0x28], rax
nop dword [rax]
call sym.runtime.getcallerfp
mov rbx, qword [rsp + 0x28]
mov rcx, rax
mov rax, qword [rsp + 0x80]
call sym.runtime.save
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0x30]
dec dword [rax + 0xd8]
add rsp, 0x78
pop rbp
ret
Function at 0x45fcc0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x10
mov qword [rsp + 0x20], rax
test rbx, rbx
jbe 0x45fe37
movzx edx, byte [rax]
test edx, edx
jne 0x45fcf4
nop dword [rax]
test r8b, r8b
jne 0x45fcf4
xor eax, eax
xor ebx, ebx
mov rcx, rbx
xor edi, edi
add rsp, 0x10
pop rbp
ret
bt edx, 7
jae 0x45fd07
xor edx, edx
xor r8d, r8d
xor r9d, r9d
jmp 0x45fdf7
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 0x45fde5
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 0x45fdd7
movzx esi, byte [rax + r8]
bt esi, 7
jae 0x45fd5d
xor eax, eax
xor esi, esi
xor r8d, r8d
jmp 0x45fda0
mov eax, 1
cmp rax, rbx
ja 0x45fd8b
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 sym.runtime.panicSliceB
lea r8d, [rcx + 7]
mov rcx, r11
mov eax, r12d
nop dword [rax]
cmp rax, rbx
jae 0x45fdcf
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 0x45fd93
mov rcx, r11
mov eax, r12d
jmp 0x45fd62
mov rcx, rbx
call sym.runtime.panicIndex
xor eax, eax
mov rcx, rax
nop dword [rax]
call sym.runtime.panicIndex
mov eax, r8d
mov rcx, rbx
call sym.runtime.panicSliceB
lea r9d, [rcx + 7]
mov rcx, r12
cmp rbx, rdx
jbe 0x45fe2d
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 0x45fdf0
mov rcx, r12
mov r9d, edx
mov edx, r8d
mov r8d, r9d
jmp 0x45fd0d
mov eax, edx
mov rcx, rbx
call sym.runtime.panicIndex
xor eax, eax
mov rcx, rax
nop dword [rax]
call sym.runtime.panicIndex
nop
int3

Function at 0x461280
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x46132f
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, [sym.runtime.callers.func1]
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 + 0x48], rcx
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x40], rbx
lea rax, [rsp + 0x10]
mov qword [rsp], rax
call sym.runtime.systemstack.abi0
xorps xmm15, xmm15
mov r14, qword [0x00545e30]
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 sym.runtime.morestack_noctxt.abi0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
nop dword [rax]
jmp sym.runtime.callers
Function at 0x464760
Capabilities:
Encrypt data using aes via x86 extensions

Disassembly:
cmp byte [0x00545c28], 0
je 0x46476e
jmp sym.aeshashbody
jmp sym.runtime.memhashFallback

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

Disassembly:
cmp byte [0x00545c28], 0
je 0x464795
mov rcx, qword [rax + 8]
mov rax, qword [rax]
jmp sym.aeshashbody
jmp sym.runtime.strhashFallback

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

Disassembly:
cmp byte [0x00545c28], 0
je 0x4647d5
movq xmm0, rbx
pinsrd xmm0, dword [rax], 2
aesenc xmm0, xmmword [0x005461c0]
aesenc xmm0, xmmword [0x005461d0]
aesenc xmm0, xmmword [0x005461e0]
movq rax, xmm0
ret
jmp sym.runtime.memhash32Fallback

Function at 0x465e20
Capabilities:
Access peb ldr_data
Get kernel32 base address

Disassembly:
push rbp
mov rbp, rsp
pushfq
cld
sub rsp, 0xe0
mov qword [rsp], rdi
mov qword [rsp + 8], rsi
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], r12
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x38], r15
movups xmmword [rsp + 0x40], xmm6
movups xmmword [rsp + 0x50], xmm7
movups xmmword [rsp + 0x60], xmm8
movups xmmword [rsp + 0x70], xmm9
movups xmmword [rsp + 0x80], xmm10
movups xmmword [rsp + 0x90], xmm11
movups xmmword [rsp + 0xa0], xmm12
movups xmmword [rsp + 0xb0], xmm13
movups xmmword [rsp + 0xc0], xmm14
movups xmmword [rsp + 0xd0], xmm15
xorps xmm15, xmm15
xor r14, r14
mov rax, qword [0x00545e30]
mov rax, qword gs:[rax]
cmp rax, 0
je 0x465ebb
mov r14, qword [rax]
sub rsp, 0x10
mov rax, rcx
mov rbx, rdx
call sym.runtime.sigtrampgo
add rsp, 0x10
mov rdi, qword [rsp]
mov rsi, qword [rsp + 8]
mov rbp, qword [rsp + 0x10]
mov rbx, qword [rsp + 0x18]
mov r12, qword [rsp + 0x20]
mov r13, qword [rsp + 0x28]
mov r14, qword [rsp + 0x30]
mov r15, qword [rsp + 0x38]
movups xmm6, xmmword [rsp + 0x40]
movups xmm7, xmmword [rsp + 0x50]
movups xmm8, xmmword [rsp + 0x60]
movups xmm9, xmmword [rsp + 0x70]
movups xmm10, xmmword [rsp + 0x80]
movups xmm11, xmmword [rsp + 0x90]
movups xmm12, xmmword [rsp + 0xa0]
movups xmm13, xmmword [rsp + 0xb0]
movups xmm14, xmmword [rsp + 0xc0]
movups xmm15, xmmword [rsp + 0xd0]
add rsp, 0xe0
popfq
pop rbp
ret
Function at 0x4660e0
Capabilities:
Access peb ldr_data
Get kernel32 base address

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x28
pushfq
cld
sub rsp, 0xe0
mov qword [rsp], rdi
mov qword [rsp + 8], rsi
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], r12
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x38], r15
movups xmmword [rsp + 0x40], xmm6
movups xmmword [rsp + 0x50], xmm7
movups xmmword [rsp + 0x60], xmm8
movups xmmword [rsp + 0x70], xmm9
movups xmmword [rsp + 0x80], xmm10
movups xmmword [rsp + 0x90], xmm11
movups xmmword [rsp + 0xa0], xmm12
movups xmmword [rsp + 0xb0], xmm13
movups xmmword [rsp + 0xc0], xmm14
movups xmmword [rsp + 0xd0], xmm15
mov rax, qword [0x00545e30]
mov rax, qword gs:[rax]
cmp rax, 0
jne 0x466177
int 3
mov r14, qword [rax]
sub rsp, 0x28
mov qword [rsp], rcx
mov qword [rsp + 8], rdx
mov qword [rsp + 0x10], r8
mov qword [rsp + 0x18], r9
call sym.runtime.sehhandler.abi0
mov eax, dword [rsp + 0x20]
add rsp, 0x28
mov rdi, qword [rsp]
mov rsi, qword [rsp + 8]
mov rbp, qword [rsp + 0x10]
mov rbx, qword [rsp + 0x18]
mov r12, qword [rsp + 0x20]
mov r13, qword [rsp + 0x28]
mov r14, qword [rsp + 0x30]
mov r15, qword [rsp + 0x38]
movups xmm6, xmmword [rsp + 0x40]
movups xmm7, xmmword [rsp + 0x50]
movups xmm8, xmmword [rsp + 0x60]
movups xmm9, xmmword [rsp + 0x70]
movups xmm10, xmmword [rsp + 0x80]
movups xmm11, xmmword [rsp + 0x90]
movups xmm12, xmmword [rsp + 0xa0]
movups xmm13, xmmword [rsp + 0xb0]
movups xmm14, xmmword [rsp + 0xc0]
movups xmm15, xmmword [rsp + 0xd0]
add rsp, 0xe0
popfq
add rsp, 0x28
pop rbp
ret

Function at 0x466540
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 0x466574
mov rcx, 0x28
jmp 0x46657f
shl rcx, 3
add rcx, 0x1480
mov qword [0x00545e30], rcx
pop rbp
ret
Function at 0x46d980
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x46da4a
push rbp
mov rbp, rsp
sub rsp, 0x48
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], rbx
mov qword [rsp], rax
mov qword [rsp + 8], rbx
mov byte [rsp + 0x10], 0
call sym.internal_bytealg.IndexByteString.abi0
xorps xmm15, xmm15
mov r14, qword [0x00545e30]
mov r14, qword gs:[r14]
mov r14, qword [r14]
cmp qword [rsp + 0x18], 0xffffffffffffffff
jne 0x46da2f
mov rcx, qword [rsp + 0x60]
lea rdx, [rcx + 1]
mov qword [rsp + 0x40], rdx
lea rax, [0x00474a40]
xor ebx, ebx
mov rcx, rdx
call sym.runtime.makeslice
mov rbx, qword [rsp + 0x60]
mov rcx, rax
xor edi, edi
mov rsi, qword [rsp + 0x40]
mov rax, qword [rsp + 0x58]
nop dword [rax]
call sym.syscall.encodeWTF16
inc rbx
cmp rcx, rbx
jae 0x46da1e
mov edi, 1
lea rsi, [0x00474a40]
call sym.runtime.growslice
mov word [rax + rbx*2 - 2], 0
xor edi, edi
xor esi, esi
add rsp, 0x48
pop rbp
ret
xor eax, eax
xor ebx, ebx
mov rcx, rbx
lea rdi, [0x004a1068]
lea rsi, [0x004a0d60]
add rsp, 0x48
pop rbp
ret
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
call sym.runtime.morestack_noctxt.abi0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
jmp sym.syscall.UTF16FromString
Function at 0x140003fa0
Capabilities:
Enumerate pe sections
Parse pe header

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

Function at 0x140004020
Capabilities:
Parse pe header

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

Function at 0x1400040e0
Capabilities:
Parse pe header

Disassembly:
mov rax, qword [0x14000e370]
xor edx, edx
cmp word [rax], 0x5a4d
jne 0x1400040ff
movsxd rcx, dword [rax + 0x3c]
add rcx, rax
cmp dword [rcx], 0x4550
je 0x140004108
mov rax, rdx
ret
cmp word [rcx + 0x18], 0x20b
cmove rdx, rax
mov rax, rdx
ret

Function at 0x14000192c
Capabilities:
Parse pe header

Disassembly:
sub rsp, 0x28
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
test rax, rax
je 0x140001976
mov ecx, 0x5a4d
cmp word [rax], cx
jne 0x140001976
movsxd rcx, dword [rax + 0x3c]
add rcx, rax
cmp dword [rcx], 0x4550
jne 0x140001976
mov eax, 0x20b
cmp word [rcx + 0x18], ax
jne 0x140001976
cmp dword [rcx + 0x84], 0xe
jbe 0x140001976
cmp dword [rcx + 0xf8], 0
setne al
jmp 0x140001978
xor al, al
add rsp, 0x28
ret
Function at 0x1401fe800
Capabilities:
Encode data using xor
Hash data using murmur3

Disassembly:
push rdi
push rsi
push rbp
push rbx
sub rsp, 0x28
mov rbx, r8
mov esi, edx
xor edi, edi
mov ebp, dword [rbx + 8]
test ebp, ebp
jle 0x1401fe834
mov ecx, edi
mov rcx, qword [rbx + rcx*8 + 0x10]
mov rax, qword [rcx]
call qword [rax + 0x28]
mov ecx, esi
rol ecx, 0xd
add ecx, esi
mov esi, eax
xor esi, ecx
inc edi
cmp ebp, edi
jg 0x1401fe816
mov eax, esi
rol eax, 0xf
add eax, esi
add rsp, 0x28
pop rbx
pop rbp
pop rsi
pop rdi
ret
Function at 0x140003990
Capabilities:
Query or enumerate registry value

Disassembly:
mov qword [rsp + 8], rcx
sub rsp, 0xa8
mov rax, qword [0x140023040]
xor rax, rsp
mov qword [rsp + 0x90], rax
lea rax, [rsp + 0x80]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
lea rdx, str.HARDWARERESOURCEMAPSystem_ResourcesPhysical_Memory
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
lea rax, [rsp + 0x78]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 0
lea r9, [rsp + 0x88]
xor r8d, r8d
lea rdx, str..Translated
mov rcx, qword [rsp + 0x80]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
nop
mov eax, dword [rsp + 0x78]
mov ecx, eax
call fcn.140017e90
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0x78]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x88]
xor r8d, r8d
lea rdx, str..Translated
mov rcx, qword [rsp + 0x80]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x48], eax
mov rax, qword [rsp + 0x38]
add rax, 0x18
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x30], 0
jmp 0x140003a88
mov eax, dword [rsp + 0x30]
inc eax
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x48]
cmp dword [rsp + 0x30], eax
jae 0x140003ac5
mov rax, qword [rsp + 0x40]
add rax, 8
mov r9, rax
mov r8, qword [rsp + 0x40]
lea rdx, [rsp + 0x68]
lea rcx, [0x140023e40]
call fcn.140007e80
nop
mov rax, qword [rsp + 0x40]
add rax, 0x14
mov qword [rsp + 0x40], rax
jmp 0x140003a7e
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x50], rax
mov rcx, qword [rsp + 0x50]
call fcn.140017afc
cmp qword [rsp + 0x50], 0
jne 0x140003aec
mov qword [rsp + 0x60], 0
jmp 0x140003aff
mov qword [rsp + 0x38], 0x8123
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x60], rax
mov rcx, qword [rsp + 0x80]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov al, 1
mov rcx, qword [rsp + 0x90]
xor rcx, rsp
call fcn.140017aa0
add rsp, 0xa8
ret