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

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x98]
sub rsp, 0x198
mov r15, qword [rcx + 0x10]
xor edi, edi
mov r14, qword [rcx]
mov r12d, 1
mov dword [rsp + 0x74], r12d
mov rsi, r8
mov qword [rbp + 0x50], rdi
mov rbx, rdx
mov qword [rsp + 0x40], r14
mov r13, rcx
mov qword [rbp - 0x68], r15
test r15, r15
jne 0x14008a3d9
cmp qword [rcx + 0xa0], rdi
jne 0x14008a3cd
test byte [r14 + 0x5c], 8
jne 0x14008a3cd
mov byte [rcx + 0x23], r12b
call fcn.1400966b0
mov r15, rax
mov qword [rbp - 0x68], rax
test rbx, rbx
je 0x14008d770
cmp byte [r14 + 0x63], dil
jne 0x14008d770
cmp dword [r13 + 0x30], edi
jne 0x14008d770
xor r9d, r9d
mov qword [rsp + 0x20], rdi
xor r8d, r8d
mov rcx, r13
lea edx, [r9 + 0x15]
call fcn.14005b550
test eax, eax
jne 0x14008d770
cmp byte [rsi], 6
ja 0x14008a441
mov r8, qword [rbx + 0x48]
test r8, r8
je 0x14008a436
lea rdx, [0x14006f1f0]
mov rcx, r13
call fcn.140080bc0
mov qword [rbx + 0x48], rdi
and dword [rbx + 4], 0xfffffffe
or dword [rbx + 4], 0x400000
xor r8d, r8d
mov rdx, rbx
mov rcx, r13
call fcn.14008e4b0
cmp dword [r13 + 0x30], edi
jne 0x14008d76b
cmp byte [r14 + 0x63], dil
jne 0x14008d76b
test dword [rbx + 4], 0x800000
je 0x14008a503
mov rdi, qword [rbx + 0x28]
mov ebx, r12d
mov r14d, dword [rdi]
cmp r14d, r12d
jle 0x14008a4f7
mov rsi, qword [rdi + 0x28]
lea r11, [rdi + 0x90]
nop word [rax + rax]
cmp rsi, qword [r11 + 8]
jne 0x14008a4e5
mov r10, qword [rdi + 0x20]
mov r9, qword [r11]
test r10, r10
jne 0x14008a4a9
neg r9
sbb ecx, ecx
jmp 0x14008a4dd
test r9, r9
je 0x14008a4e5
mov rdx, r10
lea r15, [0x14028a630]
sub r9, r10
nop dword [rax + rax]
movzx ecx, byte [rdx]
movzx r8d, byte [rdx + r9]
cmp ecx, r8d
jne 0x14008a5ce
test ecx, ecx
jne 0x14008a5e0
mov r15, qword [rbp - 0x68]
test ecx, ecx
je 0x14008a5e8
inc ebx
add r11, 0x70
cmp ebx, r14d
jl 0x14008a490
mov rsi, qword [rbp + 0xf0]
mov r14, qword [rsp + 0x40]
mov rbx, qword [rbp + 0xe8]
cmp byte [rsi], 9
jne 0x14008a513
mov rdx, rbx
mov rcx, r13
call fcn.140073200
mov rdx, rbx
mov rcx, r13
call fcn.1400af7c0
test eax, eax
jne 0x14008d709
mov rax, qword [rbx + 0x48]
xorps xmm0, xmm0
mov edx, dword [rbx + 4]
mov rdi, qword [rbx + 0x28]
shr edx, 3
and edx, r12d
mov qword [rbp - 0x80], rax
movups xmmword [rbp + 0x58], xmm0
mov qword [rbp + 0x58], rax
xor eax, eax
mov esi, eax
mov dword [rbp + 0xf8], edx
movups xmmword [rbp + 0x68], xmm0
movups xmmword [rbp + 0x78], xmm0
cmp qword [rbx + 0x50], rax
jne 0x14008d739
mov r12d, eax
cmp esi, dword [rdi]
jge 0x14008a768
imul rbx, r12, 0x70
add rbx, rdi
test byte [rbx + 0x44], 8
mov r14, qword [rbx + 0x30]
mov r13, qword [rbx + 0x28]
je 0x14008a627
mov rax, qword [rbp + 0xe8]
mov edx, dword [rbx + 0x4c]
mov rcx, qword [rax + 0x30]
call fcn.14006eaf0
test eax, eax
je 0x14008a621
mov rax, qword [rsp + 0x40]
test dword [rax + 0x5c], 0x2000
jne 0x14008a621
and byte [rbx + 0x44], 0xd7
mov edx, dword [rbx + 0x4c]
mov rbx, qword [rbp + 0xe8]
mov rcx, qword [rbx + 0x30]
call fcn.1400b3590
mov edx, dword [rbp + 0xf8]
jmp 0x14008a62e
movzx ecx, byte [rcx + r15]
movzx eax, byte [r8 + r15]
sub ecx, eax
jne 0x14008a4d9
inc rdx
jmp 0x14008a4c0
cmp r10, 0
jne 0x14008a5f1
mov r10, qword [rsi]
mov r8, r10
lea rdx, str.target_object_alias_may_not_appear_in_FROM_clause:__s
mov rcx, r13
call fcn.1400692d0
mov rcx, qword [rsp + 0x40]
movzx eax, byte [rcx + 0x63]
mov rcx, r13
add dword [r13 + 0x30], eax
call fcn.14009fde0
mov eax, dword [rsp + 0x74]
jmp 0x14008d773
mov edx, dword [rbp + 0xf8]
mov rbx, qword [rbp + 0xe8]
test r14, r14
je 0x14008a6cd
mov rax, qword [r14 + 0x20]
movsx r8d, word [r13 + 0x46]
mov ecx, dword [rax]
cmp r8d, ecx
jne 0x14008a72c
test byte [r14 + 4], 8
jne 0x14008a6cd
cmp qword [r14 + 0x48], 0
je 0x14008a674
test esi, esi
jne 0x14008a674
test dword [rbx + 4], 0x40000
je 0x14008a674
cmp dword [rdi], 1
je 0x14008a6cd
test byte [rdi + 0xb4], 0xa
jne 0x14008a6cd
mov r13, qword [rbp + 0xe0]
mov r9d, edx
mov rcx, r13
mov r8d, esi
mov rdx, rbx
call fcn.14003df20
test eax, eax
je 0x14008a6a3
cmp dword [r13 + 0x30], 0
jne 0x14008a6f4
mov esi, 0xffffffff
mov r12, 0xffffffffffffffff
mov r14, qword [rsp + 0x40]
mov rdi, qword [rbx + 0x28]
cmp byte [r14 + 0x63], 0
jne 0x14008a712
mov rax, qword [rbp + 0xf0]
cmp byte [rax], 8
jbe 0x14008a6d9
mov rax, qword [rbx + 0x48]
mov qword [rbp - 0x80], rax
mov qword [rbp + 0x58], rax
jmp 0x14008a6d9
mov r14, qword [rsp + 0x40]
mov r13, qword [rbp + 0xe0]
inc esi
inc r12
cmp qword [rbx + 0x50], 0
jne 0x14008d739
mov edx, dword [rbp + 0xf8]
jmp 0x14008a565
mov rax, qword [rsp + 0x40]
mov rcx, r13
movzx eax, byte [rax + 0x63]
add dword [r13 + 0x30], eax
call fcn.14009fde0
mov eax, dword [rsp + 0x74]
jmp 0x14008d773
movzx eax, byte [r14 + 0x63]
mov rcx, r13
add dword [r13 + 0x30], eax
call fcn.14009fde0
mov eax, dword [rsp + 0x74]
jmp 0x14008d773
mov r9, qword [r13]
lea rdx, str.expected__d_columns_for__s_but_got__d
mov r13, qword [rbp + 0xe0]
mov dword [rsp + 0x20], ecx
mov rcx, r13
call fcn.1400692d0
mov rcx, qword [rsp + 0x40]
movzx eax, byte [rcx + 0x63]
mov rcx, r13
add dword [r13 + 0x30], eax
call fcn.14009fde0
mov eax, dword [rsp + 0x74]
jmp 0x14008d773
mov rax, qword [rbx + 0x30]
mov rbx, rdi
mov qword [rsp + 0x48], rbx
test rax, rax
je 0x14008a920
cmp byte [rax], 0x2c
mov qword [rsp + 0x48], rbx
jne 0x14008a920
test dword [r14 + 0x5c], 0x8000
mov qword [rsp + 0x48], rbx
jne 0x14008a920
mov rax, qword [r13]
lea rsi, [0x14004e4b0]
mov rbx, qword [rbp + 0xe8]
lea r14, [fcn.1400061a0]
add rax, 0x63
mov qword [rsp + 0x48], rdi
mov qword [rbp + 0x20], rax
xor edi, edi
mov qword [rbp + 0x18], r13
nop word [rax + rax]
mov rdx, qword [rbx + 0x30]
lea rcx, [rbp + 0x18]
mov qword [rbp + 0x28], rdi
mov qword [rbp + 0x38], rdi
mov dword [rbp + 0x30], edi
call fcn.14003a880
cmp dword [rbp + 0x28], edi
je 0x14008a910
mov rdx, qword [rbx + 0x30]
lea rax, [rbp + 0x18]
mov qword [rbp - 0x38], rdi
mov qword [rbp - 0x58], r13
mov qword [rbp - 0x50], rsi
mov qword [rbp - 0x48], r14
mov qword [rbp - 0x40], rdi
mov qword [rbp - 0x30], rax
test rdx, rdx
je 0x14008a81f
lea rcx, [rbp - 0x58]
call fcn.1400bd6e0
mov rax, qword [rbp + 0x18]
mov rbx, qword [rbp + 0x38]
mov rcx, qword [rax]
test rbx, rbx
je 0x14008a909
test rcx, rcx
je 0x14008a892
cmp qword [rcx + 0x2e0], rdi
je 0x14008a84e
mov rdx, rbx
call fcn.140045520
jmp 0x14008a909
cmp rbx, qword [rcx + 0x1d0]
jae 0x14008a892
cmp rbx, qword [rcx + 0x1c0]
jb 0x14008a876
mov rax, qword [rcx + 0x1b8]
mov qword [rbx], rax
mov qword [rcx + 0x1b8], rbx
jmp 0x14008a909
cmp rbx, qword [rcx + 0x1c8]
jb 0x14008a892
mov rax, qword [rcx + 0x1a8]
mov qword [rbx], rax
mov qword [rcx + 0x1a8], rbx
jmp 0x14008a909
cmp dword [0x140307fe0], edi
je 0x14008a8f9
mov rcx, qword [0x14030d990]
test rcx, rcx
je 0x14008a8b3
mov rax, qword [0x140308060]
call qword [case.0x14007d279.0]
mov rax, qword [0x140308018]
mov rcx, rbx
call qword [case.0x14007d279.0]
dec qword [0x14030d928]
mov rcx, rbx
movsxd rdx, eax
mov rax, qword [0x140308008]
sub qword [0x14030d8e0], rdx
call qword [case.0x14007d279.0]
mov rcx, qword [0x14030d990]
test rcx, rcx
je 0x14008a909
mov rax, qword [0x140308070]
jmp 0x14008a903
mov rax, qword [0x140308008]
mov rcx, rbx
call qword [case.0x14007d279.0]
mov rbx, qword [rbp + 0xe8]
cmp dword [rbp + 0x2c], edi
jne 0x14008a7d0
mov rbx, qword [rsp + 0x48]
jmp 0x14008a922
xor edi, edi
cmp dword [rbx], 0
lea rdx, [0x140285030]
mov ecx, edi
mov dword [rsp + 0x70], ecx
jle 0x14008b092
mov qword [rsp + 0x58], rdi
nop dword [rax]
imul rsi, rdi, 0x70
add rsi, rbx
cmp qword [rsi + 0x60], 0
lea r12, [rsi + 8]
jne 0x14008a978
mov r8, qword [rsi + 0x18]
test r8, r8
je 0x14008a978
mov rax, qword [rsi + 0x10]
mov r9, rdx
mov edx, 0x14
mov qword [rsp + 0x20], rax
mov rcx, r13
call fcn.14005b550
mov ecx, dword [rsp + 0x70]
mov r14, qword [rsi + 0x30]
mov qword [rbp - 0x20], r14
test r14, r14
je 0x14008ab98
mov rbx, qword [rbp + 0xe8]
lea rdx, [rsp + 0x64]
xor ecx, ecx
mov dword [rsp + 0x64], ecx
mov rcx, rbx
call fcn.140041ed0
mov eax, dword [rsp + 0x64]
add dword [r13 + 0x11c], eax
mov rax, qword [rsp + 0x40]
test dword [rax + 0x5c], 0x1000
jne 0x14008a9ed
test byte [rsi + 0x48], 0x80
je 0x14008a9cc
mov rax, qword [rsi + 0x70]
cmp byte [rax + 0x12], 0
je 0x14008a9ed
movzx eax, byte [rsi + 0x44]
mov rdx, r14
mov r9d, dword [rsi + 0x4c]
mov rcx, r13
mov r8, qword [rbx + 0x30]
shr eax, 5
and eax, 1
mov dword [rsp + 0x20], eax
call fcn.14004eaa0
mov rax, qword [r13 + 0x158]
mov rcx, qword [rsp + 0x48]
mov qword [rbp - 0x18], rax
mov rax, qword [rsi + 0x18]
mov qword [r13 + 0x158], rax
test rdi, rdi
jne 0x14008abba
cmp dword [rcx], 1
je 0x14008aa23
test byte [rcx + 0xb4], 0xa
je 0x14008abba
test byte [rsi + 0x48], 0x80
je 0x14008aa37
mov rax, qword [rsi + 0x70]
cmp byte [rax + 0x12], 0
je 0x14008abba
mov edi, dword [r15 + 0x90]
inc dword [r13 + 0x38]
mov edx, dword [r13 + 0x38]
mov dword [rsi + 0x3c], edx
movsxd rcx, dword [r15 + 0x90]
lea ebx, [rdi + 1]
cmp dword [r15 + 0x94], ecx
jg 0x14008aa77
xor r9d, r9d
mov dword [rsp + 0x20], ebx
mov r8d, edx
mov rcx, r15
lea edx, [r9 + 0xd]
call fcn.1400417b0
xor r8d, r8d
jmp 0x14008aaa8
lea eax, [rcx + 1]
xor r8d, r8d
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], send
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], r8
mov eax, dword [rsi + 0x3c]
mov r9, r12
mov qword [rbp + 0x30], r8
mov edx, 1
mov dword [rbp + 0x28], r8d
mov rcx, r13
lea r8, str.CO_ROUTINE___S
mov dword [rsi + 0x38], ebx
mov byte [rbp + 0x18], recv
mov dword [rbp + 0x1c], eax
mov qword [rbp + 0x20], 0
call fcn.14009fc40
lea r8, [rbp + 0x18]
mov rdx, r14
mov rcx, r13
call fcn.14008a360
movzx eax, word [r14 + 2]
mov rcx, qword [rsi + 0x28]
mov word [rcx + 0x4a], ax
mov rcx, r15
mov eax, dword [rbp + 0x24]
mov edx, dword [rsi + 0x3c]
or dword [rsi + 0x48], 0x10
mov dword [rsi + 0x40], eax
call fcn.140096e90
mov rax, qword [r15]
mov edx, dword [r15 + 0x90]
cmp byte [rax + 0x63], 0
je 0x14008ab26
lea rax, [0x14030dc80]
jmp 0x14008ab3f
lea eax, [rdx - 1]
test edi, edi
cmovns eax, edi
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [r15 + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
xor r12d, r12d
mov dword [r13 + 0x28], r12d
mov byte [r13 + 0x1f], 0
mov rdi, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x48]
mov r14, qword [rsp + 0x40]
cmp byte [r14 + 0x63], 0
jne 0x14008a712
mov rcx, qword [rbp + 0xe8]
lea rdx, [rsp + 0x64]
mov dword [rsp + 0x64], r12d
call fcn.140041ed0
mov rax, qword [rbp - 0x18]
mov edx, dword [rsp + 0x64]
sub dword [r13 + 0x11c], edx
mov ecx, dword [rsp + 0x70]
mov qword [r13 + 0x158], rax
inc ecx
inc rdi
mov dword [rsp + 0x70], ecx
mov qword [rsp + 0x58], rdi
cmp ecx, dword [rbx]
jge 0x14008b090
lea rdx, [0x140285030]
jmp 0x14008a940
test byte [rsi + 0x48], 0x80
je 0x14008acac
mov rbx, qword [rsi + 0x70]
mov edx, dword [rbx + 4]
test edx, edx
jle 0x14008acac
movsxd rcx, dword [r15 + 0x90]
xor r12d, r12d
mov r8d, dword [rbx + 8]
cmp dword [r15 + 0x94], ecx
jg 0x14008ac01
mov r9d, edx
mov dword [rsp + 0x20], r12d
lea edx, [r12 + 0xc]
mov rcx, r15
call fcn.1400417b0
jmp 0x14008ac30
lea eax, [rcx + 1]
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
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], r12d
mov qword [rax + rcx*8 + 0x10], r12
mov edx, dword [rbx + 0xc]
mov r8d, dword [rsi + 0x4c]
cmp r8d, edx
je 0x14008ac9e
movsxd rcx, dword [r15 + 0x90]
cmp dword [r15 + 0x94], ecx
jg 0x14008ac6f
mov r9d, edx
mov dword [rsp + 0x20], r12d
mov edx, 0x64
mov rcx, r15
call fcn.1400417b0
movzx eax, word [rbx + 0x10]
mov word [r14 + 2], ax
jmp 0x14008ab53
lea eax, [rcx + 1]
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0x64
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
movzx eax, word [rbx + 0x10]
mov word [r14 + 2], ax
jmp 0x14008ab53
mov r14, qword [rsi + 0x30]
test dword [r14 + 4], 0x1000000
jne 0x14008ad58
lea rdi, [rcx + 8]
cmp rdi, r12
jae 0x14008ad58
nop dword [rax + rax]
mov r10, qword [rdi + 0x28]
test r10, r10
je 0x14008ad4b
test byte [rdi + 0x40], 0x10
jne 0x14008ad4b
mov rdx, qword [rdi + 0x10]
test rdx, rdx
je 0x14008ad4b
mov rax, qword [rdi + 0x20]
mov r11, qword [rax + 0x70]
mov rax, qword [rsi + 0x28]
cmp r11, qword [rax + 0x70]
jne 0x14008ad4b
mov r9, qword [rsi + 0x18]
test r9, r9
je 0x14008ad4b
sub r9, rdx
nop word [rax + rax]
movzx eax, byte [rdx]
mov rbx, rcx
movzx r8d, byte [rdx + r9]
cmp eax, r8d
jne 0x14008ad9b
test eax, eax
jne 0x14008adb4
test r11, r11
jne 0x14008ad3c
mov eax, dword [r10 + 0x10]
mov qword [rsp + 0x48], rcx
cmp dword [r14 + 0x10], eax
jne 0x14008ad4b
test dword [r10 + 4], 0x1000000
mov qword [rsp + 0x48], rbx
je 0x14008adbc
add rdi, 0x70
cmp rdi, r12
jb 0x14008acd0
inc dword [r13 + 0x38]
xor r8d, r8d
mov edx, dword [r13 + 0x38]
mov edi, r8d
mov dword [rsi + 0x3c], edx
movsxd rbx, dword [r15 + 0x90]
cmp dword [r15 + 0x94], ebx
jg 0x14008ae9d
mov r9d, edx
mov dword [rsp + 0x20], r8d
lea edx, [r8 + 0x45]
mov rcx, r15
call fcn.1400417b0
mov ebx, eax
xor r8d, r8d
jmp 0x14008aec8
lea rbx, [0x14028a630]
movzx ecx, byte [rax + rbx]
movzx eax, byte [r8 + rbx]
cmp ecx, eax
mov rcx, qword [rsp + 0x48]
jne 0x14008ad4b
inc rdx
jmp 0x14008ad10
mov edx, dword [rdi + 0x30]
xor r12d, r12d
test edx, edx
je 0x14008ae20
movsxd rcx, dword [r15 + 0x90]
mov r8d, dword [rdi + 0x34]
cmp dword [r15 + 0x94], ecx
jg 0x14008adf1
mov r9d, edx
mov dword [rsp + 0x20], r12d
lea edx, [r12 + 0xc]
mov rcx, r15
call fcn.1400417b0
jmp 0x14008ae20
lea eax, [rcx + 1]
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
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], r12d
mov qword [rax + rcx*8 + 0x10], r12
movsxd rcx, dword [r15 + 0x90]
mov edx, dword [rdi + 0x44]
mov r8d, dword [rsi + 0x4c]
cmp dword [r15 + 0x94], ecx
jg 0x14008ae4e
mov r9d, edx
mov dword [rsp + 0x20], r12d
mov edx, 0x64
mov rcx, r15
call fcn.1400417b0
jmp 0x14008ae7d
lea eax, [rcx + 1]
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0x64
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
mov rax, qword [rdi + 0x28]
mov r14, qword [rbp - 0x20]
mov rdi, qword [rsp + 0x58]
mov qword [rsp + 0x48], rbx
movzx ecx, word [rax + 2]
mov word [r14 + 2], cx
jmp 0x14008ab58
lea rcx, [rbx + rbx*2]
lea eax, [rbx + 1]
mov dword [r15 + 0x90], eax
mov rax, qword [r15 + 0x88]
mov qword [rax + rcx*8], 0x45
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], r8
test byte [rsi + 0x48], 8
lea eax, [rbx + 1]
mov dword [rsi + 0x38], eax
jne 0x14008af2d
movsxd rdi, dword [r15 + 0x90]
cmp dword [r15 + 0x94], edi
jg 0x14008af02
xor r9d, r9d
mov dword [rsp + 0x20], r8d
xor r8d, r8d
mov rcx, r15
lea edx, [r9 + 0x11]
call fcn.1400417b0
mov edi, eax
xor r8d, r8d
jmp 0x14008af2d
lea rcx, [rdi + rdi*2]
lea eax, [rdi + 1]
mov dword [r15 + 0x90], eax
mov rax, qword [r15 + 0x88]
mov qword [rax + rcx*8], send
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], r8
mov eax, dword [rsi + 0x4c]
mov r9, r12
mov qword [rbp + 0x30], r8
mov edx, 1
mov dword [rbp + 0x28], r8d
mov rcx, r13
lea r8, str.MATERIALIZE___S
mov byte [rbp + 0x18], 0xc
mov dword [rbp + 0x1c], eax
mov qword [rbp + 0x20], 0
call fcn.14009fc40
mov r14, qword [rbp - 0x20]
lea r8, [rbp + 0x18]
mov rdx, r14
mov rcx, r13
call fcn.14008a360
mov rcx, qword [rsi + 0x28]
movzx eax, word [r14 + 2]
mov word [rcx + 0x4a], ax
test edi, edi
je 0x14008afb7
mov rax, qword [r15]
mov edx, dword [r15 + 0x90]
cmp byte [rax + 0x63], 0
je 0x14008af9b
lea rax, [0x14030dc80]
jmp 0x14008afb4
lea eax, [rdx - 1]
test edi, edi
cmovns eax, edi
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [r15 + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
movsxd rdx, dword [r15 + 0x90]
xor r12d, r12d
mov r8d, dword [rsi + 0x3c]
cmp dword [r15 + 0x94], edx
jg 0x14008afe7
xor r9d, r9d
mov dword [rsp + 0x20], r12d
lea edx, [r12 + 0x41]
mov rcx, r15
call fcn.1400417b0
mov edx, eax
jmp 0x14008b012
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [r15 + 0x90], eax
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0x41
mov dword [rax + rcx*8 + 4], r8d
mov qword [rax + rcx*8 + 8], r12
mov qword [rax + rcx*8 + 0x10], r12
test ebx, ebx
jns 0x14008b01f
mov ebx, dword [r15 + 0x90]
dec ebx
mov rax, qword [r15]
cmp byte [rax + 0x63], 0
je 0x14008b031
lea rax, [0x14030dc80]
jmp 0x14008b043
movsxd rax, ebx
lea rcx, [rax + rax*2]
mov rax, qword [r15 + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 4], edx
mov byte [r13 + 0x1f], 0
mov dword [r13 + 0x28], r12d
mov eax, dword [rsi + 0x48]
test al, al
jns 0x14008ab4e
mov rbx, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x58]
test al, 8
jne 0x14008ab58
mov eax, dword [rsi + 0x38]
mov rcx, qword [rsi + 0x70]
mov dword [rcx + 4], eax
mov eax, dword [rsi + 0x3c]
mov dword [rcx + 8], eax
mov eax, dword [rsi + 0x4c]
mov dword [rcx + 0xc], eax
movzx eax, word [r14 + 2]
mov word [rcx + 0x10], ax
jmp 0x14008ab58
xor edi, edi
mov rbx, qword [rbp + 0xe8]
mov rax, qword [rbx + 0x30]
mov ecx, dword [rbx + 4]
mov rsi, qword [rbx + 0x20]
mov r12, qword [rbx + 0x38]
mov qword [rbp - 0x60], rax
mov rax, qword [rbx + 0x40]
mov qword [rbp - 0x20], rax
movzx eax, byte [rbx + 4]
and al, 1
mov qword [rbp], rsi
mov byte [rsp + 0x50], al
movzx r14d, al
mov byte [rbp + 8], al
mov eax, ecx
and al, 9
mov qword [rsp + 0x58], r12
cmp al, 1
jne 0x14008b203
mov rdx, qword [rbp - 0x80]
test rdx, rdx
jne 0x14008b17e
test rsi, rsi
je 0x14008b1d6
mov edi, 0xffffffff
mov dword [rbp - 0x78], edi
mov rax, qword [rbp + 0xf0]
mov dword [rbp + 0x70], edi
cmp byte [rax], 0xc
jne 0x14008b11b
mov r9d, dword [rsi]
mov edx, reloc.WS2_32.dll_WSASetLastError
mov r8d, dword [rax + 4]
mov rcx, r15
call fcn.140095a60
dec dword [r13 + 0x44]
mov ecx, 0x4000
mov rax, qword [rbp + 0xe8]
mov r8d, dword [r13 + 0x44]
mov dword [rbp - 0x10], r8d
test dword [rax + 4], ecx
jne 0x14008b141
mov ecx, 0x140
mov word [rax + 2], cx
mov rdx, rax
mov rcx, r13
call fcn.140031740
mov rdx, qword [rbp + 0xe8]
cmp dword [rdx + 8], 0
jne 0x14008b32d
test edi, edi
js 0x14008b32d
mov rax, qword [r15]
cmp byte [rax + 0x63], 0
je 0x14008b314
lea rax, [0x14030dc80]
jmp 0x14008b326
test rsi, rsi
je 0x14008b203
mov eax, dword [rdx]
cmp eax, dword [rsi]
jne 0x14008b203
test eax, eax
jle 0x14008b1d6
lea rbx, [rdx + 0x18]
sub rsi, rdx
movzx eax, byte [rsi + rbx]
cmp byte [rbx], al
jne 0x14008b203
mov r8, qword [rsi + rbx - 0x10]
mov r9d, 0xffffffff
mov rdx, qword [rbx - 0x10]
xor ecx, ecx
call fcn.14006dae0
test eax, eax
jne 0x14008b203
mov rax, qword [rbp - 0x80]
inc edi
add rbx, 0x20
cmp edi, dword [rax]
jl 0x14008b198
mov rbx, qword [rbp + 0xe8]
mov rsi, qword [rbp]
mov ecx, dword [rbx + 4]
cmp qword [rbx + 0x70], 0
jne 0x14008b203
and ecx, 0xfffffffe
xor r8d, r8d
mov dword [rbx + 4], ecx
mov rdx, rsi
mov rcx, qword [rsp + 0x40]
call fcn.14006f200
or dword [rbx + 4], 8
mov r12, rax
mov qword [rsp + 0x58], rax
mov qword [rbx + 0x38], rax
mov rdi, qword [rbp - 0x80]
mov rsi, qword [rbp]
test rdi, rdi
je 0x14008b0f0
mov r9d, dword [rsi]
xor r8d, r8d
mov rdx, rdi
mov rcx, r13
call fcn.14007b740
mov r8d, dword [r13 + 0x34]
mov rbx, rax
mov dword [rbp + 0x64], r8d
lea ecx, [r8 + 1]
mov dword [r13 + 0x34], ecx
mov r9d, dword [rdi]
movsxd rdi, dword [r15 + 0x90]
inc r9d
add r9d, dword [rsi]
mov dword [rbp - 0x78], edi
cmp dword [r15 + 0x94], edi
jg 0x14008b26c
xor ecx, ecx
mov dword [rsp + 0x20], ecx
lea edx, [rcx + 0x70]
mov rcx, r15
call fcn.1400417b0
mov edi, eax
mov dword [rbp - 0x78], eax
jmp 0x14008b29d
lea rcx, [rdi + rdi*2]
xor edx, edx
lea eax, [rdi + 1]
mov dword [r15 + 0x90], eax
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], reloc.WS2_32.dll_WSASetLastError
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], r9d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rdx
mov rcx, qword [r15]
mov eax, edi
cmp byte [rcx + 0x63], 0
je 0x14008b2c3
cmp qword [rcx + 0x2e0], 0
jne 0x14008b0f8
mov rcx, rbx
call fcn.14007b970
jmp 0x14008b0f8
test edi, edi
jns 0x14008b2d0
mov eax, dword [r15 + 0x90]
dec eax
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [r15 + 0x88]
cmp byte [rax + rcx*8 + 1], 0
lea rdx, [rax + rcx*8]
je 0x14008b2fe
mov r9d, 0xfffffff7
mov r8, rbx
mov rcx, r15
call fcn.1400b5850
jmp 0x14008b0f8
test rbx, rbx
je 0x14008b0f8
mov qword [rdx + 0x10], rbx
mov byte [rdx + 1], 0xf7
jmp 0x14008b0f8
movsxd rax, edi
lea rcx, [rax + rax*2]
mov rax, qword [r15 + 0x88]
lea rax, [rax + rcx*8]
or byte [rbp + 0x7c], 1
mov byte [rax], WSACleanup
test byte [rdx + 4], 1
je 0x14008b444
mov edi, dword [r13 + 0x34]
xor r9d, r9d
xor r8d, r8d
mov dword [rbp + 0xc], edi
mov rcx, r13
lea eax, [rdi + 1]
mov dword [r13 + 0x34], eax
mov rdx, qword [rdx + 0x20]
call fcn.14007b740
movsxd rbx, dword [r15 + 0x90]
mov rsi, rax
cmp dword [r15 + 0x94], ebx
jg 0x14008b385
xor eax, eax
xor r9d, r9d
mov r8d, edi
mov dword [rsp + 0x20], eax
mov rcx, r15
lea edx, [rax + 0x70]
call fcn.1400417b0
mov ebx, eax
jmp 0x14008b3b1
lea rcx, [rbx + rbx*2]
xor edx, edx
lea eax, [rbx + 1]
mov dword [r15 + 0x90], eax
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], reloc.WS2_32.dll_WSASetLastError
mov dword [rax + rcx*8 + 4], edi
mov qword [rax + rcx*8 + 8], rdx
mov qword [rax + rcx*8 + 0x10], rdx
mov rcx, qword [r15]
mov eax, ebx
cmp byte [rcx + 0x63], 0
je 0x14008b3d0
cmp qword [rcx + 0x2e0], 0
jne 0x14008b415
mov rcx, rsi
call fcn.14007b970
jmp 0x14008b415
test ebx, ebx
jns 0x14008b3dd
mov eax, dword [r15 + 0x90]
dec eax
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [r15 + 0x88]
cmp byte [rax + rcx*8 + 1], 0
lea rdx, [rax + rcx*8]
je 0x14008b408
mov r9d, 0xfffffff7
mov r8, rsi
mov rcx, r15
call fcn.1400b5850
jmp 0x14008b415
test rsi, rsi
je 0x14008b415
mov qword [rdx + 0x10], rsi
mov byte [rdx + 1], 0xf7
movsxd rax, dword [r15 + 0x90]
mov dword [rbp + 0x10], ebx
test eax, eax
jle 0x14008b438
lea rcx, [rax + rax*2]
mov edx, 8
mov rax, qword [r15 + 0x88]
mov word [rax + rcx*8 - 0x16], dx
mov rdx, qword [rbp + 0xe8]
mov sil, 3
jmp 0x14008b447
xor sil, sil
cmp dword [rbp + 0xf8], 0
mov byte [rbp + 9], sil
mov dword [rsp + 0x64], esi
jne 0x14008b660
test r12, r12
jne 0x14008b660
mov rdi, qword [rdx + 0x70]
mov eax, 0x100
mov ebx, r14d
mov ecx, 0x4000
imul ebx, eax
movzx eax, word [rdx + 4]
and ax, cx
or bx, ax
test rdi, rdi
je 0x14008b497
mov rcx, r13
call fcn.1400acc10
mov rdx, qword [rbp + 0xe8]
movsx eax, word [rdx + 2]
mov rcx, r13
mov r8, qword [rbp - 0x60]
mov dword [rsp + 0x30], eax
mov rax, qword [rdx + 0x20]
mov rdx, qword [rsp + 0x48]
mov word [rsp + 0x28], bx
mov rbx, qword [rbp - 0x80]
mov r9, rbx
mov qword [rsp + 0x20], rax
call fcn.1400a7190
mov r13, rax
test rax, rax
je 0x14008d762
mov r12, qword [rbp + 0xe8]
movzx eax, word [rax + 0x48]
cmp ax, word [r12 + 2]
jge 0x14008b4ea
mov word [r12 + 2], ax
cmp byte [rsp + 0x50], 0
je 0x14008b507
movzx ecx, byte [r13 + 0x43]
test cl, cl
movzx esi, sil
cmovne esi, ecx
mov dword [rsp + 0x64], esi
mov byte [rbp + 9], sil
test rbx, rbx
je 0x14008b548
test byte [r13 + 0x44], 4
movsx edx, byte [r13 + 0x41]
mov dword [rbp + 0x60], edx
jne 0x14008b521
mov eax, dword [r13 + 0x30]
jmp 0x14008b536
movzx eax, byte [r13 + 0x40]
lea rcx, [rax + rax*2]
shl rcx, 5
mov eax, dword [rcx + r13 + 0x310]
cmp edx, dword [rbx]
mov dword [rbp + 0x78], eax
mov eax, 0
cmove rbx, rax
mov qword [rbp + 0x58], rbx
mov eax, dword [rbp - 0x78]
test eax, eax
js 0x14008b55e
test rbx, rbx
jne 0x14008b55e
mov edx, eax
mov rcx, r15
call fcn.1400961a0
mov rcx, qword [rbp + 0xe0]
mov rdx, r12
test rdi, rdi
je 0x14008b618
mov esi, dword [rcx + 0x44]
mov r8, r13
inc dword [rcx + 0x38]
mov r13, rcx
mov edi, dword [rcx + 0x38]
mov r9d, edi
lea ebx, [rsi - 1]
sub esi, 2
mov dword [rsp + 0x20], ebx
lea r14d, [rsi - 1]
mov dword [rcx + 0x44], r14d
call fcn.1400ad270
xor r8d, r8d
mov r9d, r14d
mov rcx, r15
lea edx, [r8 + 0xb]
call fcn.140095a60
mov edx, ebx
mov rcx, r15
call fcn.1400a3d50
mov rbx, qword [rbp + 0xf0]
lea r9, [rbp + 0x58]
xor eax, eax
mov dword [rsp + 0x38], r14d
mov dword [rbp + 0x78], eax
mov r8d, 0xffffffff
lea rax, [rbp + 8]
mov dword [rsp + 0x30], esi
mov qword [rsp + 0x28], rbx
mov rdx, r12
mov rcx, r13
mov qword [rsp + 0x20], rax
call fcn.140056310
mov edx, esi
mov rcx, r15
call fcn.1400a3d50
mov r8d, edi
mov edx, 0x41
mov rcx, r15
call fcn.1400959f0
mov edx, r14d
mov rcx, r15
call fcn.1400a3d50
jmp 0x14008d660
mov eax, dword [r13 + 0x34]
lea r9, [rbp + 0x58]
mov rbx, qword [rbp + 0xf0]
mov r8d, 0xffffffff
mov dword [rsp + 0x38], eax
mov eax, dword [r13 + 0x30]
mov dword [rsp + 0x30], eax
lea rax, [rbp + 8]
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rax
call fcn.140056310
mov rcx, r13
call fcn.1400ab130
mov r13, qword [rbp + 0xe0]
jmp 0x14008d660
mov r14, qword [rsp + 0x58]
xor r9d, r9d
mov dword [rbp - 0x70], r9d
mov dword [rbp - 0x74], r9d
mov dword [rbp - 0x28], r9d
test r14, r14
je 0x14008b79a
mov rcx, qword [rdx + 0x20]
mov eax, dword [rcx]
test eax, eax
jle 0x14008b69e
add rcx, 0x22
nop dword [rax + rax]
dec eax
mov word [rcx], r9w
lea rcx, [rcx + 0x20]
test eax, eax
jg 0x14008b690
mov eax, dword [r14]
test eax, eax
jle 0x14008b6be
lea rcx, [r14 + 0x22]
nop dword [rax]
dec eax
mov word [rcx], r9w
lea rcx, [rcx + 0x20]
test eax, eax
jg 0x14008b6b0
cmp word [rdx + 2], 0x42
jle 0x14008b6ce
mov eax, 0x42
mov word [rdx + 2], ax
mov r9, qword [rbp - 0x80]
test r9, r9
je 0x14008b764
mov eax, dword [r14]
cmp eax, dword [r9]
jne 0x14008b764
xor ecx, ecx
mov edx, ecx
test eax, eax
jle 0x14008b719
mov r8, r9
lea rcx, [r14 + 0x18]
sub r8, r14
nop dword [rax]
movzx eax, byte [r8 + rcx]
lea rcx, [rcx + 0x20]
and al, 1
inc edx
mov byte [rcx - 0x20], al
mov eax, dword [r14]
cmp edx, eax
jl 0x14008b700
xor ecx, ecx
cmp eax, dword [r9]
jne 0x14008b764
mov edi, ecx
test eax, eax
jle 0x14008b75d
mov rsi, r14
lea rbx, [r9 + 0x18]
sub rsi, r9
nop
movzx eax, byte [rbx]
cmp byte [rsi + rbx], al
jne 0x14008b764
mov r8, qword [rbx - 0x10]
mov r9d, 0xffffffff
mov rdx, qword [rsi + rbx - 0x10]
xor ecx, ecx
call fcn.14006dae0
test eax, eax
jne 0x14008b764
inc edi
add rbx, 0x20
cmp edi, dword [r14]
jl 0x14008b730
mov dword [rbp - 0x28], 1
xor r9d, r9d
dec dword [r13 + 0x44]
mov edx, 0x40
mov rsi, qword [rsp + 0x40]
mov eax, dword [r13 + 0x44]
mov dword [rsp + 0x60], eax
cmp dx, word [rsi + 0x184]
jbe 0x14008b7b8
cmp dword [rsi + 0x180], 0
jne 0x14008b7a1
inc dword [rsi + 0x194]
jmp 0x14008b851
mov word [rdx + 2], r9w
jmp 0x14008b767
cmp byte [rsi + 0x63], 0
je 0x14008b851
mov r12, r9
mov qword [rsp + 0x68], r9
jmp 0x14008bb46
mov r12, qword [rsi + 0x1b8]
mov qword [rsp + 0x68], r12
test r12, r12
je 0x14008b7df
mov rax, qword [r12]
mov qword [rsi + 0x1b8], rax
inc dword [rsi + 0x190]
jmp 0x14008b86a
mov r12, qword [rsi + 0x1b0]
mov qword [rsp + 0x68], r12
test r12, r12
je 0x14008b803
mov rax, qword [r12]
mov qword [rsi + 0x1b0], rax
inc dword [rsi + 0x190]
jmp 0x14008b86a
mov r12, qword [rsi + 0x1a8]
mov qword [rsp + 0x68], r12
test r12, r12
je 0x14008b827
mov rax, qword [r12]
mov qword [rsi + 0x1a8], rax
inc dword [rsi + 0x190]
jmp 0x14008b86a
mov r12, qword [rsi + 0x1a0]
mov qword [rsp + 0x68], r12
test r12, r12
je 0x14008b84b
mov rax, qword [r12]
inc dword [rsi + 0x190]
mov qword [rsi + 0x1a0], rax
jmp 0x14008b86a
inc dword [rsi + 0x198]
mov rcx, rsi
call fcn.140033fb0
mov qword [rsp + 0x68], rax
mov r12, rax
test rax, rax
je 0x14008bb43
xorps xmm0, xmm0
movups xmmword [r12], xmm0
movups xmmword [r12 + 0x10], xmm0
movups xmmword [r12 + 0x20], xmm0
movups xmmword [r12 + 0x30], xmm0
mov rcx, qword [r13]
test rcx, rcx
je 0x14008b953
mov eax, 0x18
cmp ax, word [rcx + 0x184]
jbe 0x14008b8cb
cmp dword [rcx + 0x180], 0
jne 0x14008b8ba
inc dword [rcx + 0x194]
mov edx, eax
call fcn.140033fb0
jmp 0x14008b95d
cmp byte [rcx + 0x63], 0
je 0x14008b949
xor eax, eax
jmp 0x14008b95d
mov rdx, qword [rcx + 0x1b8]
test rdx, rdx
je 0x14008b8e9
mov rax, qword [rdx]
mov qword [rcx + 0x1b8], rax
inc dword [rcx + 0x190]
jmp 0x14008b960
mov rdx, qword [rcx + 0x1b0]
test rdx, rdx
je 0x14008b907
mov rax, qword [rdx]
mov qword [rcx + 0x1b0], rax
inc dword [rcx + 0x190]
jmp 0x14008b960
mov rdx, qword [rcx + 0x1a8]
test rdx, rdx
je 0x14008b925
mov rax, qword [rdx]
mov qword [rcx + 0x1a8], rax
inc dword [rcx + 0x190]
jmp 0x14008b960
mov rdx, qword [rcx + 0x1a0]
test rdx, rdx
je 0x14008b943
mov rax, qword [rdx]
inc dword [rcx + 0x190]
mov qword [rcx + 0x1a0], rax
jmp 0x14008b960
inc dword [rcx + 0x198]
mov rdx, rax
call fcn.140033fb0
jmp 0x14008b95d
mov ecx, 0x18
call fcn.14007d0e0
mov rdx, rax
test rdx, rdx
je 0x14008b98a
mov rcx, qword [r13 + 0x188]
lea rax, [0x140024b10]
mov qword [rdx], rcx
mov qword [r13 + 0x188], rdx
mov qword [rdx + 8], r12
mov qword [rdx + 0x10], rax
jmp 0x14008bb43
mov rcx, qword [r12 + 0x20]
mov rbx, qword [r13]
test rcx, rcx
je 0x14008b9fa
test rbx, rbx
je 0x14008b9f5
cmp qword [rbx + 0x2e0], 0
je 0x14008b9b4
mov rdx, rcx
mov rcx, rbx
call fcn.140045520
jmp 0x14008b9fa
cmp rcx, qword [rbx + 0x1d0]
jae 0x14008b9f5
cmp rcx, qword [rbx + 0x1c0]
jb 0x14008b9d9
mov rax, qword [rbx + 0x1b8]
mov qword [rcx], rax
mov qword [rbx + 0x1b8], rcx
jmp 0x14008b9fa
cmp rcx, qword [rbx + 0x1c8]
jb 0x14008b9f5
mov rax, qword [rbx + 0x1a8]
mov qword [rcx], rax
mov qword [rbx + 0x1a8], rcx
jmp 0x14008b9fa
call fcn.140015cb0
mov rcx, qword [r12 + 0x30]
test rcx, rcx
je 0x14008ba66
test rbx, rbx
je 0x14008ba61
cmp qword [rbx + 0x2e0], 0
je 0x14008ba20
mov rdx, rcx
mov rcx, rbx
call fcn.140045520
jmp 0x14008ba6b
cmp rcx, qword [rbx + 0x1d0]
jae 0x14008ba61
cmp rcx, qword [rbx + 0x1c0]
jb 0x14008ba45
mov rax, qword [rbx + 0x1b8]
mov qword [rcx], rax
mov qword [rbx + 0x1b8], rcx
jmp 0x14008ba6b
cmp rcx, qword [rbx + 0x1c8]
jb 0x14008ba61
mov rax, qword [rbx + 0x1a8]
mov qword [rcx], rax
mov qword [rbx + 0x1a8], rcx
jmp 0x14008ba6b
call fcn.140015cb0
test rbx, rbx
je 0x14008bacb
cmp qword [rbx + 0x2e0], 0
je 0x14008ba85
mov rdx, r12
mov rcx, rbx
call fcn.140045520
jmp 0x14008bb43
cmp r12, qword [rbx + 0x1d0]
jae 0x14008bacb
cmp r12, qword [rbx + 0x1c0]
jb 0x14008baae
mov rax, qword [rbx + 0x1b8]
mov qword [r12], rax
mov qword [rbx + 0x1b8], r12
jmp 0x14008bb43
cmp r12, qword [rbx + 0x1c8]
jb 0x14008bacb
mov rax, qword [rbx + 0x1a8]
mov qword [r12], rax
mov qword [rbx + 0x1a8], r12
jmp 0x14008bb43
cmp dword [0x140307fe0], 0
je 0x14008bb33
mov rcx, qword [0x14030d990]
test rcx, rcx
je 0x14008baed
mov rax, qword [0x140308060]
call qword [case.0x14007d279.0]
mov rax, qword [0x140308018]
mov rcx, r12
call qword [case.0x14007d279.0]
dec qword [0x14030d928]
movsxd rcx, eax
sub qword [0x14030d8e0], rcx
mov rcx, r12
mov rax, qword [0x140308008]
call qword [case.0x14007d279.0]
mov rcx, qword [0x14030d990]
test rcx, rcx
je 0x14008bb43
mov rax, qword [0x140308070]
jmp 0x14008bb3d
mov rax, qword [0x140308008]
mov rcx, r12
call qword [case.0x14007d279.0]
xor r9d, r9d
cmp byte [rsi + 0x63], 0
jne 0x14008d70e
mov rax, qword [rbp + 0xe8]
xorps xmm0, xmm0
xorps xmm1, xmm1
mov eax, dword [rax + 0x10]
mov dword [r12 + 0x3c], eax
mov rax, qword [rsp + 0x48]
mov qword [rbp + 0x20], rax
mov eax, dword [r13 + 0x38]
inc eax
mov qword [rbp + 0x18], r13
mov qword [rbp + 0x28], r12
movdqu xmmword [rbp + 0x30], xmm0
movdqu xmmword [rbp + 0x40], xmm1
mov dword [r12 + 0x10], eax
test r14, r14
je 0x14008bb95
mov eax, dword [r14]
jmp 0x14008bb98
mov eax, r9d
mov rsi, qword [rbp]
mov dword [r12 + 0xc], eax
mov qword [r12 + 0x18], r14
test rsi, rsi
je 0x14008bc18
cmp dword [rsi], 0
lea rbx, [rsi + 8]
mov edi, r9d
jle 0x14008bc18
lea r12, [0x140025f90]
lea r15, [0x1400a7180]
lea r14, [0x1400a7170]
nop dword [rax]
mov rdx, qword [rbx]
lea rax, [rbp + 0x18]
mov qword [rbp - 0x50], r12
mov qword [rbp - 0x48], r15
mov qword [rbp - 0x40], r14
mov dword [rbp - 0x38], r9d
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x58], r9
test rdx, rdx
je 0x14008bc00
lea rcx, [rbp - 0x58]
call fcn.1400bd6e0
xor r9d, r9d
inc edi
add rbx, 0x20
cmp edi, dword [rsi]
jl 0x14008bbd0
mov r15, qword [rbp - 0x68]
mov r12, qword [rsp + 0x68]
mov r14, qword [rsp + 0x58]
mov rsi, qword [rbp - 0x80]
test rsi, rsi
je 0x14008bc9a
cmp dword [rsi], 0
lea rbx, [rsi + 8]
mov edi, r9d
jle 0x14008bc9a
lea r13, [0x140025f90]
lea r15, [0x1400a7180]
lea r12, [0x1400a7170]
nop dword [rax]
nop word [rax + rax]
mov rdx, qword [rbx]
lea rax, [rbp + 0x18]
mov qword [rbp - 0x50], r13
mov qword [rbp - 0x48], r15
mov qword [rbp - 0x40], r12
mov dword [rbp - 0x38], r9d
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x58], r9
test rdx, rdx
je 0x14008bc80
lea rcx, [rbp - 0x58]
call fcn.1400bd6e0
xor r9d, r9d
inc edi
add rbx, 0x20
cmp edi, dword [rsi]
jl 0x14008bc50
mov r15, qword [rbp - 0x68]
mov r12, qword [rsp + 0x68]
mov r13, qword [rbp + 0xe0]
mov rcx, qword [rbp - 0x20]
test rcx, rcx
je 0x14008bd30
test r14, r14
je 0x14008bcf3
mov rbx, qword [rbp + 0xe8]
lea rax, [0x140041cc0]
xorps xmm0, xmm0
mov qword [rbp - 0x38], r9
movdqu xmmword [rbp - 0x48], xmm0
mov qword [rbp - 0x58], r13
mov rdx, qword [rbx + 0x40]
mov qword [rbp - 0x50], rax
mov qword [rbp - 0x30], rbx
test rdx, rdx
je 0x14008bceb
lea rcx, [rbp - 0x58]
call fcn.1400bd6e0
mov rcx, qword [rbp - 0x20]
xor r9d, r9d
mov rax, qword [rbx + 0x30]
mov qword [rbp - 0x60], rax
lea rax, [0x140025f90]
mov dword [rbp - 0x38], r9d
mov qword [rbp - 0x50], rax
mov rdx, rcx
lea rax, [0x1400a7180]
mov qword [rbp - 0x58], r9
mov qword [rbp - 0x48], rax
lea rcx, [rbp - 0x58]
lea rax, [0x1400a7170]
mov qword [rbp - 0x40], rax
lea rax, [rbp + 0x18]
mov qword [rbp - 0x30], rax
call fcn.1400bd6e0
mov rdi, qword [rbp + 0xe8]
mov eax, dword [r12 + 0x28]
mov dword [r12 + 0x2c], eax
cmp qword [rdi + 0x38], 0
jne 0x14008be47
cmp qword [rdi + 0x40], 0
jne 0x14008be47
cmp dword [r12 + 0x38], 1
jne 0x14008be47
mov rax, qword [r12 + 0x30]
mov r9, qword [rax]
mov r11, qword [r9 + 0x20]
test r11, r11
je 0x14008be47
cmp dword [r11], 1
jne 0x14008be47
test dword [r9 + 4], 0x1000000
jne 0x14008be47
mov rsi, qword [rsp + 0x40]
test dword [rsi + 0x5c], 0x10000
jne 0x14008be47
mov r9, qword [r9 + 8]
lea r10, [0x140290654]
mov rdx, r9
sub r10, r9
movzx eax, byte [rdx]
movzx r8d, byte [rdx + r10]
cmp eax, r8d
jne 0x14008bddd
test eax, eax
jne 0x14008bdf1
mov rcx, qword [r11 + 8]
call fcn.14006a530
neg eax
mov byte [rbp + 0xf8], 1
sbb bl, bl
and bl, 2
jmp 0x14008be1a
lea rbx, [0x14028a630]
movzx ecx, byte [rax + rbx]
movzx eax, byte [r8 + rbx]
cmp ecx, eax
jne 0x14008bdf6
inc rdx
jmp 0x14008bdb3
lea r8, [0x140290658]
sub r8, r9
movzx eax, byte [r9]
movzx edx, byte [r9 + r8]
cmp eax, edx
jne 0x14008be36
test eax, eax
jne 0x14008be42
mov bl, 1
mov byte [rbp + 0xf8], 2
xor r8d, r8d
mov rdx, r11
mov rcx, rsi
call fcn.14006f200
mov qword [rbp + 0x50], rax
test rax, rax
je 0x14008be4e
mov byte [rax + 0x18], bl
jmp 0x14008be4e
movzx ecx, byte [rax + rbx]
movzx eax, byte [rdx + rbx]
cmp ecx, eax
jne 0x14008be47
inc r9
jmp 0x14008be00
mov byte [rbp + 0xf8], 0
mov edx, dword [r12 + 0x38]
xor r9d, r9d
mov dword [rsp + 0x78], r9d
mov r13d, r9d
test edx, edx
jle 0x14008bf8c
mov rbx, qword [rsp + 0x68]
lea r15, [0x140025f90]
mov r12d, r9d
nop word [rax + rax]
mov rax, qword [rbx + 0x30]
mov r14, qword [r12 + rax]
or dword [rbp + 0x40], 0x20000
mov qword [rbp - 0x18], r14
mov rsi, qword [r14 + 0x20]
test rsi, rsi
je 0x14008bf08
cmp dword [rsi], 0
lea rbx, [rsi + 8]
mov edi, r9d
jle 0x14008bf03
lea r14, [0x1400a7180]
lea r13, [0x1400a7170]
nop word [rax + rax]
mov rdx, qword [rbx]
lea rax, [rbp + 0x18]
mov qword [rbp - 0x50], r15
mov qword [rbp - 0x48], r14
mov qword [rbp - 0x40], r13
mov dword [rbp - 0x38], r9d
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x58], r9
test rdx, rdx
je 0x14008bef0
lea rcx, [rbp - 0x58]
call fcn.1400bd6e0
xor r9d, r9d
inc edi
add rbx, 0x20
cmp edi, dword [rsi]
jl 0x14008bec0
mov r14, qword [rbp - 0x18]
mov r13d, dword [rsp + 0x78]
mov rbx, qword [rsp + 0x68]
test dword [r14 + 4], 0x1000000
je 0x14008bf52
mov rax, qword [r14 + 0x40]
mov qword [rbp - 0x50], r15
mov dword [rbp - 0x38], r9d
mov qword [rbp - 0x58], r9
mov rdx, qword [rax + 0x48]
lea rax, [0x1400a7180]
mov qword [rbp - 0x48], rax
lea rax, [0x1400a7170]
mov qword [rbp - 0x40], rax
lea rax, [rbp + 0x18]
mov qword [rbp - 0x30], rax
test rdx, rdx
je 0x14008bf52
lea rcx, [rbp - 0x58]
call fcn.1400bd6e0
and dword [rbp + 0x40], 0xfffdffff
inc r13d
mov edx, dword [rbx + 0x38]
add r12, 0x20
mov dword [rsp + 0x78], r13d
mov r9d, 0
cmp r13d, edx
jl 0x14008be80
mov r15, qword [rbp - 0x68]
mov r12, qword [rsp + 0x68]
mov r14, qword [rsp + 0x58]
mov rdi, qword [rbp + 0xe8]
mov r13, qword [rbp + 0xe0]
mov rsi, qword [rsp + 0x40]
mov eax, dword [r13 + 0x38]
mov dword [r12 + 0x14], eax
cmp byte [rsi + 0x63], 0
jne 0x14008d70e
test r14, r14
je 0x14008d16b
mov qword [rbp - 8], r9
mov r14, r9
movzx ebx, r9w
cmp edx, 1
jne 0x14008c0aa
mov rax, qword [r12 + 0x30]
cmp dword [rax + 0x14], 0
jl 0x14008c0aa
mov rax, qword [rax]
mov rdx, qword [rax + 0x20]
test rdx, rdx
je 0x14008c0aa
mov rdx, qword [rdx + 8]
test rdx, rdx
je 0x14008c003
xor r9d, r9d
xor r8d, r8d
mov rcx, rsi
call fcn.140038c90
mov rbx, rax
jmp 0x14008c006
mov rbx, r9
mov rdi, qword [rsp + 0x58]
xor r8d, r8d
mov rdx, rdi
mov rcx, rsi
call fcn.14006f200
mov qword [rbp - 8], rax
mov r14, rax
test rax, rax
jne 0x14008c045
mov rcx, qword [r13]
mov rdx, rbx
call fcn.14006ee50
mov r14, rax
mov qword [rbp - 8], rax
neg rax
sbb bx, bx
and bx, 0x500
jmp 0x14008c0af
movsxd rax, dword [rax]
lea ecx, [rax + 1]
cmp dword [r14 + 4], ecx
jge 0x14008c074
mov rcx, qword [r13]
mov r8, rbx
mov rdx, r14
call fcn.14006ed60
mov r14, rax
mov qword [rbp - 8], rax
neg rax
sbb bx, bx
and bx, 0x500
jmp 0x14008c0af
movups xmm0, xmmword [0x14028c920]
shl rax, 5
movups xmm1, xmmword [0x14028c930]
mov dword [r14], ecx
movups xmmword [rax + r14 + 8], xmm0
movups xmmword [rax + r14 + 0x18], xmm1
mov qword [rax + r14 + 8], rbx
mov rax, r14
neg rax
sbb bx, bx
and bx, 0x500
jmp 0x14008c0af
mov rdi, qword [rsp + 0x58]
mov eax, dword [r13 + 0x34]
xor r8d, r8d
mov dword [r12 + 4], eax
mov rdx, rdi
inc dword [r13 + 0x34]
mov rcx, r13
mov r9d, dword [r12 + 0x28]
call fcn.14007b740
movsxd r9, dword [r15 + 0x90]
mov r13, rax
mov edx, dword [r12 + 0xc]
mov r8d, dword [r12 + 4]
mov qword [rbp - 0x18], rax
mov dword [rbp - 0x80], r9d
cmp dword [r15 + 0x94], r9d
jg 0x14008c110
xor eax, eax
mov r9d, edx
mov rcx, r15
mov dword [rsp + 0x20], eax
lea edx, [rax + 0x72]
call fcn.1400417b0
mov r9d, eax
mov dword [rbp - 0x80], eax
jmp 0x14008c143
lea rcx, [r9 + r9*2]
xor r10d, r10d
lea eax, [r9 + 1]
mov dword [r15 + 0x90], eax
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], WSACleanup
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r10d
mov qword [rax + rcx*8 + 0x10], r10
mov rcx, qword [r15]
mov eax, r9d
cmp byte [rcx + 0x63], 0
je 0x14008c163
cmp qword [rcx + 0x2e0], 0
jne 0x14008c1a9
mov rcx, r13
call fcn.14007b970
jmp 0x14008c1a9
test r9d, r9d
jns 0x14008c171
mov eax, dword [r15 + 0x90]
dec eax
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [r15 + 0x88]
cmp byte [rax + rcx*8 + 1], 0
lea rdx, [rax + rcx*8]
je 0x14008c19c
mov r9d, 0xfffffff7
mov r8, r13
mov rcx, r15
call fcn.1400b5850
jmp 0x14008c1a9
test r13, r13
je 0x14008c1a9
mov qword [rdx + 0x10], r13
mov byte [rdx + 1], 0xf7
mov r8, qword [rbp + 0xe0]
mov r9, qword [rsp + 0x58]
mov eax, dword [r8 + 0x38]
inc eax
mov dword [rbp - 0x68], eax
lea edx, [rax + 1]
mov eax, dword [r8 + 0x44]
lea ecx, [rdx + 2]
mov dword [rsp + 0x70], edx
mov dword [r8 + 0x38], ecx
lea edi, [rcx + 1]
dec eax
mov dword [rbp + 0xf8], ecx
mov dword [rbp - 0x6c], eax
lea esi, [rax - 1]
mov dword [r8 + 0x44], esi
add ecx, dword [r9]
mov dword [r8 + 0x38], ecx
mov dword [rsp + 0x78], esi
lea eax, [rcx + 1]
add ecx, dword [r9]
mov dword [r8 + 0x38], ecx
movsxd rcx, dword [r15 + 0x90]
mov dword [rbp - 0x24], eax
cmp dword [r15 + 0x94], ecx
jg 0x14008c22e
xor eax, eax
mov r9d, edx
xor r8d, r8d
mov dword [rsp + 0x20], eax
mov rcx, r15
lea edx, [rax + 0x45]
call fcn.1400417b0
mov r9, qword [rsp + 0x58]
xor r8d, r8d
jmp 0x14008c25c
lea eax, [rcx + 1]
xor r8d, r8d
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov qword [rax + rcx*8], 0x45
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], r8
mov edx, dword [r9]
movsxd rcx, dword [r15 + 0x90]
dec edx
add edx, edi
cmp dword [r15 + 0x94], ecx
jg 0x14008c28e
xor r8d, r8d
mov dword [rsp + 0x20], edx
mov r9d, edi
mov rcx, r15
lea edx, [r8 + 0x48]
call fcn.1400417b0
xor r8d, r8d
jmp 0x14008c2b8
lea eax, [rcx + 1]
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov qword [rax + rcx*8], 0x48
mov dword [rax + rcx*8 + 8], edi
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], r8
movsxd rcx, dword [r15 + 0x90]
cmp dword [r15 + 0x94], ecx
jg 0x14008c2e9
mov dword [rsp + 0x20], r8d
mov r9d, esi
mov r8d, dword [rbp + 0xf8]
mov edx, recv
mov rcx, r15
call fcn.1400417b0
xor r8d, r8d
jmp 0x14008c31d
mov edx, dword [rbp + 0xf8]
lea eax, [rcx + 1]
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], recv
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], esi
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], r8
cmp dword [rbp - 0x28], 0
mov ecx, 0x240
mov rdi, qword [rsp + 0x58]
mov eax, 0x40
mov rdx, qword [rsp + 0x48]
cmovne ax, cx
mov dword [rsp + 0x30], r8d
or ax, bx
mov rbx, qword [rbp + 0xe0]
mov r9, rdi
mov r8, qword [rbp - 0x60]
mov rcx, rbx
mov word [rsp + 0x28], ax
mov qword [rsp + 0x20], r14
call fcn.1400a7190
mov qword [rbp - 0x60], rax
mov rcx, rax
test rax, rax
jne 0x14008c38e
mov rsi, qword [rsp + 0x40]
test r14, r14
je 0x14008c382
mov rdx, r14
mov rcx, rsi
call fcn.140039570
mov r13, qword [rbp + 0xe0]
jmp 0x14008d70e
movzx eax, byte [rax + 0x43]
mov dword [rsp + 0x74], eax
movsx eax, byte [rcx + 0x41]
cmp eax, dword [rdi]
jne 0x14008c3ae
mov rdi, qword [rsp + 0x68]
xor r11d, r11d
mov r12d, r11d
jmp 0x14008c732
cmp byte [rsp + 0x50], 0
je 0x14008c3c9
mov rax, qword [rbp + 0xe8]
lea r9, str.DISTINCT
test byte [rax + 4], 1
je 0x14008c3d0
lea r9, str.GROUP_BY
lea r8, str.USE_TEMP_B_TREE_FOR__s
xor edx, edx
mov rcx, rbx
call fcn.14009fc40
mov r14d, dword [rdi]
mov esi, r14d
mov eax, dword [r12 + 0x28]
mov edx, r14d
mov dword [rsp + 0x48], 1
test eax, eax
jle 0x14008c430
mov r8, qword [r12 + 0x20]
mov r9d, eax
add r8, 0x1a
nop word [rax + rax]
movsx ecx, word [r8]
lea eax, [rsi + 1]
cmp ecx, edx
lea r8, [r8 + 0x20]
cmovl eax, esi
mov esi, eax
lea eax, [rdx + 1]
cmovl eax, edx
mov edx, eax
sub r9, 1
jne 0x14008c410
cmp esi, 1
jne 0x14008c458
movzx eax, byte [rbx + 0x1f]
test al, al
jne 0x14008c446
inc dword [rbx + 0x38]
mov r12d, dword [rbx + 0x38]
jmp 0x14008c47d
dec al
movzx eax, al
mov byte [rbx + 0x1f], al
mov r12d, dword [rbx + rax*4 + 0xd0]
jmp 0x14008c47d
mov ecx, dword [rbx + 0x28]
mov r12d, dword [rbx + 0x2c]
cmp esi, ecx
jg 0x14008c471
lea eax, [rsi + r12]
sub ecx, esi
mov dword [rbx + 0x2c], eax
mov dword [rbx + 0x28], ecx
jmp 0x14008c47d
mov eax, dword [rbx + 0x38]
lea r12d, [rax + 1]
add eax, esi
mov dword [rbx + 0x38], eax
xor r9d, r9d
mov byte [rsp + 0x20], 0
mov r8d, r12d
mov rdx, rdi
mov rcx, rbx
call fcn.14006a700
mov rax, qword [rsp + 0x68]
xor r8d, r8d
mov edi, r8d
cmp dword [rax + 0x28], r8d
jle 0x14008c4f9
mov ebx, r8d
mov r13, rax
nop word [rax + rax]
mov rdx, qword [r13 + 0x20]
add rdx, rbx
movsx eax, word [rdx + 0x1a]
cmp eax, r14d
jl 0x14008c4df
movsx r9d, word [rdx + 0x18]
lea eax, [r12 + r14]
mov r8d, dword [rdx + 0x10]
mov rcx, r15
mov rdx, qword [rdx]
mov dword [rsp + 0x20], eax
call fcn.14006ab80
inc r14d
inc edi
add rbx, 0x20
cmp edi, dword [r13 + 0x28]
jl 0x14008c4b0
mov r13, qword [rbp - 0x18]
xor r8d, r8d
mov rbx, qword [rbp + 0xe0]
movzx eax, byte [rbx + 0x1f]
test al, al
jne 0x14008c509
inc dword [rbx + 0x38]
mov ebx, dword [rbx + 0x38]
jmp 0x14008c518
dec al
movzx eax, al
mov byte [rbx + 0x1f], al
mov ebx, dword [rbx + rax*4 + 0xd0]
movsxd rcx, dword [r15 + 0x90]
cmp dword [r15 + 0x94], ecx
jg 0x14008c544
mov r9d, esi
mov dword [rsp + 0x20], ebx
mov r8d, r12d
mov edx, 0x5d
mov rcx, r15
call fcn.1400417b0
xor r8d, r8d
jmp 0x14008c572
lea eax, [rcx + 1]
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0x5d
mov dword [rax + rcx*8 + 4], r12d
mov dword [rax + rcx*8 + 8], esi
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], r8
mov rdi, qword [rsp + 0x68]
movsxd rcx, dword [r15 + 0x90]
mov edx, dword [rdi + 4]
cmp dword [r15 + 0x94], ecx
jg 0x14008c5a4
mov dword [rsp + 0x20], r8d
mov r9d, ebx
mov r8d, edx
mov rcx, r15
mov edx, 0x87
call fcn.1400417b0
jmp 0x14008c5d2
lea eax, [rcx + 1]
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0x87
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], r8
test ebx, ebx
je 0x14008c5f4
mov rcx, qword [rbp + 0xe0]
movzx eax, byte [rcx + 0x1f]
cmp al, 8
jae 0x14008c5f4
mov dword [rcx + rax*4 + 0xd0], ebx
mov rbx, rcx
inc byte [rcx + 0x1f]
jmp 0x14008c5fb
mov rbx, qword [rbp + 0xe0]
cmp esi, 1
jne 0x14008c61a
test r12d, r12d
je 0x14008c626
movzx eax, byte [rbx + 0x1f]
cmp al, 8
jae 0x14008c626
mov dword [rbx + rax*4 + 0xd0], r12d
inc byte [rbx + 0x1f]
jmp 0x14008c626
cmp esi, dword [rbx + 0x28]
jle 0x14008c626
mov dword [rbx + 0x28], esi
mov dword [rbx + 0x2c], r12d
mov rcx, qword [rbp - 0x60]
call fcn.1400ab130
mov edx, dword [rbx + 0x34]
mov dword [rdi + 8], edx
inc dword [rbx + 0x34]
movzx eax, byte [rbx + 0x1f]
mov dword [rbp - 0x70], edx
test al, al
jne 0x14008c64c
inc dword [rbx + 0x38]
mov r8d, dword [rbx + 0x38]
jmp 0x14008c65c
dec al
movzx eax, al
mov byte [rbx + 0x1f], al
mov r8d, dword [rbx + rax*4 + 0xd0]
movsxd rcx, dword [r15 + 0x90]
mov dword [rbp - 0x74], r8d
cmp dword [r15 + 0x94], ecx
jg 0x14008c68c
mov r9d, r8d
mov dword [rsp + 0x20], esi
mov r8d, edx
mov rcx, r15
mov edx, 0x75
call fcn.1400417b0
xor r11d, r11d
jmp 0x14008c6bd
lea eax, [rcx + 1]
xor r11d, r11d
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0x75
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], esi
mov qword [rax + rcx*8 + 0x10], r11
movsxd rcx, dword [r15 + 0x90]
mov edx, dword [rdi + 4]
cmp dword [r15 + 0x94], ecx
jg 0x14008c6ef
mov r9d, dword [rsp + 0x60]
mov r8d, edx
mov edx, 0x23
mov dword [rsp + 0x20], r11d
mov rcx, r15
call fcn.1400417b0
xor r11d, r11d
jmp 0x14008c721
lea eax, [rcx + 1]
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rsp + 0x60]
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8], 0x23
mov dword [rax + rcx*8 + 0xc], r11d
mov qword [rax + rcx*8 + 0x10], r11
mov r14, qword [rbp - 8]
mov r12d, dword [rsp + 0x48]
mov rcx, qword [rbp - 0x60]
mov byte [rdi + 1], 1
cmp dword [rbp - 0x28], 0
je 0x14008c789
mov rax, qword [rsp + 0x40]
test byte [rax + 0x5c], 4
jne 0x14008c789
test r12d, r12d
jne 0x14008c74e
test byte [rcx + 0x44], 8
je 0x14008c789
mov rcx, qword [r15]
mov qword [rbp + 0x58], r11
cmp byte [rcx + 0x63], 0
jne 0x14008c789
movsxd rax, dword [rbp - 0x78]
lea rdx, [rax + rax*2]
mov rax, qword [r15 + 0x88]
mov r8, qword [rax + rdx*8 + 0x10]
lea rbx, [rax + rdx*8]
movsx edx, byte [rax + rdx*8 + 1]
call fcn.14003e900
xor r11d, r11d
mov word [rbx], 0xb1
mov qword [rbx + 0x10], r11
movsxd rsi, dword [r15 + 0x90]
mov dword [rsp + 0x48], esi
test r12d, r12d
je 0x14008c7fe
mov edx, dword [rdi + 4]
cmp dword [r15 + 0x94], esi
jg 0x14008c7c7
mov r8d, dword [rbp - 0x70]
mov rcx, r15
mov r9d, dword [rbp - 0x74]
mov dword [rsp + 0x20], r8d
mov r8d, edx
mov edx, 0x81
call fcn.1400417b0
xor r11d, r11d
jmp 0x14008c7fe
mov r8d, dword [rbp - 0x74]
lea rcx, [rsi + rsi*2]
lea eax, [rsi + 1]
mov dword [r15 + 0x90], eax
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8 + 8], r8d
mov r8d, dword [rbp - 0x70]
mov dword [rax + rcx*8 + 0xc], r8d
mov dword [rax + rcx*8], 0x81
mov dword [rax + rcx*8 + 4], edx
mov qword [rax + rcx*8 + 0x10], r11
mov rax, qword [rsp + 0x58]
mov ebx, r11d
mov edx, dword [rax]
test edx, edx
jle 0x14008c8ba
mov r14, qword [rsp + 0x68]
lea rdi, [rax + 8]
mov r13d, dword [rbp - 0x24]
mov esi, dword [rbp - 0x70]
lea r8d, [rbx + r13]
test r12d, r12d
je 0x14008c883
movsxd rcx, dword [r15 + 0x90]
cmp dword [r15 + 0x94], ecx
jg 0x14008c853
mov dword [rsp + 0x20], r8d
mov r9d, ebx
mov r8d, esi
mov edx, 0x5b
mov rcx, r15
call fcn.1400417b0
jmp 0x14008c896
lea eax, [rcx + 1]
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0x5b
mov dword [rax + rcx*8 + 4], esi
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], r11
jmp 0x14008c899
mov rcx, qword [rbp + 0xe0]
mov byte [r14], 1
mov rdx, qword [rdi]
call fcn.14006a6a0
xor r11d, r11d
mov rax, qword [rsp + 0x58]
inc ebx
add rdi, 0x20
mov edx, dword [rax]
cmp ebx, edx
jl 0x14008c820
mov r13, qword [rbp - 0x18]
mov esi, dword [rsp + 0x48]
mov r14, qword [rbp - 8]
test r13, r13
je 0x14008c8c5
inc dword [r13]
mov edx, dword [rax]
movsxd r8, dword [r15 + 0x90]
mov edi, dword [rbp - 0x24]
cmp dword [r15 + 0x94], r8d
jg 0x14008c8fb
mov r8d, dword [rbp + 0xf8]
mov r9d, edi
mov dword [rsp + 0x20], edx
inc r8d
mov edx, 0x57
mov rcx, r15
call fcn.1400417b0
mov r8d, eax
jmp 0x14008c934
mov r10d, dword [rbp + 0xf8]
lea rcx, [r8 + r8*2]
lea eax, [r8 + 1]
inc r10d
mov dword [r15 + 0x90], eax
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0x57
mov dword [rax + rcx*8 + 4], r10d
mov dword [rax + rcx*8 + 8], edi
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], r11
mov rax, qword [r15]
cmp byte [rax + 0x63], 0
je 0x14008c9d0
cmp qword [rax + 0x2e0], 0
jne 0x14008ca18
test r13, r13
je 0x14008ca18
add dword [r13], 0xffffffff
jne 0x14008ca18
mov rcx, qword [r13 + 0x10]
test rcx, rcx
je 0x14008c9c6
cmp qword [rcx + 0x2e0], 0
je 0x14008c983
mov rdx, r13
call fcn.140045520
jmp 0x14008ca18
cmp r13, qword [rcx + 0x1d0]
jae 0x14008c9c6
cmp r13, qword [rcx + 0x1c0]
jb 0x14008c9a9
mov rax, qword [rcx + 0x1b8]
mov qword [r13], rax
mov qword [rcx + 0x1b8], r13
jmp 0x14008ca18
cmp r13, qword [rcx + 0x1c8]
jb 0x14008c9c6
mov rax, qword [rcx + 0x1a8]
mov qword [r13], rax
mov qword [rcx + 0x1a8], r13
jmp 0x14008ca18
mov rcx, r13
call fcn.140015cb0
jmp 0x14008ca18
test r8d, r8d
jns 0x14008c9df
mov r8d, dword [r15 + 0x90]
dec r8d
movsxd rax, r8d
lea rcx, [rax + rax*2]
mov rax, qword [r15 + 0x88]
cmp byte [rax + rcx*8 + 1], 0
lea rdx, [rax + rcx*8]
je 0x14008ca0b
mov r9d, 0xfffffff7
mov r8, r13
mov rcx, r15
call fcn.1400b5850
jmp 0x14008ca18
test r13, r13
je 0x14008ca18
mov qword [rdx + 0x10], r13
mov byte [rdx + 1], 0xf7
movsxd rbx, dword [r15 + 0x90]
lea edx, [rbx + 1]
cmp dword [r15 + 0x94], ebx
jg 0x14008ca43
xor r9d, r9d
mov dword [rsp + 0x20], edx
mov r8d, edx
mov rcx, r15
lea edx, [r9 + 0x10]
call fcn.1400417b0
jmp 0x14008ca71
mov rax, qword [r15 + 0x88]
lea rcx, [rbx + rbx*2]
mov dword [r15 + 0x90], edx
xor r8d, r8d
mov dword [rax + rcx*8], reloc.WS2_32.dll_recv
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], r8
mov rax, qword [rsp + 0x58]
mov edx, edi
mov r13d, dword [rbp + 0xf8]
mov rcx, qword [rbp + 0xe0]
mov r9d, dword [rax]
lea r8d, [r13 + 1]
call fcn.14006c0f0
movsxd rcx, dword [r15 + 0x90]
mov edi, dword [rsp + 0x70]
cmp dword [r15 + 0x94], ecx
jg 0x14008cac4
mov r9d, dword [rbp - 0x6c]
lea r8d, [rdi + 1]
xor eax, eax
mov rcx, r15
mov dword [rsp + 0x20], eax
lea edx, [rax + 0xc]
call fcn.1400417b0
xor r8d, r8d
jmp 0x14008cafb
lea eax, [rcx + 1]
xor r8d, r8d
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
lea edx, [rdi + 1]
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rbp - 0x6c]
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8], recv
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], r8
movsxd rcx, dword [r15 + 0x90]
cmp dword [r15 + 0x94], ecx
jg 0x14008cb2a
mov r9d, dword [rsp + 0x60]
mov edx, 0x30
mov dword [rsp + 0x20], r8d
mov rcx, r15
mov r8d, edi
call fcn.1400417b0
xor r8d, r8d
jmp 0x14008cb5c
mov edx, dword [rsp + 0x60]
lea eax, [rcx + 1]
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0x30
mov dword [rax + rcx*8 + 4], edi
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], r8
movsxd rcx, dword [r15 + 0x90]
cmp dword [r15 + 0x94], ecx
jg 0x14008cb88
mov r9d, dword [rsp + 0x78]
mov edx, recv
mov dword [rsp + 0x20], r8d
mov rcx, r15
mov r8d, r13d
call fcn.1400417b0
jmp 0x14008cbbb
mov edx, dword [rsp + 0x78]
lea eax, [rcx + 1]
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
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], r8d
mov qword [rax + rcx*8 + 0x10], r8
mov edx, dword [r15 + 0x90]
test ebx, ebx
jns 0x14008cbc9
lea ebx, [rdx - 1]
mov rax, qword [r15]
cmp byte [rax + 0x63], 0
je 0x14008cbdb
lea rax, [0x14030dc80]
jmp 0x14008cbed
movsxd rax, ebx
lea rcx, [rax + rax*2]
mov rax, qword [r15 + 0x88]
lea rax, [rax + rcx*8]
mov r13, qword [rsp + 0x68]
mov ebx, dword [rbp - 0x68]
mov r8, r13
mov r9d, dword [rsp + 0x74]
mov rcx, qword [rbp + 0xe0]
mov dword [rax + 8], edx
mov edx, ebx
call fcn.1400b3650
movsxd rcx, dword [r15 + 0x90]
cmp dword [r15 + 0x94], ecx
jg 0x14008cc38
xor eax, eax
mov r9d, ebx
mov rcx, r15
mov dword [rsp + 0x20], eax
lea edx, [rax + 0x45]
lea r8d, [rax + 1]
call fcn.1400417b0
jmp 0x14008cc6b
lea eax, [rcx + 1]
xor edx, edx
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0x45
mov dword [rax + rcx*8 + 4], 1
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rdx
test r12d, r12d
je 0x14008ccd1
movsxd rcx, dword [r15 + 0x90]
xor r12d, r12d
mov edx, dword [r13 + 4]
cmp dword [r15 + 0x94], ecx
jg 0x14008cca1
mov r8d, edx
mov dword [rsp + 0x20], r12d
lea edx, [r12 + 3]
mov r9d, esi
mov rcx, r15
call fcn.1400417b0
jmp 0x14008cd16
lea eax, [rcx + 1]
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 3
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], esi
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
jmp 0x14008cd16
mov rcx, qword [rbp - 0x60]
call fcn.1400ab130
mov rcx, qword [r15]
cmp byte [rcx + 0x63], 0
jne 0x14008cd13
movsxd rax, dword [rbp - 0x80]
lea rdx, [rax + rax*2]
mov rax, qword [r15 + 0x88]
mov r8, qword [rax + rdx*8 + 0x10]
lea rbx, [rax + rdx*8]
movsx edx, byte [rax + rdx*8 + 1]
call fcn.14003e900
xor r12d, r12d
mov word [rbx], 0xb1
mov qword [rbx + 0x10], r12
jmp 0x14008cd16
xor r12d, r12d
test r14, r14
je 0x14008cd28
mov rcx, qword [rsp + 0x40]
mov rdx, r14
call fcn.140039570
movsxd rcx, dword [r15 + 0x90]
lea esi, [rdi + 1]
mov ebx, dword [rbp - 0x6c]
cmp dword [r15 + 0x94], ecx
jg 0x14008cd58
mov r9d, ebx
mov dword [rsp + 0x20], r12d
mov r8d, esi
mov edx, recv
mov rcx, r15
call fcn.1400417b0
jmp 0x14008cd86
lea eax, [rcx + 1]
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], recv
mov dword [rax + rcx*8 + 4], esi
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
movsxd rcx, dword [r15 + 0x90]
cmp dword [r15 + 0x94], ecx
jg 0x14008cdb1
mov r9d, dword [rsp + 0x60]
xor r8d, r8d
mov rcx, r15
mov dword [rsp + 0x20], r12d
lea edx, [r8 + 0xb]
call fcn.1400417b0
jmp 0x14008cde0
mov edx, dword [rsp + 0x60]
lea eax, [rcx + 1]
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov qword [rax + rcx*8], recv
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
movsxd rdi, dword [r15 + 0x90]
cmp dword [r15 + 0x94], edi
jg 0x14008ce0d
mov r9d, dword [rsp + 0x70]
mov edx, 0x45
mov rcx, r15
mov dword [rsp + 0x20], r12d
lea r8d, [rdx - 0x44]
call fcn.1400417b0
jmp 0x14008ce43
mov edx, dword [rsp + 0x70]
lea rcx, [rdi + rdi*2]
lea eax, [rdi + 1]
mov dword [r15 + 0x90], eax
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0x45
mov dword [rax + rcx*8 + 4], 1
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
movsxd rcx, dword [r15 + 0x90]
cmp dword [r15 + 0x94], ecx
jg 0x14008ce6c
xor r9d, r9d
mov dword [rsp + 0x20], r12d
mov r8d, esi
mov rcx, r15
lea edx, [r9 + 0x41]
call fcn.1400417b0
jmp 0x14008ce9a
lea eax, [rcx + 1]
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0x41
mov dword [rax + rcx*8 + 4], esi
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], r12
mov rcx, qword [r15 + 0x18]
not ebx
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x14008ceb5
mov r8d, ebx
mov rdx, r15
call fcn.140052260
jmp 0x14008cec7
mov rcx, qword [rcx + 0x50]
mov eax, dword [r15 + 0x90]
movsxd r8, ebx
mov dword [rcx + r8*4], eax
movsxd rax, dword [r15 + 0x90]
mov r14d, dword [rbp - 0x68]
lea r8d, [rax + 2]
lea ebx, [rax + 1]
cmp dword [r15 + 0x94], eax
jg 0x14008cefc
mov r9d, r8d
mov dword [rsp + 0x20], r12d
mov r8d, r14d
mov edx, 0x30
mov rcx, r15
call fcn.1400417b0
jmp 0x14008cf29
lea rcx, [rax + rax*2]
mov dword [r15 + 0x90], ebx
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0x30
mov dword [rax + rcx*8 + 4], r14d
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
movsxd rcx, dword [r15 + 0x90]
cmp dword [r15 + 0x94], ecx
jg 0x14008cf52
xor r9d, r9d
mov dword [rsp + 0x20], r12d
mov r8d, esi
mov rcx, r15
lea edx, [r9 + 0x41]
call fcn.1400417b0
jmp 0x14008cf80
lea eax, [rcx + 1]
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0x41
mov dword [rax + rcx*8 + 4], esi
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], r12
mov r12, qword [rbp + 0xe0]
mov rdx, r13
mov rcx, r12
call fcn.14003a5c0
mov rdx, qword [rbp - 0x20]
mov r9d, reloc.WS2_32.dll_recv
mov r8d, ebx
mov rcx, r12
call fcn.14006e260
mov rax, qword [rbp + 0xf0]
lea r9, [rbp + 0x58]
mov rdx, qword [rbp + 0xe8]
mov r8d, 0xffffffff
mov dword [rsp + 0x38], edi
mov rcx, r12
mov dword [rsp + 0x30], ebx
mov qword [rsp + 0x28], rax
lea rax, [rbp + 8]
mov qword [rsp + 0x20], rax
call fcn.140056310
movsxd rcx, dword [r15 + 0x90]
xor edi, edi
cmp dword [r15 + 0x94], ecx
jg 0x14008d006
xor r9d, r9d
mov dword [rsp + 0x20], edi
mov r8d, esi
lea edx, [rdi + 0x41]
mov rcx, r15
call fcn.1400417b0
jmp 0x14008d030
lea eax, [rcx + 1]
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0x41
mov dword [rax + rcx*8 + 4], esi
mov qword [rax + rcx*8 + 8], rdi
mov qword [rax + rcx*8 + 0x10], rdi
mov rcx, qword [r15 + 0x18]
mov edx, dword [rsp + 0x78]
not edx
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x14008d04f
mov r8d, edx
mov rdx, r15
call fcn.140052260
jmp 0x14008d061
mov rcx, qword [rcx + 0x50]
mov eax, dword [r15 + 0x90]
movsxd r8, edx
mov dword [rcx + r8*4], eax
mov rdx, r13
mov rcx, r12
call fcn.140051f80
movsxd rcx, dword [r15 + 0x90]
cmp dword [r15 + 0x94], ecx
jg 0x14008d094
xor r8d, r8d
mov dword [rsp + 0x20], edi
mov r9d, r14d
mov rcx, r15
lea edx, [r8 + 0x45]
call fcn.1400417b0
jmp 0x14008d0bf
lea eax, [rcx + 1]
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov qword [rax + rcx*8], 0x45
mov dword [rax + rcx*8 + 8], r14d
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
movsxd rcx, dword [r15 + 0x90]
cmp dword [r15 + 0x94], ecx
jg 0x14008d0eb
mov r8d, dword [rbp + 0xf8]
xor r9d, r9d
mov rcx, r15
mov dword [rsp + 0x20], edi
lea edx, [r9 + 0x41]
call fcn.1400417b0
jmp 0x14008d11f
mov edx, dword [rbp + 0xf8]
lea eax, [rcx + 1]
mov dword [r15 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r15 + 0x88]
mov dword [rax + rcx*8], 0x41
mov dword [rax + rcx*8 + 4], edx
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], rdi
mov ecx, dword [rsp + 0x74]
test ecx, ecx
je 0x14008d154
mov rax, qword [r13 + 0x30]
mov edx, ecx
mov r13, qword [rbp + 0xe0]
mov rcx, r13
mov r9d, dword [rax + 0x18]
mov r8d, dword [rax + 0x14]
call fcn.14003aaa0
mov ebx, dword [rsp + 0x60]
mov r12, qword [rbp + 0xe8]
jmp 0x14008d625
mov r13, qword [rbp + 0xe0]
mov ebx, dword [rsp + 0x60]
mov r12, qword [rbp + 0xe8]
jmp 0x14008d625
cmp qword [rdi + 0x30], 0
jne 0x14008d447
mov rax, qword [rdi + 0x20]
cmp dword [rax], 1
jne 0x14008d447
mov rsi, qword [rdi + 0x28]
cmp dword [rsi], 1
jne 0x14008d447
cmp qword [rsi + 0x30], 0
jne 0x14008d447
mov rsi, qword [rsi + 0x28]
mov r8, qword [rax + 8]
cmp dword [rsi + 0x54], 0
jne 0x14008d447
cmp byte [r8], 0xa7
jne 0x14008d447
test edx, edx
je 0x14008d447
mov rax, qword [r12 + 0x30]
mov rcx, qword [rax + 8]
mov eax, 0x100
test dword [rcx + 4], eax
je 0x14008d447
test dword [r8 + 4], 0x1000002
jne 0x14008d447
mov rdx, qword [rsi + 0x70]
mov edi, 0xffff8000
test rdx, rdx
je 0x14008d21b
mov rax, qword [r13]
mov edi, r9d
mov rcx, qword [rax + 0x20]
add rcx, 0x18
cmp qword [rcx], rdx
je 0x14008d21b
nop word [rax + rax]
inc edi
lea rcx, [rcx + 0x20]
cmp qword [rcx], rdx
jne 0x14008d210
mov r10, qword [rbp + 0xe0]
mov r14, r9
mov r13d, dword [r13 + 0x34]
mov rcx, r10
mov rbx, r9
lea eax, [r13 + 1]
mov dword [r10 + 0x34], eax
mov rax, qword [r10 + 0xa0]
mov r12d, dword [rsi + 0x38]
test rax, rax
cmovne rcx, rax
mov eax, dword [rcx + 0x74]
bt eax, edi
jb 0x14008d263
bts eax, edi
mov dword [rcx + 0x74], eax
cmp edi, 1
jne 0x14008d268
call fcn.14007e190
jmp 0x14008d29a
cmp edi, 1
je 0x14008d2a1
mov rax, qword [r10]
movsxd rdx, edi
shl rdx, 5
mov rcx, qword [rax + 0x20]
mov rax, qword [rdx + rcx + 8]
cmp byte [rax + 0x11], 0
je 0x14008d2a1
mov rax, qword [rsi]
xor r9d, r9d
mov r8d, dword [rsi + 0x38]
mov edx, edi
mov rcx, r10
mov qword [rsp + 0x20], rax
call fcn.140044380
mov r10, qword [rbp + 0xe0]
test byte [rsi + 0x40], 0x80
je 0x14008d2c2
mov rbx, qword [rsi + 0x10]
test rbx, rbx
je 0x14008d2c2
mov eax, dword [rbx + 0x64]
and al, 3
cmp al, 2
je 0x14008d2c2
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x14008d2b0
mov rax, qword [rbp + 0xe8]
mov rax, qword [rax + 0x28]
test byte [rax + 0x48], 1
jne 0x14008d30e
mov rax, qword [rsi + 0x10]
test rax, rax
je 0x14008d30e
nop dword [rax]
test byte [rax + 0x64], 4
jne 0x14008d305
movzx ecx, word [rax + 0x5c]
cmp cx, word [rsi + 0x4c]
jge 0x14008d305
cmp qword [rax + 0x48], 0
jne 0x14008d305
test rbx, rbx
je 0x14008d302
cmp cx, word [rbx + 0x5c]
jge 0x14008d305
mov rbx, rax
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x14008d2e0
test rbx, rbx
je 0x14008d325
mov r12d, dword [rbx + 0x58]
mov rdx, rbx
mov rcx, r10
call fcn.14007b800
mov r14, rax
mov dword [rsp + 0x28], 1
mov r9d, r12d
mov r8d, r13d
mov dword [rsp + 0x20], edi
mov edx, 0x62
mov rcx, r15
call fcn.140095c70
test r14, r14
je 0x14008d3a2
mov rcx, qword [r15]
cmp byte [rcx + 0x63], 0
je 0x14008d366
cmp qword [rcx + 0x2e0], 0
jne 0x14008d3a2
mov rcx, r14
call fcn.14007b970
jmp 0x14008d3a2
movsxd rax, dword [r15 + 0x90]
lea rdx, [rax + rax*2]
mov rax, qword [r15 + 0x88]
lea rdx, [rdx - 3]
cmp byte [rax + rdx*8 + 1], 0
lea rdx, [rax + rdx*8]
je 0x14008d39a
mov r9d, 0xfffffff7
mov r8, r14
mov rcx, r15
call fcn.1400b5850
jmp 0x14008d3a2
mov qword [rdx + 0x10], r14
mov byte [rdx + 1], 0xf7
mov rax, qword [rsp + 0x68]
mov r8d, r13d
mov edx, 0x5e
mov rcx, r15
mov rax, qword [rax + 0x30]
mov r9d, dword [rax + 0x10]
call fcn.140095a60
mov r8d, r13d
mov edx, 0x76
mov rcx, r15
call fcn.1400959f0
mov r13, qword [rbp + 0xe0]
cmp byte [r13 + 0x113], 2
jne 0x14008d5d6
test rbx, rbx
je 0x14008d404
test byte [rsi + 0x40], 0x80
je 0x14008d3f8
mov eax, dword [rbx + 0x64]
and al, 3
cmp al, 2
je 0x14008d404
mov rax, qword [rbx]
lea rcx, [0x140285030]
jmp 0x14008d414
xor eax, eax
lea rcx, [0x140285030]
mov dword [rsp + 0x74], eax
mov rax, rcx
cmp dword [rsp + 0x74], 0
lea rdx, str._USING_COVERING_INDEX
mov r9, qword [rsi]
lea r8, str.SCAN__s_s_s
cmovne rcx, rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
xor edx, edx
mov rcx, r13
call fcn.14009fc40
jmp 0x14008d5d6
cmp dword [r12 + 0x2c], 0
mov esi, r9d
mov rdi, r9
movzx ebx, r9w
je 0x14008d4b9
mov r8d, r9d
mov r9d, edx
test edx, edx
jle 0x14008d498
mov rcx, qword [r12 + 0x30]
nop dword [rax + rax]
mov rax, qword [rcx]
test dword [rax + 4], 0x1000000
jne 0x14008d489
mov rax, qword [rcx + 8]
mov r9d, edx
test byte [rax + 4], 0x20
jne 0x14008d498
inc r8d
add rcx, 0x20
mov r9d, edx
cmp r8d, edx
jl 0x14008d470
cmp r8d, r9d
jne 0x14008d4de
inc dword [r13 + 0x38]
xor r8d, r8d
mov esi, dword [r13 + 0x38]
mov rcx, r15
mov r9d, esi
lea edx, [r8 + 0x45]
call fcn.140095a60
jmp 0x14008d4de
cmp edx, 1
jne 0x14008d4de
mov rax, qword [r12 + 0x30]
cmp dword [rax + 0x14], 0
jl 0x14008d4de
mov rax, qword [rax]
mov rdi, qword [rax + 0x20]
mov rax, rdi
neg rax
sbb bx, bx
and bx, 0x500
mov rdx, r12
mov rcx, r13
call fcn.140051f80
movzx r14d, byte [rbp + 0xf8]
xor ecx, ecx
mov r9, qword [rbp + 0x50]
movzx eax, r14w
mov r8, qword [rbp - 0x60]
or ax, bx
mov rdx, qword [rsp + 0x48]
mov dword [rsp + 0x30], ecx
mov rcx, r13
mov word [rsp + 0x28], ax
mov qword [rsp + 0x20], rdi
call fcn.1400a7190
mov rbx, rax
test rax, rax
je 0x14008d709
movzx edi, byte [rax + 0x43]
mov r8, r12
mov r9d, edi
mov edx, esi
mov rcx, r13
call fcn.1400b3650
test edi, edi
je 0x14008d558
mov rcx, qword [r12 + 0x30]
mov edx, edi
mov r9d, dword [rcx + 0x18]
mov r8d, dword [rcx + 0x14]
mov rcx, r13
call fcn.14003aaa0
test esi, esi
je 0x14008d570
mov edx, 0x45
mov r9d, esi
mov rcx, r15
lea r8d, [rdx - 0x44]
call fcn.140095a60
test r14b, r14b
je 0x14008d5c3
test byte [rbx + 0x44], 4
je 0x14008d5c3
cmp byte [rbx + 0x41], 0
je 0x14008d5c3
movzx edx, byte [rbx + 0x40]
sub rdx, 1
js 0x14008d5b8
lea rcx, [rdx + 9]
lea rcx, [rcx + rcx*2]
shl rcx, 5
add rcx, rbx
nop word [rax + rax]
mov rax, qword [rcx + 0x50]
test byte [rax + 0x28], 4
jne 0x14008d640
sub rcx, 0x60
sub rdx, 1
jns 0x14008d5a0
mov edx, dword [rbx + 0x34]
mov rcx, r15
call fcn.1400a0590
mov rcx, rbx
call fcn.1400ab130
mov rdx, r12
mov rcx, r13
call fcn.14003a5c0
mov ebx, dword [rsp + 0x60]
xor edi, edi
mov rdx, qword [rbp - 0x20]
mov r8d, ebx
mov rcx, r13
mov qword [rbp + 0x58], rdi
lea r9d, [rdi + 0x10]
call fcn.14006e260
mov rax, qword [rbp + 0xf0]
lea r8d, [rdi - 1]
mov r12, qword [rbp + 0xe8]
xor r9d, r9d
mov dword [rsp + 0x38], ebx
mov rdx, r12
mov dword [rsp + 0x30], ebx
mov rcx, r13
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdi
call fcn.140056310
mov rcx, qword [r15 + 0x18]
not ebx
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x14008d648
mov r8d, ebx
mov rdx, r15
call fcn.140052260
jmp 0x14008d659
mov edx, dword [rcx + 0x10]
jmp 0x14008d5bb
mov rcx, qword [rcx + 0x50]
mov eax, dword [r15 + 0x90]
movsxd rdx, ebx
mov dword [rcx + rdx*4], eax
mov rbx, qword [rbp + 0xf0]
cmp byte [rsp + 0x64], 3
jne 0x14008d67f
lea r9, str.DISTINCT
xor edx, edx
lea r8, str.USE_TEMP_B_TREE_FOR__s
mov rcx, r13
call fcn.14009fc40
cmp qword [rbp + 0x58], 0
je 0x14008d6c8
cmp dword [rbp + 0x60], 0
lea rax, str.RIGHT_PART_OF_ORDER_BY
lea r9, str.ORDER_BY
mov rcx, r13
cmovg r9, rax
lea r8, str.USE_TEMP_B_TREE_FOR__s
xor edx, edx
call fcn.14009fc40
mov rax, qword [rbp]
lea r8, [rbp + 0x58]
mov rdx, r12
mov qword [rsp + 0x20], rbx
mov rcx, r13
mov r9d, dword [rax]
call fcn.14003fa50
mov rcx, qword [r15 + 0x18]
mov edx, dword [rbp - 0x10]
not edx
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x14008d6e6
mov r8d, edx
mov rdx, r15
call fcn.140052260
jmp 0x14008d6f7
mov rcx, qword [rcx + 0x50]
mov eax, dword [r15 + 0x90]
movsxd rdx, edx
mov dword [rcx + rdx*4], eax
xor eax, eax
cmp dword [r13 + 0x30], eax
mov r12d, eax
setg r12b
mov dword [rsp + 0x74], r12d
mov rsi, qword [rsp + 0x40]
movzx r8d, byte [rsi + 0x63]
add dword [r13 + 0x30], r8d
mov rax, qword [rbp + 0x50]
test rax, rax
je 0x14008d72b
mov rdx, rax
mov rcx, rsi
call fcn.140039570
mov rcx, r13
call fcn.14009fde0
mov eax, dword [rsp + 0x74]
jmp 0x14008d773
mov r8, qword [rbp + 0xf0]
mov rdx, rbx
mov rcx, r13
call fcn.140045da0
cmp qword [rbx + 0x58], 0
mov r10d, eax
jne 0x14008d75d
mov rcx, r13
call fcn.14009fde0
mov eax, r10d
jmp 0x14008d773
mov r13, qword [rbp + 0xe0]
jmp 0x14008d709
mov rsi, r14
jmp 0x14008d70e
mov eax, r12d
add rsp, 0x198
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret