joyce8/EMBER2024-capa huggingface dataset:
Function at 0x140062a3a
Capabilities:
Terminate process

Disassembly:
jmp 0x1400debd0
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
sub rsp, 0x28
mov ecx, 0x17
call qword [sym.imp.KERNEL32.dll_IsProcessorFeaturePresent]
test eax, eax
je 0x1400debfe
mov ecx, 5
int 0x29
mov r8d, 1
mov edx, 0xc0000417
mov ecx, 2
call fcn.140062b89
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov edx, 0xc0000417
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_TerminateProcess]
add rsp, 0x28
ret

Function at 0x140062c97
Capabilities:
Allocate thread local storage

Disassembly:
jmp 0x1400f8450
mov qword [rsp + 8], rcx
sub rsp, 0x38
call fcn.1400f74a0
mov qword [rsp + 0x20], rax
cmp qword [rsp + 0x20], 0
je 0x1400f8487
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x28], rax
mov rcx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x28]
call qword [0x14016b010]
jmp 0x1400f848d
call qword [sym.imp.KERNEL32.dll_TlsAlloc]
add rsp, 0x38
ret

Function at 0x140062e2c
Capabilities:
Get geographical location

Disassembly:
jmp 0x1400f8720
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
sub rsp, 0x48
call fcn.1400f76a0
mov qword [rsp + 0x30], rax
cmp qword [rsp + 0x30], 0
je 0x1400f8773
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x38], rax
mov r9d, dword [rsp + 0x68]
mov r8, qword [rsp + 0x60]
mov edx, dword [rsp + 0x58]
mov rcx, qword [rsp + 0x50]
mov rax, qword [rsp + 0x38]
call qword [0x14016b010]
jmp 0x1400f8795
xor edx, edx
mov rcx, qword [rsp + 0x50]
call fcn.1400617ac
mov r9d, dword [rsp + 0x68]
mov r8, qword [rsp + 0x60]
mov edx, dword [rsp + 0x58]
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
add rsp, 0x48
ret
Function at 0x14001120d
Capabilities:
Terminate process

Disassembly:
jmp 0x140013570
mov qword [rsp + 8], rcx
sub rsp, 0x28
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetUnhandledExceptionFilter]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_UnhandledExceptionFilter]
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov edx, 0xc0000409
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_TerminateProcess]
add rsp, 0x28
ret

Function at 0x140011299
Capabilities:
Parse pe header

Disassembly:
jmp 0x1400148c0
sub rsp, 0x38
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov qword [rsp + 0x20], rax
cmp qword [rsp + 0x20], 0
jne 0x1400148e0
xor al, al
jmp 0x140014961
mov rax, qword [rsp + 0x20]
movzx eax, word [rax]
cmp eax, 0x5a4d
je 0x1400148f3
xor al, al
jmp 0x140014961
mov rax, qword [rsp + 0x20]
movsxd rax, dword [rax + 0x3c]
mov rcx, qword [rsp + 0x20]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x28]
cmp dword [rax], 0x4550
je 0x14001491d
xor al, al
jmp 0x140014961
mov rax, qword [rsp + 0x28]
movzx eax, word [rax + 0x18]
cmp eax, 0x20b
je 0x140014931
xor al, al
jmp 0x140014961
mov rax, qword [rsp + 0x28]
cmp dword [rax + 0x84], 0xe
ja 0x140014943
xor al, al
jmp 0x140014961
mov eax, 8
imul rax, rax, 0xe
mov rcx, qword [rsp + 0x28]
cmp dword [rcx + rax + 0x88], 0
jne 0x14001495f
xor al, al
jmp 0x140014961
mov al, 1
add rsp, 0x38
ret
Function at 0x140011366
Capabilities:
Manipulate console buffer
Write file on windows

Disassembly:
jmp 0x140011a80
mov qword [rsp + 0x18], r8
mov dword [rsp + 0x10], edx
mov dword [rsp + 8], ecx
push rbp
push rdi
sub rsp, 0x148
lea rbp, [rsp + 0x30]
lea rdi, [rsp + 0x30]
mov ecx, 0x16
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov ecx, dword [rsp + 0x168]
mov rax, qword [0x14001e040]
xor rax, rbp
mov qword [rbp + 0x100], rax
lea rcx, [0x1400240a6]
call fcn.1400113bb
movzx eax, word [rbp + 0x130]
mov word [rbp + 4], ax
movzx eax, word [rbp + 0x138]
mov word [rbp + 6], ax
movsxd rax, dword [0x14001e200]
lea rcx, [0x14001e970]
mov edx, dword [rbp + 4]
mov rcx, qword [rcx + rax*8]
call qword [sym.imp.KERNEL32.dll_SetConsoleCursorPosition]
mov rcx, qword [rbp + 0x140]
call fcn.14001118b
movsxd rcx, dword [0x14001e200]
lea rdx, [0x14001e970]
mov qword [rbp + 0xf8], rdx
mov qword [rsp + 0x20], 0
lea r9, [rbp + 0x24]
mov r8d, eax
mov rdx, qword [rbp + 0x140]
mov rax, qword [rbp + 0xf8]
mov rcx, qword [rax + rcx*8]
call qword [sym.imp.KERNEL32.dll_WriteFile]
lea rcx, [rbp - 0x30]
lea rdx, [0x14001aed0]
call fcn.140011343
mov rcx, qword [rbp + 0x100]
xor rcx, rbp
call fcn.1400111c7
lea rsp, [rbp + 0x118]
pop rdi
pop rbp
ret
Function at 0x18007cf00
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x30]
sub rsp, 0x130
mov rax, qword [0x1802940c0]
xor rax, rsp
mov qword [rbp + 0x20], rax
movzx esi, r8b
mov r14, rdx
mov rdi, rcx
mov qword [rbp - 0x30], rcx
mov qword [rbp - 0x28], rdx
mov r15d, dword [0x180294d50]
xor edx, edx
lea rcx, str.grcWindow
call qword [sym.imp.USER32.dll_FindWindowA]
mov rbx, rax
call qword [sym.imp.USER32.dll_GetForegroundWindow]
cmp rbx, rax
jne 0x18007d14c
cmp byte [0x1802b39d1], 0
jne 0x18007d14c
mov ecx, r15d
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test al, 1
je 0x18007d14c
test sil, sil
je 0x18007d14c
lea rax, [rbp - 0x70]
mov qword [rsp + 0x50], rax
mov rdx, rdi
lea rcx, [rbp - 0x70]
call fcn.1800795a0
mov r15, rax
lea rax, [rbp - 0x20]
mov qword [rsp + 0x60], rax
mov rdx, qword [0x1802ae7b0]
movabs rsi, 0x7fffffffffffffff
mov rcx, rsi
sub rcx, rdx
cmp rcx, 8
jb 0x18007d186
lea rax, [0x1802ae7a0]
cmp qword [0x1802ae7b8], 0xf
cmova rax, qword [0x1802ae7a0]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 8
lea r9, str.submenu_
lea rcx, [rbp - 0x20]
call fcn.18007df10
nop
lea rax, [rbp - 0x50]
mov qword [rsp + 0x68], rax
lea rdx, [0x1802b6ba8]
lea rcx, [rbp - 0x50]
call fcn.1800795a0
mov rbx, rax
mov rdx, r14
lea rcx, [rsp + 0x70]
call fcn.1800795a0
nop
mov r9, r15
lea r8, [rbp - 0x20]
mov rdx, rbx
mov rcx, rax
call fcn.1800840f0
mov rcx, qword [rdi + 0x10]
sub rsi, rcx
cmp rsi, 0xb
jb 0x18007d18c
mov rax, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x18007d05e
mov rax, qword [rdi]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 0xb
lea r9, str.Selectable
lea rcx, [rbp - 0x20]
call fcn.18007df10
nop
mov r8d, 6
lea rdx, str._saved
lea rcx, [rbp - 0x20]
call fcn.180079a80
movups xmm0, xmmword [rax]
movups xmmword [rbp], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x10], xmm1
mov qword [rax + 0x10], 0
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea rcx, [rbp - 0x20]
call fcn.180079a20
lea rdx, [rbp]
lea rcx, [rsp + 0x70]
call fcn.1800795a0
mov rsi, rax
mov rcx, rax
cmp qword [rax + 0x18], 0xf
jbe 0x18007d0e1
mov rcx, qword [rax]
call fcn.1801089e4
mov rbx, rax
mov rcx, rsi
call fcn.180079a20
movss xmm0, dword [0x18024f6fc]
movss dword [rsp + 0x38], xmm0
lea rax, str.Config
mov qword [rsp + 0x28], rax
mov rcx, rbx
call fcn.1800ad6a0
nop
mov rdx, qword [rbp + 0x18]
cmp rdx, 0xf
jbe 0x18007d14c
inc rdx
mov rcx, qword [rbp]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18007d146
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18007d180
call fcn.180101430
nop
mov rcx, rdi
call fcn.180079a20
nop
mov rcx, r14
call fcn.180079a20
mov rcx, qword [rbp + 0x20]
xor rcx, rsp
call fcn.180101410
mov rbx, qword [rsp + 0x170]
add rsp, 0x130
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret
call fcn.18010a124
nop
call fcn.180077bd0
nop
call fcn.180077bd0
int3
Function at 0x1800801b0
Capabilities:
Create thread

Disassembly:
sub rsp, 0x38
cmp edx, 1
jne 0x1800801e9
mov qword [0x1802b38f8], rcx
call qword [sym.imp.KERNEL32.dll_DisableThreadLibraryCalls]
mov r9, qword [0x1802b38f8]
lea r8, [0x18007f680]
xor eax, eax
xor edx, edx
mov qword [rsp + 0x28], rax
xor ecx, ecx
mov dword [rsp + 0x20], eax
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov eax, 1
add rsp, 0x38
ret

Function at 0x1800853b0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rsi
push rdi
push r13
push r14
push r15
sub rsp, 0x40
mov rax, qword [0x1802940c0]
xor rax, rsp
mov qword [rsp + 0x30], rax
mov rdi, rdx
mov r13, rcx
mov qword [rsp + 0x20], rdx
mov rcx, rdx
call fcn.180081500
cmp qword [rdi + 0x18], 0xf
jbe 0x1800853fe
mov rsi, qword [rdi]
mov rbp, rsi
mov rbx, rsi
add rbp, qword [rdi + 0x10]
jmp 0x18008540b
mov rbx, rdi
mov rbp, qword [rdi + 0x10]
add rbp, rdi
mov rsi, rdi
cmp rbx, rbp
je 0x180085426
sub rsi, rbx
movsx ecx, byte [rbx]
call fcn.18010898c
mov byte [rbx + rsi], al
inc rbx
cmp rbx, rbp
jne 0x180085413
mov r8, qword [rdi + 0x10]
mov rdx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x180085437
mov rdx, qword [rdi]
xor ecx, ecx
movabs r9, 0xcbf29ce484222325
test r8, r8
je 0x180085465
movabs r10, 0x100000001b3
movzx eax, byte [rcx + rdx]
xor r9, rax
imul r9, r10
inc rcx
cmp rcx, r8
jb 0x180085452
mov r8, rdi
lea rdx, [rsp + 0x20]
mov rcx, r13
call fcn.180089a80
mov rbp, qword [rax + 8]
test rbp, rbp
je 0x180085537
cmp rbp, qword [r13 + 8]
je 0x180085537
mov r14, qword [rbp + 0x30]
mov rsi, r14
shl rsi, 6
add rsi, qword [r13 + 0x40]
mov r15, qword [r13 + 0x48]
lea rbx, [rsi + 0x40]
cmp rbx, r15
je 0x1800854d5
nop dword [rax + rax]
mov rdx, rbx
mov rcx, rsi
call fcn.180087610
lea rdx, [rbx + 0x20]
lea rcx, [rsi + 0x20]
call fcn.180087610
add rsi, 0x40
add rbx, 0x40
cmp rbx, r15
jne 0x1800854b0
mov rbx, qword [r13 + 0x48]
lea rcx, [rbx - 0x20]
call fcn.180079a20
lea rcx, [rbx - 0x40]
call fcn.180079a20
add qword [r13 + 0x48], 0xffffffffffffffc0
mov r8, rbp
lea rdx, [rsp + 0x20]
mov rcx, r13
call fcn.180088bd0
mov rcx, qword [r13 + 8]
mov rax, qword [rcx]
cmp rax, rcx
je 0x18008552b
nop dword [rax]
mov rdx, qword [rax + 0x30]
cmp rdx, r14
jbe 0x180085520
dec rdx
mov qword [rax + 0x30], rdx
mov rdx, qword [rax]
mov rax, rdx
cmp rdx, rcx
jne 0x180085510
mov rcx, rdi
call fcn.180079a20
mov al, 1
jmp 0x180085541
mov rcx, rdi
call fcn.180079a20
xor al, al
mov rcx, qword [rsp + 0x30]
xor rcx, rsp
call fcn.180101410
lea r11, [rsp + 0x40]
mov rbx, qword [r11 + 0x40]
mov rbp, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop rdi
pop rsi
ret
Function at 0x180085570
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rsi
push rdi
push r14
sub rsp, 0x40
mov rax, qword [0x1802940c0]
xor rax, rsp
mov qword [rsp + 0x30], rax
mov rdi, rdx
mov r14, rcx
mov qword [rsp + 0x20], rdx
mov rcx, rdx
call fcn.180081500
cmp qword [rdi + 0x18], 0xf
jbe 0x1800855ba
mov rsi, qword [rdi]
mov rbp, rsi
add rbp, qword [rdi + 0x10]
mov rbx, rsi
jmp 0x1800855c7
mov rsi, rdi
mov rbp, qword [rdi + 0x10]
add rbp, rdi
mov rbx, rdi
cmp rbx, rbp
je 0x1800855e3
sub rsi, rbx
nop
movsx ecx, byte [rbx]
call fcn.18010898c
mov byte [rsi + rbx], al
inc rbx
cmp rbx, rbp
jne 0x1800855d0
mov r8, qword [rdi + 0x10]
mov rcx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x1800855f4
mov rcx, qword [rdi]
xor edx, edx
movabs r9, 0xcbf29ce484222325
test r8, r8
je 0x180085623
movabs r10, 0x100000001b3
nop
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, r10
inc rdx
cmp rdx, r8
jb 0x180085610
mov r8, rdi
lea rdx, [rsp + 0x20]
mov rcx, r14
call fcn.180089a80
cmp qword [rax + 8], 0
setne bl
mov rcx, rdi
call fcn.180079a20
movzx eax, bl
mov rcx, qword [rsp + 0x30]
xor rcx, rsp
call fcn.180101410
mov rbx, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x78]
add rsp, 0x40
pop r14
pop rdi
pop rsi
ret

Function at 0x180085670
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x50
mov rax, qword [0x1802940c0]
xor rax, rsp
mov qword [rsp + 0x40], rax
mov rdi, r8
mov rsi, rdx
mov r15, rcx
mov qword [rsp + 0x38], rdx
mov qword [rsp + 0x38], r8
xor r12d, r12d
mov rcx, r8
call fcn.180081500
cmp qword [rdi + 0x18], 0xf
jbe 0x1800856c2
mov r14, qword [rdi]
mov rbp, r14
add rbp, qword [rdi + 0x10]
mov rbx, r14
jmp 0x1800856cf
mov r14, rdi
mov rbp, qword [rdi + 0x10]
add rbp, rdi
mov rbx, rdi
cmp rbx, rbp
je 0x1800856eb
sub r14, rbx
movsx ecx, byte [rbx]
call fcn.18010898c
mov byte [r14 + rbx], al
inc rbx
cmp rbx, rbp
jne 0x1800856d7
mov r8, qword [rdi + 0x10]
mov rdx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x1800856fc
mov rdx, qword [rdi]
movabs r9, 0xcbf29ce484222325
mov rcx, r12
test r8, r8
je 0x180085733
movabs r10, 0x100000001b3
nop dword [rax + rax]
movzx eax, byte [rcx + rdx]
xor r9, rax
imul r9, r10
inc rcx
cmp rcx, r8
jb 0x180085720
mov r8, rdi
lea rdx, [rsp + 0x28]
mov rcx, r15
call fcn.180089a80
mov rdx, qword [rax + 8]
test rdx, rdx
je 0x18008576c
cmp rdx, qword [r15 + 8]
je 0x18008576c
mov rdx, qword [rdx + 0x30]
shl rdx, 6
add rdx, 0x20
add rdx, qword [r15 + 0x40]
mov rcx, rsi
call fcn.1800795a0
jmp 0x180085781
xorps xmm0, xmm0
movups xmmword [rsi], xmm0
mov qword [rsi + 0x10], r12
mov qword [rsi + 0x18], 0xf
mov byte [rsi], 0
mov rcx, rdi
call fcn.180079a20
mov rax, rsi
mov rcx, qword [rsp + 0x40]
xor rcx, rsp
call fcn.180101410
add rsp, 0x50
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
Function at 0x1800857b0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rsi
push rdi
push r14
sub rsp, 0x60
movaps xmmword [rsp + 0x50], xmm6
mov rax, qword [0x1802940c0]
xor rax, rsp
mov qword [rsp + 0x48], rax
mov rdi, rdx
mov r14, rcx
mov qword [rsp + 0x20], rdx
mov rcx, rdx
call fcn.180081500
cmp qword [rdi + 0x18], 0xf
jbe 0x1800857ff
mov rsi, qword [rdi]
mov rbp, rsi
add rbp, qword [rdi + 0x10]
mov rbx, rsi
jmp 0x18008580c
mov rsi, rdi
mov rbp, qword [rdi + 0x10]
add rbp, rdi
mov rbx, rdi
cmp rbx, rbp
je 0x180085827
sub rsi, rbx
movsx ecx, byte [rbx]
call fcn.18010898c
mov byte [rsi + rbx], al
inc rbx
cmp rbx, rbp
jne 0x180085814
mov r8, qword [rdi + 0x10]
mov rdx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x180085838
mov rdx, qword [rdi]
xor ecx, ecx
movabs r9, 0xcbf29ce484222325
test r8, r8
je 0x180085873
movabs r10, 0x100000001b3
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rcx + rdx]
xor r9, rax
imul r9, r10
inc rcx
cmp rcx, r8
jb 0x180085860
mov r8, rdi
lea rdx, [rsp + 0x28]
mov rcx, r14
call fcn.180089a80
mov rbx, qword [rax + 8]
test rbx, rbx
je 0x18008589b
cmp rbx, qword [r14 + 8]
je 0x18008589b
mov rbx, qword [rbx + 0x30]
jmp 0x180085969
mov rbx, qword [r14 + 0x48]
sub rbx, qword [r14 + 0x40]
sar rbx, 6
mov r8, rdi
lea rdx, [rsp + 0x28]
mov rcx, r14
call fcn.1800891b0
mov rcx, qword [rax]
mov qword [rcx + 0x30], rbx
xorps xmm0, xmm0
movups xmmword [rsp + 0x28], xmm0
movdqa xmm6, xmmword [0x180250500]
movdqu xmmword [rsp + 0x38], xmm6
mov byte [rsp + 0x28], 0
mov rsi, qword [r14 + 0x48]
cmp rsi, qword [r14 + 0x50]
je 0x18008591c
mov rdx, rdi
mov rcx, rsi
call fcn.1800795a0
mov qword [rsi + 0x30], 0
mov qword [rsi + 0x38], 0
movups xmm0, xmmword [rsp + 0x28]
movups xmmword [rsi + 0x20], xmm0
movups xmmword [rsi + 0x30], xmm6
mov edx, 0xf
mov byte [rsp + 0x28], 0
add qword [r14 + 0x48], 0x40
jmp 0x180085935
lea r9, [rsp + 0x28]
mov r8, rdi
mov rdx, rsi
lea rcx, [r14 + 0x40]
call fcn.18008a9c0
mov rdx, qword [rsp + 0x40]
cmp rdx, 0xf
jbe 0x180085969
inc rdx
mov rcx, qword [rsp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180085964
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800859a4
call fcn.180101430
shl rbx, 6
add rbx, qword [r14 + 0x40]
mov rcx, rdi
call fcn.180079a20
lea rax, [rbx + 0x20]
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.180101410
lea r11, [rsp + 0x60]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
movaps xmm6, xmmword [rsp + 0x50]
mov rsp, r11
pop r14
pop rdi
pop rsi
ret
call fcn.18010a124
nop
int3
Function at 0x180085a50
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x60
mov rax, qword [0x1802940c0]
xor rax, rsp
mov qword [rsp + 0x50], rax
mov rsi, rdx
mov qword [rsp + 0x30], rdx
mov r12, rcx
mov qword [rsp + 0x48], rdx
mov rcx, rdx
call fcn.180081500
cmp qword [rsi + 0x18], 0xf
jbe 0x180085aa1
mov rdi, qword [rsi]
mov rbp, rdi
mov rbx, rdi
add rbp, qword [rsi + 0x10]
jmp 0x180085aae
mov rbx, rsi
mov rbp, qword [rsi + 0x10]
add rbp, rsi
mov rdi, rsi
cmp rbx, rbp
je 0x180085ac9
sub rdi, rbx
movsx ecx, byte [rbx]
call fcn.18010898c
mov byte [rdi + rbx], al
inc rbx
cmp rbx, rbp
jne 0x180085ab6
mov r8, qword [rsi + 0x10]
mov rdx, rsi
cmp qword [rsi + 0x18], 0xf
jbe 0x180085ada
mov rdx, qword [rsi]
xor ecx, ecx
movabs r9, 0xcbf29ce484222325
test r8, r8
je 0x180085b13
movabs r10, 0x100000001b3
nop word [rax + rax]
movzx eax, byte [rcx + rdx]
xor r9, rax
imul r9, r10
inc rcx
cmp rcx, r8
jb 0x180085b00
mov r8, rsi
lea rdx, [rsp + 0x38]
mov rcx, r12
call fcn.180089a80
mov rdx, qword [rax + 8]
mov qword [rsp + 0x20], rdx
test rdx, rdx
je 0x180085c67
cmp rdx, qword [r12 + 8]
je 0x180085c67
mov r14, qword [rdx + 0x30]
mov qword [rsp + 0x38], r14
imul r13, r14, 0x78
add r13, qword [r12 + 0x40]
mov rax, qword [r12 + 0x48]
lea rbp, [r13 + 0x78]
cmp rbp, rax
je 0x180085bf8
lea r14, [r13 + 0x20]
lea rbx, [rbp + 0x60]
mov qword [rsp + 0x20], rdx
mov rsi, rax
mov rdx, rbp
mov rcx, r13
call fcn.180087610
lea rax, [rbx - 0x40]
lea rdi, [r14 + 0x40]
cmp r14, rax
je 0x180085bbe
mov qword [rsp + 0x28], r14
mov eax, dword [rax]
mov dword [r14], eax
mov r8, qword [rbx - 0x38]
mov rdx, qword [r8]
lea rcx, [rdi - 0x38]
call fcn.18008b6f0
mov rdx, qword [rdi - 0x30]
mov rcx, r14
call fcn.1800898e0
mov rdx, rax
mov rcx, r14
call fcn.180089660
nop
cmp rdi, rbx
je 0x180085bd9
mov rdx, qword [rbx]
mov r8, qword [rbx + 8]
sub r8, rdx
sar r8, 6
mov rcx, rdi
call fcn.18008b4d0
add r13, 0x78
add r14, 0x78
add rbp, 0x78
add rbx, 0x78
cmp rbp, rsi
jne 0x180085b74
mov rsi, qword [rsp + 0x30]
mov r14, qword [rsp + 0x38]
mov rdi, qword [r12 + 0x48]
lea rcx, [rdi - 0x18]
call fcn.1800859b0
lea rcx, [rdi - 0x58]
call fcn.180083e80
lea rcx, [rdi - 0x78]
call fcn.180079a20
add qword [r12 + 0x48], 0xffffffffffffff88
mov r8, qword [rsp + 0x20]
lea rdx, [rsp + 0x48]
mov rcx, r12
call fcn.180088bd0
mov rcx, qword [r12 + 8]
mov rax, qword [rcx]
cmp rax, rcx
je 0x180085c5b
nop dword [rax]
mov rdx, qword [rax + 0x30]
cmp rdx, r14
jbe 0x180085c50
dec rdx
mov qword [rax + 0x30], rdx
mov rdx, qword [rax]
mov rax, rdx
cmp rdx, rcx
jne 0x180085c40
mov rcx, rsi
call fcn.180079a20
mov al, 1
jmp 0x180085c71
mov rcx, rsi
call fcn.180079a20
xor al, al
mov rcx, qword [rsp + 0x50]
xor rcx, rsp
call fcn.180101410
mov rbx, qword [rsp + 0xb0]
add rsp, 0x60
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
Function at 0x180085ca0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x50
mov rax, qword [0x1802940c0]
xor rax, rsp
mov qword [rsp + 0x40], rax
mov rdi, r8
mov rsi, rdx
mov r15, rcx
mov qword [rsp + 0x38], rdx
mov qword [rsp + 0x38], r8
xor r12d, r12d
mov rcx, r8
call fcn.180081500
cmp qword [rdi + 0x18], 0xf
jbe 0x180085cf2
mov r14, qword [rdi]
mov rbp, r14
add rbp, qword [rdi + 0x10]
mov rbx, r14
jmp 0x180085cff
mov r14, rdi
mov rbp, qword [rdi + 0x10]
add rbp, rdi
mov rbx, rdi
cmp rbx, rbp
je 0x180085d1b
sub r14, rbx
movsx ecx, byte [rbx]
call fcn.18010898c
mov byte [r14 + rbx], al
inc rbx
cmp rbx, rbp
jne 0x180085d07
mov r8, qword [rdi + 0x10]
mov rdx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x180085d2c
mov rdx, qword [rdi]
movabs r9, 0xcbf29ce484222325
mov rcx, r12
test r8, r8
je 0x180085d63
movabs r10, 0x100000001b3
nop dword [rax + rax]
movzx eax, byte [rcx + rdx]
xor r9, rax
imul r9, r10
inc rcx
cmp rcx, r8
jb 0x180085d50
mov r8, rdi
lea rdx, [rsp + 0x28]
mov rcx, r15
call fcn.180089a80
mov rcx, qword [rax + 8]
test rcx, rcx
je 0x180085d99
cmp rcx, qword [r15 + 8]
je 0x180085d99
imul rdx, qword [rcx + 0x30], 0x78
add rdx, 0x20
add rdx, qword [r15 + 0x40]
mov rcx, rsi
call fcn.180087860
jmp 0x180085dad
mov rcx, rsi
call fcn.180088030
mov qword [rsi + 0x40], r12
mov qword [rsi + 0x48], r12
mov qword [rsi + 0x50], r12
mov rcx, rdi
call fcn.180079a20
mov rax, rsi
mov rcx, qword [rsp + 0x40]
xor rcx, rsp
call fcn.180101410
add rsp, 0x50
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret

Function at 0x180085de0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rsi
push rdi
push r14
sub rsp, 0x40
mov rax, qword [0x1802940c0]
xor rax, rsp
mov qword [rsp + 0x38], rax
mov rdi, rdx
mov r14, rcx
mov qword [rsp + 0x30], rdx
mov rcx, rdx
call fcn.180081500
cmp qword [rdi + 0x18], 0xf
jbe 0x180085e2a
mov rsi, qword [rdi]
mov rbp, rsi
add rbp, qword [rdi + 0x10]
mov rbx, rsi
jmp 0x180085e37
mov rsi, rdi
mov rbp, qword [rdi + 0x10]
add rbp, rdi
mov rbx, rdi
cmp rbx, rbp
je 0x180085e53
sub rsi, rbx
nop
movsx ecx, byte [rbx]
call fcn.18010898c
mov byte [rsi + rbx], al
inc rbx
cmp rbx, rbp
jne 0x180085e40
mov r8, qword [rdi + 0x10]
mov rdx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x180085e64
mov rdx, qword [rdi]
xor ecx, ecx
movabs r9, 0xcbf29ce484222325
test r8, r8
je 0x180085e93
movabs r10, 0x100000001b3
nop
movzx eax, byte [rcx + rdx]
xor r9, rax
imul r9, r10
inc rcx
cmp rcx, r8
jb 0x180085e80
mov r8, rdi
lea rdx, [rsp + 0x20]
mov rcx, r14
call fcn.180089a80
mov rcx, qword [rax + 8]
test rcx, rcx
je 0x180085eb8
cmp rcx, qword [r14 + 8]
je 0x180085eb8
mov rax, qword [rcx + 0x30]
jmp 0x180085ec3
mov rdx, rdi
mov rcx, r14
call fcn.180087ae0
imul rbx, rax, 0x78
add rbx, qword [r14 + 0x40]
mov rcx, rdi
call fcn.180079a20
lea rax, [rbx + 0x20]
mov rcx, qword [rsp + 0x38]
xor rcx, rsp
call fcn.180101410
mov rbx, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x78]
add rsp, 0x40
pop r14
pop rdi
pop rsi
ret
Function at 0x180086450
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
push r14
sub rsp, 0x20
mov r14, r8
mov rsi, rdx
mov rbx, rcx
test r8, r8
jg 0x180086481
xor eax, eax
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x20
pop r14
ret
cmp qword [rcx + 0x68], 0
mov qword [rsp + 0x30], rbp
mov qword [rsp + 0x38], rdi
je 0x1800864fb
mov rdi, r14
mov rcx, rbx
call fcn.180079960
test rax, rax
jle 0x1800864d3
cmp rdi, rax
mov rbp, rdi
mov rcx, rsi
cmovge rbp, rax
mov rax, qword [rbx + 0x38]
mov r8, rbp
mov rdx, qword [rax]
call fcn.18012f400
mov rax, qword [rbx + 0x50]
sub rdi, rbp
sub dword [rax], ebp
mov rcx, qword [rbx + 0x38]
movsxd rax, ebp
add qword [rcx], rax
jmp 0x1800864eb
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x38]
cmp eax, 0xffffffff
je 0x1800864f3
mov byte [rsi], al
dec rdi
mov ebp, 1
add rsi, rbp
test rdi, rdi
jg 0x180086495
sub r14, rdi
jmp 0x1800865df
mov rax, qword [rcx + 0x38]
mov rbp, r14
mov rdx, qword [rax]
test rdx, rdx
je 0x180086512
mov rax, qword [rcx + 0x50]
mov ecx, dword [rax]
jmp 0x180086514
xor ecx, ecx
movsxd rax, ecx
test ecx, ecx
je 0x180086546
cmp rax, r14
mov rdi, r14
mov rcx, rsi
cmovb rdi, rax
mov r8, rdi
call fcn.18012f400
mov rax, qword [rbx + 0x50]
add rsi, rdi
sub rbp, rdi
sub dword [rax], edi
mov rcx, qword [rbx + 0x38]
movsxd rax, edi
add qword [rcx], rax
cmp qword [rbx + 0x80], 0
je 0x1800865dc
mov r8, qword [rbx + 0x18]
lea rax, [rbx + 0x70]
cmp qword [r8], rax
jne 0x180086581
mov rcx, qword [rbx + 0x88]
mov rdx, qword [rbx + 0x90]
mov qword [r8], rcx
sub edx, ecx
mov rax, qword [rbx + 0x38]
mov qword [rax], rcx
mov rax, qword [rbx + 0x50]
mov dword [rax], edx
cmp rbp, 0xfff
jbe 0x1800865bd
nop word [rax + rax]
mov r9, qword [rbx + 0x80]
mov edx, 1
mov r8d, 0xfff
mov rcx, rsi
call fcn.18010f74c
add rsi, rax
sub rbp, rax
cmp rax, 0xfff
jne 0x1800865dc
cmp rbp, rax
ja 0x180086590
test rbp, rbp
je 0x1800865dc
mov r9, qword [rbx + 0x80]
mov r8, rbp
mov edx, 1
mov rcx, rsi
call fcn.18010f74c
sub rbp, rax
sub r14, rbp
mov rbp, qword [rsp + 0x30]
mov rax, r14
mov rdi, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x20
pop r14
ret