Function at 0x1400095f0
Capabilities:
Write file on windows

Disassembly:
push rbx
push rdi
push r15
sub rsp, 0x20
mov rax, qword [rcx + 0xa8]
mov rbx, rcx
test rax, rax
je 0x140009640
cmp byte [rcx + 1], 0
je 0x140009640
mov byte [rax], 0
mov rdi, qword [rcx + 0xa8]
test rdi, rdi
je 0x140009640
mov rcx, rdi
call fcn.14002f660
mov rax, qword [0x1400b6cb0]
test rax, rax
je 0x140009637
dec dword [rax + 0x3b0]
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
xor r15d, r15d
mov qword [rbx + 0xa8], r15
cmp byte [rbx], r15b
je 0x140009d98
mov qword [rsp + 0x48], rbp
mov qword [rsp + 0x50], rsi
cmp byte [rbx + 0x2fb8], r15b
je 0x1400096cd
mov rdi, qword [rbx + 0x20]
test rdi, rdi
je 0x1400096cd
mov rsi, qword [0x1400b6cb0]
lea rcx, [rsp + 0x40]
mov qword [0x1400b6cb0], rbx
mov dword [rbx + 0x2fbc], r15d
mov qword [rsp + 0x40], r15
call fcn.140018a90
lea rdx, [0x1400a9bd4]
mov rcx, rdi
mov rbp, rax
call fcn.140004450
mov rdi, rax
test rax, rax
je 0x1400096d4
mov r8, qword [rsp + 0x40]
lea edx, [r15 + 1]
mov r9, rax
mov rcx, rbp
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
jmp 0x1400096d4
mov rsi, qword [0x1400b6cb0]
mov qword [0x1400b6cb0], rbx
call fcn.14001add0
mov qword [0x1400b6cb0], rsi
mov esi, r15d
cmp dword [rbx + 0x2f80], r15d
jle 0x140009742
mov rbp, r15
nop word [rax + rax]
mov rax, qword [rbx + 0x2f88]
mov rdi, qword [rax + rbp + 8]
test rdi, rdi
je 0x140009734
mov rcx, rdi
call fcn.14001c440
mov rax, qword [0x1400b6cb0]
test rax, rax
je 0x14000972b
dec dword [rax + 0x3b0]
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
inc esi
add rbp, 0x10
cmp esi, dword [rbx + 0x2f80]
jl 0x140009700
mov edi, r15d
cmp dword [rbx + 0x2ff0], r15d
jle 0x140009780
mov rsi, r15
mov r8, qword [rbx + 0x2ff8]
cmp dword [r8 + rsi], 6
jne 0x140009772
movsxd rax, edi
lea rcx, [rax + rax*2]
lea rdx, [r8 + rcx*8]
mov rcx, rbx
call qword [r8 + rsi + 8]
inc edi
add rsi, 0x18
cmp edi, dword [rbx + 0x2ff0]
jl 0x140009751
mov ebp, r15d
cmp dword [rbx + 0x1b38], r15d
jle 0x1400098b6
mov qword [rsp + 0x58], r14
mov r14, r15
nop dword [rax + rax]
mov rax, qword [rbx + 0x1b40]
mov rdi, qword [r14 + rax]
test rdi, rdi
je 0x14000989f
mov rcx, qword [rdi]
test rcx, rcx
je 0x1400097d4
mov rax, qword [0x1400b6cb0]
test rax, rax
je 0x1400097ce
dec dword [rax + 0x3b0]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov esi, r15d
cmp dword [rdi + 0x2f8], r15d
je 0x140009800
movsxd rax, esi
imul rcx, rax, 0x88
add rcx, qword [rdi + 0x300]
call fcn.140006760
inc esi
cmp esi, dword [rdi + 0x2f8]
jne 0x1400097e0
lea rcx, [rdi + 0x320]
call fcn.140002930
mov rcx, qword [rdi + 0x300]
test rcx, rcx
je 0x140009830
mov rax, qword [0x1400b6cb0]
test rax, rax
je 0x14000982a
dec dword [rax + 0x3b0]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, qword [rdi + 0x2f0]
test rcx, rcx
je 0x140009854
mov rax, qword [0x1400b6cb0]
test rax, rax
je 0x14000984e
dec dword [rax + 0x3b0]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
lea rcx, [rdi + 0x118]
call fcn.140006690
mov rcx, qword [rdi + 0x110]
test rcx, rcx
je 0x140009884
mov rax, qword [0x1400b6cb0]
test rax, rax
je 0x14000987e
dec dword [rax + 0x3b0]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rax, qword [0x1400b6cb0]
test rax, rax
je 0x140009896
dec dword [rax + 0x3b0]
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
inc ebp
add r14, 8
cmp ebp, dword [rbx + 0x1b38]
jl 0x1400097a0
mov r14, qword [rsp + 0x58]
mov rcx, qword [rbx + 0x1b40]
mov rbp, qword [rsp + 0x48]
test rcx, rcx
je 0x1400098ed
mov rax, qword [0x1400b6cb0]
mov qword [rbx + 0x1b38], r15
test rax, rax
je 0x1400098e0
dec dword [rax + 0x3b0]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rbx + 0x1b40], r15
mov rcx, qword [rbx + 0x1b50]
test rcx, rcx
je 0x14000991f
mov rax, qword [0x1400b6cb0]
mov qword [rbx + 0x1b48], r15
test rax, rax
je 0x140009912
dec dword [rax + 0x3b0]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rbx + 0x1b50], r15
mov rcx, qword [rbx + 0x1b60]
test rcx, rcx
je 0x140009951
mov rax, qword [0x1400b6cb0]
mov qword [rbx + 0x1b58], r15
test rax, rax
je 0x140009944
dec dword [rax + 0x3b0]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rbx + 0x1b60], r15
mov qword [rbx + 0x1b90], r15
mov rcx, qword [rbx + 0x1b70]
test rcx, rcx
je 0x14000998a
mov rax, qword [0x1400b6cb0]
mov qword [rbx + 0x1b68], r15
test rax, rax
je 0x14000997d
dec dword [rax + 0x3b0]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rbx + 0x1b70], r15
mov rcx, qword [rbx + 0x1b80]
test rcx, rcx
je 0x1400099bc
mov rax, qword [0x1400b6cb0]
mov qword [rbx + 0x1b78], r15
test rax, rax
je 0x1400099af
dec dword [rax + 0x3b0]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rbx + 0x1b80], r15
mov qword [rbx + 0x1d70], r15
mov qword [rbx + 0x1ba8], r15
mov qword [rbx + 0x1ba0], r15
mov qword [rbx + 0x1b98], r15
mov qword [rbx + 0x1c30], r15
mov qword [rbx + 0x1c18], r15
mov qword [rbx + 0x1bb8], r15
mov rcx, qword [rbx + 0x1cf0]
test rcx, rcx
je 0x140009a1f
mov rax, qword [0x1400b6cb0]
mov qword [rbx + 0x1ce8], r15
test rax, rax
je 0x140009a12
dec dword [rax + 0x3b0]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rbx + 0x1cf0], r15
mov rcx, qword [rbx + 0x1d00]
test rcx, rcx
je 0x140009a51
mov rax, qword [0x1400b6cb0]
mov qword [rbx + 0x1cf8], r15
test rax, rax
je 0x140009a44
dec dword [rax + 0x3b0]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rbx + 0x1d00], r15
mov rcx, qword [rbx + 0x1d10]
test rcx, rcx
je 0x140009a83
mov rax, qword [0x1400b6cb0]
mov qword [rbx + 0x1d08], r15
test rax, rax
je 0x140009a76
dec dword [rax + 0x3b0]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rbx + 0x1d10], r15
mov rcx, qword [rbx + 0x1d20]
test rcx, rcx
je 0x140009ab5
mov rax, qword [0x1400b6cb0]
mov qword [rbx + 0x1d18], r15
test rax, rax
je 0x140009aa8
dec dword [rax + 0x3b0]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rbx + 0x1d20], r15
mov rcx, qword [rbx + 0x1d30]
test rcx, rcx
je 0x140009ae7
mov rax, qword [0x1400b6cb0]
mov qword [rbx + 0x1d28], r15
test rax, rax
je 0x140009ada
dec dword [rax + 0x3b0]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rbx + 0x1d30], r15
mov esi, r15d
mov qword [rbx + 0x1d60], r15
mov qword [rbx + 0x1d58], r15
mov qword [rbx + 0x1d50], r15
cmp dword [rbx + 0x1d38], r15d
jle 0x140009b2e
mov rdi, r15
nop dword [rax + rax]
mov rcx, qword [rbx + 0x1d40]
mov rcx, qword [rdi + rcx]
call fcn.1400241e0
inc esi
lea rdi, [rdi + 8]
cmp esi, dword [rbx + 0x1d38]
jl 0x140009b10
mov rcx, qword [rbx + 0x1d40]
mov rsi, qword [rsp + 0x50]
test rcx, rcx
je 0x140009b65
mov rax, qword [0x1400b6cb0]
mov qword [rbx + 0x1d38], r15
test rax, rax
je 0x140009b58
dec dword [rax + 0x3b0]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rbx + 0x1d40], r15
lea rcx, [rbx + 0x1fa0]
call fcn.140023670
mov rcx, qword [rbx + 0x1fd0]
test rcx, rcx
je 0x140009ba3
mov rax, qword [0x1400b6cb0]
mov qword [rbx + 0x1fc8], r15
test rax, rax
je 0x140009b96
dec dword [rax + 0x3b0]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rbx + 0x1fd0], r15
mov rcx, qword [rbx + 0x1fe0]
test rcx, rcx
je 0x140009bd5
mov rax, qword [0x1400b6cb0]
mov qword [rbx + 0x1fd8], r15
test rax, rax
je 0x140009bc8
dec dword [rax + 0x3b0]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rbx + 0x1fe0], r15
mov rcx, qword [rbx + 0x2f48]
test rcx, rcx
je 0x140009c07
mov rax, qword [0x1400b6cb0]
mov qword [rbx + 0x2f40], r15
test rax, rax
je 0x140009bfa
dec dword [rax + 0x3b0]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rbx + 0x2f48], r15
mov rcx, qword [rbx + 0x2f58]
test rcx, rcx
je 0x140009c39
mov rax, qword [0x1400b6cb0]
mov qword [rbx + 0x2f50], r15
test rax, rax
je 0x140009c2c
dec dword [rax + 0x3b0]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rbx + 0x2f58], r15
mov rcx, qword [rbx + 0x2008]
test rcx, rcx
je 0x140009c6b
mov rax, qword [0x1400b6cb0]
mov qword [rbx + 0x2000], r15
test rax, rax
je 0x140009c5e
dec dword [rax + 0x3b0]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rbx + 0x2008], r15
mov rcx, qword [rbx + 0x2018]
test rcx, rcx
je 0x140009c9d
mov rax, qword [0x1400b6cb0]
mov qword [rbx + 0x2010], r15
test rax, rax
je 0x140009c90
dec dword [rax + 0x3b0]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rbx + 0x2018], r15
mov rcx, qword [rbx + 0x2028]
test rcx, rcx
je 0x140009ccf
mov rax, qword [0x1400b6cb0]
mov qword [rbx + 0x2020], r15
test rax, rax
je 0x140009cc2
dec dword [rax + 0x3b0]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rbx + 0x2028], r15
mov rcx, qword [rbx + 0x2fe8]
test rcx, rcx
je 0x140009d01
mov rax, qword [0x1400b6cb0]
mov qword [rbx + 0x2fe0], r15
test rax, rax
je 0x140009cf4
dec dword [rax + 0x3b0]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rbx + 0x2fe8], r15
mov rcx, qword [rbx + 0x2fd8]
test rcx, rcx
je 0x140009d33
mov rax, qword [0x1400b6cb0]
mov qword [rbx + 0x2fd0], r15
test rax, rax
je 0x140009d26
dec dword [rax + 0x3b0]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rbx + 0x2fd8], r15
cmp qword [rbx + 0x3008], r15
je 0x140009d63
mov rdi, qword [rbx + 0x3008]
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
cmp rdi, rax
je 0x140009d5c
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov qword [rbx + 0x3008], r15
mov rcx, qword [rbx + 0x3018]
test rcx, rcx
je 0x140009d95
mov rax, qword [0x1400b6cb0]
mov qword [rbx + 0x3010], r15
test rax, rax
je 0x140009d88
dec dword [rax + 0x3b0]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rbx + 0x3018], r15
mov byte [rbx], r15b
add rsp, 0x20
pop r15
pop rdi
pop rbx
ret