Function at 0x140009820
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r14
push r15
sub rsp, 0x20
mov rax, qword [0x1401616b0]
mov rdi, rax
mov rcx, qword [rax + 0x58]
test rcx, rcx
je 0x140009888
cmp byte [rax + 1], 0
je 0x140009888
mov byte [rcx + 0x18], 0
mov rbx, qword [rax + 0x58]
test rbx, rbx
je 0x140009888
mov rcx, rbx
call fcn.140027d30
mov rax, qword [0x1401616b0]
test rax, rax
je 0x140009878
dec dword [rax + 0xf4]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rax, qword [0x1401616b0]
xor r15d, r15d
mov qword [rdi + 0x58], r15
mov rcx, qword [rdi + 0x3c40]
test rcx, rcx
je 0x1400098c1
mov qword [rdi + 0x3c38], r15
test rax, rax
je 0x1400098ad
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x3c40], r15
mov rax, qword [0x1401616b0]
cmp byte [rdi], r15b
je 0x14000a0a6
cmp byte [rdi + 0x5389], r15b
je 0x14000992b
mov rbx, qword [rdi + 0x20]
test rbx, rbx
je 0x14000992b
mov dword [rax + 0x538c], r15d
mov qword [rsp + 0x40], r15
lea rcx, [rsp + 0x40]
call fcn.140019870
mov rsi, rax
lea rdx, [0x1400b695c]
mov rcx, rbx
call fcn.140003580
mov rbx, rax
test rax, rax
je 0x14000992b
mov r9, rax
mov r8, qword [rsp + 0x40]
mov edx, 1
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov edx, 6
mov rcx, rdi
call fcn.140006440
mov esi, r15d
cmp dword [rdi + 0x3e40], r15d
jle 0x140009991
mov r14, r15
nop word [rax + rax]
mov rax, qword [rdi + 0x3e48]
mov rbx, qword [r14 + rax]
test rbx, rbx
je 0x140009983
mov rcx, rbx
call fcn.1400057d0
mov rax, qword [0x1401616b0]
test rax, rax
je 0x14000997a
dec dword [rax + 0xf4]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
inc esi
add r14, 8
cmp esi, dword [rdi + 0x3e40]
jl 0x140009950
mov rcx, qword [rdi + 0x3e48]
test rcx, rcx
je 0x1400099c3
mov qword [rdi + 0x3e40], r15
mov rax, qword [0x1401616b0]
test rax, rax
je 0x1400099b6
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x3e48], r15
mov rcx, qword [rdi + 0x3e58]
test rcx, rcx
je 0x1400099f5
mov qword [rdi + 0x3e50], r15
mov rax, qword [0x1401616b0]
test rax, rax
je 0x1400099e8
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x3e58], r15
mov rcx, qword [rdi + 0x3e68]
test rcx, rcx
je 0x140009a27
mov qword [rdi + 0x3e60], r15
mov rax, qword [0x1401616b0]
test rax, rax
je 0x140009a1a
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x3e68], r15
mov qword [rdi + 0x3ea0], r15
mov rcx, qword [rdi + 0x3e78]
test rcx, rcx
je 0x140009a60
mov qword [rdi + 0x3e70], r15
mov rax, qword [0x1401616b0]
test rax, rax
je 0x140009a53
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x3e78], r15
mov rcx, qword [rdi + 0x3e88]
test rcx, rcx
je 0x140009a92
mov qword [rdi + 0x3e80], r15
mov rax, qword [0x1401616b0]
test rax, rax
je 0x140009a85
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x3e88], r15
mov qword [rdi + 0x40a8], r15
mov qword [rdi + 0x3eb0], r15
mov qword [rdi + 0x3ea8], r15
mov qword [rdi + 0x3f20], r15
mov qword [rdi + 0x3f08], r15
mov qword [rdi + 0x3eb8], r15
mov rcx, qword [rdi + 0x4018]
test rcx, rcx
je 0x140009aee
mov qword [rdi + 0x4010], r15
mov rax, qword [0x1401616b0]
test rax, rax
je 0x140009ae1
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x4018], r15
mov rcx, qword [rdi + 0x4028]
test rcx, rcx
je 0x140009b20
mov qword [rdi + 0x4020], r15
mov rax, qword [0x1401616b0]
test rax, rax
je 0x140009b13
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x4028], r15
mov rcx, qword [rdi + 0x4038]
test rcx, rcx
je 0x140009b52
mov qword [rdi + 0x4030], r15
mov rax, qword [0x1401616b0]
test rax, rax
je 0x140009b45
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x4038], r15
mov rcx, qword [rdi + 0x4078]
test rcx, rcx
je 0x140009b84
mov qword [rdi + 0x4070], r15
mov rax, qword [0x1401616b0]
test rax, rax
je 0x140009b77
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x4078], r15
mov rcx, qword [rdi + 0x4088]
test rcx, rcx
je 0x140009bb6
mov qword [rdi + 0x4080], r15
mov rax, qword [0x1401616b0]
test rax, rax
je 0x140009ba9
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x4088], r15
mov ebp, r15d
cmp dword [rdi + 0x4098], r15d
jle 0x140009c84
mov r14, r15
nop dword [rax]
mov rax, qword [rdi + 0x40a0]
mov rbx, qword [r14 + rax]
test rbx, rbx
je 0x140009c72
mov rsi, qword [rbx + 0x38]
test rsi, rsi
je 0x140009c10
mov rcx, rsi
call fcn.1400015a0
mov rax, qword [0x1401616b0]
test rax, rax
je 0x140009c07
dec dword [rax + 0xf4]
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rsi, qword [rbx + 0x40]
test rsi, rsi
je 0x140009c3d
mov rcx, rsi
call fcn.1400015a0
mov rax, qword [0x1401616b0]
test rax, rax
je 0x140009c33
dec dword [rax + 0xf4]
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
nop
lea rcx, [rbx + 0x78]
lea r9, [0x14001ad60]
mov edx, reloc.WS2_32.dll_recv
lea r8d, [rdx - 0xe]
call fcn.1400a0ec8
nop
mov rax, qword [0x1401616b0]
test rax, rax
je 0x140009c69
dec dword [rax + 0xf4]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
inc ebp
add r14, 8
cmp ebp, dword [rdi + 0x4098]
jl 0x140009bd0
mov rcx, qword [rdi + 0x40a0]
test rcx, rcx
je 0x140009cb6
mov qword [rdi + 0x4098], r15
mov rax, qword [0x1401616b0]
test rax, rax
je 0x140009ca9
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x40a0], r15
lea rcx, [rdi + 0x4378]
call fcn.14001a6f0
mov rcx, qword [rdi + 0x43a8]
test rcx, rcx
je 0x140009cf4
mov qword [rdi + 0x43a0], r15
mov rax, qword [0x1401616b0]
test rax, rax
je 0x140009ce7
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x43a8], r15
mov rcx, qword [rdi + 0x43b8]
test rcx, rcx
je 0x140009d26
mov qword [rdi + 0x43b0], r15
mov rax, qword [0x1401616b0]
test rax, rax
je 0x140009d19
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x43b8], r15
mov ebx, r15d
cmp dword [rdi + 0x42f8], r15d
jle 0x140009d77
mov rsi, r15
nop word [rax + rax]
mov rax, qword [rdi + 0x4300]
mov rcx, qword [rsi + rax + 0x20]
test rcx, rcx
je 0x140009d69
mov rax, qword [0x1401616b0]
test rax, rax
je 0x140009d63
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
inc ebx
add rsi, 0x28
cmp ebx, dword [rdi + 0x42f8]
jl 0x140009d40
mov rcx, qword [rdi + 0x4300]
test rcx, rcx
je 0x140009da9
mov qword [rdi + 0x42f8], r15
mov rax, qword [0x1401616b0]
test rax, rax
je 0x140009d9c
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x4300], r15
lea rcx, [rdi + 0x4328]
call fcn.14001a850
mov esi, r15d
cmp dword [rdi + 0x4318], r15d
jle 0x140009e13
mov rbp, r15
nop dword [rax]
nop dword [rax + rax]
mov rbx, qword [rdi + 0x4320]
lea rcx, [rbx + 0x10]
add rcx, rbp
call fcn.1400271c0
mov rcx, qword [rbx + rbp + 0x20]
test rcx, rcx
je 0x140009e05
mov rax, qword [0x1401616b0]
test rax, rax
je 0x140009dff
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
inc esi
add rbp, 0x70
cmp esi, dword [rdi + 0x4318]
jl 0x140009dd0
mov rcx, qword [rdi + 0x4320]
test rcx, rcx
je 0x140009e45
mov qword [rdi + 0x4318], r15
mov rax, qword [0x1401616b0]
test rax, rax
je 0x140009e38
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x4320], r15
mov rcx, qword [rdi + 0x4368]
test rcx, rcx
je 0x140009e77
mov qword [rdi + 0x4360], r15
mov rax, qword [0x1401616b0]
test rax, rax
je 0x140009e6a
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x4368], r15
mov rcx, qword [rdi + 0x5350]
test rcx, rcx
je 0x140009ea9
mov qword [rdi + 0x5348], r15
mov rax, qword [0x1401616b0]
test rax, rax
je 0x140009e9c
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x5350], r15
mov rcx, qword [rdi + 0x5360]
test rcx, rcx
je 0x140009edb
mov qword [rdi + 0x5358], r15
mov rax, qword [0x1401616b0]
test rax, rax
je 0x140009ece
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x5360], r15
mov rcx, qword [rdi + 0x43f0]
test rcx, rcx
je 0x140009f0d
mov qword [rdi + 0x43e8], r15
mov rax, qword [0x1401616b0]
test rax, rax
je 0x140009f00
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x43f0], r15
mov rcx, qword [rdi + 0x4400]
test rcx, rcx
je 0x140009f3f
mov qword [rdi + 0x43f8], r15
mov rax, qword [0x1401616b0]
test rax, rax
je 0x140009f32
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x4400], r15
mov rcx, qword [rdi + 0x4410]
test rcx, rcx
je 0x140009f71
mov qword [rdi + 0x4408], r15
mov rax, qword [0x1401616b0]
test rax, rax
je 0x140009f64
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x4410], r15
mov rcx, qword [rdi + 0x53b8]
test rcx, rcx
je 0x140009fa3
mov qword [rdi + 0x53b0], r15
mov rax, qword [0x1401616b0]
test rax, rax
je 0x140009f96
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x53b8], r15
mov rcx, qword [rdi + 0x53a8]
test rcx, rcx
je 0x140009fd5
mov qword [rdi + 0x53a0], r15
mov rax, qword [0x1401616b0]
test rax, rax
je 0x140009fc8
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x53a8], r15
cmp qword [rdi + 0x53f0], 0
je 0x14000a006
mov rbx, qword [rdi + 0x53f0]
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
cmp rbx, rax
je 0x140009fff
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov qword [rdi + 0x53f0], r15
mov rcx, qword [rdi + 0x5400]
test rcx, rcx
je 0x14000a038
mov qword [rdi + 0x53f8], r15
mov rax, qword [0x1401616b0]
test rax, rax
je 0x14000a02b
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x5400], r15
mov rcx, qword [rdi + 0x5438]
test rcx, rcx
je 0x14000a06a
mov qword [rdi + 0x5430], r15
mov rax, qword [0x1401616b0]
test rax, rax
je 0x14000a05d
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x5438], r15
mov rcx, qword [rdi + 0x5448]
test rcx, rcx
je 0x14000a09c
mov qword [rdi + 0x5440], r15
mov rax, qword [0x1401616b0]
test rax, rax
je 0x14000a08f
dec dword [rax + 0xf4]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x5448], r15
mov dword [rdi + 0x5450], r15d
mov byte [rdi], 0
mov rbx, qword [rsp + 0x48]
mov rbp, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x58]
add rsp, 0x20
pop r15
pop r14
pop rdi
ret