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

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xf8
mov rsi, qword [rcx + 0x10]
xor ebp, ebp
mov r12, qword [rcx]
mov r15, rdx
mov r14, rcx
mov dword [rsp + 0x48], ebp
mov qword [rsp + 0x70], rbp
mov rbx, qword [rsi + 0x18]
mov qword [rsp + 0x80], r12
mov qword [rsp + 0x98], rsi
mov edx, dword [rbx + 0x54]
mov dword [rsp + 0x40], edx
lea eax, [rdx + 1]
mov dword [rbx + 0x54], eax
lea eax, [rdx - 1]
test edx, eax
jne 0x14007a924
mov rcx, qword [rbx]
lea eax, [rdx*2 + 1]
mov rdx, qword [rbx + 0x58]
movsxd r8, eax
shl r8, 2
call fcn.140012890
mov edx, dword [rsp + 0x40]
mov qword [rbx + 0x58], rax
mov rcx, qword [rbx + 0x58]
or r8d, 0xffffffff
test rcx, rcx
je 0x14007a938
movsxd rax, edx
mov dword [rcx + rax*4], r8d
mov rbx, qword [rsi + 0x18]
not edx
mov dword [rsp + 0x40], edx
mov edx, dword [rbx + 0x54]
mov dword [rsp + 0x44], edx
lea eax, [rdx + 1]
mov dword [rbx + 0x54], eax
lea eax, [rdx - 1]
test edx, eax
jne 0x14007a97c
mov rcx, qword [rbx]
lea eax, [rdx*2 + 1]
mov rdx, qword [rbx + 0x58]
movsxd r8, eax
shl r8, 2
call fcn.140012890
mov edx, dword [rsp + 0x44]
or r8d, 0xffffffff
mov qword [rbx + 0x58], rax
mov rcx, qword [rbx + 0x58]
test rcx, rcx
je 0x14007a98c
movsxd rax, edx
mov dword [rcx + rax*4], r8d
movzx ebx, byte [r15 + 8]
not edx
mov rax, qword [r15 + 0x48]
mov rdi, qword [r15 + 0x40]
mov qword [rsp + 0x58], rax
mov eax, 1
mov dword [rsp + 0x44], edx
mov dword [rsp + 0x158], ebx
movsxd r13, dword [rdi]
mov dword [rsp + 0x50], r13d
cmp ebx, 0x74
je 0x14007aac0
mov ebx, eax
cmp byte [r12 + 0x55], bpl
jne 0x14007aab9
lea r14, [r13*4]
add r14, r13
shl r14, 3
nop dword [rax]
mov rax, qword [r15]
cmp ebx, dword [rax]
jg 0x14007aab1
mov edx, ebp
test r13d, r13d
jle 0x14007aa08
lea rcx, [rdi + 0x28]
movzx eax, word [rcx]
cmp eax, ebx
je 0x14007aa08
inc edx
add rcx, 0x28
cmp edx, r13d
jl 0x14007a9f6
cmp edx, r13d
jne 0x14007aaa4
mov edx, 0x49
mov rcx, r12
call fcn.140012710
mov r8, rax
test rax, rax
je 0x14007ab4b
mov rcx, qword [rsp + 0x140]
xor eax, eax
mov qword [r8], rax
mov rdx, rdi
mov qword [r8 + 0x10], rax
mov qword [r8 + 0x18], rax
mov qword [r8 + 0x20], rax
mov qword [r8 + 0x28], rax
mov qword [r8 + 0x30], rax
mov qword [r8 + 0x38], rax
mov qword [r8 + 0x40], rax
or eax, 0xffffffff
mov word [r8 + 0x32], ax
lea rax, [r8 + 0x48]
mov qword [r8 + 8], rax
mov byte [r8], 0x86
mov byte [rax], bpl
or dword [r8 + 4], 0x400
mov dword [r8 + 0x28], 1
mov dword [r8 + 8], ebx
call fcn.14004c3e0
mov qword [r15 + 0x40], rax
mov rdi, rax
test rax, rax
je 0x14007aaa4
inc r13d
mov word [r14 + rax + 0x28], bx
mov dword [rsp + 0x50], r13d
add r14, 0x28
inc ebx
cmp byte [r12 + 0x55], bpl
je 0x14007a9e0
mov r14, qword [rsp + 0x140]
mov ebx, dword [rsp + 0x158]
lea eax, [r13 + 1]
movsxd rdx, eax
shl rdx, 2
cmp dword [r12 + 0x158], ebp
jne 0x14007abb2
movzx eax, word [r12 + 0x15c]
cmp rdx, rax
jbe 0x14007ab55
inc dword [r12 + 0x16c]
mov rcx, r12
call fcn.1400126c0
mov r8, rax
mov qword [rsp + 0x78], rax
test r8, r8
je 0x14007abc2
mov dword [r8], r13d
cmp r13d, 1
jl 0x14007ab36
lea rdx, [r8 + 4]
mov r8d, r13d
lea rcx, [rdi + 0x28]
nop dword [rax]
movzx eax, word [rcx]
lea rdx, [rdx + 4]
dec eax
lea rcx, [rcx + 0x28]
mov dword [rdx - 4], eax
sub r8, 1
jne 0x14007ab20
mov rdx, r15
mov rcx, r14
call fcn.140078e80
mov qword [rsp + 0x88], rax
jmp 0x14007abca
mov eax, 7
jmp 0x14007bb9f
mov r8, qword [r12 + 0x178]
mov qword [rsp + 0x78], r8
test r8, r8
jne 0x14007ab74
inc dword [r12 + 0x170]
jmp 0x14007aaef
mov rax, qword [r8]
inc dword [r12 + 0x160]
mov qword [r12 + 0x178], rax
inc dword [r12 + 0x168]
mov eax, dword [r12 + 0x160]
cmp eax, dword [r12 + 0x164]
jle 0x14007aaff
mov dword [r12 + 0x164], eax
jmp 0x14007aaff
cmp byte [r12 + 0x55], bpl
je 0x14007aaef
mov qword [rsp + 0x78], rbp
mov qword [rsp + 0x88], rbp
mov qword [r15 + 0x40], rdi
mov rdx, rdi
mov rdi, qword [rsp + 0x140]
xor r8d, r8d
mov rcx, qword [rdi]
call fcn.14004bbe0
mov r14, qword [rsp + 0x58]
mov qword [r14 + 0x40], rax
cmp ebx, 0x74
jne 0x14007abfa
mov r13d, ebp
jmp 0x14007ad32
mov rax, qword [r15]
mov r12d, dword [rax]
mov eax, dword [rdi + 0x38]
lea r13d, [rax + 1]
inc eax
add eax, r12d
mov dword [rsp + 0x4c], r13d
mov dword [rdi + 0x38], eax
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14007ac3c
xor r8d, r8d
mov dword [rsp + 0x20], ebp
mov r9d, r13d
mov rcx, rsi
lea edx, [r8 + 0x38]
call fcn.140033940
jmp 0x14007ac63
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov qword [rax + rcx*8], 0x38
mov dword [rax + rcx*8 + 8], r13d
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov rcx, qword [rsp + 0x80]
mov r8d, 1
mov edx, r12d
call fcn.1400770b0
mov qword [rsp + 0x70], rax
test rax, rax
je 0x14007ad2a
mov ebx, ebp
test r12d, r12d
jle 0x14007ad23
mov r13, qword [rsp + 0x148]
lea r15, [rax + 0x20]
mov r14, rbp
mov rdi, rbp
mov rsi, rax
mov rdx, qword [r13 + 0x48]
test rdx, rdx
je 0x14007acc7
mov rcx, qword [rsp + 0x140]
mov r8d, ebx
call fcn.140078e10
test rax, rax
jne 0x14007ace4
jmp 0x14007acca
mov rax, rbp
mov rdx, qword [r13]
cmp ebx, dword [rdx]
jge 0x14007ace4
mov rdx, qword [rdx + rdi + 8]
mov rcx, qword [rsp + 0x140]
call fcn.140049ee0
mov qword [r15], rax
inc ebx
mov rax, qword [rsi + 0x18]
add r15, 8
add rdi, 0x28
mov byte [r14 + rax], bpl
inc r14
cmp ebx, r12d
jl 0x14007aca7
mov rsi, qword [rsp + 0x98]
mov r13d, dword [rsp + 0x4c]
mov r15, qword [rsp + 0x148]
mov rdi, qword [rsp + 0x140]
mov r14, qword [rsp + 0x58]
mov ebx, dword [rsp + 0x158]
mov r12, qword [rsp + 0x80]
mov qword [r15 + 0x48], rbp
lea r9, str.ORDER
mov qword [r14 + 0x50], rbp
mov rdx, r15
mov r8, qword [r15 + 0x40]
mov rcx, rdi
call fcn.140049350
cmp qword [r14 + 0x48], rbp
jne 0x14007ad6c
mov r8, qword [r14 + 0x40]
lea r9, str.ORDER
mov rdx, r14
mov rcx, rdi
call fcn.140049350
mov r8d, dword [rsp + 0x40]
mov rdx, r15
mov rcx, rdi
call fcn.140078c40
cmp dword [r15 + 0x10], ebp
je 0x14007ae53
cmp ebx, 0x74
jne 0x14007ae53
mov ebx, dword [rdi + 0x38]
inc ebx
lea r14d, [rbx + 1]
mov dword [rdi + 0x38], r14d
mov edx, dword [r15 + 0x14]
test edx, edx
je 0x14007ada8
inc edx
jmp 0x14007adac
mov edx, dword [r15 + 0x10]
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14007add5
mov r8d, edx
mov dword [rsp + 0x20], ebp
mov edx, 0x40
mov r9d, ebx
mov rcx, rsi
call fcn.140033940
jmp 0x14007adfe
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8], 0x40
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14007ae27
mov r9d, r14d
mov dword [rsp + 0x20], ebp
mov r8d, ebx
mov edx, 0x40
mov rcx, rsi
call fcn.140033940
jmp 0x14007ae58
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8], 0x40
mov dword [rax + rcx*8 + 4], ebx
mov dword [rax + rcx*8 + 8], r14d
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
jmp 0x14007ae58
mov r14d, ebp
mov ebx, ebp
mov rdx, qword [r15 + 0x58]
test rdx, rdx
je 0x14007ae69
mov rcx, r12
call fcn.14004b520
mov rdx, qword [r15 + 0x60]
mov qword [r15 + 0x58], rbp
test rdx, rdx
je 0x14007ae7e
mov rcx, r12
call fcn.14004b520
mov qword [r15 + 0x60], rbp
inc dword [rdi + 0x38]
mov r15d, dword [rdi + 0x38]
mov byte [rsp + 0xc8], reloc.WS2_32.dll_listen
mov dword [rsp + 0xd8], r15d
mov qword [rsp + 0xd0], rbp
lea eax, [r15 + 1]
mov qword [rsp + 0xdc], rbp
mov byte [rsp + 0xa0], reloc.WS2_32.dll_listen
lea r12d, [rax + 1]
mov dword [rsp + 0xb0], eax
lea ecx, [r12 + 1]
mov dword [rdi + 0x38], ecx
mov qword [rsp + 0xa8], rbp
mov qword [rsp + 0xb4], rbp
movsxd rdi, dword [rsi + 0xb8]
mov dword [rsp + 0x4c], eax
mov rax, qword [rsi + 0x18]
mov dword [rsp + 0x60], r15d
mov dword [rsp + 0x64], ecx
lea edx, [rdi + 1]
cmp dword [rax + 0x3c], edi
jg 0x14007af12
xor r9d, r9d
mov dword [rsp + 0x20], edx
mov r8d, r15d
mov rcx, rsi
lea edx, [r9 + 0xf]
call fcn.140033940
mov edi, eax
jmp 0x14007af39
mov rax, qword [rsi + 0x68]
lea rcx, [rdi + rdi*2]
mov dword [rsi + 0xb8], edx
mov dword [rax + rcx*8], recv
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], ebp
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rbp
mov rdx, qword [rsp + 0x58]
lea r8, [rsp + 0xc8]
mov rcx, qword [rsp + 0x140]
mov dword [rdx + 0x10], ebx
mov eax, dword [rcx + 0x1e4]
mov dword [rsp + 0x98], eax
call fcn.14007ea60
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14007af8b
xor r9d, r9d
mov dword [rsp + 0x20], ebp
mov r8d, r15d
mov rcx, rsi
lea edx, [r9 + 0x35]
call fcn.140033940
jmp 0x14007afb2
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8], 0x35
mov dword [rax + rcx*8 + 4], r15d
mov qword [rax + rcx*8 + 8], rbp
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsi + 0x18]
mov byte [rax + 0x1f], bpl
mov rax, qword [rsi + 0x18]
mov dword [rax + 0x28], ebp
mov edx, dword [rsi + 0xb8]
test edi, edi
jns 0x14007afce
lea edi, [rdx - 1]
mov rax, qword [rsi]
cmp byte [rax + 0x55], bpl
je 0x14007afe0
lea rax, [0x1401763d0]
jmp 0x14007afef
movsxd rax, edi
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x68]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
movsxd rcx, dword [rsi + 0xb8]
mov rax, qword [rsi + 0x18]
mov dword [rsp + 0x68], ecx
lea r8d, [rcx + 1]
cmp dword [rax + 0x3c], ecx
jg 0x14007b028
xor r9d, r9d
mov dword [rsp + 0x20], r8d
lea r8d, [r15 + 1]
mov rcx, rsi
lea edx, [r9 + 0xf]
call fcn.140033940
mov dword [rsp + 0x68], eax
jmp 0x14007b054
mov rax, qword [rsi + 0x68]
lea rcx, [rcx + rcx*2]
mov dword [rsi + 0xb8], r8d
lea edx, [r15 + 1]
mov dword [rax + rcx*8], recv
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], ebp
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsp + 0x148]
lea r8, [rsp + 0xa0]
mov rcx, qword [rsp + 0x140]
mov edi, dword [rax + 0x10]
mov ebx, dword [rax + 0x14]
mov dword [rax + 0x10], r14d
mov r14, rax
mov dword [rax + 0x14], ebp
mov rdx, r14
mov eax, dword [rcx + 0x1e4]
mov dword [rsp + 0x90], eax
call fcn.14007ea60
mov dword [r14 + 0x10], edi
lea edi, [r15 + 1]
mov dword [r14 + 0x14], ebx
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14007b0c5
xor r9d, r9d
mov dword [rsp + 0x20], ebp
mov r8d, edi
mov rcx, rsi
lea edx, [r9 + 0x35]
call fcn.140033940
jmp 0x14007b0eb
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8], 0x35
mov dword [rax + rcx*8 + 4], edi
mov qword [rax + rcx*8 + 8], rbp
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsi + 0x18]
lea r8, [rsp + 0xc8]
mov r9, qword [rsp + 0x150]
mov rdx, r14
mov rcx, qword [rsp + 0x140]
mov byte [rax + 0x1f], bpl
mov rax, qword [rsi + 0x18]
mov dword [rax + 0x28], ebp
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0x38], eax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], r13d
mov dword [rsp + 0x20], r12d
call fcn.14007a260
mov ebx, eax
mov eax, dword [rsp + 0x158]
cmp eax, 0x74
je 0x14007b149
cmp eax, 0x73
jne 0x14007b190
mov eax, dword [rsp + 0x40]
lea r8, [rsp + 0xa0]
mov r9, qword [rsp + 0x150]
mov rdx, r14
mov rcx, qword [rsp + 0x140]
mov dword [rsp + 0x38], eax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], r13d
lea r13d, [r12 + 1]
mov dword [rsp + 0x20], r13d
call fcn.14007a260
mov dword [rsp + 0x48], eax
jmp 0x14007b195
lea r13d, [r12 + 1]
mov rdx, qword [rsp + 0x70]
test rdx, rdx
je 0x14007b1f0
add dword [rdx], 0xffffffff
jne 0x14007b1f0
mov rcx, qword [rdx + 0x10]
test rcx, rcx
je 0x14007b1e8
cmp qword [rcx + 0x298], rbp
je 0x14007b1bd
call fcn.140012380
jmp 0x14007b1f0
cmp rdx, qword [rcx + 0x180]
jb 0x14007b1e8
cmp rdx, qword [rcx + 0x188]
jae 0x14007b1e8
mov rax, qword [rcx + 0x178]
mov qword [rdx], rax
dec dword [rcx + 0x160]
mov qword [rcx + 0x178], rdx
jmp 0x14007b1f0
mov rcx, rdx
call fcn.140012310
mov eax, dword [rsp + 0x158]
cmp eax, 0x75
je 0x14007b3ba
cmp eax, 0x76
je 0x14007b3ba
mov rax, qword [rsi + 0x18]
movsxd r14, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], r14d
jg 0x14007b238
mov r9d, dword [rsp + 0x48]
mov r8d, r13d
mov edx, recv
mov dword [rsp + 0x20], ebp
mov rcx, rsi
call fcn.140033940
mov r14d, eax
jmp 0x14007b267
mov edx, dword [rsp + 0x48]
lea rcx, [r14 + r14*2]
lea eax, [r14 + 1]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8], recv
mov dword [rax + rcx*8 + 4], r13d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsi + 0x18]
movsxd r13, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], r13d
jg 0x14007b296
mov r9d, dword [rsp + 0x40]
mov r8d, edi
mov edx, reloc.WS2_32.dll_recv
mov dword [rsp + 0x20], ebp
mov rcx, rsi
call fcn.140033940
mov r13d, eax
jmp 0x14007b2cb
mov edx, dword [rsp + 0x40]
lea eax, [r13 + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [r13*2]
mov rax, qword [rsi + 0x68]
add rcx, r13
mov dword [rax + rcx*8], reloc.WS2_32.dll_recv
mov dword [rax + rcx*8 + 4], edi
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14007b2f3
xor r8d, r8d
mov dword [rsp + 0x20], ebp
mov r9d, r14d
mov rcx, rsi
lea edx, [r8 + 0xd]
call fcn.140033940
jmp 0x14007b31a
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov qword [rax + rcx*8], reloc.WS2_32.dll_listen
mov dword [rax + rcx*8 + 8], r14d
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov r10, qword [rsp + 0x58]
mov r9, qword [rsp + 0x148]
movzx edx, word [r10 + 0xa]
movzx ecx, word [r9 + 0xa]
cmp cx, dx
jl 0x14007b373
movsx r8d, dx
movsx edx, cx
lea eax, [r8 + 0x31]
cmp edx, eax
jg 0x14007b3b3
lea eax, [r8 + 0x1f]
cmp edx, eax
jle 0x14007b357
inc cx
mov word [r9 + 0xa], cx
jmp 0x14007b3cf
sub edx, r8d
lea r8, str._n_n_t_t_b_b_a_a_a
movsxd rax, edx
movzx eax, byte [rax + r8]
add cx, ax
mov word [r9 + 0xa], cx
jmp 0x14007b3cf
movsx r8d, cx
movsx ecx, dx
lea eax, [r8 + 0x31]
cmp ecx, eax
jle 0x14007b38c
movzx ecx, dx
mov word [r9 + 0xa], dx
jmp 0x14007b3cf
lea eax, [r8 + 0x1f]
cmp ecx, eax
jle 0x14007b39e
lea ecx, [rdx + 1]
mov word [r9 + 0xa], cx
jmp 0x14007b3cf
sub ecx, r8d
lea r8, str._n_n_t_t_b_b_a_a_a
movsxd rax, ecx
movzx ecx, byte [rax + r8]
add cx, dx
mov word [r9 + 0xa], cx
jmp 0x14007b3cf
mov r14d, dword [rsp + 0x40]
mov r13d, r14d
mov r9, qword [rsp + 0x148]
mov r10, qword [rsp + 0x58]
mov eax, dword [rsp + 0x158]
cmp eax, 0x76
jne 0x14007b3f8
movzx eax, word [r10 + 0xa]
mov edi, r14d
cmp word [r9 + 0xa], ax
jle 0x14007b4f4
mov word [r9 + 0xa], ax
jmp 0x14007b4f4
mov rax, qword [rsi + 0x18]
movsxd rdi, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], edi
jg 0x14007b423
mov r9d, ebx
mov dword [rsp + 0x20], ebp
mov r8d, r12d
mov edx, recv
mov rcx, rsi
call fcn.140033940
mov edi, eax
jmp 0x14007b44d
lea rcx, [rdi + rdi*2]
lea eax, [rdi + 1]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8], recv
mov dword [rax + rcx*8 + 4], r12d
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14007b478
mov r9d, dword [rsp + 0x40]
mov r8d, r15d
mov edx, reloc.WS2_32.dll_recv
mov dword [rsp + 0x20], ebp
mov rcx, rsi
call fcn.140033940
jmp 0x14007b4a6
mov edx, dword [rsp + 0x40]
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8], reloc.WS2_32.dll_recv
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14007b4ce
xor r8d, r8d
mov dword [rsp + 0x20], ebp
mov r9d, edi
mov rcx, rsi
lea edx, [r8 + 0xd]
call fcn.140033940
jmp 0x14007b4f4
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov qword [rax + rcx*8], reloc.WS2_32.dll_listen
mov dword [rax + rcx*8 + 8], edi
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsi + 0x18]
movsxd r15, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], r15d
jg 0x14007b521
mov r9d, ebx
mov dword [rsp + 0x20], ebp
mov r8d, r12d
mov edx, recv
mov rcx, rsi
call fcn.140033940
mov r15d, eax
jmp 0x14007b54c
lea rcx, [r15 + r15*2]
lea eax, [r15 + 1]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8], recv
mov dword [rax + rcx*8 + 4], r12d
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
mov r12d, dword [rsp + 0x60]
cmp dword [rax + 0x3c], ecx
jg 0x14007b57a
mov r9d, r14d
mov dword [rsp + 0x20], ebp
mov r8d, r12d
mov edx, reloc.WS2_32.dll_recv
mov rcx, rsi
call fcn.140033940
jmp 0x14007b5a5
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8], reloc.WS2_32.dll_recv
mov dword [rax + rcx*8 + 4], r12d
mov dword [rax + rcx*8 + 8], r14d
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14007b5cf
mov r9d, dword [rsp + 0x44]
xor r8d, r8d
mov rcx, rsi
mov dword [rsp + 0x20], ebp
lea edx, [r8 + 0xd]
call fcn.140033940
jmp 0x14007b5f9
mov edx, dword [rsp + 0x44]
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov qword [rax + rcx*8], reloc.WS2_32.dll_listen
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov eax, dword [rsp + 0x158]
cmp eax, 0x74
jne 0x14007b60d
mov ebx, r15d
jmp 0x14007b6ce
cmp eax, 0x76
jne 0x14007b61d
mov ebx, r15d
inc r15d
jmp 0x14007b6ce
mov rax, qword [rsi + 0x18]
movsxd rbx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ebx
jg 0x14007b648
mov r9d, r14d
mov dword [rsp + 0x20], ebp
mov r8d, r12d
mov edx, reloc.WS2_32.dll_recv
mov rcx, rsi
call fcn.140033940
mov ebx, eax
jmp 0x14007b673
lea rcx, [rbx + rbx*2]
lea eax, [rbx + 1]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8], reloc.WS2_32.dll_recv
mov dword [rax + rcx*8 + 4], r12d
mov dword [rax + rcx*8 + 8], r14d
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14007b69d
mov r9d, dword [rsp + 0x44]
xor r8d, r8d
mov rcx, rsi
mov dword [rsp + 0x20], ebp
lea edx, [r8 + 0xd]
call fcn.140033940
jmp 0x14007b6c7
mov edx, dword [rsp + 0x44]
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov qword [rax + rcx*8], reloc.WS2_32.dll_listen
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov eax, dword [rsp + 0x158]
movsxd r14, dword [rsi + 0xb8]
cmp eax, 0x74
je 0x14007b6df
cmp eax, 0x73
jne 0x14007b735
mov rax, qword [rsi + 0x18]
mov r8d, dword [rsp + 0x64]
cmp dword [rax + 0x3c], r14d
jg 0x14007b706
mov r9d, dword [rsp + 0x48]
mov edx, recv
mov rcx, rsi
mov dword [rsp + 0x20], ebp
call fcn.140033940
jmp 0x14007b735
mov edx, dword [rsp + 0x48]
lea rcx, [r14 + r14*2]
lea eax, [r14 + 1]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8], recv
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14007b760
mov r9d, edi
mov dword [rsp + 0x20], ebp
lea r8d, [r12 + 1]
mov edx, reloc.WS2_32.dll_recv
mov rcx, rsi
call fcn.140033940
jmp 0x14007b78e
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
lea edx, [r12 + 1]
mov dword [rax + rcx*8], reloc.WS2_32.dll_recv
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], edi
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14007b7b8
mov r9d, dword [rsp + 0x44]
xor r8d, r8d
mov rcx, rsi
mov dword [rsp + 0x20], ebp
lea edx, [r8 + 0xd]
call fcn.140033940
jmp 0x14007b7e2
mov edx, dword [rsp + 0x44]
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov qword [rax + rcx*8], reloc.WS2_32.dll_listen
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov ecx, dword [rsp + 0x68]
mov edx, dword [rsi + 0xb8]
test ecx, ecx
jns 0x14007b7f3
lea ecx, [rdx - 1]
mov rax, qword [rsi]
cmp byte [rax + 0x55], bpl
je 0x14007b805
lea r8, [0x1401763d0]
jmp 0x14007b814
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x68]
lea r8, [rax + rcx*8]
mov dword [r8 + 8], edx
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14007b841
mov r9d, r13d
mov dword [rsp + 0x20], ebp
mov r8d, r12d
mov edx, reloc.WS2_32.dll_recv
mov rcx, rsi
call fcn.140033940
jmp 0x14007b86c
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8], reloc.WS2_32.dll_recv
mov dword [rax + rcx*8 + 4], r12d
mov dword [rax + rcx*8 + 8], r13d
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14007b897
mov r8d, dword [rsp + 0x4c]
mov r9d, edi
mov edx, reloc.WS2_32.dll_recv
mov dword [rsp + 0x20], ebp
mov rcx, rsi
call fcn.140033940
jmp 0x14007b8c4
mov edx, dword [rsp + 0x4c]
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8], reloc.WS2_32.dll_recv
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], edi
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsi + 0x18]
mov rdx, qword [rax + 0x58]
test rdx, rdx
je 0x14007b8e3
mov eax, dword [rsp + 0x44]
not eax
movsxd rcx, eax
mov eax, dword [rsi + 0xb8]
mov dword [rdx + rcx*4], eax
mov rax, qword [rsi + 0x18]
movsxd rdx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], edx
jg 0x14007b90d
xor r9d, r9d
mov dword [rsp + 0x20], ebp
xor r8d, r8d
mov rcx, rsi
lea edx, [r9 + 0x60]
call fcn.140033940
mov edx, eax
jmp 0x14007b930
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov qword [rax + rcx*8], 0x60
mov qword [rax + rcx*8 + 8], rbp
mov qword [rax + rcx*8 + 0x10], rbp
mov rcx, qword [rsi]
cmp byte [rcx + 0x55], bpl
je 0x14007b94a
mov r8, qword [rsp + 0x78]
mov edx, 0xfffffff4
call fcn.1400347a0
jmp 0x14007b993
test edx, edx
jns 0x14007b956
mov edx, dword [rsi + 0xb8]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x68]
cmp byte [rax + rcx*8 + 1], bpl
lea rdx, [rax + rcx*8]
je 0x14007b981
mov r8, qword [rsp + 0x78]
mov r9d, 0xfffffff4
mov rcx, rsi
call fcn.1400349e0
jmp 0x14007b993
mov rax, qword [rsp + 0x78]
test rax, rax
je 0x14007b993
mov qword [rdx + 0x10], rax
mov byte [rdx + 1], 0xf4
mov rax, qword [rsi + 0x18]
movsxd rdx, dword [rsi + 0xb8]
mov r9d, dword [rsp + 0xb4]
mov r8d, dword [rsp + 0xdc]
mov r10d, dword [rsp + 0x50]
cmp dword [rax + 0x3c], edx
jg 0x14007b9ce
mov edx, 0x62
mov dword [rsp + 0x20], r10d
mov rcx, rsi
call fcn.140033940
mov edx, eax
jmp 0x14007b9fa
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8], 0x62
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], r9d
mov dword [rax + rcx*8 + 0xc], r10d
mov qword [rax + rcx*8 + 0x10], rbp
mov rcx, qword [rsi]
cmp byte [rcx + 0x55], bpl
je 0x14007ba17
mov r8, qword [rsp + 0x88]
mov edx, 0xfffffffb
call fcn.1400347a0
jmp 0x14007ba66
test edx, edx
jns 0x14007ba23
mov edx, dword [rsi + 0xb8]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x68]
cmp byte [rax + rcx*8 + 1], bpl
lea rdx, [rax + rcx*8]
je 0x14007ba51
mov r8, qword [rsp + 0x88]
mov r9d, 0xfffffffb
mov rcx, rsi
call fcn.1400349e0
jmp 0x14007ba66
mov rax, qword [rsp + 0x88]
test rax, rax
je 0x14007ba66
mov qword [rdx + 0x10], rax
mov byte [rdx + 1], 0xfb
mov eax, dword [rsi + 0xb8]
mov r12d, 1
test eax, eax
jle 0x14007ba89
dec eax
movsxd rcx, eax
mov rax, qword [rsi + 0x68]
lea rdx, [rcx + rcx*2]
mov word [rax + rdx*8 + 2], r12w
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x14007bab3
mov r9d, ebx
mov dword [rsp + 0x20], r14d
mov r8d, r15d
mov edx, send
mov rcx, rsi
call fcn.140033940
jmp 0x14007bade
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x68]
mov dword [rax + rcx*8], socket
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], r14d
mov qword [rax + rcx*8 + 0x10], rbp
mov rax, qword [rsi + 0x18]
mov rdx, qword [rax + 0x58]
test rdx, rdx
je 0x14007bafd
mov eax, dword [rsp + 0x40]
not eax
movsxd rcx, eax
mov eax, dword [rsi + 0xb8]
mov dword [rdx + rcx*4], eax
mov rax, qword [rsp + 0x150]
mov rsi, qword [rsp + 0x58]
cmp byte [rax], 9
jne 0x14007bb45
mov rax, qword [rsi + 0x48]
mov rdx, rsi
test rax, rax
je 0x14007bb2c
nop dword [rax + rax]
mov rdx, rax
mov rax, qword [rax + 0x48]
test rax, rax
jne 0x14007bb20
mov r8, qword [rdx]
mov rdi, qword [rsp + 0x140]
mov rdx, qword [rdx + 0x20]
mov rcx, rdi
call fcn.140078190
jmp 0x14007bb4d
mov rdi, qword [rsp + 0x140]
mov rbx, qword [rsp + 0x148]
mov rdx, qword [rbx + 0x48]
test rdx, rdx
je 0x14007bb6e
mov rcx, qword [rsp + 0x80]
mov r8d, r12d
call fcn.140074d60
mov r9d, dword [rsp + 0x90]
mov rcx, rdi
mov r8d, dword [rsp + 0x98]
mov qword [rbx + 0x48], rsi
mov qword [rsi + 0x50], rbx
movzx edx, byte [rbx + 8]
mov dword [rsp + 0x20], ebp
call fcn.1400773b0
cmp dword [rdi + 0x30], ebp
setne bpl
mov eax, ebp
add rsp, 0xf8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret