Function at 0x14006b440
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
mov dword [rax + 0x20], r9d
mov qword [rax + 0x18], r8
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbx
sub rsp, 0x130
mov rbx, qword [rcx + 0x10]
mov r10, qword [rcx]
mov qword [rax - 0x10], rbp
mov rbp, rdx
xor edx, edx
mov qword [rax - 0x18], rsi
mov qword [rax - 0x20], rdi
mov qword [rax - 0x28], r12
mov qword [rax - 0x30], r13
mov r13, rcx
mov qword [rax - 0x40], r15
mov dword [rsp + 0x78], edx
mov dword [rsp + 0x74], edx
mov dword [rsp + 0x90], edx
mov byte [rsp + 0x60], dl
mov qword [rsp + 0x98], r10
test rbx, rbx
jne 0x14006b4b4
call fcn.140078ba0
mov r10, qword [rsp + 0x98]
mov rbx, rax
xor edx, edx
test byte [rbp + 0x40], 0x20
mov eax, 1
jne 0x14006b4c9
mov qword [rsp + 0x80], rdx
jmp 0x14006b4fe
mov rcx, qword [rbp + 0x10]
mov qword [rsp + 0x80], rcx
test rcx, rcx
je 0x14006b4fa
nop word [rax + rax]
mov eax, dword [rcx + 0x64]
and al, 3
cmp al, 2
je 0x14006b4f2
mov rcx, qword [rcx + 0x28]
test rcx, rcx
jne 0x14006b4e0
mov qword [rsp + 0x80], rcx
movzx eax, word [rcx + 0x5e]
movsx r12, word [rbp + 0x46]
mov esi, edx
movzx ecx, byte [rsp + 0x180]
mov r15, rdx
mov dword [rsp + 0x68], eax
mov r8d, 2
mov qword [rsp + 0x100], r14
test r12, r12
jle 0x14006b776
mov r14, rdx
nop
movsx eax, word [rbp + 0x44]
cmp esi, eax
je 0x14006b75a
mov rax, qword [rsp + 0x198]
test rax, rax
je 0x14006b554
cmp dword [rax + r15*4], 0
jl 0x14006b75a
mov rax, qword [rbp + 8]
movzx edi, byte [r14 + rax + 0x18]
test edi, edi
je 0x14006b75a
cmp cl, 0xa
je 0x14006b605
movzx edi, cl
cmp edi, 5
jne 0x14006b581
cmp qword [r14 + rax + 8], 0
cmove edi, r8d
mov ecx, edi
sub ecx, 1
je 0x14006b668
sub ecx, 1
je 0x14006b653
sub ecx, 1
je 0x14006b668
cmp ecx, 1
mov rcx, rbx
je 0x14006b62e
mov edi, dword [rsp + 0x168]
mov edx, 0x4c
inc edi
add edi, esi
mov r8d, edi
call fcn.140033a80
mov rdx, qword [rsp + 0x148]
mov r8d, edi
mov rcx, r13
mov ebp, eax
mov rdx, qword [rdx + 8]
mov rdx, qword [r14 + rdx + 8]
call fcn.1400516e0
mov edx, dword [rbx + 0xb8]
test ebp, ebp
jns 0x14006b5ed
lea ebp, [rdx - 1]
mov rax, qword [rbx]
cmp byte [rax + 0x55], 0
je 0x14006b616
lea rax, [0x1401763d0]
mov dword [rax + 8], edx
jmp 0x14006b744
cmp edi, 0xa
jne 0x14006b572
mov edi, r8d
jmp 0x14006b581
movsxd rax, ebp
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x68]
mov dword [rax + rcx*8 + 8], edx
lea rax, [rax + rcx*8]
jmp 0x14006b744
mov r8d, dword [rsp + 0x168]
mov edx, 0x4b
mov r9d, dword [rsp + 0x188]
inc r8d
add r8d, esi
call fcn.140033af0
jmp 0x14006b74c
mov rax, qword [r13 + 0xa0]
mov rcx, r13
test rax, rax
cmovne rcx, rax
mov byte [rcx + 0x21], 1
mov r9, qword [rbp + 8]
lea rdx, str._s._s
mov r8, qword [rbp]
mov rcx, r10
mov r9, qword [r14 + r9]
call fcn.140014570
mov r8d, dword [rsp + 0x168]
mov rbp, rax
mov rcx, qword [rbx + 0x18]
inc r8d
movsxd rdx, dword [rbx + 0xb8]
add r8d, esi
cmp dword [rcx + 0x3c], edx
jg 0x14006b6c1
mov dword [rsp + 0x20], r8d
mov r9d, edi
mov r8d, 0x513
mov edx, 0x36
mov rcx, rbx
call fcn.140033940
jmp 0x14006b6f1
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
xor edx, edx
mov dword [rbx + 0xb8], eax
mov rax, qword [rbx + 0x68]
mov dword [rax + rcx*8], 0x36
mov dword [rax + rcx*8 + 4], 0x513
mov dword [rax + rcx*8 + 8], edi
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], rdx
mov rcx, qword [rbx]
cmp byte [rcx + 0x55], 0
je 0x14006b707
mov r8, rbp
or edx, 0xffffffff
call fcn.1400347a0
jmp 0x14006b723
mov eax, dword [rbx + 0xb8]
dec eax
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x68]
mov byte [rax + rcx*8 + 1], 0xff
mov qword [rax + rcx*8 + 0x10], rbp
mov eax, dword [rbx + 0xb8]
test eax, eax
jle 0x14006b744
dec eax
movsxd rcx, eax
mov rax, qword [rbx + 0x68]
lea rdx, [rcx + rcx*2]
mov ecx, 1
mov word [rax + rdx*8 + 2], cx
mov rbp, qword [rsp + 0x148]
movzx ecx, byte [rsp + 0x180]
mov r8d, 2
mov r10, qword [rsp + 0x98]
inc esi
inc r15
add r14, 0x20
cmp r15, r12
jl 0x14006b530
xor edx, edx
mov r13, qword [rbp + 0x30]
movzx edi, byte [rsp + 0x178]
mov r15d, dword [rsp + 0x168]
mov r14, qword [rsp + 0x140]
test r13, r13
je 0x14006b9a0
mov rax, qword [rsp + 0x98]
test dword [rax + 0x2c], 0x2000
jne 0x14006b9a0
movzx ebp, cl
lea eax, [r15 + 1]
mov dword [r14 + 0x44], eax
cmp cl, 0xa
jne 0x14006b7c3
mov ebp, r8d
cmp dword [r13], 0
mov r12d, edx
jle 0x14006b998
lea r15, [r13 + 0x10]
lea rdx, [0x14006b410]
nop dword [rax]
mov rcx, qword [rsp + 0x198]
mov r14, qword [r15 - 8]
test rcx, rcx
je 0x14006b856
xor eax, eax
mov qword [rsp + 0xc8], rdx
mov qword [rsp + 0xe0], rax
mov byte [rsp + 0xe4], al
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xd8], rax
mov qword [rsp + 0xe8], rcx
test r14, r14
je 0x14006b847
mov rdx, r14
lea rcx, [rsp + 0xc0]
call fcn.140047390
movzx eax, byte [rsp + 0xe4]
test dil, dil
jne 0x14006b84e
and al, 0xfd
test al, al
je 0x14006ba24
mov rsi, qword [rbx + 0x18]
movsxd rdi, dword [rsi + 0x54]
lea eax, [rdi + 1]
mov dword [rsi + 0x54], eax
lea eax, [rdi - 1]
test edi, eax
jne 0x14006b889
mov rdx, qword [rsi + 0x58]
lea eax, [rdi*2 + 1]
mov rcx, qword [rsi]
movsxd r8, eax
shl r8, 2
call fcn.140012890
mov qword [rsi + 0x58], rax
mov rcx, qword [rsi + 0x58]
test rcx, rcx
je 0x14006b899
mov dword [rcx + rdi*4], 0xffffffff
mov rdx, r14
not edi
mov r14, qword [rsp + 0x140]
mov r9d, reloc.WS2_32.dll_recv
mov rcx, r14
mov r8d, edi
call fcn.140051dc0
cmp ebp, 4
jne 0x14006b91d
mov rax, qword [rbx + 0x18]
movsxd rcx, dword [rbx + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14006b8ea
mov r9d, dword [rsp + 0x188]
lea edx, [rbp + 9]
xor eax, eax
xor r8d, r8d
mov rcx, rbx
mov dword [rsp + 0x20], eax
call fcn.140033940
jmp 0x14006b955
mov edx, dword [rsp + 0x188]
lea eax, [rcx + 1]
mov dword [rbx + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x68]
xor r8d, r8d
mov qword [rax + rcx*8], reloc.WS2_32.dll_listen
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], r8
jmp 0x14006b955
mov r9, qword [r15]
test r9, r9
jne 0x14006b930
mov rax, qword [rsp + 0x148]
mov r9, qword [rax]
cmp ebp, 5
mov byte [rsp + 0x28], 3
mov eax, 2
mov byte [rsp + 0x20], 0
cmove ebp, eax
mov edx, 0x113
mov r8d, ebp
mov rcx, r14
call fcn.14005f740
mov rax, qword [rbx + 0x18]
mov rdx, qword [rax + 0x58]
test rdx, rdx
je 0x14006b970
mov eax, dword [rbx + 0xb8]
not edi
movsxd rcx, edi
mov dword [rdx + rcx*4], eax
movzx edi, byte [rsp + 0x178]
inc r12d
lea rdx, [0x14006b410]
add r15, 0x28
cmp r12d, dword [r13]
jl 0x14006b7e0
mov r15d, dword [rsp + 0x168]
mov rbp, qword [rsp + 0x148]
mov r10d, 0x4e
lea r13d, [r10 + 0x42]
test dil, dil
je 0x14006beb0
cmp qword [rsp + 0x80], 0
jne 0x14006beb0
mov rdi, qword [rbx + 0x18]
movsxd rsi, dword [rdi + 0x54]
lea eax, [rsi + 1]
mov dword [rdi + 0x54], eax
lea eax, [rsi - 1]
test esi, eax
jne 0x14006b9f9
mov rdx, qword [rdi + 0x58]
lea eax, [rsi*2 + 1]
mov rcx, qword [rdi]
movsxd r8, eax
shl r8, 2
call fcn.140012890
mov qword [rdi + 0x58], rax
lea r10d, [r13 - 0x42]
mov rcx, qword [rdi + 0x58]
test rcx, rcx
je 0x14006ba09
mov dword [rcx + rsi*4], 0xffffffff
movzx r12d, byte [rsp + 0x180]
not esi
movzx edi, byte [rbp + 0x4c]
cmp r12b, 0xa
je 0x14006ba31
movzx edi, r12b
jmp 0x14006ba3c
mov r14, qword [rsp + 0x140]
jmp 0x14006b978
cmp edi, 0xa
mov eax, 2
cmove edi, eax
mov edx, dword [rsp + 0x170]
test edx, edx
je 0x14006bab8
mov rax, qword [rbx + 0x18]
movsxd rcx, dword [rbx + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14006ba6e
mov dword [rsp + 0x20], edx
mov r9d, esi
mov edx, r10d
mov r8d, r15d
mov rcx, rbx
call fcn.140033940
jmp 0x14006ba9b
lea eax, [rcx + 1]
xor r8d, r8d
mov dword [rbx + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x68]
mov dword [rax + rcx*8], 0x4e
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], esi
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], r8
mov eax, dword [rbx + 0xb8]
test eax, eax
jle 0x14006bab8
dec eax
movsxd rcx, eax
mov rax, qword [rbx + 0x68]
lea rdx, [rcx + rcx*2]
mov word [rax + rdx*8 + 2], r13w
cmp edi, 5
jne 0x14006bb3b
cmp r12b, dil
je 0x14006bb3b
mov rcx, qword [rbp + 0x10]
test rcx, rcx
je 0x14006bb3b
nop dword [rax + rax]
movzx eax, byte [rcx + 0x62]
sub al, 3
cmp al, 1
jbe 0x14006bae5
mov rcx, qword [rcx + 0x28]
test rcx, rcx
jne 0x14006bad0
jmp 0x14006bb3b
movsxd rdx, dword [rbx + 0xb8]
mov rax, qword [rbx + 0x18]
mov dword [rsp + 0x74], edx
cmp dword [rax + 0x3c], edx
jg 0x14006bb16
xor eax, eax
xor r9d, r9d
xor r8d, r8d
mov dword [rsp + 0x20], eax
mov rcx, rbx
lea edx, [rax + 0xd]
call fcn.140033940
mov dword [rsp + 0x74], eax
jmp 0x14006bb3b
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
xor edx, edx
mov dword [rbx + 0xb8], eax
mov rax, qword [rbx + 0x68]
mov qword [rax + rcx*8], reloc.WS2_32.dll_listen
mov qword [rax + rcx*8 + 8], rdx
mov qword [rax + rcx*8 + 0x10], rdx
mov rax, qword [rbx + 0x18]
movsxd rcx, dword [rbx + 0xb8]
mov r12d, dword [rsp + 0x158]
cmp dword [rax + 0x3c], ecx
jg 0x14006bb70
mov r9d, esi
mov dword [rsp + 0x20], r15d
mov r8d, r12d
mov edx, 0x20
mov rcx, rbx
call fcn.140033940
xor r9d, r9d
jmp 0x14006bb9e
lea eax, [rcx + 1]
xor r9d, r9d
mov dword [rbx + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x68]
mov dword [rax + rcx*8], 0x20
mov dword [rax + rcx*8 + 4], r12d
mov dword [rax + rcx*8 + 8], esi
mov dword [rax + rcx*8 + 0xc], r15d
mov qword [rax + rcx*8 + 0x10], r9
test edi, edi
je 0x14006bd8f
cmp edi, 3
jbe 0x14006bd96
cmp edi, 4
je 0x14006bd2e
cmp edi, 5
jne 0x14006bd8f
mov rax, qword [rsp + 0x98]
mov rbp, r9
test dword [rax + 0x2c], 0x40000
je 0x14006bc28
mov rax, qword [r14]
mov edi, r9d
mov r8, r9
test dword [rax + 0x2c], 0x1000000
je 0x14006bbfd
mov rdx, qword [rsp + 0x148]
mov rcx, r14
call fcn.140081770
mov r8, rax
xor r9d, r9d
mov rdx, r8
test r8, r8
je 0x14006bc1a
cmp byte [rdx + 0x10], 0x6d
jne 0x14006bc11
movzx ecx, byte [rdx + 0x11]
or edi, ecx
mov rdx, qword [rdx + 0x40]
test rdx, rdx
jne 0x14006bc05
test edi, edi
mov rbp, r9
cmovne rbp, r8
test rbp, rbp
jne 0x14006bc6b
mov rax, qword [r14]
test dword [rax + 0x2c], 0x80000
je 0x14006bcdb
mov rdi, qword [rsp + 0x148]
lea r8, [rsp + 0x94]
mov rcx, qword [rdi + 0x70]
mov rdx, qword [rdi]
add rcx, 0x50
call fcn.140016bd0
test rax, rax
je 0x14006bc64
cmp qword [rax + 0x10], 0
jne 0x14006bc6b
cmp qword [rdi + 0x20], 0
je 0x14006bcd8
mov rax, qword [r14 + 0xa0]
mov r8, rbp
mov r9d, dword [rsp + 0x160]
test rax, rax
mov rbp, qword [rsp + 0x148]
mov rcx, r14
cmovne rcx, rax
mov rdx, rbp
or eax, 0xffffffff
mov dword [rsp + 0x50], eax
mov eax, 1
mov byte [rsp + 0x48], 1
mov byte [rsp + 0x40], 5
mov byte [rsp + 0x38], 0
mov word [rsp + 0x30], ax
mov byte [rcx + 0x20], 1
mov rcx, r14
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], r9d
mov r9d, r12d
call fcn.140061f50
mov dword [rsp + 0x78], 1
jmp 0x14006bdf2
xor r9d, r9d
mov rbp, qword [rsp + 0x148]
cmp qword [rbp + 0x10], 0
je 0x14006bd21
mov rax, qword [r14 + 0xa0]
mov rcx, r14
test rax, rax
mov r8d, r12d
mov rdx, rbp
cmovne rcx, rax
or eax, 0xffffffff
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], r9
mov r9d, dword [rsp + 0x160]
mov byte [rcx + 0x20], 1
mov rcx, r14
call fcn.140062520
mov dword [rsp + 0x78], 1
jmp 0x14006bdf2
mov rax, qword [rbx + 0x18]
movsxd rcx, dword [rbx + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14006bd5f
xor r8d, r8d
mov dword [rsp + 0x20], r9d
mov r9d, dword [rsp + 0x188]
mov rcx, rbx
lea edx, [r8 + 0xd]
call fcn.140033940
jmp 0x14006bdf2
mov edx, dword [rsp + 0x188]
lea eax, [rcx + 1]
mov dword [rbx + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x68]
mov qword [rax + rcx*8], reloc.WS2_32.dll_listen
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r9d
mov qword [rax + rcx*8 + 0x10], r9
jmp 0x14006bdf5
mov eax, 2
mov edi, eax
movzx eax, word [rbp + 0x44]
mov r8, qword [rbp]
mov rcx, qword [r14]
test ax, ax
js 0x14006bdc9
mov r9, qword [rbp + 8]
lea rdx, str._s._s
movsx rax, ax
shl rax, 5
mov r9, qword [rax + r9]
call fcn.140014570
mov edx, 0x613
jmp 0x14006bdda
lea rdx, str._s.rowid
call fcn.140014570
mov edx, 0xa13
mov byte [rsp + 0x28], 2
mov r9, rax
mov r8d, edi
mov byte [rsp + 0x20], 0xff
mov rcx, r14
call fcn.14005f740
xor r9d, r9d
mov rax, qword [rbx + 0x18]
mov rdx, qword [rax + 0x58]
test rdx, rdx
je 0x14006be10
mov eax, dword [rbx + 0xb8]
not esi
movsxd rcx, esi
mov dword [rdx + rcx*4], eax
mov edi, dword [rsp + 0x74]
test edi, edi
je 0x14006beb0
movsxd r8, dword [rbx + 0xb8]
mov rax, qword [rbx + 0x18]
mov dword [rsp + 0x90], r8d
cmp dword [rax + 0x3c], r8d
jg 0x14006be55
mov dword [rsp + 0x20], r9d
xor r8d, r8d
xor r9d, r9d
mov rcx, rbx
lea edx, [r9 + 0xd]
call fcn.140033940
mov dword [rsp + 0x90], eax
jmp 0x14006be7d
lea rcx, [r8 + r8*2]
lea eax, [r8 + 1]
mov dword [rbx + 0xb8], eax
mov rax, qword [rbx + 0x68]
mov qword [rax + rcx*8], reloc.WS2_32.dll_listen
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], r9
mov edx, dword [rbx + 0xb8]
mov ecx, edi
test edi, edi
jns 0x14006be8c
lea ecx, [rdx - 1]
mov rax, qword [rbx]
cmp byte [rax + 0x55], 0
je 0x14006be9e
lea rax, [0x1401763d0]
jmp 0x14006bead
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x68]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
mov rbp, qword [rbp + 0x10]
xor r10d, r10d
mov dword [rsp + 0x8c], r10d
mov edi, r10d
mov qword [rsp + 0xa8], rbp
test rbp, rbp
je 0x14006cb1b
mov rsi, qword [rsp + 0x150]
mov r12d, r10d
mov qword [rsp + 0xb0], r10
nop word [rax + rax]
cmp dword [rsi + r12*4], 0
je 0x14006cae0
cmp byte [rsp + 0x60], 0
jne 0x14006bf1b
mov rdx, qword [rsp + 0x148]
lea r8d, [r15 + 1]
mov rcx, rbx
call fcn.140069800
mov byte [rsp + 0x60], 1
mov eax, dword [rsp + 0x160]
add eax, edi
mov rdi, qword [rbx + 0x18]
mov dword [rsp + 0x6c], eax
movsxd r14, dword [rdi + 0x54]
lea eax, [r14 + 1]
mov dword [rdi + 0x54], eax
lea eax, [r14 - 1]
test r14d, eax
jne 0x14006bf5f
mov rdx, qword [rdi + 0x58]
lea eax, [r14*2 + 1]
mov rcx, qword [rdi]
movsxd r8, eax
shl r8, 2
call fcn.140012890
mov qword [rdi + 0x58], rax
mov rcx, qword [rdi + 0x58]
test rcx, rcx
je 0x14006bf6f
or edx, 0xffffffff
mov dword [rcx + r14*4], edx
cmp qword [rbp + 0x48], 0
not r14d
mov dword [rsp + 0x88], r14d
je 0x14006c04d
mov rax, qword [rbx + 0x18]
movsxd rcx, dword [rbx + 0xb8]
mov edx, dword [rsi + r12*4]
cmp dword [rax + 0x3c], ecx
jg 0x14006bfb5
xor eax, eax
mov r9d, edx
xor r8d, r8d
mov dword [rsp + 0x20], eax
mov rcx, rbx
lea edx, [rax + 0x3b]
call fcn.140033940
xor r8d, r8d
jmp 0x14006bfdf
lea eax, [rcx + 1]
xor r8d, r8d
mov dword [rbx + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x68]
mov qword [rax + rcx*8], 0x3b
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], r8
mov r13, qword [rsp + 0x140]
lea eax, [r15 + 1]
mov rsi, qword [r13]
mov dword [r13 + 0x44], eax
mov rdx, qword [rbp + 0x48]
test rdx, rdx
je 0x14006c00f
xor r9d, r9d
xor r8d, r8d
mov rcx, rsi
call fcn.14004b7b0
mov rdi, rax
jmp 0x14006c012
mov rdi, r8
cmp byte [rsi + 0x55], 0
jne 0x14006c02c
mov r9d, reloc.WS2_32.dll_recv
mov r8d, r14d
mov rdx, rdi
mov rcx, r13
call fcn.140052210
test rdi, rdi
je 0x14006c03c
mov rdx, rdi
mov rcx, rsi
call fcn.14004b520
mov rsi, qword [rsp + 0x150]
xor r10d, r10d
mov dword [r13 + 0x44], r10d
jmp 0x14006c058
mov r13, qword [rsp + 0x140]
xor r10d, r10d
mov r15d, dword [rsi + r12*4]
inc r15d
mov dword [rsp + 0x70], r15d
cmp r10w, word [rbp + 0x60]
jae 0x14006c1cf
mov ebp, r15d
mov r14, r10
mov r12d, ebp
mov r15, r10
neg r12d
nop
mov rcx, qword [rsp + 0xa8]
mov rax, qword [rcx + 8]
movsx edx, word [rax + r14]
cmp edx, 0xfffffffe
jne 0x14006c0fb
mov eax, dword [rsp + 0x168]
mov rsi, qword [r13]
inc eax
mov dword [r13 + 0x44], eax
mov rax, qword [rcx + 0x50]
mov rdx, qword [rax + r15 + 8]
test rdx, rdx
je 0x14006c0c8
xor r9d, r9d
xor r8d, r8d
mov rcx, rsi
call fcn.14004b7b0
mov rdi, rax
jmp 0x14006c0cb
mov rdi, r10
cmp byte [rsi + 0x55], 0
jne 0x14006c0df
mov r8d, ebp
mov rdx, rdi
mov rcx, r13
call fcn.1400516e0
test rdi, rdi
je 0x14006c0ef
mov rdx, rdi
mov rcx, rsi
call fcn.14004b520
xor r10d, r10d
mov dword [r13 + 0x44], r10d
jmp 0x14006c188
cmp edx, 0xffffffff
je 0x14006c120
mov rax, qword [rsp + 0x148]
movsx eax, word [rax + 0x44]
cmp edx, eax
je 0x14006c120
mov r8d, dword [rsp + 0x168]
inc r8d
add r8d, edx
jmp 0x14006c128
mov r8d, dword [rsp + 0x168]
mov rax, qword [rbx + 0x18]
movsxd rcx, dword [rbx + 0xb8]
sar edx, 0x1f
and edx, 1
add edx, 0x41
cmp dword [rax + 0x3c], ecx
jg 0x14006c156
mov r9d, ebp
mov dword [rsp + 0x20], r10d
mov rcx, rbx
call fcn.140033940
xor r10d, r10d
jmp 0x14006c188
lea eax, [rcx + 1]
mov dword [rbx + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x68]
mov byte [rax + rcx*8], dl
mov word [rax + rcx*8 + 2], r10w
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], ebp
mov dword [rax + rcx*8 + 0xc], r10d
mov qword [rax + rcx*8 + 0x10], r10
mov byte [rax + rcx*8 + 1], 0
mov rax, qword [rsp + 0xa8]
inc ebp
add r14, 2
add r15, 0x28
movzx eax, word [rax + 0x60]
lea ecx, [r12 + rbp]
cmp ecx, eax
jl 0x14006c080
mov rbp, qword [rsp + 0xa8]
mov r14d, dword [rsp + 0x88]
mov r15d, dword [rsp + 0x70]
mov r12, qword [rsp + 0xb0]
mov rsi, qword [rsp + 0x150]
mov rax, qword [rbx + 0x18]
movsxd rcx, dword [rbx + 0xb8]
mov edx, dword [rsi + r12*4]
movzx r8d, word [rbp + 0x60]
cmp dword [rax + 0x3c], ecx
jg 0x14006c204
mov dword [rsp + 0x20], edx
mov r9d, r8d
mov r8d, r15d
mov edx, 0x65
mov rcx, rbx
call fcn.140033940
xor r10d, r10d
jmp 0x14006c22f
lea eax, [rcx + 1]
mov dword [rbx + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x68]
mov dword [rax + rcx*8], 0x65
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], r10
cmp dword [rsp + 0x170], 0
mov r12, qword [rsp + 0x80]
je 0x14006c275
cmp r12, rbp
jne 0x14006c275
cmp byte [rsp + 0x178], 0
jne 0x14006c275
mov rax, qword [rbx + 0x18]
mov rdx, qword [rax + 0x58]
test rdx, rdx
je 0x14006cae0
mov eax, dword [rbx + 0xb8]
not r14d
movsxd rcx, r14d
mov dword [rdx + rcx*4], eax
jmp 0x14006cae0
movzx esi, byte [rbp + 0x62]
test esi, esi
jne 0x14006c287
mov rsi, qword [rsp + 0x150]
jmp 0x14006c250
movzx eax, byte [rsp + 0x180]
cmp al, 0xa
je 0x14006c298
movzx esi, al
jmp 0x14006c2a3
cmp esi, 0xa
mov eax, 2
cmove esi, eax
cmp qword [rsp + 0xb0], 0
mov dword [rsp + 0x94], esi
jne 0x14006c37a
cmp qword [rbp + 0x28], 0
jne 0x14006c37a
cmp r12, rbp
jne 0x14006c37a
cmp esi, 5
jne 0x14006c37a
mov r9, qword [rsp + 0x98]
test dword [r9 + 0x2c], 0x40000
je 0x14006c344
mov rax, qword [r13]
mov edi, r10d
mov r8, r10
test dword [rax + 0x2c], 0x1000000
je 0x14006c319
mov rdx, qword [rsp + 0x148]
mov rcx, r13
call fcn.140081770
mov r9, qword [rsp + 0x98]
mov r8, rax
xor r10d, r10d
mov rdx, r8
test r8, r8
je 0x14006c336
cmp byte [rdx + 0x10], 0x6d
jne 0x14006c32d
movzx ecx, byte [rdx + 0x11]
or edi, ecx
mov rdx, qword [rdx + 0x40]
test rdx, rdx
jne 0x14006c321
test edi, edi
mov rax, r10
cmovne rax, r8
test rax, rax
jne 0x14006c37a
test dword [r9 + 0x2c], 0x80000
je 0x14006c36a
mov rax, qword [rsp + 0x148]
cmp qword [rax + 0x20], 0
jne 0x14006c37a
mov rcx, rax
call fcn.140067720
test rax, rax
jne 0x14006c37a
mov rsi, qword [rsp + 0x150]
xor r10d, r10d
jmp 0x14006c250
mov rax, qword [rbx + 0x18]
movsxd rdx, dword [rbx + 0xb8]
movzx edi, word [rbp + 0x5e]
mov r8d, dword [rsp + 0x6c]
cmp dword [rax + 0x3c], edx
jg 0x14006c3b4
mov r9d, r14d
mov dword [rsp + 0x20], r15d
mov edx, 0x1c
mov rcx, rbx
call fcn.140033940
mov r8d, dword [rsp + 0x6c]
mov edx, eax
xor r10d, r10d
jmp 0x14006c3e3
lea rcx, [rdx + rdx*2]
xor r10d, r10d
lea eax, [rdx + 1]
mov dword [rbx + 0xb8], eax
mov rax, qword [rbx + 0x68]
mov dword [rax + rcx*8], 0x1c
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], r14d
mov dword [rax + rcx*8 + 0xc], r15d
mov qword [rax + rcx*8 + 0x10], r10
mov rax, qword [rbx]
cmp byte [rax + 0x55], 0
jne 0x14006c400
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x68]
mov byte [rax + rcx*8 + 1], 0xf5
mov dword [rax + rcx*8 + 0x10], edi
cmp rbp, r12
je 0x14006c463
mov edx, dword [rsp + 0x68]
cmp edx, 1
jne 0x14006c434
movzx eax, byte [r13 + 0x1f]
test al, al
jne 0x14006c421
inc dword [r13 + 0x38]
mov r15d, dword [r13 + 0x38]
jmp 0x14006c463
dec al
movzx eax, al
mov byte [r13 + 0x1f], al
mov r15d, dword [r13 + rax*4 + 0x18c]
jmp 0x14006c463
mov ecx, dword [r13 + 0x28]
mov r15d, dword [r13 + 0x2c]
mov dword [rsp + 0x64], r15d
cmp edx, ecx
jg 0x14006c455
lea eax, [r15 + rdx]
sub ecx, edx
mov dword [r13 + 0x2c], eax
mov dword [r13 + 0x28], ecx
jmp 0x14006c468
mov eax, dword [r13 + 0x38]
lea r15d, [rax + 1]
add eax, edx
mov dword [r13 + 0x38], eax
mov dword [rsp + 0x64], r15d
mov edi, dword [rsp + 0x170]
test edi, edi
jne 0x14006c47c
cmp esi, 5
jne 0x14006c8a5
mov r13, qword [rsp + 0x148]
test byte [r13 + 0x40], 0x20
jne 0x14006c56b
mov rax, qword [rbx + 0x18]
movsxd rcx, dword [rbx + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14006c4b9
mov r9d, r15d
mov dword [rsp + 0x20], r10d
mov edx, 0x83
mov rcx, rbx
call fcn.140033940
xor r10d, r10d
jmp 0x14006c4e5
lea eax, [rcx + 1]
mov dword [rbx + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x68]
mov dword [rax + rcx*8], 0x83
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], r15d
mov dword [rax + rcx*8 + 0xc], r10d
mov qword [rax + rcx*8 + 0x10], r10
test edi, edi
je 0x14006c8ad
mov rax, qword [rbx + 0x18]
movsxd rcx, dword [rbx + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14006c516
mov r9d, r14d
mov dword [rsp + 0x20], edi
mov r8d, r15d
mov edx, 0x4e
mov rcx, rbx
call fcn.140033940
jmp 0x14006c541
lea eax, [rcx + 1]
mov dword [rbx + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x68]
mov dword [rax + rcx*8], 0x4e
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], r14d
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], r10
mov eax, dword [rbx + 0xb8]
test eax, eax
jle 0x14006c8ad
dec eax
movsxd rcx, eax
mov rax, qword [rbx + 0x68]
lea rdx, [rcx + rcx*2]
mov ecx, 0x90
mov word [rax + rdx*8 + 2], cx
jmp 0x14006c8ad
cmp rbp, r12
je 0x14006c651
cmp r10w, word [r12 + 0x5e]
jae 0x14006c651
mov r14d, r15d
mov edi, r15d
mov r15d, dword [rsp + 0x6c]
neg r14d
or r13d, 0xffffffff
mov rsi, r10
movzx edx, word [rbp + 0x60]
mov ecx, r10d
test edx, edx
jle 0x14006c5c0
mov rax, qword [r12 + 8]
mov r8, qword [rbp + 8]
movzx r9d, word [rsi + rax]
nop
movsxd rax, ecx
cmp r9w, word [r8 + rax*2]
je 0x14006c5c4
inc ecx
cmp ecx, edx
jl 0x14006c5b0
movzx ecx, r13w
mov rax, qword [rbx + 0x18]
movsx edx, cx
movsxd rcx, dword [rbx + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14006c5f3
mov r9d, edx
mov dword [rsp + 0x20], edi
mov edx, 0x63
mov r8d, r15d
mov rcx, rbx
call fcn.140033940
xor r10d, r10d
jmp 0x14006c61d
lea eax, [rcx + 1]
mov dword [rbx + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x68]
mov dword [rax + rcx*8], 0x63
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], r10
movzx eax, word [r12 + 0x5e]
inc edi
add rsi, 2
lea ecx, [r14 + rdi]
cmp ecx, eax
jl 0x14006c595
mov r15d, dword [rsp + 0x64]
mov r14d, dword [rsp + 0x88]
mov r13, qword [rsp + 0x148]
mov edi, dword [rsp + 0x170]
test edi, edi
je 0x14006c8ad
movzx ecx, word [r12 + 0x5e]
mov r13d, 0x4d
mov edx, dword [rbx + 0xb8]
mov eax, dword [rbp + 0x64]
add edx, ecx
and al, 3
mov dword [rsp + 0xa0], edx
cmp al, 2
mov edx, r15d
mov r15d, r10d
cmove edx, dword [rsp + 0x70]
mov dword [rsp + 0xa4], edx
test ecx, ecx
je 0x14006c8a5
mov rbp, qword [rsp + 0x80]
mov r12, r10
mov qword [rsp + 0xb8], r10
nop dword [rax + rax]
mov r10, qword [rsp + 0x140]
mov rax, qword [rbp + 0x40]
mov rdi, qword [r10]
mov rbp, qword [r12 + rax]
movzx r14d, byte [rdi + 0x52]
movzx esi, byte [rdi + 0xa9]
test rbp, rbp
je 0x14006c6f0
movzx r8d, sil
mov rdx, rbp
mov rcx, rdi
call fcn.140060650
mov r10, qword [rsp + 0x140]
mov rdi, rax
jmp 0x14006c6f4
mov rdi, qword [rdi + 0x10]
test rdi, rdi
je 0x14006c709
movzx eax, r14b
dec eax
cdqe
lea rcx, [rax + rax*4]
lea rdi, [rdi + rcx*8]
test sil, sil
jne 0x14006c72f
test rdi, rdi
je 0x14006c71a
cmp qword [rdi + 0x18], 0
jne 0x14006c72f
mov r9, rbp
mov r8, rdi
movzx edx, r14b
mov rcx, r10
call fcn.140060550
mov rdi, rax
mov rbp, qword [rsp + 0x80]
mov eax, 0x4e
mov rsi, qword [rsp + 0xb8]
mov r14d, dword [rsp + 0x88]
mov r11d, r14d
mov r10d, dword [rsp + 0x170]
movzx edx, word [rbp + 0x5e]
mov rcx, qword [rbp + 8]
dec edx
movsxd r9, dword [rbx + 0xb8]
cmp r15d, edx
cmovne r11d, dword [rsp + 0xa0]
cmove r13d, eax
mov rax, qword [rbx + 0x18]
inc r10d
movsx r8d, word [rcx + rsi]
add r10d, r8d
mov dword [rsp + 0xa0], r11d
cmp dword [rax + 0x3c], r9d
jg 0x14006c7b9
mov eax, dword [rsp + 0xa4]
mov r9d, r11d
add eax, r15d
mov r8d, r10d
mov edx, r13d
mov dword [rsp + 0x20], eax
mov rcx, rbx
call fcn.140033940
mov r9d, eax
jmp 0x14006c7f7
lea eax, [r9 + 1]
mov dword [rbx + 0xb8], eax
lea rcx, [r9 + r9*2]
mov rax, qword [rbx + 0x68]
mov byte [rax + rcx*8], r13b
mov dword [rax + rcx*8 + 4], r10d
mov dword [rax + rcx*8 + 8], r11d
lea rdx, [rax + rcx*8]
mov eax, dword [rsp + 0xa4]
xor ecx, ecx
add eax, r15d
mov word [rdx + 2], cx
mov dword [rdx + 0xc], eax
mov qword [rdx + 0x10], rcx
mov byte [rdx + 1], cl
mov rcx, qword [rbx]
cmp byte [rcx + 0x55], 0
je 0x14006c80f
mov r8, rdi
mov edx, 0xfffffffd
call fcn.1400347a0
jmp 0x14006c854
test r9d, r9d
jns 0x14006c81e
mov r9d, dword [rbx + 0xb8]
dec r9d
movsxd rax, r9d
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x68]
cmp byte [rax + rcx*8 + 1], 0
lea rdx, [rax + rcx*8]
je 0x14006c847
mov r9d, 0xfffffffd
mov r8, rdi
mov rcx, rbx
call fcn.1400349e0
jmp 0x14006c854
test rdi, rdi
je 0x14006c854
mov qword [rdx + 0x10], rdi
mov byte [rdx + 1], 0xfd
mov eax, dword [rbx + 0xb8]
test eax, eax
jle 0x14006c875
dec eax
movsxd rcx, eax
mov rax, qword [rbx + 0x68]
lea rdx, [rcx + rcx*2]
mov ecx, 0x90
mov word [rax + rdx*8 + 2], cx
movzx eax, word [rbp + 0x5e]
add rsi, 2
inc r15d
mov qword [rsp + 0xb8], rsi
add r12, 8
cmp r15d, eax
jl 0x14006c6b0
mov rbp, qword [rsp + 0xa8]
mov r12, qword [rsp + 0x80]
mov r13, qword [rsp + 0x148]
mov edx, dword [rsp + 0x94]
test edx, edx
je 0x14006c978
cmp edx, 3
jbe 0x14006c957
cmp edx, 4
jne 0x14006c978
mov rax, qword [rbx + 0x18]
movsxd rcx, dword [rbx + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14006c910
mov r9d, dword [rsp + 0x188]
xor eax, eax
xor r8d, r8d
mov dword [rsp + 0x20], eax
mov rcx, rbx
lea edx, [rax + 0xd]
call fcn.140033940
mov rsi, qword [rsp + 0x140]
mov edi, dword [rsp + 0x64]
mov r15d, dword [rsp + 0x68]
jmp 0x14006ca4a
mov edx, dword [rsp + 0x188]
lea eax, [rcx + 1]
mov rsi, qword [rsp + 0x140]
lea rcx, [rcx + rcx*2]
mov edi, dword [rsp + 0x64]
xor r10d, r10d
mov r15d, dword [rsp + 0x68]
mov dword [rbx + 0xb8], eax
mov rax, qword [rbx + 0x68]
mov qword [rax + rcx*8], reloc.WS2_32.dll_listen
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r10d
mov qword [rax + rcx*8 + 0x10], r10
jmp 0x14006ca4d
mov rsi, qword [rsp + 0x140]
mov r8, rbp
mov rcx, rsi
call fcn.14005f800
mov edi, dword [rsp + 0x64]
mov r15d, dword [rsp + 0x68]
jmp 0x14006ca4a
mov rsi, qword [rsp + 0x140]
xor r10d, r10d
mov rcx, rsi
mov r8d, r10d
mov rax, qword [rsi + 0xa0]
test rax, rax
cmovne rcx, rax
mov rax, qword [rsp + 0x98]
mov byte [rcx + 0x20], 1
test dword [rax + 0x2c], 0x40000
je 0x14006c9f5
mov rax, qword [rsi]
mov edi, r10d
mov r9d, r10d
test dword [rax + 0x2c], 0x1000000
je 0x14006c9cf
mov rdx, r13
mov rcx, rsi
call fcn.140081770
mov r9, rax
xor r10d, r10d
mov rdx, r9
test r9, r9
je 0x14006c9ec
cmp byte [rdx + 0x10], 0x6d
jne 0x14006c9e3
movzx ecx, byte [rdx + 0x11]
or edi, ecx
mov rdx, qword [rdx + 0x40]
test rdx, rdx
jne 0x14006c9d7
test edi, edi
mov r8, r10
cmovne r8, r9
mov ecx, dword [rsp + 0x6c]
cmp rbp, r12
mov r15d, dword [rsp + 0x68]
mov rdx, r13
mov edi, dword [rsp + 0x64]
sete al
mov r9d, dword [rsp + 0x158]
mov dword [rsp + 0x50], ecx
mov rcx, rsi
mov byte [rsp + 0x48], al
mov eax, dword [rsp + 0x160]
mov byte [rsp + 0x40], 5
mov byte [rsp + 0x38], 0
mov word [rsp + 0x30], r15w
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], eax
call fcn.140061f50
mov dword [rsp + 0x78], 1
xor r10d, r10d
mov rax, qword [rbx + 0x18]
mov rdx, qword [rax + 0x58]
test rdx, rdx
je 0x14006ca69
mov eax, dword [rbx + 0xb8]
not r14d
movsxd rcx, r14d
mov dword [rdx + rcx*4], eax
cmp edi, dword [rsp + 0x70]
je 0x14006cad8
cmp r15d, 1
jne 0x14006cabb
test edi, edi
je 0x14006cad8
movzx r8d, byte [rsi + 0x1f]
cmp r8b, 8
jae 0x14006cad8
movzx edx, byte [rsi + 0x25]
lea rax, [rsi + 0xc4]
mov ecx, r10d
test edx, edx
je 0x14006caa5
cmp dword [rax + 0xc], edi
je 0x14006cab5
inc ecx
add rax, 0x14
cmp ecx, edx
jl 0x14006ca96
movzx eax, r8b
mov dword [rsi + rax*4 + 0x18c], edi
inc byte [rsi + 0x1f]
jmp 0x14006cad8
mov byte [rax + 6], 1
jmp 0x14006cad8
mov r8d, r15d
mov edx, edi
mov rcx, rsi
call fcn.14004fc30
xor r10d, r10d
cmp r15d, dword [rsi + 0x28]
jle 0x14006cad8
mov dword [rsi + 0x28], r15d
mov dword [rsi + 0x2c], edi
mov rsi, qword [rsp + 0x150]
mov rbp, qword [rbp + 0x28]
inc dword [rsp + 0x8c]
inc qword [rsp + 0xb0]
mov r15d, dword [rsp + 0x168]
mov r12, qword [rsp + 0xb0]
mov edi, dword [rsp + 0x8c]
mov qword [rsp + 0xa8], rbp
test rbp, rbp
jne 0x14006bef0
mov eax, dword [rsp + 0x74]
mov r15, qword [rsp + 0xf8]
mov r14, qword [rsp + 0x100]
mov r13, qword [rsp + 0x108]
mov r12, qword [rsp + 0x110]
mov rdi, qword [rsp + 0x118]
mov rsi, qword [rsp + 0x120]
mov rbp, qword [rsp + 0x128]
test eax, eax
je 0x14006cbec
movsxd rcx, dword [rbx + 0xb8]
lea r8d, [rax + 1]
mov rax, qword [rbx + 0x18]
cmp dword [rax + 0x3c], ecx
jg 0x14006cb8c
mov r9d, r8d
mov dword [rsp + 0x20], r10d
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 0xd]
call fcn.140033940
jmp 0x14006cbb4
lea eax, [rcx + 1]
mov dword [rbx + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x68]
mov qword [rax + rcx*8], reloc.WS2_32.dll_listen
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], r10d
mov qword [rax + rcx*8 + 0x10], r10
mov ecx, dword [rsp + 0x90]
mov edx, dword [rbx + 0xb8]
test ecx, ecx
jns 0x14006cbc8
lea ecx, [rdx - 1]
mov rax, qword [rbx]
cmp byte [rax + 0x55], 0
je 0x14006cbda
lea rax, [0x1401763d0]
jmp 0x14006cbe9
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x68]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
mov rax, qword [rsp + 0x190]
mov ecx, dword [rsp + 0x78]
mov dword [rax], ecx
add rsp, 0x130
pop rbx
ret