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

Disassembly:
mov qword [rsp + 0x18], r8
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1f]
sub rsp, 0xd8
mov rbx, qword [rdx + 0x48]
mov r14, rcx
movups xmm0, xmmword [r8]
xor ecx, ecx
mov rdi, rdx
movsd xmm1, qword [r8 + 0x10]
mov r13d, ecx
mov r12, qword [r14]
mov r15d, ecx
movups xmmword [rbp - 0x41], xmm0
mov qword [rbp - 0x61], r12
movsd qword [rbp - 0x31], xmm1
mov dword [rbp + 0x67], ecx
mov qword [rbp - 0x29], rcx
cmp qword [rbx + 0x40], rcx
je 0x1800d6936
movzx ecx, byte [rdx + 8]
sub ecx, 0x74
je 0x1800d6914
sub ecx, 1
je 0x1800d690b
cmp ecx, 1
je 0x1800d6902
lea r8, str.UNION
jmp 0x1800d691b
lea r8, str.INTERSECT
jmp 0x1800d691b
lea r8, str.EXCEPT
jmp 0x1800d691b
lea r8, str.UNION_ALL
lea rdx, str.ORDER_BY_clause_should_come_after__s_not_before
mov rcx, r14
call fcn.1800fb3f0
mov dword [rbp + 0x67], 1
jmp 0x1800d76dd
cmp qword [rbx + 0x58], rcx
je 0x1800d698c
movzx ecx, byte [rdx + 8]
sub ecx, 0x74
je 0x1800d696a
sub ecx, 1
je 0x1800d6961
cmp ecx, 1
je 0x1800d6958
lea r8, str.UNION
jmp 0x1800d6971
lea r8, str.INTERSECT
jmp 0x1800d6971
lea r8, str.EXCEPT
jmp 0x1800d6971
lea r8, str.UNION_ALL
lea rdx, str.LIMIT_clause_should_come_after__s_not_before
mov rcx, r14
call fcn.1800fb3f0
mov dword [rbp + 0x67], 1
jmp 0x1800d76dd
mov rcx, r14
call fcn.180118590
movzx edx, byte [rbp - 0x41]
mov rsi, rax
cmp dl, 0xc
jne 0x1800d69bc
mov rax, qword [rdi]
mov edx, 0x39
mov r8d, dword [rbp - 0x3d]
mov rcx, rsi
mov r9d, dword [rax]
call fcn.180135530
mov dl, 0xe
mov byte [rbp - 0x41], dl
mov eax, dword [rdi + 0xc]
bt eax, 9
jae 0x1800d6a2a
mov rax, qword [rdi + 0x48]
mov r15d, 1
test rax, rax
je 0x1800d69ef
nop dword [rax]
nop dword [rax + rax]
mov rdi, rax
inc r15d
mov rax, qword [rax + 0x48]
test rax, rax
jne 0x1800d69e0
xor esi, esi
mov rbx, qword [rdi + 0x48]
lea r8, [rbp - 0x41]
mov rdx, rdi
mov qword [rdi + 0x48], rsi
mov rcx, r14
call fcn.18012ab60
mov dword [rbp + 0x67], eax
mov qword [rdi + 0x48], rbx
test eax, eax
jne 0x1800d76dd
mov word [rdi + 0xa], r15w
mov rdi, qword [rdi + 0x50]
test rdi, rdi
jne 0x1800d69f1
jmp 0x1800d76dd
bt eax, 0xd
jae 0x1800d6a44
lea r8, [rbp - 0x41]
mov rdx, rdi
mov rcx, r14
call fcn.1800cd620
jmp 0x1800d6f61
cmp qword [rdi + 0x40], r13
je 0x1800d6a5e
mov r8, qword [rbp + 0x77]
mov rdx, rdi
mov rcx, r14
call fcn.1800d7790
jmp 0x1800d76fd
movzx ecx, byte [rdi + 8]
sub ecx, 0x73
je 0x1800d70d2
sub ecx, 1
je 0x1800d6fc0
cmp ecx, 1
je 0x1800d70d2
mov r15d, dword [r14 + 0x54]
xor r9d, r9d
mov r8d, r15d
mov dword [rbp - 0x51], r15d
mov rcx, rsi
lea r13d, [r15 + 1]
lea eax, [r13 + 1]
mov dword [rbp - 0x55], r13d
lea edx, [r9 + 0x39]
mov dword [r14 + 0x54], eax
call fcn.180135530
mov dword [rdi + 0x18], eax
mov rcx, rdi
mov rax, qword [rdi + 0x50]
test rax, rax
je 0x1800d6acc
nop word [rax + rax]
mov rcx, rax
mov rax, qword [rax + 0x50]
test rax, rax
jne 0x1800d6ac0
or dword [rcx + 0xc], 0x10
lea r8, [rbp - 0x21]
mov eax, dword [r14 + 0x208]
xor r12d, r12d
mov rcx, r14
mov qword [rbp - 0x19], r12
mov rdx, rbx
mov dword [rbp + 0x7f], eax
mov word [rbp - 0x21], 1
mov dword [rbp - 0x1d], r15d
call fcn.18012ab60
mov dword [rbp + 0x67], eax
test eax, eax
jne 0x1800d76dd
xor r9d, r9d
lea edx, [rax + 0x39]
mov r8d, r13d
mov rcx, rsi
call fcn.180135530
mov dword [rdi + 0x1c], eax
lea r8, [rbp - 0x21]
mov r15, qword [rdi + 0x58]
mov rdx, rdi
mov qword [rdi + 0x58], r12
mov rcx, r14
mov qword [rdi + 0x48], r12
mov r12, qword [rdi + 0x60]
mov qword [rdi + 0x60], 0
mov eax, dword [r14 + 0x208]
mov dword [rbp + 0x6f], eax
mov dword [rbp - 0x1d], r13d
call fcn.18012ab60
mov dword [rbp + 0x67], eax
mov rax, qword [rdi + 0x48]
mov qword [rbp - 0x29], rax
mov qword [rdi + 0x48], rbx
movzx eax, word [rbx + 0xa]
cmp word [rdi + 0xa], ax
jle 0x1800d6b6b
mov word [rdi + 0xa], ax
mov rbx, qword [rdi + 0x58]
test rbx, rbx
je 0x1800d6c81
test dword [rbx + 4], 0x4000
mov r13, qword [rbp - 0x61]
jne 0x1800d6bce
mov rdx, qword [rbx + 0x10]
mov rcx, r13
call fcn.1800ff150
mov rdx, qword [rbx + 0x18]
mov rcx, r13
call fcn.1800ff150
mov eax, dword [rbx + 4]
bt eax, 0x10
jae 0x1800d6bb5
mov rdx, qword [rbx + 8]
mov rcx, r13
call fcn.1800f83c0
mov eax, dword [rbx + 4]
mov rdx, qword [rbx + 0x20]
mov rcx, r13
bt eax, 0xb
jae 0x1800d6bc9
call fcn.18012df60
jmp 0x1800d6bce
call fcn.1800ffe70
test dword [rbx + 4], 0x8000
jne 0x1800d6c81
test r13, r13
je 0x1800d6c26
cmp qword [r13 + 0x290], 0
je 0x1800d6bfa
mov rdx, rbx
mov rcx, r13
call fcn.1800d60e0
jmp 0x1800d6c81
cmp rbx, qword [r13 + 0x178]
jb 0x1800d6c26
cmp rbx, qword [r13 + 0x180]
jae 0x1800d6c26
mov rax, qword [r13 + 0x170]
mov qword [rbx], rax
dec dword [r13 + 0x158]
mov qword [r13 + 0x170], rbx
jmp 0x1800d6c81
cmp dword [0x1801e5920], 0
je 0x1800d6c78
mov rcx, qword [0x1801ee840]
test rcx, rcx
je 0x1800d6c41
call qword [0x1801e59a8]
mov rcx, rbx
call qword [0x1801e5960]
dec qword [0x1801ee598]
movsxd rcx, eax
sub qword [0x1801ee550], rcx
mov rcx, rbx
call qword [0x1801e5950]
mov rcx, qword [0x1801ee840]
test rcx, rcx
je 0x1800d6c81
call qword [0x1801e59b8]
jmp 0x1800d6c81
mov rcx, rbx
call qword [0x1801e5950]
cmp byte [rbp - 0x41], 9
mov qword [rdi + 0x58], r15
mov qword [rdi + 0x60], r12
jne 0x1800d6cbb
mov rax, qword [rdi + 0x48]
mov rdx, rdi
test rax, rax
je 0x1800d6cac
nop dword [rax + rax]
mov rdx, rax
mov rax, qword [rax + 0x48]
test rax, rax
jne 0x1800d6ca0
mov r8, qword [rdx]
mov rcx, r14
mov rdx, qword [rdx + 0x20]
call fcn.1800cbe90
mov rcx, rsi
call fcn.18013f640
mov rcx, rsi
mov r13d, eax
call fcn.18013f640
cmp dword [rdi + 0x10], 0
mov r12d, eax
mov dword [rbp - 0x59], eax
jne 0x1800d6e21
mov rcx, r14
call fcn.1800fc120
cmp qword [rdi + 0x58], 0
je 0x1800d6e21
inc dword [r14 + 0x58]
mov r12d, dword [r14 + 0x58]
mov dword [rdi + 0x10], r12d
call fcn.180118590
mov r9, qword [rdi + 0x58]
mov r15, rax
test dword [r9 + 4], 0x400
je 0x1800d6d19
mov r8d, dword [r9 + 8]
jmp 0x1800d6d59
movzx ecx, byte [r9]
sub ecx, 0x9b
je 0x1800d6d41
cmp ecx, 1
jne 0x1800d6d9f
mov rcx, qword [r9 + 0x10]
lea rdx, [rbp - 0x69]
call fcn.1800ffbb0
test eax, eax
je 0x1800d6d9f
mov r8d, dword [rbp - 0x69]
jmp 0x1800d6d5d
mov rcx, qword [r9 + 0x10]
lea rdx, [rbp - 0x49]
call fcn.1800ffbb0
test eax, eax
je 0x1800d6d9f
mov r8d, dword [rbp - 0x49]
neg r8d
mov dword [rbp - 0x69], r8d
mov r9d, r12d
mov edx, socket
mov rcx, r15
call fcn.180135530
movsxd rax, dword [rbp - 0x69]
test eax, eax
jne 0x1800d6d82
mov edx, r13d
mov rcx, r15
call fcn.18013e860
jmp 0x1800d6dd0
js 0x1800d6dd0
mov rcx, rax
call fcn.18011d910
cmp word [rdi + 0xa], ax
jle 0x1800d6dd0
or dword [rdi + 0xc], 0x4000
mov word [rdi + 0xa], ax
jmp 0x1800d6dd0
mov r8d, r12d
mov rdx, r9
mov rcx, r14
call fcn.1800fcab0
mov r8d, r12d
mov edx, 0x26
mov rcx, r15
call fcn.1801354c0
mov r9d, r13d
mov r8d, r12d
mov edx, 0x2e
mov rcx, r15
call fcn.180135530
cmp qword [rdi + 0x60], 0
je 0x1800d6e1d
inc dword [r14 + 0x58]
mov rcx, r14
mov ebx, dword [r14 + 0x58]
mov r8d, ebx
mov dword [rdi + 0x14], ebx
inc dword [r14 + 0x58]
mov rdx, qword [rdi + 0x60]
call fcn.1800fcab0
mov r8d, ebx
mov edx, 0x26
mov rcx, r15
call fcn.1801354c0
lea r9d, [rbx + 1]
mov dword [rsp + 0x20], ebx
mov r8d, r12d
mov edx, 0x8b
mov rcx, r15
call fcn.1801355a0
mov r12d, dword [rbp - 0x59]
mov r15d, dword [rbp - 0x51]
mov r9d, r13d
mov r8d, r15d
mov edx, WSAGetLastError
mov rcx, rsi
call fcn.180135530
movzx eax, byte [r14 + 0x1f]
test al, al
jne 0x1800d6e4b
inc dword [r14 + 0x58]
mov ebx, dword [r14 + 0x58]
jmp 0x1800d6e59
dec al
movzx eax, al
mov byte [r14 + 0x1f], al
mov ebx, dword [r14 + rax*4 + 0x28]
mov r9d, ebx
mov r8d, r15d
mov edx, 0x65
mov rcx, rsi
call fcn.180135530
mov r8d, dword [rbp - 0x55]
mov r9d, r12d
mov edx, 0x44
mov dword [rsp + 0x28], 0
mov rcx, rsi
mov dword [rsp + 0x20], ebx
mov r15d, eax
call fcn.180135730
mov edx, ebx
mov rcx, r14
call fcn.180128010
mov ebx, dword [rbp - 0x51]
lea rax, [rbp - 0x41]
mov r8, qword [rdi]
mov r9d, ebx
mov dword [rsp + 0x40], r13d
mov rdx, rdi
mov dword [rsp + 0x38], r12d
mov qword [rsp + 0x30], rax
xor eax, eax
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rax
call fcn.1800e8df0
mov r8, qword [rsi + 0x30]
mov rdx, qword [r8 + 0x88]
test rdx, rdx
je 0x1800d6eea
mov eax, 0xffffffff
sub eax, r12d
movsxd rcx, eax
mov eax, dword [rsi + 0x3c]
mov dword [rdx + rcx*4], eax
mov eax, dword [rsi + 0x3c]
mov r9d, r15d
dec eax
mov edx, 7
mov dword [r8 + 0x6c], eax
mov rcx, rsi
mov r8d, ebx
call fcn.180135530
mov r9, qword [rsi + 0x30]
mov rdx, qword [r9 + 0x88]
test rdx, rdx
je 0x1800d6f27
mov eax, 0xffffffff
sub eax, r13d
movsxd rcx, eax
mov eax, dword [rsi + 0x3c]
mov dword [rdx + rcx*4], eax
mov eax, dword [rsi + 0x3c]
lea r8d, [rbx + 1]
dec eax
mov rcx, rsi
mov dword [r9 + 0x6c], eax
xor r9d, r9d
lea edx, [r9 + 0x3d]
call fcn.180135530
mov r8d, ebx
xor r9d, r9d
mov rcx, rsi
lea edx, [r9 + 0x3d]
call fcn.180135530
mov r12, qword [rbp - 0x61]
mov r15d, dword [rbp + 0x6f]
mov r13d, dword [rbp + 0x7f]
movzx edx, byte [rdi + 8]
xor eax, eax
cmp dl, 0x74
mov r9d, r15d
mov r8d, r13d
mov rcx, r14
setne al
mov dword [rsp + 0x20], eax
call fcn.1800841c0
test byte [rdi + 0xc], 0x10
je 0x1800d76dd
mov rax, qword [rdi]
mov r8d, 1
mov rcx, r12
movsxd r13, dword [rax]
mov edx, r13d
mov dword [rbp + 0x6f], r13d
call fcn.18011c210
mov qword [rbp - 0x49], rax
mov rbx, rax
test rax, rax
jne 0x1800d7547
mov dword [rbp + 0x67], 7
jmp 0x1800d76dd
mov eax, dword [rdi + 0x10]
lea r8, [rbp - 0x41]
mov dword [rbx + 0x10], eax
mov rdx, rbx
mov eax, dword [rdi + 0x14]
mov rcx, r14
mov dword [rbx + 0x14], eax
mov rax, qword [rdi + 0x58]
mov qword [rbx + 0x58], rax
mov rax, qword [rdi + 0x60]
mov qword [rbx + 0x60], rax
mov eax, dword [r14 + 0x208]
mov dword [rbp + 0x7f], eax
call fcn.18012ab60
mov dword [rbp + 0x67], eax
mov qword [rdi + 0x58], r13
mov qword [rdi + 0x60], r13
test eax, eax
jne 0x1800d76dd
mov qword [rdi + 0x48], r13
mov r8d, dword [rbx + 0x10]
mov dword [rdi + 0x10], r8d
mov eax, dword [rbx + 0x14]
mov dword [rdi + 0x14], eax
test r8d, r8d
je 0x1800d704f
mov edx, 0x2e
mov rcx, rsi
call fcn.1801354c0
mov ecx, dword [rdi + 0x14]
mov r15d, eax
test ecx, ecx
je 0x1800d704f
mov r8d, dword [rdi + 0x10]
lea r9d, [rcx + 1]
mov dword [rsp + 0x20], ecx
mov edx, 0x8b
mov rcx, rsi
call fcn.1801355a0
mov eax, dword [r14 + 0x208]
lea r8, [rbp - 0x41]
mov rdx, rdi
mov dword [rbp + 0x6f], eax
mov rcx, r14
call fcn.18012ab60
movzx ecx, word [rdi + 0xa]
mov dword [rbp + 0x67], eax
mov rax, qword [rdi + 0x48]
mov qword [rdi + 0x48], rbx
movzx edx, word [rbx + 0xa]
mov qword [rbp - 0x29], rax
call fcn.18011d9a0
mov word [rdi + 0xa], ax
movzx r10d, ax
mov rcx, qword [rbx + 0x58]
test rcx, rcx
je 0x1800d70b9
lea rdx, [rbp - 0x55]
call fcn.1800ffbb0
test eax, eax
je 0x1800d70b9
movsxd rcx, dword [rbp - 0x55]
test ecx, ecx
jle 0x1800d70b9
call fcn.18011d910
cmp r10w, ax
jle 0x1800d70b9
mov word [rdi + 0xa], ax
test r15d, r15d
je 0x1800d6f59
mov edx, r15d
mov rcx, rsi
call fcn.18013f0c0
jmp 0x1800d6f59
cmp dl, 1
jne 0x1800d70e1
mov r13d, dword [rbp - 0x3d]
mov dword [rbp - 0x59], r13d
jmp 0x1800d7122
mov r13d, dword [r14 + 0x54]
xor r9d, r9d
mov r8d, r13d
mov dword [rbp - 0x59], r13d
mov rcx, rsi
lea eax, [r13 + 1]
lea edx, [r9 + 0x39]
mov dword [r14 + 0x54], eax
call fcn.180135530
mov dword [rdi + 0x18], eax
mov rcx, rdi
mov rax, qword [rdi + 0x50]
test rax, rax
je 0x1800d711e
mov rcx, rax
mov rax, qword [rax + 0x50]
test rax, rax
jne 0x1800d7112
or dword [rcx + 0xc], 0x10
mov eax, dword [r14 + 0x208]
lea r8, [rbp - 9]
xor r12d, r12d
mov word [rbp - 9], 1
mov rdx, rbx
mov qword [rbp - 1], r12
mov rcx, r14
mov dword [rbp - 5], r13d
mov dword [rbp + 0x7f], eax
call fcn.18012ab60
mov dword [rbp + 0x67], eax
test eax, eax
jne 0x1800d76dd
cmp byte [rdi + 8], 0x75
lea r8, [rbp - 9]
mov r15, qword [rdi + 0x58]
mov rdx, rdi
sete al
mov qword [rdi + 0x48], r12
inc al
mov qword [rdi + 0x58], r12
mov r12, qword [rdi + 0x60]
mov rcx, r14
mov byte [rbp - 9], al
mov qword [rdi + 0x60], 0
mov eax, dword [r14 + 0x208]
mov dword [rbp + 0x6f], eax
call fcn.18012ab60
mov rdx, qword [rdi + 0x40]
mov rcx, qword [rbp - 0x61]
mov dword [rbp + 0x67], eax
call fcn.1800ffe70
cmp byte [rdi + 8], 0x73
mov rax, qword [rdi + 0x48]
mov qword [rbp - 0x29], rax
mov qword [rdi + 0x48], rbx
mov qword [rdi + 0x40], 0
jne 0x1800d71cf
movzx edx, word [rbx + 0xa]
movzx ecx, word [rdi + 0xa]
call fcn.18011d9a0
mov word [rdi + 0xa], ax
mov rbx, qword [rdi + 0x58]
test rbx, rbx
je 0x1800d72e5
test dword [rbx + 4], 0x4000
jne 0x1800d7232
mov rdx, qword [rbx + 0x10]
mov rcx, qword [rbp - 0x61]
call fcn.1800ff150
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbp - 0x61]
call fcn.1800ff150
mov eax, dword [rbx + 4]
bt eax, 0x10
jae 0x1800d7218
mov rdx, qword [rbx + 8]
mov rcx, qword [rbp - 0x61]
call fcn.1800f83c0
mov eax, dword [rbx + 4]
mov rdx, qword [rbx + 0x20]
mov rcx, qword [rbp - 0x61]
bt eax, 0xb
jae 0x1800d722d
call fcn.18012df60
jmp 0x1800d7232
call fcn.1800ffe70
test dword [rbx + 4], 0x8000
jne 0x1800d72e5
mov rcx, qword [rbp - 0x61]
test rcx, rcx
je 0x1800d728a
cmp qword [rcx + 0x290], 0
je 0x1800d725f
mov rdx, rbx
call fcn.1800d60e0
jmp 0x1800d72e5
cmp rbx, qword [rcx + 0x178]
jb 0x1800d728a
cmp rbx, qword [rcx + 0x180]
jae 0x1800d728a
mov rax, qword [rcx + 0x170]
mov qword [rbx], rax
dec dword [rcx + 0x158]
mov qword [rcx + 0x170], rbx
jmp 0x1800d72e5
cmp dword [0x1801e5920], 0
je 0x1800d72dc
mov rcx, qword [0x1801ee840]
test rcx, rcx
je 0x1800d72a5
call qword [0x1801e59a8]
mov rcx, rbx
call qword [0x1801e5960]
dec qword [0x1801ee598]
movsxd rcx, eax
sub qword [0x1801ee550], rcx
mov rcx, rbx
call qword [0x1801e5950]
mov rcx, qword [0x1801ee840]
test rcx, rcx
je 0x1800d72e5
call qword [0x1801e59b8]
jmp 0x1800d72e5
mov rcx, rbx
call qword [0x1801e5950]
xor eax, eax
mov qword [rdi + 0x58], r15
mov qword [rdi + 0x10], rax
movzx eax, byte [rbp - 0x41]
mov qword [rdi + 0x60], r12
cmp al, 1
je 0x1800d6f55
cmp al, 9
jne 0x1800d732b
mov rax, qword [rdi + 0x48]
mov rdx, rdi
test rax, rax
je 0x1800d731c
nop
mov rdx, rax
mov rax, qword [rax + 0x48]
test rax, rax
jne 0x1800d7310
mov r8, qword [rdx]
mov rcx, r14
mov rdx, qword [rdx + 0x20]
call fcn.1800cbe90
mov rcx, rsi
call fcn.18013f640
mov rcx, rsi
mov r12d, eax
call fcn.18013f640
cmp dword [rdi + 0x10], 0
mov dword [rbp - 0x49], eax
jne 0x1800d748e
mov rcx, r14
call fcn.1800fc120
cmp qword [rdi + 0x58], 0
je 0x1800d748e
inc dword [r14 + 0x58]
mov r13d, dword [r14 + 0x58]
mov dword [rdi + 0x10], r13d
call fcn.180118590
mov r9, qword [rdi + 0x58]
mov r15, rax
test dword [r9 + 4], 0x400
je 0x1800d7386
mov r8d, dword [r9 + 8]
jmp 0x1800d73c6
movzx ecx, byte [r9]
sub ecx, 0x9b
je 0x1800d73ae
cmp ecx, 1
jne 0x1800d740c
mov rcx, qword [r9 + 0x10]
lea rdx, [rbp - 0x69]
call fcn.1800ffbb0
test eax, eax
je 0x1800d740c
mov r8d, dword [rbp - 0x69]
jmp 0x1800d73ca
mov rcx, qword [r9 + 0x10]
lea rdx, [rbp - 0x55]
call fcn.1800ffbb0
test eax, eax
je 0x1800d740c
mov r8d, dword [rbp - 0x55]
neg r8d
mov dword [rbp - 0x69], r8d
mov r9d, r13d
mov edx, socket
mov rcx, r15
call fcn.180135530
movsxd rax, dword [rbp - 0x69]
test eax, eax
jne 0x1800d73ef
mov edx, r12d
mov rcx, r15
call fcn.18013e860
jmp 0x1800d743d
js 0x1800d743d
mov rcx, rax
call fcn.18011d910
cmp word [rdi + 0xa], ax
jle 0x1800d743d
or dword [rdi + 0xc], 0x4000
mov word [rdi + 0xa], ax
jmp 0x1800d743d
mov r8d, r13d
mov rdx, r9
mov rcx, r14
call fcn.1800fcab0
mov r8d, r13d
mov edx, 0x26
mov rcx, r15
call fcn.1801354c0
mov r9d, r12d
mov r8d, r13d
mov edx, 0x2e
mov rcx, r15
call fcn.180135530
cmp qword [rdi + 0x60], 0
je 0x1800d748a
inc dword [r14 + 0x58]
mov rcx, r14
mov ebx, dword [r14 + 0x58]
mov r8d, ebx
mov dword [rdi + 0x14], ebx
inc dword [r14 + 0x58]
mov rdx, qword [rdi + 0x60]
call fcn.1800fcab0
mov r8d, ebx
mov edx, 0x26
mov rcx, r15
call fcn.1801354c0
lea r9d, [rbx + 1]
mov dword [rsp + 0x20], ebx
mov r8d, r13d
mov edx, 0x8b
mov rcx, r15
call fcn.1801355a0
mov r13d, dword [rbp - 0x59]
mov r9d, r12d
mov r8d, r13d
mov edx, WSAGetLastError
mov rcx, rsi
call fcn.180135530
mov r15d, dword [rbp - 0x49]
lea rax, [rbp - 0x41]
mov r8, qword [rdi]
mov r9d, r13d
mov ebx, dword [rsi + 0x3c]
mov rdx, rdi
mov dword [rsp + 0x40], r12d
mov rcx, r14
mov dword [rsp + 0x38], r15d
mov qword [rsp + 0x30], rax
xor eax, eax
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rax
call fcn.1800e8df0
mov r8, qword [rsi + 0x30]
mov rdx, qword [r8 + 0x88]
test rdx, rdx
je 0x1800d74f9
mov eax, 0xffffffff
sub eax, r15d
movsxd rcx, eax
mov eax, dword [rsi + 0x3c]
mov dword [rdx + rcx*4], eax
mov eax, dword [rsi + 0x3c]
mov r9d, ebx
dec eax
mov edx, 7
mov dword [r8 + 0x6c], eax
mov rcx, rsi
mov r8d, r13d
call fcn.180135530
mov r9, qword [rsi + 0x30]
mov rdx, qword [r9 + 0x88]
test rdx, rdx
je 0x1800d7536
mov eax, 0xffffffff
sub eax, r12d
movsxd rcx, eax
mov eax, dword [rsi + 0x3c]
mov dword [rdx + rcx*4], eax
mov eax, dword [rsi + 0x3c]
mov r8d, r13d
dec eax
mov dword [r9 + 0x6c], eax
jmp 0x1800d6f46
xor r12d, r12d
mov qword [rbp + 0x7f], r13
lea r15, [rax + 0x20]
test r13d, r13d
jle 0x1800d75be
mov rbx, qword [rbp - 0x61]
xor r13d, r13d
nop
mov rdx, qword [rdi + 0x48]
test rdx, rdx
je 0x1800d757b
mov r8d, r12d
mov rcx, r14
call fcn.1800d7720
test rax, rax
jne 0x1800d7595
jmp 0x1800d757d
xor eax, eax
mov rdx, qword [rdi]
cmp r12d, dword [rdx]
jge 0x1800d7595
mov rdx, qword [rdx + 8]
mov rcx, r14
mov rdx, qword [rdx + r13]
call fcn.1800fedd0
mov qword [r15], rax
test rax, rax
jne 0x1800d75a4
mov rax, qword [rbx + 0x10]
mov qword [r15], rax
inc r12d
add r13, 0x28
add r15, 8
sub qword [rbp + 0x7f], 1
jne 0x1800d7560
mov rbx, qword [rbp - 0x49]
mov r13d, dword [rbp + 0x6f]
lea r12, [0x1801eea88]
nop word [rax + rax]
xor r15d, r15d
lea r14, [rdi + 0x18]
nop word [rax + rax]
movsxd rcx, dword [r14]
test ecx, ecx
js 0x1800d7671
mov rax, qword [rsi]
mov rdx, rcx
cmp byte [rax + 0x55], 0
je 0x1800d75fc
mov rax, r12
jmp 0x1800d7608
mov rax, qword [rsi + 8]
lea rcx, [rcx + rcx*2]
lea rax, [rax + rcx*8]
mov dword [rax + 8], r13d
inc dword [rbx]
mov rax, qword [rsi]
cmp byte [rax + 0x55], 0
je 0x1800d762b
cmp qword [rax + 0x290], 0
jne 0x1800d7659
mov rcx, rbx
call fcn.18011c410
jmp 0x1800d7659
mov rax, qword [rsi + 8]
lea rcx, [rdx + rdx*2]
cmp byte [rax + rcx*8 + 1], 0
lea rdx, [rax + rcx*8]
je 0x1800d7651
mov r9d, 0xfffffffa
mov r8, rbx
mov rcx, rsi
call fcn.18014e490
jmp 0x1800d7659
mov qword [rdx + 0x10], rbx
mov byte [rdx + 1], 0xfa
mov dword [r14], 0xffffffff
inc r15
add r14, 4
cmp r15, 2
jl 0x1800d75e0
mov rdi, qword [rdi + 0x48]
test rdi, rdi
jne 0x1800d75d0
add dword [rbx], 0xffffffff
jne 0x1800d76dd
cmp dword [0x1801e5920], edi
je 0x1800d76d4
mov rcx, qword [0x1801ee840]
test rcx, rcx
je 0x1800d769d
call qword [0x1801e59a8]
mov rcx, rbx
call qword [0x1801e5960]
dec qword [0x1801ee598]
movsxd rcx, eax
sub qword [0x1801ee550], rcx
mov rcx, rbx
call qword [0x1801e5950]
mov rcx, qword [0x1801ee840]
test rcx, rcx
je 0x1800d76dd
call qword [0x1801e59b8]
jmp 0x1800d76dd
mov rcx, rbx
call qword [0x1801e5950]
mov rcx, qword [rbp + 0x77]
mov eax, dword [rbp - 0x39]
mov rdx, qword [rbp - 0x29]
mov dword [rcx + 8], eax
mov eax, dword [rbp - 0x35]
mov dword [rcx + 0xc], eax
mov rcx, qword [rbp - 0x61]
call fcn.18012df60
mov eax, dword [rbp + 0x67]
add rsp, 0xd8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret