Function at 0x140198f80
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
lea rbp, [rsp - 0x80]
sub rsp, 0x180
mov r12, qword [rcx + 0x10]
xor edi, edi
mov rax, qword [rcx]
mov r13d, 1
mov qword [rbp - 0x50], r13
mov rbx, r8
mov qword [rbp + 0x68], rdi
mov r14, rdx
mov qword [rsp + 0x50], rax
mov rsi, rcx
test r12, r12
jne 0x140198fea
cmp qword [rcx + 0x98], rdi
jne 0x140198fe2
test byte [rax + 0x60], 8
jne 0x140198fe2
mov byte [rcx + 0x23], r13b
call fcn.140138fa0
mov r12, rax
test r14, r14
je 0x14019bbc8
cmp dword [rsi + 0x30], edi
jne 0x14019bbc8
xor r9d, r9d
mov qword [rsp + 0x20], rdi
xor r8d, r8d
mov rcx, rsi
lea edx, [r9 + 0x15]
call fcn.1401668b0
test eax, eax
jne 0x14019bbc8
cmp byte [rbx], 6
ja 0x14019904b
mov r8, qword [r14 + 0x48]
test r8, r8
je 0x14019903c
lea rdx, [fcn.140154780]
mov rcx, rsi
call fcn.14018af80
mov qword [r14 + 0x48], rdi
mov eax, dword [r14 + 4]
and eax, 0xfffffffe
bts eax, 0x16
mov dword [r14 + 4], eax
xor r8d, r8d
mov qword [rsp + 0x178], r15
mov rdx, r14
mov rcx, rsi
call fcn.140197930
lea r8, [0x140332b10]
cmp dword [rsi + 0x30], edi
jne 0x1401993c0
mov r10d, dword [r14 + 4]
bt r10d, 0x17
jae 0x1401990bd
mov rdx, qword [r14 + 0x28]
lea r11, [rdx + 8]
mov rcx, r11
call fcn.140198dd0
test eax, eax
je 0x1401990b4
mov r8, qword [r11 + 0x18]
test r8, r8
jne 0x1401990a0
mov rax, qword [r11 + 0x20]
mov r8, qword [rax]
lea rdx, str.target_object_alias_may_not_appear_in_FROM_clause:__s
mov rcx, rsi
call fcn.1401110a0
jmp 0x1401993b9
btr r10d, 0x17
mov dword [r14 + 4], r10d
cmp byte [rbx], 9
jne 0x1401990cd
mov rdx, r14
mov rcx, rsi
call fcn.14018f9a0
mov rdx, r14
mov rcx, rsi
call fcn.1401bc2a0
test eax, eax
jne 0x1401993b9
mov eax, dword [r14 + 4]
mov ecx, edi
mov rbx, qword [r14 + 0x28]
xorps xmm0, xmm0
shr eax, 3
xorps xmm1, xmm1
and eax, r13d
mov qword [rbp - 0x18], rdi
mov dword [rsp + 0x60], eax
mov rax, qword [r14 + 0x48]
mov qword [rbp - 0x40], rax
movdqu xmmword [rbp - 0x38], xmm0
mov dword [rbp + 0xd8], ecx
movdqu xmmword [rbp - 0x28], xmm1
cmp qword [r14 + 0x50], rcx
jne 0x14019935d
mov r10, qword [rsp + 0x50]
mov r15, rdi
cmp ecx, dword [rbx]
jge 0x1401993f6
imul r14, r15, 0x68
add r14, rbx
movzx eax, byte [r14 + 0x44]
mov r9, qword [r14 + 0x28]
mov r13, qword [r14 + 0x30]
mov qword [rsp + 0x70], r9
test al, 0x48
je 0x140199230
mov rcx, qword [rbp + 0xc8]
mov r8d, eax
mov edx, dword [r14 + 0x4c]
and r8d, 0x40
mov rcx, qword [rcx + 0x30]
call fcn.14015c7f0
mov r10, qword [rsp + 0x50]
test eax, eax
je 0x140199225
test dword [r10 + 0x60], 0x2000
jne 0x140199225
movzx eax, byte [r14 + 0x44]
test al, 8
je 0x14019919e
test al, 0x10
je 0x140199198
and al, 0xf7
jmp 0x14019919a
and al, 0xd7
mov byte [r14 + 0x44], al
test al, 0x40
je 0x140199208
mov edx, dword [rbp + 0xd8]
lea rcx, [r15 + 1]
mov eax, dword [rbx]
inc edx
cmp edx, eax
jge 0x1401991df
imul rcx, rcx, 0x68
add rcx, 0x44
add rcx, rbx
nop
movzx eax, byte [rcx]
test al, 0x10
je 0x1401991d3
test al, 8
je 0x1401991cf
and al, 0xef
jmp 0x1401991d1
and al, 0xcf
mov byte [rcx], al
mov eax, dword [rbx]
inc edx
add rcx, 0x68
cmp edx, eax
jl 0x1401991c0
dec eax
movsxd rdx, eax
cmp rdx, r15
jl 0x140199208
imul rcx, rdx, 0x68
add rcx, 0x44
add rcx, rbx
and byte [rcx], 0xbf
test byte [rcx], 0x10
jne 0x140199208
dec rdx
sub rcx, 0x68
cmp rdx, r15
jge 0x1401991f4
mov rax, qword [rbp + 0xc8]
movzx r8d, byte [rbx + 0x44]
mov edx, dword [r14 + 0x4c]
and r8d, 0x40
mov rcx, qword [rax + 0x30]
call fcn.14018c890
mov ecx, dword [rbp + 0xd8]
mov r9, qword [rsp + 0x70]
test r13, r13
je 0x140199341
mov rax, qword [r13 + 0x20]
movsx r8d, word [r9 + 0x36]
mov edx, dword [rax]
cmp r8d, edx
jne 0x14019939d
test dword [r14 + 0x48], 0x100
je 0x140199265
mov rax, qword [r14 + 0x68]
cmp byte [rax + 0x12], dil
je 0x140199341
mov eax, dword [r13 + 4]
mov r14, qword [rbp + 0xc8]
test al, 8
jne 0x140199348
mov r8, qword [r13 + 0x48]
test r8, r8
je 0x1401992dd
cmp qword [r14 + 0x48], rdi
jne 0x14019928c
cmp dword [rbx], 1
jle 0x1401992c1
cmp qword [r13 + 0x60], rdi
jne 0x1401992c1
bt eax, 0x1b
jb 0x1401992c1
test dword [r14 + 4], 0x8000000
jne 0x1401992c1
test dword [r10 + 0x60], 0x40000
jne 0x1401992c1
lea rdx, [fcn.140154780]
mov rcx, rsi
call fcn.14018af80
mov qword [r13 + 0x48], rdi
jmp 0x1401992dd
test ecx, ecx
jne 0x1401992dd
test dword [r14 + 4], 0x40000
je 0x1401992dd
cmp dword [rbx], 1
je 0x140199348
test byte [rbx + 0xac], 0x22
jne 0x140199348
mov r9d, dword [rsp + 0x60]
mov rdx, r14
mov r8d, dword [rbp + 0xd8]
mov rcx, rsi
call fcn.140194380
test eax, eax
je 0x140199312
cmp dword [rsi + 0x30], edi
jne 0x1401993b3
mov dword [rbp + 0xd8], 0xffffffff
mov r15, 0xffffffffffffffff
mov r10, qword [rsp + 0x50]
mov rbx, qword [r14 + 0x28]
cmp byte [r10 + 0x67], dil
jne 0x1401993b3
mov rax, qword [rbp + 0xd0]
mov ecx, dword [rbp + 0xd8]
cmp byte [rax], 8
jbe 0x140199348
mov rax, qword [r14 + 0x48]
mov qword [rbp - 0x40], rax
jmp 0x140199348
mov r14, qword [rbp + 0xc8]
inc ecx
inc r15
mov dword [rbp + 0xd8], ecx
cmp qword [r14 + 0x50], rdi
je 0x140199128
mov r8, qword [rbp + 0xd0]
mov rdx, r14
mov rcx, rsi
call fcn.140191210
mov r9d, eax
cmp qword [r14 + 0x58], rdi
jne 0x140199380
mov rcx, rsi
call fcn.140139fe0
mov eax, r9d
mov r15, qword [rsp + 0x178]
add rsp, 0x180
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov r9, qword [r9]
mov rcx, rsi
mov dword [rsp + 0x20], edx
lea rdx, str.expected__d_columns_for__s_but_got__d
call fcn.1401110a0
mov r13d, 1
lea r8, [0x140332b10]
movsxd rcx, dword [rsi + 0x128]
test ecx, ecx
je 0x1401993eb
mov rdx, qword [rsi + 0x10]
mov rax, qword [rdx]
cmp byte [rax + 0x67], 0
jne 0x1401993e7
mov rax, qword [rdx + 0x88]
lea rcx, [rcx + rcx*2]
lea r8, [rax + rcx*8]
mov edi, dword [r8 + 8]
mov dword [rsi + 0x128], edi
mov eax, r13d
jmp 0x140199383
mov rax, qword [r14 + 0x30]
mov r15, rbx
mov qword [rsp + 0x48], rbx
test rax, rax
je 0x1401994ee
cmp byte [rax], 0x2c
mov qword [rsp + 0x48], rbx
jne 0x1401994ee
test dword [r10 + 0x60], 0x8000
mov r13d, 1
mov qword [rsp + 0x48], rbx
jne 0x1401994f4
mov rax, qword [rsi]
lea r15, [fcn.14000f5f0]
add rax, 0x67
mov qword [rsp + 0x48], rbx
mov qword [rbp - 8], rax
lea rbx, [0x140194ff0]
mov qword [rbp - 0x10], rsi
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [r14 + 0x28]
mov qword [rbp], rdi
mov qword [rbp + 0x10], rdi
mov dword [rbp + 8], edi
test rax, rax
je 0x140199485
cmp dword [rax], edi
jle 0x140199485
test byte [rax + 0x44], 0x40
mov dword [rbp + 0xc], 3
jne 0x140199489
mov dword [rbp + 0xc], r13d
mov rdx, qword [r14 + 0x30]
lea rcx, [rbp - 0x10]
call fcn.140194db0
cmp dword [rbp], edi
je 0x1401994de
mov rdx, qword [r14 + 0x30]
lea rax, [rbp - 0x10]
mov qword [rbp + 0x48], rdi
mov qword [rbp + 0x28], rsi
mov qword [rbp + 0x30], rbx
mov qword [rbp + 0x38], r15
mov qword [rbp + 0x40], rdi
mov qword [rbp + 0x50], rax
test rdx, rdx
je 0x1401994c9
lea rcx, [rbp + 0x28]
call fcn.14014c9b0
mov rdx, qword [rbp + 0x10]
test rdx, rdx
je 0x1401994de
mov rcx, qword [rbp - 0x10]
mov rcx, qword [rcx]
call fcn.14010e7a0
cmp dword [rbp + 4], edi
jne 0x140199460
mov r15, qword [rsp + 0x48]
jmp 0x1401994f4
mov r13d, 1
mov rbx, qword [rsp + 0x50]
test dword [rbx + 0x60], 0x201
jne 0x140199524
mov rdx, r14
mov rcx, rsi
call fcn.140198a80
test eax, eax
je 0x140199524
cmp byte [rbx + 0x67], dil
jne 0x1401993b9
mov r15, qword [r14 + 0x28]
mov qword [rsp + 0x48], r15
lea rcx, [0x1402c669a]
mov edx, edi
mov dword [rbp + 0xd8], edx
cmp dword [r15], edi
jle 0x140199b4c
mov rax, rdi
mov qword [rsp + 0x70], rax
nop dword [rax]
nop dword [rax + rax]
imul rax, rax, 0x68
lea r14, [r15 + 8]
add r14, rax
cmp qword [r14 + 0x50], rdi
jne 0x140199589
mov r8, qword [r14 + 0x10]
test r8, r8
je 0x140199589
mov rax, qword [r14 + 8]
mov r9, rcx
mov rcx, rsi
mov qword [rsp + 0x20], rax
mov edx, reloc.WS2_32.dll_sendto
call fcn.1401668b0
mov edx, dword [rbp + 0xd8]
mov rcx, qword [r14 + 0x28]
mov qword [rsp + 0x68], rcx
test rcx, rcx
je 0x140199b20
mov eax, dword [rsi + 0x124]
mov dword [rsi + 0x124], eax
test dword [rbx + 0x60], 0x1000
jne 0x1401995e8
test dword [r14 + 0x40], 0x100
je 0x1401995c9
mov rax, qword [r14 + 0x60]
cmp byte [rax + 0x12], dil
je 0x1401995e8
cmp dword [rax], 2
jge 0x1401995e8
mov r13, qword [rbp + 0xc8]
mov r9, r15
mov dword [rsp + 0x20], edx
mov rdx, rcx
mov rcx, rsi
mov r8, qword [r13 + 0x30]
call fcn.1401952f0
jmp 0x1401995ef
mov r13, qword [rbp + 0xc8]
test dword [rbx + 0x60], 0x4000000
jne 0x14019972d
test dword [r14 + 0x40], 0x108
jne 0x14019972d
mov rdx, qword [r14 + 0x28]
mov r8, qword [r14 + 0x20]
mov rax, rdx
mov qword [rbp - 0x58], rdx
test rdx, rdx
je 0x14019964e
nop
test byte [rax + 4], 9
jne 0x14019972d
mov rcx, qword [rax + 0x50]
test rcx, rcx
je 0x14019963c
cmp byte [rax], 0x87
jne 0x14019972d
cmp qword [rax + 0x70], rdi
jne 0x14019972d
mov rax, rcx
test rcx, rcx
jne 0x140199620
mov rcx, qword [rdx + 0x48]
mov r10, qword [r14 + 0x50]
test rcx, rcx
je 0x140199690
movsxd rdx, dword [rcx]
test rdx, rdx
jle 0x140199690
add rcx, 0x20
movzx eax, word [rcx]
test ax, ax
je 0x140199686
dec ax
cmp ax, 0x40
jb 0x14019967f
mov eax, 0x3f
jmp 0x140199682
movzx eax, ax
bts r10, rax
add rcx, 0x20
sub rdx, 1
jne 0x140199667
movsx r15, word [r8 + 0x36]
mov r11d, edi
mov rbx, rdi
test r15, r15
jle 0x140199728
mov r13, qword [rbp - 0x58]
mov r9d, 1
mov r8, rdi
movabs rsi, 0x8000000000000000
nop dword [rax + rax]
cmp r11d, 0x3f
mov rax, rsi
cmovb rax, r9
test r10, rax
jne 0x140199708
mov rax, r13
nop dword [rax]
nop word [rax + rax]
mov rcx, qword [rax + 0x20]
mov rdx, qword [rcx + r8 + 8]
cmp byte [rdx], 0x79
je 0x1401996ff
and dword [rdx + 4], 0xfff7dfff
mov byte [rdx], 0x79
or dword [rax + 4], 0x1000000
mov rax, qword [rax + 0x50]
test rax, rax
jne 0x1401996e0
inc r11d
rol r9, 1
inc rbx
add r8, 0x20
cmp rbx, r15
jl 0x1401996c0
mov rsi, qword [rbp + 0xc0]
mov r13, qword [rbp + 0xc8]
mov r15, qword [rsp + 0x48]
mov rax, qword [rsi + 0x160]
mov edx, dword [rbp + 0xd8]
mov ebx, edx
mov qword [rbp - 0x58], rax
mov rax, qword [r14 + 0x10]
mov qword [rsi + 0x160], rax
mov eax, dword [r14 + 0x40]
mov r13d, dword [r13 + 4]
and eax, 0x100
mov dword [rbp - 0x64], eax
je 0x14019977b
mov rax, qword [r14 + 0x60]
movzx ecx, byte [rax + 0x12]
test cl, cl
je 0x140199904
cmp dword [rax], 2
jl 0x14019977b
cmp cl, 2
jne 0x140199904
test byte [r15 + 0x44], 0x40
jne 0x1401998ff
mov rax, qword [rsi]
test dword [rax + 0x60], 0x2000000
jne 0x1401998ff
mov r15d, dword [r15]
lea r8d, [rdx + 1]
mov rcx, qword [rsp + 0x48]
mov r9d, r15d
mov rdx, r14
call fcn.140198960
test rax, rax
jne 0x1401998f8
cmp qword [rsp + 0x70], rdi
jne 0x1401998a0
cmp r15d, 1
je 0x1401997e1
mov r15, qword [rsp + 0x48]
test byte [r15 + 0xac], 2
jne 0x1401997e1
bt r13d, 0x1c
jb 0x1401998fd
movsxd r15, dword [r12 + 0x90]
xor r9d, r9d
inc dword [rsi + 0x38]
mov rcx, r12
mov r8d, dword [rsi + 0x38]
mov dword [r14 + 0x34], r8d
lea ebx, [r15 + 1]
lea edx, [r9 + 0xb]
mov dword [rsp + 0x20], ebx
call fcn.140139770
mov eax, dword [r14 + 0x34]
lea r8, str.CO_ROUTINE___S
mov r13d, 1
mov dword [r14 + 0x30], ebx
mov edx, r13d
mov byte [rbp - 0x10], reloc.WS2_32.dll_listen
mov r9, r14
mov dword [rbp - 0xc], eax
mov rcx, rsi
mov qword [rbp - 8], rdi
mov qword [rbp + 8], rdi
mov dword [rbp], edi
call fcn.140139e80
mov rbx, qword [rsp + 0x68]
lea r8, [rbp - 0x10]
mov rdx, rbx
mov rcx, rsi
call fcn.140198f80
movzx eax, word [rbx + 2]
mov rcx, qword [r14 + 0x20]
mov word [rcx + 0x3a], ax
mov rcx, r12
mov eax, dword [rbp - 4]
mov edx, dword [r14 + 0x34]
or dword [r14 + 0x40], 0x20
mov dword [r14 + 0x38], eax
call fcn.14013a190
mov rax, qword [r12]
mov edx, dword [r12 + 0x90]
cmp byte [rax + 0x67], dil
je 0x1401998d8
lea rax, [0x140332b10]
mov dword [rax + 8], edx
mov byte [rsi + 0x1f], dil
mov dword [rsi + 0x28], edi
jmp 0x140199afb
bt r13d, 0x1c
jb 0x1401998f8
test byte [r14 + 0x3c], 0x22
lea rax, [r14 + 0x3c]
jne 0x1401998f8
test ebx, ebx
je 0x1401997e1
sub rax, 0x68
dec ebx
cmp qword [rax - 0x14], rdi
jne 0x1401998cb
test byte [rax], 0x22
je 0x1401998b2
mov edx, dword [rbp + 0xd8]
mov r15, qword [rsp + 0x48]
jmp 0x1401998ff
mov rax, qword [r12 + 0x88]
lea rcx, [r15 + r15*2]
mov dword [rax + rcx*8 + 8], edx
mov byte [rsi + 0x1f], dil
mov dword [rsi + 0x28], edi
lea rax, [rax + rcx*8]
jmp 0x140199afb
mov r15, qword [rsp + 0x48]
mov edx, ebx
cmp dword [rbp - 0x64], edi
je 0x14019994e
mov rbx, qword [r14 + 0x60]
mov r9d, dword [rbx + 4]
test r9d, r9d
jle 0x14019994e
mov r8d, dword [rbx + 8]
mov edx, 0xa
mov rcx, r12
call fcn.140139700
mov r9d, dword [rbx + 0xc]
mov r8d, dword [r14 + 0x44]
cmp r8d, r9d
je 0x14019993c
mov edx, reloc.WS2_32.dll_WSAStartup
mov rcx, r12
call fcn.140139700
mov rdx, qword [rsp + 0x68]
movzx eax, word [rbx + 0x10]
mov word [rdx + 2], ax
jmp 0x140199af5
mov r9d, edx
xor r8d, r8d
mov rdx, r14
mov rcx, r15
call fcn.140198960
mov rbx, rax
test rax, rax
je 0x1401999ac
mov r9d, dword [rax + 0x30]
test r9d, r9d
je 0x140199981
mov r8d, dword [rax + 0x34]
mov edx, 0xa
mov rcx, r12
call fcn.140139700
mov r9d, dword [rbx + 0x44]
mov edx, reloc.WS2_32.dll_WSAStartup
mov r8d, dword [r14 + 0x44]
mov rcx, r12
call fcn.140139700
mov rax, qword [rbx + 0x28]
mov rdx, qword [rsp + 0x68]
movzx ecx, word [rax + 2]
mov word [rdx + 2], cx
jmp 0x140199af5
inc dword [rsi + 0x38]
mov edx, 9
mov eax, dword [rsi + 0x38]
mov rcx, r12
mov dword [r14 + 0x34], eax
mov ebx, edi
call fcn.140139620
or dword [r14 + 0x40], 0x10
test byte [r14 + 0x40], 8
movsxd r13, eax
lea r15d, [r13 + 1]
mov dword [r14 + 0x30], r15d
jne 0x1401999eb
mov edx, reloc.WS2_32.dll_ntohs
mov rcx, r12
call fcn.140139620
mov ebx, eax
mov ecx, dword [r14 + 0x44]
lea r8, str.MATERIALIZE___S
mov dword [rbp - 0xc], ecx
mov r9, r14
mov rcx, rsi
mov byte [rbp - 0x10], listen
mov edx, 1
mov qword [rbp - 8], rdi
mov qword [rbp + 8], rdi
mov dword [rbp], edi
call fcn.140139e80
mov rdx, qword [rsp + 0x68]
lea r8, [rbp - 0x10]
mov rcx, rsi
call fcn.140198f80
mov rax, qword [rsp + 0x68]
mov rcx, qword [r14 + 0x20]
movzx eax, word [rax + 2]
mov word [rcx + 0x3a], ax
test ebx, ebx
je 0x140199a6f
mov rax, qword [r12]
mov edx, dword [r12 + 0x90]
cmp byte [rax + 0x67], dil
je 0x140199a59
lea rax, [0x140332b10]
jmp 0x140199a6c
movsxd rax, ebx
lea rcx, [rax + rax*2]
mov rax, qword [r12 + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
mov r8d, dword [r14 + 0x34]
mov r9d, r15d
mov edx, 0x43
mov rcx, r12
call fcn.140139700
mov rax, qword [r12]
mov edx, dword [r12 + 0x90]
cmp byte [rax + 0x67], dil
je 0x140199a9e
lea rax, [0x140332b10]
jmp 0x140199ab5
mov rax, qword [r12 + 0x88]
lea rcx, [r13*2]
add rcx, r13
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
mov byte [rsi + 0x1f], dil
mov dword [rsi + 0x28], edi
mov eax, dword [r14 + 0x40]
and eax, 0x108
cmp eax, 0x100
jne 0x140199af5
mov eax, dword [r14 + 0x30]
mov rcx, qword [r14 + 0x60]
mov dword [rcx + 4], eax
mov eax, dword [r14 + 0x34]
mov dword [rcx + 8], eax
mov eax, dword [r14 + 0x44]
mov dword [rcx + 0xc], eax
mov rax, qword [rsp + 0x68]
movzx eax, word [rax + 2]
mov word [rcx + 0x10], ax
mov r13d, 1
mov rbx, qword [rsp + 0x50]
cmp byte [rbx + 0x67], dil
jne 0x1401993b9
mov rax, qword [rbp - 0x58]
mov edx, dword [rbp + 0xd8]
mov r15, qword [rsp + 0x48]
mov qword [rsi + 0x160], rax
mov rax, qword [rsp + 0x70]
lea rcx, [0x1402c669a]
inc rax
inc edx
mov dword [rbp + 0xd8], edx
mov qword [rsp + 0x70], rax
cmp edx, dword [r15]
jl 0x140199550
mov r14, qword [rbp + 0xc8]
mov rax, qword [r14 + 0x30]
mov r15, qword [r14 + 0x20]
mov r13, qword [r14 + 0x38]
mov qword [rbp - 0x60], rax
mov rax, qword [r14 + 0x40]
mov qword [rsp + 0x70], rax
movzx eax, byte [r14 + 4]
and al, 1
mov qword [rbp + 0x60], r15
mov byte [rbp - 0x78], al
mov eax, dword [r14 + 4]
and al, 9
mov qword [rsp + 0x68], r13
cmp al, 1
jne 0x140199bc6
mov rcx, qword [rbp - 0x40]
mov r8d, 0xffffffff
mov rdx, r15
call fcn.14015c170
test eax, eax
jne 0x140199bc6
cmp qword [r14 + 0x70], rdi
jne 0x140199bc6
and dword [r14 + 4], 0xfffffffe
xor r8d, r8d
mov rdx, r15
mov rcx, rbx
call fcn.140153700
or dword [r14 + 4], 8
mov r13, rax
mov qword [rsp + 0x68], rax
mov qword [r14 + 0x38], rax
mov byte [rbp - 0x78], 2
mov rbx, qword [rbp - 0x40]
test rbx, rbx
je 0x140199c20
mov r9d, dword [r15]
xor r8d, r8d
mov rdx, rbx
mov rcx, rsi
call fcn.14018eb50
mov r8d, dword [rsi + 0x34]
mov dword [rbp - 0x34], r8d
mov dword [rsp + 0x30], 0xfffffff8
mov qword [rsp + 0x28], rax
lea ecx, [r8 + 1]
mov dword [rsp + 0x20], edi
mov dword [rsi + 0x34], ecx
mov rcx, qword [rbp - 0x40]
mov r9d, dword [r15]
mov edx, dword [rcx]
mov rcx, r12
inc edx
add r9d, edx
mov edx, 0x76
call fcn.140139ae0
mov dword [rbp - 0x28], eax
jmp 0x140199c27
mov dword [rbp - 0x28], 0xffffffff
mov rax, qword [rbp + 0xd0]
cmp byte [rax], 0xc
jne 0x140199cdf
mov r9d, dword [r15]
mov edx, 0x76
mov r8d, dword [rax + 4]
mov rcx, r12
call fcn.140139700
test dword [r14 + 4], 0x800
je 0x140199cdf
mov ecx, dword [r15]
lea eax, [rcx - 1]
movsxd r14, eax
test eax, eax
jle 0x140199cb7
mov r13, qword [rsp + 0x50]
mov rbx, r14
shl rbx, 5
test byte [rbx + r15 + 0x1c], 0x40
jne 0x140199cb2
mov rdx, qword [rbx + r15 + 8]
test rdx, rdx
je 0x140199c8c
mov rcx, r13
call fcn.140152e40
mov rdx, qword [rbx + r15 + 0x10]
test rdx, rdx
je 0x140199c9e
mov rcx, r13
call fcn.14010e7a0
mov ecx, dword [r15]
dec r14
dec ecx
sub rbx, 0x20
mov dword [r15], ecx
test r14, r14
jg 0x140199c72
mov r13, qword [rsp + 0x68]
mov edx, edi
test ecx, ecx
jle 0x140199cd8
lea rcx, [r15 + 8]
test byte [rcx + 0x14], 0x40
jne 0x140199ccd
mov rax, qword [rcx]
mov byte [rax], 0x79
inc edx
add rcx, 0x20
cmp edx, dword [r15]
jl 0x140199cc1
mov r14, qword [rbp + 0xc8]
mov eax, dword [rsi + 0x44]
mov r15d, 0x4000
dec eax
mov dword [rsi + 0x44], eax
mov dword [rbp + 0x5c], eax
test dword [r14 + 4], r15d
jne 0x140199cfd
mov word [r14 + 2], 0x140
cmp qword [r14 + 0x60], rdi
je 0x140199d11
mov r8d, eax
mov rdx, r14
mov rcx, rsi
call fcn.1401905e0
cmp dword [r14 + 8], edi
jne 0x140199d4a
cmp dword [rbp - 0x28], edi
jl 0x140199d4a
mov rax, qword [r12]
cmp byte [rax + 0x67], dil
je 0x140199d2f
lea rax, [0x140332b10]
jmp 0x140199d43
movsxd rax, dword [rbp - 0x28]
lea rcx, [rax + rax*2]
mov rax, qword [r12 + 0x88]
lea rax, [rax + rcx*8]
mov byte [rax], 0x77
or byte [rbp - 0x1c], 1
test byte [r14 + 4], 1
je 0x140199dba
mov eax, dword [rsi + 0x34]
xor r9d, r9d
mov dword [rbp - 0x74], eax
xor r8d, r8d
inc eax
mov rcx, rsi
mov dword [rsi + 0x34], eax
mov rdx, qword [r14 + 0x20]
call fcn.14018eb50
mov r8d, dword [rbp - 0x74]
xor r9d, r9d
mov dword [rsp + 0x30], 0xfffffff8
mov rcx, r12
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], edi
lea edx, [r9 + 0x76]
call fcn.140139ae0
mov dword [rbp - 0x70], eax
movsxd rax, dword [r12 + 0x90]
test eax, eax
jle 0x140199db4
lea rcx, [rax + rax*2]
mov rax, qword [r12 + 0x88]
mov word [rax + rcx*8 - 0x16], 8
mov byte [rbp - 0x77], 3
jmp 0x140199dbe
mov byte [rbp - 0x77], dil
cmp dword [rsp + 0x60], edi
jne 0x14019a061
test r13, r13
jne 0x14019a061
movzx eax, byte [rbp - 0x78]
neg al
movzx eax, word [r14 + 4]
mov r14, qword [r14 + 0x70]
sbb bx, bx
and ax, r15w
and bx, 0x100
mov r15, qword [rbp + 0xc8]
or bx, ax
test r14, r14
je 0x140199e06
mov rdx, r15
mov rcx, rsi
call fcn.1401bdb40
movsx eax, word [r15 + 2]
mov rcx, rsi
mov r9, qword [rbp - 0x40]
mov r8, qword [rbp - 0x60]
mov rdx, qword [rsp + 0x48]
mov dword [rsp + 0x38], eax
mov rax, qword [r15 + 0x20]
mov word [rsp + 0x30], bx
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], rax
call fcn.1401b8bb0
mov rbx, rax
test rax, rax
je 0x1401993b3
movzx eax, word [rax + 0x48]
cmp ax, word [r15 + 2]
jge 0x140199e53
mov word [r15 + 2], ax
cmp byte [rbp - 0x78], dil
je 0x140199e69
movzx ecx, byte [rbx + 0x43]
movzx eax, byte [rbp - 0x77]
test cl, cl
cmovne eax, ecx
mov byte [rbp - 0x77], al
mov rdx, qword [rbp - 0x40]
test rdx, rdx
je 0x140199ebf
movsx eax, byte [rbx + 0x41]
test al, al
jns 0x140199e82
mov r8d, edi
mov dword [rbp - 0x38], edi
jmp 0x140199e88
mov r8d, eax
mov dword [rbp - 0x38], eax
test byte [rbx + 0x44], 4
jne 0x140199e93
mov eax, dword [rbx + 0x30]
jmp 0x140199eb1
movzx eax, byte [rbx + 0x40]
imul rcx, rax, 0x70
cmp qword [rcx + rbx + 0x328], rdi
je 0x140199eaa
mov eax, dword [rbx + 0x30]
jmp 0x140199eb1
mov eax, dword [rcx + rbx + 0x300]
mov dword [rbp - 0x20], eax
cmp r8d, dword [rdx]
cmove rdx, rdi
mov qword [rbp - 0x40], rdx
mov eax, dword [rbp - 0x28]
test eax, eax
js 0x140199ed5
test rdx, rdx
jne 0x140199ed5
mov edx, eax
mov rcx, r12
call fcn.14013aab0
mov rcx, rsi
test r14, r14
je 0x14019a012
mov r15d, dword [rsi + 0x44]
mov r8, rbx
inc dword [rsi + 0x38]
mov eax, dword [rsi + 0x38]
mov r9d, eax
mov rdx, qword [rbp + 0xc8]
lea r14d, [r15 - 1]
mov dword [rbp + 0xd8], eax
sub r15d, 2
mov dword [rsp + 0x20], r14d
lea r13d, [r15 - 1]
mov dword [rsi + 0x44], r13d
call fcn.1401c1bc0
xor r8d, r8d
mov r9d, r13d
mov rcx, r12
lea edx, [r8 + 9]
call fcn.140139700
mov rcx, qword [r12 + 0x18]
lea rbx, [r12 + 0x18]
not r14d
mov dword [rbp + 0xc0], r14d
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x140199f5b
mov r8d, r14d
mov rdx, r12
call fcn.14013a220
lea r14, [r12 + 0x90]
jmp 0x140199f74
movsxd rdx, dword [rbp + 0xc0]
lea r14, [r12 + 0x90]
mov rcx, qword [rcx + 0x50]
mov eax, dword [r14]
mov dword [rcx + rdx*4], eax
mov rax, qword [rbp + 0xd0]
lea r9, [rbp - 0x40]
mov rdx, qword [rbp + 0xc8]
mov r8d, 0xffffffff
mov dword [rsp + 0x38], r13d
mov rcx, rsi
mov dword [rsp + 0x30], r15d
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x78]
mov qword [rsp + 0x20], rax
mov dword [rbp - 0x20], edi
call fcn.14018de90
mov rcx, qword [rbx]
not r15d
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x140199fca
mov r8d, r15d
mov rdx, r12
call fcn.14013a220
jmp 0x140199fd8
mov rcx, qword [rcx + 0x50]
mov eax, dword [r14]
movsxd r9, r15d
mov dword [rcx + r9*4], eax
mov r8d, dword [rbp + 0xd8]
mov edx, 0x43
mov rcx, r12
call fcn.140139690
mov rcx, qword [rbx]
not r13d
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x14019a00a
mov r8d, r13d
mov rdx, r12
call fcn.14013a220
jmp 0x14019bb3c
movsxd rdx, r13d
jmp 0x14019bb32
mov eax, dword [rbx + 0x34]
lea r9, [rbp - 0x40]
mov dword [rsp + 0x38], eax
mov r8d, 0xffffffff
mov eax, dword [rbx + 0x30]
mov rdx, r15
mov dword [rsp + 0x30], eax
mov rax, qword [rbp + 0xd0]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x78]
mov qword [rsp + 0x20], rax
call fcn.14018de90
mov rcx, rbx
call fcn.1401b9e90
lea rbx, [r12 + 0x18]
lea r14, [r12 + 0x90]
jmp 0x14019bb3c
mov dword [rsp + 0x40], edi
mov dword [rsp + 0x44], edi
mov dword [rsp + 0x60], edi
test r13, r13
je 0x14019a1d9
mov rcx, qword [r14 + 0x20]
mov eax, dword [rcx]
test eax, eax
jle 0x14019a09d
add rcx, 0x22
nop dword [rax]
nop dword [rax + rax]
dec eax
mov word [rcx], di
lea rcx, [rcx + 0x20]
test eax, eax
jg 0x14019a090
mov eax, dword [r13]
lea r14, [r13 + 8]
test eax, eax
jle 0x14019a0bd
lea rcx, [r14 + 0x1a]
nop dword [rax]
dec eax
mov word [rcx], di
lea rcx, [rcx + 0x20]
test eax, eax
jg 0x14019a0b0
mov rax, qword [rbp + 0xc8]
cmp word [rax + 2], 0x42
jle 0x14019a0d1
mov word [rax + 2], 0x42
mov rbx, qword [rbp - 0x40]
test rbx, rbx
je 0x14019a17a
mov eax, dword [r13]
cmp eax, dword [rbx]
jne 0x14019a17a
mov r8d, edi
test eax, eax
jle 0x14019a121
mov rdx, rdi
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [rbp - 0x40]
lea rdx, [rdx + 0x20]
inc r8d
movzx ecx, byte [rdx + rax - 8]
and cl, 1
mov byte [rdx + r13 - 8], cl
mov eax, dword [r13]
cmp r8d, eax
jl 0x14019a100
mov rbx, qword [rbp - 0x40]
test rbx, rbx
je 0x14019a17a
cmp eax, dword [rbx]
jne 0x14019a17a
mov r15d, edi
test eax, eax
jle 0x14019a172
add rbx, 8
nop dword [rax]
movzx eax, byte [rbx + 0x10]
cmp byte [r14 + 0x10], al
jne 0x14019a17a
mov r8, qword [rbx]
mov r9d, 0xffffffff
mov rdx, qword [r14]
xor ecx, ecx
call fcn.14015be90
test eax, eax
jne 0x14019a17a
inc r15d
add rbx, 0x20
add r14, 0x20
cmp r15d, dword [r13]
jl 0x14019a140
mov dword [rsp + 0x60], 1
mov r14, qword [rbp + 0xc8]
dec dword [rsi + 0x44]
mov edx, gethostname
mov eax, dword [rsi + 0x44]
mov rbx, qword [rsp + 0x50]
mov rcx, rbx
mov dword [rsp + 0x64], eax
call fcn.14010ec20
mov qword [rbp + 0xd8], rax
mov r15, rax
test rax, rax
je 0x14019a249
xorps xmm0, xmm0
xor eax, eax
movups xmmword [r15], xmm0
movups xmmword [r15 + 0x10], xmm0
movups xmmword [r15 + 0x20], xmm0
mov qword [r15 + 0x30], rax
mov rcx, qword [rsi]
test rcx, rcx
je 0x14019a1e0
lea edx, [rax + 0x18]
call fcn.14010ec20
jmp 0x14019a1ea
mov word [r14 + 2], di
jmp 0x14019a181
mov ecx, 0x18
call fcn.14010e530
mov rcx, rax
test rax, rax
je 0x14019a214
mov rax, qword [rsi + 0xb0]
mov qword [rcx], rax
lea rax, [0x140198a30]
mov qword [rsi + 0xb0], rcx
mov qword [rcx + 0x10], rax
mov qword [rcx + 8], r15
jmp 0x14019a249
mov rdx, qword [r15 + 0x18]
mov rbx, qword [rsi]
test rdx, rdx
je 0x14019a228
mov rcx, rbx
call fcn.14010e7a0
mov rdx, qword [r15 + 0x28]
test rdx, rdx
je 0x14019a239
mov rcx, rbx
call fcn.14010e7a0
mov rdx, r15
mov rcx, rbx
call fcn.14010e7a0
mov rbx, qword [rsp + 0x50]
cmp byte [rbx + 0x67], dil
jne 0x1401993b3
mov eax, dword [r14 + 0x10]
xorps xmm0, xmm0
mov dword [r15 + 0x34], eax
xorps xmm1, xmm1
mov rax, qword [rsp + 0x48]
mov qword [rbp - 8], rax
mov qword [rbp - 0x10], rsi
mov qword [rbp], r15
movdqu xmmword [rbp + 8], xmm0
movdqu xmmword [rbp + 0x18], xmm1
test r13, r13
je 0x14019a287
mov eax, dword [r13]
jmp 0x14019a289
mov eax, edi
mov word [r15 + 2], ax
mov rax, qword [rbp + 0x60]
mov qword [r15 + 0x10], r13
test rax, rax
je 0x14019a31b
lea rbx, [rax + 8]
mov r14d, edi
cmp dword [rax], edi
jle 0x14019a30f
lea r13, [0x14015d130]
lea r15, [0x14014cf30]
lea rsi, [0x14014cf40]
nop
mov rdx, qword [rbx]
lea rcx, [rbp - 0x10]
mov qword [rbp + 0x30], r13
mov qword [rbp + 0x38], r15
mov qword [rbp + 0x40], rsi
mov dword [rbp + 0x48], edi
mov qword [rbp + 0x50], rcx
mov qword [rbp + 0x28], rdi
test rdx, rdx
je 0x14019a2f0
lea rcx, [rbp + 0x28]
call fcn.14014c9b0
mov rax, qword [rbp + 0x60]
inc r14d
add rbx, 0x20
cmp r14d, dword [rax]
jl 0x14019a2c0
mov rsi, qword [rbp + 0xc0]
mov r15, qword [rbp + 0xd8]
mov r13, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x50]
mov r14, qword [rbp + 0xc8]
mov rdx, qword [rbp - 0x40]
lea rcx, [rbp - 0x10]
call fcn.14015d4b0
mov rcx, qword [rsp + 0x70]
test rcx, rcx
je 0x14019a3b1
test r13, r13
je 0x14019a375
mov rdx, qword [r14 + 0x40]
lea rax, [0x140198700]
mov qword [rbp + 0x48], rdi
xorps xmm0, xmm0
mov qword [rbp + 0x28], rsi
mov qword [rbp + 0x30], rax
mov qword [rbp + 0x50], r14
movdqu xmmword [rbp + 0x38], xmm0
test rdx, rdx
je 0x14019a36d
lea rcx, [rbp + 0x28]
call fcn.14014c9b0
mov rcx, qword [rsp + 0x70]
mov rax, qword [r14 + 0x30]
mov qword [rbp - 0x60], rax
lea rax, [0x14015d130]
mov dword [rbp + 0x48], edi
mov qword [rbp + 0x30], rax
mov rdx, rcx
lea rax, [0x14014cf30]
mov qword [rbp + 0x28], rdi
mov qword [rbp + 0x38], rax
lea rcx, [rbp + 0x28]
lea rax, [0x14014cf40]
mov qword [rbp + 0x40], rax
lea rax, [rbp - 0x10]
mov qword [rbp + 0x50], rax
call fcn.14014c9b0
mov eax, dword [r15 + 0x20]
mov dword [r15 + 0x24], eax
cmp qword [r14 + 0x38], rdi
jne 0x14019a47a
cmp qword [r14 + 0x40], rdi
jne 0x14019a47a
cmp dword [r15 + 0x30], 1
jne 0x14019a47a
mov rax, qword [r15 + 0x28]
mov rcx, qword [rax]
mov r11, qword [rcx + 0x20]
test r11, r11
je 0x14019a47a
cmp dword [r11], 1
jne 0x14019a47a
test dword [rcx + 4], 0x1000000
jne 0x14019a47a
test dword [rbx + 0x60], 0x10000
jne 0x14019a47a
mov rbx, qword [rcx + 8]
lea rdx, [0x1402c2ad4]
mov rcx, rbx
call fcn.1401112f0
test eax, eax
jne 0x14019a438
mov rcx, qword [r11 + 8]
call fcn.140155010
neg eax
mov byte [rbp + 0xc0], 1
sbb bl, bl
and bl, 2
jmp 0x14019a454
lea rdx, [0x1402c4360]
mov rcx, rbx
call fcn.1401112f0
test eax, eax
jne 0x14019a47a
mov bl, 1
mov byte [rbp + 0xc0], 2
mov rcx, qword [rsp + 0x50]
xor r8d, r8d
mov rdx, r11
call fcn.140153700
mov qword [rbp + 0x68], rax
test rax, rax
je 0x14019a470
mov byte [rax + 0x18], bl
movzx r13d, byte [rbp + 0xc0]
jmp 0x14019a484
xor r13b, r13b
mov byte [rbp + 0xc0], r13b
lea rdx, [rbp - 0x10]
mov rcx, r15
call fcn.140197a50
mov r10, qword [rsp + 0x50]
cmp byte [r10 + 0x67], dil
jne 0x14019a745
mov rbx, qword [rsp + 0x68]
test rbx, rbx
je 0x14019b5ad
cmp dword [r15 + 0x30], 1
mov r13, rdi
mov qword [rbp - 0x50], rdi
mov word [rbp + 0xc0], di
jne 0x14019a5b0
mov rax, qword [r15 + 0x28]
cmp dword [rax + 0x10], edi
jl 0x14019a5b0
mov rax, qword [rax]
test rax, rax
je 0x14019a5b0
test dword [rax + 4], 0x1000
jne 0x14019a5b0
mov rcx, qword [rax + 0x20]
test rcx, rcx
je 0x14019a5b0
mov rdx, qword [rcx + 8]
test rdx, rdx
je 0x14019a51a
xor r9d, r9d
xor r8d, r8d
mov rcx, r10
call fcn.1401531a0
mov r10, qword [rsp + 0x50]
mov rbx, rax
jmp 0x14019a51d
mov rbx, rdi
mov rdx, qword [rsp + 0x68]
xor r8d, r8d
mov rcx, r10
call fcn.140153700
mov qword [rbp - 0x50], rax
mov r13, rax
test rax, rax
jne 0x14019a54d
mov rcx, qword [rsi]
mov rdx, rbx
call fcn.140154040
mov r13, rax
mov qword [rbp - 0x50], rax
jmp 0x14019a597
movsxd rax, dword [rax]
lea ecx, [rax + 1]
cmp dword [r13 + 4], ecx
jge 0x14019a570
mov rcx, qword [rsi]
mov r8, rbx
mov rdx, r13
call fcn.140154120
mov r13, rax
mov qword [rbp - 0x50], rax
jmp 0x14019a597
movups xmm0, xmmword [0x1402db870]
shl rax, 5
movups xmm1, xmmword [0x1402db880]
mov dword [r13], ecx
movups xmmword [rax + r13 + 8], xmm0
movups xmmword [rax + r13 + 0x18], xmm1
mov qword [rax + r13 + 8], rbx
mov rbx, qword [rsp + 0x68]
mov rax, r13
neg rax
sbb ax, ax
and ax, 0x500
mov word [rbp + 0xc0], ax
mov eax, dword [rsi + 0x34]
xor r8d, r8d
mov dword [r15 + 4], eax
mov rdx, rbx
inc dword [rsi + 0x34]
mov rcx, rsi
mov r9d, dword [r15 + 0x20]
call fcn.14018eb50
movzx r9d, word [r15 + 2]
mov edx, 0x77
mov r8d, dword [r15 + 4]
mov rcx, r12
mov dword [rsp + 0x30], 0xfffffff8
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], edi
mov qword [rbp - 0x58], rax
call fcn.140139ae0
mov ecx, dword [rsi + 0x44]
xor r8d, r8d
mov dword [rbp + 0x58], eax
mov eax, dword [rsi + 0x38]
inc eax
mov dword [rsp + 0x20], edi
dec ecx
mov dword [rbp - 0x80], eax
mov dword [rsp + 0x7c], ecx
lea edx, [rax + 1]
lea eax, [rcx - 1]
mov dword [rbp + 0xd8], edx
lea r14d, [rdx + 2]
mov dword [rsi + 0x44], eax
mov dword [rsi + 0x38], r14d
mov r9d, edx
mov ecx, dword [rbx]
lea edx, [r8 + 0x47]
add ecx, r14d
mov dword [rbp - 0x68], eax
mov dword [rsi + 0x38], ecx
mov dword [rsp + 0x5c], r14d
lea eax, [rcx + 1]
add ecx, dword [rbx]
mov dword [rsi + 0x38], ecx
mov rcx, r12
mov dword [rsp + 0x78], eax
call fcn.140139770
mov edx, dword [rbx]
lea r8d, [r14 + 1]
dec edx
lea r14, [r12 + 0x90]
movsxd rcx, dword [r14]
add edx, r8d
cmp dword [r12 + 0x94], ecx
jg 0x14019a68c
mov r9d, r8d
mov dword [rsp + 0x20], edx
xor r8d, r8d
mov rcx, r12
lea edx, [r8 + 0x4b]
call fcn.140139520
jmp 0x14019a6b4
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r12 + 0x88]
mov qword [rax + rcx*8], 0x4b
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rdi
mov r9d, dword [rbp - 0x68]
mov edx, 0xa
mov r8d, dword [rsp + 0x5c]
mov rcx, r12
call fcn.140139700
mov eax, dword [rsp + 0x60]
mov edx, pe_nt_image_headers64
mov r8, qword [rbp - 0x60]
neg eax
mov dword [rsp + 0x38], edi
mov eax, 0x40
sbb cx, cx
mov r9, rbx
and cx, 0x200
cmp byte [rbp - 0x78], 2
cmove ax, dx
mov rdx, qword [rsp + 0x48]
or cx, ax
mov rax, qword [rbp + 0xc8]
or cx, word [rbp + 0xc0]
mov word [rsp + 0x30], cx
mov rcx, rsi
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r13
call fcn.1401b8bb0
mov qword [rbp - 0x60], rax
mov rcx, rax
test rax, rax
jne 0x14019a768
test r13, r13
je 0x14019a740
mov rcx, qword [rsp + 0x50]
mov rdx, r13
call fcn.140154650
mov r10, qword [rsp + 0x50]
mov r13d, 1
mov rax, qword [rbp + 0x68]
test rax, rax
je 0x1401993b9
mov rdx, rax
mov rcx, r10
call fcn.140154650
jmp 0x1401993b9
cmp qword [rsi + 0x60], rdi
je 0x14019a7ce
mov r9d, dword [r15 + 0x24]
mov dword [r15 + 0x20], r9d
cmp word [r15 + 2], di
jbe 0x14019a7be
mov rax, qword [rbp + 0xc8]
mov r8d, edi
mov rax, qword [rax + 0x38]
mov ecx, dword [rax]
dec ecx
test r9d, r9d
jle 0x14019a7b6
mov rdx, qword [r15 + 0x18]
add rdx, 0x16
nop dword [rax]
movsx eax, word [rdx]
lea rdx, [rdx + 0x18]
cmp eax, ecx
cmovle eax, ecx
inc r8d
mov ecx, eax
cmp r8d, r9d
jl 0x14019a7a0
inc cx
mov word [r15 + 2], cx
lea rdx, [rbp - 0x10]
mov rcx, r15
call fcn.140197a50
mov rcx, qword [rbp - 0x60]
mov eax, dword [rsi + 0x38]
inc eax
mov dword [r15 + 0xc], eax
mov eax, dword [r15 + 0x30]
add eax, dword [r15 + 0x20]
add dword [rsi + 0x38], eax
movsx edx, byte [rcx + 0x41]
movzx eax, byte [rcx + 0x43]
test dl, dl
mov ecx, edi
mov dword [rbp - 0x64], eax
cmovns ecx, edx
cmp ecx, dword [rbx]
jne 0x14019a801
mov dword [rsp + 0x58], edi
jmp 0x14019ab95
cmp byte [rbp - 0x78], dil
je 0x14019a81b
mov rax, qword [rbp + 0xc8]
lea r9, str.DISTINCT
test byte [rax + 4], 1
je 0x14019a822
lea r9, str.GROUP_BY
lea r8, str.USE_TEMP_B_TREE_FOR__s
xor edx, edx
mov rcx, rsi
call fcn.140139e80
mov edx, dword [rbx]
mov ebx, edx
mov eax, dword [r15 + 0x20]
mov dword [rsp + 0x58], 1
mov dword [rsp + 0x48], edx
test eax, eax
jle 0x14019a880
mov r8, qword [r15 + 0x18]
mov r9d, eax
add r8, 0x16
nop word [rax + rax]
movsx ecx, word [r8]
lea eax, [rbx + 1]
cmp ecx, edx
lea r8, [r8 + 0x18]
cmovl eax, ebx
mov ebx, eax
lea eax, [rdx + 1]
cmovl eax, edx
mov edx, eax
sub r9, 1
jne 0x14019a860
cmp ebx, 1
jne 0x14019a8b3
movzx eax, byte [rsi + 0x1f]
lea r13, [rsi + 0x1f]
test al, al
jne 0x14019a89d
inc dword [rsi + 0x38]
mov eax, dword [rsi + 0x38]
mov dword [rsp + 0x40], eax
jmp 0x14019a8e1
dec al
movzx eax, al
mov byte [r13], al
mov eax, dword [rsi + rax*4 + 0xd0]
mov dword [rsp + 0x40], eax
jmp 0x14019a8e1
mov edx, dword [rsi + 0x28]
mov ecx, dword [rsi + 0x2c]
mov dword [rsp + 0x40], ecx
cmp ebx, edx
jg 0x14019a8ce
lea eax, [rcx + rbx]
sub edx, ebx
mov dword [rsi + 0x2c], eax
mov dword [rsi + 0x28], edx
jmp 0x14019a8dd
mov eax, dword [rsi + 0x38]
lea ecx, [rax + 1]
add eax, ebx
mov dword [rsi + 0x38], eax
mov dword [rsp + 0x40], ecx
lea r13, [rsi + 0x1f]
mov r8d, dword [rsp + 0x40]
xor r9d, r9d
mov rdx, qword [rsp + 0x68]
mov rcx, rsi
mov byte [rsp + 0x20], dil
call fcn.14015af50
mov r8d, edi
mov byte [r15], 1
mov dword [rsp + 0x44], edi
cmp dword [r15 + 0x20], edi
jle 0x14019a977
mov r14d, dword [rsp + 0x48]
mov rcx, rdi
mov edi, dword [rsp + 0x40]
mov qword [rbp - 0x48], rcx
nop dword [rax]
mov rdx, qword [r15 + 0x18]
movsx eax, word [rdx + rcx + 0x16]
cmp eax, r14d
jl 0x14019a950
mov rdx, qword [rdx + rcx + 8]
lea r8d, [rdi + r14]
mov rcx, rsi
call fcn.14015ad90
mov rcx, qword [rbp - 0x48]
inc r14d
mov r8d, dword [rsp + 0x44]
mov rax, r13
jmp 0x14019a954
lea rax, [rsi + 0x1f]
inc r8d
add rcx, 0x18
mov dword [rsp + 0x44], r8d
mov qword [rbp - 0x48], rcx
cmp r8d, dword [r15 + 0x20]
jl 0x14019a920
mov r13, rax
lea r14, [r12 + 0x90]
xor edi, edi
mov byte [r15], 0
movzx eax, byte [r13]
test al, al
jne 0x14019a98d
inc dword [rsi + 0x38]
mov r8d, dword [rsi + 0x38]
jmp 0x14019a99e
dec al
movzx eax, al
mov byte [r13], al
mov r8d, dword [rsi + rax*4 + 0xd0]
movsxd rcx, dword [r14]
mov dword [rsp + 0x44], r8d
cmp dword [r12 + 0x94], ecx
jg 0x14019a9d1
mov dword [rsp + 0x20], r8d
mov r9d, ebx
mov r8d, dword [rsp + 0x40]
mov edx, 0x61
mov rcx, r12
call fcn.140139520
mov r8d, dword [rsp + 0x44]
jmp 0x14019aa00
mov edx, dword [rsp + 0x40]
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r12 + 0x88]
mov dword [rax + rcx*8], 0x61
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], rdi
movsxd rcx, dword [r14]
mov edx, dword [r15 + 4]
cmp dword [r12 + 0x94], ecx
jg 0x14019aa2f
mov r9d, r8d
mov dword [rsp + 0x20], edi
mov r8d, edx
mov rcx, r12
mov edx, 0x8b
call fcn.140139520
mov r8d, dword [rsp + 0x44]
jmp 0x14019aa5a
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r12 + 0x88]
mov dword [rax + rcx*8], 0x8b
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
test r8d, r8d
je 0x14019aa74
movzx eax, byte [r13]
cmp al, 8
jae 0x14019aa74
mov dword [rsi + rax*4 + 0xd0], r8d
inc byte [r13]
cmp ebx, 1
jne 0x14019aa97
mov ecx, dword [rsp + 0x40]
test ecx, ecx
je 0x14019aaa6
movzx eax, byte [r13]
cmp al, 8
jae 0x14019aaa6
mov dword [rsi + rax*4 + 0xd0], ecx
inc byte [r13]
jmp 0x14019aaa6
cmp ebx, dword [rsi + 0x28]
jle 0x14019aaa6
mov eax, dword [rsp + 0x40]
mov dword [rsi + 0x2c], eax
mov dword [rsi + 0x28], ebx
mov rcx, qword [rbp - 0x60]
call fcn.1401b9e90
mov edx, dword [rsi + 0x34]
mov dword [r15 + 8], edx
inc dword [rsi + 0x34]
movzx eax, byte [r13]
mov dword [rsp + 0x40], edx
test al, al
jne 0x14019aacf
inc dword [rsi + 0x38]
mov r8d, dword [rsi + 0x38]
jmp 0x14019aae0
dec al
movzx eax, al
mov byte [r13], al
mov r8d, dword [rsi + rax*4 + 0xd0]
movsxd rcx, dword [r14]
mov dword [rsp + 0x44], r8d
cmp dword [r12 + 0x94], ecx
jg 0x14019ab0b
mov r9d, r8d
mov dword [rsp + 0x20], ebx
mov r8d, edx
mov rcx, r12
mov edx, 0x79
call fcn.140139520
jmp 0x14019ab36
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r12 + 0x88]
mov dword [rax + rcx*8], 0x79
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], rdi
movsxd rcx, dword [r14]
mov edx, dword [r15 + 4]
cmp dword [r12 + 0x94], ecx
jg 0x14019ab62
mov r9d, dword [rsp + 0x64]
mov r8d, edx
mov edx, 0x22
mov dword [rsp + 0x20], edi
mov rcx, r12
call fcn.140139520
jmp 0x14019ab90
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r12 + 0x88]
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rsp + 0x64]
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8], 0x22
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
mov byte [r15 + 1], 1
cmp qword [rsi + 0x60], 0
je 0x14019abf3
cmp dword [r15 + 0x30], 0
lea rax, [0x140197ca0]
xorps xmm0, xmm0
mov qword [rbp + 0x30], rax
xorps xmm1, xmm1
mov qword [rbp + 0x28], rdi
movdqu xmmword [rbp + 0x38], xmm0
mov r13d, edi
movdqu xmmword [rbp + 0x48], xmm1
jle 0x14019abf3
mov rbx, rdi
nop dword [rax + rax]
mov rax, qword [r15 + 0x28]
mov rdx, qword [rbx + rax]
test rdx, rdx
je 0x14019abe6
lea rcx, [rbp + 0x28]
call fcn.14014c9b0
inc r13d
add rbx, 0x18
cmp r13d, dword [r15 + 0x30]
jl 0x14019abd0
cmp dword [rsp + 0x60], 0
mov r9d, dword [rsp + 0x58]
je 0x14019ac58
mov rax, qword [rsp + 0x50]
test byte [rax + 0x60], 4
jne 0x14019ac58
test r9d, r9d
jne 0x14019ac19
mov rax, qword [rbp - 0x60]
test byte [rax + 0x44], 8
je 0x14019ac58
mov qword [rbp - 0x40], rdi
mov rcx, qword [r12]
cmp byte [rcx + 0x67], 0
jne 0x14019ac58
movsxd rax, dword [rbp - 0x28]
lea rdx, [rax + rax*2]
mov rax, qword [r12 + 0x88]
mov r8, qword [rax + rdx*8 + 0x10]
lea rbx, [rax + rdx*8]
movsx edx, byte [rax + rdx*8 + 1]
call fcn.14013a8f0
mov r9d, dword [rsp + 0x58]
mov word [rbx], 0xb8
mov qword [rbx + 0x10], rdi
movsxd r13, dword [r14]
mov dword [rsp + 0x48], r13d
test r9d, r9d
je 0x14019ac95
mov edx, dword [r15 + 4]
cmp dword [r12 + 0x94], r13d
jg 0x14019ace8
mov eax, dword [rsp + 0x40]
mov r8d, edx
mov r9d, dword [rsp + 0x44]
mov edx, 0x85
mov rcx, r12
mov dword [rsp + 0x20], eax
call fcn.140139520
mov r9d, dword [rsp + 0x58]
mov edx, dword [rsp + 0x40]
mov rax, qword [rsp + 0x68]
mov ebx, edi
cmp dword [rax], 0
jle 0x14019ad87
lea r13, [rax + 8]
nop dword [rax]
mov r8d, dword [rsp + 0x78]
add r8d, ebx
test r9d, r9d
je 0x14019ad56
movsxd rcx, dword [r14]
cmp dword [r12 + 0x94], ecx
jg 0x14019ad29
mov dword [rsp + 0x20], r8d
mov r9d, ebx
mov r8d, edx
mov rcx, r12
mov edx, 0x5e
call fcn.140139520
jmp 0x14019ad66
mov r8d, dword [rsp + 0x44]
lea eax, [r13 + 1]
mov dword [r14], eax
lea rcx, [r13*2]
mov rax, qword [r12 + 0x88]
add rcx, r13
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rsp + 0x40]
mov dword [rax + rcx*8 + 0xc], edx
mov dword [rax + rcx*8], 0x85
mov dword [rax + rcx*8 + 8], r8d
mov qword [rax + rcx*8 + 0x10], rdi
jmp 0x14019ac99
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r12 + 0x88]
mov dword [rax + rcx*8], 0x5e
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], rdi
jmp 0x14019ad6f
mov byte [r15], 1
mov rcx, rsi
mov rdx, qword [r13]
call fcn.14015ad90
mov r9d, dword [rsp + 0x58]
mov edx, dword [rsp + 0x40]
mov rax, qword [rsp + 0x68]
inc ebx
add r13, 0x20
cmp ebx, dword [rax]
jl 0x14019acb0
mov r13d, dword [rsp + 0x48]
mov r10, qword [rbp - 0x58]
test r10, r10
je 0x14019ad93
inc dword [r10]
movsxd rdx, dword [r14]
mov r8d, dword [rax]
cmp dword [r12 + 0x94], edx
jg 0x14019adca
mov r9d, dword [rsp + 0x78]
mov edx, 0x5a
mov dword [rsp + 0x20], r8d
mov rcx, r12
mov r8d, dword [rsp + 0x5c]
inc r8d
call fcn.140139520
mov r10, qword [rbp - 0x58]
mov edx, eax
jmp 0x14019ae04
mov r9d, dword [rsp + 0x5c]
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
inc r9d
mov dword [r14], eax
mov rax, qword [r12 + 0x88]
mov dword [rax + rcx*8 + 4], r9d
mov r9d, dword [rsp + 0x78]
mov dword [rax + rcx*8 + 8], r9d
mov dword [rax + rcx*8], 0x5a
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], rdi
mov rax, qword [r12]
cmp byte [rax + 0x67], 0
je 0x14019ae31
cmp qword [rax + 0x2e8], 0
jne 0x14019ae74
test r10, r10
je 0x14019ae74
add dword [r10], 0xffffffff
jne 0x14019ae74
mov rcx, qword [r10 + 0x10]
mov rdx, r10
call fcn.14010e880
jmp 0x14019ae74
test edx, edx
jns 0x14019ae3a
mov edx, dword [r14]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [r12 + 0x88]
cmp byte [rax + rcx*8 + 1], 0
lea rdx, [rax + rcx*8]
je 0x14019ae67
mov r9d, 0xfffffff8
mov r8, r10
mov rcx, r12
call fcn.14013ab40
jmp 0x14019ae74
test r10, r10
je 0x14019ae74
mov qword [rdx + 0x10], r10
mov byte [rdx + 1], 0xf8
movsxd rbx, dword [r14]
lea edx, [rbx + 1]
cmp dword [r12 + 0x94], ebx
jg 0x14019ae9c
xor r9d, r9d
mov dword [rsp + 0x20], edx
mov r8d, edx
mov rcx, r12
lea edx, [r9 + 0xe]
call fcn.140139520
jmp 0x14019aec3
mov rax, qword [r12 + 0x88]
lea rcx, [rbx + rbx*2]
mov dword [r14], edx
mov dword [rax + rcx*8], send
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], edi
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rdi
mov r10, qword [rsi + 0x10]
mov rdx, qword [rsp + 0x68]
mov r8d, dword [rsp + 0x78]
movsxd rcx, dword [r10 + 0x90]
mov edx, dword [rdx]
cmp dword [r10 + 0x94], ecx
jg 0x14019aefe
mov r9d, dword [rsp + 0x5c]
mov rcx, r10
mov dword [rsp + 0x20], edx
inc r9d
mov edx, 0x4f
call fcn.140139520
jmp 0x14019af35
lea eax, [rcx + 1]
mov dword [r10 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r10 + 0x88]
mov dword [rax + rcx*8 + 4], r8d
mov r8d, dword [rsp + 0x5c]
inc r8d
mov dword [rax + rcx*8], 0x4f
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rdi
movsxd rcx, dword [r14]
mov r8d, dword [rbp + 0xd8]
cmp dword [r12 + 0x94], ecx
jg 0x14019af6b
mov r9d, dword [rsp + 0x7c]
inc r8d
mov edx, 0xa
mov dword [rsp + 0x20], edi
mov rcx, r12
call fcn.140139520
mov r8d, dword [rbp + 0xd8]
jmp 0x14019af9d
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r12 + 0x88]
lea edx, [r8 + 1]
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rsp + 0x7c]
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8], 0xa
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
movsxd rcx, dword [r14]
cmp dword [r12 + 0x94], ecx
jg 0x14019afc2
mov r9d, dword [rsp + 0x64]
mov edx, 0x3b
mov rcx, r12
mov dword [rsp + 0x20], edi
call fcn.140139520
jmp 0x14019aff1
mov edx, dword [rsp + 0x64]
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r12 + 0x88]
mov dword [rax + rcx*8], 0x3b
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
movsxd rcx, dword [r14]
cmp dword [r12 + 0x94], ecx
jg 0x14019b01a
mov r9d, dword [rbp - 0x68]
mov edx, 0xa
mov r8d, dword [rsp + 0x5c]
mov rcx, r12
mov dword [rsp + 0x20], edi
call fcn.140139520
jmp 0x14019b04b
mov edx, dword [rsp + 0x5c]
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r12 + 0x88]
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rbp - 0x68]
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8], 0xa
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
mov rax, qword [r12]
mov edx, dword [r14]
cmp byte [rax + 0x67], 0
je 0x14019b061
lea rax, [0x140332b10]
jmp 0x14019b071
mov rax, qword [r12 + 0x88]
lea rcx, [rbx + rbx*2]
lea rax, [rax + rcx*8]
mov ebx, dword [rbp - 0x80]
mov r8, r15
mov r9d, dword [rbp - 0x64]
mov rcx, rsi
mov dword [rax + 8], edx
mov edx, ebx
call fcn.1401980a0
movsxd rcx, dword [r14]
cmp dword [r12 + 0x94], ecx
jg 0x14019b0af
mov edx, 0x47
mov dword [rsp + 0x20], edi
mov r9d, ebx
mov rcx, r12
lea r8d, [rdx - 0x46]
call fcn.140139520
jmp 0x14019b0dd
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r12 + 0x88]
mov dword [rax + rcx*8], 0x47
mov dword [rax + rcx*8 + 4], 1
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
cmp dword [rsp + 0x58], 0
je 0x14019b13b
movsxd rcx, dword [r14]
mov edx, dword [r15 + 4]
cmp dword [r12 + 0x94], ecx
jg 0x14019b10e
mov r8d, edx
mov dword [rsp + 0x20], edi
mov edx, 0x25
mov r9d, r13d
mov rcx, r12
call fcn.140139520
jmp 0x14019b17a
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r12 + 0x88]
mov dword [rax + rcx*8], 0x25
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r13d
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
jmp 0x14019b17a
mov rcx, qword [rbp - 0x60]
call fcn.1401b9e90
mov rcx, qword [r12]
cmp byte [rcx + 0x67], 0
jne 0x14019b17a
movsxd rax, dword [rbp + 0x58]
lea rdx, [rax + rax*2]
mov rax, qword [r12 + 0x88]
mov r8, qword [rax + rdx*8 + 0x10]
lea rbx, [rax + rdx*8]
movsx edx, byte [rax + rdx*8 + 1]
call fcn.14013a8f0
mov word [rbx], 0xb8
mov qword [rbx + 0x10], rdi
mov rdx, qword [rbp - 0x50]
test rdx, rdx
je 0x14019b18d
mov rcx, qword [rsp + 0x50]
call fcn.140154650
mov ebx, dword [rbp + 0xd8]
movsxd rcx, dword [r14]
inc ebx
cmp dword [r12 + 0x94], ecx
jg 0x14019b1bd
mov r9d, dword [rsp + 0x7c]
mov r8d, ebx
mov edx, 0xa
mov dword [rsp + 0x20], edi
mov rcx, r12
call fcn.140139520
jmp 0x14019b1eb
mov edx, dword [rsp + 0x7c]
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r12 + 0x88]
mov dword [rax + rcx*8], 0xa
mov dword [rax + rcx*8 + 4], ebx
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
movsxd rcx, dword [r14]
cmp dword [r12 + 0x94], ecx
jg 0x14019b212
mov r9d, dword [rsp + 0x64]
xor r8d, r8d
mov rcx, r12
mov dword [rsp + 0x20], edi
lea edx, [r8 + 9]
call fcn.140139520
jmp 0x14019b23d
mov edx, dword [rsp + 0x64]
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r12 + 0x88]
mov qword [rax + rcx*8], 9
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
movsxd r13, dword [r14]
cmp dword [r12 + 0x94], r13d
jg 0x14019b268
mov r9d, dword [rbp + 0xd8]
mov edx, 0x47
mov rcx, r12
mov dword [rsp + 0x20], edi
lea r8d, [rdx - 0x46]
call fcn.140139520
jmp 0x14019b2a4
mov edx, dword [rbp + 0xd8]
lea eax, [r13 + 1]
mov dword [r14], eax
lea rcx, [r13*2]
mov rax, qword [r12 + 0x88]
add rcx, r13
mov dword [rax + rcx*8], 0x47
mov dword [rax + rcx*8 + 4], 1
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
movsxd rcx, dword [r14]
cmp dword [r12 + 0x94], ecx
jg 0x14019b2c9
xor r9d, r9d
mov dword [rsp + 0x20], edi
mov r8d, ebx
mov rcx, r12
lea edx, [r9 + 0x43]
call fcn.140139520
jmp 0x14019b2f4
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r12 + 0x88]
mov dword [rax + rcx*8], 0x43
mov dword [rax + rcx*8 + 4], ebx
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], rdi
mov rcx, qword [r12 + 0x18]
lea rbx, [r12 + 0x18]
mov edx, dword [rsp + 0x7c]
not edx
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x14019b319
mov r8d, edx
mov rdx, r12
call fcn.14013a220
jmp 0x14019b327
mov rcx, qword [rcx + 0x50]
mov eax, dword [r14]
movsxd r8, edx
mov dword [rcx + r8*4], eax
movsxd rax, dword [r14]
lea ecx, [rax + 1]
lea r8d, [rax + 2]
mov dword [rsp + 0x60], ecx
cmp dword [r12 + 0x94], eax
jg 0x14019b359
mov r9d, r8d
mov dword [rsp + 0x20], edi
mov r8d, dword [rbp - 0x80]
mov edx, 0x3b
mov rcx, r12
call fcn.140139520
jmp 0x14019b384
mov edx, dword [rbp - 0x80]
mov dword [r14], ecx
lea rcx, [rax + rax*2]
mov rax, qword [r12 + 0x88]
mov dword [rax + rcx*8], 0x3b
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
movsxd rcx, dword [r14]
cmp dword [r12 + 0x94], ecx
jg 0x14019b3b0
mov r8d, dword [rbp + 0xd8]
xor r9d, r9d
inc r8d
mov dword [rsp + 0x20], edi
mov rcx, r12
lea edx, [r9 + 0x43]
call fcn.140139520
jmp 0x14019b3e3
mov edx, dword [rbp + 0xd8]
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r12 + 0x88]
inc edx
mov dword [rax + rcx*8], 0x43
mov dword [rax + rcx*8 + 4], edx
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], rdi
mov rdx, r15
mov rcx, rsi
call fcn.140197f80
mov r8d, dword [rsp + 0x60]
mov r9d, reloc.WS2_32.dll_recv
mov rdx, qword [rsp + 0x70]
mov rcx, rsi
call fcn.14015b7d0
mov eax, dword [rsp + 0x60]
lea r9, [rbp - 0x40]
mov rdx, qword [rbp + 0xc8]
mov r8d, 0xffffffff
mov dword [rsp + 0x38], r13d
mov rcx, rsi
mov dword [rsp + 0x30], eax
mov rax, qword [rbp + 0xd0]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x78]
mov qword [rsp + 0x20], rax
call fcn.14018de90
movsxd rcx, dword [r14]
cmp dword [r12 + 0x94], ecx
jg 0x14019b46d
mov r8d, dword [rbp + 0xd8]
xor r9d, r9d
inc r8d
mov dword [rsp + 0x20], edi
mov rcx, r12
lea edx, [r9 + 0x43]
call fcn.140139520
jmp 0x14019b4a0
mov edx, dword [rbp + 0xd8]
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r12 + 0x88]
inc edx
mov dword [rax + rcx*8], 0x43
mov dword [rax + rcx*8 + 4], edx
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], rdi
mov rcx, qword [rbx]
mov edx, dword [rbp - 0x68]
not edx
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x14019b4bd
mov r8d, edx
mov rdx, r12
call fcn.14013a220
jmp 0x14019b4cb
mov rcx, qword [rcx + 0x50]
mov eax, dword [r14]
movsxd r8, edx
mov dword [rcx + r8*4], eax
mov rdx, r15
mov rcx, rsi
call fcn.140197da0
movsxd rcx, dword [r14]
cmp dword [r12 + 0x94], ecx
jg 0x14019b4fc
mov r9d, dword [rbp - 0x80]
xor r8d, r8d
mov rcx, r12
mov dword [rsp + 0x20], edi
lea edx, [r8 + 0x47]
call fcn.140139520
jmp 0x14019b526
mov edx, dword [rbp - 0x80]
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r12 + 0x88]
mov qword [rax + rcx*8], 0x47
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdi
movsxd rcx, dword [r14]
cmp dword [r12 + 0x94], ecx
jg 0x14019b54d
mov r8d, dword [rsp + 0x5c]
xor r9d, r9d
mov rcx, r12
mov dword [rsp + 0x20], edi
lea edx, [r9 + 0x43]
call fcn.140139520
jmp 0x14019b57c
mov edx, dword [rsp + 0x5c]
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r12 + 0x88]
mov dword [rax + rcx*8], 0x43
mov dword [rax + rcx*8 + 4], edx
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], rdi
cmp word [rbp + 0xc0], 0
je 0x14019b5a3
mov eax, dword [rbp - 0x64]
test eax, eax
je 0x14019b5a3
mov r8, qword [r15 + 0x28]
mov edx, eax
mov rcx, rsi
mov r9d, dword [r8 + 0x14]
mov r8d, dword [r8 + 0x10]
call fcn.14018ddc0
mov r15d, dword [rsp + 0x64]
jmp 0x14019bb09
cmp qword [r14 + 0x30], rdi
jne 0x14019b8f7
mov rdx, qword [r14 + 0x20]
cmp dword [rdx], 1
jne 0x14019b8f7
mov r14, qword [r14 + 0x28]
cmp dword [r14], 1
jne 0x14019b8f7
cmp qword [r14 + 0x30], rdi
jne 0x14019b8f7
cmp dword [r15 + 0x30], 1
jne 0x14019b8f7
mov r9, qword [rbp + 0xc8]
cmp qword [r9 + 0x40], rdi
jne 0x14019b8f7
mov r14, qword [r14 + 0x28]
mov qword [rbp - 0x48], r14
cmp byte [r14 + 0x3f], dil
jne 0x14019b8f7
mov rdx, qword [rdx + 8]
cmp byte [rdx], 0xa8
jne 0x14019b8f7
cmp qword [rdx + 0x38], r15
jne 0x14019b8f7
mov rax, qword [r15 + 0x28]
mov rcx, qword [rax + 8]
test dword [rcx + 4], 0x100
je 0x14019b8f7
test dword [rdx + 4], 0x1000004
jne 0x14019b8f7
mov rdx, qword [r14 + 0x60]
mov r13d, 0xffff8000
test rdx, rdx
je 0x14019b67c
mov rax, qword [rsi]
mov r13d, edi
mov rcx, qword [rax + 0x20]
add rcx, 0x18
cmp qword [rcx], rdx
je 0x14019b67c
nop word [rax + rax]
inc r13d
lea rcx, [rcx + 0x20]
cmp qword [rcx], rdx
jne 0x14019b670
mov eax, dword [rsi + 0x34]
mov rcx, rsi
mov dword [rbp + 0xd8], eax
mov r8, rdi
inc eax
mov qword [rbp - 0x58], rdi
mov dword [rsi + 0x34], eax
mov rbx, rdi
mov eax, dword [r14 + 0x28]
mov dword [rbp + 0xc0], eax
mov rax, qword [rsi + 0x98]
test rax, rax
cmovne rcx, rax
mov eax, dword [rcx + 0x7c]
bt eax, r13d
jb 0x14019b6d4
bts eax, r13d
mov dword [rcx + 0x7c], eax
cmp r13d, 1
jne 0x14019b6d4
call fcn.1401706e0
mov r9, qword [rbp + 0xc8]
mov r8, rdi
test byte [r14 + 0x30], 0x80
je 0x14019b6f6
mov rbx, qword [r14 + 0x10]
test rbx, rbx
je 0x14019b6f6
mov eax, dword [rbx + 0x64]
and al, 3
cmp al, 2
je 0x14019b6f6
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x14019b6e4
mov rax, qword [r9 + 0x28]
test byte [rax + 0x48], 1
jne 0x14019b73e
mov rax, qword [r14 + 0x10]
test rax, rax
je 0x14019b73e
nop dword [rax]
test byte [rax + 0x64], 4
jne 0x14019b735
movzx ecx, word [rax + 0x5c]
cmp cx, word [r14 + 0x3c]
jge 0x14019b735
cmp qword [rax + 0x48], rdi
jne 0x14019b735
test rbx, rbx
je 0x14019b732
cmp cx, word [rbx + 0x5c]
jge 0x14019b735
mov rbx, rax
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x14019b710
test rbx, rbx
je 0x14019b75e
mov eax, dword [rbx + 0x58]
mov rdx, rbx
mov rcx, rsi
mov dword [rbp + 0xc0], eax
call fcn.1401712e0
mov r8, rax
mov qword [rbp - 0x58], rax
lea r14, [r12 + 0x90]
movsxd rcx, dword [r14]
cmp dword [r12 + 0x94], ecx
jg 0x14019b7a4
mov r9d, dword [rbp + 0xc0]
mov edx, reloc.WS2_32.dll_WSASetLastError
mov dword [rsp + 0x28], 1
mov rcx, r12
mov dword [rsp + 0x20], r13d
mov r13d, dword [rbp + 0xd8]
mov r8d, r13d
call fcn.140139580
mov r8, qword [rbp - 0x58]
jmp 0x14019b7e5
mov edx, dword [rbp + 0xd8]
lea eax, [rcx + 1]
mov dword [r14], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r12 + 0x88]
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rbp + 0xc0]
mov dword [rax + rcx*8 + 0xc], r13d
mov r13d, dword [rbp + 0xd8]
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8], 0xfd70
mov dword [rax + rcx*8 + 0x10], 1
test r8, r8
je 0x14019b847
mov rax, qword [r12]
cmp byte [rax + 0x67], dil
je 0x14019b811
cmp qword [rax + 0x2e8], rdi
jne 0x14019b847
add dword [r8], 0xffffffff
jne 0x14019b847
mov rcx, qword [r8 + 0x10]
mov rdx, r8
call fcn.14010e880
jmp 0x14019b847
movsxd rax, dword [r14]
lea rdx, [rax + rax*2]
mov rax, qword [r12 + 0x88]
lea rdx, [rdx - 3]
cmp byte [rax + rdx*8 + 1], dil
lea rdx, [rax + rdx*8]
je 0x14019b83f
mov r9d, 0xfffffff8
mov rcx, r12
call fcn.14013ab40
jmp 0x14019b847
mov qword [rdx + 0x10], r8
mov byte [rdx + 1], 0xf8
mov eax, dword [rsi + 0x38]
mov r8d, r13d
inc eax
mov dword [rsp + 0x20], edi
mov dword [r15 + 0xc], eax
mov edx, 0x62
mov eax, dword [r15 + 0x30]
mov rcx, r12
add eax, dword [r15 + 0x20]
add dword [rsi + 0x38], eax
mov r9d, dword [r15 + 0x20]
add r9d, dword [r15 + 0xc]
call fcn.140139770
mov r8d, r13d
mov edx, 0x7a
mov rcx, r12
call fcn.140139690
cmp byte [rsi + 0x11b], 2
jne 0x14019bab4
mov r9, qword [rbp - 0x48]
test rbx, rbx
je 0x14019b8b9
test byte [r9 + 0x30], 0x80
je 0x14019b8ad
mov eax, dword [rbx + 0x64]
and al, 3
cmp al, 2
je 0x14019b8b9
mov rax, qword [rbx]
lea rcx, [0x1402c669a]
jmp 0x14019b8c6
lea rcx, [0x1402c669a]
mov dword [rbp - 0x50], edi
mov rax, rcx
cmp dword [rbp - 0x50], edi
lea rdx, str._USING_COVERING_INDEX
mov r9, qword [r9]
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, rsi
call fcn.140139e80
jmp 0x14019bab4
mov r14d, edi
mov r8d, dword [r15 + 0x30]
movzx ebx, di
mov qword [rbp + 0xd8], rdi
cmp dword [r15 + 0x24], edi
je 0x14019b96c
mov edx, edi
test r8d, r8d
jle 0x14019b941
mov rcx, qword [r15 + 0x28]
nop dword [rax]
mov rax, qword [rcx]
test dword [rax + 4], 0x1000000
jne 0x14019b936
mov rax, qword [rcx + 8]
test byte [rax + 4], 0x20
jne 0x14019b941
inc edx
add rcx, 0x18
cmp edx, r8d
jl 0x14019b920
cmp edx, r8d
jne 0x14019b967
inc dword [rsi + 0x38]
xor r8d, r8d
mov r14d, dword [rsi + 0x38]
mov rcx, r12
mov r9d, r14d
mov dword [rsp + 0x20], edi
lea edx, [r8 + 0x47]
call fcn.140139770
mov r8d, dword [r15 + 0x30]
mov ecx, r8d
jmp 0x14019b997
mov ecx, r8d
cmp r8d, 1
jne 0x14019b997
mov rax, qword [r15 + 0x28]
cmp dword [rax + 0x10], edi
jl 0x14019b997
mov rax, qword [rax]
mov rax, qword [rax + 0x20]
mov qword [rbp + 0xd8], rax
neg rax
sbb bx, bx
and bx, 0x500
mov eax, dword [rsi + 0x38]
mov rdx, r15
inc eax
mov dword [r15 + 0xc], eax
mov eax, dword [r15 + 0x20]
add eax, ecx
mov rcx, rsi
add dword [rsi + 0x38], eax
call fcn.140197da0
mov r9, qword [rbp + 0x68]
mov rcx, rsi
mov r8, qword [rbp - 0x60]
mov rdx, qword [rsp + 0x48]
mov dword [rsp + 0x38], edi
movzx eax, r13b
or ax, bx
mov word [rsp + 0x30], ax
mov rax, qword [rbp + 0xc8]
mov qword [rsp + 0x28], rax
mov rax, qword [rbp + 0xd8]
mov qword [rsp + 0x20], rax
call fcn.1401b8bb0
mov rbx, rax
test rax, rax
je 0x14019a740
movzx r13d, byte [rax + 0x43]
mov r8, r15
mov r9d, r13d
mov edx, r14d
mov rcx, rsi
call fcn.1401980a0
test r13d, r13d
je 0x14019ba34
mov r8, qword [r15 + 0x28]
test r8, r8
je 0x14019ba34
mov r9d, dword [r8 + 0x14]
mov edx, r13d
mov r8d, dword [r8 + 0x10]
mov rcx, rsi
call fcn.14018ddc0
test r14d, r14d
je 0x14019ba4d
mov edx, 0x47
mov r9d, r14d
mov rcx, r12
lea r8d, [rdx - 0x46]
call fcn.140139700
cmp byte [rbp + 0xc0], dil
je 0x14019ba99
test byte [rbx + 0x44], 4
je 0x14019ba99
cmp byte [rbx + 0x41], dil
je 0x14019ba99
movzx ecx, byte [rbx + 0x40]
sub rcx, 1
js 0x14019ba8e
imul rdx, rcx, 0x70
add rdx, rbx
mov rax, qword [rdx + 0x3c0]
test byte [rax + 0x38], 4
jne 0x14019bb24
sub rdx, 0x70
sub rcx, 1
jns 0x14019ba73
mov edx, dword [rbx + 0x34]
mov rcx, r12
call fcn.140139850
mov rcx, rbx
call fcn.1401b9e90
mov rdx, r15
mov rcx, rsi
call fcn.140197f80
lea r14, [r12 + 0x90]
mov r15d, dword [rsp + 0x64]
mov r9d, reloc.WS2_32.dll_recv
mov rdx, qword [rsp + 0x70]
mov r8d, r15d
mov rcx, rsi
mov qword [rbp - 0x40], rdi
call fcn.14015b7d0
mov rax, qword [rbp + 0xd0]
xor r9d, r9d
mov rdx, qword [rbp + 0xc8]
mov rcx, rsi
mov dword [rsp + 0x38], r15d
mov dword [rsp + 0x30], r15d
mov qword [rsp + 0x28], rax
lea r8d, [r9 - 1]
mov qword [rsp + 0x20], rdi
call fcn.14018de90
lea rbx, [r12 + 0x18]
mov rcx, qword [rbx]
not r15d
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x14019bb2f
mov r8d, r15d
mov rdx, r12
call fcn.14013a220
jmp 0x14019bb3c
mov edx, dword [rdx + 0x370]
jmp 0x14019ba91
movsxd rdx, r15d
mov rcx, qword [rcx + 0x50]
mov eax, dword [r14]
mov dword [rcx + rdx*4], eax
cmp byte [rbp - 0x77], 3
jne 0x14019bb5a
lea r9, str.DISTINCT
xor edx, edx
lea r8, str.USE_TEMP_B_TREE_FOR__s
mov rcx, rsi
call fcn.140139e80
cmp qword [rbp - 0x40], 0
je 0x14019bb87
mov r9, qword [rbp + 0x60]
lea r8, [rbp - 0x40]
mov rax, qword [rbp + 0xd0]
mov rcx, rsi
mov rdx, qword [rbp + 0xc8]
mov qword [rsp + 0x20], rax
mov r9d, dword [r9]
call fcn.14018ec70
mov rcx, qword [rbx]
mov edx, dword [rbp + 0x5c]
not edx
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x14019bba4
mov r8d, edx
mov rdx, r12
call fcn.14013a220
jmp 0x14019bbb2
mov r8, qword [rcx + 0x50]
mov eax, dword [r14]
movsxd r9, edx
mov dword [r8 + r9*4], eax
cmp dword [rsi + 0x30], 0
mov eax, edi
mov r10, qword [rsp + 0x50]
setg al
mov r13d, eax
jmp 0x14019a74b
mov eax, r13d
jmp 0x14019938b