joyce8/EMBER2024-capa huggingface dataset:
Function at 0x140042fe5
Capabilities:
Parse pe header

Disassembly:
jmp 0x1400ba1b0
sub rsp, 0x38
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov qword [rsp + 0x20], rax
cmp qword [rsp + 0x20], 0
jne 0x1400ba1d0
xor al, al
jmp 0x1400ba251
mov rax, qword [rsp + 0x20]
movzx eax, word [rax]
cmp eax, 0x5a4d
je 0x1400ba1e3
xor al, al
jmp 0x1400ba251
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 0x1400ba20d
xor al, al
jmp 0x1400ba251
mov rax, qword [rsp + 0x28]
movzx eax, word [rax + 0x18]
cmp eax, 0x20b
je 0x1400ba221
xor al, al
jmp 0x1400ba251
mov rax, qword [rsp + 0x28]
cmp dword [rax + 0x84], 0xe
ja 0x1400ba233
xor al, al
jmp 0x1400ba251
mov eax, 8
imul rax, rax, 0xe
mov rcx, qword [rsp + 0x28]
cmp dword [rcx + rax + 0x88], 0
jne 0x1400ba24f
xor al, al
jmp 0x1400ba251
mov al, 1
add rsp, 0x38
ret
Function at 0x140043896
Capabilities:
Terminate thread

Disassembly:
jmp 0x1400935a0
mov qword [rsp + 8], rcx
push rbp
push rdi
sub rsp, 0x118
lea rbp, [rsp + 0x20]
lea rdi, [rsp + 0x20]
mov ecx, 0xe
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0x138]
mov rax, qword [0x1400f9300]
xor rax, rbp
mov qword [rbp + 0xe8], rax
lea rcx, [0x140111b40]
call fcn.140043e1d
nop
mov rax, qword [rbp + 0x110]
mov rax, qword [rax + 0x10]
mov qword [rbp + 8], rax
mov rax, qword [rbp + 0x110]
mov rax, qword [rax + 8]
mov qword [rbp + 0x10], rax
mov r9d, 0xffffffff
xor r8d, r8d
lea rdx, [rbp + 8]
mov ecx, 2
call qword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
nop
mov rax, qword [rbp + 0x110]
mov rcx, qword [rax + 0x10]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
call fcn.140042ff4
movzx eax, al
test eax, eax
je 0x140093655
xor edx, edx
mov rax, qword [rbp + 0x110]
mov rcx, qword [rax + 8]
call qword [sym.imp.KERNEL32.dll_TerminateThread]
nop
jmp 0x140093688
xor r8d, r8d
mov rax, qword [rbp + 0x110]
mov rdx, qword [rax + 8]
lea rcx, [0x140041ec4]
call qword [sym.imp.KERNEL32.dll_QueueUserAPC]
nop
mov edx, 0xffffffff
mov rax, qword [rbp + 0x110]
mov rcx, qword [rax + 8]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
nop
lea rcx, [rbp - 0x20]
lea rdx, [0x1400d5e90]
call fcn.1400435df
mov rcx, qword [rbp + 0xe8]
xor rcx, rbp
call fcn.140042581
lea rsp, [rbp + 0xf8]
pop rdi
pop rbp
ret

Function at 0x1400439cc
Capabilities:
Log keystrokes
Log keystrokes via polling

Disassembly:
jmp 0x14005e410
mov qword [rsp + 0x10], rdx
mov dword [rsp + 8], ecx
push rbp
push rdi
sub rsp, 0x288
lea rbp, [rsp + 0x40]
lea rdi, [rsp + 0x40]
mov ecx, 0x62
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov ecx, dword [rsp + 0x2a8]
mov rax, qword [0x1400f9300]
xor rax, rbp
mov qword [rbp + 0x238], rax
lea rcx, [0x140111529]
call fcn.140043e1d
nop
lea rax, [rbp + 4]
mov rdi, rax
xor eax, eax
mov ecx, 4
rep stosb byte [rdi], al
lea rcx, [rbp + 0x30]
call qword [sym.imp.USER32.dll_GetKeyboardState]
nop
xor edx, edx
mov ecx, dword [rbp + 0x260]
call qword [sym.imp.USER32.dll_MapVirtualKeyW]
mov dword [rbp + 0x144], eax
mov rax, qword [rbp + 0x268]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], 0
mov dword [rsp + 0x20], 2
lea r9, [rbp + 4]
lea r8, [rbp + 0x30]
mov edx, dword [rbp + 0x144]
mov ecx, dword [rbp + 0x260]
call qword [sym.imp.USER32.dll_ToUnicodeEx]
mov dword [rbp + 0x164], eax
cmp dword [rbp + 0x164], 0
jle 0x14005e4e1
mov eax, 2
imul rax, rax, 0
movzx eax, word [rbp + rax + 4]
jmp 0x14005e4e3
xor eax, eax
mov rdi, rax
lea rcx, [rbp - 0x40]
lea rdx, reloc.OLEAUT32.dll_SysReAllocString
call fcn.1400435df
mov rax, rdi
mov rcx, qword [rbp + 0x238]
xor rcx, rbp
call fcn.140042581
lea rsp, [rbp + 0x248]
pop rdi
pop rbp
ret
Function at 0x140043d7d
Capabilities:
Write file on windows

Disassembly:
jmp 0x140053430
mov qword [rsp + 8], rcx
push rbp
push rdi
sub rsp, 0x1a8
lea rbp, [rsp + 0x30]
lea rdi, [rsp + 0x30]
mov ecx, 0x2e
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0x1c8]
mov rax, qword [0x1400f9300]
xor rax, rbp
mov qword [rbp + 0x168], rax
lea rcx, [0x140111066]
call fcn.140043e1d
nop
mov rax, qword [rbp + 0x190]
cmp qword [rax + 0x68], 0
je 0x140053497
mov rax, qword [rbp + 0x190]
movzx eax, byte [rax + 0x71]
test eax, eax
jne 0x14005349e
mov al, 1
jmp 0x1400535ee
call fcn.140041bd1
mov rcx, qword [rbp + 0x190]
mov rcx, qword [rcx]
mov qword [rbp + 0x158], rcx
mov edx, eax
mov rcx, qword [rbp + 0x190]
mov rax, qword [rbp + 0x158]
call qword [rax + 0x18]
mov dword [rbp + 0x160], eax
call fcn.140041bd1
mov ecx, dword [rbp + 0x160]
mov edx, ecx
mov ecx, eax
call fcn.140043409
movzx eax, al
test eax, eax
je 0x1400534ef
xor al, al
jmp 0x1400535ee
mov qword [rbp + 8], 0x20
lea rax, [rbp + 0x48]
mov rcx, qword [rbp + 0x190]
add rcx, 0x74
lea rdx, [rbp + 0x68]
mov qword [rsp + 0x20], rdx
mov r9, rax
lea r8, [rbp + 0x28]
mov rdx, rcx
mov rax, qword [rbp + 0x190]
mov rcx, qword [rax + 0x68]
call qword [sym.imp.MSVCP140D.dll_public:_int___cdecl_std::codecvt_char__char__struct__Mbstatet_::unshift_struct__Mbstatet____ptr64__char____ptr64__char____ptr64__char____ptr64____ptr64_const___ptr64]
mov dword [rbp + 0x154], eax
cmp dword [rbp + 0x154], 0
je 0x140053554
cmp dword [rbp + 0x154], 1
je 0x14005355f
cmp dword [rbp + 0x154], 3
je 0x1400535dd
jmp 0x1400535ec
mov rax, qword [rbp + 0x190]
mov byte [rax + 0x71], 0
lea rax, [rbp + 0x28]
mov rcx, qword [rbp + 0x68]
sub rcx, rax
mov rax, rcx
mov qword [rbp + 0x88], rax
cmp qword [rbp + 0x88], 0
jbe 0x1400535af
mov rax, qword [rbp + 0x190]
mov r9, qword [rax + 0x80]
mov r8, qword [rbp + 0x88]
mov edx, 1
lea rcx, [rbp + 0x28]
call qword [sym.imp.ucrtbased.dll_fwrite]
cmp qword [rbp + 0x88], rax
je 0x1400535af
xor al, al
jmp 0x1400535ee
mov rax, qword [rbp + 0x190]
movzx eax, byte [rax + 0x71]
test eax, eax
jne 0x1400535ca
mov dword [rbp + 0x154], 1
jmp 0x1400535d4
mov dword [rbp + 0x154], 0
movzx eax, byte [rbp + 0x154]
jmp 0x1400535ee
mov rax, qword [rbp + 0x190]
mov byte [rax + 0x71], 0
mov al, 1
jmp 0x1400535ee
xor al, al
mov rdi, rax
lea rcx, [rbp - 0x30]
lea rdx, reloc.OLEAUT32.dll_SysReAllocString
call fcn.1400435df
mov rax, rdi
mov rcx, qword [rbp + 0x168]
xor rcx, rbp
call fcn.140042581
lea rsp, [rbp + 0x178]
pop rdi
pop rbp
ret
Function at 0x140043efe
Capabilities:
Create thread

Disassembly:
jmp 0x140070fc0
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rdi
sub rsp, 0x168
lea rbp, [rsp + 0x30]
lea rdi, [rsp + 0x30]
mov ecx, 0x1e
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0x188]
mov rax, qword [0x1400f9300]
xor rax, rbp
mov qword [rbp + 0x120], rax
lea rcx, [0x140111af6]
call fcn.140043e1d
nop
mov edx, 8
lea rcx, [rbp + 8]
call fcn.140042473
mov r8, qword [rbp + 0x160]
mov rdx, qword [rbp + 0x158]
lea rcx, [rbp + 0x108]
call fcn.1400425b8
mov qword [rbp + 0x118], rax
mov rdx, qword [rbp + 0x118]
lea rcx, [rbp + 8]
call fcn.140041ab9
nop
lea rcx, [rbp + 0x108]
call fcn.140042e9b
nop
lea rax, [0x14004154b]
mov qword [rbp + 0x28], rax
mov rax, qword [rbp + 0x150]
add rax, 8
mov qword [rbp + 0x118], rax
lea rcx, [rbp + 8]
call fcn.140041e4c
mov rcx, qword [rbp + 0x118]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], 0
mov r9, rax
mov r8, qword [rbp + 0x28]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.ucrtbased.dll__beginthreadex]
mov rcx, qword [rbp + 0x150]
mov qword [rcx], rax
mov rax, qword [rbp + 0x150]
cmp qword [rax], 0
je 0x1400710cf
lea rcx, [rbp + 8]
call fcn.140041e29
nop
jmp 0x1400710e8
mov rax, qword [rbp + 0x150]
mov dword [rax + 8], 0
mov ecx, 6
call fcn.14004195b
nop
lea rcx, [rbp + 8]
call fcn.140042e9b
nop
lea rcx, [rbp - 0x30]
lea rdx, [0x1400dac40]
call fcn.1400435df
mov rcx, qword [rbp + 0x120]
xor rcx, rbp
call fcn.140042581
lea rsp, [rbp + 0x138]
pop rdi
pop rbp
ret
Function at 0x14004405c
Capabilities:
Enumerate files on windows

Disassembly:
jmp 0x14008a3f0
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rdi
sub rsp, 0x678
lea rbp, [rsp + 0x20]
lea rdi, [rsp + 0x20]
mov ecx, 0x106
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0x698]
mov rax, qword [0x1400f9300]
xor rax, rbp
mov qword [rbp + 0x648], rax
mov dword [rbp + 0x634], 0
lea rcx, [0x140111d59]
call fcn.140043e1d
nop
mov edx, pe_nt_image_headers64
lea rcx, [rbp + 0x2a0]
call fcn.140043486
mov edx, 1
lea rcx, [rbp + 0x2a0]
call fcn.140041433
nop
lea r8, [0x1400dcb2c]
mov rdx, qword [rbp + 0x678]
lea rcx, [rbp + 0x3b8]
call fcn.1400437c9
nop
lea rcx, [rbp + 0x3b8]
call fcn.140041eab
lea rdx, [rbp + 0x10]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov qword [rbp + 0x278], rax
cmp qword [rbp + 0x278], 0xffffffffffffffff
jne 0x14008a52c
lea rdx, str.Error_finding_files_in_path:
mov rcx, qword [sym.imp.MSVCP140D.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcerr]
call fcn.140042716
mov rdx, qword [rbp + 0x678]
mov rcx, rax
call fcn.1400429d2
lea rdx, [0x1400425b3]
mov rcx, rax
call qword [sym.imp.MSVCP140D.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64___cdecl_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64____cdecl___class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64_____ptr64]
nop
lea rdx, [0x1400d1a2c]
mov rcx, qword [rbp + 0x670]
call fcn.140041e74
mov eax, dword [rbp + 0x634]
or eax, 1
mov dword [rbp + 0x634], eax
lea rcx, [rbp + 0x3b8]
call fcn.1400436d9
nop
lea rcx, [rbp + 0x2a0]
call fcn.140042c11
nop
mov rax, qword [rbp + 0x670]
jmp 0x14008a634
lea rdx, [0x1400d36fc]
lea rcx, [rbp + 0x3c]
call qword [sym.imp.ucrtbased.dll_wcscmp]
test eax, eax
je 0x14008a5ca
lea rdx, [0x1400dcb80]
lea rcx, [rbp + 0x3c]
call qword [sym.imp.ucrtbased.dll_wcscmp]
test eax, eax
je 0x14008a5ca
mov eax, dword [rbp + 0x10]
and eax, 0x10
test eax, eax
je 0x14008a598
lea rax, [rbp + 0x2b0]
lea rdx, [0x1400dcb88]
mov rcx, rax
call fcn.140042716
lea rdx, [rbp + 0x3c]
mov rcx, rax
call fcn.140042716
lea rdx, [0x1400dc4a0]
mov rcx, rax
call fcn.140042716
nop
jmp 0x14008a5ca
lea rax, [rbp + 0x2b0]
lea rdx, [0x1400dcba0]
mov rcx, rax
call fcn.140042716
lea rdx, [rbp + 0x3c]
mov rcx, rax
call fcn.140042716
lea rdx, [0x1400dc4a0]
mov rcx, rax
call fcn.140042716
nop
lea rdx, [rbp + 0x10]
mov rcx, qword [rbp + 0x278]
call qword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x14008a52c
mov rcx, qword [rbp + 0x278]
call qword [sym.imp.KERNEL32.dll_FindClose]
nop
mov rdx, qword [rbp + 0x670]
lea rcx, [rbp + 0x2a0]
call fcn.1400415f5
mov eax, dword [rbp + 0x634]
or eax, 1
mov dword [rbp + 0x634], eax
lea rcx, [rbp + 0x3b8]
call fcn.1400436d9
nop
lea rcx, [rbp + 0x2a0]
call fcn.140042c11
nop
mov rax, qword [rbp + 0x670]
mov rdi, rax
lea rcx, [rbp - 0x20]
lea rdx, [0x1400d8440]
call fcn.1400435df
mov rax, rdi
mov rcx, qword [rbp + 0x648]
xor rcx, rbp
call fcn.140042581
lea rsp, [rbp + 0x658]
pop rdi
pop rbp
ret
Function at 0x140044372
Capabilities:
Create thread

Disassembly:
jmp 0x140071180
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rdi
sub rsp, 0x168
lea rbp, [rsp + 0x30]
lea rdi, [rsp + 0x30]
mov ecx, 0x1e
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0x188]
mov rax, qword [0x1400f9300]
xor rax, rbp
mov qword [rbp + 0x120], rax
lea rcx, [0x140111af6]
call fcn.140043e1d
nop
mov edx, 8
lea rcx, [rbp + 8]
call fcn.1400443a4
mov r8, qword [rbp + 0x160]
mov rdx, qword [rbp + 0x158]
lea rcx, [rbp + 0x108]
call fcn.1400443b3
mov qword [rbp + 0x118], rax
mov rdx, qword [rbp + 0x118]
lea rcx, [rbp + 8]
call fcn.140044368
nop
lea rcx, [rbp + 0x108]
call fcn.1400443bd
nop
lea rax, [0x14004434f]
mov qword [rbp + 0x28], rax
mov rax, qword [rbp + 0x150]
add rax, 8
mov qword [rbp + 0x118], rax
lea rcx, [rbp + 8]
call fcn.140044345
mov rcx, qword [rbp + 0x118]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], 0
mov r9, rax
mov r8, qword [rbp + 0x28]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.ucrtbased.dll__beginthreadex]
mov rcx, qword [rbp + 0x150]
mov qword [rcx], rax
mov rax, qword [rbp + 0x150]
cmp qword [rax], 0
je 0x14007128f
lea rcx, [rbp + 8]
call fcn.1400443a9
nop
jmp 0x1400712a8
mov rax, qword [rbp + 0x150]
mov dword [rax + 8], 0
mov ecx, 6
call fcn.14004195b
nop
lea rcx, [rbp + 8]
call fcn.1400443bd
nop
lea rcx, [rbp - 0x30]
lea rdx, [0x1400dacc0]
call fcn.1400435df
mov rcx, qword [rbp + 0x120]
xor rcx, rbp
call fcn.140042581
lea rsp, [rbp + 0x138]
pop rdi
pop rbp
ret
Function at 0x14008ac30
Capabilities:
Get graphical window text

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rdi
sub rsp, 0x568
lea rbp, [rsp + 0x20]
lea rdi, [rsp + 0x20]
mov ecx, 0xf2
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0x588]
mov rax, qword [0x1400f9300]
xor rax, rbp
mov qword [rbp + 0x538], rax
lea rcx, [0x140111d59]
call fcn.140043e1d
nop
mov r8d, 0x100
lea rdx, [rbp + 0x10]
mov rcx, qword [rbp + 0x568]
call qword [sym.imp.USER32.dll_GetWindowTextW]
nop
lea rdx, [rbp + 0x224]
mov rcx, qword [rbp + 0x568]
call qword [sym.imp.USER32.dll_GetWindowThreadProcessId]
nop
mov rcx, qword [rbp + 0x568]
call qword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x14008adf3
lea rcx, [rbp + 0x10]
call qword [sym.imp.ucrtbased.dll_wcslen]
test rax, rax
jbe 0x14008adf3
mov edx, dword [rbp + 0x224]
lea rcx, [rbp + 0x408]
call fcn.140041c71
mov qword [rbp + 0x4f8], rax
mov rax, qword [rbp + 0x4f8]
mov qword [rbp + 0x500], rax
lea rdx, [rbp + 0x10]
lea rcx, [rbp + 0x448]
call fcn.140041e74
mov qword [rbp + 0x508], rax
mov rax, qword [rbp + 0x508]
mov qword [rbp + 0x510], rax
lea r8, str.__PID:__
mov rdx, qword [rbp + 0x510]
lea rcx, [rbp + 0x488]
call fcn.140042b44
mov qword [rbp + 0x518], rax
mov rax, qword [rbp + 0x518]
mov qword [rbp + 0x520], rax
mov r8, qword [rbp + 0x500]
mov rdx, qword [rbp + 0x520]
lea rcx, [rbp + 0x4c8]
call fcn.140042dd3
mov qword [rbp + 0x528], rax
mov rax, qword [rbp + 0x528]
mov qword [rbp + 0x530], rax
lea r8, [0x1400dc890]
mov rdx, qword [rbp + 0x530]
lea rcx, [rbp + 0x248]
call fcn.140042b44
nop
lea rcx, [rbp + 0x4c8]
call fcn.1400436d9
nop
lea rcx, [rbp + 0x488]
call fcn.1400436d9
nop
lea rcx, [rbp + 0x448]
call fcn.1400436d9
nop
lea rcx, [rbp + 0x408]
call fcn.1400436d9
nop
lea rdx, [rbp + 0x248]
mov rcx, qword [rbp + 0x570]
call fcn.140041d2a
nop
lea rcx, [rbp + 0x248]
call fcn.1400436d9
nop
mov eax, 1
mov edi, eax
lea rcx, [rbp - 0x20]
lea rdx, [0x1400d74c0]
call fcn.1400435df
mov eax, edi
mov rcx, qword [rbp + 0x538]
xor rcx, rbp
call fcn.140042581
lea rsp, [rbp + 0x548]
pop rdi
pop rbp
ret
Function at 0x1400b8990
Capabilities:
Terminate process

Disassembly:
sub rsp, 0x68
mov ecx, 1
call fcn.140044016
movzx eax, al
test eax, eax
jne 0x1400b89b0
mov ecx, 7
call fcn.140043602
nop
mov byte [rsp + 0x20], 0
call fcn.1400436c5
mov byte [rsp + 0x21], al
cmp dword [0x1400fb670], 1
jne 0x1400b89d4
mov ecx, 7
call fcn.140043602
nop
jmp 0x1400b8a2c
cmp dword [0x1400fb670], 0
jne 0x1400b8a27
mov dword [0x1400fb670], 1
lea rdx, [0x1400cfa50]
lea rcx, [0x1400cf720]
call fcn.1400424fa
test eax, eax
je 0x1400b8a08
mov eax, 0xff
jmp 0x1400b8b31
lea rdx, [0x1400cf610]
lea rcx, [section..rdata]
call fcn.14004368e
mov dword [0x1400fb670], 2
jmp 0x1400b8a2c
mov byte [rsp + 0x20], 1
movzx ecx, byte [rsp + 0x21]
call fcn.14004358f
call fcn.140043102
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp qword [rax], 0
je 0x1400b8a89
mov rcx, qword [rsp + 0x30]
call fcn.1400420c2
movzx eax, al
test eax, eax
je 0x1400b8a89
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x50], rax
xor r8d, r8d
mov edx, 2
xor ecx, ecx
mov rax, qword [rsp + 0x50]
call qword [0x140113020]
nop
call fcn.140043319
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x38]
cmp qword [rax], 0
je 0x1400b8abd
mov rcx, qword [rsp + 0x38]
call fcn.1400420c2
movzx eax, al
test eax, eax
je 0x1400b8abd
mov rax, qword [rsp + 0x38]
mov rcx, qword [rax]
call fcn.140043c9c
nop
call fcn.1400b8ba0
mov dword [rsp + 0x28], eax
call fcn.140042fe5
movzx eax, al
test eax, eax
jne 0x1400b8adc
mov ecx, dword [rsp + 0x28]
call fcn.1400412f8
nop
movzx eax, byte [rsp + 0x20]
test eax, eax
jne 0x1400b8aeb
call fcn.140043d19
nop
xor edx, edx
mov cl, 1
call fcn.140041fd7
mov eax, dword [rsp + 0x28]
jmp 0x1400b8b31
add rsp, 0x68
ret
Function at 0x140003d10
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 0x140003d6d
lea rbx, [0x14019b680]
movzx r8d, byte [r9]
lea r9, [r9 + 1]
dec r10
cmp r8b, 0x23
jne 0x140003d54
cmp r10, 2
jb 0x140003d54
cmp byte [r9], r8b
jne 0x140003d54
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 0x140003d30
not eax
mov rbx, qword [rsp + 8]
ret
movzx r8d, byte [rcx]
inc r9
test r8b, r8b
je 0x140003daf
lea rbx, [0x14019b680]
cmp r8b, 0x23
jne 0x140003d93
cmp byte [r9], r8b
jne 0x140003d93
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 0x140003d80
mov rbx, qword [rsp + 8]
not eax
ret

Function at 0x140003f70
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
push rdi
sub rsp, 0x20
mov rdi, r8
mov rbx, rcx
test rcx, rcx
jne 0x140003f9f
mov r8d, 0x7d5
lea rdx, str.C:UserszipDownloadsPANDORAPANDORAimgui.cpp
lea rcx, str.filename__mode
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
test rdi, rdi
je 0x140003fab
mov qword [rdi], 0
lea rdx, [0x14019aea8]
mov rcx, rbx
call fcn.140003dc0
mov rbx, rax
test rax, rax
jne 0x140003fcd
mov rbx, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret
mov qword [rsp + 0x30], rbp
mov rcx, rbx
mov qword [rsp + 0x38], rsi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_ftell]
mov ebp, eax
cmp eax, 0xffffffff
je 0x1400040a6
xor edx, edx
mov r8d, 2
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fseek]
test eax, eax
jne 0x1400040a6
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_ftell]
movsxd rsi, eax
cmp esi, 0xffffffff
je 0x1400040a6
xor r8d, r8d
mov edx, ebp
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fseek]
test eax, eax
jne 0x1400040a6
cmp rsi, 0xffffffffffffffff
je 0x1400040a6
mov rax, qword [0x1405c4850]
test rax, rax
je 0x140004043
inc dword [rax + 0xf4]
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov rbp, rax
test rax, rax
je 0x1400040a6
mov r9, rbx
mov r8, rsi
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, rsi
je 0x140004093
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov rax, qword [0x1405c4850]
test rax, rax
je 0x140004088
dec dword [rax + 0xf4]
mov rcx, rbp
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x1400040af
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
test rdi, rdi
je 0x1400040a1
mov qword [rdi], rsi
mov rax, rbp
jmp 0x1400040b1
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
xor eax, eax
mov rbp, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret
Function at 0x140007870
Capabilities:
Hash data with crc32

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rsi
mov dword [rsp + 0x10], edx
push rdi
sub rsp, 0x20
cmp dword [rcx + 0xf0], 0
mov rsi, rcx
movsxd rdi, edx
jg 0x1400078ac
mov r8d, 0x716
lea rdx, str.C:UserszipDownloadsPANDORAPANDORAimgui.h
lea rcx, str.Size___0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov rax, qword [rsi + 0xf8]
lea rdx, [0x14019b680]
movsxd r8, dword [rsi + 0xf0]
mov ebx, dword [rax + r8*4 - 4]
not ebx
movzx eax, dil
movzx ecx, bl
xor rcx, rax
shr ebx, 8
movzx eax, byte [rsp + 0x39]
xor ebx, dword [rdx + rcx*4]
movzx ecx, bl
xor rcx, rax
shr ebx, 8
movzx eax, byte [rsp + 0x3a]
xor ebx, dword [rdx + rcx*4]
movzx ecx, bl
xor rcx, rax
shr ebx, 8
movzx eax, byte [rsp + 0x3b]
xor ebx, dword [rdx + rcx*4]
movzx ecx, bl
xor rcx, rax
shr ebx, 8
xor ebx, dword [rdx + rcx*4]
mov rcx, qword [rsi]
not ebx
cmp dword [rcx + 0x3f40], ebx
jne 0x140007927
mov r8, rdi
mov edx, 4
mov ecx, ebx
call fcn.14001ecd0
mov rsi, qword [rsp + 0x40]
mov eax, ebx
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
Function at 0x140007940
Capabilities:
Hash data with crc32

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x30
cmp dword [rcx + 0xf0], 0
mov rdi, rdx
mov rbx, rcx
jg 0x140007973
mov r8d, 0x716
lea rdx, str.C:UserszipDownloadsPANDORAPANDORAimgui.h
lea rcx, str.Size___0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
movss xmm0, dword [rbx + 0x110]
lea r10, [0x14019b680]
movsxd rcx, dword [rbx + 0xf0]
mov rax, qword [rbx + 0xf8]
movss xmm2, dword [rdi]
movss xmm1, dword [rbx + 0x114]
subss xmm2, xmm0
movss xmm3, dword [rdi + 4]
mov r9d, dword [rax + rcx*4 - 4]
subss xmm3, xmm1
movss xmm4, dword [rdi + 8]
not r9d
movzx ecx, r9b
subss xmm4, xmm0
movss xmm0, dword [rdi + 0xc]
shr r9d, 8
subss xmm0, xmm1
movd r8d, xmm2
movss dword [rsp + 0x20], xmm2
movzx eax, byte [rsp + 0x20]
xor rcx, rax
movss dword [rsp + 0x24], xmm3
mov eax, r8d
movss dword [rsp + 0x28], xmm4
shr eax, 8
movzx edx, al
mov eax, r8d
xor r9d, dword [r10 + rcx*4]
movzx ecx, r9b
xor rdx, rcx
shr r9d, 8
shr eax, 0x10
movss dword [rsp + 0x2c], xmm0
xor r9d, dword [r10 + rdx*4]
movzx ecx, r9b
shr r9d, 8
movzx edx, al
movzx eax, byte [rsp + 0x24]
xor rdx, rcx
xor r9d, dword [r10 + rdx*4]
movzx ecx, r9b
shr r9d, 8
mov edx, r8d
shr rdx, 0x18
xor rdx, rcx
movd r8d, xmm3
xor r9d, dword [r10 + rdx*4]
movzx ecx, r9b
xor rcx, rax
shr r9d, 8
mov eax, r8d
shr eax, 8
movzx edx, al
mov eax, r8d
xor r9d, dword [r10 + rcx*4]
movzx ecx, r9b
xor rdx, rcx
shr r9d, 8
shr eax, 0x10
xor r9d, dword [r10 + rdx*4]
movzx ecx, r9b
shr r9d, 8
movzx edx, al
movzx eax, byte [rsp + 0x28]
xor rdx, rcx
xor r9d, dword [r10 + rdx*4]
movzx ecx, r9b
shr r9d, 8
mov edx, r8d
shr rdx, 0x18
xor rdx, rcx
movd r8d, xmm4
xor r9d, dword [r10 + rdx*4]
movzx ecx, r9b
xor rcx, rax
shr r9d, 8
mov eax, r8d
xor r9d, dword [r10 + rcx*4]
shr eax, 8
movzx edx, al
movzx ecx, r9b
mov rbx, qword [rsp + 0x40]
xor rdx, rcx
shr r9d, 8
mov eax, r8d
shr eax, 0x10
xor r9d, dword [r10 + rdx*4]
movzx ecx, r9b
shr r9d, 8
movzx edx, al
movzx eax, byte [rsp + 0x2c]
xor rdx, rcx
xor r9d, dword [r10 + rdx*4]
movzx ecx, r9b
shr r9d, 8
mov edx, r8d
shr rdx, 0x18
xor rdx, rcx
movd r8d, xmm0
xor r9d, dword [r10 + rdx*4]
movzx ecx, r9b
xor rcx, rax
shr r9d, 8
mov eax, r8d
shr eax, 8
movzx edx, al
mov eax, r8d
xor r9d, dword [r10 + rcx*4]
movzx ecx, r9b
xor rdx, rcx
shr r9d, 8
shr eax, 0x10
shr r8, 0x18
xor r9d, dword [r10 + rdx*4]
movzx ecx, r9b
shr r9d, 8
movzx edx, al
xor rdx, rcx
xor r9d, dword [r10 + rdx*4]
movzx edx, r9b
shr r9d, 8
xor r8, rdx
xor r9d, dword [r10 + r8*4]
not r9d
mov eax, r9d
add rsp, 0x30
pop rdi
ret