joyce8/EMBER2024-capa huggingface dataset:
Function at 0x180020690
Capabilities:
Set socket configuration

Disassembly:
mov qword [rsp + 8], rcx
sub rsp, 0x48
mov rcx, qword [rsp + 0x50]
call fcn.180004810
mov dword [rsp + 0x30], 1
mov rcx, qword [rsp + 0x50]
call fcn.18001ff60
lea r8, [rsp + 0x30]
mov edx, 0x8004667e
mov rcx, rax
call qword [sym.imp.WS2_32.dll_ioctlsocket]
mov rax, qword [rsp + 0x50]
add rax, 0x78
mov qword [rsp + 0x38], rax
mov edx, 1
mov rcx, qword [rsp + 0x38]
call fcn.180006410
mov rax, qword [rsp + 0x50]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x50]
call qword [rax + 0x48]
cdqe
mov qword [rsp + 0x20], 0
xor r9d, r9d
mov r8, rax
mov edx, 0xca
mov rcx, qword [rsp + 0x50]
call fcn.180005750
mov rcx, qword [rsp + 0x50]
mov dword [rcx + 0xb0], eax
mov rax, qword [rsp + 0x50]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x50]
call qword [rax + 0x40]
cdqe
mov qword [rsp + 0x20], 0
mov r9b, 1
mov r8, rax
mov edx, 0xcb
mov rcx, qword [rsp + 0x50]
call fcn.180005750
mov rcx, qword [rsp + 0x50]
mov dword [rcx + 0xb4], eax
mov rax, qword [rsp + 0x50]
mov eax, dword [rax + 0xb4]
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0x50]
mov r9d, dword [rax + 0xb0]
lea r8, str.Timers:_disconnection_id__d___ping_id__d_
mov edx, 8
mov rcx, qword [rsp + 0x50]
call fcn.18000c340
mov edx, select
mov rcx, qword [rsp + 0x50]
call fcn.180021b80
mov rcx, qword [rsp + 0x50]
call fcn.1800224b0
add rsp, 0x48
ret
Function at 0x180049bb0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r14
sub rsp, 0x20
mov edi, edx
mov ebp, r9d
mov r14d, r8d
mov rsi, rcx
lea ebx, [rdi + 1]
imul ebx, r9d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, ebx
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov r10, rax
test rax, rax
je 0x180049c48
xor r8d, r8d
xor ecx, ecx
test edi, edi
je 0x180049c48
mov r9d, edi
lea r11, [0x180084cf0]
nop
xor eax, eax
lea rsi, [rsi + 1]
cmp ecx, 0x40
cmovne eax, ecx
mov edx, eax
movzx ecx, byte [rax + r11]
lea eax, [r8 + 1]
xor cl, byte [rsi - 1]
xor cl, r14b
cmp ebp, 2
mov byte [r8 + r10], cl
lea ecx, [rdx + 1]
cmovne eax, r8d
lea r8d, [rax + 1]
sub r9, 1
jne 0x180049c10
mov rax, r10
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
add rsp, 0x20
pop r14
ret
Function at 0x180057450
Capabilities:
Parse pe header

Disassembly:
mov qword [rsp + 8], rcx
sub rsp, 0x18
mov eax, 1
imul rax, rax, 5
mov rcx, qword [str.Lh_p4VX_]
movsx eax, byte [rcx + rax]
cmp eax, 0x73
jne 0x180057486
mov eax, 1
imul rax, rax, 7
mov rcx, qword [str.Lh_p4VX_]
mov byte [rcx + rax], 0x36
mov eax, 1
imul rax, rax, 8
mov rcx, qword [str.F_v__w_l_KOcCokaF]
movsx eax, byte [rcx + rax]
cmp eax, 0x69
jne 0x1800574b3
mov eax, 1
imul rax, rax, 0xd
mov rcx, qword [str.F_v__w_l_KOcCokaF]
mov byte [rcx + rax], 0x3e
movzx eax, byte [0x1800a2c40]
imul eax, eax, 0x46
mov byte [0x1800a2c05], al
imul eax, dword [0x1800a2c44], 0xe50bbd0e
mov dword [0x1800a2c44], eax
movzx eax, byte [0x1800a2c05]
add eax, 0xa3632a76
mov dword [0x1800a2c44], eax
imul eax, dword [0x1800a2c44], 0x16251dda
mov dword [0x1800a2c44], eax
movzx eax, byte [0x1800a2c40]
and eax, 0xdc
mov byte [0x1800a2c05], al
movzx eax, byte [0x1800a2c05]
sub eax, 0xd1
mov byte [0x1800a2c05], al
mov byte [rsp], 0
cmp qword [rsp + 0x20], 0
je 0x18005763b
mov eax, dword [0x1800a2c44]
and eax, 0x11a50748
mov dword [0x1800a2c44], eax
movzx eax, word [0x1800a2c40]
add eax, 0x8b06
mov word [0x1800a2c40], ax
movzx eax, byte [0x1800a2c05]
add eax, 0xeeb0
mov word [0x1800a2c40], ax
movzx eax, byte [0x1800a2c05]
add eax, 0xcd
mov byte [0x1800a2c05], al
movzx eax, byte [0x1800a2c05]
and eax, 0x2c
mov byte [0x1800a2c05], al
movzx eax, byte [0x1800a2c05]
xor eax, 0xd88
mov word [0x1800a2c40], ax
mov rax, qword [rsp + 0x20]
movzx eax, word [rax]
cmp eax, 0x5a4d
jne 0x18005763b
movzx eax, word [0x1800a2c40]
imul eax, eax, 0xa485f61d
mov dword [0x1800a2c44], eax
movzx eax, byte [0x1800a2c05]
and eax, 0x25efe510
mov dword [0x1800a2c44], eax
movzx eax, byte [0x1800a2c05]
add eax, 0x50bd5b33
mov dword [0x1800a2c44], eax
movzx eax, byte [0x1800a2c40]
sub eax, 0xf8
mov byte [0x1800a2c05], al
mov rax, qword [rsp + 0x20]
movsxd rax, dword [rax + 0x3c]
mov rcx, qword [rsp + 0x20]
cmp dword [rcx + rax], 0x4550
jne 0x180057612
mov dword [rsp + 4], 1
jmp 0x18005761a
mov dword [rsp + 4], 0
cmp dword [rsp + 4], 0
jne 0x18005762b
mov dword [rsp + 8], 0
jmp 0x180057633
mov dword [rsp + 8], 1
movzx eax, byte [rsp + 8]
mov byte [rsp], al
movzx eax, byte [rsp]
add rsp, 0x18
ret
Function at 0x180065960
Capabilities:
Encrypt data using aes via x86 extensions
Resolve function by parsing pe exports

Disassembly:
add edx, 0xfffffff0
cmp edx, 0xf0
ja case.0x180065989.17
movsxd rax, edx
lea r9, [0x180000000]
movzx eax, byte [r9 + rax + 0x659bc]
mov edx, dword [r9 + rax*4 + 0x659ac]
add rdx, r9
jmp rdx
mov rdx, r8
jmp fcn.180066d00
mov rdx, r8
jmp fcn.180066fd0
mov rdx, r8
jmp fcn.180067320
mov eax, 1
ret
Function at 0x18007825c
Capabilities:
Create thread
Print debug messages

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r14
sub rsp, 0x50
mov esi, r8d
mov r14, rdx
mov rbx, rcx
call fcn.18007928c
mov bpl, al
call qword [sym.imp.KERNEL32.dll_IsDebuggerPresent]
xor edi, edi
test eax, eax
je 0x1800782af
test rbx, rbx
je 0x1800782a0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
test bpl, bpl
je 0x1800782af
mov edi, 4
jmp 0x180078358
call fcn.180079094
test al, al
jne 0x1800782cc
call qword [sym.imp.KERNEL32.dll_IsDebuggerPresent]
neg eax
sbb edi, edi
neg edi
add edi, 3
jmp 0x180078358
test bpl, bpl
je 0x18007832f
mov qword [rsp + 0x28], rdi
lea r9, [rsp + 0x30]
lea r8, [0x180078234]
mov dword [rsp + 0x20], edi
xor edx, edx
mov qword [rsp + 0x30], r14
xor ecx, ecx
mov qword [rsp + 0x38], rbx
mov dword [rsp + 0x40], esi
mov dword [rsp + 0x44], edi
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov rbx, rax
cmp rax, 0xffffffffffffffff
je 0x180078358
xor r8d, r8d
or edx, 0xffffffff
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_WaitForSingleObjectEx]
mov rcx, rbx
test eax, eax
je 0x180078329
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x180078358
mov edi, dword [rsp + 0x44]
jmp 0x180078321
call fcn.1800791b8
test al, al
jne 0x180078340
bts esi, 0x15
xor ecx, ecx
jmp 0x180078348
call fcn.1800790f0
mov rcx, rax
mov r9d, esi
mov r8, r14
mov rdx, rbx
call fcn.18007900c
mov edi, eax
mov rbx, qword [rsp + 0x60]
mov eax, edi
mov rdi, qword [rsp + 0x78]
mov rbp, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
add rsp, 0x50
pop r14
ret
Function at 0x140014268
Capabilities:
Terminate process

Disassembly:
sub rsp, 0x28
call fcn.140014bd4
add rsp, 0x28
jmp 0x140014268
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdi
push r14
sub rsp, 0xb0
and dword [rsp + 0x20], 0
lea rcx, [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_GetStartupInfoW]
nop
mov rax, qword gs:[0x30]
mov rbx, qword [rax + 8]
xor edi, edi
xor eax, eax
lock cmpxchg qword [0x140022170], rbx
je 0x1400142b2
cmp rax, rbx
jne 0x1400142c7
mov edi, 1
mov eax, dword [0x140022178]
cmp eax, 1
jne 0x1400142d4
lea ecx, [rax + 0x1e]
call fcn.14016d000
jmp 0x140014341
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x14001429b
mov eax, dword [0x140022178]
test eax, eax
jne 0x140014337
mov dword [0x140022178], 1
lea r14, [0x140017e20]
lea rbx, [0x140017e08]
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x24], eax
cmp rbx, r14
jae 0x140014329
test eax, eax
jne 0x14001432d
cmp qword [rbx], 0
je 0x14001431e
mov rax, qword [rbx]
mov rcx, qword [0x140017da8]
call rcx
mov dword [rsp + 0x24], eax
add rbx, 8
mov qword [rsp + 0x30], rbx
jmp 0x1400142ff
test eax, eax
je 0x140014341
mov eax, 0xff
jmp 0x140014494
mov dword [0x140021764], 1
mov eax, dword [0x140022178]
cmp eax, 1
jne 0x140014369
lea rdx, [0x140017e00]
lea rcx, [0x140017db0]
call sub.msvcrt.dll__initterm
mov dword [0x140022178], 2
test edi, edi
jne 0x140014376
xor eax, eax
xchg qword [0x140022170], rax
cmp qword [0x140022190], 0
je 0x1400143aa
lea rcx, [0x140022190]
call fcn.140014b40
test eax, eax
je 0x1400143aa
xor r8d, r8d
lea edx, [r8 + 2]
xor ecx, ecx
mov rax, qword [0x140022190]
mov r9, qword [0x140017da8]
call r9
mov rax, qword [sym.imp.msvcrt.dll__acmdln]
mov rbx, qword [rax]
mov qword [rsp + 0x28], rbx
mov edi, dword [rsp + 0x20]
movzx ecx, byte [rbx]
cmp cl, 0x20
ja 0x140014436
test cl, cl
je 0x1400143cd
test edi, edi
jne 0x140014436
dec cl
cmp cl, 0x1f
ja 0x1400143e0
inc rbx
mov qword [rsp + 0x28], rbx
mov cl, byte [rbx]
jmp 0x1400143cd
test byte [rsp + 0x7c], 1
movzx eax, word [rsp + 0x80]
mov r9d, 0xa
cmovne r9d, eax
mov r8, rbx
xor edx, edx
lea rcx, [0x140000000]
call fcn.14000191c
mov dword [0x140021760], eax
cmp dword [0x140021780], 0
jne 0x14001441f
mov ecx, eax
call qword [sym.imp.msvcrt.dll_exit]
cmp dword [0x140021764], 0
jne 0x140014434
call qword [sym.imp.msvcrt.dll__cexit]
mov eax, dword [0x140021760]
jmp 0x140014494
cmp cl, 0x22
jne 0x140014448
xor eax, eax
test edi, edi
sete al
mov edi, eax
mov dword [rsp + 0x20], eax
call qword [sym.imp.msvcrt.dll__ismbblead]
test eax, eax
je 0x14001445a
inc rbx
mov qword [rsp + 0x28], rbx
inc rbx
mov qword [rsp + 0x28], rbx
jmp 0x1400143bd
lea r11, [rsp + 0xb0]
mov rbx, qword [r11 + 0x10]
mov rdi, qword [r11 + 0x18]
mov rsp, r11
pop r14
ret
Function at 0x1adf366
Capabilities:
Encode data using xor

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 8
push r12
push r13
push r14
push r15
push rbx
mov qword [rbp + 0x10], rcx
mov qword [rbp + 0x18], rdx
mov qword [rbp + 0x20], r8
mov r12, 3
mov r13, 1
sub rsp, 0x20
mov rcx, qword [rbp + 0x10]
mov rdx, r12
call fcn.01adf4d8
add rsp, 0x20
rol eax, 8
sub rsp, 0x20
mov rcx, rax
mov rdx, qword [rbp + 0x18]
call fcn.01adf4fc
add rsp, 0x20
sub rsp, 0x20
mov rcx, rax
mov rdx, qword [rbp + 0x20]
mov r8, r13
call fcn.01adf4ad
add rsp, 0x20
inc r13
mov rbx, rax
mov r14, r12
sub r14, 3
sub rsp, 0x20
mov rcx, qword [rbp + 0x10]
mov rdx, r14
call fcn.01adf4d8
add rsp, 0x20
xor rax, rbx
inc r12
sub rsp, 0x20
mov rcx, rax
mov rdx, qword [rbp + 0x10]
mov r8, r12
call fcn.01adf481
add rsp, 0x20
mov r15, 3
sub rsp, 0x20
mov rcx, qword [rbp + 0x10]
mov rdx, r12
call fcn.01adf4d8
add rsp, 0x20
mov rbx, rax
mov r14, r12
sub r14, 3
sub rsp, 0x20
mov rcx, qword [rbp + 0x10]
mov rdx, r14
call fcn.01adf4d8
add rsp, 0x20
xor rax, rbx
inc r12
sub rsp, 0x20
mov rcx, rax
mov rdx, qword [rbp + 0x10]
mov r8, r12
call fcn.01adf481
add rsp, 0x20
dec r15
jne 0x1adf418
cmp r12, 0x2b
jne 0x1adf391
pop rbx
pop r15
pop r14
pop r13
pop r12
leave
ret

Function at 0x1adf6fb
Capabilities:
Encode data using xor

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x10
push r12
push rbx
mov qword [rbp + 0x10], rcx
mov qword [rbp + 0x18], rdx
mov qword [rbp + 0x20], r8
mov qword [rbp + 0x28], r9
mov rdx, qword [rbp + 0x10]
mov r12, 4
mov eax, dword [rdx]
bswap eax
mov rbx, qword [rbp + 0x18]
xlatb
mov cl, al
shr eax, 8
mov rbx, qword [rbp + 0x28]
xlatb
xor cl, al
shr eax, 8
mov rbx, qword [rbp + 0x20]
xlatb
xor cl, al
shr eax, 8
mov rbx, qword [rbp + 0x30]
xlatb
xor cl, al
mov dword [rbp - 0x10], ecx
mov eax, dword [rdx]
bswap eax
mov rbx, qword [rbp + 0x28]
xlatb
mov cl, al
shr eax, 8
mov rbx, qword [rbp + 0x20]
xlatb
xor cl, al
shr eax, 8
mov rbx, qword [rbp + 0x30]
xlatb
xor cl, al
shr eax, 8
mov rbx, qword [rbp + 0x18]
xlatb
xor cl, al
mov eax, dword [rbp - 0x10]
shl eax, 8
mov al, cl
mov dword [rbp - 0x10], eax
mov eax, dword [rdx]
bswap eax
mov rbx, qword [rbp + 0x20]
xlatb
mov cl, al
shr eax, 8
mov rbx, qword [rbp + 0x30]
xlatb
xor cl, al
shr eax, 8
mov rbx, qword [rbp + 0x18]
xlatb
xor cl, al
shr eax, 8
mov rbx, qword [rbp + 0x28]
xlatb
xor cl, al
mov eax, dword [rbp - 0x10]
shl eax, 8
mov al, cl
mov dword [rbp - 0x10], eax
mov eax, dword [rdx]
bswap eax
mov rbx, qword [rbp + 0x30]
xlatb
mov cl, al
shr eax, 8
mov rbx, qword [rbp + 0x18]
xlatb
xor cl, al
shr eax, 8
mov rbx, qword [rbp + 0x28]
xlatb
xor cl, al
shr eax, 8
mov rbx, qword [rbp + 0x20]
xlatb
xor cl, al
mov eax, dword [rbp - 0x10]
shl eax, 8
mov al, cl
bswap eax
mov dword [rdx], eax
add rdx, 4
dec r12
jne 0x1adf721
pop rbx
pop r12
leave
ret
Function at 0x1ae043c
Capabilities:
Inspect section memory permissions

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x110
push rbx
push r12
mov qword [rbp + 0x10], rcx
mov qword [rbp + 0x18], rdx
mov qword [rbp + 0x20], r8
mov rdx, qword [rbp + 0x10]
mov ebx, dword [rdx + 0x24]
and ebx, 0xe0000000
cmp ebx, 0xe0000000
jne 0x1ae047b
mov rax, 0x40
mov qword [rbp - 0x110], rax
jmp 0x1ae04ec
mov ebx, dword [rdx + 0x24]
and ebx, 0x60000000
cmp ebx, 0x60000000
jne 0x1ae049c
mov rax, 0x20
mov qword [rbp - 0x110], rax
jmp 0x1ae04ec
mov ebx, dword [rdx + 0x24]
and ebx, 0xc0000000
cmp ebx, 0xc0000000
jne 0x1ae04bd
mov rax, 4
mov qword [rbp - 0x110], rax
jmp 0x1ae04ec
mov ebx, dword [rdx + 0x24]
and ebx, 0x40000000
cmp ebx, 0x40000000
jne 0x1ae04de
mov rax, 2
mov qword [rbp - 0x110], rax
jmp 0x1ae04ec
mov rax, 1
mov qword [rbp - 0x110], rax
mov eax, dword [rdx + 0xc]
add rax, qword [rbp + 0x18]
mov ebx, dword [rdx + 8]
lea r12, [rbp - 0x108]
sub rsp, 0x20
mov rcx, rax
mov rdx, rbx
mov r8, qword [rbp - 0x110]
mov r9, r12
call qword [sym.imp.KERNEL32.DLL_VirtualProtect]
add rsp, 0x20
test rax, rax
je 0x1ae0534
mov rdx, qword [rbp + 0x10]
mov eax, dword [rdx + 0xc]
add rax, qword [rbp + 0x18]
mov rax, 1
jmp 0x1ae0537
sub rax, rax
pop r12
pop rbx
leave
ret

Function at 0x1ae053c
Capabilities:
Parse pe header

Disassembly:
push rbp
mov rbp, rsp
mov qword [rbp + 0x10], rcx
mov rcx, qword [rbp + 0x10]
mov ax, word [rcx]
cmp ax, 0x5a4d
jne 0x1ae0569
mov eax, dword [rcx + 0x3c]
add rcx, rax
mov eax, dword [rcx]
cmp eax, 0x4550
jne 0x1ae0569
add rcx, 4
mov rax, rcx
leave
ret
sub rax, rax
leave
ret

Function at 0x1ae05b1
Capabilities:
Terminate process

Disassembly:
sub rsp, 8
sub rsp, 0x20
call fcn.01ae05e2
add rsp, 0x20
test rax, rax
je 0x1ae05cd
add rsp, 8
jmp rax
sub rsp, 0x20
mov rcx, 0
call qword [sym.imp.KERNEL32.DLL_ExitProcess]
Function at 0x1400011a0
Capabilities:
Create directory

Disassembly:
add byte [rax], al
add byte [rax], al
sub rsp, 0x58
mov eax, 0x3bf255f0
mov rcx, qword [rsp + 0x48]
mov dword [rsp + 0x3c], 0x2fe6135
and al, 0x3c
xor eax, 0x8b02fe61
push rsp
and al, 0x3c
cmp eax, edx
mov dword [rsp + 0x38], edx
mov qword [rsp + 0x30], rcx
jb 0x1400011fc
jmp 0x14000120b
mov rax, qword [sym.imp.KERNEL32.dll_SetLastError]
mov ecx, 0x65
call rax
lea rcx, str.:
mov rax, qword [sym.imp.KERNEL32.dll_CreateDirectoryA]
xor edx, edx
call rax
mov rcx, qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x2c], eax
call rcx
sub eax, 3
sbb r8d, r8d
and r8d, 1
mov dword [rsp + 0x28], eax
mov eax, r8d
add rsp, 0x58
ret
mov rax, qword [sym.imp.USER32.dll_GetDoubleClickTime]
call rax
nop
add rsp, 0x58
ret
mov eax, 0x4963226b
mov ecx, eax
mov eax, dword [rsp + 0x38]
add eax, 0x5008bf9e
mov dword [rsp + 0x54], eax
mov qword [rsp + 0x40], 0x29ed8b53
mov rdx, qword [rsp + 0x30]
mov qword [rsp + 0x20], rcx
mov rcx, rdx
shl rdx, cl
mov qword [rsp + 0x48], rdx
mov rdx, qword [rsp + 0x40]
sub rdx, 0x67b8bbca
mov eax, dword [rsp + 0x38]
and eax, 0x4169a3e1
mov dword [rsp + 0x54], eax
mov r8, qword [rsp + 0x20]
and al, 0x20
cmp r8, rdx
invalid
invalid

Function at 0x140001258
Capabilities:
Create directory

Disassembly:
add byte [rax], al
add byte [rax], al
sub rsp, 0x58
mov eax, 0x3bf255f0
mov rcx, qword [rsp + 0x48]
mov dword [rsp + 0x3c], 0x2fe6135
and al, 0x3c
xor eax, 0x8b02fe61
push rsp
and al, 0x3c
cmp eax, edx
mov dword [rsp + 0x38], edx
mov qword [rsp + 0x30], rcx
jb 0x1400011fc
jmp 0x14000120b
mov rax, qword [sym.imp.KERNEL32.dll_SetLastError]
mov ecx, 0x65
call rax
lea rcx, str.:
mov rax, qword [sym.imp.KERNEL32.dll_CreateDirectoryA]
xor edx, edx
call rax
mov rcx, qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x2c], eax
call rcx
sub eax, 3
sbb r8d, r8d
and r8d, 1
mov dword [rsp + 0x28], eax
mov eax, r8d
add rsp, 0x58
ret
mov rax, qword [sym.imp.USER32.dll_GetDoubleClickTime]
call rax
nop
add rsp, 0x58
ret
mov eax, 0x4963226b
mov ecx, eax
mov eax, dword [rsp + 0x38]
add eax, 0x5008bf9e
mov dword [rsp + 0x54], eax
mov qword [rsp + 0x40], 0x29ed8b53
mov rdx, qword [rsp + 0x30]
mov qword [rsp + 0x20], rcx
mov rcx, rdx
shl rdx, cl
mov qword [rsp + 0x48], rdx
mov rdx, qword [rsp + 0x40]
sub rdx, 0x67b8bbca
mov eax, dword [rsp + 0x38]
and eax, 0x4169a3e1
mov dword [rsp + 0x54], eax
mov r8, qword [rsp + 0x20]
and al, 0x20
cmp r8, rdx
invalid
invalid

Function at 0x140001270
Capabilities:
Terminate process

Disassembly:
sub rsp, 0x28
mov rax, qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
call rax
cmp eax, 4
jae 0x140001292
mov rax, qword [sym.imp.KERNEL32.dll_ExitProcess]
mov ecx, 0xfffffffe
call rax
ud2
add rsp, 0x28
ret

Function at 0x1400012a0
Capabilities:
Terminate process

Disassembly:
push rsi
push rdi
sub rsp, 0x2a8
xor eax, eax
mov ecx, eax
invalid
invalid
xchg esp, eax
and al, 0x80
add byte [rax], al
Function at 0x1400012d4
Capabilities:
Terminate process

Disassembly:
mov dword [rsp + 0x7c], 0xffffffff
mov r10, qword [rsp + 0x298]
mov qword [rsp + 0x298], 0x2921e42d
mov r11, qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
xor eax, eax
mov esi, eax
mov qword [rsp + 0x70], rcx

Function at 0x140001300
Capabilities:
Terminate process

Disassembly:
mov rcx, rsi
mov qword [rsp + 0x68], r10
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x58], r9
mov qword [rsp + 0x50], r8
call r11
mov edi, 0x200
mov rcx, qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov r8d, 0x200
mov qword [rsp + 0x48], rcx
mov rcx, rax
mov rdx, qword [rsp + 0x60]
mov rax, qword [rsp + 0x48]
mov dword [rsp + 0x44], edi
call rax
lea rcx, [rsp + 0x7c]
mov rdx, qword [sym.imp.KERNEL32.dll_GetBinaryTypeW]
lea r9, [rsp + 0x7c]
mov r10, qword [rsp + 0x60]
mov qword [rsp + 0x38], rcx
mov rcx, r10
mov qword [rsp + 0x30], rdx
mov rdx, r9
mov r9, qword [rsp + 0x30]
mov dword [rsp + 0x2c], eax
call r9
cmp eax, 0
je 0x1400013d7
jmp 0x1400013ae
mov eax, 0xc28d584
mov ecx, eax
mov rdx, qword [rsp + 0x68]
imul r8, rdx, 0x1b1eb659
mov r9, qword [rsp + 0x288]
sub r9, 0x496d631d
mov qword [rsp + 0x298], r8
add al, byte [rax]
add byte [rcx + rdi - 0x37], cl
mov eax, dword [rsp + 0x2a4]
xor eax, 0x5610deef
cmp dword [rsp + 0x7c], eax
je 0x14000137d
jmp 0x1400013cb
mov dword [rsp + 0x294], 0x3db98b20
mov rax, qword [sym.imp.KERNEL32.dll_ExitProcess]
mov ecx, 7
call rax
ud2
Function at 0x1400037f0
Capabilities:
Encode data using xor

Disassembly:
push rsi
sub rsp, 0x80
xor eax, eax
mov dword [rsp + 0x6c], 0x6669cab2
mov r9d, dword [rsp + 0x6c]
xor r9d, 0x6669cab2
mov r10d, r8d
xor r10d, 0xffffffff
mov dword [rsp + 0x7c], r10d
cmp r8d, r9d
mov qword [rsp + 0x60], rdx
mov dword [rsp + 0x5c], r8d
mov qword [rsp + 0x50], rcx
mov dword [rsp + 0x4c], eax
je 0x1400038a4
mov eax, dword [rsp + 0x4c]
lea rcx, [0x1400252c0]
mov edx, eax
and edx, 0xf
mov edx, edx
mov r8d, edx
mov edx, dword [rsp + 0x6c]
xor edx, 0x6669cab3
mov r9, qword [rsp + 0x50]
mov qword [rsp + 0x40], rcx
mov rcx, r9
mov r10, qword [rsp + 0x60]
mov dword [rsp + 0x3c], edx
mov rdx, r10
mov qword [rsp + 0x30], r8
mov r8d, eax
mov r11, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x30]
movzx r9d, byte [r11 + rsi]
mov dword [rsp + 0x2c], eax
call sym.dxgi.dll_CreateDXGIFactory1
mov eax, dword [rsp + 0x2c]
mov r8d, dword [rsp + 0x3c]
add eax, r8d
mov r8d, dword [rsp + 0x5c]
cmp eax, r8d
mov dword [rsp + 0x4c], eax
jne 0x140003832
add rsp, 0x80
pop rsi
ret

Function at 0x140003980
Capabilities:
Terminate process

Disassembly:
sub rsp, 0x48
mov eax, 0x173a69d7
mov edx, 0x4223d576
mov dword [rsp + 0x3c], 0x25b1be8b
sub edx, dword [rsp + 0x3c]
mov dword [rsp + 0x38], edx
mov edx, dword [rsp + 0x38]
add edx, 0x496e9615
mov r8d, dword [rcx + 0x3c]
mov qword [rsp + 0x40], 0x3a880ee1
movsxd r9, r8d
mov r10, rcx
add r10, r9
mov r8d, dword [rcx + r9]
cmp eax, edx
mov qword [rsp + 0x30], r10
mov dword [rsp + 0x2c], r8d
jae 0x1400039f3
xor eax, eax
mov ecx, dword [rsp + 0x2c]
sub ecx, 0x4550
mov edx, eax
mov r8, qword [rsp + 0x30]
cmove rdx, r8
mov rax, rdx
mov dword [rsp + 0x28], ecx
add rsp, 0x48
ret
mov rax, qword [sym.imp.KERNEL32.dll_ExitProcess]
mov ecx, 0x3a59ad19
call rax
xor ecx, ecx
mov eax, ecx
add rsp, 0x48
ret
Function at 0x14000918c
Capabilities:
Hash data with crc32

Disassembly:
mov rax, qword [rcx + 0x1e8]
mov r10, r8
movsxd r9, dword [rcx + 0x1e0]
mov r11, rdx
mov rcx, r11
mov r8d, dword [rax + r9*4 - 4]
mov eax, r10d
sub eax, edx
neg r10
sbb edx, edx
and edx, eax
jmp fcn.140009ba4

Function at 0x140009834
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r14
push r15
sub rsp, 0x20
movsxd r15, r9d
mov rsi, r8
test r8, r8
je 0x14000985b
and qword [r8], 0
call fcn.140009970
mov rbx, rax
test rax, rax
je 0x140009954
xor edx, edx
mov rcx, rax
lea r8d, [rdx + 2]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fseek]
test eax, eax
jne 0x14000994b
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_ftell]
movsxd rdi, eax
cmp edi, 0xffffffff
je 0x14000994b
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fseek]
test eax, eax
jne 0x14000994b
mov rax, qword [0x14007bd40]
mov rbp, rdi
test rax, rax
je 0x1400098c3
inc dword [rax + 0x3c8]
mov rdx, qword [0x14007bd50]
lea rcx, [r15 + rdi]
call qword [section..data]
mov rdi, rax
test rax, rax
je 0x14000994b
mov r9, rbx
mov r8, rbp
mov edx, 1
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
cmp rax, rbp
je 0x140009922
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov rax, qword [0x14007bd40]
test rax, rax
je 0x140009910
dec dword [rax + 0x3c8]
mov rdx, qword [0x14007bd50]
mov rcx, rdi
call qword [0x14007a008]
jmp 0x140009954
test r15d, r15d
jle 0x140009935
lea rcx, [rdi + rbp]
mov r8, r15
xor edx, edx
call sub.VCRUNTIME140.dll_memset
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
test rsi, rsi
je 0x140009946
mov qword [rsi], rbp
mov rax, rdi
jmp 0x140009956
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
xor eax, eax
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
add rsp, 0x20
pop r15
pop r14
pop rdi
ret
Function at 0x140009ba4
Capabilities:
Encode data using xor
Hash data with crc32

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
cmp dword [0x14007bd74], 0
lea rsi, [0x14007bd70]
mov ebx, r8d
mov edi, edx
mov r10, rcx
jne 0x140009c0b
xor r9d, r9d
mov r11, rsi
mov r8d, r9d
mov edx, 8
mov ecx, r8d
mov eax, r8d
and ecx, 1
shr eax, 1
neg ecx
and ecx, 0xedb88320
mov r8d, ecx
xor r8d, eax
sub rdx, 1
jne 0x140009bd9
mov dword [r11], r8d
inc r9d
add r11, 4
cmp r9d, 0x100
jb 0x140009bd1
not ebx
mov edx, ebx
test edi, edi
jle 0x140009c2d
movzx eax, byte [r10]
inc r10
movzx ecx, dl
xor rcx, rax
shr edx, 8
xor edx, dword [rsi + rcx*4]
sub edi, 1
jne 0x140009c13
jmp 0x140009c67
mov r8b, byte [r10]
inc r10
test r8b, r8b
je 0x140009c67
mov r9b, 0x23
cmp r8b, r9b
jne 0x140009c4c
cmp byte [r10], r9b
jne 0x140009c4c
cmp byte [r10 + 1], r9b
cmove edx, ebx
movzx ecx, dl
movzx eax, r8b
mov r8b, byte [r10]
xor rcx, rax
shr edx, 8
inc r10
xor edx, dword [rsi + rcx*4]
test r8b, r8b
jne 0x140009c3b
mov rbx, qword [rsp + 8]
not edx
mov rsi, qword [rsp + 0x10]
mov eax, edx
mov rdi, qword [rsp + 0x18]
ret
Function at 0x14000fc40
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x10], rbx
push rdi
sub rsp, 0x20
mov rax, qword [0x14007bd40]
mov rbx, rcx
and dword [rax + 0x2d9c], 0
test rcx, rcx
je 0x14000fca9
and qword [rsp + 0x30], 0
lea rcx, [rsp + 0x30]
call fcn.14000fcb4
lea rdx, [0x14004da04]
mov rcx, rbx
mov rdi, rax
call fcn.140009970
mov rbx, rax
test rax, rax
je 0x14000fca9
mov r8, qword [rsp + 0x30]
mov r9, rax
mov edx, 1
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov rbx, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret