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

Disassembly:
mov r11, rsp
push rbx
sub rsp, 0x1b0
mov rax, qword [0x14017e7c0]
xor rax, rsp
mov qword [rsp + 0x168], rax
mov rbx, qword [rcx]
mov eax, 0xffffffff
mov qword [r11 - 0x10], rbp
xorps xmm0, xmm0
mov qword [r11 - 0x18], rsi
mov rsi, rdx
mov qword [r11 - 0x20], rdi
mov rdi, r8
mov qword [r11 - 0x28], r12
mov r12, r9
mov qword [r11 - 0x30], r13
mov r13, rcx
mov qword [r11 - 0x38], r14
mov qword [r11 - 0x40], r15
xor r15d, r15d
mov dword [rsp + 0x9c], eax
xor eax, eax
mov qword [rsp + 0x80], r9
mov qword [rsp + 0xb0], r8
mov qword [rsp + 0x108], rdx
mov dword [rsp + 0xac], r15d
mov dword [rsp + 0x90], r15d
mov dword [rsp + 0xc0], r15d
mov dword [rsp + 0x8c], r15d
mov dword [rsp + 0xc8], r15d
mov dword [rsp + 0xc4], r15d
mov byte [rsp + 0x60], r15b
mov byte [rsp + 0x78], 1
mov qword [rsp + 0xd0], r15
mov dword [rsp + 0xbc], r15d
mov dword [rsp + 0xd8], r15d
mov qword [rsp + 0xe0], r15
mov qword [rsp + 0xf0], rbx
movups xmmword [r11 - 0x68], xmm0
mov qword [r11 - 0x58], rax
cmp dword [rcx + 0x4c], eax
jne 0x140079660
cmp byte [rbx + 0x50], al
jne 0x140079660
test r8, r8
je 0x140077bed
test byte [r8 + 0xa], 0x80
je 0x140077bed
cmp qword [r8 + 0x50], rax
jne 0x140077bed
mov rax, qword [r8]
mov rdx, r8
mov rcx, rbx
mov qword [rsp + 0xd0], rax
mov qword [r8], r15
call fcn.1400849e0
cmp qword [rbx + 0x320], r15
je 0x140077bb2
mov rdx, rdi
mov rcx, rbx
call fcn.14001c990
jmp 0x140077be5
cmp rdi, qword [rbx + 0x168]
jb 0x140077bdd
cmp rdi, qword [rbx + 0x170]
jae 0x140077bdd
mov rax, qword [rbx + 0x160]
mov qword [rdi], rax
dec dword [rbx + 0x14c]
mov qword [rbx + 0x160], rdi
jmp 0x140077be5
mov rcx, rdi
call fcn.14001c8f0
mov qword [rsp + 0xb0], r15
cmp qword [rsi + 0x18], r15
je 0x140079660
lea r8, [rsi + 8]
xor edx, edx
mov rcx, r13
call fcn.140062780
mov rdx, qword [rsi + 0x28]
mov rdi, rax
mov rcx, qword [r13]
call fcn.140062f80
mov qword [rsi + 0x28], rdi
test rdi, rdi
je 0x140077c22
inc word [rdi + 0x44]
lea rdx, [rsi + 8]
mov rcx, r13
call fcn.14008c9f0
test eax, eax
jne 0x140079660
test rdi, rdi
je 0x140079660
mov rdx, qword [rdi + 0x70]
mov r8d, 0xfff0bdc0
mov dword [rsp + 0x148], r8d
mov rsi, rdi
mov dword [rsp + 0x94], r8d
mov qword [rsp + 0x70], rdi
test rdx, rdx
je 0x140077ca9
mov ecx, dword [rbx + 0x28]
mov r8d, r15d
mov dword [rsp + 0x94], r15d
mov qword [rsp + 0x70], rdi
test ecx, ecx
jle 0x140077ca9
mov rax, qword [rbx + 0x20]
add rax, 0x18
mov qword [rsp + 0x70], rdi
nop word [rax + rax]
cmp qword [rax], rdx
je 0x140077ca1
inc r8d
add rax, 0x20
cmp r8d, ecx
jl 0x140077c90
mov dword [rsp + 0x94], r8d
mov rax, qword [rbx + 0x20]
xor r9d, r9d
movsxd rbp, r8d
mov edx, reloc.WS2_32.dll_select
mov r8, qword [rsi]
mov r14, rbp
shl r14, 5
mov rcx, qword [r14 + rax]
mov qword [rsp + 0x20], rcx
mov rcx, r13
call fcn.140061d70
test eax, eax
jne 0x140079660
movzx eax, byte [rsi + 0x48]
lea r15, [rsi + 0x48]
xor r12d, r12d
mov byte [rsp + 0x88], al
mov rax, qword [r13]
mov ecx, r12d
mov dword [rsp + 0xa0], ecx
mov esi, r12d
test dword [rax + 0x2c], 0x800000
je 0x140077d1a
mov rdx, qword [rsp + 0x70]
mov rcx, r13
call fcn.140091600
mov rsi, rax
mov ecx, r12d
mov rdi, rsi
test rsi, rsi
je 0x140077d54
cmp byte [rdi + 0x10], 0x6c
jne 0x140077d4b
mov rcx, qword [rdi + 0x20]
xor edx, edx
call fcn.1400940e0
mov ecx, dword [rsp + 0xa0]
test eax, eax
je 0x140077d4b
movzx eax, byte [rdi + 0x11]
or ecx, eax
mov dword [rsp + 0xa0], ecx
mov rdi, qword [rdi + 0x40]
test rdi, rdi
jne 0x140077d22
mov rdi, qword [rsp + 0x70]
test ecx, ecx
mov rax, r12
mov rdx, rdi
cmovne rax, rsi
mov rcx, r13
mov qword [rsp + 0xf8], rax
mov rax, qword [rdi + 0x18]
mov qword [rsp + 0x100], rax
call fcn.140066290
test eax, eax
jne 0x140079655
mov r8d, dword [rsp + 0xa0]
mov rdx, rdi
mov rcx, r13
call fcn.14006d2c0
test eax, eax
jne 0x140079655
mov rax, qword [r13 + 0x10]
mov qword [rsp + 0x68], rax
test rax, rax
jne 0x140077e0b
mov rcx, r13
call fcn.14003f730
mov qword [rsp + 0x68], rax
mov qword [r13 + 0x10], rax
test rax, rax
je 0x140077de5
xor r9d, r9d
mov dword [rsp + 0x20], r12d
xor r8d, r8d
mov edx, 0x99
mov rcx, rax
call fcn.14003f920
mov rax, qword [rsp + 0x68]
cmp qword [r13 + 0x1c0], r12
jne 0x140077e02
mov rax, qword [r13]
test byte [rax + 0x4c], 8
mov rax, qword [rsp + 0x68]
jne 0x140077e02
mov byte [r13 + 0x23], 1
test rax, rax
je 0x140079655
cmp byte [r13 + 0x1e], r12b
jne 0x140077e18
or dword [rax + 0x8c], 0x10
mov rcx, qword [rsp + 0xb0]
test rcx, rcx
jne 0x140077e34
cmp qword [rsp + 0xf8], r12
jne 0x140077e34
xor sil, sil
jmp 0x140077e37
mov sil, 1
mov rdi, qword [r13 + 0x1c0]
test rdi, rdi
je 0x140077e48
mov rdx, rdi
jmp 0x140077e58
mov rax, qword [rsp + 0x70]
mov rdi, r13
mov qword [rsp + 0x70], rax
mov rdx, r13
mov eax, dword [rdx + 0x16c]
mov r12d, dword [rsp + 0x94]
bt eax, r12d
jb 0x140077ea1
bts eax, r12d
mov dword [rdx + 0x16c], eax
mov rax, qword [rdx]
mov rcx, qword [rax + 0x20]
mov rax, qword [rcx + r14 + 0x18]
mov ecx, dword [rax]
mov dword [rdx + rbp*4 + 0x170], ecx
cmp r12d, 1
jne 0x140077e99
mov rcx, rdx
call fcn.14006b1c0
mov rcx, qword [rsp + 0xb0]
mov eax, dword [rdi + 0x168]
or byte [rdi + 0x20], sil
bts eax, r12d
cmp qword [rsp + 0x80], 0
mov dword [rdi + 0x168], eax
mov rdi, qword [rsp + 0x70]
jne 0x140077ee8
mov r9d, dword [rsp + 0x1e0]
mov r8, rcx
mov rcx, r13
mov dword [rsp + 0x20], r12d
mov rdx, rdi
call fcn.14007b230
test eax, eax
jne 0x1400795c9
mov r8, rdi
mov edx, r12d
mov rcx, r13
call fcn.1400774b0
mov ecx, dword [r13 + 0x54]
mov r8, qword [rsp + 0x70]
mov dword [rsp + 0xb8], eax
lea r9d, [rcx + 1]
movsx eax, word [r8 + 0x42]
mov edx, r9d
inc eax
mov dword [rsp + 0x94], r9d
add eax, ecx
mov dword [rsp + 0x98], edx
mov dword [r13 + 0x54], eax
test byte [r15], 0x10
je 0x140077f40
lea edx, [r9 + 1]
inc eax
mov dword [rsp + 0x98], edx
mov dword [r13 + 0x54], eax
mov r9, qword [rsp + 0x80]
lea eax, [rdx + 1]
xor r15d, r15d
mov dword [rsp + 0xe8], eax
test r9, r9
je 0x140078119
mov eax, dword [r9 + 8]
mov edx, r15d
test eax, eax
jle 0x140077f89
mov ecx, r15d
nop dword [rax]
mov rax, qword [r9]
lea rcx, [rcx + 0x10]
inc edx
mov dword [rax + rcx - 8], 0xffffffff
mov eax, dword [r9 + 8]
cmp edx, eax
jl 0x140077f70
mov ebp, dword [rsp + 0x78]
mov esi, r15d
test eax, eax
jle 0x14007811d
mov r14, r15
nop dword [rax + rax]
movsx rcx, word [r8 + 0x42]
mov r11d, r15d
mov r10, r15
cmp r15w, cx
jge 0x140078095
mov rax, qword [r9]
mov rdi, rcx
mov r9, qword [r8 + 8]
mov rbp, qword [r14 + rax]
nop dword [rax]
nop word [rax + rax]
movzx ecx, byte [rbp]
mov rdx, rbp
mov r8, qword [r9]
test cl, cl
je 0x140078016
lea rbx, [0x1401585e0]
nop word [rax + rax]
movzx eax, byte [r8]
movzx ecx, cl
movzx eax, byte [rax + rbx]
cmp byte [rcx + rbx], al
jne 0x14007800e
movzx ecx, byte [rdx + 1]
inc rdx
inc r8
test cl, cl
jne 0x140077ff0
mov rbx, qword [rsp + 0xf0]
movzx eax, byte [r8]
lea r8, [0x1401585e0]
movzx ecx, byte [rax + r8]
movzx eax, byte [rdx]
movzx eax, byte [rax + r8]
cmp eax, ecx
je 0x140078054
inc r11d
inc r10
add r9, 0x30
cmp r10, rdi
jl 0x140077fd0
mov ebp, dword [rsp + 0x78]
mov r8, qword [rsp + 0x70]
mov r9, qword [rsp + 0x80]
jmp 0x140078095
mov ebp, dword [rsp + 0x78]
cmp esi, r11d
mov ecx, dword [rsp + 0x9c]
mov r9, qword [rsp + 0x80]
mov r8, qword [rsp + 0x70]
movzx ebp, bpl
cmovne ebp, r15d
mov rax, qword [r9]
mov dword [rsp + 0x78], ebp
mov dword [rax + r14 + 8], r11d
movsx eax, word [r8 + 0x40]
cmp r11d, eax
cmove ecx, esi
mov dword [rsp + 0x9c], ecx
movsx eax, word [r8 + 0x42]
cmp r11d, eax
jl 0x1400780d4
mov rdi, qword [r9]
mov rcx, qword [rdi + r14]
call fcn.140057c90
test eax, eax
je 0x1400780e6
test byte [rsp + 0x88], 0x20
jne 0x1400780e6
mov r8, qword [rsp + 0x70]
xor bpl, bpl
mov r9, qword [rsp + 0x80]
mov dword [rsp + 0x78], ebp
mov dword [rsp + 0x9c], esi
inc esi
add r14, 0x10
cmp esi, dword [r9 + 8]
jl 0x140077fa0
jmp 0x14007811d
mov r8, qword [rsp + 0x108]
lea rdx, str.table__S_has_no_column_named__s
movsxd rax, esi
xor r9d, r9d
add rax, rax
mov rcx, r13
mov rax, qword [rdi + rax*8]
mov qword [rsp + 0x20], rax
call fcn.14001fcd0
mov byte [r13 + 0x1d], 1
jmp 0x140079658
mov ebp, dword [rsp + 0x78]
cmp qword [rsp + 0xb0], 0
lea r14, [0x1401823f0]
je 0x1400784e3
mov esi, dword [r13 + 0x54]
xor r9d, r9d
mov rcx, qword [rsp + 0x68]
inc esi
mov dword [r13 + 0x54], esi
mov r8d, esi
mov edx, reloc.WS2_32.dll_sendto
mov edi, dword [rcx + 0x3c]
lea eax, [rdi + 1]
mov dword [rsp + 0x20], eax
call fcn.14003f920
mov rdx, qword [rsp + 0xb0]
lea r8, [rsp + 0x150]
test bpl, bpl
mov word [rsp + 0x150], reloc.WS2_32.dll_listen
mov rbp, qword [rsp + 0x70]
mov eax, r15d
cmovne eax, dword [rsp + 0xe8]
mov rcx, r13
mov dword [rsp + 0x158], eax
mov dword [rsp + 0x154], esi
movsx eax, word [rbp + 0x42]
mov dword [rsp + 0x15c], eax
call fcn.14008e9b0
mov ecx, dword [rsp + 0x158]
mov dword [rsp + 0xbc], ecx
test eax, eax
jne 0x140079658
cmp byte [rbx + 0x50], al
jne 0x140079658
mov r8d, esi
mov dword [rsp + 0x20], r15d
mov rsi, qword [rsp + 0x68]
xor r9d, r9d
mov rcx, rsi
mov edx, reloc.WS2_32.dll_setsockopt
call fcn.14003f920
mov edx, dword [rsi + 0x3c]
cmp edx, edi
jbe 0x1400781f9
mov rax, qword [rsi + 8]
lea rcx, [rdi + rdi*2]
mov dword [rax + rcx*8 + 8], edx
mov rax, qword [rsi + 0x30]
mov ecx, dword [rsi + 0x3c]
dec ecx
cmp qword [rsp + 0xf8], 0
mov dword [rax + 0x64], ecx
mov rax, qword [rsp + 0xb0]
mov rax, qword [rax]
mov eax, dword [rax]
mov dword [rsp + 0xa8], eax
jne 0x140078328
mov rdi, qword [r13 + 0x10]
test rdi, rdi
jne 0x140078276
mov rcx, r13
call fcn.14003f730
mov qword [r13 + 0x10], rax
mov rdi, rax
test rax, rax
je 0x14007825d
xor r9d, r9d
mov dword [rsp + 0x20], r15d
xor r8d, r8d
mov edx, 0x99
mov rcx, rax
call fcn.14003f920
cmp qword [r13 + 0x1c0], 0
jne 0x140078276
mov rax, qword [r13]
test byte [rax + 0x4c], 8
jne 0x140078276
mov byte [r13 + 0x23], 1
test byte [rbp + 0x48], 0x10
mov esi, dword [rdi + 0x3c]
je 0x1400782a0
mov r8, qword [rbp + 0x60]
test r8, r8
je 0x1400782a3
mov rax, qword [r13]
nop dword [rax]
cmp qword [r8], rax
je 0x1400782a3
mov r8, qword [r8 + 0x28]
test r8, r8
jne 0x140078290
jmp 0x1400782a3
mov r8, r15
mov r9d, 1
cmp esi, r9d
jle 0x140078316
mov rax, qword [rdi]
movzx r10d, byte [rax + 0x50]
mov eax, r9d
test r9d, r9d
jns 0x1400782c1
lea eax, [rsi - 1]
test r10b, r10b
je 0x1400782cb
mov rcx, r14
jmp 0x1400782d9
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 8]
lea rcx, [rax + rcx*8]
cmp byte [rcx], 0x36
jne 0x140078303
cmp dword [rcx + 0xc], r12d
jne 0x14007830e
mov edx, dword [rcx + 8]
cmp edx, dword [rbp + 0x3c]
je 0x140078328
mov rax, qword [rbp + 0x10]
test rax, rax
je 0x14007830e
cmp edx, dword [rax + 0x58]
je 0x140078328
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x1400782f5
cmp byte [rcx], 0x93
jne 0x14007830e
cmp qword [rcx + 0x10], r8
je 0x140078328
inc r9d
cmp r9d, esi
jl 0x1400782b6
mov r14, qword [rsp + 0x68]
mov r12d, dword [rsp + 0xa8]
jmp 0x14007858b
mov ecx, dword [r13 + 0x50]
mov byte [rsp + 0x60], 1
mov dword [rsp + 0x8c], ecx
lea eax, [rcx + 1]
mov dword [r13 + 0x50], eax
movzx eax, byte [r13 + 0x1f]
test al, al
jne 0x14007835c
mov edi, dword [r13 + 0x54]
inc edi
mov esi, edi
mov dword [r13 + 0x54], edi
inc esi
mov dword [r13 + 0x54], esi
jmp 0x140078388
dec al
movzx eax, al
mov byte [r13 + 0x1f], al
mov edi, dword [r13 + rax*4 + 0x24]
test al, al
jne 0x14007837a
mov esi, dword [r13 + 0x54]
inc esi
mov dword [r13 + 0x54], esi
jmp 0x140078388
dec al
movzx eax, al
mov byte [r13 + 0x1f], al
mov esi, dword [r13 + rax*4 + 0x24]
mov r14, qword [rsp + 0x68]
mov r8d, ecx
mov r12d, dword [rsp + 0xa8]
mov rcx, r14
mov r9d, r12d
mov dword [rsp + 0x20], r15d
mov edx, reloc.WS2_32.dll_gethostname
call fcn.14003f920
mov r8d, dword [rsp + 0x154]
xor r9d, r9d
mov edx, socket
mov dword [rsp + 0x20], r15d
mov rcx, r14
call fcn.14003f920
mov r8d, dword [rsp + 0xbc]
mov r9d, r12d
mov edx, 0x31
mov ebp, eax
mov rcx, r14
mov dword [rsp + 0x20], edi
call fcn.14003f920
mov r8d, dword [rsp + 0x8c]
mov r9d, esi
mov edx, 0x4a
mov dword [rsp + 0x20], r15d
mov rcx, r14
call fcn.14003f920
mov r8d, dword [rsp + 0x8c]
mov r9d, edi
mov edx, 0x4b
mov dword [rsp + 0x20], esi
mov rcx, r14
call fcn.14003f920
mov r9d, ebp
mov dword [rsp + 0x20], r15d
xor r8d, r8d
mov edx, reloc.WS2_32.dll_recv
mov rcx, r14
call fcn.14003f920
mov edx, dword [r14 + 0x3c]
cmp edx, ebp
jbe 0x140078454
mov rax, qword [r14 + 8]
lea rcx, [rbp*2]
add rcx, rbp
mov dword [rax + rcx*8 + 8], edx
mov ecx, dword [r14 + 0x3c]
mov rax, qword [r14 + 0x30]
dec ecx
mov dword [rax + 0x64], ecx
test edi, edi
je 0x14007849a
cmp byte [r13 + 0x1f], 8
jae 0x14007849a
mov ecx, r15d
lea rax, [r13 + 0x88]
cmp dword [rax + 0xc], edi
je 0x140078496
inc ecx
add rax, 0x14
cmp ecx, 0xa
jl 0x140078476
movzx eax, byte [r13 + 0x1f]
mov dword [r13 + rax*4 + 0x24], edi
inc byte [r13 + 0x1f]
jmp 0x14007849a
mov byte [rax + 6], 1
test esi, esi
je 0x140078586
cmp byte [r13 + 0x1f], 8
jae 0x140078586
mov ecx, r15d
lea rax, [r13 + 0x88]
cmp dword [rax + 0xc], esi
je 0x1400784da
inc ecx
add rax, 0x14
cmp ecx, 0xa
jl 0x1400784b7
movzx eax, byte [r13 + 0x1f]
mov dword [r13 + rax*4 + 0x24], esi
inc byte [r13 + 0x1f]
jmp 0x140078586
mov byte [rax + 6], 1
jmp 0x140078586
mov rax, qword [rsp + 0xd0]
xorps xmm0, xmm0
mov qword [rsp + 0x110], r13
xorps xmm1, xmm1
mov dword [rsp + 0x8c], 0xffffffff
movdqu xmmword [rsp + 0x118], xmm0
movdqu xmmword [rsp + 0x128], xmm1
movdqu xmmword [rsp + 0x138], xmm0
test rax, rax
je 0x140078529
mov r12d, dword [rax]
jmp 0x14007852c
mov r12d, r15d
mov dword [rsp + 0xa8], r12d
movsxd rbp, r12d
test r12d, r12d
jle 0x140078581
mov rsi, r15
mov rdi, r15
nop dword [rax]
nop word [rax + rax]
mov rdx, qword [rax + 8]
lea rcx, [rsp + 0x110]
mov rdx, qword [rdx + rdi]
call fcn.140054310
test eax, eax
jne 0x140079658
mov rax, qword [rsp + 0xd0]
inc rsi
add rdi, 0x28
cmp rsi, rbp
jl 0x140078550
mov r14, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x80]
test rsi, rsi
jne 0x1400785a8
test r12d, r12d
jle 0x1400785a8
movsx eax, word [rbp + 0x40]
mov dword [rsp + 0x9c], eax
test byte [rbp + 0x48], 0x10
je 0x140078639
movsx r10, word [rbp + 0x42]
mov r8d, r15d
mov r9d, r15d
mov r11, r15
cmp r10, 2
jl 0x140078616
mov rdi, qword [rbp + 8]
lea rdx, [r10 - 2]
shr rdx, 1
inc rdx
lea rcx, [rdi + 0x5b]
lea r11, [rdx + rdx]
nop dword [rax]
movzx eax, byte [rcx - 0x30]
lea rcx, [rcx + 0x60]
shr eax, 1
and eax, 1
add r8d, eax
movzx eax, byte [rcx - 0x60]
shr eax, 1
and eax, 1
add r9d, eax
sub rdx, 1
jne 0x1400785e0
cmp r11, r10
jl 0x140078620
mov ecx, dword [rsp + 0xac]
lea eax, [r9 + r8]
add ecx, eax
jmp 0x140078640
test r10, r10
jle 0x140078607
mov rdi, qword [rbp + 8]
nop
lea rax, [r11 + r11*2]
add rax, rax
movzx ecx, byte [rdi + rax*8 + 0x2b]
lea eax, [r9 + r8]
shr ecx, 1
and ecx, 1
add ecx, eax
jmp 0x140078640
mov ecx, dword [rsp + 0xac]
test rsi, rsi
jne 0x140078680
test r12d, r12d
je 0x1400786a3
movsx eax, word [rbp + 0x42]
sub eax, ecx
cmp r12d, eax
je 0x1400786a3
mov r8, qword [rsp + 0x108]
lea rdx, str.table__S_has__d_columns_but__d_values_were_supplied
mov dword [rsp + 0x28], r12d
xor r9d, r9d
mov rcx, r13
mov dword [rsp + 0x20], eax
call fcn.14001fcd0
mov r12, rsi
jmp 0x140079660
mov r9d, dword [rsi + 8]
cmp r12d, r9d
je 0x1400786a3
mov r8d, r12d
lea rdx, str._d_values_for__d_columns
mov rcx, r13
call fcn.14001fcd0
mov r12, rsi
jmp 0x140079660
test byte [rbx + 0x2c], 0x80
mov r12d, 0x19
je 0x1400786d6
mov eax, dword [r13 + 0x54]
xor r8d, r8d
inc eax
mov dword [rsp + 0x20], r15d
mov r9d, eax
mov dword [rsp + 0xd8], eax
mov edx, r12d
mov dword [r13 + 0x54], eax
mov rcx, r14
call fcn.14003f920
cmp qword [rsp + 0x100], 0
jne 0x1400788d4
test byte [rbp + 0x48], 0x10
je 0x1400786f3
mov r14d, r15d
jmp 0x14007884b
mov rdx, qword [rbp + 0x70]
test rdx, rdx
je 0x14007873d
mov rax, qword [r13]
mov edi, r15d
mov dword [rsp + 0x148], r15d
movsxd rcx, dword [rax + 0x28]
test ecx, ecx
jle 0x140078742
mov rax, qword [rax + 0x20]
mov r8, rcx
add rax, 0x18
mov rcx, r15
cmp qword [rax], rdx
je 0x140078734
inc edi
inc rcx
add rax, 0x20
cmp rcx, r8
jl 0x140078721
mov dword [rsp + 0x148], edi
jmp 0x140078742
mov edi, 0xfff0bdc0
mov rcx, r13
call fcn.140088a20
mov esi, dword [r13 + 0x50]
mov r15, rax
mov eax, esi
mov rcx, r13
inc esi
mov dword [rsp + 0x90], eax
test byte [rbp + 0x48], 0x20
jne 0x14007877c
mov r9, rbp
mov dword [rsp + 0x20], gethostname
mov r8d, edi
mov edx, eax
call fcn.1400771a0
jmp 0x140078793
mov rax, qword [rbp]
mov r9b, 1
mov r8d, dword [rbp + 0x3c]
mov edx, edi
mov qword [rsp + 0x20], rax
call fcn.140061e30
mov rbp, qword [rbp + 0x10]
xor r14d, r14d
mov dword [rsp + 0xc0], esi
test rbp, rbp
je 0x140078839
mov rbx, qword [rsp + 0x70]
mov r12d, dword [rsp + 0x90]
nop word [rax + rax]
mov eax, dword [rbp + 0x64]
mov r8d, esi
and al, 3
inc esi
cmp al, 2
jne 0x1400787d6
test byte [rbx + 0x48], 0x20
cmovne r12d, r8d
mov r9d, dword [rbp + 0x58]
mov edx, gethostname
mov rcx, r15
mov dword [rsp + 0x20], edi
call fcn.14003f920
mov rdi, qword [r13 + 0x10]
mov rdx, rbp
mov rcx, r13
call fcn.14006beb0
mov r8, rax
mov edx, 0xffffffff
mov r9d, 0xfffffffa
mov rcx, rdi
call fcn.14003ff50
mov rbp, qword [rbp + 0x28]
inc r14d
mov edi, dword [rsp + 0x148]
test rbp, rbp
jne 0x1400787c0
mov rbx, qword [rsp + 0xf0]
mov dword [rsp + 0x90], r12d
mov r12d, 0x19
cmp esi, dword [r13 + 0x50]
jle 0x140078843
mov dword [r13 + 0x50], esi
mov rbp, qword [rsp + 0x70]
xor r15d, r15d
lea eax, [r14 + 1]
movsxd rcx, eax
shl rcx, 2
cmp byte [rbx + 0x50], 0
je 0x140078869
mov qword [rsp + 0xe0], r15
jmp 0x140079658
cmp byte [rbx + 0x14a], 0
je 0x140078888
movzx eax, word [rbx + 0x148]
cmp rcx, rax
jbe 0x14007890f
inc dword [rbx + 0x158]
call fcn.14001c4a0
mov qword [rsp + 0xe0], rax
test rax, rax
jne 0x14007889e
mov byte [rbx + 0x50], 1
mov r8, rax
test rax, rax
je 0x140079658
movsxd rdx, r14d
test r14d, r14d
jle 0x1400788d4
mov rcx, r15
nop word [rax + rax]
inc dword [r13 + 0x54]
mov eax, dword [r13 + 0x54]
mov dword [r8 + rcx*4], eax
inc rcx
cmp rcx, rdx
jl 0x1400788c0
movzx esi, byte [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
test sil, sil
je 0x140078962
mov r8d, dword [rsp + 0x8c]
xor r9d, r9d
mov edx, WSAGetLastError
mov dword [rsp + 0x20], r15d
mov rcx, rdi
call fcn.14003f920
mov dword [rsp + 0xc8], eax
mov eax, dword [rdi + 0x3c]
jmp 0x140078991
mov r9, qword [rbx + 0x160]
mov qword [rsp + 0xe0], r9
test r9, r9
jne 0x14007892e
inc dword [rbx + 0x15c]
jmp 0x140078888
mov rax, qword [r9]
mov qword [rbx + 0x160], rax
mov eax, dword [rbx + 0x14c]
inc eax
mov dword [rbx + 0x14c], eax
inc dword [rbx + 0x154]
cmp eax, dword [rbx + 0x150]
jle 0x14007895a
mov dword [rbx + 0x150], eax
mov r8, r9
jmp 0x1400788aa
cmp qword [rsp + 0xb0], 0
je 0x140078998
mov r8d, dword [rsp + 0x154]
xor r9d, r9d
mov edx, socket
mov dword [rsp + 0x20], r15d
mov rcx, rdi
call fcn.14003f920
mov dword [rsp + 0xc8], eax
mov dword [rsp + 0xc4], eax
mov rcx, rdi
call fcn.14003fa60
test byte [rsp + 0xa0], 1
mov r14d, eax
mov dword [rsp + 0xac], eax
je 0x140078d94
movsx ecx, word [rbp + 0x42]
mov edx, dword [r13 + 0x44]
inc ecx
mov esi, dword [r13 + 0x48]
mov dword [rsp + 0x148], esi
cmp ecx, edx
jg 0x1400789e0
lea eax, [rsi + rcx]
sub edx, ecx
mov dword [r13 + 0x48], eax
mov dword [r13 + 0x44], edx
jmp 0x1400789f4
mov eax, dword [r13 + 0x54]
lea esi, [rax + 1]
add eax, ecx
mov dword [r13 + 0x54], eax
mov dword [rsp + 0x148], esi
movsxd rax, dword [rsp + 0x9c]
test eax, eax
jns 0x140078a0e
mov r8d, 0xffffffff
mov r9d, esi
jmp 0x140078af3
cmp byte [rsp + 0x60], 0
je 0x140078a2e
mov r8d, dword [rsp + 0x8c]
mov r9d, eax
mov dword [rsp + 0x20], esi
mov edx, 0x2f
mov rcx, rdi
jmp 0x140078a83
lea rcx, [rax + rax*4]
mov rax, qword [rsp + 0xd0]
mov rax, qword [rax + 8]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je 0x140078a5b
cmp byte [rdx], 0x9f
jne 0x140078a5b
mov r8d, dword [rdx + 0x2c]
mov edx, 0x21
mov rcx, qword [r13 + 0x10]
jmp 0x140078a7b
mov r8d, esi
mov rcx, r13
call fcn.140059f40
cmp eax, esi
je 0x140078a88
mov rcx, qword [r13 + 0x10]
test rcx, rcx
je 0x140078a88
mov r8d, eax
mov edx, 0x22
mov r9d, esi
mov dword [rsp + 0x20], r15d
call fcn.14003f920
xor r9d, r9d
mov dword [rsp + 0x20], r15d
mov r8d, esi
mov edx, 0x4d
mov rcx, rdi
call fcn.14003f920
mov rbp, qword [rsp + 0x68]
mov r9d, esi
mov rcx, rbp
mov edi, eax
mov r8d, 0xffffffff
mov dword [rsp + 0x20], r15d
mov edx, r12d
call fcn.14003f920
mov edx, dword [rbp + 0x3c]
cmp edx, edi
jbe 0x140078ad3
mov rax, qword [rbp + 8]
lea rcx, [rdi + rdi*2]
mov dword [rax + rcx*8 + 8], edx
mov ecx, dword [rbp + 0x3c]
mov rdi, rbp
mov rax, qword [rbp + 0x30]
dec ecx
mov rbp, qword [rsp + 0x70]
mov r12d, 0x26
mov r8d, esi
mov r9d, r15d
mov dword [rax + 0x64], ecx
mov edx, r12d
mov dword [rsp + 0x20], r15d
mov rcx, rdi
call fcn.14003f920
cmp r15w, word [rbp + 0x42]
jge 0x140078d0e
mov rbx, qword [rsp + 0x80]
lea r14d, [rsi + 1]
mov rdx, r15
mov qword [rsp + 0xa0], r15
mov r12d, esi
mov qword [rsp + 0x78], rdx
not r12d
mov r8, r15
test rbx, rbx
jne 0x140078b41
lea r9d, [r14 + r12]
mov rcx, rdx
jmp 0x140078b7c
mov edx, dword [rbx + 8]
mov r9d, r15d
mov rcx, r15
test edx, edx
jle 0x140078b7c
mov rax, qword [rbx]
lea r8d, [r12 + r14]
add rax, 8
nop dword [rax]
cmp dword [rax], r8d
je 0x140078b74
inc r9d
inc rcx
add rax, 0x10
cmp r9d, edx
jl 0x140078b60
mov r8, qword [rsp + 0xa0]
movzx edx, byte [rsp + 0x60]
mov rax, qword [rsp + 0xd0]
test dl, dl
jne 0x140078b92
test rax, rax
je 0x140078b9d
test rbx, rbx
je 0x140078c0a
cmp r9d, dword [rbx + 8]
jl 0x140078c0a
mov rax, qword [rbp + 8]
mov rdx, qword [rax + r8 + 8]
test rdx, rdx
je 0x140078bcf
cmp byte [rdx], 0x9f
jne 0x140078bcf
mov r8d, dword [rdx + 0x2c]
mov r9d, r14d
mov rcx, qword [r13 + 0x10]
mov edx, 0x21
mov dword [rsp + 0x20], r15d
call fcn.14003f920
jmp 0x140078cc3
mov r8d, r14d
mov rcx, r13
call fcn.140059f40
cmp eax, r14d
je 0x140078cc3
mov rcx, qword [r13 + 0x10]
test rcx, rcx
je 0x140078cc3
mov r9d, r14d
mov dword [rsp + 0x20], r15d
mov r8d, eax
mov edx, 0x22
call fcn.14003f920
jmp 0x140078cc3
test dl, dl
je 0x140078c2d
mov r8d, dword [rsp + 0x8c]
mov edx, 0x2f
mov rcx, rdi
mov dword [rsp + 0x20], r14d
call fcn.14003f920
jmp 0x140078cc3
mov rax, qword [rax + 8]
lea rcx, [rcx + rcx*4]
mov rbp, qword [r13 + 0x10]
mov rsi, qword [rax + rcx*8]
test rsi, rsi
je 0x140078c55
cmp byte [rsi], 0x9f
jne 0x140078c55
mov r8d, dword [rsi + 0x2c]
mov edx, 0x21
mov rcx, rbp
jmp 0x140078c79
mov r8d, r14d
mov rdx, rsi
mov rcx, r13
call fcn.140059f40
cmp eax, r14d
je 0x140078c86
mov rcx, qword [r13 + 0x10]
test rcx, rcx
je 0x140078c86
mov r8d, eax
mov edx, 0x22
mov r9d, r14d
mov dword [rsp + 0x20], r15d
call fcn.14003f920
inc dword [r13 + 0x54]
mov r8d, r14d
mov edi, dword [r13 + 0x54]
mov edx, 0x21
mov r9d, edi
mov dword [rsp + 0x20], r15d
mov rcx, rbp
call fcn.14003f920
movzx eax, byte [rsi]
and dword [rsi + 4], 0xffffefff
mov rbp, qword [rsp + 0x70]
mov dword [rsi + 0x2c], edi
mov rdi, qword [rsp + 0x68]
mov byte [rsi + 0x36], al
mov byte [rsi], 0x9f
mov rdx, qword [rsp + 0x78]
inc r14d
mov r8, qword [rsp + 0xa0]
inc rdx
movsx eax, word [rbp + 0x42]
add r8, 0x30
mov qword [rsp + 0x78], rdx
lea ecx, [r14 + r12]
mov qword [rsp + 0xa0], r8
cmp ecx, eax
jl 0x140078b33
mov rbx, qword [rsp + 0xf0]
mov esi, dword [rsp + 0x148]
mov r14d, dword [rsp + 0xac]
cmp qword [rsp + 0x100], 0
jne 0x140078d28
lea r8d, [rsi + 1]
mov rdx, rbp
mov rcx, rdi
call fcn.1400773a0
movsx eax, word [rbp + 0x42]
mov ecx, esi
mov rdx, qword [rsp + 0xf8]
sub ecx, eax
mov eax, dword [rsp + 0x1e0]
dec ecx
mov dword [rsp + 0x40], r14d
xor r9d, r9d
mov dword [rsp + 0x38], eax
mov r8d, WSAGetLastError
mov dword [rsp + 0x30], ecx
mov rcx, r13
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], 1
call fcn.140094d50
movsx r11d, word [rbp + 0x42]
mov edx, esi
inc r11d
mov rcx, r13
mov r8d, r11d
call fcn.140059630
cmp r11d, dword [r13 + 0x44]
jle 0x140078d8f
mov dword [r13 + 0x44], r11d
mov dword [r13 + 0x48], esi
movzx esi, byte [rsp + 0x60]
cmp qword [rsp + 0x100], 0
jne 0x1400793f5
test byte [rbp + 0x48], 0x10
je 0x140078dc6
mov r9d, dword [rsp + 0x94]
xor r8d, r8d
mov edx, 0x1c
mov dword [rsp + 0x20], r15d
mov rcx, rdi
call fcn.14003f920
movsxd rax, dword [rsp + 0x9c]
test eax, eax
js 0x140078fab
test sil, sil
je 0x140078e80
mov esi, dword [rsp + 0x98]
mov r9d, eax
mov r8d, dword [rsp + 0x8c]
mov edx, 0x2f
mov dword [rsp + 0x20], esi
mov rcx, rdi
call fcn.14003f920
test byte [rbp + 0x48], 0x10
jne 0x140078f81
xor r9d, r9d
mov dword [rsp + 0x20], r15d
mov r8d, esi
mov edx, 0x4d
mov rcx, rdi
call fcn.14003f920
mov ecx, dword [rsp + 0xb8]
mov r9d, esi
mov rbp, qword [rsp + 0x68]
mov edx, 0x4a
mov r8d, dword [rsp + 0x90]
mov dword [rsp + 0x20], ecx
mov rcx, rbp
mov edi, eax
call fcn.14003f920
mov edx, dword [rbp + 0x3c]
cmp edx, edi
jbe 0x140078e61
mov rax, qword [rbp + 8]
lea rcx, [rdi + rdi*2]
mov dword [rax + rcx*8 + 8], edx
mov ecx, dword [rbp + 0x3c]
mov rdi, rbp
mov rax, qword [rbp + 0x30]
dec ecx
xor r9d, r9d
mov r8d, esi
mov edx, 0x26
mov dword [rax + 0x64], ecx
jmp 0x140079004
cmp qword [rsp + 0xb0], 0
je 0x140078eaf
mov r8d, dword [rsp + 0xbc]
mov edx, 0x21
mov esi, dword [rsp + 0x98]
add r8d, eax
mov dword [rsp + 0x20], r15d
mov r9d, esi
jmp 0x140078dfa
lea rcx, [rax + rax*4]
mov rax, qword [rsp + 0xd0]
mov rax, qword [rax + 8]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je 0x140078ee3
cmp byte [rdx], 0x9f
jne 0x140078ee3
mov r8d, dword [rdx + 0x2c]
mov edx, 0x21
mov esi, dword [rsp + 0x98]
mov rcx, qword [r13 + 0x10]
jmp 0x140078f0a
mov esi, dword [rsp + 0x98]
mov rcx, r13
mov r8d, esi
call fcn.140059f40
cmp eax, esi
je 0x140078f17
mov rcx, qword [r13 + 0x10]
test rcx, rcx
je 0x140078f17
mov r8d, eax
mov edx, 0x22
mov r9d, esi
mov dword [rsp + 0x20], r15d
call fcn.14003f920
mov rax, qword [rdi]
mov ecx, dword [rdi + 0x3c]
dec ecx
cmp byte [rax + 0x50], 0
je 0x140078f2e
lea rax, [0x1401823f0]
jmp 0x140078f46
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 8]
lea rax, [rax + rcx*8]
test rax, rax
je 0x140078e02
cmp byte [rax], 0x1c
jne 0x140078e02
test byte [rbp + 0x48], 0x10
jne 0x140078f81
mov r8d, dword [rsp + 0x90]
mov ecx, dword [rsp + 0xb8]
mov dword [rax + 4], r8d
mov dword [rax + 0xc], ecx
mov byte [rax], 0x4a
mov dword [rax + 8], esi
mov dword [rsp + 0xa0], 1
jmp 0x140079019
mov r9d, dword [rdi + 0x3c]
mov r8d, esi
add r9d, 2
mov dword [rsp + 0x20], r15d
mov edx, 0x4c
mov rcx, rdi
call fcn.14003f920
xor r9d, r9d
mov r8d, esi
mov edx, 0x26
jmp 0x140079004
test byte [rbp + 0x48], 0x10
jne 0x140078ff2
test byte [rsp + 0x88], 0x20
jne 0x140078ff2
mov ecx, dword [rsp + 0xb8]
mov edx, 0x4a
mov esi, dword [rsp + 0x98]
mov r9d, esi
mov r8d, dword [rsp + 0x90]
mov dword [rsp + 0x20], ecx
mov rcx, rdi
call fcn.14003f920
mov dword [rsp + 0xa0], 1
jmp 0x140079019
mov esi, dword [rsp + 0x98]
xor r8d, r8d
mov r9d, esi
mov edx, 0x1c
mov rcx, rdi
mov dword [rsp + 0x20], r15d
call fcn.14003f920
mov dword [rsp + 0xa0], r15d
mov eax, dword [rsp + 0xb8]
test eax, eax
jle 0x14007903d
mov rcx, qword [r13 + 0x10]
mov r9d, esi
mov r8d, eax
mov dword [rsp + 0x20], r15d
mov edx, 0x88
call fcn.14003f920
mov rdx, qword [rsp + 0x70]
mov r12d, r15d
mov ebp, r15d
cmp r15w, word [rdx + 0x42]
jge 0x140079270
mov ebx, dword [rsp + 0xa8]
lea ecx, [rsi + 1]
mov dword [rsp + 0x78], ecx
mov r14, r15
movsx eax, word [rdx + 0x40]
lea esi, [rcx + rbp]
cmp ebp, eax
jne 0x14007908c
xor r9d, r9d
mov dword [rsp + 0x20], r15d
mov r8d, esi
mov edx, 0x1d
mov rcx, rdi
call fcn.14003f920
jmp 0x140079245
mov r8, qword [rsp + 0x80]
test r8, r8
jne 0x1400790f3
mov rax, qword [rdx + 8]
test byte [rax + r14 + 0x2b], 2
je 0x1400790ec
inc r12d
cmp byte [r13 + 0x23], 0
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 8]
mov rdi, qword [rax + r14 + 8]
je 0x1400791f7
mov edx, 1
mov rcx, rdi
call fcn.140057a20
test eax, eax
je 0x1400791f7
xor r9d, r9d
mov r8d, esi
mov rdx, rdi
mov rcx, r13
call fcn.14005b0c0
jmp 0x140079240
mov eax, ebp
sub eax, r12d
jmp 0x140079117
mov edx, dword [r8 + 8]
mov eax, r15d
test edx, edx
jle 0x14007911b
mov rcx, qword [r8]
add rcx, 8
cmp dword [rcx], ebp
je 0x140079113
inc eax
add rcx, 0x10
cmp eax, edx
jl 0x140079105
mov ecx, dword [rsp + 0x78]
test eax, eax
js 0x1400790a8
test ebx, ebx
je 0x1400790a8
test r8, r8
je 0x14007912e
cmp eax, dword [r8 + 8]
jge 0x1400790a8
cmp byte [rsp + 0x60], 0
je 0x140079156
mov r8d, dword [rsp + 0x8c]
mov r9d, eax
mov edx, 0x2f
mov dword [rsp + 0x20], esi
mov rcx, rdi
call fcn.14003f920
jmp 0x140079245
cmp qword [rsp + 0xb0], 0
je 0x14007918e
mov edx, dword [rsp + 0xbc]
cmp edx, ecx
je 0x140079249
lea r8d, [rax + rdx]
mov dword [rsp + 0x20], r15d
mov edx, 0x22
mov r9d, esi
mov rcx, rdi
call fcn.14003f920
jmp 0x140079245
lea rcx, [rax + rax*4]
mov rax, qword [rsp + 0xd0]
mov rax, qword [rax + 8]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je 0x1400791c8
cmp byte [rdx], 0x9f
jne 0x1400791c8
mov r8d, dword [rdx + 0x2c]
mov r9d, esi
mov rcx, qword [r13 + 0x10]
mov edx, 0x21
mov dword [rsp + 0x20], r15d
call fcn.14003f920
jmp 0x140079245
mov r8d, esi
mov rcx, r13
call fcn.140059f40
cmp eax, esi
je 0x140079245
mov rcx, qword [r13 + 0x10]
test rcx, rcx
je 0x140079245
mov r9d, esi
mov dword [rsp + 0x20], r15d
mov r8d, eax
mov edx, 0x22
call fcn.14003f920
jmp 0x140079245
test rdi, rdi
je 0x140079210
cmp byte [rdi], 0x9f
jne 0x140079210
mov r8d, dword [rdi + 0x2c]
mov edx, 0x21
mov rcx, qword [r13 + 0x10]
jmp 0x140079233
mov r8d, esi
mov rdx, rdi
mov rcx, r13
call fcn.140059f40
cmp eax, esi
je 0x140079240
mov rcx, qword [r13 + 0x10]
test rcx, rcx
je 0x140079240
mov r8d, eax
mov edx, 0x22
mov r9d, esi
mov dword [rsp + 0x20], r15d
call fcn.14003f920
mov rdi, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x78]
mov rdx, qword [rsp + 0x70]
inc ebp
add r14, 0x30
movsx eax, word [rdx + 0x42]
cmp ebp, eax
jl 0x140079064
mov rbx, qword [rsp + 0xf0]
mov r14d, dword [rsp + 0xac]
test byte [rdx + 0x48], 0x10
je 0x140079324
mov rdi, qword [rdx + 0x60]
test rdi, rdi
je 0x140079291
cmp qword [rdi], rbx
je 0x140079291
mov rdi, qword [rdi + 0x28]
test rdi, rdi
jne 0x140079283
mov rcx, r13
call fcn.140099b20
mov eax, dword [rsp + 0x94]
mov edx, reloc.WS2_32.dll_ntohs
mov rsi, qword [rsp + 0x70]
mov r8d, 1
mov rcx, qword [rsp + 0x68]
mov dword [rsp + 0x20], eax
movsx r9d, word [rsi + 0x42]
add r9d, 2
call fcn.14003f920
mov r8, rdi
mov r9d, 0xfffffff6
mov rdi, qword [rsp + 0x68]
mov edx, eax
mov rcx, rdi
call fcn.14003ff50
mov r8, qword [rdi + 8]
test r8, r8
je 0x14007930a
mov eax, dword [rsp + 0x1e0]
cmp eax, 0xa
movzx edx, al
mov eax, 2
cmove edx, eax
movsxd rax, dword [rdi + 0x3c]
lea rcx, [rax + rax*2]
mov byte [r8 + rcx*8 - 0x15], dl
mov rax, qword [r13 + 0x1c0]
mov rcx, r13
test rax, rax
cmovne rcx, rax
mov byte [rcx + 0x21], 1
jmp 0x1400793fa
mov eax, dword [rsp + 0x9c]
lea rcx, [rsp + 0x148]
mov esi, dword [rsp + 0x94]
mov ebp, dword [rsp + 0x90]
mov r9d, ebp
mov r12d, dword [rsp + 0xc0]
mov r8, qword [rsp + 0xe0]
mov qword [rsp + 0x50], rcx
mov ecx, dword [rsp + 0x1e0]
mov dword [rsp + 0x48], r14d
mov byte [rsp + 0x40], cl
mov rcx, r13
shr eax, 0x1f
xor al, 1
mov byte [rsp + 0x38], al
mov dword [rsp + 0x30], r15d
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], r12d
call fcn.140079d40
mov r9d, esi
mov dword [rsp + 0x28], r15d
mov rsi, qword [rsp + 0x70]
xor r8d, r8d
mov rdx, rsi
mov qword [rsp + 0x20], r15
mov rcx, r13
call fcn.140074f50
cmp dword [rsp + 0x148], 0
mov eax, r15d
mov r9d, r12d
mov r8d, ebp
sete al
mov rdx, rsi
mov dword [rsp + 0x40], eax
mov rcx, r13
mov eax, dword [rsp + 0xa0]
mov dword [rsp + 0x38], eax
mov rax, qword [rsp + 0xe0]
mov dword [rsp + 0x30], r15d
mov qword [rsp + 0x28], rax
mov eax, dword [rsp + 0x94]
mov dword [rsp + 0x20], eax
call fcn.14007ae30
jmp 0x140079409
mov rsi, qword [rsp + 0x70]
mov ebp, dword [rsp + 0x90]
mov r12d, dword [rsp + 0xc0]
test byte [rbx + 0x2c], 0x80
je 0x14007942f
mov r8d, dword [rsp + 0xd8]
mov r9d, 1
mov edx, 0x25
mov dword [rsp + 0x20], r15d
mov rcx, rdi
call fcn.14003f920
mov rdx, qword [rsp + 0xf8]
test rdx, rdx
je 0x14007947e
movsx eax, word [rsi + 0x42]
xor r9d, r9d
mov ecx, dword [rsp + 0xe8]
mov r8d, WSAGetLastError
sub ecx, eax
mov dword [rsp + 0x40], r14d
mov eax, dword [rsp + 0x1e0]
sub ecx, 2
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x30], ecx
mov rcx, r13
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], 2
call fcn.140094d50
mov r8, qword [rdi + 0x30]
not r14d
test r14d, r14d
js 0x14007949f
mov rdx, qword [r8 + 0x80]
test rdx, rdx
je 0x14007949f
mov eax, dword [rdi + 0x3c]
movsxd rcx, r14d
mov dword [rdx + rcx*4], eax
mov eax, dword [rdi + 0x3c]
dec eax
cmp byte [rsp + 0x60], 0
mov dword [r8 + 0x64], eax
je 0x140079514
mov r14d, dword [rsp + 0x8c]
mov edx, 9
mov r9d, dword [rsp + 0xc4]
mov r8d, r14d
mov rcx, rdi
mov dword [rsp + 0x20], r15d
call fcn.14003f920
mov eax, dword [rsp + 0xc8]
mov edx, dword [rdi + 0x3c]
cmp edx, eax
jbe 0x1400794ee
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 8]
mov dword [rax + rcx*8 + 8], edx
mov ecx, dword [rdi + 0x3c]
xor r9d, r9d
mov rax, qword [rdi + 0x30]
dec ecx
mov r8d, r14d
mov dword [rsp + 0x20], r15d
mov edx, 0x3d
mov dword [rax + 0x64], ecx
mov rcx, rdi
call fcn.14003f920
jmp 0x140079562
cmp qword [rsp + 0xb0], 0
je 0x140079562
mov r9d, dword [rsp + 0xc4]
xor r8d, r8d
mov edx, reloc.WS2_32.dll_recv
mov dword [rsp + 0x20], r15d
mov rcx, rdi
call fcn.14003f920
mov eax, dword [rsp + 0xc8]
mov edx, dword [rdi + 0x3c]
cmp edx, eax
jbe 0x140079556
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 8]
mov dword [rax + rcx*8 + 8], edx
mov ecx, dword [rdi + 0x3c]
mov rax, qword [rdi + 0x30]
dec ecx
mov dword [rax + 0x64], ecx
test byte [rsi + 0x48], 0x10
jne 0x1400795ce
cmp qword [rsp + 0x100], 0
jne 0x1400795ce
cmp ebp, r12d
jge 0x140079590
xor r9d, r9d
mov dword [rsp + 0x20], r15d
mov r8d, ebp
mov edx, 0x3d
mov rcx, rdi
call fcn.14003f920
mov rdi, qword [rsi + 0x10]
test rdi, rdi
je 0x1400795c9
mov rbp, qword [rsp + 0x68]
nop
xor r9d, r9d
mov dword [rsp + 0x20], r15d
mov r8d, r12d
mov edx, 0x3d
mov rcx, rbp
call fcn.14003f920
mov rdi, qword [rdi + 0x28]
inc r12d
test rdi, rdi
jne 0x1400795a0
mov rdi, rbp
jmp 0x1400795ce
mov rdi, qword [rsp + 0x68]
cmp byte [r13 + 0x1e], 0
jne 0x1400795e7
cmp qword [r13 + 0x1c8], 0
jne 0x1400795e7
mov rcx, r13
call fcn.140077870
xor r15d, r15d
test byte [rbx + 0x2c], 0x80
je 0x140079658
cmp byte [r13 + 0x1e], r15b
jne 0x140079658
cmp qword [r13 + 0x1c8], r15
jne 0x140079658
mov r8d, dword [rsp + 0xd8]
mov r9d, 1
mov edx, 0x23
mov dword [rsp + 0x20], r15d
mov rcx, rdi
call fcn.14003f920
mov edx, 1
mov rcx, rdi
call fcn.140041380
mov rax, qword [rdi]
cmp byte [rax + 0x50], r15b
jne 0x140079658
mov rcx, qword [rdi + 0x20]
lea rdx, str.rows_inserted
mov r9b, 1
mov qword [rsp + 0x20], r15
mov r8d, 0xffffffff
call fcn.14003e990
jmp 0x140079658
xor r15d, r15d
mov r12, qword [rsp + 0x80]
mov r13, qword [rsp + 0x108]
test r13, r13
je 0x140079977
cmp dword [r13], 0
jle 0x140079927
lea r14, [r13 + 0x18]
mov rcx, qword [r14 - 8]
test rcx, rcx
je 0x1400796d5
test rbx, rbx
je 0x1400796d0
cmp qword [rbx + 0x320], 0
je 0x1400796a5
mov rdx, rcx
mov rcx, rbx
call fcn.14001c990
jmp 0x1400796d5
cmp rcx, qword [rbx + 0x168]
jb 0x1400796d0
cmp rcx, qword [rbx + 0x170]
jae 0x1400796d0
mov rax, qword [rbx + 0x160]
mov qword [rcx], rax
dec dword [rbx + 0x14c]
mov qword [rbx + 0x160], rcx
jmp 0x1400796d5
call fcn.14001c8f0
mov rcx, qword [r14]
test rcx, rcx
je 0x140079729
test rbx, rbx
je 0x140079724
cmp qword [rbx + 0x320], 0
je 0x1400796f9
mov rdx, rcx
mov rcx, rbx
call fcn.14001c990
jmp 0x140079729
cmp rcx, qword [rbx + 0x168]
jb 0x140079724
cmp rcx, qword [rbx + 0x170]
jae 0x140079724
mov rax, qword [rbx + 0x160]
mov qword [rcx], rax
dec dword [rbx + 0x14c]
mov qword [rbx + 0x160], rcx
jmp 0x140079729
call fcn.14001c8f0
mov rcx, qword [r14 + 8]
test rcx, rcx
je 0x14007977e
test rbx, rbx
je 0x140079779
cmp qword [rbx + 0x320], 0
je 0x14007974e
mov rdx, rcx
mov rcx, rbx
call fcn.14001c990
jmp 0x14007977e
cmp rcx, qword [rbx + 0x168]
jb 0x140079779
cmp rcx, qword [rbx + 0x170]
jae 0x140079779
mov rax, qword [rbx + 0x160]
mov qword [rcx], rax
dec dword [rbx + 0x14c]
mov qword [rbx + 0x160], rcx
jmp 0x14007977e
call fcn.14001c8f0
mov rcx, qword [r14 + 0x58]
test rcx, rcx
je 0x1400797d3
test rbx, rbx
je 0x1400797ce
cmp qword [rbx + 0x320], 0
je 0x1400797a3
mov rdx, rcx
mov rcx, rbx
call fcn.14001c990
jmp 0x1400797d3
cmp rcx, qword [rbx + 0x168]
jb 0x1400797ce
cmp rcx, qword [rbx + 0x170]
jae 0x1400797ce
mov rax, qword [rbx + 0x160]
mov qword [rcx], rax
dec dword [rbx + 0x14c]
mov qword [rbx + 0x160], rcx
jmp 0x1400797d3
call fcn.14001c8f0
mov rdx, qword [r14 + 0x10]
mov rcx, rbx
call fcn.140062f80
mov rdx, qword [r14 + 0x18]
mov rcx, rbx
call fcn.1400857b0
mov rdx, qword [r14 + 0x40]
mov rcx, rbx
call fcn.140055a50
mov rdi, qword [r14 + 0x48]
test rdi, rdi
je 0x140079916
xor eax, eax
mov ebp, eax
cmp dword [rdi + 8], eax
jle 0x140079873
mov esi, eax
nop
mov rax, qword [rdi]
mov rcx, qword [rsi + rax]
test rcx, rcx
je 0x140079868
test rbx, rbx
je 0x140079863
cmp qword [rbx + 0x320], 0
je 0x140079838
mov rdx, rcx
mov rcx, rbx
call fcn.14001c990
jmp 0x140079868
cmp rcx, qword [rbx + 0x168]
jb 0x140079863
cmp rcx, qword [rbx + 0x170]
jae 0x140079863
mov rax, qword [rbx + 0x160]
mov qword [rcx], rax
dec dword [rbx + 0x14c]
mov qword [rbx + 0x160], rcx
jmp 0x140079868
call fcn.14001c8f0
inc ebp
add rsi, 0x10
cmp ebp, dword [rdi + 8]
jl 0x140079810
mov rcx, qword [rdi]
test rcx, rcx
je 0x1400798c7
test rbx, rbx
je 0x1400798c2
cmp qword [rbx + 0x320], 0
je 0x140079897
mov rdx, rcx
mov rcx, rbx
call fcn.14001c990
jmp 0x1400798cc
cmp rcx, qword [rbx + 0x168]
jb 0x1400798c2
cmp rcx, qword [rbx + 0x170]
jae 0x1400798c2
mov rax, qword [rbx + 0x160]
mov qword [rcx], rax
dec dword [rbx + 0x14c]
mov qword [rbx + 0x160], rcx
jmp 0x1400798cc
call fcn.14001c8f0
test rbx, rbx
je 0x14007990e
cmp qword [rbx + 0x320], 0
je 0x1400798e3
mov rdx, rdi
mov rcx, rbx
call fcn.14001c990
jmp 0x140079916
cmp rdi, qword [rbx + 0x168]
jb 0x14007990e
cmp rdi, qword [rbx + 0x170]
jae 0x14007990e
mov rax, qword [rbx + 0x160]
mov qword [rdi], rax
dec dword [rbx + 0x14c]
mov qword [rbx + 0x160], rdi
jmp 0x140079916
mov rcx, rdi
call fcn.14001c8f0
inc r15d
add r14, 0x78
cmp r15d, dword [r13]
jl 0x140079680
test rbx, rbx
je 0x14007996f
cmp qword [rbx + 0x320], 0
je 0x140079943
mov rdx, r13
mov rcx, rbx
call fcn.14001c990
jmp 0x140079977
cmp r13, qword [rbx + 0x168]
jb 0x14007996f
cmp r13, qword [rbx + 0x170]
jae 0x14007996f
mov rax, qword [rbx + 0x160]
mov qword [r13], rax
dec dword [rbx + 0x14c]
mov qword [rbx + 0x160], r13
jmp 0x140079977
mov rcx, r13
call fcn.14001c8f0
mov r14, qword [rsp + 0xd0]
xor ebp, ebp
mov r15, qword [rsp + 0x178]
mov r13, qword [rsp + 0x188]
test r14, r14
je 0x140079b14
mov esi, ebp
mov rdi, qword [r14 + 8]
cmp dword [r14], ebp
jle 0x140079a72
nop dword [rax]
mov rdx, qword [rdi]
mov rcx, rbx
call fcn.140055a50
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x140079a0f
test rbx, rbx
je 0x140079a0a
cmp qword [rbx + 0x320], rbp
je 0x1400799df
mov rdx, rcx
mov rcx, rbx
call fcn.14001c990
jmp 0x140079a0f
cmp rcx, qword [rbx + 0x168]
jb 0x140079a0a
cmp rcx, qword [rbx + 0x170]
jae 0x140079a0a
mov rax, qword [rbx + 0x160]
mov qword [rcx], rax
dec dword [rbx + 0x14c]
mov qword [rbx + 0x160], rcx
jmp 0x140079a0f
call fcn.14001c8f0
mov rcx, qword [rdi + 0x10]
test rcx, rcx
je 0x140079a63
test rbx, rbx
je 0x140079a5e
cmp qword [rbx + 0x320], rbp
je 0x140079a33
mov rdx, rcx
mov rcx, rbx
call fcn.14001c990
jmp 0x140079a63
cmp rcx, qword [rbx + 0x168]
jb 0x140079a5e
cmp rcx, qword [rbx + 0x170]
jae 0x140079a5e
mov rax, qword [rbx + 0x160]
mov qword [rcx], rax
dec dword [rbx + 0x14c]
mov qword [rbx + 0x160], rcx
jmp 0x140079a63
call fcn.14001c8f0
inc esi
add rdi, 0x28
cmp esi, dword [r14]
jl 0x1400799b0
mov rcx, qword [r14 + 8]
test rcx, rcx
je 0x140079ac6
test rbx, rbx
je 0x140079ac1
cmp qword [rbx + 0x320], rbp
je 0x140079a96
mov rdx, rcx
mov rcx, rbx
call fcn.14001c990
jmp 0x140079acb
cmp rcx, qword [rbx + 0x168]
jb 0x140079ac1
cmp rcx, qword [rbx + 0x170]
jae 0x140079ac1
mov rax, qword [rbx + 0x160]
mov qword [rcx], rax
dec dword [rbx + 0x14c]
mov qword [rbx + 0x160], rcx
jmp 0x140079acb
call fcn.14001c8f0
test rbx, rbx
je 0x140079b0c
cmp qword [rbx + 0x320], rbp
je 0x140079ae1
mov rdx, r14
mov rcx, rbx
call fcn.14001c990
jmp 0x140079b14
cmp r14, qword [rbx + 0x168]
jb 0x140079b0c
cmp r14, qword [rbx + 0x170]
jae 0x140079b0c
mov rax, qword [rbx + 0x160]
mov qword [r14], rax
dec dword [rbx + 0x14c]
mov qword [rbx + 0x160], r14
jmp 0x140079b14
mov rcx, r14
call fcn.14001c8f0
mov rdi, qword [rsp + 0xb0]
mov r14, qword [rsp + 0x180]
mov rsi, qword [rsp + 0x1a0]
test rdi, rdi
je 0x140079b8b
mov rdx, rdi
mov rcx, rbx
call fcn.1400849e0
test rbx, rbx
je 0x140079b83
cmp qword [rbx + 0x320], 0
je 0x140079b58
mov rdx, rdi
mov rcx, rbx
call fcn.14001c990
jmp 0x140079b8b
cmp rdi, qword [rbx + 0x168]
jb 0x140079b83
cmp rdi, qword [rbx + 0x170]
jae 0x140079b83
mov rax, qword [rbx + 0x160]
mov qword [rdi], rax
dec dword [rbx + 0x14c]
mov qword [rbx + 0x160], rdi
jmp 0x140079b8b
mov rcx, rdi
call fcn.14001c8f0
test r12, r12
je 0x140079cab
cmp dword [r12 + 8], 0
jle 0x140079c06
mov rdi, rbp
nop
mov rax, qword [r12]
mov rcx, qword [rdi + rax]
test rcx, rcx
je 0x140079bf9
test rbx, rbx
je 0x140079bf4
cmp qword [rbx + 0x320], 0
je 0x140079bc9
mov rdx, rcx
mov rcx, rbx
call fcn.14001c990
jmp 0x140079bf9
cmp rcx, qword [rbx + 0x168]
jb 0x140079bf4
cmp rcx, qword [rbx + 0x170]
jae 0x140079bf4
mov rax, qword [rbx + 0x160]
mov qword [rcx], rax
dec dword [rbx + 0x14c]
mov qword [rbx + 0x160], rcx
jmp 0x140079bf9
call fcn.14001c8f0
inc ebp
add rdi, 0x10
cmp ebp, dword [r12 + 8]
jl 0x140079ba0
mov rcx, qword [r12]
test rcx, rcx
je 0x140079c5b
test rbx, rbx
je 0x140079c56
cmp qword [rbx + 0x320], 0
je 0x140079c2b
mov rdx, rcx
mov rcx, rbx
call fcn.14001c990
jmp 0x140079c60
cmp rcx, qword [rbx + 0x168]
jb 0x140079c56
cmp rcx, qword [rbx + 0x170]
jae 0x140079c56
mov rax, qword [rbx + 0x160]
mov qword [rcx], rax
dec dword [rbx + 0x14c]
mov qword [rbx + 0x160], rcx
jmp 0x140079c60
call fcn.14001c8f0
test rbx, rbx
je 0x140079ca3
cmp qword [rbx + 0x320], 0
je 0x140079c77
mov rdx, r12
mov rcx, rbx
call fcn.14001c990
jmp 0x140079cab
cmp r12, qword [rbx + 0x168]
jb 0x140079ca3
cmp r12, qword [rbx + 0x170]
jae 0x140079ca3
mov rax, qword [rbx + 0x160]
mov qword [r12], rax
dec dword [rbx + 0x14c]
mov qword [rbx + 0x160], r12
jmp 0x140079cab
mov rcx, r12
call fcn.14001c8f0
mov rcx, qword [rsp + 0xe0]
mov r12, qword [rsp + 0x190]
mov rdi, qword [rsp + 0x198]
mov rbp, qword [rsp + 0x1a8]
test rcx, rcx
je 0x140079d1c
test rbx, rbx
je 0x140079d17
cmp qword [rbx + 0x320], 0
je 0x140079cec
mov rdx, rcx
mov rcx, rbx
call fcn.14001c990
jmp 0x140079d1c
cmp rcx, qword [rbx + 0x168]
jb 0x140079d17
cmp rcx, qword [rbx + 0x170]
jae 0x140079d17
mov rax, qword [rbx + 0x160]
mov qword [rcx], rax
dec dword [rbx + 0x14c]
mov qword [rbx + 0x160], rcx
jmp 0x140079d1c
call fcn.14001c8f0
mov rcx, qword [rsp + 0x168]
xor rcx, rsp
call fcn.1401386b0
add rsp, 0x1b0
pop rbx
ret