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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xf0
lea rcx, [rbp + 7]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov rdi, qword [rbp + 0xf]
mov rbx, qword [rbp + 0x17]
mov dword [rbp - 0x69], 8
mov dword [rbp - 0x65], 0x40600000
mov dword [rbp - 0x61], 0x3f8ccccd
mov dword [rbp - 0x5d], 0x3cf5c28f
mov dword [rbp - 0x59], 0x3dcccccd
mov qword [rbp - 0x55], 7
mov dword [rbp - 0x4d], 0
mov dword [rbp - 0x49], 0x41f00000
mov dword [rbp - 0x45], 0x42480000
mov dword [rbp - 0x41], 0x3f000000
mov dword [rbp - 0x3d], 0x40133333
mov dword [rbp - 0x39], 0x3fb00000
mov dword [rbp - 0x35], 0x3f800000
mov word [rbp - 0x31], 1
mov byte [rbp - 0x2f], 0
lea rsi, [rbp - 0x69]
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x29], xmm0
mov ecx, Ordinal_60
call fcn.1400cddb0
mov r14, rax
mov qword [rbp - 0x29], rax
lea r15, [rax + 0x3b]
mov qword [rbp - 0x19], r15
mov r8d, Ordinal_60
mov rdx, rsi
mov rcx, rax
call sub.VCRUNTIME140.dll_memmove
mov qword [rbp - 0x21], r15
mov dword [rsp + 0x30], 0x3f000000
mov qword [rsp + 0x34], 0x3e800000
mov dword [rbp - 0x7d], 5
mov dword [rbp - 0x79], 0x3f800000
mov dword [rbp - 0x75], 0x41200000
mov dword [rbp - 0x71], 0x42340000
lea r12, [rsp + 0x30]
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x11], xmm0
mov ecx, Ordinal_32
call fcn.1400cddb0
mov rsi, rax
mov qword [rbp - 0x11], rax
lea r13, [rax + 0x1c]
mov qword [rbp - 1], r13
mov r8d, Ordinal_32
mov rdx, r12
mov rcx, rax
call sub.VCRUNTIME140.dll_memmove
mov qword [rbp - 9], r13
lea rax, [0x140189b38]
mov qword [rsp + 0x20], rax
mov r9, r14
mov r8, rbx
mov rdx, rdi
lea rcx, [0x140189b10]
call fcn.140058ea0
lea rax, [0x140189b50]
mov qword [rsp + 0x20], rax
mov r9, rsi
mov r8, rbx
mov rdx, rdi
lea rcx, [0x140189b10]
call fcn.140058ea0
nop
test rsi, rsi
je 0x14005b0d6
sub r13, rsi
cmp r13, 0x1000
jb 0x14005b0ca
add r13, 0x27
mov rcx, qword [rsi - 8]
sub rsi, rcx
lea rax, [rsi - 8]
cmp rax, 0x1f
ja 0x14005b106
mov rsi, rcx
mov rdx, r13
mov rcx, rsi
call fcn.1400ce0fc
nop
test r14, r14
je 0x14005b118
sub r15, r14
mov rax, r14
cmp r15, 0x1000
jb 0x14005b10d
add r15, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14005b10d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
mov rdx, r15
mov rcx, r14
call fcn.1400ce0fc
mov al, 1
lea r11, [rsp + 0xf0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
Function at 0x14005b6b0
Capabilities:
Create directory

Disassembly:
mov qword [rsp + 0x10], rbx
push rdi
sub rsp, 0x160
lea rcx, [rsp + 0x40]
call fcn.140055970
nop
lea rbx, [rsp + 0x40]
cmp qword [rsp + 0x58], 0xf
cmova rbx, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x50]
test rdi, rdi
je 0x14005b758
xor edx, edx
mov r8d, 0x100
lea rcx, [rsp + 0x60]
call sub.VCRUNTIME140.dll_memset
lea rcx, [0x1400efca0]
lea rdx, [0x1400efca2]
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rcx]
mov byte [rsp + rax + 0x60], 1
inc rcx
cmp rcx, rdx
jne 0x14005b710
lea rax, [rdi - 1]
mov r8, 0xffffffffffffffff
cmp rax, r8
cmovb r8, rax
add r8, rbx
movzx eax, byte [r8]
cmp byte [rsp + rax + 0x60], 0
jne 0x14005b753
cmp r8, rbx
je 0x14005b758
dec r8
movzx eax, byte [r8]
cmp byte [rsp + rax + 0x60], 0
je 0x14005b740
sub r8, rbx
jmp 0x14005b75f
mov r8, 0xffffffffffffffff
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x30], xmm1
cmp rdi, r8
cmovb r8, rdi
lea rdx, [rsp + 0x40]
cmp qword [rsp + 0x58], 0xf
cmova rdx, qword [rsp + 0x40]
lea rcx, [rsp + 0x20]
call fcn.14004e740
lea rcx, [rsp + 0x20]
cmp qword [rsp + 0x38], 0xf
cmova rcx, qword [rsp + 0x20]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_CreateDirectoryA]
test eax, eax
jne 0x14005b7b5
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rdx, qword [rsp + 0x38]
cmp rdx, 0xf
jbe 0x14005b7f5
inc rdx
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005b7f0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14005b7f0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400ce0fc
movdqa xmm0, xmmword [0x1400f0be0]
movdqu xmmword [rsp + 0x30], xmm0
mov byte [rsp + 0x20], 0
mov rdx, qword [rsp + 0x58]
cmp rdx, 0xf
jbe 0x14005b848
inc rdx
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005b843
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14005b843
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400ce0fc
mov rbx, qword [rsp + 0x178]
add rsp, 0x160
pop rdi
ret
Function at 0x14005bec0
Capabilities:
Create process on windows

Disassembly:
mov rax, rsp
sub rsp, 0xe8
xorps xmm0, xmm0
mov dword [rax - 0x78], 0x68
xor edx, edx
cmp qword [rcx + 0x18], 0xf
movups xmmword [rax - 0x40], xmm0
mov dword [rax - 0x3c], 1
mov word [rax - 0x38], dx
movups xmmword [rax - 0x70], xmm0
movups xmmword [rax - 0x60], xmm0
movups xmmword [rax - 0x50], xmm0
movups xmmword [rax - 0x30], xmm0
movups xmmword [rax - 0x20], xmm0
jbe 0x14005bf03
mov rcx, qword [rcx]
lea rax, [rsp + 0x50]
xor r9d, r9d
mov qword [rsp + 0x48], rax
xor r8d, r8d
lea rax, [rsp + 0x70]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], rdx
mov qword [rsp + 0x30], rdx
mov dword [rsp + 0x28], edx
mov dword [rsp + 0x20], edx
mov rdx, rcx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateProcessA]
mov rcx, qword [rsp + 0x50]
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [rsp + 0x50]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rsp + 0x58]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
add rsp, 0xe8
ret
Function at 0x14005bf70
Capabilities:
Enumerate process modules

Disassembly:
push rbx
push r12
push r15
mov eax, 0x1180
call fcn.1400ce5e0
sub rsp, rax
mov r15, rdx
lea r8, [rsp + 0x11b0]
mov rbx, rcx
mov edx, 0x1000
lea rcx, [rsp + 0x170]
xor r12d, r12d
call qword [sym.imp.KERNEL32.dll_K32EnumProcesses]
test eax, eax
jne 0x14005bfd0
xorps xmm0, xmm0
mov rax, rbx
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], r12
mov qword [rbx + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rbx], r12b
add rsp, 0x1180
pop r15
pop r12
pop rbx
ret
mov eax, dword [rsp + 0x11b0]
mov qword [rsp + 0x11a0], rbp
mov ebp, r12d
shr eax, 2
mov qword [rsp + 0x11a8], rsi
mov qword [rsp + 0x1178], rdi
mov qword [rsp + 0x1170], r14
mov dword [rsp + 0x11b0], eax
test eax, eax
je 0x14005c147
nop dword [rax]
mov eax, ebp
mov r8d, dword [rsp + rax*4 + 0x170]
test r8d, r8d
je 0x14005c138
xor edx, edx
mov ecx, 0x410
call qword [sym.imp.KERNEL32.dll_OpenProcess]
mov rsi, rax
test rax, rax
je 0x14005c138
lea r9, [rsp + 0x11b8]
mov r8d, 8
lea rdx, [rsp + 0x58]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_K32EnumProcessModules]
test eax, eax
je 0x14005c12f
mov rdx, qword [rsp + 0x58]
lea r8, [rsp + 0x60]
mov r9d, 0x104
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_K32GetModuleFileNameExA]
test eax, eax
je 0x14005c12f
xorps xmm0, xmm0
mov qword [rsp + 0x40], r12
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x48], r12
lea rax, [rsp + 0x60]
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rax + r8], r12b
jne 0x14005c0a0
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x30]
call fcn.14004e740
cmp qword [r15 + 0x18], 0xf
mov r9, r15
mov rax, qword [r15 + 0x10]
jbe 0x14005c0c9
mov r9, qword [r15]
mov r14, qword [rsp + 0x48]
lea rcx, [rsp + 0x30]
mov rdi, qword [rsp + 0x30]
cmp r14, 0xf
mov rdx, qword [rsp + 0x40]
cmova rcx, rdi
mov qword [rsp + 0x20], rax
xor r8d, r8d
call fcn.14004e670
cmp rax, 0xffffffffffffffff
jne 0x14005c193
cmp r14, 0xf
jbe 0x14005c12f
lea rdx, [r14 + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x14005c127
mov rdi, qword [rdi - 8]
add rdx, 0x27
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005c18c
mov rcx, rdi
call fcn.1400ce0fc
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
inc ebp
cmp ebp, dword [rsp + 0x11b0]
jb 0x14005c010
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], r12
mov qword [rbx + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rbx], r12b
mov rdi, qword [rsp + 0x1178]
mov rax, rbx
mov rsi, qword [rsp + 0x11a8]
mov rbp, qword [rsp + 0x11a0]
mov r14, qword [rsp + 0x1170]
add rsp, 0x1180
pop r15
pop r12
pop rbx
ret
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
movups xmm0, xmmword [rsp + 0x30]
movups xmm1, xmmword [rsp + 0x40]
movups xmmword [rbx], xmm0
movups xmmword [rbx + 0x10], xmm1
jmp 0x14005c15c
Function at 0x14005c6c0
Capabilities:
Create process on windows
Self delete
Terminate process

Disassembly:
sub rsp, 0x2b8
mov r8d, 0x104
lea rdx, [rsp + 0x1a0]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea rdx, [rsp + 0x1a0]
lea rcx, [rsp + 0x50]
call fcn.14004dc50
nop
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x70]
call fcn.14005c610
nop
lea rcx, [rsp + 0x50]
call fcn.14001f440
lea rdx, str.C:WindowsSystemdeleteApp.bat
lea rcx, [rsp + 0x30]
call fcn.140065220
nop
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x90]
call fcn.1400644f0
nop
lea rdx, str._echo_off_n
lea rcx, [rsp + 0x90]
call fcn.140066c10
lea rdx, str.timeout__T_6_n
lea rcx, [rsp + 0x90]
call fcn.140066c10
lea rdx, str.del__F__Q__
lea rcx, [rsp + 0x90]
call fcn.140066c10
mov rcx, rax
lea rdx, [rsp + 0x70]
call fcn.140066df0
mov rcx, rax
lea rdx, [0x1400efe34]
call fcn.140066c10
lea rdx, str.del__F__Q__
lea rcx, [rsp + 0x90]
call fcn.140066c10
mov rcx, rax
lea rdx, [rsp + 0x30]
call fcn.140066df0
mov rcx, rax
lea rdx, [0x1400efe34]
call fcn.140066c10
lea rcx, [rsp + 0x90]
call fcn.1400644b0
lea rcx, [rsp + 0x30]
call fcn.140065210
mov r8, rax
xor eax, eax
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rax
xor r9d, r9d
lea rdx, [0x1400efe58]
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_ShellExecuteW]
mov r9d, reloc.WS2_32.dll_recv
lea r8, str.You_Are_Banned___
lea rdx, str.You_Are_Banned_From_This_Panel__By_NINJA_HEX
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxA]
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
Function at 0x140064270
Capabilities:
Write file on windows

Disassembly:
push rbx
push rsi
push rdi
sub rsp, 0x70
mov esi, 0xffff
movzx edi, dx
mov rbx, rcx
cmp si, dx
jne 0x140064292
xor eax, eax
add rsp, 0x70
pop rdi
pop rsi
pop rbx
ret
mov rax, qword [rcx + 0x40]
mov rdx, qword [rax]
test rdx, rdx
je 0x1400642d1
mov r8, qword [rcx + 0x58]
movsxd r9, dword [r8]
lea rcx, [rdx + r9*2]
cmp rdx, rcx
jae 0x1400642d1
lea eax, [r9 - 1]
mov dword [r8], eax
mov rcx, qword [rbx + 0x40]
mov rdx, qword [rcx]
lea rax, [rdx + 2]
mov qword [rcx], rax
movzx eax, di
mov word [rdx], di
add rsp, 0x70
pop rdi
pop rsi
pop rbx
ret
cmp qword [rbx + 0x80], 0
mov qword [rsp + 0x90], rbp
je 0x1400643ed
mov r8, qword [rbx + 0x18]
lea rax, [rbx + 0x70]
cmp qword [r8], rax
jne 0x140064318
mov rcx, qword [rbx + 0x88]
mov rdx, qword [rbx + 0x90]
mov qword [r8], rcx
sub rdx, rcx
mov rax, qword [rbx + 0x38]
sar rdx, 1
mov qword [rax], rcx
mov rax, qword [rbx + 0x50]
mov dword [rax], edx
mov rcx, qword [rbx + 0x68]
test rcx, rcx
jne 0x140064326
movzx ecx, di
jmp 0x140064380
lea rax, [rsp + 0xa0]
mov word [rsp + 0x40], di
mov qword [rsp + 0x38], rax
lea rdx, [rbx + 0x74]
lea rax, [rsp + 0x68]
mov qword [rsp + 0x30], rax
lea r9, [rsp + 0x42]
lea rax, [rsp + 0x48]
mov qword [rsp + 0x28], rax
lea r8, [rsp + 0x40]
lea rax, [rsp + 0xa8]
mov qword [rsp + 0x20], rax
call qword [sym.imp.MSVCP140.dll_public:_int___cdecl_std::codecvt_wchar_t__char__struct__Mbstatet_::out_struct__Mbstatet____ptr64__wchar_t_const____ptr64__wchar_t_const____ptr64__wchar_t_const____ptr64____ptr64__char____ptr64__char____ptr64__char____ptr64____ptr64_const___ptr64]
test eax, eax
je 0x1400643a7
sub eax, 1
je 0x1400643a7
cmp eax, 2
jne 0x1400643ed
movzx ecx, word [rsp + 0x40]
mov rdx, qword [rbx + 0x80]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fputwc]
mov rbp, qword [rsp + 0x90]
cmp ax, si
cmove di, si
movzx eax, di
add rsp, 0x70
pop rdi
pop rsi
pop rbx
ret
mov rbp, qword [rsp + 0xa0]
lea rax, [rsp + 0x48]
sub rbp, rax
je 0x1400643d8
mov r9, qword [rbx + 0x80]
lea rcx, [rsp + 0x48]
mov r8, rbp
mov edx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
cmp rbp, rax
jne 0x1400643ed
lea rax, [rsp + 0x40]
mov byte [rbx + 0x72], 1
cmp qword [rsp + 0xa8], rax
cmovne si, di
mov rbp, qword [rsp + 0x90]
movzx eax, si
add rsp, 0x70
pop rdi
pop rsi
pop rbx
ret
Function at 0x1400648d0
Capabilities:
Write file on windows

Disassembly:
push rbx
push rdi
push r15
sub rsp, 0x20
cmp qword [rcx + 0x68], 0
mov rbx, r8
mov r15, rdx
mov rdi, rcx
je case.default.0x1400648f1
add rsp, 0x20
pop r15
pop rdi
pop rbx
jmp qword [sym.imp.MSVCP140.dll_protected_virtual:_long_long___int64____cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::xsputn_char_const____ptr64__long_long___int64_____ptr64]
mov rax, qword [rcx + 0x40]
mov qword [rsp + 0x40], rbp
mov qword [rsp + 0x48], rsi
mov rsi, rbx
mov qword [rsp + 0x58], r14
mov r9, qword [rax]
test r9, r9
je 0x14006491e
mov rax, qword [rcx + 0x58]
mov ecx, dword [rax]
jmp 0x140064920
xor ecx, ecx
movsxd rbp, ecx
test rbx, rbx
jle 0x140064979
test ecx, ecx
jle 0x140064959
cmp rbx, rbp
mov rcx, r9
cmovl rbp, rbx
mov r8, rbp
call sub.VCRUNTIME140.dll_memcpy
mov rax, qword [rdi + 0x58]
add r15, rbp
sub rbx, rbp
sub dword [rax], ebp
mov rcx, qword [rdi + 0x40]
movsxd rax, ebp
add qword [rcx], rax
test rbx, rbx
jle 0x140064979
mov r9, qword [rdi + 0x80]
test r9, r9
je 0x140064979
mov r8, rbx
mov edx, 1
mov rcx, r15
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
sub rbx, rax
mov r14, qword [rsp + 0x58]
sub rsi, rbx
mov rbp, qword [rsp + 0x40]
mov rax, rsi
mov rsi, qword [rsp + 0x48]
add rsp, 0x20
pop r15
pop rdi
pop rbx
ret
call 0x1b727706b
or dh, byte es:[rdi + 0xc]
sub dword [rdi], eax
Function at 0x1400649a0
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push r14
sub rsp, 0x20
mov rbp, r8
mov r14, rdx
mov rsi, rcx
test r8, r8
jg 0x1400649d1
xor eax, eax
mov rbp, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x20
pop r14
ret
cmp qword [rcx + 0x68], 0
je case.default.0x1400649e8
mov rbp, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x20
pop r14
jmp qword [sym.imp.MSVCP140.dll_protected_virtual:_long_long___int64____cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::xsgetn_char____ptr64__long_long___int64_____ptr64]
mov rax, qword [rcx + 0x38]
mov qword [rsp + 0x30], rbx
mov rbx, rbp
mov rdx, qword [rax]
test rdx, rdx
je 0x140064a0b
mov rax, qword [rcx + 0x50]
mov ecx, dword [rax]
jmp 0x140064a0d
xor ecx, ecx
movsxd rax, ecx
test ecx, ecx
je 0x140064a49
mov qword [rsp + 0x38], rdi
cmp rax, rbp
mov rdi, rbp
mov rcx, r14
cmovb rdi, rax
mov r8, rdi
call sub.VCRUNTIME140.dll_memcpy
mov rax, qword [rsi + 0x50]
add r14, rdi
sub rbx, rdi
sub dword [rax], edi
mov rcx, qword [rsi + 0x38]
movsxd rax, edi
mov rdi, qword [rsp + 0x38]
add qword [rcx], rax
cmp qword [rsi + 0x80], 0
je 0x140064ade
mov r8, qword [rsi + 0x18]
lea rax, [rsi + 0x70]
cmp qword [r8], rax
jne 0x140064a84
mov rcx, qword [rsi + 0x88]
mov rdx, qword [rsi + 0x90]
mov qword [r8], rcx
sub edx, ecx
mov rax, qword [rsi + 0x38]
mov qword [rax], rcx
mov rax, qword [rsi + 0x50]
mov dword [rax], edx
cmp rbx, 0xfff
jbe 0x140064abe
nop dword [rax]
mov r9, qword [rsi + 0x80]
mov edx, 1
mov r8d, 0xfff
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
add r14, rax
sub rbx, rax
cmp rax, 0xfff
jne 0x140064ade
cmp rbx, rax
ja 0x140064a90
test rbx, rbx
je 0x140064ade
mov r9, qword [rsi + 0x80]
mov r8, rbx
mov edx, 1
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
sub rbx, rax
mov rsi, qword [rsp + 0x48]
sub rbp, rbx
mov rbx, qword [rsp + 0x30]
mov rax, rbp
mov rbp, qword [rsp + 0x40]
add rsp, 0x20
pop r14
ret
adc bh, ch
retf
Function at 0x140064f20
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x10], rbx
push rdi
sub rsp, 0x70
mov edi, edx
mov rbx, rcx
cmp edx, 0xffffffff
jne 0x140064f44
xor eax, eax
mov rbx, qword [rsp + 0x88]
add rsp, 0x70
pop rdi
ret
mov rax, qword [rcx + 0x40]
mov rcx, qword [rax]
test rcx, rcx
je 0x140064f87
mov rdx, qword [rbx + 0x58]
movsxd r8, dword [rdx]
lea rax, [rcx + r8]
cmp rcx, rax
jae 0x140064f87
lea eax, [r8 - 1]
mov dword [rdx], eax
mov rcx, qword [rbx + 0x40]
mov rdx, qword [rcx]
lea rax, [rdx + 1]
mov qword [rcx], rax
mov eax, edi
mov byte [rdx], dil
mov rbx, qword [rsp + 0x88]
add rsp, 0x70
pop rdi
ret
cmp qword [rbx + 0x80], 0
mov qword [rsp + 0x80], rsi
je 0x1400650b8
mov r8, qword [rbx + 0x18]
lea rax, [rbx + 0x70]
cmp qword [r8], rax
jne 0x140064fca
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
mov rcx, qword [rbx + 0x68]
test rcx, rcx
jne 0x140064ff5
mov rdx, qword [rbx + 0x80]
movsx ecx, dil
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fputc]
mov ecx, 0xffffffff
cmp eax, ecx
cmove edi, ecx
mov eax, edi
jmp 0x1400650bd
lea rax, [rsp + 0x90]
mov byte [rsp + 0x40], dil
mov qword [rsp + 0x38], rax
lea rdx, [rbx + 0x74]
lea rax, [rsp + 0x68]
mov qword [rsp + 0x30], rax
lea r9, [rsp + 0x41]
lea rax, [rsp + 0x48]
mov qword [rsp + 0x28], rax
lea r8, [rsp + 0x40]
lea rax, [rsp + 0x98]
mov qword [rsp + 0x20], rax
call qword [sym.imp.MSVCP140.dll_public:_int___cdecl_std::codecvt_char__char__struct__Mbstatet_::out_struct__Mbstatet____ptr64__char_const____ptr64__char_const____ptr64__char_const____ptr64____ptr64__char____ptr64__char____ptr64__char____ptr64____ptr64_const___ptr64]
test eax, eax
je 0x14006506a
sub eax, 1
je 0x14006506a
cmp eax, 2
jne 0x1400650b8
movsx ecx, byte [rsp + 0x40]
mov rdx, qword [rbx + 0x80]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fputc]
mov ecx, 0xffffffff
cmp eax, ecx
cmove edi, ecx
mov eax, edi
jmp 0x1400650bd
mov rsi, qword [rsp + 0x90]
lea rax, [rsp + 0x48]
sub rsi, rax
je 0x14006509b
mov r9, qword [rbx + 0x80]
lea rcx, [rsp + 0x48]
mov r8, rsi
mov edx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
cmp rsi, rax
jne 0x1400650b8
lea rax, [rsp + 0x40]
mov byte [rbx + 0x71], 1
cmp qword [rsp + 0x98], rax
mov ecx, 0xffffffff
cmovne ecx, edi
mov eax, ecx
jmp 0x1400650bd
mov eax, 0xffffffff
mov rsi, qword [rsp + 0x80]
mov rbx, qword [rsp + 0x88]
add rsp, 0x70
pop rdi
ret
Function at 0x1400658a0
Capabilities:
Write file on windows

Disassembly:
push rbx
sub rsp, 0x50
cmp qword [rcx + 0x68], 0
mov rbx, rcx
je 0x14006596b
cmp byte [rcx + 0x72], 0
je 0x14006596b
mov rax, qword [rcx]
mov qword [rsp + 0x68], rdi
mov edi, 0xffff
mov edx, edi
call qword [rax + Ordinal_26]
cmp di, ax
je 0x14006595e
mov rcx, qword [rbx + 0x68]
lea rax, [rsp + 0x60]
lea rdx, [rbx + 0x74]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x50]
lea r8, [rsp + 0x30]
call qword [sym.imp.MSVCP140.dll_public:_int___cdecl_std::codecvt_wchar_t__char__struct__Mbstatet_::unshift_struct__Mbstatet____ptr64__char____ptr64__char____ptr64__char____ptr64____ptr64_const___ptr64]
test eax, eax
je 0x14006591a
sub eax, 1
je 0x14006591e
cmp eax, 2
jne 0x14006595e
mov rdi, qword [rsp + 0x68]
mov al, 1
mov byte [rbx + 0x72], 0
add rsp, 0x50
pop rbx
ret
mov byte [rbx + 0x72], 0
mov rdi, qword [rsp + 0x60]
lea rax, [rsp + 0x30]
sub rdi, rax
je 0x14006594c
mov r9, qword [rbx + 0x80]
lea rcx, [rsp + 0x30]
mov r8, rdi
mov edx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
cmp rdi, rax
jne 0x14006595e
cmp byte [rbx + 0x72], 0
mov rdi, qword [rsp + 0x68]
sete al
add rsp, 0x50
pop rbx
ret
mov rdi, qword [rsp + 0x68]
xor al, al
add rsp, 0x50
pop rbx
ret
mov al, 1
add rsp, 0x50
pop rbx
ret

Function at 0x140065bd0
Capabilities:
Write file on windows

Disassembly:
push rbx
sub rsp, 0x50
cmp qword [rcx + 0x68], 0
mov rbx, rcx
je 0x140065c99
cmp byte [rcx + 0x71], 0
je 0x140065c99
mov rax, qword [rcx]
mov edx, 0xffffffff
mov qword [rsp + 0x68], rdi
call qword [rax + Ordinal_26]
cmp eax, 0xffffffff
je 0x140065c8c
mov rcx, qword [rbx + 0x68]
lea rax, [rsp + 0x60]
lea rdx, [rbx + 0x74]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x50]
lea r8, [rsp + 0x30]
call qword [sym.imp.MSVCP140.dll_public:_int___cdecl_std::codecvt_char__char__struct__Mbstatet_::unshift_struct__Mbstatet____ptr64__char____ptr64__char____ptr64__char____ptr64____ptr64_const___ptr64]
test eax, eax
je 0x140065c48
sub eax, 1
je 0x140065c4c
cmp eax, 2
jne 0x140065c8c
mov rdi, qword [rsp + 0x68]
mov al, 1
mov byte [rbx + 0x71], 0
add rsp, 0x50
pop rbx
ret
mov byte [rbx + 0x71], 0
mov rdi, qword [rsp + 0x60]
lea rax, [rsp + 0x30]
sub rdi, rax
je 0x140065c7a
mov r9, qword [rbx + 0x80]
lea rcx, [rsp + 0x30]
mov r8, rdi
mov edx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
cmp rdi, rax
jne 0x140065c8c
cmp byte [rbx + 0x71], 0
mov rdi, qword [rsp + 0x68]
sete al
add rsp, 0x50
pop rbx
ret
mov rdi, qword [rsp + 0x68]
xor al, al
add rsp, 0x50
pop rbx
ret
mov al, 1
add rsp, 0x50
pop rbx
ret
Function at 0x140066e10
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdx
push rdi
sub rsp, 0x30
mov rbx, rcx
mov ecx, 1
call fcn.1400cddb0
mov qword [rsp + 0x48], rax
lea rdi, [rbx + 8]
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], 0
mov r9, rax
lea r8, [0x140069170]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
mov qword [rbx], rax
test rax, rax
je 0x140066e6c
mov rax, rbx
mov rbx, qword [rsp + 0x40]
add rsp, 0x30
pop rdi
ret
mov dword [rdi], 0
mov ecx, 6
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3

Function at 0x140066e80
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdx
push rdi
sub rsp, 0x30
mov rbx, rcx
mov ecx, 1
call fcn.1400cddb0
mov qword [rsp + 0x48], rax
lea rdi, [rbx + 8]
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], 0
mov r9, rax
lea r8, [0x1400691a0]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
mov qword [rbx], rax
test rax, rax
je 0x140066edc
mov rax, rbx
mov rbx, qword [rsp + 0x40]
add rsp, 0x30
pop rdi
ret
mov dword [rdi], 0
mov ecx, 6
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3

Function at 0x140066ef0
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdx
push rdi
sub rsp, 0x30
mov rbx, rcx
mov ecx, 1
call fcn.1400cddb0
mov qword [rsp + 0x48], rax
lea rdi, [rbx + 8]
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], 0
mov r9, rax
lea r8, [0x140069210]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
mov qword [rbx], rax
test rax, rax
je 0x140066f4c
mov rax, rbx
mov rbx, qword [rsp + 0x40]
add rsp, 0x30
pop rdi
ret
mov dword [rdi], 0
mov ecx, 6
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3

Function at 0x140066f60
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdx
push rdi
sub rsp, 0x30
mov rbx, rcx
mov ecx, 1
call fcn.1400cddb0
mov qword [rsp + 0x48], rax
lea rdi, [rbx + 8]
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], 0
mov r9, rax
lea r8, [0x140069280]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
mov qword [rbx], rax
test rax, rax
je 0x140066fbc
mov rax, rbx
mov rbx, qword [rsp + 0x40]
add rsp, 0x30
pop rdi
ret
mov dword [rdi], 0
mov ecx, 6
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3