Function at 0x1402ab630
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 rdi
push r12
push r13
push r14
lea rbp, [rsp - 0xa8]
sub rsp, 0x1a8
mov rdi, qword [rcx + 0x10]
xor r12d, r12d
mov rax, qword [rcx]
mov r14, r8
mov dword [rsp + 0x78], 1
mov rbx, rdx
mov qword [rbp + 0x58], r12
mov r13, rcx
mov qword [rsp + 0x68], rax
mov qword [rbp - 0x58], rdi
test rdi, rdi
jne 0x1402ab6a3
cmp qword [rcx + 0xa0], r12
jne 0x1402ab697
test byte [rax + 0x60], 8
jne 0x1402ab697
mov byte [rcx + 0x23], 1
call fcn.1402b8190
mov rdi, rax
mov qword [rbp - 0x58], rax
test rbx, rbx
je 0x1402aeee4
cmp dword [r13 + 0x30], r12d
jne 0x1402aeee4
xor r9d, r9d
mov qword [rsp + 0x20], r12
xor r8d, r8d
mov rcx, r13
lea edx, [r9 + 0x15]
call fcn.140274720
test eax, eax
jne 0x1402aeee4
cmp byte [r14], 6
lea rax, [0x140288e80]
ja 0x1402ab705
mov r8, qword [rbx + 0x48]
test r8, r8
je 0x1402ab6fa
mov rdx, rax
mov rcx, r13
call fcn.1402a1460
mov qword [rbx + 0x48], r12
and dword [rbx + 4], 0xfffffffe
or dword [rbx + 4], 0x400000
mov qword [rsp + 0x1a0], rsi
xor r8d, r8d
mov rdx, rbx
mov qword [rsp + 0x198], r15
mov rcx, r13
call fcn.1402afd20
cmp dword [r13 + 0x30], r12d
jne 0x1402aeed3
mov r10d, dword [rbx + 4]
bt r10d, 0x17
jae 0x1402ab785
mov rdx, qword [rbx + 0x28]
lea r11, [rdx + 8]
mov rcx, r11
call fcn.140264d50
test eax, eax
je 0x1402ab77c
mov r8, qword [r11 + 0x18]
test r8, r8
jne 0x1402ab75c
mov rax, qword [r11 + 0x20]
mov r8, qword [rax]
lea rdx, str.target_object_alias_may_not_appear_in_FROM_clause:__s
mov rcx, r13
call fcn.140283150
mov rcx, r13
call fcn.1402c1900
mov eax, dword [rsp + 0x78]
jmp 0x1402aba2d
btr r10d, 0x17
mov dword [rbx + 4], r10d
cmp byte [r14], 9
jne 0x1402ab796
mov rdx, rbx
mov rcx, r13
call fcn.1402945b0
mov rdx, rbx
mov rcx, r13
call fcn.1402d2080
test eax, eax
jne 0x1402aeed3
mov eax, dword [rbx + 4]
xorps xmm0, xmm0
mov rsi, qword [rbx + 0x28]
mov r15d, r12d
shr eax, 3
and eax, 1
mov dword [rsp + 0x58], eax
mov rax, qword [rbx + 0x48]
movups xmmword [rbp + 0x60], xmm0
mov qword [rbp - 0x80], rax
mov qword [rbp + 0x60], rax
movups xmmword [rbp + 0x70], xmm0
movups xmmword [rbp + 0x80], xmm0
cmp qword [rbx + 0x50], r12
jne 0x1402aba0a
mov rdx, qword [rsp + 0x68]
mov r13, r12
mov r9d, 0x18
cmp r15d, dword [rsi]
jge 0x1402aba7a
imul rbx, r13, 0x68
add rbx, rsi
movzx eax, byte [rbx + 0x44]
mov r14, qword [rbx + 0x30]
and al, r9b
mov r12, qword [rbx + 0x28]
cmp al, 8
jne 0x1402ab86e
mov rax, qword [rbp + 0xe8]
mov edx, dword [rbx + 0x4c]
mov rcx, qword [rax + 0x30]
call fcn.140288700
mov rdx, qword [rsp + 0x68]
test eax, eax
je 0x1402ab868
test dword [rdx + 0x60], 0x2000
jne 0x1402ab868
and byte [rbx + 0x44], 0xd7
mov edx, dword [rbx + 0x4c]
movzx r8d, byte [rsi + 0x44]
mov rbx, qword [rbp + 0xe8]
and r8d, 0x40
mov rcx, qword [rbx + 0x30]
call fcn.1402d70a0
mov rdx, qword [rsp + 0x68]
mov r9d, 0x18
jmp 0x1402ab875
mov r9d, 0x18
mov rbx, qword [rbp + 0xe8]
test r14, r14
je 0x1402ab9eb
mov rax, qword [r14 + 0x20]
movsx r8d, word [r12 + 0x36]
mov ecx, dword [rax]
cmp r8d, ecx
jne 0x1402aba4e
mov eax, dword [r14 + 4]
test al, 8
jne 0x1402ab9eb
mov rbx, qword [r14 + 0x48]
test rbx, rbx
je 0x1402ab955
mov rcx, qword [rbp + 0xe8]
cmp qword [rcx + 0x48], 0
jne 0x1402ab8c3
cmp dword [rsi], 1
jle 0x1402ab9c4
cmp qword [r14 + 0x60], 0
jne 0x1402ab9c4
bt eax, 0x1b
jb 0x1402ab9c4
test dword [rcx + 4], 0x8000000
jne 0x1402ab9c4
test dword [rdx + 0x60], 0x40000
jne 0x1402ab9c4
mov rsi, qword [rbp + 0xe0]
mov rcx, qword [rsi]
test rcx, rcx
je 0x1402ab90b
mov rdx, r9
call fcn.140280630
jmp 0x1402ab913
mov rcx, r9
call fcn.14029d740
mov rcx, rax
test rax, rax
je 0x1402ab944
mov rdx, qword [rbp + 0xe0]
mov rax, qword [rdx + 0xb8]
mov qword [rcx], rax
lea rax, [0x140288e80]
mov qword [rdx + 0xb8], rcx
mov qword [rcx + 0x10], rax
mov qword [rcx + 8], rbx
jmp 0x1402ab94f
mov rcx, qword [rsi]
mov rdx, rbx
call fcn.140219f50
xor eax, eax
mov qword [r14 + 0x48], rax
mov rbx, qword [rbp + 0xe8]
mov r9d, dword [rsp + 0x58]
mov r8d, r15d
mov rcx, qword [rbp + 0xe0]
mov rdx, rbx
call fcn.14021f3a0
test eax, eax
je 0x1402ab996
mov r13, qword [rbp + 0xe0]
cmp dword [r13 + 0x30], 0
jne 0x1402aeed3
mov r15d, 0xffffffff
mov r13, 0xffffffffffffffff
mov rdx, qword [rsp + 0x68]
mov rsi, qword [rbx + 0x28]
cmp byte [rdx + 0x67], 0
jne 0x1402aeecc
mov r14, qword [rbp + 0xf0]
cmp byte [r14], 8
jbe 0x1402ab9f2
mov rax, qword [rbx + 0x48]
mov qword [rbp - 0x80], rax
mov qword [rbp + 0x60], rax
jmp 0x1402ab9f2
test r15d, r15d
jne 0x1402ab955
mov rbx, qword [rbp + 0xe8]
test dword [rbx + 4], 0x40000
je 0x1402ab95c
cmp dword [rsi], 1
je 0x1402ab9eb
test byte [rsi + 0xac], 0x22
je 0x1402ab95c
mov r14, qword [rbp + 0xf0]
inc r15d
inc r13
cmp qword [rbx + 0x50], 0
je 0x1402ab7ed
mov r13, qword [rbp + 0xe0]
mov r8, r14
mov rdx, rbx
mov rcx, r13
call fcn.14024f0d0
cmp qword [rbx + 0x58], 0
mov r10d, eax
jne 0x1402aba2a
mov rcx, r13
call fcn.1402c1900
mov eax, r10d
mov rsi, qword [rsp + 0x1a0]
mov r15, qword [rsp + 0x198]
add rsp, 0x1a8
pop r14
pop r13
pop r12
pop rdi
pop rbx
pop rbp
ret
mov r13, qword [rbp + 0xe0]
lea rdx, str.expected__d_columns_for__s_but_got__d
mov r9, qword [r12]
mov dword [rsp + 0x20], ecx
mov rcx, r13
call fcn.140283150
mov rcx, r13
call fcn.1402c1900
mov eax, dword [rsp + 0x78]
jmp 0x1402aba2d
mov rax, qword [rbx + 0x30]
mov r14, rsi
mov r13, qword [rbp + 0xe0]
mov qword [rsp + 0x48], rsi
test rax, rax
je 0x1402abc45
cmp byte [rax], 0x2c
mov qword [rsp + 0x48], rsi
jne 0x1402abc45
test dword [rdx + 0x60], 0x8000
mov qword [rsp + 0x48], rsi
jne 0x1402abc45
mov rax, qword [r13]
lea r15, [0x14025a040]
add rax, 0x67
mov qword [rbp + 0x10], r13
mov qword [rbp + 0x18], rax
lea rdi, [fcn.14006ebc0]
xor r12d, r12d
mov qword [rsp + 0x48], rsi
mov r14d, 1
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rbx + 0x28]
mov qword [rbp + 0x20], r12
mov qword [rbp + 0x30], r12
mov dword [rbp + 0x28], r12d
test rax, rax
je 0x1402abb17
cmp dword [rax], r12d
jle 0x1402abb17
test byte [rax + 0x44], 0x40
mov dword [rbp + 0x2c], 3
jne 0x1402abb1b
mov dword [rbp + 0x2c], r14d
mov rdx, qword [rbx + 0x30]
lea rcx, [rbp + 0x10]
call fcn.14021b5c0
cmp dword [rbp + 0x20], r12d
je 0x1402abc32
mov rdx, qword [rbx + 0x30]
lea rax, [rbp + 0x10]
mov qword [rbp - 0x28], r12
mov qword [rbp - 0x48], r13
mov qword [rbp - 0x40], r15
mov qword [rbp - 0x38], rdi
mov qword [rbp - 0x30], r12
mov qword [rbp - 0x20], rax
test rdx, rdx
je 0x1402abb60
lea rcx, [rbp - 0x48]
call fcn.1402dff00
mov rax, qword [rbp + 0x10]
mov rbx, qword [rbp + 0x30]
mov rcx, qword [rax]
test rbx, rbx
je 0x1402abc2b
test rcx, rcx
je 0x1402abbd0
cmp qword [rcx + 0x300], r12
je 0x1402abb8f
mov rdx, rbx
call fcn.14024e7a0
jmp 0x1402abc2b
cmp rbx, qword [rcx + 0x1f0]
jae 0x1402abbd0
cmp rbx, qword [rcx + 0x1e0]
jb 0x1402abbb4
mov rax, qword [rcx + 0x1d8]
mov qword [rbx], rax
mov qword [rcx + 0x1d8], rbx
jmp 0x1402abc2b
cmp rbx, qword [rcx + 0x1e8]
jb 0x1402abbd0
mov rax, qword [rcx + 0x1c8]
mov qword [rbx], rax
mov qword [rcx + 0x1c8], rbx
jmp 0x1402abc2b
cmp dword [0x14042c570], r12d
je 0x1402abc22
mov rcx, qword [0x140433850]
test rcx, rcx
je 0x1402abbeb
call qword [0x14042c5f0]
mov rcx, rbx
call qword [0x14042c5a8]
dec qword [0x1404337e8]
mov rcx, rbx
movsxd rdx, eax
sub qword [0x1404337a0], rdx
call qword [0x14042c598]
mov rcx, qword [0x140433850]
test rcx, rcx
je 0x1402abc2b
call qword [0x14042c600]
jmp 0x1402abc2b
mov rcx, rbx
call qword [0x14042c598]
mov rbx, qword [rbp + 0xe8]
cmp dword [rbp + 0x24], r12d
jne 0x1402abaf0
mov rdi, qword [rbp - 0x58]
mov r14, rsi
jmp 0x1402abc48
xor r12d, r12d
cmp dword [r14], 0
lea rdx, [0x1403fb94f]
mov ecx, r12d
mov dword [rbp + 0xf8], ecx
jle 0x1402ac3d3
mov r15, r12
mov qword [rbp - 0x70], r12
nop dword [rax]
imul rax, r15, 0x68
lea rsi, [r14 + 8]
add rsi, rax
cmp qword [rsi + 0x50], 0
jne 0x1402abcaa
mov r8, qword [rsi + 0x10]
test r8, r8
je 0x1402abcaa
mov rax, qword [rsi + 8]
mov r9, rdx
mov edx, shutdown
mov qword [rsp + 0x20], rax
mov rcx, r13
call fcn.140274720
mov ecx, dword [rbp + 0xf8]
mov r12, qword [rsi + 0x28]
test r12, r12
je 0x1402ac3b4
xor r14d, r14d
lea rdx, [rsp + 0x5c]
mov rcx, rbx
mov dword [rsp + 0x5c], r14d
call fcn.140247940
mov eax, dword [rsp + 0x5c]
add dword [r13 + 0x12c], eax
mov rax, qword [rsp + 0x68]
test dword [rax + 0x60], 0x1000
jne 0x1402abd0f
test dword [rsi + 0x40], 0x100
je 0x1402abcfd
mov rax, qword [rsi + 0x60]
cmp byte [rax + 0x12], r14b
je 0x1402abd0f
cmp dword [rax], 2
jge 0x1402abd0f
mov r8, qword [rbx + 0x30]
mov r9, rsi
mov rdx, r12
mov rcx, r13
call fcn.14025a620
mov rax, qword [r13 + 0x168]
mov rcx, qword [rsp + 0x48]
mov qword [rbp - 8], rax
mov rax, qword [rsi + 0x10]
mov qword [r13 + 0x168], rax
test r15, r15
jne 0x1402abe96
cmp dword [rcx], 1
je 0x1402abd45
test byte [rcx + 0xac], 0x22
je 0x1402abe96
test dword [rsi + 0x40], 0x100
je 0x1402abd5c
mov rax, qword [rsi + 0x60]
cmp byte [rax + 0x12], r14b
je 0x1402abe96
test byte [rcx + 0x44], 0x40
jne 0x1402abe96
mov r14d, dword [rdi + 0x90]
inc dword [r13 + 0x38]
mov edx, dword [r13 + 0x38]
mov dword [rsi + 0x34], edx
movsxd rcx, dword [rdi + 0x90]
lea ebx, [r14 + 1]
cmp dword [rdi + 0x94], ecx
jg 0x1402abda6
xor r9d, r9d
mov dword [rsp + 0x20], ebx
mov r8d, edx
mov rcx, rdi
lea edx, [r9 + 0xa]
call fcn.1402471f0
xor r8d, r8d
jmp 0x1402abdd6
lea eax, [rcx + 1]
xor r8d, r8d
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0xa
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 + 0x34]
mov r9, rsi
mov qword [rbp + 0x28], r8
mov edx, 1
mov dword [rbp + 0x20], r8d
mov rcx, r13
lea r8, str.CO_ROUTINE___S
mov dword [rsi + 0x30], ebx
mov byte [rbp + 0x10], ntohs
mov dword [rbp + 0x14], eax
mov qword [rbp + 0x18], 0
call fcn.1402c17c0
lea r8, [rbp + 0x10]
mov rdx, r12
mov rcx, r13
call fcn.1402ab630
movzx eax, word [r12 + 2]
mov rcx, qword [rsi + 0x20]
mov word [rcx + 0x3a], ax
mov rcx, rdi
mov eax, dword [rbp + 0x1c]
mov edx, dword [rsi + 0x34]
or dword [rsi + 0x40], 0x20
mov dword [rsi + 0x38], eax
call fcn.1402b8890
mov rax, qword [rdi]
mov edx, dword [rdi + 0x90]
cmp byte [rax + 0x67], 0
je 0x1402abe66
lea rax, [0x140433b88]
xor r9d, r9d
mov dword [rax + 8], edx
mov byte [r13 + 0x1f], 0
mov dword [r13 + 0x28], r9d
jmp 0x1402ac36b
test r14d, r14d
lea eax, [rdx - 1]
cmovns eax, r14d
xor r9d, r9d
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8 + 8], edx
mov byte [r13 + 0x1f], 0
mov dword [r13 + 0x28], r9d
lea rax, [rax + rcx*8]
jmp 0x1402ac36b
test dword [rsi + 0x40], 0x100
je 0x1402abf8c
mov rbx, qword [rsi + 0x60]
mov edx, dword [rbx + 4]
test edx, edx
jle 0x1402abf8c
movsxd rcx, dword [rdi + 0x90]
mov r8d, dword [rbx + 8]
cmp dword [rdi + 0x94], ecx
jg 0x1402abedc
mov r9d, edx
mov dword [rsp + 0x20], r14d
mov edx, 9
mov rcx, rdi
call fcn.1402471f0
jmp 0x1402abf0a
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 9
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r14d
mov qword [rax + rcx*8 + 0x10], r14
mov edx, dword [rbx + 0xc]
mov r8d, dword [rsi + 0x44]
cmp r8d, edx
je 0x1402abf7a
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1402abf4c
mov r9d, edx
mov dword [rsp + 0x20], r14d
mov edx, reloc.WS2_32.dll_WSAStartup
mov rcx, rdi
call fcn.1402471f0
movzx eax, word [rbx + 0x10]
xor r9d, r9d
mov word [r12 + 2], ax
jmp 0x1402ac36b
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], reloc.WS2_32.dll_WSAStartup
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r14d
mov qword [rax + rcx*8 + 0x10], r14
movzx eax, word [rbx + 0x10]
xor r9d, r9d
mov word [r12 + 2], ax
jmp 0x1402ac36b
mov r15, qword [rsi + 0x28]
test dword [r15 + 4], 0x1000000
jne 0x1402ac038
lea r14, [rcx + 8]
cmp r14, rsi
jae 0x1402ac038
nop dword [rax + rax]
mov r10, qword [r14 + 0x28]
test r10, r10
je 0x1402ac02b
test byte [r14 + 0x40], 0x20
jne 0x1402ac02b
mov rdx, qword [r14 + 0x10]
test rdx, rdx
je 0x1402ac02b
mov rax, qword [r14 + 0x20]
mov r11, qword [rax + 0x60]
mov rax, qword [rsi + 0x20]
cmp r11, qword [rax + 0x60]
jne 0x1402ac02b
mov r9, qword [rsi + 0x10]
test r9, r9
je 0x1402ac02b
sub r9, rdx
nop word [rax + rax]
movzx eax, byte [rdx]
mov rbx, rcx
movzx r8d, byte [rdx + r9]
cmp eax, r8d
jne 0x1402ac07b
test eax, eax
jne 0x1402ac09c
test r11, r11
jne 0x1402ac01c
mov eax, dword [r10 + 0x10]
mov qword [rsp + 0x48], rcx
cmp dword [r15 + 0x10], eax
jne 0x1402ac02b
test dword [r10 + 4], 0x1000000
mov qword [rsp + 0x48], rbx
je 0x1402ac0a4
add r14, 0x68
cmp r14, rsi
jb 0x1402abfb0
inc dword [r13 + 0x38]
xor edx, edx
mov eax, dword [r13 + 0x38]
mov ebx, edx
mov dword [rsi + 0x34], eax
movsxd r14, dword [rdi + 0x90]
cmp dword [rdi + 0x94], r14d
jg 0x1402ac187
xor r9d, r9d
mov dword [rsp + 0x20], edx
xor r8d, r8d
mov rcx, rdi
lea edx, [r9 + 8]
call fcn.1402471f0
mov r14d, eax
xor edx, edx
jmp 0x1402ac1ae
lea rbx, [0x140000000]
movzx ecx, byte [rax + rbx + 0x3d65c0]
movzx eax, byte [r8 + rbx + 0x3d65c0]
cmp ecx, eax
mov rcx, qword [rsp + 0x48]
jne 0x1402ac02b
inc rdx
jmp 0x1402abff0
mov edx, dword [r14 + 0x30]
test edx, edx
je 0x1402ac0d3
movsxd rcx, dword [rdi + 0x90]
mov r8d, dword [r14 + 0x34]
cmp dword [rdi + 0x94], ecx
jg 0x1402ac107
xor eax, eax
mov r9d, edx
mov rcx, rdi
mov dword [rsp + 0x20], eax
lea edx, [rax + 9]
call fcn.1402471f0
xor r9d, r9d
movsxd rcx, dword [rdi + 0x90]
mov edx, dword [r14 + 0x44]
mov r8d, dword [rsi + 0x44]
cmp dword [rdi + 0x94], ecx
jg 0x1402ac13a
mov dword [rsp + 0x20], r9d
mov rcx, rdi
mov r9d, edx
mov edx, reloc.WS2_32.dll_WSAStartup
call fcn.1402471f0
xor r9d, r9d
jmp 0x1402ac168
lea eax, [rcx + 1]
xor r9d, r9d
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 9
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r9d
mov qword [rax + rcx*8 + 0x10], r9
jmp 0x1402ac0d6
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], reloc.WS2_32.dll_WSAStartup
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r9d
mov qword [rax + rcx*8 + 0x10], r9
mov rax, qword [r14 + 0x28]
mov r14, rbx
mov r15, qword [rbp - 0x70]
mov qword [rsp + 0x48], rbx
movzx ecx, word [rax + 2]
mov word [r12 + 2], cx
jmp 0x1402ac370
lea rcx, [r14 + r14*2]
lea eax, [r14 + 1]
mov dword [rdi + 0x90], eax
mov rax, qword [rdi + 0x88]
mov qword [rax + rcx*8], 8
mov qword [rax + rcx*8 + 8], rdx
mov qword [rax + rcx*8 + 0x10], rdx
or dword [rsi + 0x40], 0x10
lea r15d, [r14 + 1]
test byte [rsi + 0x40], 8
mov dword [rsi + 0x30], r15d
jne 0x1402ac215
movsxd rbx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ebx
jg 0x1402ac1eb
xor r9d, r9d
mov dword [rsp + 0x20], edx
xor r8d, r8d
mov rcx, rdi
lea edx, [r9 + 0xe]
call fcn.1402471f0
mov ebx, eax
xor edx, edx
jmp 0x1402ac215
lea rcx, [rbx + rbx*2]
lea eax, [rbx + 1]
mov dword [rdi + 0x90], eax
mov rax, qword [rdi + 0x88]
mov qword [rax + rcx*8], send
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], rdx
mov eax, dword [rsi + 0x44]
lea r8, str.MATERIALIZE___S
mov qword [rbp + 0x28], rdx
mov r9, rsi
mov dword [rbp + 0x20], edx
mov rcx, r13
mov edx, 1
mov byte [rbp + 0x10], reloc.WS2_32.dll_inet_ntoa
mov dword [rbp + 0x14], eax
mov qword [rbp + 0x18], 0
call fcn.1402c17c0
lea r8, [rbp + 0x10]
mov rdx, r12
mov rcx, r13
call fcn.1402ab630
mov rcx, qword [rsi + 0x20]
movzx eax, word [r12 + 2]
mov word [rcx + 0x3a], ax
test ebx, ebx
je 0x1402ac29a
mov rax, qword [rdi]
mov edx, dword [rdi + 0x90]
cmp byte [rax + 0x67], 0
je 0x1402ac27e
lea rax, [0x140433b88]
jmp 0x1402ac297
lea eax, [rdx - 1]
test ebx, ebx
cmovns eax, ebx
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
movsxd rcx, dword [rdi + 0x90]
mov edx, dword [rsi + 0x34]
cmp dword [rdi + 0x94], ecx
jg 0x1402ac2c8
xor eax, eax
mov r8d, edx
mov r9d, r15d
mov dword [rsp + 0x20], eax
mov rcx, rdi
lea edx, [rax + 0x43]
call fcn.1402471f0
xor r9d, r9d
jmp 0x1402ac2f9
lea eax, [rcx + 1]
xor r9d, r9d
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x43
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r15d
mov dword [rax + rcx*8 + 0xc], r9d
mov qword [rax + rcx*8 + 0x10], r9
mov rax, qword [rdi]
mov edx, dword [rdi + 0x90]
cmp byte [rax + 0x67], 0
je 0x1402ac311
lea rax, [0x140433b88]
jmp 0x1402ac32c
lea eax, [rdx - 1]
test r14d, r14d
cmovns eax, r14d
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 0x88]
lea rax, [rax + rcx*8]
mov r15, qword [rbp - 0x70]
mov dword [rax + 8], edx
mov byte [r13 + 0x1f], 0
mov dword [r13 + 0x28], r9d
mov eax, dword [rsi + 0x40]
and eax, 0x108
cmp eax, 0x100
jne 0x1402ac36b
mov eax, dword [rsi + 0x30]
mov rcx, qword [rsi + 0x60]
mov dword [rcx + 4], eax
mov eax, dword [rsi + 0x34]
mov dword [rcx + 8], eax
mov eax, dword [rsi + 0x44]
mov dword [rcx + 0xc], eax
movzx eax, word [r12 + 2]
mov word [rcx + 0x10], ax
mov r14, qword [rsp + 0x48]
mov rax, qword [rsp + 0x68]
cmp byte [rax + 0x67], 0
jne 0x1402aeed3
mov rbx, qword [rbp + 0xe8]
lea rdx, [rsp + 0x5c]
mov rcx, rbx
mov dword [rsp + 0x5c], r9d
call fcn.140247940
mov rax, qword [rbp - 8]
mov edx, dword [rsp + 0x5c]
sub dword [r13 + 0x12c], edx
mov ecx, dword [rbp + 0xf8]
mov qword [r13 + 0x168], rax
inc ecx
lea rdx, [0x1403fb94f]
inc r15
mov dword [rbp + 0xf8], ecx
mov qword [rbp - 0x70], r15
cmp ecx, dword [r14]
jl 0x1402abc70
mov rax, qword [rbx + 0x30]
mov ecx, dword [rbx + 4]
movzx r15d, byte [rbx + 4]
mov rsi, qword [rbx + 0x20]
and r15b, 1
mov r12, qword [rbx + 0x38]
mov rdx, qword [rbp - 0x80]
mov qword [rbp - 0x50], rax
mov rax, qword [rbx + 0x40]
mov qword [rbp + 0x50], rax
mov eax, ecx
and al, 9
mov qword [rbp - 0x60], rsi
mov qword [rsp + 0x60], r12
mov byte [rsp + 0x40], r15b
mov byte [rbp], r15b
cmp al, 1
jne 0x1402ac60d
test rdx, rdx
jne 0x1402ac56d
test rsi, rsi
je 0x1402ac5d0
mov r14d, 0xffffffff
mov dword [rbp - 0x68], r14d
mov rax, qword [rbp + 0xf0]
mov dword [rbp + 0x78], r14d
cmp byte [rax], 0xc
jne 0x1402ac507
mov r9d, dword [rsi]
mov edx, 0x76
mov r8d, dword [rax + 4]
mov rcx, rdi
call fcn.1402b7380
mov rax, qword [rbp + 0xe8]
test dword [rax + 4], 0x800
je 0x1402ac507
mov r8, qword [rbp - 0x60]
mov ecx, dword [r8]
lea eax, [rcx - 1]
movsxd rsi, eax
test eax, eax
jle 0x1402ac4dd
mov r12, qword [rsp + 0x68]
mov rbx, rsi
shl rbx, 5
nop
test byte [rbx + r8 + 0x1c], 0x40
jne 0x1402ac4d8
mov rdx, qword [rbx + r8 + 8]
test rdx, rdx
je 0x1402ac4ae
mov rcx, r12
call fcn.140287b50
mov r8, qword [rbp - 0x60]
mov rdx, qword [rbx + r8 + 0x10]
test rdx, rdx
je 0x1402ac4c4
mov rcx, r12
call fcn.1402804a0
mov r8, qword [rbp - 0x60]
mov ecx, dword [r8]
dec rsi
dec ecx
sub rbx, 0x20
mov dword [r8], ecx
test rsi, rsi
jg 0x1402ac490
mov r12, qword [rsp + 0x60]
xor eax, eax
mov edx, eax
test ecx, ecx
jle 0x1402ac507
lea rcx, [r8 + 8]
nop dword [rax]
test byte [rcx + 0x14], 0x40
jne 0x1402ac4fc
mov rax, qword [rcx]
mov byte [rax], 0x79
inc edx
add rcx, 0x20
cmp edx, dword [r8]
jl 0x1402ac4f0
dec dword [r13 + 0x44]
mov esi, 0x4000
mov r9, qword [rbp + 0xe8]
mov r8d, dword [r13 + 0x44]
mov dword [rbp + 0x48], r8d
test dword [r9 + 4], esi
jne 0x1402ac52f
mov eax, 0x140
mov word [r9 + 2], ax
mov rdx, r9
mov rcx, r13
call fcn.140211a60
mov rdx, qword [rbp + 0xe8]
cmp dword [rdx + 8], 0
jne 0x1402ac750
test r14d, r14d
js 0x1402ac750
mov rax, qword [rdi]
cmp byte [rax + 0x67], 0
je 0x1402ac734
lea rax, [0x140433b88]
jmp 0x1402ac746
test rsi, rsi
je 0x1402ac60d
mov eax, dword [rdx]
cmp eax, dword [rsi]
jne 0x1402ac60d
xor esi, esi
test eax, eax
jle 0x1402ac5cc
mov r14, qword [rbp - 0x60]
lea rbx, [rdx + 0x18]
sub r14, rdx
movzx eax, byte [r14 + rbx]
cmp byte [rbx], al
jne 0x1402ac60d
mov r8, qword [r14 + rbx - 0x10]
mov r9d, 0xffffffff
mov rdx, qword [rbx - 0x10]
xor ecx, ecx
call fcn.1402877b0
mov rdx, qword [rbp - 0x80]
test eax, eax
jne 0x1402ac60d
inc esi
add rbx, 0x20
cmp esi, dword [rdx]
jl 0x1402ac591
mov rbx, qword [rbp + 0xe8]
mov ecx, dword [rbx + 4]
mov rsi, qword [rbp - 0x60]
cmp qword [rbx + 0x70], 0
jne 0x1402ac60d
and ecx, 0xfffffffe
xor r8d, r8d
mov dword [rbx + 4], ecx
mov rdx, rsi
mov rcx, qword [rsp + 0x68]
call fcn.140288e90
or dword [rbx + 4], 8
mov r15b, 2
mov rdx, qword [rbp - 0x80]
mov r12, rax
mov byte [rsp + 0x40], r15b
mov byte [rbp], r15b
mov qword [rsp + 0x60], rax
mov qword [rbx + 0x38], rax
mov rsi, qword [rbp - 0x60]
test rdx, rdx
je 0x1402ac42b
mov r9d, dword [rsi]
xor r8d, r8d
mov rcx, r13
call fcn.14029bed0
mov r8d, dword [r13 + 0x34]
mov rbx, rax
mov rax, qword [rbp - 0x80]
mov dword [rbp + 0x6c], r8d
lea ecx, [r8 + 1]
mov dword [r13 + 0x34], ecx
movsxd r14, dword [rdi + 0x90]
mov r9d, dword [rsi]
inc r9d
mov dword [rbp - 0x68], r14d
add r9d, dword [rax]
cmp dword [rdi + 0x94], r14d
jg 0x1402ac675
xor eax, eax
mov rcx, rdi
mov dword [rsp + 0x20], eax
lea edx, [rax + 0x76]
call fcn.1402471f0
mov r14d, eax
mov dword [rbp - 0x68], eax
jmp 0x1402ac6a6
lea rcx, [r14 + r14*2]
xor edx, edx
lea eax, [r14 + 1]
mov dword [rdi + 0x90], eax
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x76
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 [rdi]
mov eax, r14d
cmp byte [rcx + 0x67], 0
je 0x1402ac6e3
cmp qword [rcx + 0x300], 0
jne 0x1402ac435
test rbx, rbx
je 0x1402ac435
add dword [rbx], 0xffffffff
jne 0x1402ac435
mov rcx, qword [rbx + 0x10]
mov rdx, rbx
call fcn.1402804a0
jmp 0x1402ac435
test r14d, r14d
jns 0x1402ac6f0
mov eax, dword [rdi + 0x90]
dec eax
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 0x88]
cmp byte [rax + rcx*8 + 1], 0
lea rdx, [rax + rcx*8]
je 0x1402ac71e
mov r9d, 0xfffffff8
mov r8, rbx
mov rcx, rdi
call fcn.1402d94a0
jmp 0x1402ac435
test rbx, rbx
je 0x1402ac435
mov qword [rdx + 0x10], rbx
mov byte [rdx + 1], 0xf8
jmp 0x1402ac435
movsxd rax, r14d
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 0x88]
lea rax, [rax + rcx*8]
or byte [rbp + 0x84], 1
mov byte [rax], 0x77
test byte [rdx + 4], 1
je 0x1402ac87a
mov r14d, dword [r13 + 0x34]
xor r9d, r9d
xor r8d, r8d
mov dword [rbp + 4], r14d
mov rcx, r13
lea eax, [r14 + 1]
mov dword [r13 + 0x34], eax
mov rdx, qword [rdx + 0x20]
call fcn.14029bed0
movsxd rsi, dword [rdi + 0x90]
mov rbx, rax
cmp dword [rdi + 0x94], esi
jg 0x1402ac7a9
xor eax, eax
xor r9d, r9d
mov r8d, r14d
mov dword [rsp + 0x20], eax
mov rcx, rdi
lea edx, [rax + 0x76]
call fcn.1402471f0
mov esi, eax
jmp 0x1402ac7d5
lea rcx, [rsi + rsi*2]
xor edx, edx
lea eax, [rsi + 1]
mov dword [rdi + 0x90], eax
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x76
mov dword [rax + rcx*8 + 4], r14d
mov qword [rax + rcx*8 + 8], rdx
mov qword [rax + rcx*8 + 0x10], rdx
mov rcx, qword [rdi]
mov eax, esi
cmp byte [rcx + 0x67], 0
je 0x1402ac802
cmp qword [rcx + 0x300], 0
jne 0x1402ac846
test rbx, rbx
je 0x1402ac846
add dword [rbx], 0xffffffff
jne 0x1402ac846
mov rcx, qword [rbx + 0x10]
mov rdx, rbx
call fcn.1402804a0
jmp 0x1402ac846
test esi, esi
jns 0x1402ac80e
mov eax, dword [rdi + 0x90]
dec eax
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 0x88]
cmp byte [rax + rcx*8 + 1], 0
lea rdx, [rax + rcx*8]
je 0x1402ac839
mov r9d, 0xfffffff8
mov r8, rbx
mov rcx, rdi
call fcn.1402d94a0
jmp 0x1402ac846
test rbx, rbx
je 0x1402ac846
mov qword [rdx + 0x10], rbx
mov byte [rdx + 1], 0xf8
movsxd rax, dword [rdi + 0x90]
mov dword [rbp + 8], esi
test eax, eax
jle 0x1402ac869
lea rcx, [rax + rax*2]
mov edx, 8
mov rax, qword [rdi + 0x88]
mov word [rax + rcx*8 - 0x16], dx
mov rdx, qword [rbp + 0xe8]
mov r14b, 3
mov esi, 0x4000
jmp 0x1402ac87d
xor r14b, r14b
cmp dword [rsp + 0x58], 0
mov byte [rbp + 1], r14b
mov dword [rsp + 0x5c], r14d
jne 0x1402acb5e
test r12, r12
jne 0x1402acb5e
movzx eax, r15b
neg al
movzx eax, word [rdx + 4]
sbb bx, bx
and ax, si
mov rsi, qword [rdx + 0x70]
and bx, 0x100
or bx, ax
test rsi, rsi
je 0x1402ac8ca
mov rcx, r13
call fcn.1402cf650
mov rdx, qword [rbp + 0xe8]
movsx eax, word [rdx + 2]
mov rcx, r13
mov r12, qword [rbp - 0x80]
mov r8, qword [rbp - 0x50]
mov r9, r12
mov dword [rsp + 0x38], eax
mov rax, qword [rdx + 0x20]
mov word [rsp + 0x30], bx
mov qword [rsp + 0x28], rdx
mov rdx, qword [rsp + 0x48]
mov qword [rsp + 0x20], rax
call fcn.1402c8840
mov rbx, rax
test rax, rax
je 0x1402aeed3
mov r10, qword [rbp + 0xe8]
movzx eax, word [rax + 0x50]
cmp ax, word [r10 + 2]
jge 0x1402ac920
mov word [r10 + 2], ax
test r15b, r15b
je 0x1402ac93c
movzx ecx, byte [rbx + 0x4b]
test cl, cl
movzx r14d, r14b
cmovne r14d, ecx
mov dword [rsp + 0x5c], r14d
mov byte [rbp + 1], r14b
test r12, r12
je 0x1402ac989
test byte [rbx + 0x4c], 4
movsx edx, byte [rbx + 0x49]
mov dword [rbp + 0x68], edx
jne 0x1402ac953
mov eax, dword [rbx + 0x38]
jmp 0x1402ac972
movzx eax, byte [rbx + 0x48]
imul rcx, rax, 0x70
cmp qword [rcx + rbx + 0x338], 0
je 0x1402ac96b
mov eax, dword [rbx + 0x38]
jmp 0x1402ac972
mov eax, dword [rcx + rbx + 0x310]
cmp edx, dword [r12]
mov dword [rbp + 0x80], eax
mov eax, 0
cmove r12, rax
mov qword [rbp + 0x60], r12
mov eax, dword [rbp - 0x68]
test eax, eax
js 0x1402ac9a6
test r12, r12
jne 0x1402ac9a6
mov edx, eax
mov rcx, rdi
call fcn.1402b7a60
mov r10, qword [rbp + 0xe8]
mov rdx, r10
mov rcx, r13
test rsi, rsi
je 0x1402acb15
mov esi, dword [r13 + 0x44]
mov r8, rbx
inc dword [r13 + 0x38]
mov r12d, dword [r13 + 0x38]
mov r9d, r12d
lea r15d, [rsi - 1]
sub esi, 2
mov dword [rsp + 0x20], r15d
lea r14d, [rsi - 1]
mov dword [r13 + 0x44], r14d
call fcn.1402cfcc0
movsxd rcx, dword [rdi + 0x90]
xor ebx, ebx
cmp dword [rdi + 0x94], ecx
jg 0x1402aca08
mov r9d, r14d
mov dword [rsp + 0x20], ebx
xor r8d, r8d
lea edx, [rbx + 8]
mov rcx, rdi
call fcn.1402471f0
jmp 0x1402aca32
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov qword [rax + rcx*8], 8
mov dword [rax + rcx*8 + 8], r14d
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], rbx
mov rcx, qword [rdi + 0x18]
not r15d
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x1402aca4e
mov r8d, r15d
mov rdx, rdi
call fcn.14025e8a0
jmp 0x1402aca5e
mov rcx, qword [rcx + 0x50]
mov eax, dword [rdi + 0x90]
movsxd rdx, r15d
mov dword [rcx + rdx*4], eax
mov rax, qword [rbp + 0xf0]
lea r9, [rbp + 0x60]
mov dword [rsp + 0x38], r14d
mov r8d, 0xffffffff
mov dword [rsp + 0x30], esi
mov rcx, r13
mov qword [rsp + 0x28], rax
lea rax, [rbp]
mov dword [rbp + 0x80], ebx
mov rbx, qword [rbp + 0xe8]
mov rdx, rbx
mov qword [rsp + 0x20], rax
call fcn.140266450
mov rcx, qword [rdi + 0x18]
not esi
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x1402acab9
mov r8d, esi
mov rdx, rdi
call fcn.14025e8a0
jmp 0x1402acaca
mov rcx, qword [rcx + 0x50]
mov eax, dword [rdi + 0x90]
movsxd r9, esi
mov dword [rcx + r9*4], eax
mov r8d, r12d
mov edx, 0x43
mov rcx, rdi
call fcn.1402b7310
mov rcx, qword [rdi + 0x18]
not r14d
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x1402acb03
mov r8d, r14d
mov rdx, rdi
call fcn.14025e8a0
mov rsi, qword [rbp + 0xf0]
xor r12d, r12d
jmp 0x1402aedfc
mov rsi, qword [rbp + 0xf0]
xor r12d, r12d
movsxd rdx, r14d
jmp 0x1402aedef
mov eax, dword [rbx + 0x3c]
lea r9, [rbp + 0x60]
mov rsi, qword [rbp + 0xf0]
mov r8d, 0xffffffff
mov dword [rsp + 0x38], eax
mov eax, dword [rbx + 0x38]
mov dword [rsp + 0x30], eax
lea rax, [rbp]
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rax
call fcn.140266450
mov rcx, rbx
call fcn.1402ccdd0
mov rbx, qword [rbp + 0xe8]
xor r12d, r12d
jmp 0x1402aedfc
mov r15, qword [rsp + 0x60]
xor esi, esi
mov dword [rsp + 0x74], esi
mov dword [rbp - 0x64], esi
mov dword [rbp - 0x18], esi
test r15, r15
je 0x1402accb0
mov rcx, qword [rdx + 0x20]
mov eax, dword [rcx]
test eax, eax
jle 0x1402acb9d
add rcx, 0x22
nop word [rax + rax]
dec eax
mov word [rcx], si
lea rcx, [rcx + 0x20]
test eax, eax
jg 0x1402acb90
mov eax, dword [r15]
test eax, eax
jle 0x1402acbbd
lea rcx, [r15 + 0x22]
nop dword [rax + rax]
dec eax
mov word [rcx], si
lea rcx, [rcx + 0x20]
test eax, eax
jg 0x1402acbb0
cmp word [rdx + 2], 0x42
jle 0x1402acbcd
mov eax, 0x42
mov word [rdx + 2], ax
mov r9, qword [rbp - 0x80]
test r9, r9
je 0x1402acc67
mov eax, dword [r15]
cmp eax, dword [r9]
jne 0x1402acc67
mov edx, esi
test eax, eax
jle 0x1402acc17
mov r8, r9
lea rcx, [r15 + 0x18]
sub r8, r15
nop word [rax + rax]
movzx eax, byte [r8 + rcx]
lea rcx, [rcx + 0x20]
and al, 1
inc edx
mov byte [rcx - 0x20], al
mov eax, dword [r15]
cmp edx, eax
jl 0x1402acc00
cmp eax, dword [r9]
jne 0x1402acc67
test eax, eax
jle 0x1402acc5e
mov r14, r9
lea rbx, [r15 + 0x18]
sub r14, r15
nop word [rax + rax]
movzx eax, byte [rbx + r14]
cmp byte [rbx], al
jne 0x1402acc65
mov r8, qword [r14 + rbx - 0x10]
mov r9d, 0xffffffff
mov rdx, qword [rbx - 0x10]
xor ecx, ecx
call fcn.1402877b0
test eax, eax
jne 0x1402acc65
inc esi
add rbx, 0x20
cmp esi, dword [r15]
jl 0x1402acc30
mov dword [rbp - 0x18], 1
xor esi, esi
dec dword [r13 + 0x44]
mov r14, qword [rsp + 0x68]
mov eax, dword [r13 + 0x44]
mov dword [rsp + 0x70], eax
test r14, r14
je 0x1402acd79
mov ebx, 0x40
cmp bx, word [r14 + 0x1a4]
jbe 0x1402accce
cmp dword [r14 + 0x1a0], 0
jne 0x1402accb6
inc dword [r14 + 0x1b4]
mov edx, ebx
mov rcx, r14
call fcn.140214340
jmp 0x1402acd83
mov word [rdx + 2], si
jmp 0x1402acc67
cmp byte [r14 + 0x67], 0
je 0x1402acd6c
mov r12, rsi
mov qword [rsp + 0x50], rsi
jmp 0x1402acd8b
mov r12, qword [r14 + 0x1d8]
mov qword [rsp + 0x50], r12
test r12, r12
je 0x1402accf6
mov rax, qword [r12]
mov qword [r14 + 0x1d8], rax
inc dword [r14 + 0x1b0]
jmp 0x1402acd8b
mov r12, qword [r14 + 0x1d0]
mov qword [rsp + 0x50], r12
test r12, r12
je 0x1402acd1b
mov rax, qword [r12]
mov qword [r14 + 0x1d0], rax
inc dword [r14 + 0x1b0]
jmp 0x1402acd8b
mov r12, qword [r14 + 0x1c8]
mov qword [rsp + 0x50], r12
test r12, r12
je 0x1402acd40
mov rax, qword [r12]
mov qword [r14 + 0x1c8], rax
inc dword [r14 + 0x1b0]
jmp 0x1402acd8b
mov r12, qword [r14 + 0x1c0]
mov qword [rsp + 0x50], r12
test r12, r12
je 0x1402acd65
mov rax, qword [r12]
inc dword [r14 + 0x1b0]
mov qword [r14 + 0x1c0], rax
jmp 0x1402acd8b
inc dword [r14 + 0x1b8]
mov rdx, rbx
mov rcx, r14
call fcn.140214340
jmp 0x1402acd83
mov ecx, 0x40
call fcn.14029d740
mov r12, rax
mov qword [rsp + 0x50], rax
test r12, r12
je 0x1402ad108
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 0x1402ace7e
mov eax, 0x18
cmp ax, word [rcx + 0x1a4]
jbe 0x1402acdf6
cmp dword [rcx + 0x1a0], 0
jne 0x1402acde4
inc dword [rcx + 0x1b4]
mov edx, eax
call fcn.140214340
jmp 0x1402ace88
cmp byte [rcx + 0x67], 0
je 0x1402ace74
mov rdx, rsi
jmp 0x1402ace8b
mov rdx, qword [rcx + 0x1d8]
test rdx, rdx
je 0x1402ace14
mov rax, qword [rdx]
mov qword [rcx + 0x1d8], rax
inc dword [rcx + 0x1b0]
jmp 0x1402ace8b
mov rdx, qword [rcx + 0x1d0]
test rdx, rdx
je 0x1402ace32
mov rax, qword [rdx]
mov qword [rcx + 0x1d0], rax
inc dword [rcx + 0x1b0]
jmp 0x1402ace8b
mov rdx, qword [rcx + 0x1c8]
test rdx, rdx
je 0x1402ace50
mov rax, qword [rdx]
mov qword [rcx + 0x1c8], rax
inc dword [rcx + 0x1b0]
jmp 0x1402ace8b
mov rdx, qword [rcx + 0x1c0]
test rdx, rdx
je 0x1402ace6e
mov rax, qword [rdx]
inc dword [rcx + 0x1b0]
mov qword [rcx + 0x1c0], rax
jmp 0x1402ace8b
inc dword [rcx + 0x1b8]
mov rdx, rax
call fcn.140214340
jmp 0x1402ace88
mov ecx, 0x18
call fcn.14029d740
mov rdx, rax
test rdx, rdx
je 0x1402aceb5
mov rcx, qword [r13 + 0xb8]
lea rax, [0x140204d90]
mov qword [rdx], rcx
mov qword [r13 + 0xb8], rdx
mov qword [rdx + 8], r12
mov qword [rdx + 0x10], rax
jmp 0x1402ad108
mov rsi, qword [r12 + 0x20]
mov rbx, qword [r13]
test rsi, rsi
je 0x1402acf82
test rbx, rbx
je 0x1402acf27
cmp qword [rbx + 0x300], 0
je 0x1402acee6
mov rdx, rsi
mov rcx, rbx
call fcn.14024e7a0
jmp 0x1402acf82
cmp rsi, qword [rbx + 0x1f0]
jae 0x1402acf27
cmp rsi, qword [rbx + 0x1e0]
jb 0x1402acf0b
mov rax, qword [rbx + 0x1d8]
mov qword [rsi], rax
mov qword [rbx + 0x1d8], rsi
jmp 0x1402acf82
cmp rsi, qword [rbx + 0x1e8]
jb 0x1402acf27
mov rax, qword [rbx + 0x1c8]
mov qword [rsi], rax
mov qword [rbx + 0x1c8], rsi
jmp 0x1402acf82
cmp dword [0x14042c570], 0
je 0x1402acf79
mov rcx, qword [0x140433850]
test rcx, rcx
je 0x1402acf42
call qword [0x14042c5f0]
mov rcx, rsi
call qword [0x14042c5a8]
dec qword [0x1404337e8]
movsxd rcx, eax
sub qword [0x1404337a0], rcx
mov rcx, rsi
call qword [0x14042c598]
mov rcx, qword [0x140433850]
test rcx, rcx
je 0x1402acf82
call qword [0x14042c600]
jmp 0x1402acf82
mov rcx, rsi
call qword [0x14042c598]
mov rsi, qword [r12 + 0x30]
test rsi, rsi
je 0x1402ad04b
test rbx, rbx
je 0x1402acff0
cmp qword [rbx + 0x300], 0
je 0x1402acfaf
mov rdx, rsi
mov rcx, rbx
call fcn.14024e7a0
jmp 0x1402ad050
cmp rsi, qword [rbx + 0x1f0]
jae 0x1402acff0
cmp rsi, qword [rbx + 0x1e0]
jb 0x1402acfd4
mov rax, qword [rbx + 0x1d8]
mov qword [rsi], rax
mov qword [rbx + 0x1d8], rsi
jmp 0x1402ad050
cmp rsi, qword [rbx + 0x1e8]
jb 0x1402acff0
mov rax, qword [rbx + 0x1c8]
mov qword [rsi], rax
mov qword [rbx + 0x1c8], rsi
jmp 0x1402ad050
cmp dword [0x14042c570], 0
je 0x1402ad042
mov rcx, qword [0x140433850]
test rcx, rcx
je 0x1402ad00b
call qword [0x14042c5f0]
mov rcx, rsi
call qword [0x14042c5a8]
dec qword [0x1404337e8]
movsxd rcx, eax
sub qword [0x1404337a0], rcx
mov rcx, rsi
call qword [0x14042c598]
mov rcx, qword [0x140433850]
test rcx, rcx
je 0x1402ad04b
call qword [0x14042c600]
jmp 0x1402ad04b
mov rcx, rsi
call qword [0x14042c598]
test rbx, rbx
je 0x1402ad0ad
cmp qword [rbx + 0x300], 0
je 0x1402ad06a
mov rdx, r12
mov rcx, rbx
call fcn.14024e7a0
jmp 0x1402ad108
cmp r12, qword [rbx + 0x1f0]
jae 0x1402ad0ad
cmp r12, qword [rbx + 0x1e0]
jb 0x1402ad090
mov rax, qword [rbx + 0x1d8]
mov qword [r12], rax
mov qword [rbx + 0x1d8], r12
jmp 0x1402ad108
cmp r12, qword [rbx + 0x1e8]
jb 0x1402ad0ad
mov rax, qword [rbx + 0x1c8]
mov qword [r12], rax
mov qword [rbx + 0x1c8], r12
jmp 0x1402ad108
cmp dword [0x14042c570], 0
je 0x1402ad0ff
mov rcx, qword [0x140433850]
test rcx, rcx
je 0x1402ad0c8
call qword [0x14042c5f0]
mov rcx, r12
call qword [0x14042c5a8]
dec qword [0x1404337e8]
movsxd rcx, eax
sub qword [0x1404337a0], rcx
mov rcx, r12
call qword [0x14042c598]
mov rcx, qword [0x140433850]
test rcx, rcx
je 0x1402ad108
call qword [0x14042c600]
jmp 0x1402ad108
mov rcx, r12
call qword [0x14042c598]
cmp byte [r14 + 0x67], 0
jne 0x1402aeed3
mov rax, qword [rbp + 0xe8]
xorps xmm0, xmm0
xorps xmm1, xmm1
xor r8d, r8d
mov eax, dword [rax + 0x10]
mov dword [r12 + 0x3c], eax
mov rax, qword [rsp + 0x48]
mov qword [rbp + 0x18], rax
mov eax, dword [r13 + 0x38]
inc eax
mov qword [rbp + 0x10], r13
mov qword [rbp + 0x20], r12
movdqu xmmword [rbp + 0x28], xmm0
movdqu xmmword [rbp + 0x38], xmm1
mov dword [r12 + 0x10], eax
test r15, r15
je 0x1402ad15b
mov eax, dword [r15]
jmp 0x1402ad15e
mov eax, r8d
mov r14, qword [rbp - 0x60]
mov dword [r12 + 0xc], eax
mov qword [r12 + 0x18], r15
test r14, r14
je 0x1402ad1e9
cmp dword [r14], 0
lea rbx, [r14 + 8]
mov esi, r8d
jle 0x1402ad1e9
lea rdi, [0x140206010]
lea r12, [0x1402c8830]
lea r15, [0x1402c8820]
nop dword [rax]
nop word [rax + rax]
mov rdx, qword [rbx]
lea rax, [rbp + 0x10]
mov qword [rbp - 0x40], rdi
mov qword [rbp - 0x38], r12
mov qword [rbp - 0x30], r15
mov dword [rbp - 0x28], r8d
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x48], r8
test rdx, rdx
je 0x1402ad1d0
lea rcx, [rbp - 0x48]
call fcn.1402dff00
xor r8d, r8d
inc esi
add rbx, 0x20
cmp esi, dword [r14]
jl 0x1402ad1a0
mov rdi, qword [rbp - 0x58]
mov r12, qword [rsp + 0x50]
mov r15, qword [rsp + 0x60]
mov r14, qword [rbp - 0x80]
test r14, r14
je 0x1402ad26b
cmp dword [r14], 0
lea rbx, [r14 + 8]
mov esi, r8d
jle 0x1402ad26b
lea rdi, [0x140206010]
lea r13, [0x1402c8830]
lea r12, [0x1402c8820]
nop dword [rax]
nop dword [rax + rax]
mov rdx, qword [rbx]
lea rax, [rbp + 0x10]
mov qword [rbp - 0x40], rdi
mov qword [rbp - 0x38], r13
mov qword [rbp - 0x30], r12
mov dword [rbp - 0x28], r8d
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x48], r8
test rdx, rdx
je 0x1402ad250
lea rcx, [rbp - 0x48]
call fcn.1402dff00
xor r8d, r8d
inc esi
add rbx, 0x20
cmp esi, dword [r14]
jl 0x1402ad220
mov rdi, qword [rbp - 0x58]
mov r12, qword [rsp + 0x50]
mov r13, qword [rbp + 0xe0]
mov rcx, qword [rbp + 0x50]
test rcx, rcx
je 0x1402ad301
test r15, r15
je 0x1402ad2c4
mov rbx, qword [rbp + 0xe8]
lea rax, [0x140247730]
xorps xmm0, xmm0
mov qword [rbp - 0x28], r8
movdqu xmmword [rbp - 0x38], xmm0
mov qword [rbp - 0x48], r13
mov rdx, qword [rbx + 0x40]
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x20], rbx
test rdx, rdx
je 0x1402ad2bc
lea rcx, [rbp - 0x48]
call fcn.1402dff00
mov rcx, qword [rbp + 0x50]
xor r8d, r8d
mov rax, qword [rbx + 0x30]
mov qword [rbp - 0x50], rax
lea rax, [0x140206010]
mov dword [rbp - 0x28], r8d
mov qword [rbp - 0x40], rax
mov rdx, rcx
lea rax, [0x1402c8830]
mov qword [rbp - 0x48], r8
mov qword [rbp - 0x38], rax
lea rcx, [rbp - 0x48]
lea rax, [0x1402c8820]
mov qword [rbp - 0x30], rax
lea rax, [rbp + 0x10]
mov qword [rbp - 0x20], rax
call fcn.1402dff00
mov rsi, qword [rbp + 0xe8]
mov eax, dword [r12 + 0x28]
mov dword [r12 + 0x2c], eax
cmp qword [rsi + 0x38], 0
jne 0x1402ad43f
cmp qword [rsi + 0x40], 0
jne 0x1402ad43f
cmp dword [r12 + 0x38], 1
jne 0x1402ad43f
mov rax, qword [r12 + 0x30]
mov r9, qword [rax]
mov r11, qword [r9 + 0x20]
test r11, r11
je 0x1402ad43f
cmp dword [r11], 1
jne 0x1402ad43f
test dword [r9 + 4], 0x1000000
jne 0x1402ad43f
mov r14, qword [rsp + 0x68]
test dword [r14 + 0x60], 0x10000
jne 0x1402ad43f
mov r9, qword [r9 + 8]
lea r10, [0x14037da90]
mov rdx, r9
sub r10, r9
nop word [rax + rax]
movzx eax, byte [rdx]
movzx r8d, byte [rdx + r10]
cmp eax, r8d
jne 0x1402ad3ba
test eax, eax
jne 0x1402ad3d6
mov rcx, qword [r11 + 8]
call fcn.140284060
neg eax
mov byte [rbp + 0xf8], 1
sbb bl, bl
and bl, 2
jmp 0x1402ad40a
lea rbx, [0x140000000]
movzx ecx, byte [rax + rbx + 0x3d65c0]
movzx eax, byte [r8 + rbx + 0x3d65c0]
cmp ecx, eax
jne 0x1402ad3db
inc rdx
jmp 0x1402ad390
lea r8, [0x140373ce8]
sub r8, r9
nop word [rax + rax]
movzx eax, byte [r9]
movzx edx, byte [r9 + r8]
cmp eax, edx
jne 0x1402ad426
test eax, eax
jne 0x1402ad43a
mov bl, 1
mov byte [rbp + 0xf8], 2
xor r8d, r8d
mov rdx, r11
mov rcx, r14
call fcn.140288e90
mov qword [rbp + 0x58], rax
test rax, rax
je 0x1402ad446
mov byte [rax + 0x18], bl
jmp 0x1402ad446
movzx ecx, byte [rax + rbx + 0x3d65c0]
movzx eax, byte [rdx + rbx + 0x3d65c0]
cmp ecx, eax
jne 0x1402ad43f
inc r9
jmp 0x1402ad3f0
mov byte [rbp + 0xf8], 0
mov edx, dword [r12 + 0x38]
xor r11d, r11d
mov dword [rsp + 0x58], r11d
mov r13d, r11d
test edx, edx
jle 0x1402ad57d
mov rbx, qword [rsp + 0x50]
lea rdi, [0x140206010]
mov r12d, r11d
nop dword [rax]
mov rax, qword [rbx + 0x30]
mov r15, qword [r12 + rax]
or dword [rbp + 0x38], 0x20000
mov qword [rbp - 8], r15
mov r14, qword [r15 + 0x20]
test r14, r14
je 0x1402ad4f9
cmp dword [r14], 0
lea rbx, [r14 + 8]
mov esi, r11d
jle 0x1402ad4f4
lea r15, [0x1402c8830]
lea r13, [0x1402c8820]
nop word [rax + rax]
mov rdx, qword [rbx]
lea rax, [rbp + 0x10]
mov qword [rbp - 0x40], rdi
mov qword [rbp - 0x38], r15
mov qword [rbp - 0x30], r13
mov dword [rbp - 0x28], r11d
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x48], r11
test rdx, rdx
je 0x1402ad4e0
lea rcx, [rbp - 0x48]
call fcn.1402dff00
xor r11d, r11d
inc esi
add rbx, 0x20
cmp esi, dword [r14]
jl 0x1402ad4b0
mov r15, qword [rbp - 8]
mov r13d, dword [rsp + 0x58]
mov rbx, qword [rsp + 0x50]
test dword [r15 + 4], 0x1000000
je 0x1402ad543
mov rax, qword [r15 + 0x40]
mov qword [rbp - 0x40], rdi
mov dword [rbp - 0x28], r11d
mov qword [rbp - 0x48], r11
mov rdx, qword [rax + 0x48]
lea rax, [0x1402c8830]
mov qword [rbp - 0x38], rax
lea rax, [0x1402c8820]
mov qword [rbp - 0x30], rax
lea rax, [rbp + 0x10]
mov qword [rbp - 0x20], rax
test rdx, rdx
je 0x1402ad543
lea rcx, [rbp - 0x48]
call fcn.1402dff00
and dword [rbp + 0x38], 0xfffdffff
inc r13d
mov edx, dword [rbx + 0x38]
add r12, 0x20
mov dword [rsp + 0x58], r13d
mov r11d, 0
cmp r13d, edx
jl 0x1402ad470
mov rdi, qword [rbp - 0x58]
mov r12, qword [rsp + 0x50]
mov r15, qword [rsp + 0x60]
mov rsi, qword [rbp + 0xe8]
mov r13, qword [rbp + 0xe0]
mov r14, qword [rsp + 0x68]
mov eax, dword [r13 + 0x38]
mov dword [r12 + 0x14], eax
cmp byte [r14 + 0x67], 0
jne 0x1402aeea7
test r15, r15
je 0x1402ae843
mov qword [rbp - 0x70], r11
mov r15, r11
mov word [rbp + 0xf8], r11w
cmp edx, 1
jne 0x1402ad6a7
mov rax, qword [r12 + 0x30]
cmp dword [rax + 0x14], 0
jl 0x1402ad6a7
mov rax, qword [rax]
test rax, rax
je 0x1402ad6a7
test dword [rax + 4], 0x1000
jne 0x1402ad6a7
mov rcx, qword [rax + 0x20]
test rcx, rcx
je 0x1402ad6a7
mov rdx, qword [rcx + 8]
test rdx, rdx
je 0x1402ad60f
xor r9d, r9d
xor r8d, r8d
mov rcx, r14
call fcn.140219650
mov rbx, rax
jmp 0x1402ad612
mov rbx, r11
mov rsi, qword [rsp + 0x60]
xor r8d, r8d
mov rdx, rsi
mov rcx, r14
call fcn.140288e90
mov qword [rbp - 0x70], rax
mov r15, rax
test rax, rax
jne 0x1402ad646
mov rcx, qword [r13]
mov rdx, rbx
call fcn.140288ae0
mov r15, rax
mov qword [rbp - 0x70], rax
jmp 0x1402ad690
movsxd rax, dword [rax]
lea ecx, [rax + 1]
cmp dword [r15 + 4], ecx
jge 0x1402ad66a
mov rcx, qword [r13]
mov r8, rbx
mov rdx, r15
call fcn.1402889f0
mov r15, rax
mov qword [rbp - 0x70], rax
jmp 0x1402ad690
movups xmm0, xmmword [0x1403d7418]
shl rax, 5
movups xmm1, xmmword [0x1403d7428]
mov dword [r15], ecx
movups xmmword [rax + r15 + 8], xmm0
movups xmmword [rax + r15 + 0x18], xmm1
mov qword [rax + r15 + 8], rbx
mov rax, r15
neg rax
sbb bx, bx
and bx, 0x500
mov word [rbp + 0xf8], bx
jmp 0x1402ad6ac
mov rsi, qword [rsp + 0x60]
mov eax, dword [r13 + 0x34]
xor r8d, r8d
mov dword [r12 + 4], eax
mov rdx, rsi
inc dword [r13 + 0x34]
mov rcx, r13
mov r9d, dword [r12 + 0x28]
call fcn.14029bed0
movsxd r9, dword [rdi + 0x90]
mov r13, rax
mov edx, dword [r12 + 0xc]
mov r8d, dword [r12 + 4]
mov qword [rbp - 8], rax
mov dword [rbp - 0x80], r9d
cmp dword [rdi + 0x94], r9d
jg 0x1402ad70d
xor eax, eax
mov r9d, edx
mov rcx, rdi
mov dword [rsp + 0x20], eax
lea edx, [rax + 0x77]
call fcn.1402471f0
mov r9d, eax
mov dword [rbp - 0x80], eax
jmp 0x1402ad73f
lea rcx, [r9 + r9*2]
xor r10d, r10d
lea eax, [r9 + 1]
mov dword [rdi + 0x90], eax
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x77
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 [rdi]
mov eax, r9d
cmp byte [rcx + 0x67], 0
je 0x1402ad76f
cmp qword [rcx + 0x300], 0
jne 0x1402ad7b4
test r13, r13
je 0x1402ad7b4
add dword [r13], 0xffffffff
jne 0x1402ad7b4
mov rcx, qword [r13 + 0x10]
mov rdx, r13
call fcn.1402804a0
jmp 0x1402ad7b4
test r9d, r9d
jns 0x1402ad77c
mov eax, dword [rdi + 0x90]
dec eax
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 0x88]
cmp byte [rax + rcx*8 + 1], 0
lea rdx, [rax + rcx*8]
je 0x1402ad7a7
mov r9d, 0xfffffff8
mov r8, r13
mov rcx, rdi
call fcn.1402d94a0
jmp 0x1402ad7b4
test r13, r13
je 0x1402ad7b4
mov qword [rdx + 0x10], r13
mov byte [rdx + 1], 0xf8
mov r8, qword [rbp + 0xe0]
mov r9, qword [rsp + 0x60]
mov eax, dword [r8 + 0x38]
inc eax
mov dword [rbp - 0xc], eax
lea edx, [rax + 1]
mov eax, dword [r8 + 0x44]
dec eax
mov dword [rbp - 0x78], edx
lea r14d, [rdx + 2]
mov dword [rbp - 0x58], eax
mov dword [r8 + 0x38], r14d
lea ebx, [r14 + 1]
mov dword [rbp - 0x10], r14d
lea esi, [rax - 1]
mov dword [r8 + 0x44], esi
mov ecx, dword [r9]
add ecx, r14d
mov dword [rsp + 0x58], esi
mov dword [r8 + 0x38], ecx
lea eax, [rcx + 1]
add ecx, dword [r9]
mov dword [r8 + 0x38], ecx
movsxd rcx, dword [rdi + 0x90]
mov dword [rbp - 0x14], eax
cmp dword [rdi + 0x94], ecx
jg 0x1402ad83a
xor eax, eax
mov r9d, edx
xor r8d, r8d
mov dword [rsp + 0x20], eax
mov rcx, rdi
lea edx, [rax + 0x47]
call fcn.1402471f0
mov r9, qword [rsp + 0x60]
xor r8d, r8d
jmp 0x1402ad867
lea eax, [rcx + 1]
xor r8d, r8d
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov qword [rax + rcx*8], 0x47
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 [rdi + 0x90]
dec edx
add edx, ebx
cmp dword [rdi + 0x94], ecx
jg 0x1402ad898
xor r8d, r8d
mov dword [rsp + 0x20], edx
mov r9d, ebx
mov rcx, rdi
lea edx, [r8 + 0x4b]
call fcn.1402471f0
xor r8d, r8d
jmp 0x1402ad8c1
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov qword [rax + rcx*8], 0x4b
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], r8
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1402ad8ed
mov dword [rsp + 0x20], r8d
mov r9d, esi
mov r8d, r14d
mov edx, 9
mov rcx, rdi
call fcn.1402471f0
xor r8d, r8d
jmp 0x1402ad91b
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 9
mov dword [rax + rcx*8 + 4], r14d
mov dword [rax + rcx*8 + 8], esi
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], r8
mov eax, dword [rbp - 0x18]
mov edx, 0x80
movzx esi, byte [rsp + 0x40]
neg eax
mov r14, qword [rsp + 0x60]
mov eax, 0x40
mov rbx, qword [rbp + 0xe0]
sbb cx, cx
and cx, 0x200
mov dword [rsp + 0x38], r8d
cmp sil, 2
mov r9, r14
cmove ax, dx
mov rdx, qword [rsp + 0x48]
or cx, ax
or cx, word [rbp + 0xf8]
mov word [rsp + 0x30], cx
mov rcx, rbx
mov qword [rsp + 0x28], r8
mov r8, qword [rbp - 0x50]
mov qword [rsp + 0x20], r15
call fcn.1402c8840
mov qword [rbp - 0x50], rax
mov rcx, rax
test rax, rax
jne 0x1402ad9aa
mov r14, qword [rsp + 0x68]
test r15, r15
je 0x1402ad99e
mov rdx, r15
mov rcx, r14
call fcn.140219f50
mov r13, qword [rbp + 0xe0]
jmp 0x1402aeea7
movzx eax, byte [rax + 0x4b]
mov dword [rsp + 0x78], eax
movsx eax, byte [rcx + 0x49]
cmp eax, dword [r14]
jne 0x1402ad9c5
xor ebx, ebx
mov r12d, ebx
jmp 0x1402add3a
test sil, sil
je 0x1402ad9de
mov rax, qword [rbp + 0xe8]
lea r9, str.DISTINCT
test byte [rax + 4], 1
je 0x1402ad9e5
lea r9, str.GROUP_BY
lea r8, str.USE_TEMP_B_TREE_FOR__s
xor edx, edx
mov rcx, rbx
call fcn.1402c17c0
mov r15d, dword [r14]
mov r14d, r15d
mov eax, dword [r12 + 0x28]
mov edx, r15d
mov dword [rsp + 0x48], 1
test eax, eax
jle 0x1402ada43
mov r8, qword [r12 + 0x20]
mov r9d, eax
add r8, 0x1a
nop dword [rax]
movsx ecx, word [r8]
lea eax, [r14 + 1]
cmp ecx, edx
lea r8, [r8 + 0x20]
cmovl eax, r14d
mov r14d, eax
lea eax, [rdx + 1]
cmovl eax, edx
mov edx, eax
sub r9, 1
jne 0x1402ada20
cmp r14d, 1
jne 0x1402ada6c
movzx eax, byte [rbx + 0x1f]
test al, al
jne 0x1402ada5a
inc dword [rbx + 0x38]
mov r12d, dword [rbx + 0x38]
jmp 0x1402ada94
dec al
movzx eax, al
mov byte [rbx + 0x1f], al
mov r12d, dword [rbx + rax*4 + 0xd8]
jmp 0x1402ada94
mov ecx, dword [rbx + 0x28]
mov r12d, dword [rbx + 0x2c]
cmp r14d, ecx
jg 0x1402ada87
lea eax, [r14 + r12]
sub ecx, r14d
mov dword [rbx + 0x2c], eax
mov dword [rbx + 0x28], ecx
jmp 0x1402ada94
mov eax, dword [rbx + 0x38]
lea r12d, [rax + 1]
add eax, r14d
mov dword [rbx + 0x38], eax
mov rdx, qword [rsp + 0x60]
xor r9d, r9d
mov r8d, r12d
mov byte [rsp + 0x20], 0
mov rcx, rbx
call fcn.140284230
mov rax, qword [rsp + 0x50]
xor ecx, ecx
mov esi, ecx
cmp dword [rax + 0x28], ecx
jle 0x1402adb06
mov ebx, ecx
mov r13, rax
nop
mov rdx, qword [r13 + 0x20]
add rdx, rbx
movsx eax, word [rdx + 0x1a]
cmp eax, r15d
jl 0x1402adaef
movsx r9d, word [rdx + 0x18]
lea eax, [r12 + r15]
mov r8d, dword [rdx + 0x10]
mov rcx, rdi
mov rdx, qword [rdx]
mov dword [rsp + 0x20], eax
call fcn.1402847c0
inc r15d
inc esi
add rbx, 0x20
cmp esi, dword [r13 + 0x28]
jl 0x1402adac0
mov r13, qword [rbp - 8]
mov rbx, qword [rbp + 0xe0]
movzx eax, byte [rbx + 0x1f]
test al, al
jne 0x1402adb16
inc dword [rbx + 0x38]
mov ebx, dword [rbx + 0x38]
jmp 0x1402adb25
dec al
movzx eax, al
mov byte [rbx + 0x1f], al
mov ebx, dword [rbx + rax*4 + 0xd8]
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1402adb50
mov r9d, r14d
mov dword [rsp + 0x20], ebx
mov r8d, r12d
mov edx, 0x61
mov rcx, rdi
call fcn.1402471f0
xor r15d, r15d
jmp 0x1402adb81
lea eax, [rcx + 1]
xor r15d, r15d
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x61
mov dword [rax + rcx*8 + 4], r12d
mov dword [rax + rcx*8 + 8], r14d
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], r15
mov rsi, qword [rsp + 0x50]
movsxd rcx, dword [rdi + 0x90]
mov edx, dword [rsi + 4]
cmp dword [rdi + 0x94], ecx
jg 0x1402adbb2
mov r8d, edx
mov dword [rsp + 0x20], r15d
mov edx, 0x8b
mov r9d, ebx
mov rcx, rdi
call fcn.1402471f0
jmp 0x1402adbdf
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x8b
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], r15d
mov qword [rax + rcx*8 + 0x10], r15
test ebx, ebx
je 0x1402adc01
mov rcx, qword [rbp + 0xe0]
movzx eax, byte [rcx + 0x1f]
cmp al, 8
jae 0x1402adc01
mov dword [rcx + rax*4 + 0xd8], ebx
mov rbx, rcx
inc byte [rcx + 0x1f]
jmp 0x1402adc08
mov rbx, qword [rbp + 0xe0]
cmp r14d, 1
jne 0x1402adc28
test r12d, r12d
je 0x1402adc36
movzx eax, byte [rbx + 0x1f]
cmp al, 8
jae 0x1402adc36
mov dword [rbx + rax*4 + 0xd8], r12d
inc byte [rbx + 0x1f]
jmp 0x1402adc36
cmp r14d, dword [rbx + 0x28]
jle 0x1402adc36
mov dword [rbx + 0x28], r14d
mov dword [rbx + 0x2c], r12d
mov rcx, qword [rbp - 0x50]
call fcn.1402ccdd0
mov edx, dword [rbx + 0x34]
mov dword [rsi + 8], edx
inc dword [rbx + 0x34]
movzx eax, byte [rbx + 0x1f]
mov dword [rsp + 0x74], edx
test al, al
jne 0x1402adc5d
inc dword [rbx + 0x38]
mov r8d, dword [rbx + 0x38]
jmp 0x1402adc6d
dec al
movzx eax, al
mov byte [rbx + 0x1f], al
mov r8d, dword [rbx + rax*4 + 0xd8]
movsxd rcx, dword [rdi + 0x90]
mov dword [rbp - 0x64], r8d
cmp dword [rdi + 0x94], ecx
jg 0x1402adc9a
mov r9d, r8d
mov dword [rsp + 0x20], r14d
mov r8d, edx
mov rcx, rdi
mov edx, 0x79
call fcn.1402471f0
jmp 0x1402adcc8
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 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], r14d
mov qword [rax + rcx*8 + 0x10], r15
movsxd rcx, dword [rdi + 0x90]
mov edx, dword [rsi + 4]
cmp dword [rdi + 0x94], ecx
jg 0x1402adcf6
mov r9d, dword [rsp + 0x70]
mov r8d, edx
mov edx, 0x21
mov dword [rsp + 0x20], r15d
mov rcx, rdi
call fcn.1402471f0
jmp 0x1402add27
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rsp + 0x70]
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8], 0x21
mov dword [rax + rcx*8 + 0xc], r15d
mov qword [rax + rcx*8 + 0x10], r15
mov r15, qword [rbp - 0x70]
xor ebx, ebx
mov r12d, dword [rsp + 0x48]
mov rcx, qword [rbp - 0x50]
mov byte [rsi + 1], 1
cmp dword [rbp - 0x18], 0
je 0x1402adf33
mov rax, qword [rsp + 0x68]
test byte [rax + 0x60], 4
jne 0x1402adf33
test r12d, r12d
jne 0x1402add62
test byte [rcx + 0x4c], 8
je 0x1402adf33
mov r9, qword [rdi]
mov qword [rbp + 0x60], rbx
cmp byte [r9 + 0x67], 0
jne 0x1402adf33
movsxd rax, dword [rbp - 0x68]
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 0x88]
mov rbx, qword [rax + rcx*8 + 0x10]
lea rsi, [rax + rcx*8]
movsx eax, byte [rax + rcx*8 + 1]
add eax, 0xf
cmp eax, 9
ja case.0x1402addb1.9
lea rcx, [0x140000000]
cdqe
mov r8d, dword [rcx + rax*4 + 0x2aeefc]
add r8, rcx
jmp r8
mov rdx, rbx
mov rcx, r9
call fcn.140220060
jmp case.0x1402addb1.9
test rbx, rbx
je case.0x1402addb1.9
test r9, r9
je 0x1402ade33
cmp qword [r9 + 0x300], 0
je 0x1402addec
mov rdx, rbx
mov rcx, r9
call fcn.14024e7a0
jmp case.0x1402addb1.9
cmp rbx, qword [r9 + 0x1f0]
jae 0x1402ade33
cmp rbx, qword [r9 + 0x1e0]
jb 0x1402ade14
mov rax, qword [r9 + 0x1d8]
mov qword [rbx], rax
mov qword [r9 + 0x1d8], rbx
jmp case.0x1402addb1.9
cmp rbx, qword [r9 + 0x1e8]
jb 0x1402ade33
mov rax, qword [r9 + 0x1c8]
mov qword [rbx], rax
mov qword [r9 + 0x1c8], rbx
jmp case.0x1402addb1.9
cmp dword [0x14042c570], 0
je 0x1402ade8c
mov rcx, qword [0x140433850]
test rcx, rcx
je 0x1402ade4e
call qword [0x14042c5f0]
mov rcx, rbx
call qword [0x14042c5a8]
dec qword [0x1404337e8]
movsxd rcx, eax
sub qword [0x1404337a0], rcx
mov rcx, rbx
call qword [0x14042c598]
mov rcx, qword [0x140433850]
test rcx, rcx
je case.0x1402addb1.9
call qword [0x14042c600]
jmp case.0x1402addb1.9
mov rcx, rbx
call qword [0x14042c598]
jmp case.0x1402addb1.9
cmp qword [r9 + 0x300], 0
jne case.0x1402addb1.9
test rbx, rbx
je case.0x1402addb1.9
add dword [rbx], 0xffffffff
jne case.0x1402addb1.9
mov rcx, qword [rbx + 0x10]
mov rdx, rbx
call fcn.1402804a0
jmp case.0x1402addb1.9
test byte [rbx + 4], 0x10
je case.0x1402addb1.9
mov rdx, rbx
mov rcx, r9
call fcn.1402804a0
jmp case.0x1402addb1.9
cmp qword [r9 + 0x300], 0
jne 0x1402adf09
test rbx, rbx
je case.0x1402addb1.9
mov eax, 0x9000
test word [rbx + 0x14], ax
jne 0x1402adef3
cmp dword [rbx + 0x20], 0
je 0x1402adefb
mov rcx, rbx
call fcn.1402daaf0
mov rcx, qword [rbx + 0x18]
mov rdx, rbx
call fcn.1402804a0
jmp case.0x1402addb1.9
mov rdx, rbx
mov rcx, r9
call fcn.1402200a0
jmp case.0x1402addb1.9
cmp qword [r9 + 0x300], 0
jne case.0x1402addb1.9
mov rcx, rbx
call fcn.1402c71b0
xor ebx, ebx
mov word [rsi], 0xb8
mov qword [rsi + 0x10], rbx
movsxd r14, dword [rdi + 0x90]
mov dword [rsp + 0x48], r14d
test r12d, r12d
je 0x1402adf75
mov rax, qword [rsp + 0x50]
mov edx, dword [rax + 4]
cmp dword [rdi + 0x94], r14d
jg 0x1402adfd9
mov eax, dword [rsp + 0x74]
mov r8d, edx
mov r9d, dword [rbp - 0x64]
mov edx, 0x85
mov rcx, rdi
mov dword [rsp + 0x20], eax
call fcn.1402471f0
mov r10d, dword [rsp + 0x74]
mov rax, qword [rsp + 0x60]
xor r9d, r9d
mov ebx, r9d
mov edx, dword [rax]
test edx, edx
jle 0x1402ae080
mov r15d, dword [rbp - 0x14]
lea rsi, [rax + 8]
mov r13, qword [rsp + 0x50]
mov r14, qword [rbp + 0xe0]
lea r8d, [rbx + r15]
test r12d, r12d
je 0x1402ae046
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1402ae016
mov dword [rsp + 0x20], r8d
mov r9d, ebx
mov r8d, r10d
mov edx, 0x5e
mov rcx, rdi
call fcn.1402471f0
jmp 0x1402ae056
mov r8d, dword [rbp - 0x64]
lea rcx, [r14 + r14*2]
mov r10d, dword [rsp + 0x74]
lea eax, [r14 + 1]
mov dword [rdi + 0x90], eax
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x85
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], r10d
mov qword [rax + rcx*8 + 0x10], rbx
jmp 0x1402adf7a
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x5e
mov dword [rax + rcx*8 + 4], r10d
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], r9
jmp 0x1402ae05e
mov byte [r13], 1
mov rcx, r14
mov rdx, qword [rsi]
call fcn.1402841d0
mov r10d, dword [rsp + 0x74]
xor r9d, r9d
mov rax, qword [rsp + 0x60]
inc ebx
add rsi, 0x20
mov edx, dword [rax]
cmp ebx, edx
jl 0x1402adfa3
mov r13, qword [rbp - 8]
mov r14d, dword [rsp + 0x48]
mov r15, qword [rbp - 0x70]
test r13, r13
je 0x1402ae08b
inc dword [r13]
mov edx, dword [rax]
movsxd r8, dword [rdi + 0x90]
mov esi, dword [rbp - 0x14]
cmp dword [rdi + 0x94], r8d
jg 0x1402ae0be
mov r8d, dword [rbp - 0x10]
mov r9d, esi
mov dword [rsp + 0x20], edx
inc r8d
mov edx, 0x5a
mov rcx, rdi
call fcn.1402471f0
mov r8d, eax
jmp 0x1402ae0f3
mov r10d, dword [rbp - 0x10]
lea rcx, [r8 + r8*2]
lea eax, [r8 + 1]
inc r10d
mov dword [rdi + 0x90], eax
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x5a
mov dword [rax + rcx*8 + 4], r10d
mov dword [rax + rcx*8 + 8], esi
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], r9
mov rax, qword [rdi]
cmp byte [rax + 0x67], 0
je 0x1402ae1e8
cmp qword [rax + 0x300], 0
jne 0x1402ae230
test r13, r13
je 0x1402ae230
add dword [r13], 0xffffffff
jne 0x1402ae230
mov rcx, qword [r13 + 0x10]
test rcx, rcx
je 0x1402ae18b
cmp qword [rcx + 0x300], 0
je 0x1402ae142
mov rdx, r13
call fcn.14024e7a0
jmp 0x1402ae230
cmp r13, qword [rcx + 0x1f0]
jae 0x1402ae18b
cmp r13, qword [rcx + 0x1e0]
jb 0x1402ae16b
mov rax, qword [rcx + 0x1d8]
mov qword [r13], rax
mov qword [rcx + 0x1d8], r13
jmp 0x1402ae230
cmp r13, qword [rcx + 0x1e8]
jb 0x1402ae18b
mov rax, qword [rcx + 0x1c8]
mov qword [r13], rax
mov qword [rcx + 0x1c8], r13
jmp 0x1402ae230
cmp dword [0x14042c570], 0
je 0x1402ae1dd
mov rcx, qword [0x140433850]
test rcx, rcx
je 0x1402ae1a6
call qword [0x14042c5f0]
mov rcx, r13
call qword [0x14042c5a8]
dec qword [0x1404337e8]
movsxd rcx, eax
sub qword [0x1404337a0], rcx
mov rcx, r13
call qword [0x14042c598]
mov rcx, qword [0x140433850]
test rcx, rcx
je 0x1402ae230
call qword [0x14042c600]
jmp 0x1402ae230
mov rcx, r13
call qword [0x14042c598]
jmp 0x1402ae230
test r8d, r8d
jns 0x1402ae1f7
mov r8d, dword [rdi + 0x90]
dec r8d
movsxd rax, r8d
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 0x88]
cmp byte [rax + rcx*8 + 1], 0
lea rdx, [rax + rcx*8]
je 0x1402ae223
mov r9d, 0xfffffff8
mov r8, r13
mov rcx, rdi
call fcn.1402d94a0
jmp 0x1402ae230
test r13, r13
je 0x1402ae230
mov qword [rdx + 0x10], r13
mov byte [rdx + 1], 0xf8
movsxd rbx, dword [rdi + 0x90]
lea edx, [rbx + 1]
cmp dword [rdi + 0x94], ebx
jg 0x1402ae25a
xor r9d, r9d
mov dword [rsp + 0x20], edx
mov r8d, edx
mov rcx, rdi
lea edx, [r9 + 0xd]
call fcn.1402471f0
jmp 0x1402ae287
mov rax, qword [rdi + 0x88]
lea rcx, [rbx + rbx*2]
mov dword [rdi + 0x90], edx
xor r8d, r8d
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], edx
mov qword [rax + rcx*8 + 0x10], r8
mov rax, qword [rsp + 0x60]
mov edx, esi
mov r13d, dword [rbp - 0x10]
mov rcx, qword [rbp + 0xe0]
mov r9d, dword [rax]
lea r8d, [r13 + 1]
call fcn.140285db0
movsxd rcx, dword [rdi + 0x90]
mov esi, dword [rbp - 0x58]
mov r8d, dword [rbp - 0x78]
cmp dword [rdi + 0x94], ecx
jg 0x1402ae2db
xor eax, eax
mov r9d, esi
inc r8d
mov dword [rsp + 0x20], eax
mov rcx, rdi
lea edx, [rax + 9]
call fcn.1402471f0
mov r8d, dword [rbp - 0x78]
xor r9d, r9d
jmp 0x1402ae30f
lea eax, [rcx + 1]
xor r9d, r9d
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
lea edx, [r8 + 1]
mov dword [rax + rcx*8], 9
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], esi
mov dword [rax + rcx*8 + 0xc], r9d
mov qword [rax + rcx*8 + 0x10], r9
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1402ae33a
mov dword [rsp + 0x20], r9d
mov edx, gethostbyname
mov r9d, dword [rsp + 0x70]
mov rcx, rdi
call fcn.1402471f0
xor r9d, r9d
jmp 0x1402ae36c
mov edx, dword [rsp + 0x70]
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], gethostbyname
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r9d
mov qword [rax + rcx*8 + 0x10], r9
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1402ae397
mov dword [rsp + 0x20], r9d
mov r8d, r13d
mov r9d, dword [rsp + 0x58]
mov edx, 9
mov rcx, rdi
call fcn.1402471f0
jmp 0x1402ae3c9
mov edx, dword [rsp + 0x58]
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 9
mov dword [rax + rcx*8 + 4], r13d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r9d
mov qword [rax + rcx*8 + 0x10], r9
mov rax, qword [rdi]
mov edx, dword [rdi + 0x90]
cmp byte [rax + 0x67], 0
je 0x1402ae3e1
lea rax, [0x140433b88]
jmp 0x1402ae3fa
lea eax, [rdx - 1]
test ebx, ebx
cmovns eax, ebx
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 0x88]
lea rax, [rax + rcx*8]
mov r13, qword [rsp + 0x50]
mov ebx, dword [rbp - 0xc]
mov r8, r13
mov r9d, dword [rsp + 0x78]
mov rcx, qword [rbp + 0xe0]
mov dword [rax + 8], edx
mov edx, ebx
call fcn.1402d7190
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1402ae444
xor eax, eax
mov r9d, ebx
mov rcx, rdi
mov dword [rsp + 0x20], eax
lea edx, [rax + 0x47]
lea r8d, [rax + 1]
call fcn.1402471f0
jmp 0x1402ae476
lea eax, [rcx + 1]
xor edx, edx
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 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], edx
mov qword [rax + rcx*8 + 0x10], rdx
test r12d, r12d
je 0x1402ae4db
movsxd rcx, dword [rdi + 0x90]
xor r12d, r12d
mov edx, dword [r13 + 4]
cmp dword [rdi + 0x94], ecx
jg 0x1402ae4ab
mov r8d, edx
mov dword [rsp + 0x20], r12d
lea edx, [r12 + 0x24]
mov r9d, r14d
mov rcx, rdi
call fcn.1402471f0
jmp 0x1402ae520
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x24
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r14d
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
jmp 0x1402ae520
mov rcx, qword [rbp - 0x50]
call fcn.1402ccdd0
mov rcx, qword [rdi]
cmp byte [rcx + 0x67], 0
jne 0x1402ae51d
movsxd rax, dword [rbp - 0x80]
lea rdx, [rax + rax*2]
mov rax, qword [rdi + 0x88]
mov r8, qword [rax + rdx*8 + 0x10]
lea rbx, [rax + rdx*8]
movsx edx, byte [rax + rdx*8 + 1]
call fcn.14021ff40
xor r12d, r12d
mov word [rbx], 0xb8
mov qword [rbx + 0x10], r12
jmp 0x1402ae520
xor r12d, r12d
test r15, r15
je 0x1402ae532
mov rcx, qword [rsp + 0x68]
mov rdx, r15
call fcn.140219f50
mov r15d, dword [rbp - 0x78]
movsxd rcx, dword [rdi + 0x90]
lea r14d, [r15 + 1]
cmp dword [rdi + 0x94], ecx
jg 0x1402ae563
mov r9d, esi
mov dword [rsp + 0x20], r12d
mov r8d, r14d
mov edx, 9
mov rcx, rdi
call fcn.1402471f0
jmp 0x1402ae591
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 9
mov dword [rax + rcx*8 + 4], r14d
mov dword [rax + rcx*8 + 8], esi
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
mov edx, dword [rsp + 0x70]
mov rcx, rdi
call fcn.1402c1f00
movsxd rbx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ebx
jg 0x1402ae5c7
mov edx, 0x47
mov dword [rsp + 0x20], r12d
mov r9d, r15d
mov rcx, rdi
lea r8d, [rdx - 0x46]
call fcn.1402471f0
jmp 0x1402ae5f9
lea rcx, [rbx + rbx*2]
lea eax, [rbx + 1]
mov dword [rdi + 0x90], eax
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x47
mov dword [rax + rcx*8 + 4], 1
mov dword [rax + rcx*8 + 8], r15d
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1402ae621
xor r9d, r9d
mov dword [rsp + 0x20], r12d
mov r8d, r14d
mov rcx, rdi
lea edx, [r9 + 0x43]
call fcn.1402471f0
jmp 0x1402ae64f
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x43
mov dword [rax + rcx*8 + 4], r14d
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], r12
mov rcx, qword [rdi + 0x18]
not esi
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x1402ae66a
mov r8d, esi
mov rdx, rdi
call fcn.14025e8a0
jmp 0x1402ae67b
mov rcx, qword [rcx + 0x50]
mov eax, dword [rdi + 0x90]
movsxd r8, esi
mov dword [rcx + r8*4], eax
movsxd rax, dword [rdi + 0x90]
mov r15d, dword [rbp - 0xc]
lea r8d, [rax + 2]
lea esi, [rax + 1]
cmp dword [rdi + 0x94], eax
jg 0x1402ae6af
mov r9d, r8d
mov dword [rsp + 0x20], r12d
mov r8d, r15d
mov edx, gethostbyname
mov rcx, rdi
call fcn.1402471f0
jmp 0x1402ae6db
lea rcx, [rax + rax*2]
mov dword [rdi + 0x90], esi
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], gethostbyname
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
mov r8d, r14d
mov edx, 0x43
mov rcx, rdi
call fcn.1402b7310
mov r12, qword [rbp + 0xe0]
mov rdx, r13
mov rcx, r12
call fcn.14021b330
mov rdx, qword [rbp + 0x50]
mov r9d, reloc.WS2_32.dll_recv
mov r8d, esi
mov rcx, r12
call fcn.140287e70
mov rdx, qword [rbp + 0xe8]
lea rax, [rbp]
mov dword [rsp + 0x38], ebx
lea r9, [rbp + 0x60]
mov dword [rsp + 0x30], esi
mov r8d, 0xffffffff
mov rsi, qword [rbp + 0xf0]
mov rcx, r12
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rax
call fcn.140266450
mov r8d, r14d
mov edx, 0x43
mov rcx, rdi
call fcn.1402b7310
mov rcx, qword [rdi + 0x18]
mov edx, dword [rsp + 0x58]
not edx
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x1402ae777
mov r8d, edx
mov rdx, rdi
call fcn.14025e8a0
jmp 0x1402ae788
mov rcx, qword [rcx + 0x50]
mov eax, dword [rdi + 0x90]
movsxd r8, edx
mov dword [rcx + r8*4], eax
mov rdx, r13
mov rcx, r12
call fcn.14025e3d0
movsxd rcx, dword [rdi + 0x90]
xor r12d, r12d
cmp dword [rdi + 0x94], ecx
jg 0x1402ae7bf
mov r9d, r15d
mov dword [rsp + 0x20], r12d
xor r8d, r8d
lea edx, [r12 + 0x47]
mov rcx, rdi
call fcn.1402471f0
jmp 0x1402ae7ea
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov qword [rax + rcx*8], 0x47
mov dword [rax + rcx*8 + 8], r15d
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
lea r8d, [r14 + 1]
mov edx, 0x43
mov rcx, rdi
call fcn.1402b7310
cmp word [rbp + 0xf8], 0
je 0x1402ae833
mov ecx, dword [rsp + 0x78]
test ecx, ecx
je 0x1402ae833
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.14021bc10
mov ebx, dword [rsp + 0x70]
jmp 0x1402aedb8
mov r13, qword [rbp + 0xe0]
mov ebx, dword [rsp + 0x70]
jmp 0x1402aedb8
cmp qword [rsi + 0x30], 0
jne 0x1402aeb43
mov r8, qword [rsi + 0x20]
cmp dword [r8], 1
jne 0x1402aeb43
mov r14, qword [rsi + 0x28]
cmp dword [r14], 1
jne 0x1402aeb43
cmp qword [r14 + 0x30], 0
jne 0x1402aeb43
cmp edx, 1
jne 0x1402aeb43
cmp qword [rsi + 0x40], 0
jne 0x1402aeb43
mov r14, qword [r14 + 0x28]
cmp byte [r14 + 0x3f], 0
jne 0x1402aeb43
mov r8, qword [r8 + 8]
cmp byte [r8], 0xa8
jne 0x1402aeb43
cmp qword [r8 + 0x38], r12
jne 0x1402aeb43
mov rax, qword [r12 + 0x30]
mov rcx, qword [rax + 8]
test dword [rcx + 4], 0x100
je 0x1402aeb43
test dword [r8 + 4], 0x1000004
jne 0x1402aeb43
mov rdx, qword [r14 + 0x60]
mov esi, 0xffff8000
test rdx, rdx
je 0x1402ae90b
mov rax, qword [r13]
mov esi, r11d
mov rcx, qword [rax + 0x20]
add rcx, 0x18
cmp qword [rcx], rdx
je 0x1402ae90b
nop word [rax + rax]
inc esi
lea rcx, [rcx + 0x20]
cmp qword [rcx], rdx
jne 0x1402ae900
mov r10, qword [rbp + 0xe0]
mov r15, r11
mov r13d, dword [r13 + 0x34]
mov rcx, r10
mov rbx, r11
lea eax, [r13 + 1]
mov dword [r10 + 0x34], eax
mov rax, qword [r10 + 0xa0]
mov r12d, dword [r14 + 0x28]
test rax, rax
cmovne rcx, rax
mov eax, dword [rcx + 0x74]
bt eax, esi
jb 0x1402ae953
bts eax, esi
mov dword [rcx + 0x74], eax
cmp esi, 1
jne 0x1402ae958
call fcn.14029e7b0
jmp 0x1402ae98a
cmp esi, 1
je 0x1402ae991
mov rax, qword [r10]
movsxd rdx, esi
shl rdx, 5
mov rcx, qword [rax + 0x20]
mov rax, qword [rdx + rcx + 8]
cmp byte [rax + 0x11], 0
je 0x1402ae991
mov rax, qword [r14]
xor r9d, r9d
mov r8d, dword [r14 + 0x28]
mov edx, esi
mov rcx, r10
mov qword [rsp + 0x20], rax
call fcn.14024cda0
mov r10, qword [rbp + 0xe0]
test byte [r14 + 0x30], 0x80
je 0x1402ae9b3
mov rbx, qword [r14 + 0x10]
test rbx, rbx
je 0x1402ae9b3
mov eax, dword [rbx + 0x64]
and al, 3
cmp al, 2
je 0x1402ae9b3
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x1402ae9a1
mov rax, qword [rbp + 0xe8]
mov rax, qword [rax + 0x28]
test byte [rax + 0x48], 1
jne 0x1402ae9ff
mov rax, qword [r14 + 0x10]
test rax, rax
je 0x1402ae9ff
nop dword [rax]
test byte [rax + 0x64], 4
jne 0x1402ae9f6
movzx ecx, word [rax + 0x5c]
cmp cx, word [r14 + 0x3c]
jge 0x1402ae9f6
cmp qword [rax + 0x48], 0
jne 0x1402ae9f6
test rbx, rbx
je 0x1402ae9f3
cmp cx, word [rbx + 0x5c]
jge 0x1402ae9f6
mov rbx, rax
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x1402ae9d0
test rbx, rbx
je 0x1402aea16
mov r12d, dword [rbx + 0x58]
mov rdx, rbx
mov rcx, r10
call fcn.14029bf90
mov r15, rax
mov dword [rsp + 0x28], 1
mov r9d, r12d
mov r8d, r13d
mov dword [rsp + 0x20], esi
mov edx, reloc.WS2_32.dll_WSASetLastError
mov rcx, rdi
call fcn.1402b7590
test r15, r15
je 0x1402aea9d
mov rax, qword [rdi]
cmp byte [rax + 0x67], 0
je 0x1402aea61
cmp qword [rax + 0x300], 0
jne 0x1402aea9d
add dword [r15], 0xffffffff
jne 0x1402aea9d
mov rcx, qword [r15 + 0x10]
mov rdx, r15
call fcn.1402804a0
jmp 0x1402aea9d
movsxd rax, dword [rdi + 0x90]
lea rdx, [rax + rax*2]
mov rax, qword [rdi + 0x88]
lea rdx, [rdx - 3]
cmp byte [rax + rdx*8 + 1], 0
lea rdx, [rax + rdx*8]
je 0x1402aea95
mov r9d, 0xfffffff8
mov r8, r15
mov rcx, rdi
call fcn.1402d94a0
jmp 0x1402aea9d
mov qword [rdx + 0x10], r15
mov byte [rdx + 1], 0xf8
mov rax, qword [rsp + 0x50]
mov r8d, r13d
mov edx, 0x62
mov rcx, rdi
mov rax, qword [rax + 0x30]
mov r9d, dword [rax + 0x10]
call fcn.1402b7380
mov r8d, r13d
mov edx, 0x7a
mov rcx, rdi
call fcn.1402b7310
mov r13, qword [rbp + 0xe0]
cmp byte [r13 + 0x123], 2
jne 0x1402aed69
test rbx, rbx
je 0x1402aeb00
test byte [r14 + 0x30], 0x80
je 0x1402aeaf4
mov eax, dword [rbx + 0x64]
and al, 3
cmp al, 2
je 0x1402aeb00
mov rax, qword [rbx]
lea rcx, [0x1403fb94f]
jmp 0x1402aeb10
xor eax, eax
lea rcx, [0x1403fb94f]
mov dword [rsp + 0x78], eax
mov rax, rcx
cmp dword [rsp + 0x78], 0
lea rdx, str._USING_COVERING_INDEX
mov r9, qword [r14]
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.1402c17c0
jmp 0x1402aed69
cmp dword [r12 + 0x2c], 0
mov esi, r11d
mov r14, r11
movzx ebx, r11w
je 0x1402aebfd
mov r8d, r11d
mov r9d, edx
test edx, edx
jle 0x1402aeb98
mov rcx, qword [r12 + 0x30]
nop dword [rax + rax]
mov rax, qword [rcx]
test dword [rax + 4], 0x1000000
jne 0x1402aeb89
mov rax, qword [rcx + 8]
mov r9d, edx
test byte [rax + 4], 0x20
jne 0x1402aeb98
inc r8d
add rcx, 0x20
mov r9d, edx
cmp r8d, edx
jl 0x1402aeb70
cmp r8d, r9d
jne 0x1402aec22
inc dword [r13 + 0x38]
movsxd rcx, dword [rdi + 0x90]
mov esi, dword [r13 + 0x38]
cmp dword [rdi + 0x94], ecx
jg 0x1402aebd1
xor r8d, r8d
mov dword [rsp + 0x20], r11d
mov r9d, esi
mov rcx, rdi
lea edx, [r8 + 0x47]
call fcn.1402471f0
jmp 0x1402aec22
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov qword [rax + rcx*8], 0x47
mov dword [rax + rcx*8 + 8], esi
mov dword [rax + rcx*8 + 0xc], r11d
mov qword [rax + rcx*8 + 0x10], r11
jmp 0x1402aec22
cmp edx, 1
jne 0x1402aec22
mov rax, qword [r12 + 0x30]
cmp dword [rax + 0x14], 0
jl 0x1402aec22
mov rax, qword [rax]
mov r14, qword [rax + 0x20]
mov rax, r14
neg rax
sbb bx, bx
and bx, 0x500
mov rdx, r12
mov rcx, r13
call fcn.14025e3d0
movzx r15d, byte [rbp + 0xf8]
xor ecx, ecx
mov r9, qword [rbp + 0x58]
movzx eax, r15w
mov r8, qword [rbp - 0x50]
or ax, bx
mov rdx, qword [rsp + 0x48]
mov dword [rsp + 0x38], ecx
mov word [rsp + 0x30], ax
mov qword [rsp + 0x28], rcx
mov rcx, r13
mov qword [rsp + 0x20], r14
call fcn.1402c8840
mov rbx, rax
test rax, rax
je 0x1402aeea2
movzx r14d, byte [rax + 0x4b]
mov r8, r12
mov r9d, r14d
mov edx, esi
mov rcx, r13
call fcn.1402d7190
test r14d, r14d
je 0x1402aeca9
mov rax, qword [r12 + 0x30]
test rax, rax
je 0x1402aeca9
mov r9d, dword [rax + 0x18]
mov edx, r14d
mov r8d, dword [rax + 0x14]
mov rcx, r13
call fcn.14021bc10
test esi, esi
je 0x1402aed08
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1402aecd6
xor eax, eax
mov r9d, esi
mov rcx, rdi
mov dword [rsp + 0x20], eax
lea edx, [rax + 0x47]
lea r8d, [rax + 1]
call fcn.1402471f0
jmp 0x1402aed08
lea eax, [rcx + 1]
xor edx, edx
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x47
mov dword [rax + rcx*8 + 4], 1
mov dword [rax + rcx*8 + 8], esi
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rdx
test r15b, r15b
je 0x1402aed56
test byte [rbx + 0x4c], 4
je 0x1402aed56
cmp byte [rbx + 0x49], 0
je 0x1402aed56
movzx edx, byte [rbx + 0x48]
sub rdx, 1
js 0x1402aed4b
imul rcx, rdx, 0x70
add rcx, rbx
nop word [rax + rax]
mov rax, qword [rcx + 0x3d0]
test byte [rax + 0x38], 4
jne 0x1402aedda
sub rcx, 0x70
sub rdx, 1
jns 0x1402aed30
mov edx, dword [rbx + 0x3c]
mov rcx, rdi
call fcn.1402c1f00
mov rcx, rbx
call fcn.1402ccdd0
mov rdx, r12
mov rcx, r13
call fcn.14021b330
mov ebx, dword [rsp + 0x70]
xor r12d, r12d
mov rdx, qword [rbp + 0x50]
mov r8d, ebx
mov rcx, r13
mov qword [rbp + 0x60], r12
lea r9d, [r12 + 0x10]
call fcn.140287e70
mov rsi, qword [rbp + 0xf0]
lea r8d, [r12 - 1]
mov rdx, qword [rbp + 0xe8]
xor r9d, r9d
mov dword [rsp + 0x38], ebx
mov rcx, r13
mov dword [rsp + 0x30], ebx
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], r12
call fcn.140266450
mov rcx, qword [rdi + 0x18]
not ebx
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x1402aede5
mov r8d, ebx
mov rdx, rdi
call fcn.14025e8a0
mov rbx, qword [rbp + 0xe8]
jmp 0x1402aedfc
mov edx, dword [rcx + 0x380]
jmp 0x1402aed4e
movsxd rdx, ebx
mov rbx, qword [rbp + 0xe8]
mov rcx, qword [rcx + 0x50]
mov eax, dword [rdi + 0x90]
mov dword [rcx + rdx*4], eax
cmp byte [rsp + 0x5c], 3
jne 0x1402aee1b
lea r9, str.DISTINCT
xor edx, edx
lea r8, str.USE_TEMP_B_TREE_FOR__s
mov rcx, r13
call fcn.1402c17c0
cmp qword [rbp + 0x60], 0
je 0x1402aee64
cmp dword [rbp + 0x68], 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.1402c17c0
mov rax, qword [rbp - 0x60]
lea r8, [rbp + 0x60]
mov rdx, rbx
mov qword [rsp + 0x20], rsi
mov rcx, r13
mov r9d, dword [rax]
call fcn.140242520
mov rcx, qword [rdi + 0x18]
mov edx, dword [rbp + 0x48]
not edx
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x1402aee82
mov r8d, edx
mov rdx, rdi
call fcn.14025e8a0
jmp 0x1402aee93
mov r8, qword [rcx + 0x50]
mov eax, dword [rdi + 0x90]
movsxd r9, edx
mov dword [r8 + r9*4], eax
cmp dword [r13 + 0x30], 0
mov eax, r12d
setg al
mov dword [rsp + 0x78], eax
mov r14, qword [rsp + 0x68]
mov rax, qword [rbp + 0x58]
test rax, rax
je 0x1402aeed3
mov rdx, rax
mov rcx, r14
call fcn.140219f50
mov rcx, r13
call fcn.1402c1900
mov eax, dword [rsp + 0x78]
jmp 0x1402aba2d
mov r13, qword [rbp + 0xe0]
mov rcx, r13
call fcn.1402c1900
mov eax, dword [rsp + 0x78]
jmp 0x1402aba2d
mov eax, 1
add rsp, 0x1a8
pop r14
pop r13
pop r12
pop rdi
pop rbx
pop rbp
ret