Function at 0x140038470
Capabilities:
Write file 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, 0xe0
mov rax, qword [0x14036e3c8]
xor rax, rsp
mov qword [rbp + 0x2f], rax
lea rcx, [rbp - 0x69]
call fcn.1400376e0
nop
mov rax, qword [0x140372980]
mov r12, 0xffffffffffffffff
cmp dword [rax - 0x10], 0
jne 0x1400384e7
lea rcx, [rbp - 0x61]
call fcn.1400376e0
mov rdx, qword [rbp - 0x61]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400384e7
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + ioctlsocket]
mov rcx, qword [0x140372980]
add rcx, 0xffffffffffffffe8
call fcn.14000d080
lea rbx, [rax + 0x18]
mov qword [rbp - 0x59], rbx
lea rcx, [rbp - 0x71]
call fcn.140035410
nop
lea rdx, [0x14028bf20]
mov rax, r12
inc rax
cmp word [rdx + rax*2], 0
jne 0x140038513
mov r8d, eax
lea rcx, [rbp - 0x71]
call fcn.1400127b0
mov qword [rbp - 0x31], 0
mov r15d, reloc.WS2_32.dll_ntohs
mov qword [rbp - 0x19], r15
mov qword [rbp - 0x21], 7
mov eax, dword [str.current]
mov dword [rbp - 0x31], eax
movzx eax, word [0x140285084]
mov word [rbp - 0x2d], ax
movzx eax, byte [reloc.WS2_32.dll_WSACleanup]
mov byte [rbp - 0x2b], al
mov byte [rbp - 0x2a], 0
mov rdx, qword [rbp - 0x69]
lea r8, str.current_new
xor ecx, ecx
movzx eax, word [rdx + rcx*2]
movabs r13, 0x8000000000000027
cmp ax, word [r8 + rcx*2]
jne 0x1400385c5
movzx eax, word [rdx + rcx*2 + 2]
cmp ax, word [r8 + rcx*2 + 2]
jne 0x1400385c5
add rcx, 2
cmp rcx, 0xc
jne 0x140038572
lea rdi, [rbp - 0x31]
mov eax, listen
mov qword [rbp - 0x21], rax
mov r8d, eax
lea rdx, [0x140284db0]
mov rcx, rdi
call fcn.140245860
mov byte [rdi + 0xb], 0
mov r15, qword [rbp - 0x19]
mov rsi, qword [rbp - 0x31]
mov qword [rbp - 0x51], 0
mov edi, reloc.WS2_32.dll_ntohs
mov qword [rbp - 0x39], rdi
mov qword [rbp - 0x41], 7
mov eax, dword [str.release]
mov dword [rbp - 0x51], eax
movzx eax, word [0x14028508c]
mov word [rbp - 0x4d], ax
movzx eax, byte [0x14028508e]
mov byte [rbp - 0x4b], al
mov byte [rbp - 0x4a], 0
xor ecx, ecx
lea rdx, [0x140284dc0]
nop dword [rax]
movzx eax, word [rbx + rcx*2]
inc rcx
cmp ax, word [rdx + rcx*2 - 2]
jne 0x14003863c
cmp rcx, 5
jne 0x140038610
lea rax, [rbp - 0x51]
mov qword [rbp - 0x41], 4
mov dword [rax], 0x61746562
mov byte [rax + 4], 0
jmp 0x140038668
cmp word [rbx], 0x72
jne 0x14003866c
cmp word [rbx + 2], 0x63
jne 0x14003866c
cmp word [rbx + 4], 0
jne 0x14003866c
lea rax, [rbp - 0x51]
mov qword [rbp - 0x41], 2
mov ecx, 0x6372
mov word [rax], cx
mov byte [rax + 2], 0
mov rdi, qword [rbp - 0x39]
movabs rcx, 0x7fffffffffffffff
mov rax, rcx
mov r8, qword [rbp - 0x21]
sub rax, r8
cmp rax, 1
jb 0x140038995
lea rdx, [rbp - 0x31]
cmp r15, 0x10
cmovae rdx, rsi
mov qword [rbp - 0x79], rdx
mov qword [rbp + 0xf], 0
mov qword [rbp + 0x1f], 0
mov qword [rbp + 0x27], 0
lea rax, [r8 + 1]
mov qword [rsp + 0x28], rax
mov ebx, reloc.WS2_32.dll_ntohs
lea r14, [rbp + 0xf]
cmp rax, rbx
jbe 0x140038753
mov rbx, rax
or rbx, 0xf
cmp rbx, rcx
jbe 0x140038708
mov rbx, rcx
mov rcx, r13
call fcn.140242f80
test rax, rax
je 0x14003899b
lea r14, [rax + 0x27]
and r14, 0xffffffffffffffe0
mov qword [r14 - 8], rax
mov rax, qword [rsp + 0x28]
mov rdx, qword [rbp - 0x79]
mov r8, qword [rbp - 0x21]
jmp 0x14003874f
mov ecx, reloc.WS2_32.dll_shutdown
cmp rbx, rcx
cmovb rbx, rcx
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x140038730
lea r13, [rcx + 0x27]
cmp r13, rcx
jbe 0x14003898f
jmp 0x1400386dc
test rcx, rcx
je 0x14003874c
call fcn.140242f80
mov r14, rax
mov rax, qword [rsp + 0x28]
mov rdx, qword [rbp - 0x79]
mov r8, qword [rbp - 0x21]
jmp 0x14003874f
xor r14d, r14d
mov qword [rbp + 0xf], r14
mov qword [rbp + 0x1f], rax
mov qword [rbp + 0x27], rbx
mov rcx, r14
call fcn.140245860
mov rax, qword [rbp - 0x21]
mov byte [rax + r14], 0xa
mov byte [r14 + rax + 1], 0
lea rdx, [rbp - 0x51]
cmp rdi, 0x10
cmovae rdx, qword [rbp - 0x51]
mov r8, qword [rbp - 0x41]
lea rcx, [rbp + 0xf]
call fcn.140007930
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x11], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 1], xmm1
xor r14d, r14d
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], r14b
mov rdx, qword [rbp + 0x27]
cmp rdx, 0x10
jb 0x1400387e8
inc rdx
mov rcx, qword [rbp + 0xf]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400387e3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003899b
call fcn.1402434a4
mov qword [rsp + 0x20], r14
lea r8, [0x140285090]
mov rbx, qword [rbp - 0x71]
mov rdx, rbx
lea rcx, [rsp + 0x20]
call fcn.1402571d4
mov r9, qword [rsp + 0x20]
test r9, r9
jne 0x140038814
xor dil, dil
jmp 0x140038841
lea rcx, [rbp - 0x11]
cmp qword [rbp + 7], 0x10
cmovae rcx, qword [rbp - 0x11]
mov r8, qword [rbp - 1]
mov edx, 1
call fcn.1402588c0
cmp eax, dword [rbp - 1]
setge dil
mov rcx, qword [rsp + 0x20]
call fcn.14025750c
mov rdx, qword [rbp + 7]
cmp rdx, 0x10
jb 0x14003887c
inc rdx
mov rcx, qword [rbp - 0x11]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038877
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400389a1
call fcn.1402434a4
mov qword [rbp - 1], r14
mov qword [rbp + 7], reloc.WS2_32.dll_ntohs
mov byte [rbp - 0x11], 0
mov rdx, qword [rbp - 0x39]
cmp rdx, 0x10
jb 0x1400388c8
inc rdx
mov rcx, qword [rbp - 0x51]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400388c2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400389a7
call fcn.1402434a4
nop
cmp r15, 0x10
jb 0x140038900
lea rdx, [r15 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x1400388f7
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140038989
mov rcx, rsi
call fcn.1402434a4
nop
lea rdx, [rbx - 0x18]
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14003891b
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + ioctlsocket]
nop
mov rdx, qword [rbp - 0x59]
add rdx, 0xffffffffffffffe8
mov eax, r12d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14003893a
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + ioctlsocket]
nop
mov rdx, qword [rbp - 0x69]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], r12d
sub r12d, 1
jg 0x140038958
mov rcx, qword [rdx]
mov r8, qword [rcx]
call qword [rioctlsocket + 8]
movzx eax, dil
mov rcx, qword [rbp + 0x2f]
xor rcx, rsp
call fcn.1402435c0
lea r11, [rsp + 0xe0]
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
call fcn.14024a84c
nop
call fcn.140007850
int3
call fcn.140007890
int3
call fcn.14024a84c
int3
call fcn.14024a84c
nop
call fcn.14024a84c
int3