joyce8/EMBER2024-capa huggingface dataset:
Function at 0x2fc4c4e90
Capabilities:
Write file on windows

Disassembly:
push rbp
push rbx
sub rsp, 0x38
lea rbp, [rsp + 0x30]
mov qword [rbp + 0x20], rcx
mov qword [rbp + 0x28], rdx
mov qword [rbp + 0x30], r8
mov qword [rbp + 0x38], r9
lea rax, [rbp + 0x28]
mov qword [rbp - 8], rax
mov ecx, 2
call sub.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func
mov r9, rax
mov r8d, 0x1b
mov edx, 1
lea rax, str.Mingw_w64_runtime_failure:_n
mov rcx, rax
call sub.api_ms_win_crt_stdio_l1_1_0.dll_fwrite
mov rbx, qword [rbp - 8]
mov ecx, 2
call sub.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func
mov rcx, rax
mov rax, qword [rbp + 0x20]
mov r8, rbx
mov rdx, rax
call fcn.2fc4c5f50
call sub.api_ms_win_crt_runtime_l1_1_0.dll_abort
nop

Function at 0x2fc4c5892
Capabilities:
Get thread local storage value

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x30
mov eax, dword [0x2fc4ea108]
test eax, eax
je 0x2fc4c592a
lea rax, [0x2fc4ea0e0]
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
call rax
mov rax, qword [0x2fc4ea110]
mov qword [rbp - 8], rax
jmp 0x2fc4c590e
mov rax, qword [rbp - 8]
mov eax, dword [rax]
mov ecx, eax
mov rax, qword [sym.imp.KERNEL32.dll_TlsGetValue]
call rax
mov qword [rbp - 0x10], rax
mov rax, qword [sym.imp.KERNEL32.dll_GetLastError]
call rax
test eax, eax
jne 0x2fc4c5902
cmp qword [rbp - 0x10], 0
je 0x2fc4c5902
mov rax, qword [rbp - 8]
mov rdx, qword [rax + 8]
mov rax, qword [rbp - 0x10]
mov rcx, rax
call rdx
mov rax, qword [rbp - 8]
mov rax, qword [rax + 0x10]
mov qword [rbp - 8], rax
cmp qword [rbp - 8], 0
jne 0x2fc4c58c8
lea rax, [0x2fc4ea0e0]
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
call rax
jmp 0x2fc4c592b
nop
add rsp, 0x30
pop rbp
ret

Function at 0x2fc4c5a30
Capabilities:
Parse pe header

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x20
mov qword [rbp + 0x10], rcx
mov rax, qword [rbp + 0x10]
mov qword [rbp - 8], rax
mov rax, qword [rbp - 8]
movzx eax, word [rax]
cmp ax, 0x5a4d
je 0x2fc4c5a58
mov eax, 0
jmp 0x2fc4c5aa6
mov rax, qword [rbp - 8]
mov eax, dword [rax + 0x3c]
movsxd rdx, eax
mov rax, qword [rbp - 8]
add rax, rdx
mov qword [rbp - 0x10], rax
mov rax, qword [rbp - 0x10]
mov eax, dword [rax]
cmp eax, 0x4550
je 0x2fc4c5a81
mov eax, 0
jmp 0x2fc4c5aa6
mov rax, qword [rbp - 0x10]
add rax, 0x18
mov qword [rbp - 0x18], rax
mov rax, qword [rbp - 0x18]
movzx eax, word [rax]
cmp ax, 0x20b
je 0x2fc4c5aa1
mov eax, 0
jmp 0x2fc4c5aa6
mov eax, 1
add rsp, 0x20
pop rbp
ret
Function at 0x140001140
Capabilities:
Terminate process

Disassembly:
sub rsp, 0x68
mov ecx, 1
call fcn.140001b70
movzx eax, al
test eax, eax
jne 0x140001160
mov ecx, 7
call fcn.1400021c0
nop
mov byte [rsp + 0x20], 0
call fcn.1400019a0
mov byte [rsp + 0x21], al
cmp dword [0x1400065f0], 1
jne 0x140001184
mov ecx, 7
call fcn.1400021c0
nop
jmp 0x1400011dc
cmp dword [0x1400065f0], 0
jne 0x1400011d7
mov dword [0x1400065f0], 1
lea rdx, [0x1400041f8]
lea rcx, [0x1400041e0]
call sub.ucrtbased.dll__initterm_e
test eax, eax
je 0x1400011b8
mov eax, 0xff
jmp 0x1400012e1
lea rdx, [0x1400041d8]
lea rcx, [0x1400041c8]
call sub.ucrtbased.dll__initterm
mov dword [0x1400065f0], 2
jmp 0x1400011dc
mov byte [rsp + 0x20], 1
movzx ecx, byte [rsp + 0x21]
call fcn.140001d60
call fcn.140002190
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
cmp qword [rax], 0
je 0x140001239
mov rcx, qword [rsp + 0x30]
call fcn.140001cd0
movzx eax, al
test eax, eax
je 0x140001239
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 [0x1400041a0]
nop
call fcn.1400021a0
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x38]
cmp qword [rax], 0
je 0x14000126d
mov rcx, qword [rsp + 0x38]
call fcn.140001cd0
movzx eax, al
test eax, eax
je 0x14000126d
mov rax, qword [rsp + 0x38]
mov rcx, qword [rax]
call sub.ucrtbased.dll__register_thread_local_exe_atexit_callback
nop
call fcn.140001320
mov dword [rsp + 0x28], eax
call fcn.1400023e0
movzx eax, al
test eax, eax
jne 0x14000128c
mov ecx, dword [rsp + 0x28]
call sub.ucrtbased.dll_exit
nop
movzx eax, byte [rsp + 0x20]
test eax, eax
jne 0x14000129b
call sub.ucrtbased.dll__cexit
nop
xor edx, edx
mov cl, 1
call fcn.140001d90
mov eax, dword [rsp + 0x28]
jmp 0x1400012e1
add rsp, 0x68
ret
Function at 0x14000df40
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
sub rsp, 0x70
cmp qword [rcx + 0xdf8], 0
mov rbx, rcx
movaps xmmword [rsp + 0x60], xmm6
movaps xmm6, xmm1
movaps xmmword [rsp + 0x50], xmm7
movaps xmm7, xmm2
jne 0x14000df81
mov r8d, 0x5bd
lea rdx, str.C:Users_segamfleDownloads_foof_foofStreckFortniteImguiimgui.cpp
lea rcx, str.Ctx___0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
cmp byte [rbx + 0x37b1], 0
mov rbp, qword [rbx + 0xdf8]
je 0x14000e150
movss xmm1, dword [0x140163010]
xorps xmm2, xmm2
comiss xmm7, xmm1
mov qword [rsp + 0x80], rsi
mov qword [rsp + 0x90], r14
jbe 0x14000dfd5
comiss xmm7, xmm2
cvttss2si eax, xmm7
jae 0x14000dfce
movd xmm0, eax
cvtdq2ps xmm0, xmm0
ucomiss xmm0, xmm7
jp 0x14000dfcc
je 0x14000dfce
dec eax
movd xmm7, eax
cvtdq2ps xmm7, xmm7
comiss xmm6, xmm1
jbe 0x14000dffa
comiss xmm6, xmm2
cvttss2si eax, xmm6
jae 0x14000dff3
movd xmm0, eax
cvtdq2ps xmm0, xmm0
ucomiss xmm0, xmm6
jp 0x14000dff1
je 0x14000dff3
dec eax
movd xmm6, eax
cvtdq2ps xmm6, xmm6
lea r14, [rbp + 0x3e70]
mov qword [rsp + 0x88], rdi
mov ebx, dword [r14]
sub ebx, 1
movsxd rsi, ebx
js 0x14000e051
imul rdi, rsi, 0x1c
cmp ebx, dword [r14]
jl 0x14000e037
mov r8d, 0x715
lea rdx, str.C:Users_segamfleDownloads_foof_foofStreckFortniteImguiimgui.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 [r14 + 8]
cmp dword [rdi + rax], 1
je 0x14000e0e7
dec ebx
sub rdi, 0x1c
sub rsi, 1
jns 0x14000e018
movsd xmm0, qword [rbp + 0xe08]
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 0x14000e08f
jne 0x14000e08f
ucomiss xmm1, xmm7
jp 0x14000e08f
je 0x14000e148
mov eax, dword [rbp + 0x3e94]
mov dword [rsp + 0x38], eax
inc eax
mov dword [rbp + 0x3e94], eax
mov ecx, dword [r14]
mov r8d, dword [r14 + 4]
mov eax, dword [rbp + 0x3e90]
movss dword [rsp + 0x3c], xmm6
movss dword [rsp + 0x40], xmm7
mov dword [rsp + 0x30], 1
mov dword [rsp + 0x34], 1
mov dword [rsp + 0x44], eax
cmp ecx, r8d
jne 0x14000e11d
inc ecx
test r8d, r8d
je 0x14000e109
mov eax, r8d
cdq
sub eax, edx
sar eax, 1
add eax, r8d
jmp 0x14000e10e
movss xmm0, dword [rdi + rax + 0xc]
movss xmm1, dword [rdi + rax + 0x10]
lea rax, [rsp + 0x20]
movss dword [rsp + 0x20], xmm0
movss dword [rsp + 0x24], xmm1
jmp 0x14000e064
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
mov edx, ecx
mov rcx, r14
call fcn.14002b260
movsxd rax, dword [r14]
movups xmm0, xmmword [rsp + 0x30]
movsd xmm1, qword [rsp + 0x40]
imul rcx, rax, 0x1c
mov rax, qword [r14 + 8]
movups xmmword [rcx + rax], xmm0
movsd qword [rcx + rax + 0x10], xmm1
mov dword [rcx + rax + 0x18], 0
inc dword [r14]
mov r14, qword [rsp + 0x90]
mov rbx, qword [rsp + 0x98]
movaps xmm6, xmmword [rsp + 0x60]
movaps xmm7, xmmword [rsp + 0x50]
add rsp, 0x70
pop rbp
ret
Function at 0x14000e5e0
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 0x14000e63d
lea rbx, [0x14014a690]
movzx r8d, byte [r9]
lea r9, [r9 + 1]
dec r10
cmp r8b, 0x23
jne 0x14000e624
cmp r10, 2
jb 0x14000e624
cmp byte [r9], r8b
jne 0x14000e624
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 0x14000e600
not eax
mov rbx, qword [rsp + 8]
ret
movzx r8d, byte [rcx]
inc r9
test r8b, r8b
je 0x14000e67f
lea rbx, [0x14014a690]
cmp r8b, 0x23
jne 0x14000e663
cmp byte [r9], r8b
jne 0x14000e663
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 0x14000e650
mov rbx, qword [rsp + 8]
not eax
ret
Function at 0x140011860
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 0x14001189c
mov r8d, 0x71e
lea rdx, str.C:Users_segamfleDownloads_foof_foofStreckFortniteImguiimgui.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, [0x14014a690]
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 0x140011917
mov r8, rdi
mov edx, 4
mov ecx, ebx
call fcn.14002a120
mov rsi, qword [rsp + 0x40]
mov eax, ebx
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
Function at 0x140011930
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 0x140011963
mov r8d, 0x71e
lea rdx, str.C:Users_segamfleDownloads_foof_foofStreckFortniteImguiimgui.h
lea rcx, str.Size___0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
movss xmm2, dword [rbx + 0x110]
lea r9, [0x14014a690]
movss xmm0, dword [rdi]
movsxd rcx, dword [rbx + 0xf0]
subss xmm0, xmm2
mov rax, qword [rbx + 0xf8]
movss xmm3, dword [rbx + 0x114]
movss xmm1, dword [rdi + 4]
subss xmm1, xmm3
mov r8d, dword [rax + rcx*4 - 4]
not r8d
movss dword [rsp + 0x20], xmm0
movzx eax, byte [rsp + 0x20]
movss xmm0, dword [rdi + 8]
movzx ecx, r8b
subss xmm0, xmm2
xor rcx, rax
shr r8d, 8
movzx eax, byte [rsp + 0x21]
movss dword [rsp + 0x24], xmm1
movss xmm1, dword [rdi + 0xc]
xor r8d, dword [r9 + rcx*4]
subss xmm1, xmm3
movzx ecx, r8b
xor rcx, rax
shr r8d, 8
movzx eax, byte [rsp + 0x22]
movss dword [rsp + 0x28], xmm0
movss dword [rsp + 0x2c], xmm1
xor r8d, dword [r9 + rcx*4]
movzx ecx, r8b
xor rcx, rax
shr r8d, 8
movzx eax, byte [rsp + 0x23]
xor r8d, dword [r9 + rcx*4]
movzx ecx, r8b
xor rcx, rax
shr r8d, 8
movzx eax, byte [rsp + 0x24]
xor r8d, dword [r9 + rcx*4]
movzx ecx, r8b
xor rcx, rax
shr r8d, 8
movzx eax, byte [rsp + 0x25]
xor r8d, dword [r9 + rcx*4]
movzx ecx, r8b
xor rcx, rax
shr r8d, 8
movzx eax, byte [rsp + 0x26]
xor r8d, dword [r9 + rcx*4]
movzx ecx, r8b
xor rcx, rax
shr r8d, 8
movzx eax, byte [rsp + 0x27]
xor r8d, dword [r9 + rcx*4]
movzx ecx, r8b
xor rcx, rax
shr r8d, 8
movzx eax, byte [rsp + 0x28]
xor r8d, dword [r9 + rcx*4]
movzx ecx, r8b
xor rcx, rax
shr r8d, 8
movzx eax, byte [rsp + 0x29]
xor r8d, dword [r9 + rcx*4]
movzx ecx, r8b
xor rcx, rax
shr r8d, 8
movzx eax, byte [rsp + 0x2a]
xor r8d, dword [r9 + rcx*4]
movzx ecx, r8b
xor rcx, rax
shr r8d, 8
movzx eax, byte [rsp + 0x2b]
xor r8d, dword [r9 + rcx*4]
movzx ecx, r8b
xor rcx, rax
shr r8d, 8
movzx eax, byte [rsp + 0x2c]
xor r8d, dword [r9 + rcx*4]
movzx ecx, r8b
mov rbx, qword [rsp + 0x40]
xor rcx, rax
movzx eax, byte [rsp + 0x2d]
shr r8d, 8
xor r8d, dword [r9 + rcx*4]
movzx ecx, r8b
xor rcx, rax
shr r8d, 8
movzx eax, byte [rsp + 0x2e]
xor r8d, dword [r9 + rcx*4]
movzx ecx, r8b
xor rcx, rax
shr r8d, 8
xor r8d, dword [r9 + rcx*4]
movzx ecx, byte [rsp + 0x2f]
movzx edx, r8b
shr r8d, 8
xor rdx, rcx
xor r8d, dword [r9 + rdx*4]
not r8d
mov eax, r8d
add rsp, 0x30
pop rdi
ret
Function at 0x1400225d0
Capabilities:
Hash data with crc32

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x30
mov rbx, qword [0x14021b1e0]
mov edi, ecx
cmp byte [rbx + 0x4a7d], 0
jne 0x140022622
cmp byte [rbx + 0x4a7e], 0
jne 0x140022622
movsx r9d, word [rbx + 0x5ba2]
lea r8, str.Tooltip__02d
mov edx, reloc.WS2_32.dll_recv
lea rcx, [rsp + 0x20]
call fcn.14000e440
test dil, 1
je 0x14002274f
jmp 0x1400226ab
movss xmm1, dword [rbx + 0x389c]
lea r8, str.Tooltip__02d
movaps xmm0, xmm1
lea rcx, [rsp + 0x20]
mulss xmm0, dword [0x140162e94]
xor eax, eax
mulss xmm1, dword [0x140162e70]
addss xmm0, dword [rbx + 0xe08]
lea edx, [rax + 0x10]
addss xmm1, dword [rbx + 0xe0c]
mov qword [rbx + 0x47e8], rax
mov dword [rbx + 0x47d4], 1
movss dword [rbx + 0x47e0], xmm0
movss dword [rbx + 0x47e4], xmm1
movss xmm0, dword [rbx + 0x3904]
mulss xmm0, dword [0x140162d40]
or dword [rbx + 0x47d0], 0x41
movss dword [rbx + 0x4830], xmm0
movsx r9d, word [rbx + 0x5ba2]
call fcn.14000e440
movzx r9d, byte [rsp + 0x20]
lea r8, [rsp + 0x21]
mov r10d, 0xffffffff
mov ecx, r10d
test r9b, r9b
je 0x140022700
lea r11, [0x14014a690]
nop dword [rax + rax]
cmp r9b, 0x23
jne 0x1400226e3
cmp byte [r8], r9b
jne 0x1400226e3
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 0x1400226d0
not ecx
call fcn.140016950
test rax, rax
je 0x14002274f
cmp byte [rax + 0xb6], 0
je 0x14002274f
mov byte [rax + 0xbb], 1
lea r8, str.Tooltip__02d
mov byte [rax + 0xbd], 1
lea rcx, [rsp + 0x20]
mov byte [rax + 0xd8], 1
mov edx, reloc.WS2_32.dll_recv
inc word [rbx + 0x5ba2]
movsx r9d, word [rbx + 0x5ba2]
call fcn.14000e440
xor edx, edx
lea rcx, [rsp + 0x20]
mov r8d, 0x20c0347
call fcn.1400194e0
mov rbx, qword [rsp + 0x40]
mov al, 1
add rsp, 0x30
pop rdi
ret
Function at 0x140023160
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push rbx
sub rsp, 0x20
mov rcx, qword [0x14021b1e0]
cmp byte [rcx + 0x3767], 0
mov rbx, qword [rcx + 0x3ef8]
je 0x1400232e0
mov edx, 0x282
call fcn.14000d670
cmp byte [rax + 8], 0
jne 0x1400232e0
mov rcx, qword [0x14021b1e0]
cmp byte [rcx + 0x4917], 0
mov r8, qword [rcx + 0x3ef8]
je 0x1400231e1
cmp byte [rcx + 0x4916], 0
jne 0x1400231e1
test byte [rcx + 0x4798], 4
jne 0x1400232e0
mov eax, dword [rcx + 0x48e0]
cmp eax, dword [rcx + 0x4794]
jne 0x1400232e0
test eax, eax
je 0x1400232e0
jmp 0x1400232a0
mov eax, dword [rcx + 0x479c]
test al, 1
je 0x1400232e0
cmp qword [rcx + 0x3f00], r8
je 0x140023200
test al, al
jns 0x1400232e0
mov eax, dword [rcx + 0x3f58]
test eax, eax
je 0x140023225
cmp eax, dword [rcx + 0x4794]
je 0x140023225
cmp byte [rcx + 0x3f65], 0
jne 0x140023225
cmp eax, dword [r8 + 0x7c]
jne 0x1400232e0
mov rdx, qword [rcx + 0x48d8]
test rdx, rdx
je 0x140023281
mov rdx, qword [rdx + 0x378]
test rdx, rdx
je 0x140023281
cmp byte [rdx + 0xb7], 0
je 0x140023281
mov rax, qword [r8 + 0x378]
cmp rdx, rax
je 0x140023281
test dword [rdx + 0x14], 0x8000000
je 0x140023281
cmp qword [rax + 0x378], rdx
je 0x140023281
cmp rax, rdx
je 0x140023281
mov rax, qword [rax + 0x370]
test rax, rax
jne 0x140023264
test dword [rcx + 0x4798], 0x100
je 0x1400232e0
test byte [rcx + 0x4798], 4
jne 0x1400232e0
mov eax, dword [r8 + 0x7c]
cmp dword [rcx + 0x4794], eax
jne 0x1400232a0
cmp byte [r8 + 0xb8], 0
jne 0x1400232e0
lea rdx, str.context
mov rcx, rbx
call fcn.1400117d0
mov ebx, eax
test eax, eax
jne 0x1400232cf
mov r8d, 0x2982
lea rdx, str.C:Users_segamfleDownloads_foof_foofStreckFortniteImguiimgui.cpp
lea rcx, str.id___0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov edx, 1
mov ecx, ebx
add rsp, 0x20
pop rbx
jmp fcn.140022960
add rsp, 0x20
pop rbx
ret
Function at 0x140028d10
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
sub rsp, 0x20
cmp qword [rcx + 0x5c88], 0
lea rbx, [rcx + 0x5c90]
mov rsi, r8
mov rbp, rdx
mov rdi, rcx
je 0x140028db7
mov r9d, dword [rbx + 4]
mov qword [rsp + 0x30], r14
xor r14d, r14d
test r9d, r9d
jns 0x140028d6a
mov eax, r9d
mov rcx, rbx
cdq
sub eax, edx
mov edx, r14d
sar eax, 1
add eax, r9d
test eax, eax
cmovg edx, eax
call fcn.14002af70
mov r8, rsi
mov dword [rbx], r14d
mov rdx, rbp
mov rcx, rbx
call fcn.14000ed30
mov eax, dword [rbx]
mov edx, 1
mov r9, qword [rdi + 0x5c88]
test eax, eax
lea ecx, [rax - 1]
mov rax, qword [rdi + 0x5c98]
cmove ecx, r14d
test rax, rax
movsxd r8, ecx
lea rcx, [0x14021b1f0]
cmovne rcx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
mov r14, qword [rsp + 0x30]
jmp 0x140028dbf
mov rcx, rbx
call fcn.14000ed30
mov rbx, qword [rsp + 0x38]
mov rbp, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret

Function at 0x140029170
Capabilities:
Hash data with crc32

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rdi
push r14
sub rsp, 0x20
movzx r8d, byte [rcx]
lea rdx, [rcx + 1]
mov r14, qword [0x14021b1e0]
mov r9d, 0xffffffff
mov ebx, r9d
test r8b, r8b
je 0x1400291d4
lea r10, [0x14014a690]
cmp r8b, 0x23
jne 0x1400291b7
cmp byte [rdx], r8b
jne 0x1400291b7
cmp byte [rdx + 1], r8b
cmove ebx, r9d
movzx ecx, bl
movzx eax, r8b
movzx r8d, byte [rdx]
xor rcx, rax
shr ebx, 8
inc rdx
xor ebx, dword [r10 + rcx*4]
test r8b, r8b
jne 0x1400291a4
mov eax, dword [r14 + 0x5c00]
xor edi, edi
mov qword [rsp + 0x30], rbp
not ebx
mov qword [rsp + 0x38], rsi
test eax, eax
jle 0x140029235
mov esi, edi
mov ebp, edi
test rsi, rsi
js 0x1400291fa
cmp edi, eax
jl 0x140029214
mov r8d, 0x715
lea rdx, str.C:Users_segamfleDownloads_foof_foofStreckFortniteImguiimgui.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 [r14 + 0x5c08]
cmp dword [rax + rbp + 8], ebx
je 0x140029252
mov eax, dword [r14 + 0x5c00]
inc edi
inc rsi
add rbp, 0x48
cmp edi, eax
jl 0x1400291f1
xor eax, eax
mov rsi, qword [rsp + 0x38]
mov rbp, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
add rsp, 0x20
pop r14
ret
test edi, edi
js 0x14002925f
cmp edi, dword [r14 + 0x5c00]
jl 0x140029279
mov r8d, 0x715
lea rdx, str.C:Users_segamfleDownloads_foof_foofStreckFortniteImguiimgui.h
lea rcx, str.i___0__i___Size
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
movsxd rax, edi
lea rcx, [rax + rax*8]
mov rax, qword [r14 + 0x5c08]
lea rax, [rax + rcx*8]
jmp 0x140029237
Function at 0x14005e8d0
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 8], rcx
sub rsp, 0x78
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
movdqa xmm1, xmmword [0x140163150]
movdqu xmmword [rsp + 0x40], xmm1
movsd xmm0, qword [str.km.click_0__r_n]
movsd qword [rsp + 0x30], xmm0
mov eax, dword [0x14015b850]
mov dword [rsp + 0x38], eax
movzx eax, byte [0x14015b854]
mov byte [rsp + 0x3c], al
mov byte [rsp + 0x3d], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x60], xmm1
lea rax, [rsp + 0x30]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x14005e934
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x50]
call fcn.14005cab0
nop
lea rdx, [rsp + 0x50]
cmp qword [rsp + 0x68], 0xf
cmova rdx, qword [rsp + 0x50]
mov qword [rsp + 0x20], 0
lea r9, [rsp + 0x80]
mov r8d, dword [rsp + 0x60]
mov rcx, qword [0x14021c998]
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x14005e9aa
lea rdx, str.Failed_to_write_to_serial_port_
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.14005ea50
lea rdx, [0x14005ec20]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
nop
mov rdx, qword [rsp + 0x68]
cmp rdx, 0xf
jbe 0x14005e9eb
inc rdx
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005e9e5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14005e9e5
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14011ff98
nop
mov rdx, qword [rsp + 0x48]
cmp rdx, 0xf
jbe 0x14005ea2f
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005ea26
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14005ea26
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
add rsp, 0x78
jmp fcn.14011ff98
add rsp, 0x78
ret
Function at 0x14005f4b0
Capabilities:
Receive data
Receive data on socket
Send data
Send data on socket

Disassembly:
mov dword [rsp + 0x10], edx
push rbx
sub rsp, 0x40
xor r9d, r9d
mov dword [rsp + 0x28], reloc.WS2_32.dll_recv
mov rbx, rcx
mov qword [rsp + 0x20], rcx
lea rdx, [rcx + 0x428]
mov rcx, qword [rcx + 0x10]
lea r8d, [r9 + 0x48]
call qword [sym.imp.WS2_32.dll_sendto]
mov rcx, qword [rbx + 0x10]
lea rax, [rsp + 0x58]
mov qword [rsp + 0x28], rax
lea rdx, [rbx + 0x18]
lea rax, [rsp + 0x30]
mov dword [rsp + 0x58], reloc.WS2_32.dll_recv
xor r9d, r9d
mov qword [rsp + 0x20], rax
mov r8d, 0x400
call qword [sym.imp.WS2_32.dll_recvfrom]
test eax, eax
jns 0x14005f523
mov eax, 0xffffdcdb
add rsp, 0x40
pop rbx
ret
mov eax, dword [rbx + 0x434]
cmp dword [rbx + 0x24], eax
je 0x14005f539
mov eax, 0xffffdcdc
add rsp, 0x40
pop rbx
ret
mov ecx, dword [rbx + 0x430]
xor eax, eax
cmp dword [rbx + 0x20], ecx
mov edx, 0xffffdcdd
cmovne eax, edx
add rsp, 0x40
pop rbx
ret

Function at 0x14005f560
Capabilities:
Receive data
Receive data on socket
Send data
Send data on socket

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
cmp qword [0x14021c0f0], 0
mov edi, r8d
mov esi, edx
mov rbx, rcx
ja 0x14005f596
mov eax, 0xffffdcd8
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
inc dword [0x14021c510]
mov dword [0x14021c514], 0xaede7345
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov dword [0x14021c50c], eax
lea rcx, [0x14021c0e0]
mov dword [rbx + 4], esi
xor eax, eax
mov dword [rbx + 8], edi
movups xmm0, xmmword [rbx]
movups xmmword [0x14021c518], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [0x14021c528], xmm1
movups xmm0, xmmword [rbx + 0x20]
movups xmmword [0x14021c538], xmm0
movsd xmm1, qword [rbx + 0x30]
movsd qword [0x14021c548], xmm1
mov qword [rbx + 4], rax
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
jmp fcn.14005f4b0

Function at 0x14005f610
Capabilities:
Receive data
Receive data on socket
Send data
Send data on socket

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
cmp qword [0x14021c0f0], 0
movzx edi, dl
mov rbx, rcx
ja 0x14005f63a
mov eax, 0xffffdcd8
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
inc dword [0x14021c510]
mov dword [0x14021c514], 0x9823ae8d
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov dword [0x14021c50c], eax
mov ecx, dword [rbx]
mov eax, ecx
or ecx, 1
and eax, 0xfffffffe
test dil, dil
cmove ecx, eax
mov dword [rbx], ecx
lea rcx, [0x14021c0e0]
movups xmm0, xmmword [rbx]
movups xmmword [0x14021c518], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [0x14021c528], xmm1
movups xmm0, xmmword [rbx + 0x20]
movups xmmword [0x14021c538], xmm0
movsd xmm1, qword [rbx + 0x30]
movsd qword [0x14021c548], xmm1
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
jmp fcn.14005f4b0