Function at 0x14000de50
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 rbx, rcx
mov rax, qword [rcx + 0xa8]
test rax, rax
je 0x14000df3a
cmp byte [rcx + 1], 0
je 0x14000df3a
mov byte [rax], 0
mov rdi, qword [rcx + 0xa8]
test rdi, rdi
je 0x14000df3a
mov rcx, rdi
call fcn.1400329d0
nop
mov rcx, qword [rdi + 0x68]
test rcx, rcx
je 0x14000dec9
mov rax, qword [0x140432558]
test rax, rax
je 0x14000debc
dec dword [rax + 0x3b0]
mov rdx, qword [0x140432560]
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
nop
mov rcx, qword [rdi + 0x58]
test rcx, rcx
je 0x14000def1
mov rax, qword [0x140432558]
test rax, rax
je 0x14000dee4
dec dword [rax + 0x3b0]
mov rdx, qword [0x140432560]
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
nop
mov rcx, qword [rdi + 0x48]
test rcx, rcx
je 0x14000df19
mov rax, qword [0x140432558]
test rax, rax
je 0x14000df0c
dec dword [rax + 0x3b0]
mov rdx, qword [0x140432560]
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
nop
mov rax, qword [0x140432558]
test rax, rax
je 0x14000df2b
dec dword [rax + 0x3b0]
mov rdx, qword [0x140432560]
mov rcx, rdi
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
xor r15d, r15d
mov qword [rbx + 0xa8], r15
cmp byte [rbx], r15b
je 0x14000e666
cmp byte [rbx + 0x2fb8], r15b
je 0x14000dfbd
mov rdi, qword [rbx + 0x20]
test rdi, rdi
je 0x14000dfbd
mov rsi, qword [0x140432558]
mov qword [0x140432558], rbx
mov dword [rbx + 0x2fbc], r15d
mov qword [rsp + 0x40], r15
lea rcx, [rsp + 0x40]
call fcn.14001d220
mov rbp, rax
lea rdx, [0x140139db4]
mov rcx, rdi
call fcn.140008ac0
mov rdi, rax
test rax, rax
je 0x14000dfc4
mov r9, rax
mov r8, qword [rsp + 0x40]
lea edx, [r15 + 1]
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 0x14000dfc4
mov rsi, qword [0x140432558]
mov qword [0x140432558], rbx
call fcn.14001f4f0
mov qword [0x140432558], rsi
mov esi, r15d
cmp dword [rbx + 0x2f80], r15d
jle 0x14000e06d
mov rbp, r15
nop word [rax + rax]
mov rax, qword [rbx + 0x2f88]
mov rdi, qword [rax + rbp + 8]
test rdi, rdi
je 0x14000e05f
mov rcx, qword [rdi + 0x38]
call fcn.140028130
mov qword [rdi + 0x38], r15
mov qword [rdi + 0x20], r15
mov qword [rdi + 0x18], r15
mov rcx, qword [rdi + 0x30]
test rcx, rcx
je 0x14000e03e
mov rax, qword [0x140432558]
test rax, rax
je 0x14000e031
dec dword [rax + 0x3b0]
mov rdx, qword [0x140432560]
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
nop
mov rax, qword [0x140432558]
test rax, rax
je 0x14000e050
dec dword [rax + 0x3b0]
mov rdx, qword [0x140432560]
mov rcx, rdi
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
inc esi
add rbp, 0x10
cmp esi, dword [rbx + 0x2f80]
jl 0x14000dff0
mov edi, r15d
cmp dword [rbx + 0x2ff0], r15d
jle 0x14000e0af
mov rsi, r15
nop dword [rax]
mov r8, qword [rbx + 0x2ff8]
cmp dword [rsi + r8], 6
jne 0x14000e0a1
movsxd rax, edi
lea rcx, [rax + rax*2]
lea rdx, [r8 + rcx*8]
mov rcx, rbx
call qword [rsi + rreloc.WS2_32.dll_htonl + 8]
inc edi
add rsi, 0x18
cmp edi, dword [rbx + 0x2ff0]
jl 0x14000e080
mov esi, r15d
cmp dword [rbx + 0x1b38], r15d
jle 0x14000e107
mov r14, r15
nop
mov rax, qword [rbx + 0x1b40]
mov rdi, qword [r14 + rax]
test rdi, rdi
je 0x14000e0f9
mov rcx, rdi
call fcn.14000adb0
mov rax, qword [0x140432558]
test rax, rax
je 0x14000e0ea
dec dword [rax + 0x3b0]
mov rdx, qword [0x140432560]
mov rcx, rdi
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
inc esi
add r14, 8
cmp esi, dword [rbx + 0x1b38]
jl 0x14000e0c0
mov rcx, qword [rbx + 0x1b40]
test rcx, rcx
je 0x14000e13f
mov qword [rbx + 0x1b38], r15
mov rax, qword [0x140432558]
test rax, rax
je 0x14000e12c
dec dword [rax + 0x3b0]
mov rdx, qword [0x140432560]
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
mov qword [rbx + 0x1b40], r15
mov rcx, qword [rbx + 0x1b50]
test rcx, rcx
je 0x14000e177
mov qword [rbx + 0x1b48], r15
mov rax, qword [0x140432558]
test rax, rax
je 0x14000e164
dec dword [rax + 0x3b0]
mov rdx, qword [0x140432560]
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
mov qword [rbx + 0x1b50], r15
mov rcx, qword [rbx + 0x1b60]
test rcx, rcx
je 0x14000e1af
mov qword [rbx + 0x1b58], r15
mov rax, qword [0x140432558]
test rax, rax
je 0x14000e19c
dec dword [rax + 0x3b0]
mov rdx, qword [0x140432560]
call sub.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 0x14000e1ee
mov qword [rbx + 0x1b68], r15
mov rax, qword [0x140432558]
test rax, rax
je 0x14000e1db
dec dword [rax + 0x3b0]
mov rdx, qword [0x140432560]
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
mov qword [rbx + 0x1b70], r15
mov rcx, qword [rbx + 0x1b80]
test rcx, rcx
je 0x14000e226
mov qword [rbx + 0x1b78], r15
mov rax, qword [0x140432558]
test rax, rax
je 0x14000e213
dec dword [rax + 0x3b0]
mov rdx, qword [0x140432560]
call sub.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 0x14000e28f
mov qword [rbx + 0x1ce8], r15
mov rax, qword [0x140432558]
test rax, rax
je 0x14000e27c
dec dword [rax + 0x3b0]
mov rdx, qword [0x140432560]
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
mov qword [rbx + 0x1cf0], r15
mov rcx, qword [rbx + 0x1d00]
test rcx, rcx
je 0x14000e2c7
mov qword [rbx + 0x1cf8], r15
mov rax, qword [0x140432558]
test rax, rax
je 0x14000e2b4
dec dword [rax + 0x3b0]
mov rdx, qword [0x140432560]
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
mov qword [rbx + 0x1d00], r15
mov rcx, qword [rbx + 0x1d10]
test rcx, rcx
je 0x14000e2ff
mov qword [rbx + 0x1d08], r15
mov rax, qword [0x140432558]
test rax, rax
je 0x14000e2ec
dec dword [rax + 0x3b0]
mov rdx, qword [0x140432560]
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
mov qword [rbx + 0x1d10], r15
mov rcx, qword [rbx + 0x1d20]
test rcx, rcx
je 0x14000e337
mov qword [rbx + 0x1d18], r15
mov rax, qword [0x140432558]
test rax, rax
je 0x14000e324
dec dword [rax + 0x3b0]
mov rdx, qword [0x140432560]
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
mov qword [rbx + 0x1d20], r15
mov rcx, qword [rbx + 0x1d30]
test rcx, rcx
je 0x14000e36f
mov qword [rbx + 0x1d28], r15
mov rax, qword [0x140432558]
test rax, rax
je 0x14000e35c
dec dword [rax + 0x3b0]
mov rdx, qword [0x140432560]
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
mov qword [rbx + 0x1d30], r15
mov qword [rbx + 0x1d60], r15
mov qword [rbx + 0x1d58], r15
mov qword [rbx + 0x1d50], r15
mov edi, r15d
cmp dword [rbx + 0x1d38], r15d
jle 0x14000e3be
mov rsi, r15
nop dword [rax]
nop word [rax + rax]
mov rcx, qword [rbx + 0x1d40]
mov rcx, qword [rcx + rsi]
call fcn.140028020
inc edi
lea rsi, [rsi + 8]
cmp edi, dword [rbx + 0x1d38]
jl 0x14000e3a0
mov rcx, qword [rbx + 0x1d40]
test rcx, rcx
je 0x14000e3f6
mov qword [rbx + 0x1d38], r15
mov rax, qword [0x140432558]
test rax, rax
je 0x14000e3e3
dec dword [rax + 0x3b0]
mov rdx, qword [0x140432560]
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
mov qword [rbx + 0x1d40], r15
lea rcx, [rbx + 0x1fa0]
call fcn.140027580
mov rcx, qword [rbx + 0x1fd0]
test rcx, rcx
je 0x14000e43a
mov qword [rbx + 0x1fc8], r15
mov rax, qword [0x140432558]
test rax, rax
je 0x14000e427
dec dword [rax + 0x3b0]
mov rdx, qword [0x140432560]
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
mov qword [rbx + 0x1fd0], r15
mov rcx, qword [rbx + 0x1fe0]
test rcx, rcx
je 0x14000e472
mov qword [rbx + 0x1fd8], r15
mov rax, qword [0x140432558]
test rax, rax
je 0x14000e45f
dec dword [rax + 0x3b0]
mov rdx, qword [0x140432560]
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
mov qword [rbx + 0x1fe0], r15
mov rcx, qword [rbx + 0x2f48]
test rcx, rcx
je 0x14000e4aa
mov qword [rbx + 0x2f40], r15
mov rax, qword [0x140432558]
test rax, rax
je 0x14000e497
dec dword [rax + 0x3b0]
mov rdx, qword [0x140432560]
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
mov qword [rbx + 0x2f48], r15
mov rcx, qword [rbx + 0x2f58]
test rcx, rcx
je 0x14000e4e2
mov qword [rbx + 0x2f50], r15
mov rax, qword [0x140432558]
test rax, rax
je 0x14000e4cf
dec dword [rax + 0x3b0]
mov rdx, qword [0x140432560]
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
mov qword [rbx + 0x2f58], r15
mov rcx, qword [rbx + 0x2008]
test rcx, rcx
je 0x14000e51a
mov qword [rbx + 0x2000], r15
mov rax, qword [0x140432558]
test rax, rax
je 0x14000e507
dec dword [rax + 0x3b0]
mov rdx, qword [0x140432560]
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
mov qword [rbx + 0x2008], r15
mov rcx, qword [rbx + 0x2018]
test rcx, rcx
je 0x14000e552
mov qword [rbx + 0x2010], r15
mov rax, qword [0x140432558]
test rax, rax
je 0x14000e53f
dec dword [rax + 0x3b0]
mov rdx, qword [0x140432560]
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
mov qword [rbx + 0x2018], r15
mov rcx, qword [rbx + 0x2028]
test rcx, rcx
je 0x14000e58a
mov qword [rbx + 0x2020], r15
mov rax, qword [0x140432558]
test rax, rax
je 0x14000e577
dec dword [rax + 0x3b0]
mov rdx, qword [0x140432560]
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
mov qword [rbx + 0x2028], r15
mov rcx, qword [rbx + 0x2fe8]
test rcx, rcx
je 0x14000e5c2
mov qword [rbx + 0x2fe0], r15
mov rax, qword [0x140432558]
test rax, rax
je 0x14000e5af
dec dword [rax + 0x3b0]
mov rdx, qword [0x140432560]
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
mov qword [rbx + 0x2fe8], r15
mov rcx, qword [rbx + 0x2fd8]
test rcx, rcx
je 0x14000e5fa
mov qword [rbx + 0x2fd0], r15
mov rax, qword [0x140432558]
test rax, rax
je 0x14000e5e7
dec dword [rax + 0x3b0]
mov rdx, qword [0x140432560]
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
mov qword [rbx + 0x2fd8], r15
cmp qword [rbx + 0x3008], 0
je 0x14000e62b
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 0x14000e624
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 0x14000e663
mov qword [rbx + 0x3010], r15
mov rax, qword [0x140432558]
test rax, rax
je 0x14000e650
dec dword [rax + 0x3b0]
mov rdx, qword [0x140432560]
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
mov qword [rbx + 0x3018], r15
mov byte [rbx], 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