joyce8/EMBER2024-capa huggingface dataset:
Function at 0x180053fb0
Capabilities:
Get system information on windows

Disassembly:
mov qword [rsp + 0x20], rsi
push rdi
push r14
push r15
sub rsp, 0x80
mov rdi, rcx
lea rcx, [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov r14, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x30]
cmp rdi, 0x40000000
jbe 0x180053ff0
lea rax, [rdi - 0x40000000]
cmp r14, rax
cmovb r14, rax
mov rsi, qword [0x18006e190]
lea r15, [rdi + 0x40000000]
cmp rcx, r15
cmovbe r15, rcx
sub r15, 0xfff
test rsi, rsi
je 0x18005402e
cmp rsi, r14
jb 0x180054026
cmp rsi, r15
jae 0x180054026
cmp qword [rsi + 8], 0
jne 0x1800541f7
mov rsi, qword [rsi]
test rsi, rsi
jne 0x180054011
mov qword [rsp + 0xa0], rbx
mov rbx, rdi
mov qword [rsp + 0xa8], rbp
mov qword [rsp + 0xb0], r12
mov r12d, 0x40
cmp rdi, r14
jb 0x1800540c2
nop dword [rax]
nop dword [rax + rax]
mov ebp, dword [rsp + 0x48]
mov rax, rbx
xor edx, edx
div rbp
sub rbx, rdx
sub rbx, rbp
cmp rbx, r14
jb 0x1800540b9
nop word [rax + rax]
mov r8d, 0x30
lea rdx, [rsp + 0x50]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_VirtualQuery]
test rax, rax
je 0x1800540b9
cmp dword [rsp + 0x70], 0x10000
je 0x18005413b
mov rbx, qword [rsp + 0x58]
cmp rbx, rbp
jb 0x1800540b9
sub rbx, rbp
cmp rbx, r14
jae 0x180054080
test rsi, rsi
jne 0x1800541a0
cmp rdi, r15
ja 0x1800541df
nop dword [rax + rax]
mov ebp, dword [rsp + 0x48]
xor edx, edx
mov rax, rdi
mov ebx, ebp
div rbp
mov eax, ebp
sub rax, rdx
add rax, rdi
mov rdi, rax
cmp rax, r15
ja 0x1800541df
mov r8d, 0x30
lea rdx, [rsp + 0x50]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_VirtualQuery]
test rax, rax
je 0x1800541df
cmp dword [rsp + 0x70], 0x10000
je 0x180054171
xor edx, edx
lea edi, [rbp - 1]
add rdi, qword [rsp + 0x68]
add rdi, qword [rsp + 0x50]
mov rax, rdi
div rbx
sub rdi, rdx
cmp rdi, r15
jbe 0x1800540f2
jmp 0x1800541df
test rbx, rbx
je 0x1800540b9
mov r9d, r12d
mov edx, 0x1000
mov r8d, 0x3000
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov rsi, rax
test rax, rax
jne 0x1800541a0
cmp rbx, r14
jae 0x180054060
jmp 0x1800540c2
test rdi, rdi
je 0x1800541df
mov r9d, r12d
mov edx, 0x1000
mov r8d, 0x3000
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov rsi, rax
test rax, rax
jne 0x1800541a0
cmp rdi, r15
jbe 0x1800540d0
jmp 0x1800541df
xor edx, edx
lea rcx, [rsi + 0x40]
mov dword [rsi + 0x10], edx
nop dword [rax]
mov qword [rcx], rdx
mov rax, rcx
mov qword [rsi + 8], rcx
add r12, 0x40
add rcx, 0x40
mov rdx, rax
cmp r12, 0xfc0
jbe 0x1800541b0
mov rax, qword [0x18006e190]
mov qword [rsi], rax
mov qword [0x18006e190], rsi
mov r12, qword [rsp + 0xb0]
mov rbp, qword [rsp + 0xa8]
mov rbx, qword [rsp + 0xa0]
mov rax, rsi
mov rsi, qword [rsp + 0xb8]
add rsp, 0x80
pop r15
pop r14
pop rdi
ret
Function at 0x180054aa0
Capabilities:
Resume thread

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x30
xor edi, edi
mov esi, ecx
mov ecx, dword [0x18006e1b4]
mov ebx, edi
test ecx, ecx
je 0x180054bdb
mov rax, qword [0x18006e1a8]
add rax, 0x20
nop
movzx edx, byte [rax]
shr edx, 1
and edx, 1
cmp edx, esi
jne 0x180054af8
inc ebx
add rax, 0x38
cmp ebx, ecx
jb 0x180054ad0
mov eax, edi
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
add rsp, 0x30
pop rdi
ret
cmp ebx, 0xffffffff
je 0x180054bdb
mov r8d, edi
lea rcx, [rsp + 0x20]
test esi, esi
mov edx, 0xffffffff
setne r8b
call fcn.180054e20
mov r8d, dword [0x18006e1b4]
cmp ebx, r8d
jae 0x180054b68
nop word [rax + rax]
mov eax, ebx
imul rcx, rax, 0x38
mov rax, qword [0x18006e1a8]
movzx edx, byte [rcx + rax + 0x20]
shr edx, 1
and edx, 1
cmp edx, esi
je 0x180054b61
mov edx, esi
mov ecx, ebx
call fcn.180054d10
mov edi, eax
test eax, eax
jne 0x180054b68
mov r8d, dword [0x18006e1b4]
inc ebx
cmp ebx, r8d
jb 0x180054b30
cmp qword [rsp + 0x20], 0
je 0x180054bdb
mov eax, dword [rsp + 0x2c]
test eax, eax
je 0x180054bc7
mov rbx, qword [rsp + 0x20]
mov qword [rsp + 0x40], rbp
mov ebp, eax
nop dword [rax]
nop dword [rax + rax]
mov r8d, dword [rbx]
xor edx, edx
lea ecx, [rdx + 0x5a]
call qword [sym.imp.KERNEL32.dll_OpenThread]
mov rsi, rax
test rax, rax
je 0x180054bb8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_ResumeThread]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
add rbx, 4
sub rbp, 1
jne 0x180054b90
mov rbp, qword [rsp + 0x40]
mov r8, qword [rsp + 0x20]
xor edx, edx
mov rcx, qword [0x18006e1a0]
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rbx, qword [rsp + 0x48]
mov eax, edi
mov rsi, qword [rsp + 0x50]
add rsp, 0x30
pop rdi
ret
Function at 0x180054d10
Capabilities:
Allocate or change rwx memory

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
sub rsp, 0x20
mov eax, ecx
lea r9, [rsp + 0x30]
imul rbx, rax, 0x38
mov esi, edx
add rbx, qword [0x18006e1a8]
mov r8, qword [rbx]
movzx eax, byte [rbx + 0x20]
and al, 1
movzx ecx, al
lea rdi, [r8 - 5]
cmove rdi, r8
mov r8d, 0x40
lea rbp, [rcx*2 + 5]
mov rcx, rdi
mov rdx, rbp
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
test eax, eax
jne 0x180054d74
mov eax, 0xa
jmp 0x180054e03
test esi, esi
je 0x180054d96
mov byte [rdi], 0xe9
mov eax, dword [rbx + 8]
sub eax, edi
sub eax, 5
mov dword [rdi + 1], eax
test byte [rbx + 0x20], 1
je 0x180054db9
mov rax, qword [rbx]
mov word [rax], 0xf9eb
jmp 0x180054db9
mov eax, dword [rbx + 0x18]
test byte [rbx + 0x20], 1
mov dword [rdi], eax
je 0x180054db2
movzx eax, word [rbx + 0x1c]
mov word [rdi + 4], ax
movzx eax, byte [rbx + 0x1e]
mov byte [rdi + 6], al
jmp 0x180054db9
movzx eax, byte [rbx + 0x1c]
mov byte [rdi + 4], al
mov r8d, dword [rsp + 0x30]
lea r9, [rsp + 0x30]
mov rdx, rbp
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov r8, rbp
mov rdx, rdi
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_FlushInstructionCache]
and byte [rbx + 0x20], 0xfd
and sil, 1
movzx eax, sil
shl sil, 2
add al, al
or al, byte [rbx + 0x20]
and al, 0xfb
or al, sil
mov byte [rbx + 0x20], al
xor eax, eax
mov rbx, qword [rsp + 0x38]
mov rbp, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
Function at 0x180054e20
Capabilities:
Enumerate threads
Suspend thread

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, 0x40
xor esi, esi
mov r14d, edx
mov rbx, rcx
mov qword [rcx], rsi
mov qword [rcx + 8], rsi
xor edx, edx
mov ebp, r8d
lea ecx, [rsi + 4]
call sub.KERNEL32.dll_CreateToolhelp32Snapshot
mov rdi, rax
cmp rax, 0xffffffffffffffff
je 0x180054f3a
lea rdx, [rsp + 0x20]
mov dword [rsp + 0x20], 0x1c
mov rcx, rax
call sub.KERNEL32.dll_Thread32First
test eax, eax
je 0x180054f31
cmp dword [rsp + 0x20], 0x10
jb 0x180054f14
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
cmp dword [rsp + 0x2c], eax
jne 0x180054f14
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
cmp dword [rsp + 0x28], eax
je 0x180054f14
mov rdx, qword [rbx]
test rdx, rdx
jne 0x180054ed2
mov dword [rbx + 8], 0x80
mov r8d, 0x200
mov rcx, qword [0x18006e1a0]
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [rbx], rax
mov rdx, rax
test rax, rax
je 0x180054f31
jmp 0x180054f07
mov eax, dword [rbx + 8]
cmp dword [rbx + 0xc], eax
jb 0x180054f07
mov rcx, qword [0x18006e1a0]
lea r9d, [rax + rax]
mov r8, rdx
shl r9, 2
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapReAlloc]
mov rdx, rax
test rax, rax
je 0x180054f31
mov eax, dword [rbx + 8]
add eax, eax
mov qword [rbx], rdx
mov dword [rbx + 8], eax
mov ecx, dword [rbx + 0xc]
mov eax, dword [rsp + 0x28]
mov dword [rdx + rcx*4], eax
inc dword [rbx + 0xc]
lea rdx, [rsp + 0x20]
mov dword [rsp + 0x20], 0x1c
mov rcx, rdi
call sub.KERNEL32.dll_Thread32Next
test eax, eax
jne 0x180054e80
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp qword [rbx], rsi
je 0x180054f93
cmp dword [rbx + 0xc], esi
jbe 0x180054f93
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [rbx]
xor edx, edx
mov ecx, esi
mov r8d, dword [rax + rcx*4]
lea ecx, [rdx + 0x5a]
call qword [sym.imp.KERNEL32.dll_OpenThread]
mov rdi, rax
test rax, rax
je 0x180054f8c
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SuspendThread]
mov r8d, ebp
mov edx, r14d
mov rcx, rdi
call fcn.180054fb0
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
inc esi
cmp esi, dword [rbx + 0xc]
jb 0x180054f50
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
add rsp, 0x40
pop r14
ret

Function at 0x180055140
Capabilities:
Resume thread

Disassembly:
push rdi
sub rsp, 0x20
cmp qword [rcx], 0
mov rdi, rcx
je 0x1800551af
mov qword [rsp + 0x30], rbx
xor ebx, ebx
cmp dword [rcx + 0xc], ebx
jbe 0x180055198
mov qword [rsp + 0x38], rsi
mov rax, qword [rdi]
xor edx, edx
mov r8d, dword [rax + rbx*4]
lea ecx, [rdx + 0x5a]
call qword [sym.imp.KERNEL32.dll_OpenThread]
mov rsi, rax
test rax, rax
je 0x18005518c
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_ResumeThread]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
inc ebx
cmp ebx, dword [rdi + 0xc]
jb 0x180055160
mov rsi, qword [rsp + 0x38]
mov r8, qword [rdi]
xor edx, edx
mov rcx, qword [0x18006e1a0]
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
Function at 0x180055830
Capabilities:
Access peb ldr_data
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
movzx ebx, byte [rcx]
lea rdi, [rcx + 1]
mov rsi, rdx
mov r10d, 0x811c9dc5
mov rcx, rdi
movzx eax, bl
test bl, bl
je 0x180055879
nop dword [rax]
movsx eax, al
lea rcx, [rcx + 1]
xor eax, r10d
imul r10d, eax, 0x1000193
movzx eax, byte [rcx - 1]
test al, al
jne 0x180055860
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov r11, qword [rcx + 0x10]
mov r9, r11
nop dword [rax]
mov rcx, qword [r9 + 0x60]
mov edx, 0x811c9dc5
movzx eax, word [r9 + 0x58]
shr rax, 1
lea r8, [rcx + rax*2]
cmp rcx, r8
je 0x1800558c4
nop word [rax + rax]
movsx eax, byte [rcx]
add rcx, 2
xor eax, edx
imul edx, eax, 0x1000193
cmp rcx, r8
jne 0x1800558b0
cmp edx, r10d
je 0x1800558d6
mov r9, qword [r9]
cmp r9, r11
jne 0x180055890
xor r11d, r11d
jmp 0x1800558da
mov r11, qword [r9 + 0x30]
mov r10d, 0x811c9dc5
test bl, bl
je 0x180055908
nop dword [rax]
nop dword [rax + rax]
movsx eax, bl
movzx ebx, byte [rdi]
lea rdi, [rdi + 1]
xor eax, r10d
imul r10d, eax, 0x1000193
test bl, bl
jne 0x1800558f0
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rbx, qword [rcx + 0x10]
mov r8, rbx
nop dword [rax]
mov rcx, qword [r8 + 0x60]
mov edx, 0x811c9dc5
movzx eax, word [r8 + 0x58]
shr rax, 1
lea r9, [rcx + rax*2]
cmp rcx, r9
je 0x180055954
nop word [rax + rax]
movsx eax, byte [rcx]
add rcx, 2
xor eax, edx
imul edx, eax, 0x1000193
cmp rcx, r9
jne 0x180055940
cmp edx, r10d
je 0x180055965
mov r8, qword [r8]
cmp r8, rbx
jne 0x180055920
xor eax, eax
jmp 0x180055969
mov eax, dword [r8 + 0x40]
lea rbx, [rax + r11]
xor r10d, r10d
mov r8, rsi
cmp r11, rbx
jae 0x180055a27
mov edi, 0x3f3f
movzx r9d, byte [r8]
test r9b, r9b
je 0x180055a39
cmp r9b, 0x3f
je 0x1800559f1
movzx eax, r9b
and al, 0xdf
sub al, 0x41
cmp al, 5
ja 0x1800559ac
movzx edx, r9b
and dl, 0xdf
sub dl, 0x37
jmp 0x1800559b9
xor edx, edx
lea ecx, [r9 - 0x30]
cmp cl, 9
cmovbe edx, r9d
movzx ecx, byte [r8 + 1]
movzx eax, cl
and al, 0xdf
sub al, 0x41
cmp al, 5
ja 0x1800559d1
and cl, 0xdf
sub cl, 0x37
jmp 0x1800559df
lea eax, [rcx - 0x30]
cmp al, 9
ja 0x1800559dd
sub cl, 0x30
jmp 0x1800559df
xor cl, cl
shl dl, 4
or dl, cl
cmp byte [r11], dl
je 0x1800559f1
mov r8, rsi
xor r10d, r10d
jmp 0x180055a1b
test r10, r10
mov rax, r11
cmovne rax, r10
cmp byte [r8 + 2], 0
mov r10, rax
je 0x180055a29
cmp word [r8], di
je 0x180055a17
cmp r9b, 0x3f
jne 0x180055a17
add r8, 2
jmp 0x180055a1b
add r8, 3
inc r11
cmp r11, rbx
jb 0x180055981
xor eax, eax
mov rbx, qword [rsp + 8]
mov rsi, qword [rsp + 0x10]
mov rdi, qword [rsp + 0x18]
ret
mov rbx, qword [rsp + 8]
mov rax, r10
mov rsi, qword [rsp + 0x10]
mov rdi, qword [rsp + 0x18]
ret
Function at 0x180057c00
Capabilities:
Allocate or change rwx memory

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
sub rsp, 0x68
mov rax, qword [rsp + 0x78]
sub rax, 0x10000
mov rcx, rax
call fcn.180057e20
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x70]
cmp qword [rsp + 0x20], rax
jbe 0x180057d07
mov rax, qword [0x18006d710]
cmp qword [rsp + 0x20], rax
jb 0x180057c64
mov rax, qword [0x18006d718]
cmp qword [rsp + 0x20], rax
ja 0x180057c64
mov rax, qword [rsp + 0x20]
sub rax, 0x8000000
mov qword [rsp + 0x20], rax
jmp 0x180057c26
mov r8d, 0x30
xor edx, edx
lea rcx, [rsp + 0x30]
call sub.VCRUNTIME140.dll_memset
mov r8d, 0x30
lea rdx, [rsp + 0x30]
mov rcx, qword [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_VirtualQuery]
test rax, rax
jne 0x180057c93
jmp 0x180057d07
cmp dword [rsp + 0x50], 0x10000
jne 0x180057cea
cmp qword [rsp + 0x48], 0x10000
jb 0x180057cea
mov r9d, 0x40
mov r8d, 0x3000
mov edx, 0x10000
mov rcx, qword [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov qword [rsp + 0x28], rax
cmp qword [rsp + 0x28], 0
je 0x180057cd8
mov rax, qword [rsp + 0x28]
jmp 0x180057d09
mov rax, qword [rsp + 0x20]
sub rax, 0x10000
mov qword [rsp + 0x20], rax
jmp 0x180057d02
mov rax, qword [rsp + 0x38]
sub rax, 0x10000
mov rcx, rax
call fcn.180057e20
mov qword [rsp + 0x20], rax
jmp 0x180057c26
xor eax, eax
add rsp, 0x68
ret

Function at 0x180057d10
Capabilities:
Allocate or change rwx memory

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
sub rsp, 0x68
mov rcx, qword [rsp + 0x70]
call fcn.180057e60
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x78]
cmp qword [rsp + 0x20], rax
jae 0x180057e13
mov rax, qword [0x18006d710]
cmp qword [rsp + 0x20], rax
jb 0x180057d6b
mov rax, qword [0x18006d718]
cmp qword [rsp + 0x20], rax
ja 0x180057d6b
mov rax, qword [rsp + 0x20]
add rax, 0x8000000
mov qword [rsp + 0x20], rax
jmp 0x180057d2d
mov r8d, 0x30
xor edx, edx
lea rcx, [rsp + 0x30]
call sub.VCRUNTIME140.dll_memset
mov r8d, 0x30
lea rdx, [rsp + 0x30]
mov rcx, qword [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_VirtualQuery]
test rax, rax
jne 0x180057d9a
jmp 0x180057e13
cmp dword [rsp + 0x50], 0x10000
jne 0x180057df1
cmp qword [rsp + 0x48], 0x10000
jb 0x180057df1
mov r9d, 0x40
mov r8d, 0x3000
mov edx, 0x10000
mov rcx, qword [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov qword [rsp + 0x28], rax
cmp qword [rsp + 0x28], 0
je 0x180057ddf
mov rax, qword [rsp + 0x28]
jmp 0x180057e15
mov rax, qword [rsp + 0x20]
add rax, 0x10000
mov qword [rsp + 0x20], rax
jmp 0x180057e0e
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x30]
add rcx, rax
mov rax, rcx
mov rcx, rax
call fcn.180057e60
mov qword [rsp + 0x20], rax
jmp 0x180057d2d
xor eax, eax
add rsp, 0x68
ret
Function at 0x180057eb0
Capabilities:
Hook routines via microsoft detours

Disassembly:
mov qword [rsp + 8], rcx
sub rsp, 0x58
lea r8, [rsp + 0x30]
lea rdx, [rsp + 0x38]
mov rcx, qword [rsp + 0x60]
call fcn.180058440
mov qword [rsp + 0x28], 0
cmp qword [0x18006e278], 0
jne 0x180057ef8
cmp qword [0x18006e270], 0
je 0x180057ef8
mov rax, qword [0x18006e270]
mov qword [0x18006e278], rax
cmp qword [0x18006e278], 0
je 0x180057f9e
mov rax, qword [0x18006e278]
cmp qword [rax + 0x10], 0
je 0x180057f9e
mov rax, qword [0x18006e278]
mov rcx, qword [rsp + 0x38]
cmp qword [rax + 0x10], rcx
jb 0x180057f9e
mov rax, qword [0x18006e278]
mov rcx, qword [rsp + 0x30]
cmp qword [rax + 0x10], rcx
ja 0x180057f9e
mov rax, qword [0x18006e278]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x38]
cmp qword [rsp + 0x28], rax
jb 0x180057f64
mov rax, qword [rsp + 0x30]
cmp qword [rsp + 0x28], rax
jbe 0x180057f6b
xor eax, eax
jmp 0x180058119
mov rax, qword [0x18006e278]
mov rcx, qword [rsp + 0x28]
mov rcx, qword [rcx + 0x48]
mov qword [rax + 0x10], rcx
mov r8d, 0x60
mov edx, 0xcc
mov rcx, qword [rsp + 0x28]
call sub.VCRUNTIME140.dll_memset
mov rax, qword [rsp + 0x28]
jmp 0x180058119
mov rax, qword [0x18006e270]
mov qword [0x18006e278], rax
jmp 0x180057fc0
mov rax, qword [0x18006e278]
mov rax, qword [rax + 8]
mov qword [0x18006e278], rax
cmp qword [0x18006e278], 0
je 0x18005800d
cmp qword [0x18006e278], 0
je 0x18005800b
mov rax, qword [0x18006e278]
cmp qword [rax + 0x10], 0
je 0x18005800b
mov rax, qword [0x18006e278]
mov rcx, qword [rsp + 0x38]
cmp qword [rax + 0x10], rcx
jb 0x18005800b
mov rax, qword [0x18006e278]
mov rcx, qword [rsp + 0x30]
cmp qword [rax + 0x10], rcx
ja 0x18005800b
jmp 0x180057f3c
jmp 0x180057fae
mov rcx, qword [rsp + 0x60]
call fcn.18005a070
and eax, 0xffff
mov eax, eax
mov rcx, qword [rsp + 0x60]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x60], rax
mov r8, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x60]
call fcn.180058120
mov qword [rsp + 0x48], rax
cmp qword [rsp + 0x48], 0
je 0x180058117
mov rax, qword [rsp + 0x48]
mov qword [0x18006e278], rax
mov rax, qword [0x18006e278]
mov dword [rax], 0x52727464
mov rax, qword [0x18006e278]
mov qword [rax + 0x10], 0
mov rax, qword [0x18006e278]
mov rcx, qword [0x18006e270]
mov qword [rax + 8], rcx
mov rax, qword [0x18006e278]
mov qword [0x18006e270], rax
mov qword [rsp + 0x40], 0
mov rax, qword [0x18006e278]
add rax, 0x60
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x2a8
jmp 0x1800580c8
mov eax, dword [rsp + 0x20]
dec eax
mov dword [rsp + 0x20], eax
cmp dword [rsp + 0x20], 1
jle 0x180058102
movsxd rax, dword [rsp + 0x20]
imul rax, rax, 0x60
mov rcx, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x40]
mov qword [rcx + rax + 0x48], rdx
movsxd rax, dword [rsp + 0x20]
imul rax, rax, 0x60
mov rcx, qword [rsp + 0x28]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x40], rax
jmp 0x1800580be
mov rax, qword [0x18006e278]
mov rcx, qword [rsp + 0x40]
mov qword [rax + 0x10], rcx
jmp 0x180057f3c
xor eax, eax
add rsp, 0x58
ret
Function at 0x140003320
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push r14
sub rsp, 0x70
mov rbp, qword [0x140206240]
mov rbx, rcx
movaps xmmword [rsp + 0x60], xmm6
mov r14, rbp
movaps xmmword [rsp + 0x50], xmm7
movaps xmm6, xmm1
movaps xmm7, xmm2
lea rax, [rbp + 8]
cmp rax, rcx
je 0x140003377
mov r8d, 0x59e
lea rdx, str.C:Users_nekroOneDriveEscritorioNueva_carpeta__2_ALEPUTOGAYimgui.cpp
lea rcx, str.g.IO__this___Can_only_add_events_to_current_context._
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov rbp, qword [0x140206240]
cmp byte [rbx + 0x37a1], 0
je 0x140003521
movss xmm1, dword [0x14017a2b4]
xorps xmm2, xmm2
comiss xmm7, xmm1
mov qword [rsp + 0x80], rsi
mov qword [rsp + 0x88], rdi
jbe 0x1400033c4
comiss xmm7, xmm2
cvttss2si eax, xmm7
jae 0x1400033bd
movd xmm0, eax
cvtdq2ps xmm0, xmm0
ucomiss xmm0, xmm7
jp 0x1400033bb
je 0x1400033bd
dec eax
movd xmm7, eax
cvtdq2ps xmm7, xmm7
comiss xmm6, xmm1
jbe 0x1400033e9
comiss xmm6, xmm2
cvttss2si eax, xmm6
jae 0x1400033e2
movd xmm0, eax
cvtdq2ps xmm0, xmm0
ucomiss xmm0, xmm6
jp 0x1400033e0
je 0x1400033e2
dec eax
movd xmm6, eax
cvtdq2ps xmm6, xmm6
mov esi, dword [rbp + 0x37c0]
sub esi, 1
movsxd rdi, esi
js 0x14000343f
lea rbx, [rdi + rdi*2]
shl rbx, 3
nop
cmp esi, dword [rbp + 0x37c0]
jl 0x140003422
mov r8d, 0x704
lea rdx, str.C:Users_nekroOneDriveEscritorioNueva_carpeta__2_ALEPUTOGAYimgui.h
lea rcx, str.i___0__i___Size
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov rax, qword [rbp + 0x37c8]
cmp dword [rbx + rax], 1
je 0x1400034c9
dec esi
sub rbx, 0x18
sub rdi, 1
jns 0x140003400
movsd xmm0, qword [r14 + 0xdfc]
lea rax, [rsp + 0x28]
movsd qword [rsp + 0x28], xmm0
movss xmm0, dword [rax]
ucomiss xmm0, xmm6
mov rdi, qword [rsp + 0x88]
mov rsi, qword [rsp + 0x80]
movss xmm1, dword [rax + 4]
jp 0x14000347e
jne 0x14000347e
ucomiss xmm1, xmm7
jp 0x14000347e
je 0x140003521
lea rbx, [r14 + 0x37c0]
movss dword [rsp + 0x38], xmm6
mov ecx, dword [rbx]
mov r8d, dword [rbx + 4]
movss dword [rsp + 0x3c], xmm7
mov qword [rsp + 0x40], 0
mov dword [rsp + 0x30], 1
mov dword [rsp + 0x34], 1
cmp ecx, r8d
jne 0x1400034ff
inc ecx
test r8d, r8d
je 0x1400034eb
mov eax, r8d
cdq
sub eax, edx
sar eax, 1
add eax, r8d
jmp 0x1400034f0
movss xmm0, dword [rbx + rax + 8]
movss xmm1, dword [rbx + rax + 0xc]
lea rax, [rsp + 0x20]
movss dword [rsp + 0x20], xmm0
movss dword [rsp + 0x24], xmm1
jmp 0x140003453
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
mov edx, ecx
mov rcx, rbx
call fcn.140020710
movsxd rax, dword [rbx]
movups xmm0, xmmword [rsp + 0x30]
movsd xmm1, qword [rsp + 0x40]
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 8]
movups xmmword [rax + rcx*8], xmm0
movsd qword [rax + rcx*8 + 0x10], xmm1
inc dword [rbx]
movaps xmm6, xmmword [rsp + 0x60]
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x20]
mov rbp, qword [r11 + 0x28]
movaps xmm7, xmmword [rsp + 0x50]
mov rsp, r11
pop r14
ret
Function at 0x140003980
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 0x1400039dd
lea rbx, [0x14016dfc0]
movzx r8d, byte [r9]
lea r9, [r9 + 1]
dec r10
cmp r8b, 0x23
jne 0x1400039c4
cmp r10, 2
jb 0x1400039c4
cmp byte [r9], r8b
jne 0x1400039c4
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 0x1400039a0
not eax
mov rbx, qword [rsp + 8]
ret
movzx r8d, byte [rcx]
inc r9
test r8b, r8b
je 0x140003a1f
lea rbx, [0x14016dfc0]
cmp r8b, 0x23
jne 0x140003a03
cmp byte [r9], r8b
jne 0x140003a03
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 0x1400039f0
mov rbx, qword [rsp + 8]
not eax
ret

Function at 0x140003be0
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 0x140003c0f
mov r8d, 0x7a6
lea rdx, str.C:Users_nekroOneDriveEscritorioNueva_carpeta__2_ALEPUTOGAYimgui.cpp
lea rcx, str.filename__mode
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
test rdi, rdi
je 0x140003c1b
mov qword [rdi], 0
lea rdx, [0x14016d7d8]
mov rcx, rbx
call fcn.140003a30
mov rbx, rax
test rax, rax
jne 0x140003c3d
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 0x140003d14
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 0x140003d14
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_ftell]
movsxd rsi, eax
cmp esi, 0xffffffff
je 0x140003d14
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 0x140003d14
cmp rsi, 0xffffffffffffffff
je 0x140003d14
mov rax, qword [0x140206240]
test rax, rax
je 0x140003cb1
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 0x140003d14
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 0x140003d01
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov rax, qword [0x140206240]
test rax, rax
je 0x140003cf6
dec dword [rax + 0xf4]
mov rcx, rbp
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x140003d1d
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
test rdi, rdi
je 0x140003d0f
mov qword [rdi], rsi
mov rax, rbp
jmp 0x140003d1f
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