Function at 0x1400aab90
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 r13
push r14
push r15
lea rbp, [rsp - 0xa0]
sub rsp, 0x1a0
mov rdi, qword [rcx + 0x10]
xor ebx, ebx
mov rax, qword [rcx]
mov r15d, 1
mov dword [rbp - 0x68], r15d
mov r13, r8
mov qword [rbp + 0x18], rbx
mov rsi, rdx
mov qword [rsp + 0x68], rax
mov r14, rcx
test rdi, rdi
jne 0x1400aabfd
cmp qword [rcx + 0xa8], rbx
jne 0x1400aabf5
test byte [rax + 0x60], 8
jne 0x1400aabf5
mov byte [rcx + 0x23], r15b
call fcn.1400b6e70
mov rdi, rax
test rsi, rsi
je 0x1400ade12
cmp dword [r14 + 0x30], ebx
jne 0x1400ade12
xor r9d, r9d
mov qword [rsp + 0x20], rbx
xor r8d, r8d
mov rcx, r14
lea edx, [r9 + 0x15]
call fcn.14007a0c0
test eax, eax
jne 0x1400ade12
cmp byte [r13], 6
ja 0x1400aac5f
mov r8, qword [rsi + 0x48]
test r8, r8
je 0x1400aac52
lea rdx, [0x14008ec10]
mov rcx, r14
call fcn.1400a0030
mov qword [rsi + 0x48], rbx
mov eax, dword [rsi + 4]
and eax, 0xfffffffe
bts eax, 0x16
mov dword [rsi + 4], eax
xor r8d, r8d
mov qword [rsp + 0x198], r12
mov rdx, rsi
mov rcx, r14
call fcn.1400ae7a0
lea rdx, [0x140119dd0]
cmp dword [r14 + 0x30], ebx
jne 0x1400aaf41
mov r10d, dword [rsi + 4]
bt r10d, 0x17
jae 0x1400aacd2
mov rdx, qword [rsi + 0x28]
lea r11, [rdx + 8]
mov rcx, r11
call fcn.1400738b0
test eax, eax
je 0x1400aacc9
mov r8, qword [r11 + 0x18]
test r8, r8
jne 0x1400aacb5
mov rax, qword [r11 + 0x20]
mov r8, qword [rax]
lea rdx, str.target_object_alias_may_not_appear_in_FROM_clause:__s
mov rcx, r14
call fcn.1400886c0
jmp 0x1400aaf3a
btr r10d, 0x17
mov dword [rsi + 4], r10d
cmp byte [r13], 9
jne 0x1400aace4
mov rdx, rsi
mov rcx, r14
call fcn.140092e40
mov rdx, rsi
mov rcx, r14
call fcn.1400d0ee0
test eax, eax
jne 0x1400aaf3a
mov eax, dword [rsi + 4]
xorps xmm0, xmm0
mov r9, qword [rsi + 0x28]
mov r12d, ebx
shr eax, 3
and eax, r15d
mov qword [rsp + 0x40], r9
mov r15, qword [rsi + 0x48]
movups xmmword [rbp + 0x20], xmm0
mov qword [rsp + 0x58], r15
mov qword [rbp + 0x20], r15
mov dword [rsp + 0x64], eax
movups xmmword [rbp + 0x30], xmm0
movups xmmword [rbp + 0x40], xmm0
cmp qword [rsi + 0x50], rbx
jne 0x1400aaee2
mov r10, qword [rsp + 0x68]
mov r13, rbx
nop
cmp r12d, dword [r9]
jge 0x1400aaf77
imul rsi, r13, 0x68
add rsi, r9
movzx eax, byte [rsi + 0x44]
mov rdx, qword [rsi + 0x28]
and al, 0x18
mov r15, qword [rsi + 0x30]
mov qword [rbp + 0xf8], rdx
cmp al, 8
jne 0x1400aadce
mov rax, qword [rbp + 0xe8]
mov edx, dword [rsi + 0x4c]
mov rcx, qword [rax + 0x30]
call fcn.14008e500
mov r10, qword [rsp + 0x68]
test eax, eax
je 0x1400aadc2
test dword [r10 + 0x60], 0x2000
jne 0x1400aadc2
and byte [rsi + 0x44], 0xd7
mov rax, qword [rsp + 0x40]
mov edx, dword [rsi + 0x4c]
mov rsi, qword [rbp + 0xe8]
movzx r8d, byte [rax + 0x44]
and r8d, 0x40
mov rcx, qword [rsi + 0x30]
call fcn.1400d4c80
mov rdx, qword [rbp + 0xf8]
mov r9, qword [rsp + 0x40]
jmp 0x1400aadd5
mov r9, qword [rsp + 0x40]
mov rdx, qword [rbp + 0xf8]
mov rsi, qword [rbp + 0xe8]
test r15, r15
je 0x1400aaec6
mov rax, qword [r15 + 0x20]
movsx r8d, word [rdx + 0x36]
mov ecx, dword [rax]
cmp r8d, ecx
jne 0x1400aaf1e
mov eax, dword [r15 + 4]
test al, 8
jne 0x1400aaec6
mov r8, qword [r15 + 0x48]
test r8, r8
je 0x1400aae65
cmp qword [rsi + 0x48], rbx
jne 0x1400aae13
cmp dword [r9], 1
jle 0x1400aae47
cmp qword [r15 + 0x60], rbx
jne 0x1400aae47
bt eax, 0x1b
jb 0x1400aae47
test dword [rsi + 4], 0x8000000
jne 0x1400aae47
test dword [r10 + 0x60], 0x40000
jne 0x1400aae47
lea rdx, [0x14008ec10]
mov rcx, r14
call fcn.1400a0030
mov qword [r15 + 0x48], rbx
jmp 0x1400aae65
test r12d, r12d
jne 0x1400aae65
test dword [rsi + 4], 0x40000
je 0x1400aae65
cmp dword [r9], 1
je 0x1400aaec6
test byte [r9 + 0xac], 0x22
jne 0x1400aaec6
mov r9d, dword [rsp + 0x64]
mov r8d, r12d
mov rdx, rsi
mov rcx, r14
call fcn.1400589f0
test eax, eax
je 0x1400aae93
cmp dword [r14 + 0x30], ebx
jne 0x1400aaf34
mov r12d, 0xffffffff
mov r13, 0xffffffffffffffff
mov r10, qword [rsp + 0x68]
mov r9, qword [rsi + 0x28]
mov qword [rsp + 0x40], r9
cmp byte [r10 + 0x67], bl
jne 0x1400aaf34
mov rax, qword [rbp + 0xf0]
cmp byte [rax], 8
jbe 0x1400aaec6
mov r15, qword [rsi + 0x48]
mov qword [rsp + 0x58], r15
mov qword [rbp + 0x20], r15
jmp 0x1400aaecb
mov r15, qword [rsp + 0x58]
inc r12d
inc r13
cmp qword [rsi + 0x50], rbx
je 0x1400aad40
mov r13, qword [rbp + 0xf0]
mov r8, r13
mov rdx, rsi
mov rcx, r14
call fcn.140064050
mov r9d, eax
cmp qword [rsi + 0x58], rbx
jne 0x1400aaf01
mov rcx, r14
call fcn.1400c0bc0
mov eax, r9d
mov r12, qword [rsp + 0x198]
add rsp, 0x1a0
pop r15
pop r14
pop r13
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov r9, qword [rdx]
lea rdx, str.expected__d_columns_for__s_but_got__d
mov dword [rsp + 0x20], ecx
mov rcx, r14
call fcn.1400886c0
mov r15d, 1
lea rdx, [0x140119dd0]
movsxd rcx, dword [r14 + 0x140]
test ecx, ecx
je 0x1400aaf6b
mov r8, qword [r14 + 0x10]
mov rax, qword [r8]
cmp byte [rax + 0x67], 0
jne 0x1400aaf68
lea rdx, [rcx + rcx*2]
mov rcx, qword [r8 + 0x88]
lea rdx, [rcx + rdx*8]
mov ebx, dword [rdx + 8]
mov dword [r14 + 0x140], ebx
mov eax, r15d
jmp 0x1400aaf04
mov rax, qword [rsi + 0x30]
test rax, rax
je 0x1400aaf9f
cmp byte [rax], 0x2c
jne 0x1400aaf9f
test dword [r10 + 0x60], 0x8000
jne 0x1400aaf9f
mov rdx, rsi
mov rcx, r14
call fcn.14006ccb0
mov r9, qword [rsp + 0x40]
lea rdx, [0x140102bc8]
mov ecx, ebx
mov dword [rbp + 0xf8], ebx
cmp dword [r9], ebx
jle 0x1400ab716
mov rax, rbx
mov qword [rbp - 0x48], rbx
mov qword [rsp + 0x40], r9
nop dword [rax]
nop word [rax + rax]
imul rax, rax, 0x68
lea rsi, [r9 + 8]
add rsi, rax
cmp qword [rsi + 0x50], rbx
jne 0x1400ab00e
mov r8, qword [rsi + 0x10]
test r8, r8
je 0x1400ab00e
mov rax, qword [rsi + 8]
mov r9, rdx
mov edx, 0x14
mov qword [rsp + 0x20], rax
mov rcx, r14
call fcn.14007a0c0
mov ecx, dword [rbp + 0xf8]
mov r9, qword [rsp + 0x40]
mov r12, qword [rsi + 0x28]
mov qword [rsp + 0x48], r12
test r12, r12
je 0x1400ab6e7
mov r15, qword [rbp + 0xe8]
lea rdx, [rsp + 0x74]
mov rcx, r15
mov dword [rsp + 0x74], ebx
call fcn.14005d010
mov eax, dword [rsp + 0x74]
add dword [r14 + 0x13c], eax
mov rax, qword [rsp + 0x68]
test dword [rax + 0x60], 0x1000
jne 0x1400ab07a
test dword [rsi + 0x40], 0x100
je 0x1400ab068
mov rax, qword [rsi + 0x60]
cmp byte [rax + 0x12], bl
je 0x1400ab07a
cmp dword [rax], 2
jge 0x1400ab07a
mov r8, qword [r15 + 0x30]
mov r9, rsi
mov rdx, r12
mov rcx, r14
call fcn.14006d330
mov rax, qword [r14 + 0x178]
mov r8d, dword [rbp + 0xf8]
mov qword [rbp - 0x40], rax
mov rax, qword [rsi + 0x10]
mov qword [r14 + 0x178], rax
mov eax, dword [rsi + 0x40]
mov r13d, dword [r15 + 4]
and eax, 0x100
mov dword [rbp - 0x80], eax
mov r15d, r8d
je 0x1400ab0c9
mov rax, qword [rsi + 0x60]
movzx ecx, byte [rax + 0x12]
test cl, cl
je 0x1400ab305
cmp dword [rax], 2
jl 0x1400ab0c9
cmp cl, 2
jne 0x1400ab305
mov rcx, qword [rsp + 0x40]
test byte [rcx + 0x44], 0x40
jne 0x1400ab2a5
mov rax, qword [r14]
test dword [rax + 0x60], 0x2000000
jne 0x1400ab2a5
mov r12d, dword [rcx]
inc r8d
mov r9d, r12d
mov rdx, rsi
call fcn.14005eae0
test rax, rax
jne 0x1400ab28c
cmp qword [rbp - 0x48], rbx
jne 0x1400ab165
cmp r12d, 1
je 0x1400ab127
mov rax, qword [rsp + 0x40]
test byte [rax + 0xac], 2
jne 0x1400ab127
bt r13d, 0x1c
jb 0x1400ab29b
movsxd r13, dword [rdi + 0x90]
inc dword [r14 + 0x38]
mov edx, dword [r14 + 0x38]
mov dword [rsi + 0x34], edx
movsxd rcx, dword [rdi + 0x90]
lea r15d, [r13 + 1]
cmp dword [rdi + 0x94], ecx
jg 0x1400ab1ad
xor r9d, r9d
mov dword [rsp + 0x20], r15d
mov r8d, edx
mov rcx, rdi
lea edx, [r9 + 0xb]
call fcn.14005c9a0
jmp 0x1400ab1da
bt r13d, 0x1c
jb 0x1400ab28c
test byte [rsi + 0x3c], 0x22
lea rax, [rsi + 0x3c]
jne 0x1400ab28c
nop
test r15d, r15d
je 0x1400ab127
sub rax, 0x68
dec r15d
cmp qword [rax - 0x14], rbx
jne 0x1400ab197
test byte [rax], 0x22
je 0x1400ab180
mov r12, qword [rsp + 0x48]
mov r8d, dword [rbp + 0xf8]
mov rax, qword [rsp + 0x40]
jmp 0x1400ab2a8
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0xb
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], rbx
mov eax, dword [rsi + 0x34]
lea r8, str.CO_ROUTINE___S
mov r9, rsi
mov dword [rbp - 0x34], eax
mov edx, 1
mov dword [rsi + 0x30], r15d
mov rcx, r14
mov byte [rbp - 0x38], 0xd
mov qword [rbp - 0x30], rbx
mov qword [rbp - 0x20], rbx
mov dword [rbp - 0x28], ebx
call fcn.1400c0a60
mov r15, qword [rsp + 0x48]
lea r8, [rbp - 0x38]
mov rdx, r15
mov rcx, r14
call fcn.1400aab90
movzx eax, word [r15 + 2]
mov rcx, qword [rsi + 0x20]
mov word [rcx + 0x3a], ax
mov rcx, rdi
mov eax, dword [rbp - 0x2c]
mov edx, dword [rsi + 0x34]
or dword [rsi + 0x40], 0x20
mov dword [rsi + 0x38], eax
call fcn.1400b7480
mov rax, qword [rdi]
mov edx, dword [rdi + 0x90]
cmp byte [rax + 0x67], bl
je 0x1400ab265
lea rax, [0x140119dd0]
mov dword [rax + 8], edx
mov byte [r14 + 0x1f], bl
mov dword [r14 + 0x28], ebx
jmp 0x1400ab69e
mov rax, qword [rdi + 0x88]
lea rcx, [r13*2]
add rcx, r13
mov dword [rax + rcx*8 + 8], edx
mov byte [r14 + 0x1f], bl
lea rax, [rax + rcx*8]
mov dword [r14 + 0x28], ebx
jmp 0x1400ab69e
mov r12, qword [rsp + 0x48]
mov r8d, r15d
mov rax, qword [rsp + 0x40]
jmp 0x1400ab2a8
mov r12, qword [rsp + 0x48]
mov r8d, r15d
jmp 0x1400ab2a8
mov rax, rcx
cmp dword [rbp - 0x80], ebx
jne 0x1400ab30a
mov r9d, r8d
mov rdx, rsi
xor r8d, r8d
mov rcx, rax
call fcn.14005eae0
mov r15, rax
test rax, rax
je 0x1400ab494
mov edx, dword [rax + 0x30]
test edx, edx
je 0x1400ab416
movsxd rcx, dword [rdi + 0x90]
mov r8d, dword [rax + 0x34]
cmp dword [rdi + 0x94], ecx
jg 0x1400ab3e9
mov r9d, edx
mov dword [rsp + 0x20], ebx
mov edx, 0xa
mov rcx, rdi
call fcn.14005c9a0
jmp 0x1400ab416
mov rax, qword [rsp + 0x40]
mov r15, qword [rsi + 0x60]
mov edx, dword [r15 + 4]
test edx, edx
jle 0x1400ab2ad
movsxd rcx, dword [rdi + 0x90]
mov r8d, dword [r15 + 8]
cmp dword [rdi + 0x94], ecx
jg 0x1400ab33f
mov r9d, edx
mov dword [rsp + 0x20], ebx
mov edx, 0xa
mov rcx, rdi
call fcn.14005c9a0
jmp 0x1400ab36c
lea eax, [rcx + 1]
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], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], rbx
mov edx, dword [r15 + 0xc]
mov r8d, dword [rsi + 0x44]
cmp r8d, edx
je 0x1400ab3d9
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1400ab3ac
mov r9d, edx
mov dword [rsp + 0x20], ebx
mov edx, 0x73
mov rcx, rdi
call fcn.14005c9a0
movzx eax, word [r15 + 0x10]
mov word [r12 + 2], ax
jmp 0x1400ab69e
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x73
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], rbx
movzx eax, word [r15 + 0x10]
mov word [r12 + 2], ax
jmp 0x1400ab69e
lea eax, [rcx + 1]
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], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], rbx
movsxd rcx, dword [rdi + 0x90]
mov edx, dword [r15 + 0x44]
mov r8d, dword [rsi + 0x44]
cmp dword [rdi + 0x94], ecx
jg 0x1400ab454
mov r9d, edx
mov dword [rsp + 0x20], ebx
mov edx, 0x73
mov rcx, rdi
call fcn.14005c9a0
mov rax, qword [r15 + 0x28]
movzx ecx, word [rax + 2]
mov word [r12 + 2], cx
jmp 0x1400ab69e
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x73
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], rbx
mov rax, qword [r15 + 0x28]
movzx ecx, word [rax + 2]
mov word [r12 + 2], cx
jmp 0x1400ab69e
inc dword [r14 + 0x38]
mov r15d, ebx
mov eax, dword [r14 + 0x38]
mov dword [rsi + 0x34], eax
movsxd r13, dword [rdi + 0x90]
cmp dword [rdi + 0x94], r13d
jg 0x1400ab4cd
xor r9d, r9d
mov dword [rsp + 0x20], ebx
xor r8d, r8d
mov rcx, rdi
lea edx, [r9 + 9]
call fcn.14005c9a0
mov r13d, eax
jmp 0x1400ab4fb
lea eax, [r13 + 1]
mov dword [rdi + 0x90], eax
lea rcx, [r13*2]
mov rax, qword [rdi + 0x88]
add rcx, r13
mov qword [rax + rcx*8], 9
mov qword [rax + rcx*8 + 8], rbx
mov qword [rax + rcx*8 + 0x10], rbx
or dword [rsi + 0x40], 0x10
lea r12d, [r13 + 1]
test byte [rsi + 0x40], 8
mov dword [rsi + 0x30], r12d
jne 0x1400ab55f
movsxd r15, dword [rdi + 0x90]
cmp dword [rdi + 0x94], r15d
jg 0x1400ab538
xor r9d, r9d
mov dword [rsp + 0x20], ebx
xor r8d, r8d
mov rcx, rdi
lea edx, [r9 + 0xf]
call fcn.14005c9a0
mov r15d, eax
jmp 0x1400ab55f
lea rcx, [r15 + r15*2]
lea eax, [r15 + 1]
mov dword [rdi + 0x90], eax
mov rax, qword [rdi + 0x88]
mov qword [rax + rcx*8], 0xf
mov qword [rax + rcx*8 + 8], rbx
mov qword [rax + rcx*8 + 0x10], rbx
mov eax, dword [rsi + 0x44]
lea r8, str.MATERIALIZE___S
mov r9, rsi
mov dword [rbp - 0x34], eax
mov edx, 1
mov byte [rbp - 0x38], 0xc
mov rcx, r14
mov qword [rbp - 0x30], rbx
mov qword [rbp - 0x20], rbx
mov dword [rbp - 0x28], ebx
call fcn.1400c0a60
mov rdx, qword [rsp + 0x48]
lea r8, [rbp - 0x38]
mov rcx, r14
call fcn.1400aab90
mov r8, qword [rsp + 0x48]
mov rcx, qword [rsi + 0x20]
movzx eax, word [r8 + 2]
mov word [rcx + 0x3a], ax
test r15d, r15d
je 0x1400ab5df
mov rax, qword [rdi]
mov edx, dword [rdi + 0x90]
cmp byte [rax + 0x67], bl
je 0x1400ab5ca
lea rax, [0x140119dd0]
jmp 0x1400ab5dc
movsxd rax, r15d
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 0x1400ab60f
mov r8d, edx
mov dword [rsp + 0x20], ebx
mov edx, 0x43
mov r9d, r12d
mov rcx, rdi
call fcn.14005c9a0
mov r8, qword [rsp + 0x48]
jmp 0x1400ab63c
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], edx
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], rbx
mov rax, qword [rdi]
mov edx, dword [rdi + 0x90]
cmp byte [rax + 0x67], bl
je 0x1400ab653
lea rax, [0x140119dd0]
jmp 0x1400ab665
movsxd rax, r13d
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
mov byte [r14 + 0x1f], bl
mov dword [r14 + 0x28], ebx
mov eax, dword [rsi + 0x40]
and eax, 0x108
cmp eax, 0x100
jne 0x1400ab69e
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 [r8 + 2]
mov word [rcx + 0x10], ax
mov rax, qword [rsp + 0x68]
cmp byte [rax + 0x67], bl
jne 0x1400aaf34
mov rsi, qword [rbp + 0xe8]
lea rdx, [rsp + 0x74]
mov rcx, rsi
mov dword [rsp + 0x74], ebx
call fcn.14005d010
mov rax, qword [rbp - 0x40]
mov edx, dword [rsp + 0x74]
sub dword [r14 + 0x13c], edx
mov ecx, dword [rbp + 0xf8]
mov r9, qword [rsp + 0x40]
mov qword [r14 + 0x178], rax
jmp 0x1400ab6ee
mov rsi, qword [rbp + 0xe8]
mov rax, qword [rbp - 0x48]
lea rdx, [0x140102bc8]
inc rax
inc ecx
mov dword [rbp + 0xf8], ecx
mov qword [rbp - 0x48], rax
cmp ecx, dword [r9]
jl 0x1400aafd0
mov r15, qword [rsp + 0x58]
mov rax, qword [rsi + 0x30]
mov ecx, dword [rsi + 4]
movzx r12d, byte [rsi + 4]
mov rdx, qword [rsi + 0x20]
and r12b, 1
mov qword [rbp - 0x50], rax
mov rax, qword [rsi + 0x38]
mov qword [rsp + 0x48], rax
mov rax, qword [rsi + 0x40]
mov qword [rbp - 0x48], rax
mov eax, ecx
and al, 9
mov qword [rbp - 0x60], rdx
mov byte [rbp + 0xf8], r12b
mov byte [rbp - 8], r12b
cmp al, 1
jne 0x1400ab803
test r15, r15
jne 0x1400ab76a
test rdx, rdx
jne 0x1400ab803
jmp 0x1400ab7d2
test rdx, rdx
je 0x1400ab803
mov eax, dword [r15]
cmp eax, dword [rdx]
jne 0x1400ab803
mov r15d, ebx
test eax, eax
jle 0x1400ab7d2
mov r12, qword [rsp + 0x58]
lea rsi, [rdx + 0x18]
mov r13, r12
sub r13, rdx
movzx eax, byte [rsi]
cmp byte [rsi + r13], al
jne 0x1400ab803
mov r8, qword [rsi - 0x10]
mov r9d, 0xffffffff
mov rdx, qword [rsi + r13 - 0x10]
xor ecx, ecx
call fcn.14008d380
test eax, eax
jne 0x1400ab803
inc r15d
add rsi, 0x20
cmp r15d, dword [r12]
jl 0x1400ab794
mov rsi, qword [rbp + 0xe8]
mov rdx, qword [rbp - 0x60]
mov ecx, dword [rsi + 4]
cmp qword [rsi + 0x70], rbx
jne 0x1400ab803
and ecx, 0xfffffffe
xor r8d, r8d
mov dword [rsi + 4], ecx
mov rcx, qword [rsp + 0x68]
call fcn.14008ec20
or dword [rsi + 4], 8
mov qword [rsp + 0x48], rax
mov qword [rsi + 0x38], rax
mov al, 2
mov byte [rbp + 0xf8], al
mov byte [rbp - 8], al
mov r13, qword [rsp + 0x58]
mov r12, qword [rbp - 0x60]
test r13, r13
je 0x1400ab91f
mov r9d, dword [r12]
xor r8d, r8d
mov rdx, r13
mov rcx, r14
call fcn.14009aad0
mov r8d, dword [r14 + 0x34]
mov rsi, rax
mov dword [rbp + 0x2c], r8d
lea ecx, [r8 + 1]
mov dword [r14 + 0x34], ecx
movsxd r15, dword [rdi + 0x90]
mov r9d, dword [r12]
inc r9d
mov dword [rbp - 0x78], r15d
add r9d, dword [r13]
cmp dword [rdi + 0x94], r15d
jg 0x1400ab872
mov edx, 0x76
mov dword [rsp + 0x20], ebx
mov rcx, rdi
call fcn.14005c9a0
mov r15d, eax
mov dword [rbp - 0x78], eax
jmp 0x1400ab8a1
lea rcx, [r15 + r15*2]
lea eax, [r15 + 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], ebx
mov qword [rax + rcx*8 + 0x10], rbx
mov rcx, qword [rdi]
mov eax, r15d
cmp byte [rcx + 0x67], bl
je 0x1400ab8d1
cmp qword [rcx + 0x308], rbx
jne 0x1400ab919
test rsi, rsi
je 0x1400ab919
add dword [rsi], 0xffffffff
jne 0x1400ab919
mov rcx, qword [rsi + 0x10]
mov rdx, rsi
call fcn.140085810
mov dword [rbp + 0x38], r15d
jmp 0x1400ab92a
test r15d, r15d
jns 0x1400ab8de
mov eax, dword [rdi + 0x90]
dec eax
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 0x88]
cmp byte [rax + rcx*8 + 1], bl
lea rdx, [rax + rcx*8]
je 0x1400ab90c
mov r9d, 0xfffffff8
mov r8, rsi
mov rcx, rdi
call fcn.1400d7000
mov dword [rbp + 0x38], r15d
jmp 0x1400ab92a
test rsi, rsi
je 0x1400ab919
mov qword [rdx + 0x10], rsi
mov byte [rdx + 1], 0xf8
mov dword [rbp + 0x38], r15d
jmp 0x1400ab92a
mov eax, 0xffffffff
mov dword [rbp - 0x78], eax
mov dword [rbp + 0x38], eax
mov rax, qword [rbp + 0xf0]
cmp byte [rax], 0xc
jne 0x1400aba61
mov r9d, dword [r12]
mov edx, 0x76
mov r8d, dword [rax + 4]
mov rcx, rdi
call fcn.1400b6330
mov r12, qword [rbp + 0xe8]
test dword [r12 + 4], 0x800
je 0x1400aba68
mov r8, qword [rbp - 0x60]
mov ecx, dword [r8]
lea eax, [rcx - 1]
movsxd r15, eax
test eax, eax
jle 0x1400aba3e
mov r13, qword [rsp + 0x68]
mov rsi, r15
shl rsi, 5
nop word [rax + rax]
test byte [rsi + r8 + 0x1c], 0x40
jne 0x1400aba39
mov rdx, qword [rsi + r8 + 8]
test rdx, rdx
je 0x1400ab9b2
mov rcx, r13
call fcn.14008d8d0
mov r8, qword [rbp - 0x60]
mov rcx, qword [rsi + r8 + 0x10]
test rcx, rcx
je 0x1400aba21
test r13, r13
je 0x1400aba18
cmp rcx, qword [r13 + 0x1f0]
jae 0x1400aba02
cmp rcx, qword [r13 + 0x1e0]
jb 0x1400ab9e6
mov rax, qword [r13 + 0x1d8]
mov qword [rcx], rax
mov qword [r13 + 0x1d8], rcx
jmp 0x1400aba21
cmp rcx, qword [r13 + 0x1e8]
jb 0x1400aba02
mov rax, qword [r13 + 0x1c8]
mov qword [rcx], rax
mov qword [r13 + 0x1c8], rcx
jmp 0x1400aba21
cmp qword [r13 + 0x308], rbx
je 0x1400aba18
mov rdx, rcx
mov rcx, r13
call fcn.1400636c0
jmp 0x1400aba1d
call fcn.140038bd0
mov r8, qword [rbp - 0x60]
mov ecx, dword [r8]
dec r15
dec ecx
sub rsi, 0x20
mov dword [r8], ecx
test r15, r15
jg 0x1400ab990
mov r13, qword [rsp + 0x58]
mov edx, ebx
test ecx, ecx
jle 0x1400aba68
lea rcx, [r8 + 8]
test byte [rcx + 0x14], 0x40
jne 0x1400aba54
mov rax, qword [rcx]
mov byte [rax], 0x79
inc edx
add rcx, 0x20
cmp edx, dword [r8]
jl 0x1400aba48
jmp 0x1400aba68
mov r12, qword [rbp + 0xe8]
mov eax, dword [r14 + 0x44]
mov ecx, 0x4000
dec eax
mov dword [r14 + 0x44], eax
mov dword [rbp + 0x10], eax
test dword [r12 + 4], ecx
jne 0x1400aba8c
mov ecx, 0x140
mov word [r12 + 2], cx
cmp qword [r12 + 0x60], rbx
je 0x1400abaa1
mov r8d, eax
mov rdx, r12
mov rcx, r14
call fcn.14004b4c0
cmp dword [r12 + 8], ebx
jne 0x1400abad7
movsxd rcx, dword [rbp - 0x78]
test ecx, ecx
js 0x1400abad7
mov rax, qword [rdi]
cmp byte [rax + 0x67], bl
je 0x1400abac1
lea rax, [0x140119dd0]
jmp 0x1400abad0
mov rax, qword [rdi + 0x88]
lea rcx, [rcx + rcx*2]
lea rax, [rax + rcx*8]
or byte [rbp + 0x44], 1
mov byte [rax], 0x77
test byte [r12 + 4], 1
je 0x1400abbfc
mov r13d, dword [r14 + 0x34]
xor r9d, r9d
xor r8d, r8d
mov dword [rbp - 4], r13d
mov rcx, r14
lea eax, [r13 + 1]
mov dword [r14 + 0x34], eax
mov rdx, qword [r12 + 0x20]
call fcn.14009aad0
movsxd r15, dword [rdi + 0x90]
mov rsi, rax
cmp dword [rdi + 0x94], r15d
jg 0x1400abb34
xor r9d, r9d
mov dword [rsp + 0x20], ebx
mov r8d, r13d
mov rcx, rdi
lea edx, [r9 + 0x76]
call fcn.14005c9a0
mov r15d, eax
jmp 0x1400abb5f
lea rcx, [r15 + r15*2]
lea eax, [r15 + 1]
mov dword [rdi + 0x90], eax
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x76
mov dword [rax + rcx*8 + 4], r13d
mov qword [rax + rcx*8 + 8], rbx
mov qword [rax + rcx*8 + 0x10], rbx
mov rcx, qword [rdi]
mov eax, r15d
cmp byte [rcx + 0x67], bl
je 0x1400abb8b
cmp qword [rcx + 0x308], rbx
jne 0x1400abbcf
test rsi, rsi
je 0x1400abbcf
add dword [rsi], 0xffffffff
jne 0x1400abbcf
mov rcx, qword [rsi + 0x10]
mov rdx, rsi
call fcn.140085810
jmp 0x1400abbcf
test r15d, r15d
jns 0x1400abb98
mov eax, dword [rdi + 0x90]
dec eax
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 0x88]
cmp byte [rax + rcx*8 + 1], bl
lea rdx, [rax + rcx*8]
je 0x1400abbc2
mov r9d, 0xfffffff8
mov r8, rsi
mov rcx, rdi
call fcn.1400d7000
jmp 0x1400abbcf
test rsi, rsi
je 0x1400abbcf
mov qword [rdx + 0x10], rsi
mov byte [rdx + 1], 0xf8
movsxd rax, dword [rdi + 0x90]
mov dword [rbp], r15d
test eax, eax
jle 0x1400abbf3
lea rcx, [rax + rax*2]
mov edx, 8
mov rax, qword [rdi + 0x88]
mov word [rax + rcx*8 - 0x16], dx
mov r13, qword [rsp + 0x58]
mov al, 3
jmp 0x1400abbfe
xor al, al
mov r15, qword [rsp + 0x48]
mov byte [rbp - 7], al
mov dword [rbp - 0x58], eax
cmp dword [rsp + 0x64], ebx
jne 0x1400abecb
test r15, r15
jne 0x1400abecb
movzx r13d, byte [rbp + 0xf8]
mov ecx, 0x4000
mov r15, qword [r12 + 0x70]
movzx eax, r13b
neg al
movzx eax, word [r12 + 4]
sbb si, si
and ax, cx
and si, 0x100
or si, ax
test r15, r15
je 0x1400abc58
mov rdx, r12
mov rcx, r14
call fcn.1400ce5b0
movsx eax, word [r12 + 2]
mov rcx, r14
mov r9, qword [rsp + 0x58]
mov r8, qword [rbp - 0x50]
mov rdx, qword [rsp + 0x40]
mov dword [rsp + 0x38], eax
mov rax, qword [r12 + 0x20]
mov word [rsp + 0x30], si
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], rax
call fcn.1400c7aa0
mov rsi, rax
test rax, rax
je 0x1400aaf34
movzx eax, word [rax + 0x48]
cmp ax, word [r12 + 2]
jge 0x1400abcaa
mov word [r12 + 2], ax
test r13b, r13b
je 0x1400abcc4
movzx ecx, byte [rsi + 0x43]
mov eax, dword [rbp - 0x58]
test cl, cl
movzx eax, al
cmovne eax, ecx
mov dword [rbp - 0x58], eax
mov byte [rbp - 7], al
mov r8, qword [rsp + 0x58]
test r8, r8
je 0x1400abd19
movsx eax, byte [rsi + 0x41]
test al, al
jns 0x1400abcdd
mov edx, ebx
mov dword [rbp + 0x28], ebx
jmp 0x1400abce2
mov edx, eax
mov dword [rbp + 0x28], eax
test byte [rsi + 0x44], 4
jne 0x1400abced
mov eax, dword [rsi + 0x30]
jmp 0x1400abd0b
movzx eax, byte [rsi + 0x40]
imul rcx, rax, 0x70
cmp qword [rcx + rsi + 0x328], rbx
je 0x1400abd04
mov eax, dword [rsi + 0x30]
jmp 0x1400abd0b
mov eax, dword [rcx + rsi + 0x300]
cmp edx, dword [r8]
mov dword [rbp + 0x40], eax
cmove r8, rbx
mov qword [rbp + 0x20], r8
mov eax, dword [rbp - 0x78]
test eax, eax
js 0x1400abd2f
test r8, r8
jne 0x1400abd2f
mov edx, eax
mov rcx, rdi
call fcn.1400b6a00
test r15, r15
je 0x1400abe7b
mov r13d, dword [r14 + 0x44]
mov r8, rsi
inc dword [r14 + 0x38]
mov ecx, dword [r14 + 0x38]
mov r9d, ecx
mov rdx, qword [rbp + 0xe8]
lea eax, [r13 - 1]
mov dword [rbp + 0xf8], ecx
sub r13d, 2
mov dword [rbp + 0xe0], eax
mov rcx, r14
mov dword [rsp + 0x20], eax
lea r12d, [r13 - 1]
mov dword [r14 + 0x44], r12d
call fcn.1400cebc0
lea rsi, [rdi + 0x90]
movsxd rcx, dword [rsi]
cmp dword [rdi + 0x94], ecx
jg 0x1400abda3
xor r8d, r8d
mov dword [rsp + 0x20], ebx
mov r9d, r12d
mov rcx, rdi
lea edx, [r8 + 9]
call fcn.14005c9a0
jmp 0x1400abdc9
lea eax, [rcx + 1]
mov dword [rsi], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov qword [rax + rcx*8], 9
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], rbx
mov r9, qword [rdi + 0x18]
lea r15, [rdi + 0x18]
mov ecx, dword [rbp + 0xe0]
not ecx
mov eax, dword [r9 + 0x48]
add eax, dword [r9 + 0x44]
jns 0x1400abdf3
mov r8d, ecx
mov rdx, rdi
mov rcx, r9
call fcn.140070dc0
jmp 0x1400abdff
mov eax, dword [rsi]
movsxd rdx, ecx
mov rcx, qword [r9 + 0x50]
mov dword [rcx + rdx*4], eax
mov rax, qword [rbp + 0xf0]
lea r9, [rbp + 0x20]
mov rdx, qword [rbp + 0xe8]
mov r8d, 0xffffffff
mov dword [rsp + 0x38], r12d
mov rcx, r14
mov dword [rsp + 0x30], r13d
mov qword [rsp + 0x28], rax
lea rax, [rbp - 8]
mov qword [rsp + 0x20], rax
mov dword [rbp + 0x40], ebx
call fcn.140074e30
mov rcx, qword [r15]
not r13d
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x1400abe55
mov r8d, r13d
mov rdx, rdi
call fcn.140070dc0
jmp 0x1400abe62
mov rcx, qword [rcx + 0x50]
mov eax, dword [rsi]
movsxd r9, r13d
mov dword [rcx + r9*4], eax
mov r8d, dword [rbp + 0xf8]
mov edx, 0x43
mov rcx, rdi
call fcn.1400b62c0
jmp 0x1400add60
mov eax, dword [rsi + 0x34]
lea r9, [rbp + 0x20]
mov dword [rsp + 0x38], eax
mov r8d, 0xffffffff
mov eax, dword [rsi + 0x30]
mov rdx, r12
mov dword [rsp + 0x30], eax
mov rcx, r14
mov rax, qword [rbp + 0xf0]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 8]
mov qword [rsp + 0x20], rax
call fcn.140074e30
mov rcx, rsi
call fcn.1400cbb10
lea r15, [rdi + 0x18]
lea rsi, [rdi + 0x90]
jmp 0x1400add87
mov dword [rsp + 0x50], ebx
mov dword [rsp + 0x64], ebx
mov dword [rsp + 0x74], ebx
test r15, r15
je 0x1400abff8
mov rcx, qword [r12 + 0x20]
mov eax, dword [rcx]
test eax, eax
jle 0x1400abefd
add rcx, 0x22
nop
dec eax
mov word [rcx], bx
lea rcx, [rcx + 0x20]
test eax, eax
jg 0x1400abef0
mov eax, dword [r15]
test eax, eax
jle 0x1400abf1d
lea rcx, [r15 + 0x22]
nop dword [rax + rax]
dec eax
mov word [rcx], bx
lea rcx, [rcx + 0x20]
test eax, eax
jg 0x1400abf10
cmp word [r12 + 2], 0x42
jle 0x1400abf31
mov eax, 0x42
mov word [r12 + 2], ax
test r13, r13
je 0x1400abfd3
mov eax, dword [r15]
cmp eax, dword [r13]
jne 0x1400abfd3
mov edx, ebx
test eax, eax
jle 0x1400abf77
mov r8, r13
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 0x1400abf60
cmp eax, dword [r13]
jne 0x1400abfd3
mov r15d, ebx
test eax, eax
jle 0x1400abfc6
lea rsi, [r13 + 0x18]
mov r13, qword [rsp + 0x48]
sub r13, qword [rsp + 0x58]
movzx eax, byte [rsi]
cmp byte [rsi + r13], al
jne 0x1400abfce
mov r8, qword [rsi - 0x10]
mov r9d, 0xffffffff
mov rdx, qword [rsi + r13 - 0x10]
xor ecx, ecx
call fcn.14008d380
test eax, eax
jne 0x1400abfce
mov rax, qword [rsp + 0x48]
inc r15d
add rsi, 0x20
cmp r15d, dword [rax]
jl 0x1400abf92
mov dword [rsp + 0x74], 1
mov r15, qword [rsp + 0x48]
dec dword [r14 + 0x44]
mov eax, dword [r14 + 0x44]
mov dword [rsp + 0x78], eax
mov rax, qword [rsp + 0x68]
test rax, rax
je 0x1400ac000
mov edx, 0x38
mov rcx, rax
call fcn.140085750
jmp 0x1400ac00a
mov word [r12 + 2], bx
jmp 0x1400abfd3
mov ecx, 0x38
call fcn.14009c1e0
mov qword [rbp - 0x80], rax
mov r13, rax
test rax, rax
je 0x1400ac1ec
xorps xmm0, xmm0
xor eax, eax
movups xmmword [r13], xmm0
movups xmmword [r13 + 0x10], xmm0
movups xmmword [r13 + 0x20], xmm0
mov qword [r13 + 0x30], rax
mov rcx, qword [r14]
test rcx, rcx
je 0x1400ac044
lea edx, [rax + 0x18]
call fcn.140085750
jmp 0x1400ac04e
mov ecx, 0x18
call fcn.14009c1e0
mov rcx, rax
test rax, rax
je 0x1400ac085
mov rax, qword [r14 + 0xc0]
mov qword [rcx], rax
lea rax, [0x14003e250]
mov qword [r14 + 0xc0], rcx
mov qword [rcx + 0x10], rax
mov qword [rcx + 8], r13
mov rcx, qword [rsp + 0x40]
mov qword [rsp + 0x40], rcx
jmp 0x1400ac1f1
mov rcx, qword [r13 + 0x18]
mov rsi, qword [r14]
test rcx, rcx
je 0x1400ac0f2
test rsi, rsi
je 0x1400ac0ed
cmp rcx, qword [rsi + 0x1f0]
jae 0x1400ac0d7
cmp rcx, qword [rsi + 0x1e0]
jb 0x1400ac0bb
mov rax, qword [rsi + 0x1d8]
mov qword [rcx], rax
mov qword [rsi + 0x1d8], rcx
jmp 0x1400ac0f2
cmp rcx, qword [rsi + 0x1e8]
jb 0x1400ac0d7
mov rax, qword [rsi + 0x1c8]
mov qword [rcx], rax
mov qword [rsi + 0x1c8], rcx
jmp 0x1400ac0f2
cmp qword [rsi + 0x308], rbx
je 0x1400ac0ed
mov rdx, rcx
mov rcx, rsi
call fcn.1400636c0
jmp 0x1400ac0f2
call fcn.140038bd0
mov rcx, qword [r13 + 0x28]
test rcx, rcx
je 0x1400ac15c
test rsi, rsi
je 0x1400ac157
cmp rcx, qword [rsi + 0x1f0]
jae 0x1400ac141
cmp rcx, qword [rsi + 0x1e0]
jb 0x1400ac125
mov rax, qword [rsi + 0x1d8]
mov qword [rcx], rax
mov qword [rsi + 0x1d8], rcx
jmp 0x1400ac161
cmp rcx, qword [rsi + 0x1e8]
jb 0x1400ac141
mov rax, qword [rsi + 0x1c8]
mov qword [rcx], rax
mov qword [rsi + 0x1c8], rcx
jmp 0x1400ac161
cmp qword [rsi + 0x308], rbx
je 0x1400ac157
mov rdx, rcx
mov rcx, rsi
call fcn.1400636c0
jmp 0x1400ac161
call fcn.140038bd0
test rsi, rsi
je 0x1400ac1d8
cmp r13, qword [rsi + 0x1f0]
jae 0x1400ac1b8
cmp r13, qword [rsi + 0x1e0]
jb 0x1400ac191
mov rax, qword [rsi + 0x1d8]
mov rcx, qword [rsp + 0x40]
mov qword [r13], rax
mov qword [rsi + 0x1d8], r13
mov qword [rsp + 0x40], rcx
jmp 0x1400ac1f1
cmp r13, qword [rsi + 0x1e8]
jb 0x1400ac1b8
mov rax, qword [rsi + 0x1c8]
mov rcx, qword [rsp + 0x40]
mov qword [r13], rax
mov qword [rsi + 0x1c8], r13
mov qword [rsp + 0x40], rcx
jmp 0x1400ac1f1
cmp qword [rsi + 0x308], rbx
je 0x1400ac1d8
mov rdx, r13
mov rcx, rsi
call fcn.1400636c0
mov rcx, qword [rsp + 0x40]
mov qword [rsp + 0x40], rcx
jmp 0x1400ac1f1
mov rcx, r13
call fcn.140038bd0
mov rcx, qword [rsp + 0x40]
mov qword [rsp + 0x40], rcx
jmp 0x1400ac1f1
mov rcx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x68]
cmp byte [rax + 0x67], bl
jne 0x1400aaf34
mov eax, dword [r12 + 0x10]
xorps xmm0, xmm0
mov dword [r13 + 0x34], eax
xorps xmm1, xmm1
mov qword [rbp + 0x50], r14
mov qword [rbp + 0x58], rcx
mov qword [rbp + 0x60], r13
movdqu xmmword [rbp + 0x68], xmm0
movdqu xmmword [rbp + 0x78], xmm1
test r15, r15
je 0x1400ac22e
mov eax, dword [r15]
jmp 0x1400ac230
mov eax, ebx
mov word [r13 + 2], ax
mov rax, qword [rbp - 0x60]
mov qword [r13 + 0x10], r15
test rax, rax
je 0x1400ac2be
lea rsi, [rax + 8]
mov r15d, ebx
cmp dword [rax], ebx
jle 0x1400ac2be
lea r13, [0x14003fad0]
lea r12, [0x1400c7990]
lea r14, [0x1400c7980]
nop dword [rax]
nop word [rax + rax]
mov rdx, qword [rsi]
lea rcx, [rbp + 0x50]
mov qword [rbp - 0x30], r13
mov qword [rbp - 0x28], r12
mov qword [rbp - 0x20], r14
mov dword [rbp - 0x18], ebx
mov qword [rbp - 0x10], rcx
mov qword [rbp - 0x38], rbx
test rdx, rdx
je 0x1400ac2a0
lea rcx, [rbp - 0x38]
call fcn.1400de810
mov rax, qword [rbp - 0x60]
inc r15d
add rsi, 0x20
cmp r15d, dword [rax]
jl 0x1400ac270
mov r14, qword [rbp + 0xe0]
mov r13, qword [rbp - 0x80]
mov r12, qword [rbp + 0xe8]
mov rax, qword [rsp + 0x58]
test rax, rax
je 0x1400ac33f
lea rsi, [rax + 8]
mov r15d, ebx
cmp dword [rax], ebx
jle 0x1400ac33f
lea r12, [0x14003fad0]
lea r13, [0x1400c7990]
lea r14, [0x1400c7980]
nop dword [rax + rax]
mov rdx, qword [rsi]
lea rcx, [rbp + 0x50]
mov qword [rbp - 0x30], r12
mov qword [rbp - 0x28], r13
mov qword [rbp - 0x20], r14
mov dword [rbp - 0x18], ebx
mov qword [rbp - 0x10], rcx
mov qword [rbp - 0x38], rbx
test rdx, rdx
je 0x1400ac321
lea rcx, [rbp - 0x38]
call fcn.1400de810
mov rax, qword [rsp + 0x58]
inc r15d
add rsi, 0x20
cmp r15d, dword [rax]
jl 0x1400ac2f0
mov r14, qword [rbp + 0xe0]
mov r13, qword [rbp - 0x80]
mov r12, qword [rbp + 0xe8]
mov rcx, qword [rbp - 0x48]
mov r15, qword [rsp + 0x48]
test rcx, rcx
je 0x1400ac3d1
test r15, r15
je 0x1400ac395
mov rdx, qword [r12 + 0x40]
lea rax, [0x14005ce00]
mov qword [rbp - 0x18], rbx
xorps xmm0, xmm0
mov qword [rbp - 0x38], r14
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x10], r12
movdqu xmmword [rbp - 0x28], xmm0
test rdx, rdx
je 0x1400ac38c
lea rcx, [rbp - 0x38]
call fcn.1400de810
mov rcx, qword [rbp - 0x48]
mov rax, qword [r12 + 0x30]
mov qword [rbp - 0x50], rax
lea rax, [0x14003fad0]
mov dword [rbp - 0x18], ebx
mov qword [rbp - 0x30], rax
mov rdx, rcx
lea rax, [0x1400c7990]
mov qword [rbp - 0x38], rbx
mov qword [rbp - 0x28], rax
lea rcx, [rbp - 0x38]
lea rax, [0x1400c7980]
mov qword [rbp - 0x20], rax
lea rax, [rbp + 0x50]
mov qword [rbp - 0x10], rax
call fcn.1400de810
mov eax, dword [r13 + 0x20]
mov dword [r13 + 0x24], eax
cmp qword [r12 + 0x38], rbx
jne 0x1400ac4eb
cmp qword [r12 + 0x40], rbx
jne 0x1400ac4eb
cmp dword [r13 + 0x30], 1
jne 0x1400ac4eb
mov rax, qword [r13 + 0x28]
mov r9, qword [rax]
mov r11, qword [r9 + 0x20]
test r11, r11
je 0x1400ac4eb
cmp dword [r11], 1
jne 0x1400ac4eb
test dword [r9 + 4], 0x1000000
jne 0x1400ac4eb
mov rax, qword [rsp + 0x68]
test dword [rax + 0x60], 0x10000
jne 0x1400ac4eb
mov r9, qword [r9 + 8]
lea r10, [0x1400fb53c]
mov r8, r9
lea rsi, [0x1400f68e0]
sub r10, r9
movzx ecx, byte [r8]
movzx eax, byte [r10 + r8]
cmp ecx, eax
jne 0x1400ac47c
test ecx, ecx
jne 0x1400ac488
mov rcx, qword [r11 + 8]
call fcn.1400897e0
neg eax
mov byte [rbp + 0xe0], 1
sbb sil, sil
and sil, 2
jmp 0x1400ac4bb
movzx edx, byte [rax + rsi]
movzx ecx, byte [rcx + rsi]
cmp ecx, edx
jne 0x1400ac48d
inc r8
jmp 0x1400ac450
lea r8, [0x1400fb540]
sub r8, r9
nop word [rax + rax]
movzx ecx, byte [r9]
movzx eax, byte [r8 + r9]
cmp ecx, eax
jne 0x1400ac4da
test ecx, ecx
jne 0x1400ac4e6
mov sil, 1
mov byte [rbp + 0xe0], 2
mov rcx, qword [rsp + 0x68]
xor r8d, r8d
mov rdx, r11
call fcn.14008ec20
mov qword [rbp + 0x18], rax
test rax, rax
je 0x1400ac4f1
mov byte [rax + 0x18], sil
jmp 0x1400ac4f1
movzx edx, byte [rax + rsi]
movzx ecx, byte [rcx + rsi]
cmp ecx, edx
jne 0x1400ac4eb
inc r9
jmp 0x1400ac4a0
mov byte [rbp + 0xe0], bl
lea rdx, [rbp + 0x50]
mov rcx, r13
call fcn.14003f9d0
mov r10, qword [rsp + 0x68]
cmp byte [r10 + 0x67], bl
jne 0x1400ac8c9
test r15, r15
je 0x1400ad677
cmp dword [r13 + 0x30], 1
mov r12, rbx
mov qword [rbp + 8], rbx
mov word [rbp + 0xe0], bx
jne 0x1400ac612
mov rax, qword [r13 + 0x28]
cmp dword [rax + 0x10], ebx
jl 0x1400ac612
mov rax, qword [rax]
test rax, rax
je 0x1400ac612
test dword [rax + 4], 0x1000
jne 0x1400ac612
mov rcx, qword [rax + 0x20]
test rcx, rcx
je 0x1400ac612
mov rdx, qword [rcx + 8]
test rdx, rdx
je 0x1400ac582
xor r9d, r9d
xor r8d, r8d
mov rcx, r10
call fcn.140052a80
mov r10, qword [rsp + 0x68]
mov rsi, rax
jmp 0x1400ac585
mov rsi, rbx
xor r8d, r8d
mov rdx, r15
mov rcx, r10
call fcn.14008ec20
mov qword [rbp + 8], rax
mov r12, rax
test rax, rax
jne 0x1400ac5b3
mov rcx, qword [r14]
mov rdx, rsi
call fcn.14008e860
mov r12, rax
mov qword [rbp + 8], rax
jmp 0x1400ac5fe
movsxd rax, dword [rax]
lea ecx, [rax + 1]
cmp dword [r12 + 4], ecx
jge 0x1400ac5d7
mov rcx, qword [r14]
mov r8, rsi
mov rdx, r12
call fcn.14008e770
mov r12, rax
mov qword [rbp + 8], rax
jmp 0x1400ac5fe
movups xmm0, xmmword [0x1400f76e0]
shl rax, 5
movups xmm1, xmmword [0x1400f76f0]
mov dword [r12], ecx
movups xmmword [rax + r12 + 8], xmm0
movups xmmword [rax + r12 + 0x18], xmm1
mov qword [rax + r12 + 8], rsi
mov rax, r12
neg rax
sbb ax, ax
and ax, 0x500
mov word [rbp + 0xe0], ax
mov eax, dword [r14 + 0x34]
xor r8d, r8d
mov dword [r13 + 4], eax
mov rdx, r15
inc dword [r14 + 0x34]
mov rcx, r14
mov r9d, dword [r13 + 0x20]
call fcn.14009aad0
movzx edx, word [r13 + 2]
lea rsi, [rdi + 0x90]
movsxd r9, dword [rsi]
mov r15, rax
mov r8d, dword [r13 + 4]
mov qword [rbp - 0x40], rax
mov dword [rbp - 0x80], r9d
cmp dword [rdi + 0x94], r9d
jg 0x1400ac673
mov r9d, edx
mov dword [rsp + 0x20], ebx
mov edx, 0x77
mov rcx, rdi
call fcn.14005c9a0
mov r9d, eax
mov dword [rbp - 0x80], eax
jmp 0x1400ac69d
lea rcx, [r9 + r9*2]
lea eax, [r9 + 1]
mov dword [rsi], 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], ebx
mov qword [rax + rcx*8 + 0x10], rbx
mov rcx, qword [rdi]
mov eax, r9d
cmp byte [rcx + 0x67], bl
je 0x1400ac6ca
cmp qword [rcx + 0x308], rbx
jne 0x1400ac70a
test r15, r15
je 0x1400ac70a
add dword [r15], 0xffffffff
jne 0x1400ac70a
mov rcx, qword [r15 + 0x10]
mov rdx, r15
call fcn.140085810
jmp 0x1400ac70a
test r9d, r9d
jns 0x1400ac6d3
mov eax, dword [rsi]
dec eax
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 0x88]
cmp byte [rax + rcx*8 + 1], bl
lea rdx, [rax + rcx*8]
je 0x1400ac6fd
mov r9d, 0xfffffff8
mov r8, r15
mov rcx, rdi
call fcn.1400d7000
jmp 0x1400ac70a
test r15, r15
je 0x1400ac70a
mov qword [rdx + 0x10], r15
mov byte [rdx + 1], 0xf8
mov eax, dword [r14 + 0x38]
mov r8, qword [rsp + 0x48]
inc eax
mov dword [rsp + 0x58], eax
lea edx, [rax + 1]
mov eax, dword [r14 + 0x44]
lea ecx, [rdx + 2]
mov dword [rsp + 0x54], edx
mov dword [r14 + 0x38], ecx
lea r15d, [rcx + 1]
dec eax
mov dword [rsp + 0x60], ecx
mov dword [rbp - 0x70], eax
dec eax
mov dword [r14 + 0x44], eax
add ecx, dword [r8]
mov dword [r14 + 0x38], ecx
mov dword [rbp - 0x6c], eax
lea eax, [rcx + 1]
add ecx, dword [r8]
mov dword [r14 + 0x38], ecx
movsxd rcx, dword [rsi]
mov dword [rbp - 0x74], eax
cmp dword [rdi + 0x94], ecx
jg 0x1400ac77d
xor r8d, r8d
mov dword [rsp + 0x20], ebx
mov r9d, edx
mov rcx, rdi
lea edx, [r8 + 0x47]
call fcn.14005c9a0
mov r8, qword [rsp + 0x48]
jmp 0x1400ac7a2
lea eax, [rcx + 1]
mov dword [rsi], 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], ebx
mov qword [rax + rcx*8 + 0x10], rbx
mov edx, dword [r8]
movsxd rcx, dword [rsi]
dec edx
add edx, r15d
cmp dword [rdi + 0x94], ecx
jg 0x1400ac7cd
xor r8d, r8d
mov dword [rsp + 0x20], edx
mov r9d, r15d
mov rcx, rdi
lea edx, [r8 + 0x4b]
call fcn.14005c9a0
jmp 0x1400ac7f3
lea eax, [rcx + 1]
mov dword [rsi], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov qword [rax + rcx*8], 0x4b
mov dword [rax + rcx*8 + 8], r15d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rbx
movsxd rcx, dword [rsi]
cmp dword [rdi + 0x94], ecx
jg 0x1400ac81a
mov r9d, dword [rbp - 0x6c]
mov edx, 0xa
mov r8d, dword [rsp + 0x60]
mov rcx, rdi
mov dword [rsp + 0x20], ebx
call fcn.14005c9a0
jmp 0x1400ac849
mov edx, dword [rsp + 0x60]
lea eax, [rcx + 1]
mov dword [rsi], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rbp - 0x6c]
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8], 0xa
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], rbx
mov eax, dword [rsp + 0x74]
mov edx, 0x80
mov r15, qword [rbp + 0xe8]
neg eax
mov r9, qword [rsp + 0x48]
mov eax, 0x40
mov r8, qword [rbp - 0x50]
sbb cx, cx
and cx, 0x200
mov dword [rsp + 0x38], ebx
cmp byte [rbp + 0xf8], 2
cmove ax, dx
mov rdx, qword [rsp + 0x40]
or cx, ax
or cx, word [rbp + 0xe0]
mov word [rsp + 0x30], cx
mov rcx, r14
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], r12
call fcn.1400c7aa0
mov qword [rbp - 0x50], rax
mov rcx, rax
test rax, rax
jne 0x1400ac8ec
test r12, r12
je 0x1400ac8c4
mov rcx, qword [rsp + 0x68]
mov rdx, r12
call fcn.140053680
mov r10, qword [rsp + 0x68]
mov r15d, 1
mov rax, qword [rbp + 0x18]
test rax, rax
je 0x1400aaf3a
mov rdx, rax
mov rcx, r10
call fcn.140053680
jmp 0x1400aaf3a
cmp qword [r14 + 0x60], rbx
je 0x1400ac938
movsxd rax, dword [r13 + 0x24]
mov dword [r13 + 0x20], eax
cmp word [r13 + 2], bx
jbe 0x1400ac928
test eax, eax
jne 0x1400ac913
mov rax, qword [r15 + 0x38]
movzx ecx, word [rax]
mov word [r13 + 2], cx
jmp 0x1400ac928
lea rcx, [rax + rax*2]
mov rax, qword [r13 + 0x18]
movzx edx, word [rax + rcx*8 - 2]
inc dx
mov word [r13 + 2], dx
lea rdx, [rbp + 0x50]
mov rcx, r13
call fcn.14003f9d0
mov rcx, qword [rbp - 0x50]
mov eax, dword [r14 + 0x38]
mov r12, qword [rsp + 0x48]
inc eax
mov dword [r13 + 0xc], eax
mov eax, dword [r13 + 0x30]
add eax, dword [r13 + 0x20]
add dword [r14 + 0x38], eax
movsx edx, byte [rcx + 0x41]
movzx eax, byte [rcx + 0x43]
test dl, dl
mov ecx, ebx
mov dword [rbp - 0x68], eax
cmovns ecx, edx
cmp ecx, dword [r12]
jne 0x1400ac974
mov dword [rsp + 0x70], ebx
jmp 0x1400acd10
cmp byte [rbp + 0xf8], bl
je 0x1400ac98a
test byte [r15 + 4], 1
lea r9, str.DISTINCT
je 0x1400ac991
lea r9, str.GROUP_BY
lea r8, str.USE_TEMP_B_TREE_FOR__s
xor edx, edx
mov rcx, r14
call fcn.1400c0a60
mov edx, dword [r12]
mov r10d, edx
mov eax, dword [r13 + 0x20]
mov dword [rsp + 0x70], 1
mov dword [rsp + 0x40], edx
mov dword [rsp + 0x50], edx
test eax, eax
jle 0x1400ac9f8
mov r8, qword [r13 + 0x18]
mov r9d, eax
add r8, 0x16
nop dword [rax]
movsx ecx, word [r8]
lea eax, [r10 + 1]
cmp ecx, edx
lea r8, [r8 + 0x18]
cmovl eax, r10d
mov r10d, eax
lea eax, [rdx + 1]
cmovl eax, edx
mov edx, eax
sub r9, 1
jne 0x1400ac9d0
mov dword [rsp + 0x50], r10d
cmp r10d, 1
jne 0x1400aca33
movzx eax, byte [r14 + 0x1f]
lea r15, [r14 + 0x1f]
test al, al
jne 0x1400aca1b
inc dword [r14 + 0x38]
mov eax, dword [r14 + 0x38]
mov dword [rbp + 0xf8], eax
jmp 0x1400aca6f
dec al
movzx eax, al
mov byte [r15], al
mov eax, dword [r14 + rax*4 + 0xe4]
mov dword [rbp + 0xf8], eax
jmp 0x1400aca6f
mov ecx, dword [r14 + 0x28]
mov edx, dword [r14 + 0x2c]
mov dword [rbp + 0xf8], edx
cmp r10d, ecx
jg 0x1400aca57
lea eax, [rdx + r10]
sub ecx, r10d
mov dword [r14 + 0x2c], eax
mov dword [r14 + 0x28], ecx
jmp 0x1400aca6b
mov eax, dword [r14 + 0x38]
lea ecx, [rax + 1]
add eax, r10d
mov dword [r14 + 0x38], eax
mov dword [rbp + 0xf8], ecx
lea r15, [r14 + 0x1f]
mov r8d, dword [rbp + 0xf8]
xor r9d, r9d
mov rdx, r12
mov byte [rsp + 0x20], bl
mov rcx, r14
call fcn.1400899b0
mov ecx, ebx
mov byte [r13], 1
mov dword [rsp + 0x64], ebx
cmp dword [r13 + 0x20], ebx
jle 0x1400acafa
mov esi, dword [rsp + 0x40]
mov r12, rbx
mov ebx, dword [rbp + 0xf8]
nop word [rax + rax]
mov rdx, qword [r13 + 0x18]
movsx eax, word [rdx + r12 + 0x16]
cmp eax, esi
jl 0x1400acada
mov rdx, qword [rdx + r12 + 8]
lea r8d, [rbx + rsi]
mov rcx, r14
call fcn.140089950
mov ecx, dword [rsp + 0x64]
inc esi
mov rax, r15
jmp 0x1400acade
lea rax, [r14 + 0x1f]
inc ecx
add r12, 0x18
mov dword [rsp + 0x64], ecx
cmp ecx, dword [r13 + 0x20]
jl 0x1400acab0
mov r15, rax
lea rsi, [rdi + 0x90]
xor ebx, ebx
mov byte [r13], 0
movzx eax, byte [r15]
test al, al
jne 0x1400acb11
inc dword [r14 + 0x38]
mov r12d, dword [r14 + 0x38]
jmp 0x1400acb21
dec al
movzx eax, al
mov byte [r15], al
mov r12d, dword [r14 + rax*4 + 0xe4]
movsxd rcx, dword [rsi]
cmp dword [rdi + 0x94], ecx
jg 0x1400acb4c
mov r9d, dword [rsp + 0x50]
mov edx, 0x61
mov r8d, dword [rbp + 0xf8]
mov rcx, rdi
mov dword [rsp + 0x20], r12d
call fcn.14005c9a0
jmp 0x1400acb7f
mov edx, dword [rbp + 0xf8]
lea eax, [rcx + 1]
mov dword [rsi], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rsp + 0x50]
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8], 0x61
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], rbx
movsxd rcx, dword [rsi]
mov edx, dword [r13 + 4]
cmp dword [rdi + 0x94], ecx
jg 0x1400acba7
mov r8d, edx
mov dword [rsp + 0x20], ebx
mov edx, 0x8b
mov r9d, r12d
mov rcx, rdi
call fcn.14005c9a0
jmp 0x1400acbd0
lea eax, [rcx + 1]
mov dword [rsi], 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], r12d
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], rbx
test r12d, r12d
je 0x1400acbe8
movzx eax, byte [r15]
cmp al, 8
jae 0x1400acbe8
mov dword [r14 + rax*4 + 0xe4], r12d
inc byte [r15]
mov r12d, dword [rsp + 0x50]
cmp r12d, 1
jne 0x1400acc12
mov ecx, dword [rbp + 0xf8]
test ecx, ecx
je 0x1400acc26
movzx eax, byte [r15]
cmp al, 8
jae 0x1400acc26
mov dword [r14 + rax*4 + 0xe4], ecx
inc byte [r15]
jmp 0x1400acc26
cmp r12d, dword [r14 + 0x28]
jle 0x1400acc26
mov eax, dword [rbp + 0xf8]
mov dword [r14 + 0x2c], eax
mov dword [r14 + 0x28], r12d
mov rcx, qword [rbp - 0x50]
call fcn.1400cbb10
mov edx, dword [r14 + 0x34]
mov dword [r13 + 8], edx
inc dword [r14 + 0x34]
movzx eax, byte [r15]
mov dword [rsp + 0x50], edx
test al, al
jne 0x1400acc51
inc dword [r14 + 0x38]
mov r8d, dword [r14 + 0x38]
jmp 0x1400acc61
dec al
movzx eax, al
mov byte [r15], al
mov r8d, dword [r14 + rax*4 + 0xe4]
movsxd rcx, dword [rsi]
mov dword [rsp + 0x64], r8d
cmp dword [rdi + 0x94], ecx
jg 0x1400acc8b
mov r9d, r8d
mov dword [rsp + 0x20], r12d
mov r8d, edx
mov rcx, rdi
mov edx, 0x79
call fcn.14005c9a0
jmp 0x1400accb5
lea eax, [rcx + 1]
mov dword [rsi], 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], r12d
mov qword [rax + rcx*8 + 0x10], rbx
movsxd rcx, dword [rsi]
mov edx, dword [r13 + 4]
cmp dword [rdi + 0x94], ecx
jg 0x1400accdf
mov r9d, dword [rsp + 0x78]
mov r8d, edx
mov edx, 0x22
mov dword [rsp + 0x20], ebx
mov rcx, rdi
call fcn.14005c9a0
jmp 0x1400acd0b
lea eax, [rcx + 1]
mov dword [rsi], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rsp + 0x78]
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8], 0x22
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], rbx
mov byte [r13 + 1], 1
cmp qword [r14 + 0x60], 0
je 0x1400acd66
cmp dword [r13 + 0x30], 0
lea rax, [0x14003e490]
xorps xmm0, xmm0
mov qword [rbp - 0x30], rax
xorps xmm1, xmm1
mov qword [rbp - 0x38], rbx
movdqu xmmword [rbp - 0x28], xmm0
mov r12d, ebx
movdqu xmmword [rbp - 0x18], xmm1
jle 0x1400acd66
mov r15, rbx
mov rax, qword [r13 + 0x28]
mov rdx, qword [r15 + rax]
test rdx, rdx
je 0x1400acd59
lea rcx, [rbp - 0x38]
call fcn.1400de810
inc r12d
add r15, 0x18
cmp r12d, dword [r13 + 0x30]
jl 0x1400acd43
cmp dword [rsp + 0x74], 0
je 0x1400acd99
mov rax, qword [rsp + 0x68]
test byte [rax + 0x60], 4
mov eax, dword [rsp + 0x70]
jne 0x1400acd9d
test eax, eax
jne 0x1400acd8a
mov rcx, qword [rbp - 0x50]
test byte [rcx + 0x44], 8
je 0x1400acd9d
mov edx, dword [rbp - 0x78]
mov rcx, rdi
mov qword [rbp + 0x20], rbx
call fcn.1400b6a00
mov eax, dword [rsp + 0x70]
movsxd r12, dword [rsi]
mov dword [rbp + 0xf8], r12d
test eax, eax
je 0x1400acdd9
mov edx, dword [r13 + 4]
cmp dword [rdi + 0x94], r12d
jg 0x1400ace34
mov eax, dword [rsp + 0x50]
mov r8d, edx
mov r9d, dword [rsp + 0x64]
mov edx, 0x85
mov rcx, rdi
mov dword [rsp + 0x20], eax
call fcn.14005c9a0
mov eax, dword [rsp + 0x70]
mov edx, dword [rsp + 0x50]
mov rcx, qword [rsp + 0x48]
mov r15d, ebx
cmp dword [rcx], 0
jle 0x1400aced2
lea r12, [rcx + 8]
nop dword [rax]
nop word [rax + rax]
mov r8d, dword [rbp - 0x74]
add r8d, r15d
test eax, eax
je 0x1400ace9d
movsxd rcx, dword [rsi]
cmp dword [rdi + 0x94], ecx
jg 0x1400ace71
mov dword [rsp + 0x20], r8d
mov r9d, r15d
mov r8d, edx
mov rcx, rdi
mov edx, 0x5e
call fcn.14005c9a0
jmp 0x1400aceae
mov r8d, dword [rsp + 0x64]
lea rcx, [r12 + r12*2]
lea eax, [r12 + 1]
mov dword [rsi], eax
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rsp + 0x50]
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], rbx
mov eax, dword [rsp + 0x70]
jmp 0x1400acddd
lea eax, [rcx + 1]
mov dword [rsi], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x5e
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r15d
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], rbx
jmp 0x1400aceb2
mov byte [r13], 1
mov rcx, r14
mov rdx, qword [r12]
call fcn.140089950
mov edx, dword [rsp + 0x50]
mov rcx, qword [rsp + 0x48]
inc r15d
mov eax, dword [rsp + 0x70]
add r12, 0x20
cmp r15d, dword [rcx]
jl 0x1400ace00
mov r12d, dword [rbp + 0xf8]
mov r10, qword [rbp - 0x40]
test r10, r10
je 0x1400acede
inc dword [r10]
movsxd rdx, dword [rsi]
mov r8d, dword [rcx]
cmp dword [rdi + 0x94], edx
jg 0x1400acf12
mov r9d, dword [rbp - 0x74]
mov edx, 0x5a
mov dword [rsp + 0x20], r8d
mov rcx, rdi
mov r8d, dword [rsp + 0x60]
inc r8d
call fcn.14005c9a0
mov r10, qword [rbp - 0x40]
mov edx, eax
jmp 0x1400acf49
mov r9d, dword [rsp + 0x60]
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
inc r9d
mov dword [rsi], eax
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8 + 4], r9d
mov r9d, dword [rbp - 0x74]
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], rbx
mov rax, qword [rdi]
cmp byte [rax + 0x67], 0
je 0x1400acf75
cmp qword [rax + 0x308], 0
jne 0x1400acfb6
test r10, r10
je 0x1400acfb6
add dword [r10], 0xffffffff
jne 0x1400acfb6
mov rcx, qword [r10 + 0x10]
mov rdx, r10
call fcn.140085810
jmp 0x1400acfb6
test edx, edx
jns 0x1400acf7d
mov edx, dword [rsi]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 0x88]
cmp byte [rax + rcx*8 + 1], 0
lea rdx, [rax + rcx*8]
je 0x1400acfa9
mov r9d, 0xfffffff8
mov r8, r10
mov rcx, rdi
call fcn.1400d7000
jmp 0x1400acfb6
test r10, r10
je 0x1400acfb6
mov qword [rdx + 0x10], r10
mov byte [rdx + 1], 0xf8
movsxd r15, dword [rsi]
lea edx, [r15 + 1]
cmp dword [rdi + 0x94], r15d
jg 0x1400acfde
xor r9d, r9d
mov dword [rsp + 0x20], edx
mov r8d, edx
mov rcx, rdi
lea edx, [r9 + 0xe]
call fcn.14005c9a0
jmp 0x1400ad003
mov rax, qword [rdi + 0x88]
lea rcx, [r15 + r15*2]
mov dword [rsi], edx
mov dword [rax + rcx*8], 0xe
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rbx
mov r10, qword [r14 + 0x10]
mov rax, qword [rsp + 0x48]
mov r8d, dword [rbp - 0x74]
movsxd rcx, dword [r10 + 0x90]
mov edx, dword [rax]
cmp dword [r10 + 0x94], ecx
jg 0x1400ad03d
mov r9d, dword [rsp + 0x60]
mov rcx, r10
mov dword [rsp + 0x20], edx
inc r9d
mov edx, 0x4f
call fcn.14005c9a0
jmp 0x1400ad074
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 + 0x60]
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], rbx
movsxd rcx, dword [rsi]
mov r8d, dword [rsp + 0x54]
cmp dword [rdi + 0x94], ecx
jg 0x1400ad0a3
mov r9d, dword [rbp - 0x70]
inc r8d
mov edx, 0xa
mov dword [rsp + 0x20], ebx
mov rcx, rdi
call fcn.14005c9a0
mov r8d, dword [rsp + 0x54]
jmp 0x1400ad0d2
lea eax, [rcx + 1]
mov dword [rsi], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
lea edx, [r8 + 1]
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rbp - 0x70]
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8], 0xa
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], rbx
movsxd rcx, dword [rsi]
cmp dword [rdi + 0x94], ecx
jg 0x1400ad0f5
mov r9d, dword [rsp + 0x78]
mov edx, 0x3b
mov rcx, rdi
mov dword [rsp + 0x20], ebx
call fcn.14005c9a0
jmp 0x1400ad122
mov edx, dword [rsp + 0x78]
lea eax, [rcx + 1]
mov dword [rsi], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 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], ebx
mov qword [rax + rcx*8 + 0x10], rbx
movsxd rcx, dword [rsi]
cmp dword [rdi + 0x94], ecx
jg 0x1400ad149
mov r9d, dword [rbp - 0x6c]
mov edx, 0xa
mov r8d, dword [rsp + 0x60]
mov rcx, rdi
mov dword [rsp + 0x20], ebx
call fcn.14005c9a0
jmp 0x1400ad178
mov edx, dword [rsp + 0x60]
lea eax, [rcx + 1]
mov dword [rsi], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8 + 4], edx
mov edx, dword [rbp - 0x6c]
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8], 0xa
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], rbx
mov rax, qword [rdi]
mov edx, dword [rsi]
cmp byte [rax + 0x67], 0
je 0x1400ad18c
lea rax, [0x140119dd0]
jmp 0x1400ad19b
mov rax, qword [rdi + 0x88]
lea rcx, [r15 + r15*2]
lea rax, [rax + rcx*8]
mov r15d, dword [rsp + 0x58]
mov r8, r13
mov r9d, dword [rbp - 0x68]
mov rcx, r14
mov dword [rax + 8], edx
mov edx, r15d
call fcn.1400d4d70
movsxd rcx, dword [rsi]
cmp dword [rdi + 0x94], ecx
jg 0x1400ad1da
mov edx, 0x47
mov dword [rsp + 0x20], ebx
mov r9d, r15d
mov rcx, rdi
lea r8d, [rdx - 0x46]
call fcn.14005c9a0
jmp 0x1400ad207
lea eax, [rcx + 1]
mov dword [rsi], 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], r15d
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], rbx
cmp dword [rsp + 0x70], 0
je 0x1400ad261
movsxd rcx, dword [rsi]
mov edx, dword [r13 + 4]
cmp dword [rdi + 0x94], ecx
jg 0x1400ad236
mov r8d, edx
mov dword [rsp + 0x20], ebx
mov edx, 0x25
mov r9d, r12d
mov rcx, rdi
call fcn.14005c9a0
jmp 0x1400ad275
lea eax, [rcx + 1]
mov dword [rsi], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x25
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], rbx
jmp 0x1400ad275
mov rcx, qword [rbp - 0x50]
call fcn.1400cbb10
mov edx, dword [rbp - 0x80]
mov rcx, rdi
call fcn.1400b6a00
mov rdx, qword [rbp + 8]
test rdx, rdx
je 0x1400ad288
mov rcx, qword [rsp + 0x68]
call fcn.140053680
mov r15d, dword [rsp + 0x54]
movsxd rcx, dword [rsi]
inc r15d
cmp dword [rdi + 0x94], ecx
jg 0x1400ad2b5
mov r9d, dword [rbp - 0x70]
mov r8d, r15d
mov edx, 0xa
mov dword [rsp + 0x20], ebx
mov rcx, rdi
call fcn.14005c9a0
jmp 0x1400ad2e1
mov edx, dword [rbp - 0x70]
lea eax, [rcx + 1]
mov dword [rsi], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0xa
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], rbx
movsxd rcx, dword [rsi]
cmp dword [rdi + 0x94], ecx
jg 0x1400ad306
mov r9d, dword [rsp + 0x78]
xor r8d, r8d
mov rcx, rdi
mov dword [rsp + 0x20], ebx
lea edx, [r8 + 9]
call fcn.14005c9a0
jmp 0x1400ad32f
mov edx, dword [rsp + 0x78]
lea eax, [rcx + 1]
mov dword [rsi], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov qword [rax + rcx*8], 9
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], rbx
movsxd r12, dword [rsi]
cmp dword [rdi + 0x94], r12d
jg 0x1400ad357
mov r9d, dword [rsp + 0x54]
mov edx, 0x47
mov rcx, rdi
mov dword [rsp + 0x20], ebx
lea r8d, [rdx - 0x46]
call fcn.14005c9a0
jmp 0x1400ad389
mov edx, dword [rsp + 0x54]
lea rcx, [r12 + r12*2]
lea eax, [r12 + 1]
mov dword [rsi], 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], edx
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], rbx
movsxd rcx, dword [rsi]
cmp dword [rdi + 0x94], ecx
jg 0x1400ad3ac
xor r9d, r9d
mov dword [rsp + 0x20], ebx
mov r8d, r15d
mov rcx, rdi
lea edx, [r9 + 0x43]
call fcn.14005c9a0
jmp 0x1400ad3d6
lea eax, [rcx + 1]
mov dword [rsi], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x43
mov dword [rax + rcx*8 + 4], r15d
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], rbx
mov rcx, qword [rdi + 0x18]
lea r15, [rdi + 0x18]
mov edx, dword [rbp - 0x70]
not edx
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x1400ad3f8
mov r8d, edx
mov rdx, rdi
call fcn.140070dc0
jmp 0x1400ad405
mov rcx, qword [rcx + 0x50]
mov eax, dword [rsi]
movsxd r8, edx
mov dword [rcx + r8*4], eax
movsxd rax, dword [rsi]
lea ecx, [rax + 1]
lea r8d, [rax + 2]
mov dword [rbp + 0xf8], ecx
cmp dword [rdi + 0x94], eax
jg 0x1400ad438
mov r9d, r8d
mov dword [rsp + 0x20], ebx
mov r8d, dword [rsp + 0x58]
mov edx, 0x3b
mov rcx, rdi
call fcn.14005c9a0
jmp 0x1400ad462
mov edx, dword [rsp + 0x58]
mov dword [rsi], ecx
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 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], ebx
mov qword [rax + rcx*8 + 0x10], rbx
movsxd rcx, dword [rsi]
cmp dword [rdi + 0x94], ecx
jg 0x1400ad48a
mov r8d, dword [rsp + 0x54]
xor r9d, r9d
inc r8d
mov dword [rsp + 0x20], ebx
mov rcx, rdi
lea edx, [r9 + 0x43]
call fcn.14005c9a0
jmp 0x1400ad4b9
mov edx, dword [rsp + 0x54]
lea eax, [rcx + 1]
mov dword [rsi], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 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], rbx
mov rdx, r13
mov rcx, r14
call fcn.140054b20
mov r8d, dword [rbp + 0xf8]
mov r9d, 0x10
mov rdx, qword [rbp - 0x48]
mov rcx, r14
call fcn.14008dc30
mov eax, dword [rbp + 0xf8]
lea r9, [rbp + 0x20]
mov rdx, qword [rbp + 0xe8]
mov r8d, 0xffffffff
mov dword [rsp + 0x38], r12d
mov rcx, r14
mov dword [rsp + 0x30], eax
mov rax, qword [rbp + 0xf0]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 8]
mov qword [rsp + 0x20], rax
call fcn.140074e30
movsxd rcx, dword [rsi]
cmp dword [rdi + 0x94], ecx
jg 0x1400ad542
mov r8d, dword [rsp + 0x54]
xor r9d, r9d
inc r8d
mov dword [rsp + 0x20], ebx
mov rcx, rdi
lea edx, [r9 + 0x43]
call fcn.14005c9a0
jmp 0x1400ad571
mov edx, dword [rsp + 0x54]
lea eax, [rcx + 1]
mov dword [rsi], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 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], rbx
mov rcx, qword [r15]
mov edx, dword [rbp - 0x6c]
not edx
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x1400ad58e
mov r8d, edx
mov rdx, rdi
call fcn.140070dc0
jmp 0x1400ad59b
mov rcx, qword [rcx + 0x50]
mov eax, dword [rsi]
movsxd r8, edx
mov dword [rcx + r8*4], eax
mov rdx, r13
mov rcx, r14
call fcn.140070ae0
movsxd rcx, dword [rsi]
cmp dword [rdi + 0x94], ecx
jg 0x1400ad5cb
mov r9d, dword [rsp + 0x58]
xor r8d, r8d
mov rcx, rdi
mov dword [rsp + 0x20], ebx
lea edx, [r8 + 0x47]
call fcn.14005c9a0
jmp 0x1400ad5f4
mov edx, dword [rsp + 0x58]
lea eax, [rcx + 1]
mov dword [rsi], 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], ebx
mov qword [rax + rcx*8 + 0x10], rbx
movsxd rcx, dword [rsi]
cmp dword [rdi + 0x94], ecx
jg 0x1400ad619
mov r8d, dword [rsp + 0x60]
xor r9d, r9d
mov rcx, rdi
mov dword [rsp + 0x20], ebx
lea edx, [r9 + 0x43]
call fcn.14005c9a0
jmp 0x1400ad646
mov edx, dword [rsp + 0x60]
lea eax, [rcx + 1]
mov dword [rsi], 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 qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], rbx
cmp word [rbp + 0xe0], 0
je 0x1400ad66d
mov ecx, dword [rbp - 0x68]
test ecx, ecx
je 0x1400ad66d
mov rax, qword [r13 + 0x28]
mov edx, ecx
mov rcx, r14
mov r9d, dword [rax + 0x14]
mov r8d, dword [rax + 0x10]
call fcn.140055220
mov r12d, dword [rsp + 0x78]
jmp 0x1400add60
cmp qword [r12 + 0x30], rbx
jne 0x1400ada89
mov rdx, qword [r12 + 0x20]
cmp dword [rdx], 1
jne 0x1400ada89
mov rax, qword [r12 + 0x28]
cmp dword [rax], 1
jne 0x1400ada89
cmp qword [rax + 0x30], rbx
jne 0x1400ada89
cmp dword [r13 + 0x30], 1
jne 0x1400ada89
cmp qword [r12 + 0x40], rbx
jne 0x1400ada89
mov r13, qword [rax + 0x28]
cmp byte [r13 + 0x3f], bl
jne 0x1400ada85
mov rdx, qword [rdx + 8]
cmp byte [rdx], 0xa8
jne 0x1400ada85
mov rax, qword [rbp - 0x80]
cmp qword [rdx + 0x38], rax
jne 0x1400ada80
mov rax, qword [rax + 0x28]
mov rcx, qword [rax + 8]
test dword [rcx + 4], 0x100
je 0x1400ada85
test dword [rdx + 4], 0x1000004
jne 0x1400ada85
mov rdx, qword [r13 + 0x60]
mov r12d, 0xffff8000
test rdx, rdx
je 0x1400ad73c
mov rax, qword [r14]
mov r12d, ebx
mov rcx, qword [rax + 0x20]
add rcx, 0x18
cmp qword [rcx], rdx
je 0x1400ad73c
nop dword [rax + rax]
inc r12d
lea rcx, [rcx + 0x20]
cmp qword [rcx], rdx
jne 0x1400ad730
mov eax, dword [r14 + 0x34]
mov rcx, r14
mov dword [rbp + 0xf8], eax
mov r8, rbx
inc eax
mov qword [rbp - 0x40], rbx
mov dword [r14 + 0x34], eax
mov r15, rbx
mov eax, dword [r13 + 0x28]
mov dword [rbp + 0xe0], eax
mov rax, qword [r14 + 0xa8]
test rax, rax
cmovne rcx, rax
mov eax, dword [rcx + 0x7c]
bt eax, r12d
jb 0x1400ad78e
bts eax, r12d
mov dword [rcx + 0x7c], eax
cmp r12d, 1
jne 0x1400ad794
call fcn.14009d2e0
jmp 0x1400ad7c7
cmp r12d, 1
je 0x1400ad7ca
mov rax, qword [r14]
movsxd rdx, r12d
shl rdx, 5
mov rcx, qword [rax + 0x20]
mov rax, qword [rdx + rcx + 8]
cmp byte [rax + 0x11], bl
je 0x1400ad7ca
mov rax, qword [r13]
xor r9d, r9d
mov r8d, dword [r13 + 0x28]
mov edx, r12d
mov rcx, r14
mov qword [rsp + 0x20], rax
call fcn.140062190
mov r8, rbx
test byte [r13 + 0x30], 0x80
je 0x1400ad7f3
mov r15, qword [r13 + 0x10]
test r15, r15
je 0x1400ad7f3
nop word [rax + rax]
mov eax, dword [r15 + 0x64]
and al, 3
cmp al, 2
je 0x1400ad7f3
mov r15, qword [r15 + 0x28]
test r15, r15
jne 0x1400ad7e0
mov rax, qword [rbp + 0xe8]
mov rax, qword [rax + 0x28]
test byte [rax + 0x48], 1
jne 0x1400ad83f
mov rax, qword [r13 + 0x10]
test rax, rax
je 0x1400ad83f
nop dword [rax]
test byte [rax + 0x64], 4
jne 0x1400ad836
movzx ecx, word [rax + 0x5c]
cmp cx, word [r13 + 0x3c]
jge 0x1400ad836
cmp qword [rax + 0x48], rbx
jne 0x1400ad836
test r15, r15
je 0x1400ad833
cmp cx, word [r15 + 0x5c]
jge 0x1400ad836
mov r15, rax
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x1400ad810
test r15, r15
je 0x1400ad860
mov eax, dword [r15 + 0x58]
mov rdx, r15
mov rcx, r14
mov dword [rbp + 0xe0], eax
call fcn.14009ab90
mov r8, rax
mov qword [rbp - 0x40], rax
lea rsi, [rdi + 0x90]
movsxd rdx, dword [rsi]
cmp dword [rdi + 0x94], edx
jg 0x1400ad89d
mov r9d, dword [rbp + 0xe0]
mov edx, 0x70
mov dword [rsp + 0x20], r12d
mov rcx, rdi
mov r12d, dword [rbp + 0xf8]
mov r8d, r12d
call fcn.14005c9a0
mov r8, qword [rbp - 0x40]
mov edx, eax
jmp 0x1400ad8dd
mov r9d, dword [rbp + 0xf8]
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rsi], eax
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8 + 4], r9d
mov r9d, dword [rbp + 0xe0]
mov dword [rax + rcx*8 + 0xc], r12d
mov r12d, dword [rbp + 0xf8]
mov dword [rax + rcx*8 + 8], r9d
mov dword [rax + rcx*8], 0x70
mov qword [rax + rcx*8 + 0x10], rbx
mov rax, qword [rdi]
cmp byte [rax + 0x67], bl
jne 0x1400ad900
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 0x88]
mov byte [rax + rcx*8 + 1], 0xfd
mov dword [rax + rcx*8 + 0x10], 1
test r8, r8
je 0x1400ad95e
mov rax, qword [rdi]
cmp byte [rax + 0x67], bl
je 0x1400ad92a
cmp qword [rax + 0x308], rbx
jne 0x1400ad95e
add dword [r8], 0xffffffff
jne 0x1400ad95e
mov rcx, qword [r8 + 0x10]
mov rdx, r8
call fcn.140085810
jmp 0x1400ad95e
movsxd rax, dword [rsi]
lea rdx, [rax + rax*2]
mov rax, qword [rdi + 0x88]
lea rdx, [rdx - 3]
cmp byte [rax + rdx*8 + 1], bl
lea rdx, [rax + rdx*8]
je 0x1400ad956
mov r9d, 0xfffffff8
mov rcx, rdi
call fcn.1400d7000
jmp 0x1400ad95e
mov qword [rdx + 0x10], r8
mov byte [rdx + 1], 0xf8
mov rcx, qword [rbp - 0x80]
mov eax, dword [r14 + 0x38]
inc eax
mov dword [rcx + 0xc], eax
mov eax, dword [rcx + 0x30]
add eax, dword [rcx + 0x20]
add dword [r14 + 0x38], eax
mov edx, dword [rcx + 0xc]
add edx, dword [rcx + 0x20]
movsxd rcx, dword [rsi]
cmp dword [rdi + 0x94], ecx
jg 0x1400ad99f
mov r9d, edx
mov dword [rsp + 0x20], ebx
mov edx, 0x62
mov r8d, r12d
mov rcx, rdi
call fcn.14005c9a0
jmp 0x1400ad9c8
lea eax, [rcx + 1]
mov dword [rsi], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x62
mov dword [rax + rcx*8 + 4], r12d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], rbx
movsxd rcx, dword [rsi]
cmp dword [rdi + 0x94], ecx
jg 0x1400ad9eb
xor r9d, r9d
mov dword [rsp + 0x20], ebx
mov r8d, r12d
mov rcx, rdi
lea edx, [r9 + 0x7a]
call fcn.14005c9a0
jmp 0x1400ada11
lea eax, [rcx + 1]
mov dword [rsi], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x7a
mov dword [rax + rcx*8 + 4], r12d
mov qword [rax + rcx*8 + 8], rbx
mov qword [rax + rcx*8 + 0x10], rbx
cmp byte [r14 + 0x133], 2
jne 0x1400add0d
test r15, r15
je 0x1400ada41
test byte [r13 + 0x30], 0x80
je 0x1400ada35
mov eax, dword [r15 + 0x64]
and al, 3
cmp al, 2
je 0x1400ada41
mov rax, qword [r15]
lea rcx, [0x140102bc8]
jmp 0x1400ada4e
lea rcx, [0x140102bc8]
mov dword [rbp - 0x68], ebx
mov rax, rcx
cmp dword [rbp - 0x68], ebx
lea rdx, str._USING_COVERING_INDEX
mov r9, qword [r13]
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, r14
call fcn.1400c0a60
jmp 0x1400add0d
mov r13, rax
jmp 0x1400ada89
mov r13, qword [rbp - 0x80]
mov r15d, ebx
mov r8d, dword [r13 + 0x30]
mov r12, rbx
movzx esi, bx
cmp dword [r13 + 0x24], ebx
je 0x1400adb31
mov edx, ebx
test r8d, r8d
jle 0x1400adad1
mov rcx, qword [r13 + 0x28]
nop dword [rax + rax]
mov rax, qword [rcx]
test dword [rax + 4], 0x1000000
jne 0x1400adac6
mov rax, qword [rcx + 8]
test byte [rax + 4], 0x20
jne 0x1400adad1
inc edx
add rcx, 0x18
cmp edx, r8d
jl 0x1400adab0
cmp edx, r8d
jne 0x1400adb55
inc dword [r14 + 0x38]
movsxd rcx, dword [rdi + 0x90]
mov r15d, dword [r14 + 0x38]
cmp dword [rdi + 0x94], ecx
jg 0x1400adb05
xor r8d, r8d
mov dword [rsp + 0x20], ebx
mov r9d, r15d
mov rcx, rdi
lea edx, [r8 + 0x47]
call fcn.14005c9a0
jmp 0x1400adb55
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], ebx
mov qword [rax + rcx*8 + 0x10], rbx
jmp 0x1400adb55
cmp r8d, 1
jne 0x1400adb55
mov rax, qword [r13 + 0x28]
cmp dword [rax + 0x10], ebx
jl 0x1400adb55
mov rax, qword [rax]
mov r12, qword [rax + 0x20]
mov rax, r12
neg rax
sbb si, si
and si, 0x500
mov eax, dword [r14 + 0x38]
mov rdx, r13
inc eax
mov rcx, r14
mov dword [r13 + 0xc], eax
mov eax, dword [r13 + 0x30]
add eax, dword [r13 + 0x20]
add dword [r14 + 0x38], eax
call fcn.140070ae0
movzx eax, byte [rbp + 0xe0]
mov rcx, r14
mov r9, qword [rbp + 0x18]
or ax, si
mov r8, qword [rbp - 0x50]
mov rdx, qword [rsp + 0x40]
mov dword [rsp + 0x38], ebx
mov word [rsp + 0x30], ax
mov rax, qword [rbp + 0xe8]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r12
call fcn.1400c7aa0
mov rsi, rax
test rax, rax
je 0x1400ac8c4
movzx r12d, byte [rax + 0x43]
mov r8, r13
mov r9d, r12d
mov edx, r15d
mov rcx, r14
call fcn.1400d4d70
test r12d, r12d
je 0x1400adbf2
mov rax, qword [r13 + 0x28]
test rax, rax
je 0x1400adbf2
mov r9d, dword [rax + 0x14]
mov edx, r12d
mov r8d, dword [rax + 0x10]
mov rcx, r14
call fcn.140055220
test r15d, r15d
je 0x1400adc51
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1400adc20
mov edx, 0x47
mov dword [rsp + 0x20], ebx
mov r9d, r15d
mov rcx, rdi
lea r8d, [rdx - 0x46]
call fcn.14005c9a0
jmp 0x1400adc51
lea eax, [rcx + 1]
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], r15d
mov dword [rax + rcx*8 + 0xc], ebx
mov qword [rax + rcx*8 + 0x10], rbx
cmp byte [rbp + 0xe0], bl
je 0x1400adcf3
test byte [rsi + 0x44], 4
je 0x1400adcf3
cmp byte [rsi + 0x41], bl
je 0x1400adcf3
movzx edx, byte [rsi + 0x40]
sub rdx, 1
js 0x1400adc98
imul rcx, rdx, 0x70
add rcx, rsi
mov rax, qword [rcx + 0x3c0]
test byte [rax + 0x38], 4
jne 0x1400adcc2
sub rcx, 0x70
sub rdx, 1
jns 0x1400adc81
mov edx, dword [rsi + 0x34]
movsxd rcx, dword [rdi + 0x90]
cmp dword [rdi + 0x94], ecx
jg 0x1400adcca
xor r8d, r8d
mov dword [rsp + 0x20], ebx
mov r9d, edx
mov rcx, rdi
lea edx, [r8 + 9]
call fcn.14005c9a0
jmp 0x1400adcf3
mov edx, dword [rcx + 0x370]
jmp 0x1400adc9b
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov qword [rax + rcx*8 + 0x10], rbx
mov dword [rax + rcx*8 + 0xc], ebx
mov dword [rax + rcx*8 + 8], edx
mov qword [rax + rcx*8], 9
mov rcx, rsi
call fcn.1400cbb10
mov rdx, r13
mov rcx, r14
call fcn.140054b20
lea rsi, [rdi + 0x90]
mov r12d, dword [rsp + 0x78]
mov r9d, 0x10
mov rdx, qword [rbp - 0x48]
mov r8d, r12d
mov rcx, r14
mov qword [rbp + 0x20], rbx
call fcn.14008dc30
mov rax, qword [rbp + 0xf0]
xor r9d, r9d
mov rdx, qword [rbp + 0xe8]
mov rcx, r14
mov dword [rsp + 0x38], r12d
mov dword [rsp + 0x30], r12d
mov qword [rsp + 0x28], rax
lea r8d, [r9 - 1]
mov qword [rsp + 0x20], rbx
call fcn.140074e30
lea r15, [rdi + 0x18]
mov rcx, qword [r15]
not r12d
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x1400add7b
mov r8d, r12d
mov rdx, rdi
call fcn.140070dc0
jmp 0x1400add87
mov rcx, qword [rcx + 0x50]
mov eax, dword [rsi]
movsxd rdx, r12d
mov dword [rcx + rdx*4], eax
cmp byte [rbp - 0x58], 3
jne 0x1400adda5
lea r9, str.DISTINCT
xor edx, edx
lea r8, str.USE_TEMP_B_TREE_FOR__s
mov rcx, r14
call fcn.1400c0a60
cmp qword [rbp + 0x20], 0
je 0x1400addd2
mov rax, qword [rbp + 0xf0]
lea r8, [rbp + 0x20]
mov rdx, qword [rbp + 0xe8]
mov rcx, r14
mov qword [rsp + 0x20], rax
mov rax, qword [rbp - 0x60]
mov r9d, dword [rax]
call fcn.14005a790
mov rcx, qword [r15]
mov edx, dword [rbp + 0x10]
not edx
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x1400addef
mov r8d, edx
mov rdx, rdi
call fcn.140070dc0
jmp 0x1400addfc
mov r8, qword [rcx + 0x50]
mov eax, dword [rsi]
movsxd r9, edx
mov dword [r8 + r9*4], eax
cmp dword [r14 + 0x30], 0
mov r15d, ebx
mov r10, qword [rsp + 0x68]
setg r15b
jmp 0x1400ac8cf
mov eax, r15d
jmp 0x1400aaf0c