joyce8/EMBER2024-capa huggingface dataset:
Function at 0x140008da0
Capabilities:
Print debug messages

Disassembly:
push r12
push rbx
sub rsp, 0x58
mov r12, rcx
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x140008dc0
add rsp, 0x58
pop rbx
pop r12
ret
lea rdx, [rsp + 0x48]
mov r9d, 0x400
mov r8d, eax
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x20], rdx
mov ecx, 0x1100
xor edx, edx
mov dword [rsp + 0x28], 0
call qword [sym.imp.KERNEL32.dll_FormatMessageA]
test eax, eax
jne 0x140008e08
call qword [sym.imp.KERNEL32.dll_IsDebuggerPresent]
test eax, eax
je 0x140008db4
int3
mov rcx, qword [rsp + 0x48]
mov rbx, qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
call rbx
mov rcx, r12
call rbx
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.KERNEL32.dll_LocalFree]
jmp 0x140008df5

Function at 0x140008e30
Capabilities:
Check mutex on windows

Disassembly:
push r12
sub rsp, 0x20
xor edx, edx
xor ecx, ecx
lea r8, [0x1400202c0]
call qword [sym.imp.KERNEL32.dll_CreateMutexA]
mov edx, 0xffffffff
mov r12, rax
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
jne 0x140008ee8
mov rdx, qword [0x140020200]
lea rcx, [0x140020200]
mov rax, qword [rdx + 8]
test rax, rax
je 0x140008eb8
cmp rdx, rcx
jne 0x140008e9a
mov qword [rdx], rax
cmp rax, rcx
je 0x140008e9f
nop dword [rax]
test rax, rax
je 0x140008eca
mov rdx, qword [rdx]
mov qword [rax], rdx
mov rdx, rax
mov rax, qword [rdx + 8]
cmp rax, rcx
jne 0x140008e88
mov rax, qword [rcx + 8]
mov qword [rdx + 8], rax
test rax, rax
je 0x140008eca
mov rdx, rax
jmp 0x140008e96
lea rcx, [0x140020300]
call qword [sym.imp.KERNEL32.dll_FindAtomA]
test ax, ax
jne 0x140008f06
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor eax, eax
add rsp, 0x20
pop r12
ret
lea rcx, str.failed_to_to_lock_cleanup_mutex_n
call sym.__shmem_get_error
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor eax, eax
add rsp, 0x20
pop r12
ret
movzx ecx, ax
call qword [sym.imp.KERNEL32.dll_DeleteAtom]
jmp 0x140008eca
Function at 0x180004810
Capabilities:
Hash data with crc32

Disassembly:
mov qword [rsp + 8], rbx
mov r11d, r8d
mov r10, rdx
not r11d
mov r9, rcx
mov eax, r11d
test rdx, rdx
je 0x18000486d
lea rbx, [0x180070510]
movzx r8d, byte [r9]
lea r9, [r9 + 1]
dec r10
cmp r8b, 0x23
jne 0x180004854
cmp r10, 2
jb 0x180004854
cmp byte [r9], r8b
jne 0x180004854
cmp byte [r9 + 1], r8b
cmove eax, r11d
movzx edx, al
xor rdx, r8
shr eax, 8
xor eax, dword [rbx + rdx*4]
test r10, r10
jne 0x180004830
not eax
mov rbx, qword [rsp + 8]
ret
movzx r8d, byte [rcx]
inc r9
test r8b, r8b
je 0x1800048af
lea rbx, [0x180070510]
cmp r8b, 0x23
jne 0x180004893
cmp byte [r9], r8b
jne 0x180004893
cmp byte [r9 + 1], r8b
cmove eax, r11d
movzx edx, al
movzx ecx, r8b
movzx r8d, byte [r9]
xor rdx, rcx
shr eax, 8
inc r9
xor eax, dword [rbx + rdx*4]
test r8b, r8b
jne 0x180004880
mov rbx, qword [rsp + 8]
not eax
ret

Function at 0x1800049f0
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
push r14
sub rsp, 0x20
mov r14, r8
test r8, r8
je 0x180004a0a
mov qword [r8], 0
call fcn.1800048c0
mov rbx, rax
test rax, rax
jne 0x180004a23
mov rbx, qword [rsp + 0x40]
add rsp, 0x20
pop r14
ret
mov qword [rsp + 0x30], rsi
mov rcx, rbx
mov qword [rsp + 0x38], rdi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_ftell]
mov esi, eax
cmp eax, 0xffffffff
je 0x180004afa
xor edx, edx
mov rcx, rbx
lea r8d, [rdx + 2]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fseek]
test eax, eax
jne 0x180004afa
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_ftell]
movsxd rdi, eax
cmp edi, 0xffffffff
je 0x180004afa
xor r8d, r8d
mov edx, esi
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fseek]
test eax, eax
jne 0x180004afa
cmp rdi, 0xffffffffffffffff
je 0x180004afa
mov rax, qword [0x18007f050]
test rax, rax
je 0x180004a97
inc dword [rax + 0xf4]
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov rsi, rax
test rax, rax
je 0x180004afa
mov r9, rbx
mov r8, rdi
mov edx, 1
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
mov rcx, rbx
cmp rax, rdi
je 0x180004ae7
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov rax, qword [0x18007f050]
test rax, rax
je 0x180004adc
dec dword [rax + 0xf4]
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x180004b03
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
test r14, r14
je 0x180004af5
mov qword [r14], rdi
mov rax, rsi
jmp 0x180004b05
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
xor eax, eax
mov rsi, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x40]
add rsp, 0x20
pop r14
ret
Function at 0x1800071f0
Capabilities:
Hash data with crc32

Disassembly:
push rbx
sub rsp, 0x20
movsxd r8, dword [rcx + 0xd0]
mov rax, qword [rcx + 0xd8]
movsxd r9, edx
mov ebx, dword [rax + r8*4 - 4]
lea r8, [0x180070510]
not ebx
movzx eax, r9b
movzx ecx, bl
xor rcx, rax
shr ebx, 8
mov eax, r9d
shr eax, 8
movzx edx, al
mov eax, r9d
xor ebx, dword [r8 + rcx*4]
movzx ecx, bl
xor rdx, rcx
shr ebx, 8
shr eax, 0x10
xor ebx, dword [r8 + rdx*4]
movzx ecx, bl
shr ebx, 8
movzx edx, al
xor rdx, rcx
xor ebx, dword [r8 + rdx*4]
movzx ecx, bl
shr ebx, 8
mov edx, r9d
shr rdx, 0x18
xor rdx, rcx
mov rcx, qword [0x18007f050]
xor ebx, dword [r8 + rdx*4]
not ebx
cmp dword [rcx + 0x3ed4], ebx
jne 0x180007286
mov r8, r9
mov edx, 4
mov ecx, ebx
call fcn.18001adf0
mov eax, ebx
add rsp, 0x20
pop rbx
ret

Function at 0x180007570
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x50
mov rbx, qword [0x18007f050]
mov edi, edx
mov rsi, rcx
mov eax, dword [rbx + 0x3ed8]
test eax, eax
je 0x1800075ab
cmp eax, edx
je 0x1800075ab
cmp byte [rbx + 0x3ee0], 0
je 0x1800076a4
mov r11, qword [rbx + 0x3ea0]
cmp qword [rbx + 0x3ea8], r11
jne 0x1800076a4
mov r10d, dword [rbx + 0x3eec]
test r10d, r10d
je 0x1800075dd
cmp r10d, edi
je 0x1800075dd
cmp byte [rbx + 0x3ef9], 0
je 0x1800076a4
mov r8b, 1
lea rdx, [rcx + 8]
call fcn.180011810
test al, al
je 0x1800076a4
cmp dword [rbx + 0x4724], edi
jne 0x180007601
mov edx, dword [rbx + 0x4728]
jmp 0x180007607
mov edx, dword [rbx + 0x4708]
bt edx, 8
jb 0x180007668
mov rcx, qword [rbx + 0x4868]
test rcx, rcx
je 0x180007668
mov rcx, qword [rcx + 0x358]
test rcx, rcx
je 0x180007668
cmp byte [rcx + 0x97], 0
je 0x180007668
mov rax, qword [r11 + 0x358]
cmp rcx, rax
je 0x180007668
mov r8d, dword [rcx + 0xc]
bt r8d, 0x1b
jb 0x18000764c
bt r8d, 0x1a
jae 0x180007668
cmp qword [rax + 0x358], rcx
je 0x180007668
cmp rax, rcx
je 0x180007668
mov rax, qword [rax + 0x350]
test rax, rax
jne 0x180007655
jmp 0x18000769d
test edi, edi
je 0x18000768a
mov dword [rbx + 0x3ed8], edi
mov byte [rbx + 0x3ee0], 0
cmp dword [rbx + 0x3edc], edi
je 0x18000768a
xor eax, eax
mov qword [rbx + 0x3ee4], rax
test dl, 4
je 0x1800076bb
cmp r10d, edi
jne 0x18000769d
xor edx, edx
xor ecx, ecx
call fcn.180007290
mov byte [rbx + 0x3ee1], 1
xor al, al
mov rbx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
add rsp, 0x50
pop rdi
ret
test edi, edi
je 0x18000773d
cmp byte [rbx + 0x5c21], 0
je 0x180007734
cmp dword [rbx + 0x3edc], edi
jne 0x180007734
mov rax, qword [rbx + 0x4860]
lea r8, [rsp + 0x41]
mov edx, 1
mov dword [rsp + 0x40], 0x4623235f
mov dword [rsp + 0x44], 0x6765726f
mov dword [rsp + 0x48], 0x6e756f72
mov rcx, qword [rax]
mov word [rsp + 0x4c], 0x64
call fcn.180007750
movss xmm0, dword [0x180072070]
lea r8, [rsi + 8]
xorps xmm1, xmm1
movss dword [rsp + 0x30], xmm0
mov r9d, 0xff00ffff
movss dword [rsp + 0x20], xmm1
mov rdx, rsi
mov rcx, rax
call fcn.1800267a0
cmp dword [rbx + 0x5c24], edi
jne 0x18000773d
int3
cmp byte [rbx + 0x48ab], 0
sete al
jmp 0x1800076a6
Function at 0x180011de0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x50
mov r8d, dword [rdx]
mov r10, rcx
mov rax, qword [0x18007f050]
cmp r8d, 1
jne 0x180011eb6
movss xmm2, dword [rdx + 8]
movss xmm1, dword [0x180072170]
ucomiss xmm2, xmm1
jp 0x180011e60
jne 0x180011e60
movss xmm0, dword [rdx + 0xc]
ucomiss xmm0, xmm1
jp 0x180011e60
jne 0x180011e60
test byte [rax + 0x5bf4], 0x20
je 0x180012020
movdqa xmm0, xmmword [0x1800723e0]
mov rdx, rcx
movdqa xmm1, xmmword [0x180072500]
lea rcx, [rbp - 0x2f]
movdqu xmmword [rbp - 0x30], xmm0
mov dword [rbp - 0x10], 0xa2958
movdqu xmmword [rbp - 0x20], xmm1
call fcn.18001a790
add rsp, 0x50
pop rbp
ret
test byte [rax + 0x5bf4], 0x20
je 0x180012020
movdqa xmm0, xmmword [0x1800723d0]
mov dword [rbp - 0x20], 0x2c66312e
mov dword [rbp - 0x1c], 0x312e2520
mov dword [rbp - 0x18], 0xa2966
movss xmm3, dword [rdx + 0xc]
lea rcx, [rbp - 0x2f]
cvtps2pd xmm3, xmm3
mov rdx, r10
cvtps2pd xmm2, xmm2
movq r9, xmm3
movq r8, xmm2
movdqu xmmword [rbp - 0x30], xmm0
call fcn.18001a790
add rsp, 0x50
pop rbp
ret
cmp r8d, 3
jne 0x180011f10
test byte [rax + 0x5bf4], 0x20
je 0x180012020
cmp byte [rdx + 0xc], 0
lea rax, str.Down
movdqa xmm0, xmmword [0x1800727b0]
lea r9, [0x18007028c]
mov r8d, dword [rdx + 8]
lea rcx, [rbp - 0x2f]
cmovne r9, rax
mov dword [rbp - 0x20], 0x20642520
mov rdx, r10
mov dword [rbp - 0x1c], 0xa7325
movdqu xmmword [rbp - 0x30], xmm0
call fcn.18001a790
add rsp, 0x50
pop rbp
ret
cmp r8d, 2
jne 0x180011f50
test byte [rax + 0x5bf4], 0x20
je 0x180012020
movss xmm2, dword [rdx + 8]
movdqa xmm0, xmmword [0x1800723a0]
mov dword [rbp - 0x20], 0x312e2528
mov dword [rbp - 0x1c], 0x25202c66
mov dword [rbp - 0x18], 0x2966312e
mov word [rbp - 0x14], 0xa
jmp 0x180011e8a
cmp r8d, 4
jne 0x180011fa9
test byte [rax + 0x5bf4], 0x20
je 0x180012020
cmp byte [rdx + 0xc], 0
lea rax, str.Down
mov ecx, dword [rdx + 8]
lea r9, [0x18007028c]
cmovne r9, rax
call fcn.1800119a0
movdqa xmm0, xmmword [0x180072830]
lea rcx, [rbp - 0x2f]
mov r8, rax
mov word [rbp - 0x20], 0xa
mov rdx, r10
movdqu xmmword [rbp - 0x30], xmm0
call fcn.18001a790
add rsp, 0x50
pop rbp
ret
cmp r8d, 5
jne 0x180011fec
test byte [rax + 0x5bf4], 0x20
je 0x180012020
mov r8d, dword [rdx + 8]
lea rcx, [rbp - 0x2f]
movdqa xmm0, xmmword [0x180072580]
mov r9d, r8d
mov rdx, r10
mov dword [rbp - 0x20], 0x3830252b
movdqu xmmword [rbp - 0x30], xmm0
mov dword [rbp - 0x1c], 0xa2958
call fcn.18001a790
add rsp, 0x50
pop rbp
ret
cmp r8d, 6
jne 0x180012020
test byte [rax + 0x5bf4], 0x20
je 0x180012020
movzx r8d, byte [rdx + 8]
lea rcx, [rbp - 0x2f]
movdqa xmm0, xmmword [str.D_s:_AppFocused_4_s:_MouseWheel_pupsOverWindow__q]
mov rdx, r10
movdqu xmmword [rbp - 0x30], xmm0
mov dword [rbp - 0x20], 0xa6425
call fcn.18001a790
add rsp, 0x50
pop rbp
ret
Function at 0x180013a20
Capabilities:
Hash data with crc32

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x50
mov rax, qword [0x18007e010]
xor rax, rsp
mov qword [rsp + 0x40], rax
mov rbx, qword [0x18007f050]
mov edi, ecx
cmp byte [rbx + 0x4a15], 0
jne 0x180013a54
cmp byte [rbx + 0x4a16], 0
je 0x180013ac2
movss xmm1, dword [rbx + 0x3898]
xor eax, eax
movaps xmm0, xmm1
mov edi, 1
mulss xmm0, dword [0x1800720dc]
mulss xmm1, dword [0x1800720e8]
addss xmm0, dword [rbx + 0xe00]
addss xmm1, dword [rbx + 0xdfc]
mov qword [rbx + 0x4778], rax
mov dword [rbx + 0x4764], edi
movss dword [rbx + 0x4774], xmm0
movss dword [rbx + 0x4770], xmm1
movss xmm0, dword [rbx + 0x38f4]
mulss xmm0, dword [0x180072040]
or dword [rbx + 0x4760], 0x41
movss dword [rbx + 0x47c0], xmm0
movdqa xmm0, xmmword [str.kTooltip__02d]
lea r8, [rsp + 0x21]
movsx r9d, word [rbx + 0x5b0a]
lea rcx, [rsp + 0x30]
mov edx, 0x10
movdqu xmmword [rsp + 0x20], xmm0
call fcn.1800046d0
test dil, 1
je 0x180013b9a
movzx r9d, byte [rsp + 0x30]
lea r8, [rsp + 0x31]
mov r10d, 0xffffffff
mov ecx, r10d
test r9b, r9b
je 0x180013b46
lea r11, [0x180070510]
cmp r9b, 0x23
jne 0x180013b29
cmp byte [r8], r9b
jne 0x180013b29
cmp byte [r8 + 1], r9b
cmove ecx, r10d
movzx edx, cl
movzx eax, r9b
movzx r9d, byte [r8]
xor rdx, rax
shr ecx, 8
inc r8
xor ecx, dword [r11 + rdx*4]
test r9b, r9b
jne 0x180013b16
not ecx
call fcn.18000c290
test rax, rax
je 0x180013b9a
cmp byte [rax + 0x96], 0
je 0x180013b9a
movdqa xmm0, xmmword [str._Tooltip__02d]
lea r8, [rsp + 0x21]
mov byte [rax + 0x9d], 1
lea rcx, [rsp + 0x30]
mov byte [rax + 0xb8], 1
mov edx, 0x10
inc word [rbx + 0x5b0a]
movsx r9d, word [rbx + 0x5b0a]
movdqu xmmword [rsp + 0x20], xmm0
call fcn.1800046d0
xor edx, edx
lea rcx, [rsp + 0x30]
mov r8d, 0x20c0347
call fcn.18000ea50
mov rcx, qword [rsp + 0x40]
xor rcx, rsp
call fcn.18006ba20
mov rbx, qword [rsp + 0x60]
add rsp, 0x50
pop rdi
ret
Function at 0x180013cd0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r14
push r15
lea rbp, [rsp - 0x47]
sub rsp, 0x90
mov rax, qword [0x18007e010]
xor rax, rsp
mov qword [rbp + 0x37], rax
mov rdi, qword [0x18007f050]
xor eax, eax
mov r14d, ecx
mov dword [rbp - 1], ecx
mov dword [rbp + 3], eax
xorps xmm0, xmm0
mov dword [rbp + 0x33], eax
mov rdx, qword [rdi + 0x3ea0]
mov r15d, dword [rdi + 0x3e20]
movsxd rsi, dword [rdi + 0x4840]
mov qword [rbp + 7], rax
mov rax, qword [rdi + 0x4868]
movsxd rcx, dword [rdx + 0xd0]
mov qword [rbp + 0xf], rax
mov rax, qword [rdx + 0xd8]
movdqu xmmword [rbp + 0x23], xmm0
mov dword [rbp + 0x17], 0xffffffff
mov dword [rbp + 0x1b], r15d
mov ecx, dword [rax + rcx*4 - 4]
mov dword [rbp + 0x1f], ecx
lea rcx, [rbp - 9]
call fcn.180015f60
movss xmm1, dword [0x18007216c]
movss xmm2, dword [rdi + 0xe00]
movsd xmm0, qword [rax]
lea rax, [rdi + 0xdfc]
movsd qword [rbp + 0x23], xmm0
movss xmm0, dword [rdi + 0xdfc]
comiss xmm0, xmm1
jb 0x180013d9a
comiss xmm2, xmm1
jae 0x180013d9e
lea rax, [rbp + 0x23]
test byte [rdi + 0x5bf4], 4
movsd xmm0, qword [rax]
movsd qword [rbp + 0x2b], xmm0
je 0x180013de4
movdqa xmm0, xmmword [0x180072800]
lea rcx, [rbp - 0x28]
mov edx, r14d
mov dword [rbp - 0x19], 0x78457075
movdqu xmmword [rbp - 0x29], xmm0
mov dword [rbp - 0x15], 0x25783028
mov dword [rbp - 0x11], 0x29583830
mov word [rbp - 0xd], 0xa
call fcn.18001a790
lea rbx, [rdi + 0x4830]
mov r8d, dword [rbx]
lea eax, [rsi + 1]
cmp r8d, eax
jge 0x180013e2f
mov ecx, dword [rbx + 4]
cmp r8d, ecx
jne 0x180013e91
inc r8d
test ecx, ecx
je 0x180013e1e
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
cmp eax, r8d
cmovg r8d, eax
mov edx, r8d
jmp 0x180013e89
mov eax, 8
cmp eax, r8d
cmovg r8d, eax
mov edx, r8d
jmp 0x180013e89
mov rdx, qword [rdi + 0x4838]
imul rcx, rsi, 0x38
cmp dword [rcx + rdx], r14d
jne 0x180013e55
mov eax, dword [rdi + 0x3e20]
dec eax
cmp dword [rcx + rdx + 0x1c], eax
jne 0x180013e55
mov dword [rcx + rdx + 0x1c], r15d
jmp 0x180013ec3
xor edx, edx
mov ecx, esi
call fcn.180014050
mov r8d, dword [rbx + 4]
mov ecx, dword [rbx]
cmp ecx, r8d
jne 0x180013e91
inc ecx
test r8d, r8d
je 0x180013e7d
mov eax, r8d
cdq
sub eax, edx
sar eax, 1
add eax, r8d
jmp 0x180013e82
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
mov edx, ecx
mov rcx, rbx
call fcn.18001bc50
movsxd rax, dword [rbx]
movups xmm0, xmmword [rbp - 1]
movups xmm1, xmmword [rbp + 0xf]
imul rcx, rax, 0x38
mov rax, qword [rbx + 8]
movups xmmword [rcx + rax], xmm0
movups xmm0, xmmword [rbp + 0x1f]
movups xmmword [rcx + rax + 0x10], xmm1
movsd xmm1, qword [rbp + 0x2f]
movups xmmword [rcx + rax + 0x20], xmm0
movsd qword [rcx + rax + 0x30], xmm1
inc dword [rbx]
mov rcx, qword [rbp + 0x37]
xor rcx, rsp
call fcn.18006ba20
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rdi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
Function at 0x1800145d0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
sub rsp, 0x58
mov rax, qword [0x18007e010]
xor rax, rsp
mov qword [rsp + 0x48], rax
mov rdx, qword [0x18007f050]
mov r9d, ecx
movsxd rax, dword [rdx + 0x4840]
cmp dword [rdx + 0x4830], eax
jle 0x1800145a6
imul rcx, rax, 0x38
mov rax, qword [rdx + 0x4838]
cmp dword [rcx + rax], r9d
jne 0x1800145a6
lea r8, [rsp + 0x21]
mov qword [rsp + 0x50], rdi
mov edx, 0x14
mov dword [rsp + 0x20], 0x50232364
lea rcx, [rsp + 0x30]
mov dword [rsp + 0x24], 0x7075706f
mov dword [rsp + 0x28], 0x3830255f
mov word [rsp + 0x2c], 0x78
call fcn.1800046d0
xor edx, edx
lea rcx, [rsp + 0x30]
mov r8d, 0x4000141
call fcn.18000ea50
movzx edi, al
test al, al
jne 0x18001458b
mov qword [rsp + 0x68], rbx
mov rbx, qword [0x18007f050]
mov rcx, qword [rbx + 0x3ea0]
cmp qword [rbx + 0x4868], rcx
jne 0x18001456a
cmp byte [rbx + 0x48c5], al
je 0x18001456a
cmp dword [rbx + 0x48a4], 0
jne 0x18001456a
or dword [rbx + 0x48c8], 2
test dword [rcx + 0xc], 0x1000000
je 0x18001457a
mov byte [rbx + 0x3e2e], 1
call fcn.180010e00
mov byte [rbx + 0x3e2e], 0
mov rbx, qword [rsp + 0x68]
movzx eax, dil
mov rdi, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.18006ba20
add rsp, 0x58
ret
mov dword [rdx + 0x4760], 0
xor al, al
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.18006ba20
add rsp, 0x58
ret
mov qword [rsp + 0x10], rbx
push rsi
sub rsp, 0x20
mov rbx, qword [0x18007f050]
mov rsi, rcx
mov eax, dword [rbx + 0x4840]
cmp dword [rbx + 0x4830], eax
jg 0x180014609
mov dword [rbx + 0x4760], 0
xor al, al
mov rbx, qword [rsp + 0x38]
add rsp, 0x20
pop rsi
ret
mov r8, qword [rbx + 0x3ea0]
xor edx, edx
mov qword [rsp + 0x30], rdi
movsxd rax, dword [r8 + 0xd0]
mov r8, qword [r8 + 0xd8]
mov r8d, dword [r8 + rax*4 - 4]
call fcn.180004810
mov edi, eax
cmp dword [rbx + 0x3ed4], eax
jne 0x180014648
mov r8, rsi
mov edx, 0xb
mov ecx, eax
call fcn.18001adf0
mov ecx, edi
mov rdi, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x38]
add rsp, 0x20
pop rsi
jmp 0x1800144a0

Function at 0x180014d00
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rdi
push rbp
mov rbp, rsp
sub rsp, 0x40
mov rax, qword [0x18007f050]
mov rdi, rcx
mov rbx, rax
cmp qword [rax + 0x4868], rcx
je 0x180014d8a
test byte [rax + 0x5bf4], 2
mov dword [rbp + 0x10], 0x554e3c6c
mov dword [rbp + 0x14], 0x3e4c4c
je 0x180014d83
test rcx, rcx
je 0x180014d49
mov rdx, qword [rcx]
jmp 0x180014d4d
lea rdx, [rbp + 0x11]
movdqa xmm0, xmmword [0x1800725a0]
lea rcx, [rbp - 0x1f]
movdqu xmmword [rbp - 0x20], xmm0
mov dword [rbp - 0x10], 0x6f646e69
mov dword [rbp - 0xc], 0x25222877
mov dword [rbp - 8], 0xa292273
mov byte [rbp - 4], 0
call fcn.18001a790
mov rax, qword [0x18007f050]
mov qword [rbx + 0x4868], rdi
mov word [rbx + 0x48c4], 0
mov byte [rbx + 0x48ad], 0
cmp byte [rax + 0x48c5], 0
jne 0x180014dc3
cmp byte [rax + 0x48ad], 0
jne 0x180014dc3
mov byte [rax + 0x48ac], 0
mov rbx, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x60]
add rsp, 0x40
pop rbp
ret
mov rbx, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x60]
mov byte [rax + 0x48ac], 1
add rsp, 0x40
pop rbp
ret
Function at 0x180015b50
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdi
push rbp
mov rbp, rsp
sub rsp, 0x60
mov rdx, qword [0x18007f050]
movsxd rdi, ecx
mov rbx, rdx
test ecx, ecx
jne 0x180015cbd
mov r8, qword [rdx + 0x4868]
mov rax, qword [r8 + 0x378]
test rax, rax
je 0x180015b92
cmp byte [rax + 0x97], cl
jne 0x180015b95
mov rax, r8
mov qword [rdx + 0x4868], rax
test r8, r8
je 0x180015cbd
test byte [rdx + 0x5bf4], 2
je 0x180015cbd
mov r9, qword [rax]
xor ecx, ecx
movdqa xmm0, xmmword [0x1800728a0]
movdqa xmm1, xmmword [0x180072410]
mov rdx, qword [r8]
movdqu xmmword [rbp - 0x40], xmm0
mov dword [rbp - 0x10], 0x2778606b
movdqa xmm0, xmmword [0x1800725e0]
movdqu xmmword [rbp - 0x20], xmm0
mov dword [rbp - 0xc], 0x2d7c2a2d
movdqu xmmword [rbp - 0x30], xmm1
mov word [rbp - 8], 0x526
mov byte [rbp - 6], 0
nop dword [rax]
movzx eax, byte [rbp - 0x40]
xor byte [rbp + rcx - 0x3f], al
movzx eax, byte [rbp - 0x40]
xor byte [rbp + rcx - 0x3e], al
movzx eax, byte [rbp - 0x40]
xor byte [rbp + rcx - 0x3d], al
movzx eax, byte [rbp - 0x40]
xor byte [rbp + rcx - 0x3c], al
movzx eax, byte [rbp - 0x40]
xor byte [rbp + rcx - 0x3b], al
movzx eax, byte [rbp - 0x40]
xor byte [rbp + rcx - 0x3a], al
movzx eax, byte [rbp - 0x40]
xor byte [rbp + rcx - 0x39], al
movzx eax, byte [rbp - 0x40]
xor byte [rbp + rcx - 0x38], al
movzx eax, byte [rbp - 0x40]
xor byte [rbp + rcx - 0x37], al
movzx eax, byte [rbp - 0x40]
xor byte [rbp + rcx - 0x36], al
movzx eax, byte [rbp - 0x40]
xor byte [rbp + rcx - 0x35], al
movzx eax, byte [rbp - 0x40]
xor byte [rbp + rcx - 0x34], al
movzx eax, byte [rbp - 0x40]
xor byte [rbp + rcx - 0x33], al
movzx eax, byte [rbp - 0x40]
xor byte [rbp + rcx - 0x32], al
movzx eax, byte [rbp - 0x40]
xor byte [rbp + rcx - 0x31], al
movzx eax, byte [rbp - 0x40]
xor byte [rbp + rcx - 0x30], al
movzx eax, byte [rbp - 0x40]
xor byte [rbp + rcx - 0x2f], al
movzx eax, byte [rbp - 0x40]
xor byte [rbp + rcx - 0x2e], al
movzx eax, byte [rbp - 0x40]
xor byte [rbp + rcx - 0x2d], al
add rcx, 0x13
cmp rcx, 0x39
jb 0x180015c00
mov r8, r9
mov byte [rbp - 6], 0
lea rcx, [rbp - 0x3f]
call fcn.18001a790
mov rdx, qword [0x18007f050]
mov r8, qword [rbx + 0x4868]
mov rcx, rdi
mov r9d, dword [r8 + rdi*4 + 0x380]
test r9d, r9d
je 0x180015d25
mov rax, qword [rdx + 0x4868]
add rcx, rcx
mov dword [rdx + 0x4870], r9d
mov dword [rdx + 0x48a4], edi
mov dword [rdx + 0x4874], 0
mov dword [rax + rdi*4 + 0x380], r9d
mov rax, qword [rdx + 0x4868]
movups xmm0, xmmword [r8 + rcx*8 + 0x388]
movups xmmword [rax + rcx*8 + 0x388], xmm0
mov rbx, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x78]
add rsp, 0x60
pop rbp
ret
mov dl, 1
mov dword [rbx + 0x48a4], edi
mov rcx, r8
mov rbx, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x78]
add rsp, 0x60
pop rbp
jmp fcn.180015d50
Function at 0x180015d50
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
push rdi
sub rsp, 0x80
mov r8, qword [0x18007f050]
mov rbx, rcx
mov eax, dword [rcx + 0xc]
mov rdi, r8
bt eax, 0x12
jae 0x180015d9c
mov dword [r8 + 0x4870], 0
mov eax, dword [rcx + 0x3a8]
mov dword [r8 + 0x4874], eax
mov rbx, qword [rsp + 0x98]
add rsp, 0x80
pop rdi
ret
mov qword [rsp + 0x90], rbp
xor bpl, bpl
cmp rbx, qword [rcx + 0x358]
je 0x180015dc3
bt eax, 0x1a
jb 0x180015dc3
cmp dword [rcx + 0x380], 0
je 0x180015dc3
test dl, dl
je 0x180015dc6
mov bpl, 1
test byte [r8 + 0x5bf4], 8
je 0x180015e66
movdqa xmm0, xmmword [0x1800722d0]
xor ecx, ecx
movdqa xmm1, xmmword [0x180072420]
movdqa xmmword [rsp + 0x20], xmm0
movdqa xmm0, xmmword [0x180072310]
movdqa xmmword [rsp + 0x40], xmm0
movdqa xmm0, xmmword [0x180072370]
movdqa xmmword [rsp + 0x30], xmm1
movdqa xmm1, xmmword [0x180072320]
movdqa xmmword [rsp + 0x60], xmm0
movdqa xmmword [rsp + 0x50], xmm1
mov dword [rsp + 0x70], 0x6d03425a
mov byte [rsp + 0x74], 0
nop dword [rax]
movzx eax, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x21], al
inc rcx
cmp rcx, 0x53
jb 0x180015e30
mov r9d, dword [r8 + 0x48a4]
lea rcx, [rsp + 0x21]
mov r8, qword [rbx]
movzx edx, bpl
mov byte [rsp + 0x74], 0
call fcn.18001a790
mov r8, qword [0x18007f050]
test bpl, bpl
mov rbp, qword [rsp + 0x90]
je 0x180015f29
mov eax, dword [rbx + 0x3a8]
xorps xmm0, xmm0
movsxd rcx, dword [rdi + 0x48a4]
mov dword [r8 + 0x4874], eax
mov rdx, rcx
mov rax, qword [r8 + 0x4868]
add rdx, rdx
mov dword [r8 + 0x4870], 0
mov dword [r8 + 0x48a4], ecx
mov dword [rax + rcx*4 + 0x380], 0
mov rax, qword [r8 + 0x4868]
movups xmmword [rax + rdx*8 + 0x388], xmm0
mov word [rdi + 0x48ad], 1
mov dword [rdi + 0x48b0], 0
movups xmmword [rdi + 0x48b4], xmm0
cmp byte [r8 + 0x48c5], 0
jne 0x180015f0f
cmp byte [r8 + 0x48ad], 0
jne 0x180015f0f
xor al, al
mov byte [r8 + 0x48ac], al
mov rbx, qword [rsp + 0x98]
add rsp, 0x80
pop rdi
ret
mov al, 1
mov byte [r8 + 0x48ac], al
mov rbx, qword [rsp + 0x98]
add rsp, 0x80
pop rdi
ret
mov eax, dword [rbx + 0x380]
mov dword [rdi + 0x4870], eax
mov eax, dword [rbx + 0x3a8]
mov rbx, qword [rsp + 0x98]
mov dword [rdi + 0x4874], eax
add rsp, 0x80
pop rdi
ret