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

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x1a8
mov r15, qword [rcx + 0x10]
mov r14, qword [rcx]
mov qword [rsp + 0x200], r8
mov rbx, rcx
mov r12, rdx
test r15, r15
je 0x14037ec90
test r12, r12
je 0x14037eb26
cmp byte [r14 + 0x63], 0
jne 0x14037eb26
mov r10d, dword [rbx + 0x30]
test r10d, r10d
je 0x14037eb40
mov eax, 1
add rsp, 0x1a8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
xor r9d, r9d
xor r8d, r8d
mov edx, 0x15
mov rcx, rbx
mov qword [rsp + 0x20], 0
call fcn.1403390b0
test eax, eax
jne 0x14037eb26
mov rax, qword [rsp + 0x200]
cmp byte [rax], 6
ja 0x14037ebd1
mov r13, qword [r12 + 0x48]
test r13, r13
je 0x14037ebbf
mov rcx, qword [rbx]
test rcx, rcx
je 0x14037ef48
mov edx, 0x18
call fcn.14030f620
test rax, rax
je 0x14037f832
mov rdx, qword [rbx + 0x188]
lea rsi, [0x14031a670]
mov qword [rax], rdx
mov qword [rbx + 0x188], rax
mov qword [rax + 8], r13
mov qword [rax + 0x10], rsi
mov qword [r12 + 0x48], 0
mov eax, dword [r12 + 4]
and eax, 0xfffffffe
or eax, 0x400000
mov dword [r12 + 4], eax
xor r8d, r8d
mov rdx, r12
mov rcx, rbx
call fcn.14032ceb0
mov eax, dword [rbx + 0x30]
test eax, eax
jne 0x14037ed00
movzx eax, byte [r14 + 0x63]
test al, al
jne 0x14037ef28
test byte [r12 + 6], 0x80
je 0x14037ecb0
mov rbp, qword [r12 + 0x28]
mov eax, dword [rbp]
cmp eax, 1
jle 0x14037ecb0
lea edx, [rax - 2]
mov rsi, qword [rbp + 0x28]
lea r11, [rbp + 0x90]
lea rax, [rdx*8]
sub rax, rdx
shl rax, 4
lea rdi, [rbp + rax + 0x100]
jmp 0x14037ec49
add r11, 0x70
cmp rdi, r11
je 0x14037ecb0
cmp rsi, qword [r11 + 8]
jne 0x14037ec40
mov r13, qword [rbp + 0x20]
mov rdx, qword [r11]
mov rcx, r13
call fcn.14031d180
test eax, eax
jne 0x14037ec40
test r13, r13
je 0x140380fa3
mov r8, r13
lea rdx, str.target_object_alias_may_not_appear_in_FROM_clause:__s
mov rcx, rbx
call fcn.140338e90
movzx eax, byte [r14 + 0x63]
add dword [rbx + 0x30], eax
mov eax, 1
jmp 0x14037ed0f
cmp qword [rcx + 0xa0], 0
je 0x14037ecf0
mov rcx, rbx
call fcn.140322fe0
mov r15, rax
jmp 0x14037eb11
mov rax, qword [rsp + 0x200]
cmp byte [rax], 9
je 0x14037ef60
mov rdx, r12
mov rcx, rbx
call fcn.140356b00
mov dword [rsp + 0x50], eax
test eax, eax
je 0x14037ed60
movzx eax, byte [r14 + 0x63]
add dword [rbx + 0x30], eax
mov eax, 1
jmp 0x14037ed0f
test byte [r14 + 0x5c], 8
jne 0x14037ec9a
mov byte [rcx + 0x23], 1
jmp 0x14037ec9a
movzx edx, byte [r14 + 0x63]
add eax, edx
mov dword [rbx + 0x30], eax
mov eax, 1
mov edx, dword [rbx + 0x120]
test edx, edx
je 0x14037ed4f
mov rcx, qword [rbx + 0x10]
jns 0x14037ed28
mov esi, dword [rcx + 0x90]
lea edx, [rsi - 1]
mov r9, qword [rcx]
lea r8, [0x1407dad80]
cmp byte [r9 + 0x63], 0
jne 0x14037ed4b
movsxd rdx, edx
lea r8, [rdx + rdx*2]
mov rdx, qword [rcx + 0x88]
lea r8, [rdx + r8*8]
mov edx, dword [r8 + 8]
mov dword [rbx + 0x120], edx
jmp 0x14037eb2b
mov eax, dword [r12 + 4]
mov qword [rsp + 0xf8], 0
mov qword [rsp + 0x100], 0
mov r11, qword [r12 + 0x28]
mov qword [rsp + 0x108], 0
and eax, 8
mov dword [rsp + 0x70], eax
setne sil
mov rax, qword [r12 + 0x48]
xor ebp, ebp
mov qword [rsp + 0x110], 0
movzx esi, sil
mov qword [rsp + 0xf0], rax
mov rax, qword [r12 + 0x50]
mov qword [rsp + 0x118], 0
mov qword [rsp + 0x68], rax
test rax, rax
jne 0x14037ef70
mov qword [rsp + 0x58], r15
mov r15, r11
jmp 0x14037eea0
test r10, r10
je 0x14037ef18
mov rax, qword [r10 + 0x20]
movsx r8d, word [r13 + 0x46]
mov eax, dword [rax]
cmp r8d, eax
jne 0x14037f3f8
test byte [r10 + 4], 8
jne 0x14037ef18
cmp qword [r10 + 0x48], 0
je 0x14037ee40
test ebp, ebp
jne 0x14037ee40
test byte [r12 + 6], 4
je 0x14037ee40
cmp dword [r15], 1
je 0x14037ef38
test byte [r15 + 0xb4], 0xa
jne 0x14037ef38
nop dword [rax + rax]
mov r9d, esi
mov r8d, ebp
mov rdx, r12
mov rcx, rbx
call fcn.140341560
test eax, eax
je 0x14037ee65
mov edx, dword [rbx + 0x30]
test edx, edx
jne 0x140380c47
mov ebp, 0xffffffff
movzx eax, byte [r14 + 0x63]
mov r15, qword [r12 + 0x28]
test al, al
jne 0x14037ef20
mov rax, qword [rsp + 0x200]
add ebp, 1
cmp byte [rax], 8
jbe 0x14037ee94
mov rax, qword [r12 + 0x48]
mov qword [rsp + 0xf0], rax
cmp qword [r12 + 0x50], 0
jne 0x14037ef70
mov eax, dword [r15]
cmp eax, ebp
jle 0x14037efe0
movsxd rax, ebp
lea rdi, [rax*8]
sub rdi, rax
shl rdi, 4
add rdi, r15
mov r10, qword [rdi + 0x30]
mov r13, qword [rdi + 0x28]
test byte [rdi + 0x44], 8
je 0x14037ede8
mov rcx, qword [r12 + 0x30]
mov edx, dword [rdi + 0x4c]
mov qword [rsp + 0x48], r10
call fcn.14032b150
mov r10, qword [rsp + 0x48]
test eax, eax
je 0x14037ede8
test byte [r14 + 0x5d], 0x20
jne 0x14037ede8
and byte [rdi + 0x44], 0xd7
mov rcx, qword [r12 + 0x30]
mov edx, dword [rdi + 0x4c]
call fcn.140308450
jmp 0x14037ede8
add ebp, 1
jmp 0x14037ee94
mov edx, dword [rbx + 0x30]
add eax, edx
nop dword [rax]
mov dword [rbx + 0x30], eax
mov eax, 1
jmp 0x14037ed0f
mov ebp, 1
jmp 0x14037ee94
mov ecx, 0x18
call fcn.14030ef00
jmp 0x14037eb8d
mov rdx, r12
mov rcx, rbx
call fcn.140342610
jmp 0x14037ecc1
mov r8, qword [rsp + 0x200]
mov rdx, r12
mov rcx, rbx
call fcn.14038e940
cmp qword [r12 + 0x58], 0
jne 0x14037eb2b
mov edx, dword [rbx + 0x120]
test edx, edx
je 0x14037ed4f
mov rcx, qword [rbx + 0x10]
jns 0x14037efac
mov esi, dword [rcx + 0x90]
lea edx, [rsi - 1]
mov r9, qword [rcx]
lea r8, [0x1407dad80]
cmp byte [r9 + 0x63], 0
jne 0x14037ed4b
movsxd rdx, edx
imul rdx, rdx, 0x18
add rdx, qword [rcx + 0x88]
mov r8, rdx
jmp 0x14037ed4b
mov rdx, qword [r12 + 0x30]
mov r11, r15
mov r15, qword [rsp + 0x58]
test rdx, rdx
je 0x14037effb
cmp byte [rdx], 0x2c
je 0x1403807a3
lea rsi, [r11 + 8]
xor ebp, ebp
lea r13, [0x14076bfa0]
mov qword [rsp + 0x78], rsi
mov rdi, rsi
test eax, eax
jle 0x14037f431
mov qword [rsp + 0x1f8], r12
mov r12, r11
mov qword [rsp + 0x48], r14
jmp 0x14037f1c7
cmp dword [r12], 1
je 0x14037f046
test byte [r12 + 0xb4], 0xa
je 0x14037f2a9
cmp byte [r12 + 0x48], 0
jns 0x14037f05d
mov rax, qword [r12 + 0x70]
cmp byte [rax + 0x12], 0
je 0x14037f2c3
mov esi, dword [r15 + 0x90]
mov eax, dword [rbx + 0x38]
xor r9d, r9d
mov rcx, r15
mov edx, 0xd
lea r10d, [rsi + 1]
lea r8d, [rax + 1]
mov dword [rbx + 0x38], r8d
mov dword [r12 + 0x3c], r8d
mov dword [rsp + 0x20], r10d
mov dword [rsp + 0x80], r10d
call fcn.140322f70
mov eax, dword [r12 + 0x3c]
mov r9, rdi
mov rcx, rbx
mov r10d, dword [rsp + 0x80]
lea r8, str.CO_ROUTINE___S
mov edx, 1
mov dword [r12 + 0x38], r10d
mov dword [rsp + 0x154], eax
mov byte [rsp + 0x150], 0xd
mov qword [rsp + 0x168], 0
mov qword [rsp + 0x158], 0
mov dword [rsp + 0x160], 0
call fcn.140348b00
mov r8, qword [rsp + 0x60]
mov rdx, r14
mov rcx, rbx
call fcn.14037eae0
movzx edx, word [r14 + 2]
mov rax, qword [r12 + 0x28]
mov rcx, r15
mov word [rax + 0x4a], dx
mov edx, dword [r12 + 0x3c]
or byte [r12 + 0x48], 0x10
mov eax, dword [rsp + 0x15c]
mov dword [r12 + 0x40], eax
call fcn.140323f10
mov eax, dword [r15 + 0x90]
mov rcx, qword [r15]
test esi, esi
lea edx, [rax - 1]
cmovs esi, edx
cmp byte [rcx + 0x63], 0
lea rdx, [0x1407dad80]
jne 0x14037f15e
mov rdx, qword [r15 + 0x88]
movsxd rsi, esi
lea rcx, [rsi + rsi*2]
lea rdx, [rdx + rcx*8]
mov dword [rdx + 8], eax
mov byte [rbx + 0x1f], 0
mov dword [rbx + 0x28], 0
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax + 0x63]
test al, al
jne 0x14037f865
mov rcx, qword [rsp + 0x1f8]
lea rdx, [rsp + 0x120]
mov dword [rsp + 0x120], 0
call fcn.140311760
mov eax, dword [rsp + 0x120]
sub dword [rbx + 0x11c], eax
mov rax, qword [rsp + 0x58]
mov qword [rbx + 0x158], rax
add ebp, 1
add rdi, 0x70
cmp dword [r12], ebp
jle 0x14037f421
cmp qword [rdi + 0x58], 0
jne 0x14037f1f4
mov r8, qword [rdi + 0x10]
test r8, r8
je 0x14037f1f4
mov rax, qword [rdi + 8]
lea r9, [0x14075b22e]
mov edx, 0x14
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.1403390b0
mov r14, qword [rdi + 0x28]
test r14, r14
je 0x14037f1b6
lea rax, [rsp + 0x150]
mov rcx, qword [rsp + 0x1f8]
mov dword [rsp + 0x150], 0
mov rdx, rax
mov qword [rsp + 0x60], rax
call fcn.140311760
mov eax, dword [rsp + 0x150]
add dword [rbx + 0x11c], eax
mov rax, qword [rsp + 0x48]
test byte [rax + 0x5d], 0x10
jne 0x14037f28a
movsxd rdx, ebp
lea rax, [rdx*8]
sub rax, rdx
shl rax, 4
cmp byte [r12 + rax + 0x48], 0
jns 0x14037f261
mov rax, qword [rdi + 0x68]
cmp byte [rax + 0x12], 0
je 0x14037f28a
movzx eax, byte [rdi + 0x3c]
mov r9d, dword [rdi + 0x44]
mov rdx, r14
mov rcx, rbx
shr al, 5
and eax, 1
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0x1f8]
mov r8, qword [rax + 0x30]
call fcn.140340940
mov rax, qword [rbx + 0x158]
mov r10, qword [rdi + 0x10]
mov qword [rsp + 0x58], rax
mov qword [rbx + 0x158], r10
test ebp, ebp
je 0x14037f030
movsxd rdx, ebp
lea rax, [rdx*8]
sub rax, rdx
shl rax, 4
cmp byte [r12 + rax + 0x48], 0
jns 0x14037f2d4
mov rsi, qword [rdi + 0x68]
mov r9d, dword [rsi + 4]
test r9d, r9d
jg 0x14037f3af
mov rax, qword [rdi + 0x28]
mov qword [rsp + 0x80], rax
test byte [rax + 7], 1
jne 0x14037f890
mov rax, qword [rsp + 0x78]
mov rsi, rax
cmp rax, rdi
jb 0x14037f30d
jmp 0x14037f890
add rsi, 0x70
cmp rsi, rdi
jae 0x14037f890
mov r9, qword [rsi + 0x28]
test r9, r9
je 0x14037f300
test byte [rsi + 0x40], 0x10
jne 0x14037f300
mov r8, qword [rsi + 0x10]
test r8, r8
je 0x14037f300
mov rax, qword [rsi + 0x20]
mov r11, qword [rax + 0x70]
mov rax, qword [rdi + 0x20]
cmp qword [rax + 0x70], r11
jne 0x14037f300
test r10, r10
je 0x14037f300
xor ecx, ecx
jmp 0x14037f351
movzx edx, byte [r13 + rdx]
cmp byte [r13 + rax], dl
jne 0x14037f300
add rcx, 1
movzx eax, byte [r8 + rcx]
movzx edx, byte [r10 + rcx]
cmp eax, edx
jne 0x14037f340
test eax, eax
jne 0x14037f34d
test r11, r11
je 0x14037f872
test byte [r9 + 7], 1
jne 0x14037f300
mov r9d, dword [rsi + 0x30]
test r9d, r9d
jne 0x14037f842
mov r9d, dword [rsi + 0x44]
mov r8d, dword [rdi + 0x44]
mov edx, 0x64
mov rcx, r15
mov dword [rsp + 0x20], 0
call fcn.140322f70
mov rax, qword [rsi + 0x28]
movzx eax, word [rax + 2]
mov word [r14 + 2], ax
jmp 0x14037f16c
mov r8d, dword [rsi + 8]
mov dword [rsp + 0x20], 0
mov edx, 0xc
mov rcx, r15
call fcn.140322f70
mov r8d, dword [rdi + 0x44]
mov r9d, dword [rsi + 0xc]
cmp r8d, r9d
je 0x14037f3ea
mov dword [rsp + 0x20], 0
mov edx, 0x64
mov rcx, r15
call fcn.140322f70
movzx eax, word [rsi + 0x10]
mov word [r14 + 2], ax
jmp 0x14037f16c
mov dword [rsp + 0x20], eax
mov r9, qword [r13]
lea rdx, str.expected__d_columns_for__s_but_got__d
mov rcx, rbx
call fcn.140338e90
movzx eax, byte [r14 + 0x63]
add dword [rbx + 0x30], eax
mov eax, 1
jmp 0x14037ed0f
mov r11, r12
mov r14, qword [rsp + 0x48]
mov r12, qword [rsp + 0x1f8]
mov rax, qword [r12 + 0x20]
mov qword [rsp + 0x58], rax
mov rax, qword [r12 + 0x30]
mov qword [rsp + 0x78], rax
mov rax, qword [r12 + 0x38]
mov qword [rsp + 0x48], rax
mov rax, qword [r12 + 0x40]
mov qword [rsp + 0x80], rax
mov eax, dword [r12 + 4]
mov byte [rsp + 0xe4], al
and eax, 9
and byte [rsp + 0xe4], 1
cmp eax, 1
je 0x140380fab
mov rdx, qword [rsp + 0xf0]
test rdx, rdx
je 0x140380793
mov rsi, qword [rsp + 0x58]
xor r8d, r8d
mov rcx, rbx
mov qword [rsp + 0x60], r11
mov r9d, dword [rsi]
call fcn.14033dbf0
mov r8d, dword [rbx + 0x34]
mov rcx, r15
mov r9, rax
lea eax, [r8 + 1]
mov dword [rsp + 0xfc], r8d
mov dword [rbx + 0x34], eax
mov rax, qword [rsp + 0xf0]
mov edx, dword [rax]
mov eax, dword [rsi]
mov qword [rsp + 0x28], r9
mov dword [rsp + 0x30], 0xfffffff7
mov dword [rsp + 0x20], 0
lea r9d, [rdx + rax + 1]
mov edx, 0x70
call fcn.140323e70
mov r11, qword [rsp + 0x60]
mov dword [rsp + 0x108], eax
mov rax, qword [rsp + 0x200]
cmp byte [rax], 0xc
je 0x140381018
mov eax, dword [rbx + 0x44]
lea r8d, [rax - 1]
mov dword [rsp + 0x88], eax
mov dword [rbx + 0x44], r8d
test byte [r12 + 5], 0x40
jne 0x14037f531
mov r9d, 0x140
mov word [r12 + 2], r9w
mov rdx, r12
mov rcx, rbx
mov qword [rsp + 0x60], r11
call fcn.140388930
mov r8d, dword [r12 + 8]
mov r11, qword [rsp + 0x60]
test r8d, r8d
jne 0x14037f560
movsxd rax, dword [rsp + 0x108]
test eax, eax
jns 0x140380f75
test byte [r12 + 4], 1
jne 0x140380bb6
mov byte [rsp + 0xe5], 0
mov eax, dword [rsp + 0x70]
test eax, eax
jne 0x140380c53
cmp qword [rsp + 0x48], 0
jne 0x1403807cb
cmp byte [rsp + 0xe4], 0
movzx edx, word [r12 + 4]
setne al
mov rdi, qword [r12 + 0x70]
shl eax, 8
and dx, 0x4000
or edx, eax
mov word [rsp + 0x48], dx
test rdi, rdi
je 0x14037fa83
mov rax, qword [r12 + 0x28]
mov r13, qword [rbx + 0x10]
mov rax, qword [rax + 0x30]
mov rax, qword [rax + 0x20]
mov esi, dword [rax]
test r13, r13
je 0x1403812cc
mov r8d, dword [rdi + 0x58]
mov r9d, esi
mov edx, 0x70
mov rcx, r13
mov dword [rsp + 0x20], 0
mov qword [rsp + 0x60], r11
call fcn.140322f70
mov r9d, dword [rdi + 0x58]
mov edx, 0x64
mov rcx, r13
mov dword [rsp + 0x20], 0
lea r8d, [r9 + 1]
call fcn.140322f70
mov r9d, dword [rdi + 0x58]
mov edx, 0x64
mov rcx, r13
mov dword [rsp + 0x20], 0
lea r8d, [r9 + 2]
call fcn.140322f70
mov r9d, dword [rdi + 0x58]
mov edx, 0x64
mov rcx, r13
mov dword [rsp + 0x20], 0
lea r8d, [r9 + 3]
call fcn.140322f70
mov rax, qword [rdi + 0x10]
mov r11, qword [rsp + 0x60]
test rax, rax
je 0x14037f68c
mov edx, dword [rax]
mov eax, dword [rbx + 0x38]
xor r8d, r8d
mov rcx, r13
lea r9d, [rax + 1]
add eax, edx
mov dword [rdi + 0x6c], r9d
mov dword [rbx + 0x38], eax
lea eax, [rdx + r9 - 1]
mov edx, 0x48
mov dword [rsp + 0x20], eax
call fcn.140322f70
mov r11, qword [rsp + 0x60]
mov eax, dword [rbx + 0x38]
mov r8d, 1
mov rcx, r13
mov rsi, rdi
mov edx, 0x45
mov qword [rsp + 0x60], r11
lea rbp, str.nth_value
lea r9d, [rax + 1]
mov dword [rbx + 0x38], r9d
mov dword [rdi + 0x80], r9d
mov dword [rsp + 0x20], 0
call fcn.140322f70
cmp byte [rdi + 0x24], 0
mov r11, qword [rsp + 0x60]
jne 0x1403821d4
mov qword [rsp + 0x1f8], r12
mov r12, r13
mov qword [rsp + 0x60], r11
jmp 0x14037f7c5
cmp byte [rsi + 0x21], 0x5a
je 0x14037f7d3
mov rax, qword [rsi + 0x70]
xor r8d, r8d
xor r9d, r9d
mov rcx, rbx
mov rdx, qword [rax + 0x20]
call fcn.14033dbf0
mov r8d, dword [rbx + 0x34]
mov r13, rax
lea eax, [r8 + 1]
mov dword [rbx + 0x34], eax
mov eax, dword [rbx + 0x38]
mov dword [rsi + 0x64], r8d
lea edx, [rax + 1]
add eax, 3
mov dword [rsi + 0x68], edx
mov dword [rbx + 0x38], eax
test r13, r13
je 0x14038119b
mov rax, qword [rsi + 0x50]
mov rax, qword [rax + 0x38]
cmp byte [rax + 1], 0x69
jne 0x14037f74f
mov rax, qword [r13 + 0x18]
mov byte [rax], 1
mov r8d, dword [rsi + 0x64]
mov dword [rsp + 0x20], 0
mov r9d, 2
mov edx, 0x70
mov rcx, r12
call fcn.140322f70
mov rax, qword [r12]
cmp byte [rax + 0x63], 0
jne 0x140381427
movsxd rax, dword [r12 + 0x90]
lea rdx, [rax + rax*2]
mov rax, qword [r12 + 0x88]
lea rax, [rax + rdx*8 - 0x18]
mov byte [rax + 1], 0xf7
mov qword [rax + 0x10], r13
mov eax, dword [rsi + 0x68]
xor r8d, r8d
mov edx, 0x45
mov rcx, r12
mov dword [rsp + 0x20], 0
lea r9d, [rax + 1]
call fcn.140322f70
mov rsi, qword [rsi + 0x40]
test rsi, rsi
je 0x14037fa76
mov rax, qword [rsi + 0x50]
test byte [rax + 5], 0x10
jne 0x14037f6ec
mov rax, qword [rax + 0x38]
cmp rax, rbp
je 0x14037fa53
lea rcx, str.first_value
cmp rax, rcx
je 0x14037fa53
lea rcx, str.lead
cmp rax, rcx
je 0x14037f808
lea rdx, [0x140769cae]
cmp rax, rdx
jne 0x14037f7b8
mov r8d, dword [rbx + 0x34]
lea eax, [r8 + 1]
mov dword [rbx + 0x34], eax
mov dword [rsi + 0x64], r8d
mov r9d, dword [rdi + 0x58]
mov dword [rsp + 0x20], 0
mov edx, 0x64
mov rcx, r12
call fcn.140322f70
jmp 0x14037f7b8
mov rcx, qword [rbx]
mov rdx, r13
call fcn.14031a600
jmp 0x14037ebb6
mov r8d, dword [rsi + 0x34]
mov dword [rsp + 0x20], 0
mov edx, 0xc
mov rcx, r15
call fcn.140322f70
jmp 0x14037f380
movzx eax, byte [rsp + 0x60]
add dword [rbx + 0x30], eax
mov eax, 1
jmp 0x14037ed0f
mov rax, qword [rsp + 0x80]
mov ecx, dword [r9 + 0x10]
cmp dword [rax + 0x10], ecx
je 0x14037f36c
jmp 0x14037f300
mov eax, dword [rbx + 0x38]
mov esi, dword [r15 + 0x90]
lea r9d, [rax + 1]
mov dword [rbx + 0x38], r9d
mov dword [rdi + 0x34], r9d
cmp esi, dword [r15 + 0x94]
jge 0x140381250
movsxd rax, esi
lea edx, [rsi + 1]
lea rcx, [rax + rax*2]
mov rax, qword [r15 + 0x88]
mov dword [r15 + 0x90], edx
lea rax, [rax + rcx*8]
mov dword [rax + 8], r9d
mov dword [rax + 0xc], 0
mov qword [rax + 0x10], 0
mov qword [rax], 0x45
movsxd r11, ebp
mov dword [rdi + 0x30], edx
lea rax, [r11*8]
sub rax, r11
shl rax, 4
test byte [r12 + rax + 0x48], 8
je 0x140381050
mov eax, dword [rdi + 0x44]
mov r9, rdi
lea r8, str.MATERIALIZE___S
mov rcx, rbx
mov edx, 1
mov qword [rsp + 0x80], r11
mov dword [rsp + 0x154], eax
mov byte [rsp + 0x150], 0xc
mov qword [rsp + 0x168], 0
mov qword [rsp + 0x158], 0
mov dword [rsp + 0x160], 0
call fcn.140348b00
mov r8, qword [rsp + 0x60]
mov rdx, r14
mov rcx, rbx
call fcn.14037eae0
mov rax, qword [rdi + 0x20]
movzx edx, word [r14 + 2]
mov r11, qword [rsp + 0x80]
mov word [rax + 0x4a], dx
mov eax, dword [r15 + 0x90]
mov r8d, dword [rdi + 0x34]
cmp dword [r15 + 0x94], eax
jle 0x140381229
lea edx, [rax + 1]
mov dword [r15 + 0x90], edx
movsxd rdx, eax
lea rcx, [rdx + rdx*2]
mov rdx, qword [r15 + 0x88]
lea rdx, [rdx + rcx*8]
mov dword [rdx + 4], r8d
mov qword [rdx + 8], 0
mov qword [rdx + 0x10], 0
mov dword [rdx], 0x41
test esi, esi
jns 0x14037f9df
mov esi, dword [r15 + 0x90]
sub esi, 1
mov rcx, qword [r15]
lea rdx, [0x1407dad80]
cmp byte [rcx + 0x63], 0
jne 0x14037fa01
mov rdx, qword [r15 + 0x88]
movsxd rsi, esi
lea rcx, [rsi + rsi*2]
lea rdx, [rdx + rcx*8]
mov dword [rdx + 4], eax
lea rax, [r11*8]
sub rax, r11
mov byte [rbx + 0x1f], 0
shl rax, 4
mov dword [rbx + 0x28], 0
movzx eax, byte [r12 + rax + 0x48]
and eax, 0xffffff88
cmp al, 0x80
jne 0x14037f16c
mov edx, dword [rdi + 0x30]
mov rax, qword [rdi + 0x68]
mov dword [rax + 4], edx
mov edx, dword [rdi + 0x34]
mov dword [rax + 8], edx
mov edx, dword [rdi + 0x44]
mov dword [rax + 0xc], edx
movzx edx, word [r14 + 2]
mov word [rax + 0x10], dx
jmp 0x14037f16c
mov eax, dword [rbx + 0x38]
mov r8d, dword [rbx + 0x34]
lea edx, [rax + 1]
add eax, 2
mov dword [rsi + 0x68], edx
lea edx, [r8 + 1]
mov dword [rbx + 0x34], edx
mov dword [rsi + 0x64], r8d
mov dword [rbx + 0x38], eax
jmp 0x14037f817
mov r11, qword [rsp + 0x60]
mov r12, qword [rsp + 0x1f8]
movsx eax, word [r12 + 2]
mov r8, qword [rsp + 0x78]
mov rdx, r11
mov rcx, rbx
mov r9, qword [rsp + 0xf0]
mov dword [rsp + 0x30], eax
movzx eax, word [rsp + 0x48]
mov dword [rsp + 0x28], eax
mov rax, qword [r12 + 0x20]
mov qword [rsp + 0x20], rax
call fcn.14037c580
mov qword [rsp + 0x60], rax
test rax, rax
je 0x14037ecd8
mov rax, qword [rsp + 0x60]
movzx eax, word [rax + 0x48]
cmp word [r12 + 2], ax
jle 0x14037fadd
mov word [r12 + 2], ax
cmp byte [rsp + 0xe4], 0
je 0x14037fafb
mov rax, qword [rsp + 0x60]
movzx eax, byte [rax + 0x43]
test al, al
je 0x14037fafb
mov byte [rsp + 0xe5], al
mov rdx, qword [rsp + 0xf0]
test rdx, rdx
je 0x140380f59
mov rax, qword [rsp + 0x60]
movsx ecx, byte [rax + 0x41]
mov dword [rsp + 0xf8], ecx
test byte [rax + 0x44], 4
je 0x14038133d
mov rsi, qword [rsp + 0x60]
movzx eax, byte [rsi + 0x40]
sub eax, 1
cdqe
lea rax, [rax + rax*2]
shl rax, 5
mov eax, dword [rsi + rax + 0x370]
mov dword [rsp + 0x110], eax
cmp dword [rdx], ecx
je 0x140380f4d
test rdi, rdi
je 0x140381272
mov eax, dword [rbx + 0x44]
mov rbp, qword [rbx + 0x10]
lea esi, [rax - 2]
mov dword [rsp + 0xd0], eax
lea edi, [rax - 1]
sub eax, 3
mov dword [rsp + 0xc4], esi
mov esi, dword [rbx + 0x38]
mov dword [rsp + 0x90], eax
add esi, 1
mov dword [rbx + 0x44], eax
mov dword [rsp + 0xa8], esi
mov dword [rbx + 0x38], esi
mov rsi, qword [r12 + 0x70]
mov dword [rsp + 0x9c], eax
mov rcx, qword [rsi + 0x18]
mov qword [rsp + 0x78], rcx
test rbp, rbp
je 0x1403811d2
mov rax, qword [r12 + 0x28]
mov r13d, dword [rax + 0x4c]
mov rax, qword [rax + 0x28]
movsx eax, word [rax + 0x46]
mov dword [rsp + 0x168], edi
mov qword [rsp + 0x178], 0
mov dword [rsp + 0x80], eax
mov eax, dword [rsp + 0x9c]
mov qword [rsp + 0x180], 0
sub eax, 1
mov qword [rsp + 0x188], 0
mov dword [rbx + 0x44], eax
mov dword [rsp + 0xac], eax
mov eax, dword [rsp + 0xa8]
mov qword [rsp + 0x170], 0
mov qword [rsp + 0x190], 0
mov dword [rsp + 0x16c], eax
mov eax, dword [rsi + 0x58]
mov qword [rsp + 0x150], rbx
mov dword [rsp + 0x184], eax
lea edi, [rax + 1]
lea edx, [rax + 2]
add eax, 3
mov qword [rsp + 0x158], rsi
mov qword [rsp + 0x160], rbp
mov dword [rsp + 0x17c], edx
mov dword [rsp + 0x18c], eax
movzx eax, byte [rsi + 0x21]
mov dword [rsp + 0xb0], edi
cmp al, 0x56
je 0x140381451
cmp al, 0x5a
je 0x140381497
mov dword [rsp + 0x174], 2
mov eax, dword [rbx + 0x38]
lea edi, [rax + 1]
add eax, dword [rsp + 0x80]
lea edx, [rax + 2]
mov dword [rsp + 0xa0], edi
lea edi, [rax + 1]
mov dword [rbx + 0x38], edx
mov dword [rsp + 0x178], edx
mov dword [rsp + 0xb4], edi
movzx edi, byte [rsi + 0x21]
lea edx, [rdi - 0x56]
xor edi, edi
and edx, 0xfd
jne 0x14037fccf
lea edi, [rax + 3]
mov dword [rbx + 0x38], edi
movzx eax, byte [rsi + 0x22]
mov dword [rsp + 0x48], 0
sub eax, 0x56
test al, 0xfd
jne 0x14037fcef
mov eax, dword [rbx + 0x38]
add eax, 1
mov dword [rsp + 0x48], eax
mov dword [rbx + 0x38], eax
cmp byte [rsi + 0x20], 0x4c
je 0x14038147f
mov rax, qword [rsp + 0x78]
xor edx, edx
test rax, rax
je 0x14037fd07
mov edx, dword [rax]
mov rax, qword [rsi + 0x10]
mov ecx, dword [rsp + 0xa0]
add ecx, dword [rsi + 0x78]
mov dword [rsp + 0xc0], ecx
test rax, rax
je 0x14037fd2c
mov eax, dword [rax]
add ecx, eax
mov dword [rsp + 0xc0], ecx
mov eax, dword [rbx + 0x38]
lea ecx, [rax + 1]
add eax, edx
mov dword [rsp + 0x70], ecx
lea ecx, [rax + 1]
add eax, edx
mov dword [rsp + 0x180], ecx
lea ecx, [rax + 1]
add eax, edx
mov dword [rsp + 0x188], ecx
lea ecx, [rax + 1]
add eax, edx
mov dword [rsp + 0x190], ecx
mov dword [rbx + 0x38], eax
mov eax, dword [rsp + 0x80]
xor r9d, r9d
test eax, eax
jle 0x14037fddf
mov qword [rsp + 0xb8], r14
mov r14d, dword [rsp + 0x80]
mov dword [rsp + 0xd4], edi
mov edi, r13d
mov r13, r12
mov r12, rbx
mov ebx, dword [rsp + 0xa0]
mov qword [rsp + 0xc8], rsi
mov esi, r9d
nop
lea eax, [rbx + rsi]
mov r9d, esi
mov r8d, edi
mov edx, 0x5b
mov dword [rsp + 0x20], eax
mov rcx, rbp
add esi, 1
call fcn.140322f70
cmp r14d, esi
jne 0x14037fda0
mov r14, qword [rsp + 0xb8]
mov rsi, qword [rsp + 0xc8]
mov rbx, r12
mov r12, r13
mov edi, dword [rsp + 0xd4]
mov eax, dword [rsp + 0xb4]
mov r9d, dword [rsp + 0x80]
mov edx, 0x5d
mov rcx, rbp
mov r8d, dword [rsp + 0xa0]
mov dword [rsp + 0x20], eax
call fcn.140322f70
mov rdx, qword [rsi + 0x10]
test rdx, rdx
je 0x1403811fa
mov eax, dword [rdx]
xor r9d, r9d
xor r8d, r8d
mov rcx, rbx
mov dword [rsp + 0xc8], eax
mov eax, dword [rsp + 0xa0]
add eax, dword [rsi + 0x78]
mov dword [rsp + 0xa0], eax
call fcn.14033dbf0
mov r9d, dword [rsi + 0x6c]
mov r10d, dword [rbp + 0x90]
mov r13, rax
mov eax, dword [rbx + 0x38]
add eax, 1
mov dword [rsp + 0x80], eax
mov dword [rbx + 0x38], eax
cmp r10d, dword [rbp + 0x94]
jge 0x14038245e
lea eax, [r10 + 1]
mov ecx, dword [rsp + 0xa0]
mov dword [rbp + 0x90], eax
movsxd rax, r10d
imul rax, rax, 0x18
add rax, qword [rbp + 0x88]
mov dword [rax + 4], ecx
mov ecx, dword [rsp + 0xc8]
mov dword [rax + 8], r9d
mov dword [rax + 0xc], ecx
mov qword [rax + 0x10], 0
mov dword [rax], 0x57
mov rax, qword [rbp]
cmp byte [rax + 0x63], 0
jne 0x140381e5a
movsxd rax, dword [rbp + 0x90]
mov rdx, qword [rbp + 0x88]
imul rax, rax, 0x18
lea rax, [rdx + rax - 0x18]
mov byte [rax + 1], 0xf7
mov qword [rax + 0x10], r13
lea r8d, [r10 + 2]
lea r9d, [r10 + 4]
mov edx, 0x10
mov rcx, rbp
mov dword [rsp + 0x20], r8d
call fcn.140322f70
mov eax, dword [rbp + 0x90]
mov dword [rsp + 0xb8], eax
cmp eax, dword [rbp + 0x94]
jge 0x140382486
mov ecx, dword [rsp + 0xb8]
lea eax, [rcx + 1]
mov dword [rbp + 0x90], eax
movsxd rax, ecx
mov ecx, dword [rsp + 0x80]
imul rax, rax, 0x18
add rax, qword [rbp + 0x88]
mov dword [rax + 4], ecx
mov qword [rax + 8], 0
mov qword [rax + 0x10], 0
mov dword [rax], 0xc
mov eax, dword [rsp + 0xc8]
mov r9d, dword [rsi + 0x6c]
mov edx, 0x4d
mov rcx, rbp
mov r8d, dword [rsp + 0xa0]
sub eax, 1
mov dword [rsp + 0x20], eax
call fcn.140322f70
mov r13d, dword [rsp + 0xb0]
mov dword [rsp + 0x20], 0
mov edx, 0x7b
mov rcx, rbp
mov r9d, dword [rsp + 0x178]
mov r8d, r13d
call fcn.140322f70
mov r8d, r13d
mov edx, 0x7c
mov rcx, rbp
mov eax, dword [rsp + 0x178]
mov r9d, dword [rsp + 0xb4]
mov dword [rsp + 0x20], eax
call fcn.140322f70
mov eax, dword [rbp + 0x90]
mov edx, dword [rsp + 0x178]
mov r8d, dword [rsi + 0x80]
mov dword [rsp + 0xa0], eax
cmp eax, dword [rbp + 0x94]
jge 0x140381e9d
mov ecx, dword [rsp + 0xa0]
lea eax, [rcx + 1]
mov dword [rbp + 0x90], eax
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [rbp + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 4], r8d
mov dword [rax + 8], 0
mov dword [rax + 0xc], edx
mov qword [rax + 0x10], 0
mov dword [rax], 0x34
mov rdx, rsi
mov rcx, rbx
call fcn.1403235e0
mov dword [rsp + 0x170], eax
test edi, edi
je 0x140380089
cmp qword [rbx + 0x10], 0
je 0x140380072
mov r13, qword [rsi + 0x28]
mov r8d, edi
mov rcx, rbx
mov rdx, r13
call fcn.140383cc0
mov r8d, eax
cmp edi, eax
je 0x140380072
test byte [r13 + 6], 0x20
mov rcx, qword [rbx + 0x10]
mov r9d, edi
mov dword [rsp + 0x20], 0
sete dl
add edx, 0x4d
movzx edx, dl
call fcn.140322f70
xor eax, eax
cmp byte [rsi + 0x20], 0x59
mov edx, edi
mov rcx, rbx
sete al
lea r8d, [rax + rax*2]
call fcn.1403258c0
mov r9d, dword [rsp + 0x48]
test r9d, r9d
je 0x1403800f2
cmp qword [rbx + 0x10], 0
je 0x1403800d8
mov r13, qword [rsi + 0x30]
mov r8d, r9d
mov rcx, rbx
mov rdx, r13
call fcn.140383cc0
mov r9d, dword [rsp + 0x48]
mov r8d, eax
cmp r9d, eax
je 0x1403800d8
test byte [r13 + 6], 0x20
mov rcx, qword [rbx + 0x10]
mov dword [rsp + 0x20], 0
sete dl
add edx, 0x4d
movzx edx, dl
call fcn.140322f70
xor eax, eax
cmp byte [rsi + 0x20], 0x59
mov edx, dword [rsp + 0x48]
mov rcx, rbx
sete al
lea r8d, [rax + rax*2 + 1]
call fcn.1403258c0
cmp byte [rsi + 0x20], 0x59
movzx eax, byte [rsi + 0x21]
lea r13, [rsp + 0x150]
je 0x14038115e
cmp byte [rsi + 0x22], al
jne 0x140380115
test edi, edi
jne 0x1403825b8
cmp al, 0x56
je 0x140381d36
cmp al, 0x5a
jne 0x140381166
mov dword [rsp + 0x20], 0
mov r8d, dword [rsp + 0x184]
mov edx, 0x25
mov rcx, rbp
mov r9d, 1
call fcn.140322f70
mov dword [rsp + 0x20], 0
mov rcx, rbp
mov r8d, dword [rsp + 0x18c]
mov r9d, 1
mov edx, 0x25
call fcn.140322f70
mov ecx, dword [rsp + 0x70]
test ecx, ecx
je 0x140380237
mov rax, qword [rsp + 0x78]
test rax, rax
je 0x140380237
mov edx, dword [rax]
mov r8d, dword [rsp + 0xc0]
mov r9d, ecx
mov dword [rsp + 0x70], ecx
mov rcx, rbp
lea eax, [rdx - 1]
mov edx, 0x4d
mov dword [rsp + 0x20], eax
call fcn.140322f70
mov rax, qword [rsp + 0x78]
mov r8d, dword [rsp + 0x70]
mov rcx, rbp
mov r9d, dword [rsp + 0x180]
mov edx, dword [rax]
lea eax, [rdx - 1]
mov dword [rsp + 0xb4], edx
mov edx, 0x4d
mov dword [rsp + 0x20], eax
call fcn.140322f70
mov rax, qword [rsp + 0x78]
mov r8d, dword [rsp + 0x70]
mov rcx, rbp
mov r9d, dword [rsp + 0x188]
mov edx, dword [rax]
lea eax, [rdx - 1]
mov dword [rsp + 0xb4], edx
mov edx, 0x4d
mov dword [rsp + 0x20], eax
call fcn.140322f70
mov rax, qword [rsp + 0x78]
mov r8d, dword [rsp + 0x70]
mov rcx, rbp
mov r9d, dword [rsp + 0x190]
mov edx, 0x4d
mov eax, dword [rax]
mov dword [rsp + 0xb4], eax
sub eax, 1
mov dword [rsp + 0x20], eax
call fcn.140322f70
mov dword [rsp + 0x20], 0
xor r8d, r8d
mov edx, 0xb
mov rcx, rbp
mov r9d, dword [rsp + 0xac]
call fcn.140322f70
mov ecx, dword [rsp + 0xa0]
mov eax, dword [rbp + 0x90]
test ecx, ecx
lea edx, [rax - 1]
cmovns edx, ecx
mov rcx, qword [rbp]
cmp byte [rcx + 0x63], 0
mov r9d, edx
lea rdx, [0x1407dad80]
jne 0x140380292
movsxd rdx, r9d
lea rcx, [rdx + rdx*2]
mov rdx, qword [rbp + 0x88]
lea rdx, [rdx + rcx*8]
mov r11d, dword [rsp + 0x70]
mov dword [rdx + 8], eax
test r11d, r11d
jne 0x140381345
cmp byte [rsi + 0x21], 0x56
je 0x140381dac
cmp byte [rsi + 0x22], 0x58
je 0x140381592
xor r9d, r9d
xor r8d, r8d
mov edx, 3
mov rcx, r13
call fcn.14038bac0
cmp byte [rsi + 0x22], 0x5a
je 0x14038141e
cmp byte [rsi + 0x20], 0x59
je 0x14038239a
cmp dword [rsp + 0x48], 0
jne 0x14038136f
xor r9d, r9d
xor r8d, r8d
mov edx, 1
mov rcx, r13
call fcn.14038bac0
mov rcx, r13
xor r9d, r9d
mov r8d, edi
mov edx, 2
call fcn.14038bac0
mov rcx, qword [rbp + 0x18]
mov r8d, dword [rsp + 0x9c]
mov eax, dword [rcx + 0x44]
neg r8d
add eax, dword [rcx + 0x48]
js 0x14038176b
mov edx, dword [rbp + 0x90]
mov rax, qword [rcx + 0x50]
movsxd r8, r8d
mov dword [rax + r8*4], edx
mov rcx, qword [rsp + 0x60]
call fcn.1403262b0
cmp qword [rsi + 0x10], 0
mov eax, dword [rbp + 0x90]
je 0x1403811c9
mov dword [rsp + 0x50], eax
cmp eax, dword [rbp + 0x94]
jge 0x1403826e9
mov ecx, dword [rsp + 0x50]
lea eax, [rcx + 1]
mov dword [rbp + 0x90], eax
movsxd rax, ecx
mov ecx, dword [rsp + 0x80]
imul rax, rax, 0x18
add rax, qword [rbp + 0x88]
mov dword [rax + 8], ecx
mov dword [rax + 0xc], 0
mov qword [rax + 0x10], 0
mov qword [rax], 0x45
mov ecx, dword [rsp + 0xb8]
mov eax, dword [rbp + 0x90]
mov rdx, qword [rbp]
mov dword [rsp + 0x60], eax
sub eax, 1
test ecx, ecx
cmovns eax, ecx
cmp byte [rdx + 0x63], 0
mov ecx, eax
lea rax, [0x1407dad80]
jne 0x1403803db
movsxd rax, ecx
imul rax, rax, 0x18
add rax, qword [rbp + 0x88]
mov ecx, dword [rsp + 0x60]
mov dword [rax + 8], ecx
mov dword [rsp + 0x178], 0
mov eax, dword [rsp + 0x60]
cmp dword [rbp + 0x94], eax
jle 0x140381e31
mov ecx, dword [rsp + 0x60]
lea eax, [rcx + 1]
mov dword [rbp + 0x90], eax
movsxd rax, ecx
mov ecx, dword [rsp + 0xb0]
lea rdx, [rax + rax*2]
mov rax, qword [rbp + 0x88]
lea rax, [rax + rdx*8]
mov dword [rax + 4], ecx
mov qword [rax + 8], 0
mov qword [rax + 0x10], 0
mov dword [rax], 0x25
cmp byte [rsi + 0x22], 0x58
je 0x140381de0
xor r9d, r9d
xor r8d, r8d
cmp byte [rsi + 0x21], 0x56
mov edx, 3
mov rcx, r13
je 0x1403815ec
call fcn.14038bac0
xor r8d, r8d
mov edx, 1
mov rcx, r13
mov r10d, dword [rbp + 0x90]
mov r9d, 1
mov dword [rsp + 0x70], r10d
call fcn.14038bac0
xor r9d, r9d
mov r8d, edi
mov edx, 2
mov rcx, r13
mov dword [rsp + 0x48], eax
call fcn.14038bac0
mov r10d, dword [rsp + 0x70]
xor r8d, r8d
mov rcx, rbp
mov dword [rsp + 0x20], 0
mov edx, 0xb
mov r9d, r10d
call fcn.140322f70
mov r11d, dword [rsp + 0x48]
mov eax, dword [rbp + 0x90]
test r11d, r11d
lea edx, [rax - 1]
cmovs r11d, edx
mov rdx, qword [rbp]
movzx ecx, byte [rdx + 0x63]
lea rdx, [0x1407dad80]
test cl, cl
jne 0x1403804f2
movsxd rdx, r11d
imul rdx, rdx, 0x18
add rdx, qword [rbp + 0x88]
mov dword [rdx + 8], eax
mov edi, dword [rsp + 0x60]
lea edx, [rax - 1]
test edi, edi
cmovns edx, edi
mov edi, edx
lea rdx, [0x1407dad80]
test cl, cl
jne 0x140380520
movsxd rdx, edi
lea rcx, [rdx + rdx*2]
mov rdx, qword [rbp + 0x88]
lea rdx, [rdx + rcx*8]
mov dword [rdx + 8], eax
xor r9d, r9d
mov edx, 0x8e
mov rcx, rbp
mov dword [rsp + 0x20], 0
mov r8d, dword [rsp + 0x184]
call fcn.140322f70
cmp qword [rsi + 0x10], 0
je 0x1403805b0
mov r9d, dword [rsi + 0x84]
test r9d, r9d
jne 0x140381d6d
mov esi, dword [rsp + 0x50]
mov edx, dword [rbp + 0x90]
mov rcx, qword [rbp]
test esi, esi
lea eax, [rdx - 1]
cmovns eax, esi
cmp byte [rcx + 0x63], 0
mov esi, eax
lea rax, [0x1407dad80]
jne 0x14038058d
movsxd rax, esi
imul rax, rax, 0x18
add rax, qword [rbp + 0x88]
mov dword [rax + 4], edx
xor r9d, r9d
mov edx, 0x41
mov rcx, rbp
mov dword [rsp + 0x20], 0
mov r8d, dword [rsp + 0x80]
call fcn.140322f70
mov dword [rsp + 0x20], 0
xor r8d, r8d
mov rcx, r15
mov edx, 0xb
mov r9d, dword [rsp + 0x90]
call fcn.140322f70
mov rcx, qword [r15 + 0x18]
mov r8d, dword [rsp + 0xd0]
mov eax, dword [rcx + 0x44]
neg r8d
add eax, dword [rcx + 0x48]
js 0x1403817b3
mov edx, dword [r15 + 0x90]
mov rax, qword [rcx + 0x50]
movsxd r8, r8d
mov dword [rax + r8*4], edx
mov eax, dword [rsp + 0x90]
mov esi, dword [rsp + 0xc4]
mov rcx, rbx
mov rdx, r12
mov r8d, 0xffffffff
lea r9, [rsp + 0xf0]
mov dword [rsp + 0x110], 0
mov dword [rsp + 0x38], eax
mov rax, qword [rsp + 0x200]
mov dword [rsp + 0x30], esi
not esi
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0xe4]
mov qword [rsp + 0x20], rax
call fcn.14038c860
mov rcx, qword [r15 + 0x18]
movsxd r8, esi
mov eax, dword [rcx + 0x44]
add eax, dword [rcx + 0x48]
js 0x1403817a6
mov edx, dword [r15 + 0x90]
mov rax, qword [rcx + 0x50]
mov dword [rax + r8*4], edx
mov dword [rsp + 0x20], 0
xor r9d, r9d
mov rcx, r15
mov edx, 0x41
mov r8d, dword [rsp + 0xa8]
call fcn.140322f70
mov rcx, qword [r15 + 0x18]
mov r8d, dword [rsp + 0x90]
mov eax, dword [rcx + 0x44]
add eax, dword [rcx + 0x48]
not r8d
js 0x140381799
mov edx, dword [r15 + 0x90]
mov rax, qword [rcx + 0x50]
movsxd r8, r8d
mov dword [rax + r8*4], edx
cmp byte [rsp + 0xe5], 3
je 0x140381320
cmp qword [rsp + 0xf0], 0
je 0x14038072f
mov eax, dword [rsp + 0xf8]
lea r9, str.RIGHT_PART_OF_ORDER_BY
lea r8, str.USE_TEMP_B_TREE_FOR__s
mov rcx, rbx
test eax, eax
lea rax, str.ORDER_BY
cmovle r9, rax
xor edx, edx
call fcn.140348b00
mov rax, qword [rsp + 0x200]
mov rdx, r12
mov rcx, rbx
lea r8, [rsp + 0xf0]
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x58]
mov r9d, dword [rax]
call fcn.14032da50
mov rcx, qword [r15 + 0x18]
mov r8d, dword [rsp + 0x88]
mov eax, dword [rcx + 0x44]
neg r8d
add eax, dword [rcx + 0x48]
js 0x14038118e
mov edx, dword [r15 + 0x90]
mov rax, qword [rcx + 0x50]
movsxd r8, r8d
mov dword [rax + r8*4], edx
mov ecx, dword [rbx + 0x30]
xor eax, eax
test ecx, ecx
setg al
movzx edx, byte [r14 + 0x63]
add edx, ecx
mov dword [rbx + 0x30], edx
mov rdx, qword [rsp + 0x68]
test rdx, rdx
je 0x14037ed0f
mov rcx, r14
mov dword [rsp + 0x48], eax
call fcn.14031a600
mov eax, dword [rsp + 0x48]
jmp 0x14037ed0f
mov dword [rsp + 0x108], 0xffffffff
jmp 0x14037f4fa
test byte [r14 + 0x5d], 0x80
jne 0x14037effb
mov rdx, r12
mov rcx, rbx
mov qword [rsp + 0x48], r11
call fcn.14033d5b0
mov r11, qword [rsp + 0x48]
mov eax, dword [r11]
jmp 0x14037effb
mov rcx, qword [r12 + 0x20]
mov edx, dword [rcx]
lea rax, [rcx + 8]
test edx, edx
jle 0x140380801
sub edx, 1
shl rdx, 5
lea rdx, [rcx + rdx + 0x28]
nop word cs:[rax + rax]
xor r10d, r10d
add rax, 0x20
mov word [rax - 6], r10w
cmp rax, rdx
jne 0x1403807f0
mov rax, qword [rsp + 0x48]
mov ecx, dword [rax]
add rax, 8
test ecx, ecx
jle 0x140380839
mov rsi, qword [rsp + 0x48]
lea edx, [rcx - 1]
shl rdx, 5
lea rdx, [rsi + rdx + 0x28]
nop dword [rax]
xor r9d, r9d
add rax, 0x20
mov word [rax - 6], r9w
cmp rax, rdx
jne 0x140380828
cmp word [r12 + 2], 0x42
jle 0x14038084e
mov r8d, 0x42
mov word [r12 + 2], r8w
mov r9, qword [rsp + 0xf0]
mov dword [rsp + 0x90], 0
test r9, r9
je 0x14038086f
cmp dword [r9], ecx
je 0x140381535
mov eax, dword [rbx + 0x44]
mov edx, 0x40
mov rcx, r14
mov qword [rsp + 0x60], r11
mov dword [rsp + 0xac], eax
sub eax, 1
mov dword [rbx + 0x44], eax
mov dword [rsp + 0x9c], eax
call fcn.14030f620
mov r11, qword [rsp + 0x60]
test rax, rax
mov rbp, rax
je 0x140380932
mov qword [rbp], 0
mov qword [rbp + 8], 0
mov qword [rbp + 0x10], 0
mov qword [rbp + 0x18], 0
mov qword [rbp + 0x20], 0
mov qword [rbp + 0x28], 0
mov qword [rbp + 0x30], 0
mov qword [rbp + 0x38], 0
mov rcx, qword [rbx]
mov qword [rsp + 0x60], r11
test rcx, rcx
je 0x140381215
mov edx, 0x18
call fcn.14030f620
mov r11, qword [rsp + 0x60]
test rax, rax
je 0x14038236a
mov rdx, qword [rbx + 0x188]
lea rsi, [fcn.1403150f0]
mov qword [rax], rdx
mov qword [rbx + 0x188], rax
mov qword [rax + 8], rbp
mov qword [rax + 0x10], rsi
movzx eax, byte [r14 + 0x63]
mov byte [rsp + 0x60], al
test al, al
jne 0x14037f860
mov eax, dword [r12 + 0x10]
mov rsi, qword [rsp + 0x48]
mov qword [rsp + 0x70], r11
lea r13, [rsp + 0x150]
mov dword [rbp + 0x3c], eax
mov eax, dword [rbx + 0x38]
mov qword [rsp + 0x168], 0
add eax, 1
mov qword [rsp + 0x170], 0
mov qword [rsp + 0x178], 0
mov qword [rsp + 0x180], 0
mov qword [rsp + 0x150], rbx
mov qword [rsp + 0x158], r11
mov qword [rsp + 0x160], rbp
mov dword [rbp + 0x10], eax
test rsi, rsi
je 0x14038171e
mov eax, dword [rsi]
mov rdx, qword [rsp + 0x58]
mov qword [rbp + 0x18], rsi
mov rcx, r13
mov dword [rbp + 0xc], eax
call fcn.14032b260
mov rdx, qword [rsp + 0xf0]
mov rcx, r13
call fcn.14032b260
mov r11, qword [rsp + 0x70]
cmp qword [rsp + 0x80], 0
je 0x140380ab3
lea rdx, [rsp + 0x130]
xor eax, eax
mov ecx, 6
mov rdi, rdx
mov rdx, qword [r12 + 0x40]
lea rsi, [rsp + 0x120]
rep stosd dword [rdi], eax
lea rax, [0x1403407d0]
mov qword [rsp + 0x120], rbx
mov qword [rsp + 0x128], rax
mov qword [rsp + 0x148], r12
test rdx, rdx
je 0x140380a43
mov rcx, rsi
call fcn.14032aeb0
mov r11, qword [rsp + 0x70]
mov rax, qword [r12 + 0x30]
mov qword [rsp + 0x78], rax
lea rax, [0x140348460]
mov rdx, qword [rsp + 0x80]
mov rcx, rsi
mov qword [rsp + 0x70], r11
mov qword [rsp + 0x128], rax
lea rax, [0x140307c20]
mov qword [rsp + 0x130], rax
lea rax, [0x140307c30]
mov qword [rsp + 0x138], rax
mov dword [rsp + 0x140], 0
mov qword [rsp + 0x148], r13
mov qword [rsp + 0x120], 0
call fcn.14032aeb0
mov r11, qword [rsp + 0x70]
mov eax, dword [rbp + 0x28]
cmp qword [r12 + 0x38], 0
mov qword [rsp + 0x70], 0
mov dword [rbp + 0x2c], eax
je 0x140381778
mov edx, dword [rbp + 0x38]
test edx, edx
jle 0x140380c82
mov rdx, qword [rbp + 0x30]
mov qword [rsp + 0x1f0], rbx
mov eax, dword [rsp + 0x178]
xor esi, esi
mov rdi, r11
jmp 0x140380b1e
mov eax, dword [rsp + 0x178]
mov edx, dword [rbp + 0x38]
add rsi, 1
and eax, 0xfffdffff
mov dword [rsp + 0x178], eax
cmp edx, esi
jle 0x140380c77
mov rdx, qword [rbp + 0x30]
mov rcx, rsi
or eax, 0x20000
shl rcx, 5
mov rbx, qword [rdx + rcx]
mov rcx, r13
mov dword [rsp + 0x178], eax
mov rdx, qword [rbx + 0x20]
call fcn.14032b260
test byte [rbx + 7], 1
je 0x140380af8
mov rax, qword [rbx + 0x40]
mov rdx, qword [rax + 0x48]
lea rax, [0x140348460]
mov dword [rsp + 0x140], 0
mov qword [rsp + 0x128], rax
lea rax, [0x140307c20]
mov qword [rsp + 0x130], rax
lea rax, [0x140307c30]
mov qword [rsp + 0x138], rax
mov qword [rsp + 0x148], r13
mov qword [rsp + 0x120], 0
test rdx, rdx
je 0x140380af8
lea rcx, [rsp + 0x120]
call fcn.14032aeb0
jmp 0x140380af8
mov eax, dword [rbx + 0x34]
xor r9d, r9d
xor r8d, r8d
mov rcx, rbx
mov qword [rsp + 0x60], r11
lea edx, [rax + 1]
mov dword [rsp + 0xe8], eax
mov dword [rbx + 0x34], edx
mov rdx, qword [r12 + 0x20]
call fcn.14033dbf0
xor r9d, r9d
mov edx, 0x70
mov rcx, r15
mov dword [rsp + 0x30], 0xfffffff7
mov r8d, dword [rsp + 0xe8]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0
call fcn.140323e70
mov r11, qword [rsp + 0x60]
mov dword [rsp + 0xec], eax
movsxd rax, dword [r15 + 0x90]
test eax, eax
jle 0x140380c3a
mov rdx, qword [r15 + 0x88]
lea rax, [rax + rax*2]
mov ecx, 8
lea rax, [rdx + rax*8]
mov word [rax - 0x16], cx
mov byte [rsp + 0xe5], 3
jmp 0x14037f574
movzx eax, byte [r14 + 0x63]
add eax, edx
jmp 0x14037ef28
cmp qword [rsp + 0x48], 0
jne 0x1403807cb
mov dword [rsp + 0x90], 0
xor ecx, ecx
mov word [r12 + 2], cx
jmp 0x14038086f
mov rbx, qword [rsp + 0x1f0]
mov r11, rdi
mov r8d, dword [rbx + 0x38]
mov dword [rbp + 0x14], r8d
cmp byte [r14 + 0x63], 0
jne 0x140381309
cmp qword [rsp + 0x48], 0
je 0x140381ebd
xor esi, esi
sub edx, 1
je 0x1403822cb
mov eax, dword [rbx + 0x34]
mov r9d, dword [rbp + 0x28]
xor r8d, r8d
mov rcx, rbx
mov qword [rsp + 0xc8], r11
lea edx, [rax + 1]
mov dword [rbx + 0x34], edx
mov rdx, qword [rsp + 0x48]
mov dword [rbp + 4], eax
call fcn.14033dbf0
mov r9d, dword [rbp + 0xc]
mov r8d, dword [rbp + 4]
mov rcx, r15
mov dword [rsp + 0x30], 0xfffffff7
mov edx, 0x72
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0
mov qword [rsp + 0xb8], rax
call fcn.140323e70
mov edx, dword [rbx + 0x44]
xor r8d, r8d
mov dword [rsp + 0xd4], eax
mov eax, dword [rbx + 0x38]
lea ecx, [rdx - 2]
lea edi, [rax + 1]
lea r9d, [rax + 2]
mov dword [rbx + 0x44], ecx
mov dword [rsp + 0xa0], edi
lea edi, [rax + 3]
lea r13d, [rax + 5]
mov dword [rsp + 0xb4], edi
lea edi, [rdx - 1]
mov rdx, qword [rsp + 0x48]
mov dword [rsp + 0xd0], edi
lea edi, [rax + 4]
mov eax, dword [rdx]
mov dword [rsp + 0xa8], ecx
mov edx, 0x45
mov rcx, r15
mov dword [rsp + 0xb0], r9d
mov dword [rsp + 0x60], eax
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0xc0], edi
add eax, edi
mov dword [rsp + 0xd8], r13d
lea r11d, [rax + 1]
add eax, dword [rsp + 0x60]
mov dword [rbx + 0x38], eax
mov dword [rsp + 0x20], 0
mov dword [rsp + 0xc4], r11d
call fcn.140322f70
mov rdx, qword [rsp + 0x48]
xor r8d, r8d
mov r9d, r13d
mov rcx, r15
mov eax, dword [rdx]
mov edx, 0x48
add eax, r13d
sub eax, 1
mov dword [rsp + 0x20], eax
call fcn.140322f70
mov r8d, edi
mov edx, 0xc
mov rcx, r15
mov dword [rsp + 0x20], 0
mov r9d, dword [rsp + 0xa8]
call fcn.140322f70
cmp dword [rsp + 0x90], 1
mov r9, qword [rsp + 0x48]
mov rcx, rbx
sbb eax, eax
mov r11, qword [rsp + 0xc8]
mov r8, qword [rsp + 0x78]
mov dword [rsp + 0x30], 0
and ax, 0xfe00
add ax, 0x240
mov rdx, r11
or eax, esi
cwde
mov dword [rsp + 0x28], eax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x20], rax
call fcn.14037c580
mov qword [rsp + 0x78], rax
test rax, rax
je 0x1403812f4
mov rax, qword [rsp + 0x78]
movzx esi, byte [rax + 0x43]
movsx eax, byte [rax + 0x41]
mov byte [rsp + 0xdf], sil
mov dword [rsp + 0xc8], esi
mov rsi, qword [rsp + 0x48]
cmp dword [rsi], eax
je 0x1403824c2
cmp byte [rsp + 0xe4], 0
lea r9, str.GROUP_BY
je 0x140380e81
test byte [r12 + 4], 1
lea rax, str.DISTINCT
cmove r9, rax
xor edx, edx
lea r8, str.USE_TEMP_B_TREE_FOR__s
mov rcx, rbx
call fcn.140348b00
mov rax, qword [rsp + 0x48]
mov edx, dword [rbp + 0x28]
mov edi, dword [rax]
test edx, edx
jle 0x140382835
mov rcx, qword [rbp + 0x20]
sub edx, 1
mov esi, edi
shl rdx, 5
lea rax, [rcx + 0x1a]
lea rcx, [rcx + rdx + 0x3a]
movsx edx, word [rax]
cmp edx, esi
setge dl
add rax, 0x20
movzx edx, dl
add esi, edx
cmp rcx, rax
jne 0x140380eba
mov edx, esi
mov rcx, rbx
xor r13d, r13d
call fcn.14030d180
mov dword [rsp + 0x20], 0
mov rdx, qword [rsp + 0x48]
xor r9d, r9d
mov r8d, eax
mov dword [rsp + 0x50], eax
call fcn.14038a660
cmp dword [rbp + 0x28], 0
jg 0x140380f16
jmp 0x1403817c0
add r13, 1
cmp dword [rbp + 0x28], r13d
jle 0x1403817c0
mov rax, r13
shl rax, 5
add rax, qword [rbp + 0x20]
movsx edx, word [rax + 0x1a]
cmp edx, edi
jl 0x140380f08
mov ecx, dword [rsp + 0x50]
movsx r9d, word [rax + 0x18]
mov r8d, dword [rax + 0x10]
lea edx, [rcx + rdi]
mov rcx, r15
add edi, 1
mov dword [rsp + 0x20], edx
mov rdx, qword [rax]
call fcn.1403882c0
jmp 0x140380f08
mov qword [rsp + 0xf0], 0
mov edx, dword [rsp + 0x108]
test edx, edx
js 0x14037fb52
mov rcx, r15
call fcn.14031df40
jmp 0x14037fb52
mov rcx, qword [r15]
lea rdx, [0x1407dad80]
cmp byte [rcx + 0x63], 0
jne 0x140380f93
imul rax, rax, 0x18
add rax, qword [r15 + 0x88]
mov rdx, rax
mov byte [rdx], 0x72
or byte [rsp + 0x114], 1
jmp 0x14037f560
mov r13, qword [rsi]
jmp 0x14037ec6b
mov rdx, qword [rsp + 0x58]
mov r8d, 0xffffffff
mov qword [rsp + 0x60], r11
mov rcx, qword [rsp + 0xf0]
call fcn.140344ac0
mov r11, qword [rsp + 0x60]
test eax, eax
jne 0x14037f47c
cmp qword [r12 + 0x70], 0
jne 0x14037f47c
and dword [r12 + 4], 0xfffffffe
mov rdx, qword [rsp + 0x58]
xor r8d, r8d
mov rcx, r14
call fcn.14032c270
or dword [r12 + 4], 8
mov r11, qword [rsp + 0x60]
mov qword [rsp + 0x48], rax
mov qword [r12 + 0x38], rax
jmp 0x14037f47c
mov rax, qword [rsp + 0x58]
mov edx, 0x70
mov rcx, r15
mov qword [rsp + 0x60], r11
mov dword [rsp + 0x20], 0
mov r9d, dword [rax]
mov rax, qword [rsp + 0x200]
mov r8d, dword [rax + 4]
call fcn.140322f70
mov r11, qword [rsp + 0x60]
jmp 0x14037f50b
mov r10d, dword [r15 + 0x90]
cmp r10d, dword [r15 + 0x94]
jge 0x140382298
lea eax, [r10 + 1]
mov dword [r15 + 0x90], eax
movsxd rax, r10d
lea rdx, [rax + rax*2]
mov rax, qword [r15 + 0x88]
lea rax, [rax + rdx*8]
mov qword [rax], 0x11
mov qword [rax + 8], 0
mov qword [rax + 0x10], 0
mov eax, dword [rdi + 0x44]
mov r9, rdi
lea r8, str.MATERIALIZE___S
mov rcx, rbx
mov edx, 1
mov qword [rsp + 0x88], r11
mov dword [rsp + 0x80], r10d
mov dword [rsp + 0x154], eax
mov byte [rsp + 0x150], 0xc
mov qword [rsp + 0x168], 0
mov qword [rsp + 0x158], 0
mov dword [rsp + 0x160], 0
call fcn.140348b00
mov r8, qword [rsp + 0x60]
mov rdx, r14
mov rcx, rbx
call fcn.14037eae0
mov rax, qword [rdi + 0x20]
mov r10d, dword [rsp + 0x80]
movzx edx, word [r14 + 2]
mov r11, qword [rsp + 0x88]
test r10d, r10d
mov word [rax + 0x4a], dx
mov eax, dword [r15 + 0x90]
je 0x14037f98a
mov rcx, qword [r15]
lea edx, [rax - 1]
cmovs r10d, edx
lea rdx, [0x1407dad80]
cmp byte [rcx + 0x63], 0
jne 0x140381156
movsxd rdx, r10d
imul rdx, rdx, 0x18
add rdx, qword [r15 + 0x88]
mov dword [rdx + 8], eax
jmp 0x14037f98a
cmp al, 0x56
jne 0x14038011d
mov dword [rsp + 0x20], 0
mov r8d, dword [rsp + 0x17c]
mov edx, 0x25
mov rcx, rbp
mov r9d, 1
call fcn.140322f70
jmp 0x140380125
mov rdx, r15
call fcn.14031ccb0
jmp 0x14038075c
mov dword [rsp + 0x20], 0
mov r9d, 2
mov edx, 0x70
mov rcx, r12
call fcn.140322f70
mov rax, qword [r12]
cmp byte [rax + 0x63], 0
je 0x14037f778
jmp 0x14037f799
mov dword [rsp + 0x60], eax
jmp 0x1403803e2
cmp qword [rbx + 0xa0], 0
je 0x140382384
mov rcx, rbx
call fcn.140322fe0
mov rbp, rax
mov eax, dword [rbx + 0x44]
mov dword [rsp + 0x9c], eax
jmp 0x14037fbb1
mov dword [rsp + 0x80], 0
mov dword [rsp + 0xb8], 0
jmp 0x14037ff6a
mov ecx, 0x18
call fcn.14030ef00
mov r11, qword [rsp + 0x60]
jmp 0x140380909
xor r9d, r9d
mov edx, 0x41
mov rcx, r15
mov qword [rsp + 0x60], r11
mov dword [rsp + 0x20], 0
call fcn.140322ee0
mov r11, qword [rsp + 0x60]
jmp 0x14037f9d1
mov dword [rsp + 0x20], 0
mov edx, 0x45
xor r8d, r8d
mov rcx, r15
call fcn.140322ee0
mov esi, eax
lea edx, [rax + 1]
jmp 0x14037f8e9
mov rsi, qword [rsp + 0x60]
or r8d, 0xffffffff
mov rdx, r12
mov rcx, rbx
lea r9, [rsp + 0xf0]
mov eax, dword [rsi + 0x34]
mov dword [rsp + 0x38], eax
mov eax, dword [rsi + 0x30]
mov dword [rsp + 0x30], eax
mov rax, qword [rsp + 0x200]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0xe4]
mov qword [rsp + 0x20], rax
call fcn.14038c860
mov rcx, rsi
call fcn.1403262b0
mov qword [rsp + 0x68], 0
jmp 0x1403806c2
cmp qword [rbx + 0xa0], 0
je 0x140382354
mov rcx, rbx
mov qword [rsp + 0x60], r11
call fcn.140322fe0
mov r11, qword [rsp + 0x60]
mov r13, rax
jmp 0x14037f5d6
mov rax, qword [rsp + 0x68]
test rax, rax
je 0x140381309
mov rdx, rax
mov rcx, r14
call fcn.14031a600
mov rax, qword [rsp + 0x70]
mov ecx, dword [rbx + 0x30]
mov qword [rsp + 0x68], rax
mov eax, 1
jmp 0x140380766
lea r9, str.DISTINCT
lea r8, str.USE_TEMP_B_TREE_FOR__s
xor edx, edx
mov rcx, rbx
call fcn.140348b00
jmp 0x1403806d0
mov eax, dword [rax + 0x30]
jmp 0x14037fb43
mov eax, dword [rsp + 0xac]
mov r9d, dword [rsp + 0x70]
mov rcx, rbx
mov r8d, dword [rsp + 0xc0]
mov rdx, qword [rsp + 0x78]
mov dword [rsp + 0x20], eax
call fcn.14033dc90
jmp 0x1403802a3
mov r10d, dword [rbp + 0x90]
cmp r10d, dword [rbp + 0x94]
jge 0x140382a7d
lea eax, [r10 + 1]
mov ecx, dword [rsp + 0x48]
mov dword [rbp + 0x90], eax
movsxd rax, r10d
imul rax, rax, 0x18
add rax, qword [rbp + 0x88]
mov dword [rax + 4], ecx
mov ecx, 1
shl rcx, 0x20
mov qword [rax + 0x10], 0
mov qword [rax + 8], rcx
mov dword [rax], 0x30
xor r9d, r9d
xor r8d, r8d
mov edx, 1
mov rcx, r13
mov dword [rsp + 0x70], r10d
call fcn.14038bac0
mov edx, 2
xor r9d, r9d
mov r8d, edi
mov rcx, r13
call fcn.14038bac0
mov r10d, dword [rsp + 0x70]
mov edx, dword [rbp + 0x90]
test r10d, r10d
jns 0x1403813fc
lea r10d, [rdx - 1]
mov rcx, qword [rbp]
lea rax, [0x1407dad80]
cmp byte [rcx + 0x63], 0
jne 0x14038141b
movsxd rax, r10d
imul rax, rax, 0x18
add rax, qword [rbp + 0x88]
mov dword [rax + 8], edx
mov rcx, qword [rbp + 0x18]
jmp 0x140380313
cmp qword [rax + 0x2d0], 0
jne 0x14037f799
sub dword [r13], 1
jne 0x14037f799
mov rcx, qword [r13 + 0x10]
mov rdx, r13
call fcn.140314ee0
jmp 0x14037f799
cmp byte [rsi + 0x20], 0x59
je 0x14037fc8d
mov rdx, qword [rsi + 0x28]
mov rcx, qword [rbx]
call fcn.1403432b0
test eax, eax
je 0x14037fc8d
mov dword [rsp + 0x174], 1
jmp 0x14037fc8d
mov dword [rsp + 0x70], 0
mov dword [rsp + 0xc0], 0
jmp 0x14037fd5f
cmp dword [rsi + 0x84], 0
jne 0x14037fc8d
mov rdx, rsi
lea r8, str.nth_value
lea r10, str.first_value
lea r11, str.lead
lea rdi, [0x140769cae]
mov rax, qword [rdx + 0x50]
mov rax, qword [rax + 0x38]
cmp rax, r10
sete cl
cmp rax, r8
sete r9b
or ecx, r9d
cmp rax, r11
sete r9b
or cl, r9b
jne 0x14037fc8d
cmp rax, rdi
je 0x14037fc8d
mov rdx, qword [rdx + 0x40]
test rdx, rdx
jne 0x1403814c3
cmp byte [rsi + 0x22], 0x58
jne 0x14038146f
cmp byte [rsi + 0x20], 0x59
je 0x14037fc8d
mov rdx, qword [rsi + 0x30]
mov rcx, qword [rbx]
call fcn.1403432b0
test eax, eax
je 0x14037fc8d
mov dword [rsp + 0x174], 3
jmp 0x14037fc8d
test ecx, ecx
jle 0x140381563
sub ecx, 1
mov r8, qword [rsp + 0x48]
mov eax, 0x18
shl rcx, 5
add rcx, 0x38
movzx edx, byte [r9 + rax]
and edx, 1
mov byte [r8 + rax], dl
add rax, 0x20
cmp rcx, rax
jne 0x14038154e
mov rcx, qword [rsp + 0x48]
or r8d, 0xffffffff
mov rdx, r9
mov qword [rsp + 0x60], r11
call fcn.140344ac0
mov r11, qword [rsp + 0x60]
test eax, eax
sete al
movzx eax, al
mov dword [rsp + 0x90], eax
jmp 0x14038086f
movzx eax, word [rsi + 0x20]
mov r8d, dword [rsp + 0x48]
xor r9d, r9d
mov rcx, r13
mov edx, 3
mov word [rsp + 0x70], ax
call fcn.14038bac0
xor r9d, r9d
cmp word [rsp + 0x70], 0x5859
jne 0x1403802ec
mov r8d, edi
mov edx, 2
mov rcx, r13
call fcn.14038bac0
mov rcx, r13
xor r9d, r9d
xor r8d, r8d
mov edx, 1
call fcn.14038bac0
mov rcx, qword [rbp + 0x18]
jmp 0x140380313
call fcn.14038bac0
cmp byte [rsi + 0x20], 0x59
je 0x140382743
mov eax, dword [rbp + 0x90]
cmp byte [rsi + 0x22], 0x5a
mov r9d, 1
mov dword [rsp + 0x70], eax
je 0x140382712
mov r8d, dword [rsp + 0x48]
mov edx, 1
mov rcx, r13
call fcn.14038bac0
mov r8d, edi
mov edx, 2
mov rcx, r13
mov r9d, 1
mov dword [rsp + 0x48], eax
call fcn.14038bac0
mov edi, eax
mov r9d, dword [rsp + 0x70]
xor r8d, r8d
mov edx, 0xb
mov rcx, rbp
mov dword [rsp + 0x20], 0
call fcn.140322f70
mov r10d, dword [rbp + 0x90]
test edi, edi
jns 0x14038166f
lea edi, [r10 - 1]
mov rdx, qword [rbp]
lea rax, [0x1407dad80]
cmp byte [rdx + 0x63], 0
jne 0x14038168e
movsxd rax, edi
imul rax, rax, 0x18
add rax, qword [rbp + 0x88]
mov dword [rax + 8], r10d
xor r8d, r8d
mov r9d, 1
mov rcx, r13
mov edx, 1
mov dword [rsp + 0x70], r10d
call fcn.14038bac0
mov r10d, dword [rsp + 0x70]
xor r8d, r8d
mov rcx, rbp
mov dword [rsp + 0x20], 0
mov edx, 0xb
mov edi, eax
mov r9d, r10d
call fcn.140322f70
cmp dword [rsp + 0x48], 0
mov eax, dword [rbp + 0x90]
jns 0x1403816e3
lea ecx, [rax - 1]
mov dword [rsp + 0x48], ecx
mov rdx, qword [rbp]
movzx ecx, byte [rdx + 0x63]
test cl, cl
jne 0x140382286
movsxd rdx, dword [rsp + 0x48]
mov r8, qword [rbp + 0x88]
imul rdx, rdx, 0x18
mov dword [r8 + rdx + 8], eax
test edi, edi
jns 0x14038170f
lea edi, [rax - 1]
movsxd rdx, edi
imul rdx, rdx, 0x18
add rdx, r8
jmp 0x1403804f2
mov dword [rbp + 0xc], 0
mov rdx, qword [rsp + 0x58]
mov rcx, r13
lea rsi, [rsp + 0x120]
mov qword [rbp + 0x18], 0
call fcn.14032b260
mov rdx, qword [rsp + 0xf0]
mov rcx, r13
call fcn.14032b260
mov r11, qword [rsp + 0x70]
cmp qword [rsp + 0x80], 0
jne 0x140380a4d
jmp 0x140380ab3
mov rdx, rbp
call fcn.14031ccb0
jmp 0x14038033b
mov rax, qword [r12 + 0x40]
mov qword [rsp + 0x70], rax
test rax, rax
je 0x14038251e
mov qword [rsp + 0x70], 0
jmp 0x140380ace
mov rdx, r15
call fcn.14031ccb0
jmp 0x1403806c2
mov rdx, r15
call fcn.14031ccb0
jmp 0x140380675
mov rdx, r15
call fcn.14031ccb0
jmp 0x1403805fd
movzx eax, byte [rbx + 0x1f]
test al, al
je 0x1403824b2
sub eax, 1
mov byte [rbx + 0x1f], al
movzx eax, al
mov r13d, dword [rbx + rax*4 + 0xd0]
mov dword [rsp + 0x20], r13d
mov r8d, dword [rsp + 0x50]
mov r9d, esi
mov rcx, r15
mov edx, 0x5d
call fcn.140322f70
mov r8d, dword [rbp + 4]
mov r9d, r13d
mov rcx, r15
mov dword [rsp + 0x20], 0
mov edx, 0x87
call fcn.140322f70
test r13d, r13d
je 0x140381823
mov edx, r13d
mov rcx, rbx
call fcn.14030d160
mov edx, dword [rsp + 0x50]
mov r8d, esi
mov rcx, rbx
call fcn.140318340
mov rcx, qword [rsp + 0x78]
call fcn.1403262b0
mov r13d, dword [rbx + 0x34]
lea eax, [r13 + 1]
mov dword [rbx + 0x34], eax
mov dword [rbp + 8], r13d
movzx eax, byte [rbx + 0x1f]
test al, al
je 0x140382510
sub eax, 1
mov byte [rbx + 0x1f], al
movzx eax, al
mov edi, dword [rbx + rax*4 + 0xd0]
mov dword [rsp + 0x20], esi
mov r9d, edi
mov r8d, r13d
mov edx, 0x75
mov rcx, r15
call fcn.140322f70
mov r8d, dword [rbp + 4]
mov edx, 0x23
mov rcx, r15
mov dword [rsp + 0x20], 0
mov r9d, dword [rsp + 0x9c]
call fcn.140322f70
cmp dword [rsp + 0x90], 0
mov byte [rbp + 1], 1
je 0x1403818b8
test byte [r14 + 0x5c], 4
je 0x140382ad1
mov r8d, dword [rbp + 4]
mov r9d, edi
mov edx, 0x81
mov rcx, r15
mov eax, dword [r15 + 0x90]
mov dword [rsp + 0x20], r13d
mov dword [rsp + 0x60], eax
call fcn.140322f70
mov dword [rsp + 0x50], 1
mov rcx, qword [rsp + 0x48]
mov eax, dword [rcx]
test eax, eax
jle 0x1403819ac
mov edi, dword [rsp + 0xc4]
xor esi, esi
mov qword [rsp + 0x90], r14
mov qword [rsp + 0x1f8], r12
mov r14, rsi
mov r12d, edi
mov rdi, rbx
mov rbx, rcx
jmp 0x140381941
mov dword [rsp + 0x20], r12d
mov r9d, r14d
mov r8d, r13d
mov edx, 0x5b
mov rcx, r15
call fcn.140322f70
mov eax, dword [rbx]
add r14, 1
add r12d, 1
cmp eax, r14d
jle 0x140381999
mov edx, dword [rsp + 0x50]
test edx, edx
jne 0x14038191a
mov byte [rbp], 1
cmp qword [rdi + 0x10], 0
je 0x140381932
mov rax, r14
mov r8d, r12d
mov rcx, rdi
shl rax, 5
mov rsi, qword [rbx + rax + 8]
mov rdx, rsi
call fcn.140383cc0
mov r8d, eax
cmp eax, r12d
je 0x140381932
test byte [rsi + 6], 0x20
mov rcx, qword [rdi + 0x10]
mov dword [rsp + 0x20], 0
mov r9d, r12d
sete dl
add edx, 0x4d
movzx edx, dl
call fcn.140322f70
jmp 0x140381932
mov r14, qword [rsp + 0x90]
mov r12, qword [rsp + 0x1f8]
mov rbx, rdi
mov rsi, qword [rsp + 0xb8]
test rsi, rsi
je 0x1403819bc
add dword [rsi], 1
mov rsi, qword [rsp + 0xb8]
mov dword [rsp + 0x20], eax
mov edx, 0x57
mov rcx, r15
mov edi, dword [rsp + 0xc4]
mov dword [rsp + 0x30], 0xfffffff7
mov qword [rsp + 0x28], rsi
mov esi, dword [rsp + 0xd8]
mov r9d, edi
mov r8d, esi
call fcn.140323e70
xor r9d, r9d
mov edx, 0x10
mov rcx, r15
mov r13d, dword [r15 + 0x90]
lea r8d, [r13 + 1]
mov dword [rsp + 0x20], r8d
call fcn.140322f70
mov rax, qword [rsp + 0x48]
mov r9d, esi
mov r8d, edi
mov rcx, qword [rbx + 0x10]
mov edx, 0x4c
mov eax, dword [rax]
mov dword [rsp + 0x20], eax
call fcn.140322f70
mov dword [rsp + 0x20], 0
mov edx, 0xc
mov rcx, r15
mov r9d, dword [rsp + 0xd0]
mov r8d, dword [rsp + 0xb4]
call fcn.140322f70
mov dword [rsp + 0x20], 0
mov edx, 0x30
mov rcx, r15
mov r9d, dword [rsp + 0x9c]
mov r8d, dword [rsp + 0xb0]
call fcn.140322f70
mov dword [rsp + 0x20], 0
mov edx, 0xc
mov rcx, r15
mov r9d, dword [rsp + 0xa8]
mov r8d, dword [rsp + 0xc0]
call fcn.140322f70
mov r8d, dword [r15 + 0x90]
mov edx, r13d
mov rcx, r15
call fcn.1403075b0
mov esi, dword [rsp + 0xa0]
mov r8, rbp
mov rcx, rbx
mov r9d, dword [rsp + 0xc8]
mov edx, esi
call fcn.14038d500
mov r9d, esi
mov edx, 0x45
mov rcx, r15
mov dword [rsp + 0x20], 0
mov r8d, 1
call fcn.140322f70
cmp dword [rsp + 0x50], 0
je 0x14038225b
mov r8d, dword [rbp + 4]
mov r9d, dword [rsp + 0x60]
mov edx, 3
mov rcx, r15
mov dword [rsp + 0x20], 0
call fcn.140322f70
mov rax, qword [rsp + 0x68]
test rax, rax
je 0x140381b2e
mov rdx, rax
mov rcx, r14
call fcn.14031a600
mov r13d, dword [rsp + 0xb4]
mov esi, dword [rsp + 0xd0]
mov edx, 0xc
mov rcx, r15
mov dword [rsp + 0x20], 0
mov r9d, esi
mov r8d, r13d
call fcn.140322f70
mov edx, dword [rsp + 0x9c]
mov rcx, r15
call fcn.140323d80
mov edi, dword [r15 + 0x90]
mov r8d, 1
mov rcx, r15
mov dword [rsp + 0x20], 0
mov r9d, dword [rsp + 0xb0]
mov edx, 0x45
call fcn.140322f70
xor r9d, r9d
mov r8d, r13d
mov edx, 0x41
mov dword [rsp + 0x20], 0
mov rcx, r15
call fcn.140322f70
mov edx, esi
mov rcx, r15
call fcn.14031cda0
mov esi, dword [r15 + 0x90]
mov edx, 0x30
mov rcx, r15
mov dword [rsp + 0x20], 0
mov r8d, dword [rsp + 0xa0]
lea r9d, [rsi + 2]
add esi, 1
call fcn.140322f70
xor r9d, r9d
mov r8d, r13d
mov edx, 0x41
mov dword [rsp + 0x20], 0
mov rcx, r15
call fcn.140322f70
mov rcx, qword [rbx + 0x10]
mov rdx, rbp
call fcn.1403233c0
mov rdx, qword [rsp + 0x80]
mov r8d, esi
mov rcx, rbx
mov r9d, 0x10
call fcn.1403838c0
mov dword [rsp + 0x38], edi
or r8d, 0xffffffff
mov rdx, r12
mov rax, qword [rsp + 0x200]
mov dword [rsp + 0x30], esi
lea r9, [rsp + 0xf0]
mov rcx, rbx
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0xe4]
mov qword [rsp + 0x20], rax
call fcn.14038c860
xor r9d, r9d
mov r8d, r13d
mov edx, 0x41
mov dword [rsp + 0x20], 0
mov rcx, r15
call fcn.140322f70
mov edx, dword [rsp + 0xa8]
mov rcx, r15
call fcn.14031cda0
mov rdx, rbp
mov rcx, rbx
call fcn.140348bf0
xor r8d, r8d
mov edx, 0x45
mov rcx, r15
mov dword [rsp + 0x20], 0
mov r9d, dword [rsp + 0xa0]
call fcn.140322f70
xor r9d, r9d
mov edx, 0x41
mov rcx, r15
mov dword [rsp + 0x20], 0
mov r8d, dword [rsp + 0xc0]
call fcn.140322f70
movzx eax, byte [rsp + 0xdf]
sub eax, 1
cmp al, 1
ja 0x140381cfa
mov rax, qword [rbp + 0x30]
mov rcx, qword [rbx + 0x10]
mov edx, dword [rsp + 0xc8]
mov r9d, dword [rax + 0x18]
mov r8d, dword [rax + 0x14]
call fcn.14031e840
mov rcx, qword [r15 + 0x18]
mov r8d, dword [rsp + 0xac]
mov eax, dword [rcx + 0x44]
neg r8d
add eax, dword [rcx + 0x48]
js 0x140382279
mov edx, dword [r15 + 0x90]
mov rax, qword [rcx + 0x50]
movsxd r8, r8d
mov dword [rax + r8*4], edx
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x68], rax
jmp 0x1403806c2
cmp byte [rsi + 0x20], 0x59
je 0x140381166
cmp dword [rsp + 0x48], 0
je 0x140381166
mov dword [rsp + 0x20], edi
mov r9d, dword [rsp + 0x48]
mov r8d, edi
mov rcx, rbp
mov edx, 0x6b
call fcn.140322f70
movzx eax, byte [rsi + 0x21]
jmp 0x14038011d
mov dword [rsp + 0x20], 0
mov rcx, rbp
mov r8d, 1
mov edx, 0x45
call fcn.140322f70
xor r8d, r8d
mov edx, 0x45
mov rcx, rbp
mov r9d, dword [rsi + 0x88]
mov dword [rsp + 0x20], 0
call fcn.140322f70
jmp 0x14038055a
xor r9d, r9d
xor r8d, r8d
mov edx, 3
mov rcx, r13
call fcn.14038bac0
cmp byte [rsi + 0x22], 0x5a
je 0x14038141e
cmp byte [rsi + 0x20], 0x59
je 0x140382784
mov r8d, dword [rsp + 0x48]
xor r9d, r9d
jmp 0x1403802ef
movzx eax, word [rsi + 0x20]
mov r8d, dword [rsp + 0x48]
xor r9d, r9d
mov rcx, r13
mov edx, 3
mov word [rsp + 0x70], ax
call fcn.14038bac0
cmp word [rsp + 0x70], 0x5859
je 0x14038281d
mov edx, 1
mov rcx, r13
xor r9d, r9d
xor r8d, r8d
call fcn.14038bac0
mov rdx, qword [rbp]
mov eax, dword [rbp + 0x90]
movzx ecx, byte [rdx + 0x63]
jmp 0x1403804f5
mov dword [rsp + 0x20], 0
xor r9d, r9d
mov edx, 0x25
mov rcx, rbp
mov r8d, dword [rsp + 0xb0]
call fcn.140322ee0
mov dword [rsp + 0x60], eax
jmp 0x14038043c
cmp qword [rax + 0x2d0], 0
jne 0x14037fed2
test r13, r13
je 0x14037fed2
sub dword [r13], 1
jne 0x14037fed2
mov rcx, qword [r13 + 0x10]
mov rdx, r13
mov dword [rsp + 0xb8], r10d
call fcn.140314ee0
mov r10d, dword [rsp + 0xb8]
jmp 0x14037fed2
mov dword [rsp + 0x20], edx
xor r9d, r9d
mov edx, 0x34
mov rcx, rbp
call fcn.140322ee0
mov dword [rsp + 0xa0], eax
jmp 0x14038001a
cmp qword [r12 + 0x30], 0
jne 0x140382893
mov rcx, qword [r12 + 0x20]
cmp dword [rcx], 1
jne 0x140382893
mov rax, qword [r12 + 0x28]
cmp dword [rax], 1
jne 0x140382893
mov rsi, qword [rax + 0x30]
test rsi, rsi
jne 0x140382893
mov r13, qword [rax + 0x28]
mov rax, qword [rcx + 8]
cmp dword [r13 + 0x54], 0
jne 0x140382893
cmp byte [rax], 0xa7
jne 0x140382893
test edx, edx
je 0x140382893
mov rcx, qword [rbp + 0x30]
mov rcx, qword [rcx + 8]
test byte [rcx + 5], 1
je 0x140382893
test dword [rax + 4], 0x1000002
jne 0x140382893
mov rdx, qword [r13 + 0x70]
mov rcx, qword [rbx]
test rdx, rdx
je 0x140382a19
call fcn.14030d3c0
mov r11d, eax
mov edi, dword [rbx + 0x34]
mov r10d, dword [r13 + 0x38]
mov edx, r11d
mov dword [rsp + 0x48], r11d
mov rcx, qword [rbx + 0xa0]
lea eax, [rdi + 1]
mov dword [rsp + 0x50], r10d
test rcx, rcx
mov dword [rbx + 0x34], eax
cmove rcx, rbx
call fcn.1403771c0
mov rax, qword [r13]
mov r8d, dword [r13 + 0x38]
xor r9d, r9d
mov r11d, dword [rsp + 0x48]
mov rcx, rbx
mov qword [rsp + 0x20], rax
mov edx, r11d
call fcn.14031ca10
test byte [r13 + 0x40], 0x80
mov r11d, dword [rsp + 0x48]
mov r10d, dword [rsp + 0x50]
je 0x1403820fc
mov rdx, qword [r13 + 0x10]
mov rax, rdx
mov rsi, rdx
test rdx, rdx
jne 0x140381fd5
jmp 0x14038213e
mov rsi, qword [rsi + 0x28]
test rsi, rsi
je 0x1403829a3
movzx ecx, byte [rsi + 0x64]
and ecx, 3
cmp cl, 2
jne 0x140381fc8
mov rdx, qword [r12 + 0x28]
test byte [rdx + 0x48], 1
je 0x140382110
mov r9d, dword [rsi + 0x58]
mov rdx, rsi
mov rcx, rbx
mov dword [rsp + 0x60], r11d
mov dword [rsp + 0x50], r9d
call fcn.14033bdf0
mov r11d, dword [rsp + 0x60]
mov r8d, edi
mov rcx, r15
mov r9d, dword [rsp + 0x50]
mov edx, 0x62
mov qword [rsp + 0x48], rax
mov dword [rsp + 0x28], 1
mov dword [rsp + 0x20], r11d
call fcn.140323f90
mov r10, qword [rsp + 0x48]
test r10, r10
je 0x140382053
mov r9d, 0xfffffff7
mov r8, r10
or edx, 0xffffffff
mov rcx, r15
call fcn.14031ddc0
mov rax, qword [rbp + 0x30]
mov r8d, edi
mov edx, 0x5e
mov rcx, r15
mov r9d, dword [rax + 0x10]
mov dword [rsp + 0x20], 0
call fcn.140322f70
xor r9d, r9d
mov r8d, edi
mov edx, 0x76
mov dword [rsp + 0x20], 0
mov rcx, r15
call fcn.140322f70
cmp byte [rbx + 0x113], 2
je 0x14038286e
mov esi, dword [rsp + 0x9c]
mov rcx, rbx
mov rdx, qword [rsp + 0x80]
mov r9d, 0x10
mov qword [rsp + 0xf0], 0
mov r8d, esi
call fcn.1403838c0
mov dword [rsp + 0x38], esi
xor r9d, r9d
or r8d, 0xffffffff
mov rax, qword [rsp + 0x200]
mov dword [rsp + 0x30], esi
mov rdx, r12
mov rcx, rbx
mov qword [rsp + 0x20], 0
mov qword [rsp + 0x28], rax
call fcn.14038c860
jmp 0x140381cfa
mov rax, qword [r12 + 0x28]
test byte [rax + 0x48], 1
jne 0x14038213e
mov rax, qword [r13 + 0x10]
test rax, rax
je 0x14038213e
test byte [rax + 0x64], 4
jne 0x14038212c
movzx edx, word [rax + 0x5c]
cmp dx, word [r13 + 0x4c]
jge 0x14038212c
cmp qword [rax + 0x48], 0
je 0x140382857
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x140382110
test rsi, rsi
jne 0x140381ff0
mov dword [rsp + 0x20], r11d
mov r9d, r10d
mov r8d, edi
mov edx, 0x62
mov dword [rsp + 0x28], 1
mov rcx, r15
call fcn.140323f90
mov rax, qword [rbp + 0x30]
mov r8d, edi
mov rcx, r15
mov edx, 0x5e
mov r9d, dword [rax + 0x10]
mov dword [rsp + 0x20], 0
call fcn.140322f70
xor r9d, r9d
mov r8d, edi
mov edx, 0x76
mov dword [rsp + 0x20], 0
mov rcx, r15
call fcn.140322f70
cmp byte [rbx + 0x113], 2
jne 0x14038209b
lea rax, [0x14075b22e]
mov rdx, rax
mov qword [rsp + 0x20], rdx
lea r8, str.SCAN__s_s_s
xor edx, edx
mov rcx, rbx
mov qword [rsp + 0x28], rax
mov r9, qword [r13]
call fcn.140348b00
jmp 0x14038209b
mov eax, dword [rbx + 0x38]
mov r8d, 1
mov rcx, r13
lea r9d, [rax + 1]
add eax, 2
mov dword [rdi + 0x84], r9d
mov dword [rbx + 0x38], eax
mov dword [rdi + 0x88], eax
mov eax, dword [rbx + 0x34]
lea edx, [rax + 1]
mov dword [rbx + 0x34], edx
mov edx, 0x45
mov dword [rdi + 0x64], eax
mov dword [rsp + 0x20], 0
call fcn.140322f70
xor r8d, r8d
mov edx, 0x45
mov rcx, r13
mov r9d, dword [rdi + 0x88]
mov dword [rsp + 0x20], 0
call fcn.140322f70
mov r9d, dword [rdi + 0x58]
mov r8d, dword [rdi + 0x64]
mov rcx, r13
mov dword [rsp + 0x20], 0
mov edx, 0x64
call fcn.140322f70
mov r11, qword [rsp + 0x60]
jmp 0x14037fa83
mov rcx, qword [rsp + 0x78]
call fcn.1403262b0
mov edx, dword [rsp + 0xd4]
mov rcx, r15
call fcn.14031df40
jmp 0x140381b19
mov rdx, r15
call fcn.14031ccb0
jmp 0x140381d27
mov dword [0x1407dad88], eax
lea rdx, [0x1407dad80]
jmp 0x1403804f2
xor r9d, r9d
xor r8d, r8d
mov edx, 0x11
mov rcx, r15
mov dword [rsp + 0x20], 0
mov qword [rsp + 0x80], r11
call fcn.140322ee0
mov r11, qword [rsp + 0x80]
mov r10d, eax
jmp 0x140381098
mov rax, qword [rbp + 0x30]
cmp dword [rax + 0x14], 0
js 0x140380cac
mov rax, qword [rax]
mov rax, qword [rax + 0x20]
mov qword [rsp + 0x68], rax
test rax, rax
je 0x140380cac
mov r13, qword [rax + 8]
test r13, r13
je 0x140382315
mov rdx, r13
xor r9d, r9d
xor r8d, r8d
mov rcx, r14
mov qword [rsp + 0x60], r11
call fcn.14032bda0
mov r11, qword [rsp + 0x60]
mov r13, rax
mov rdx, qword [rsp + 0x48]
xor r8d, r8d
mov rcx, r14
mov qword [rsp + 0x60], r11
call fcn.14032c270
mov r8, r13
mov rcx, rbx
mov rdx, rax
call fcn.14031fbc0
mov r11, qword [rsp + 0x60]
cmp rax, 1
mov qword [rsp + 0x68], rax
sbb esi, esi
not esi
and si, 0x500
jmp 0x140380cac
mov rax, qword [rbx]
test byte [rax + 0x5c], 8
jne 0x1403812da
mov byte [rbx + 0x23], 1
jmp 0x1403812da
mov rcx, qword [rbx]
mov rdx, rbp
mov qword [rsp + 0x60], r11
call fcn.1403150f0
mov r11, qword [rsp + 0x60]
jmp 0x140380932
mov rax, qword [rbx]
test byte [rax + 0x5c], 8
jne 0x1403811e0
mov byte [rbx + 0x23], 1
jmp 0x1403811e0
cmp dword [rsp + 0x48], 0
je 0x1403802e9
mov r11d, dword [rbx + 0x44]
mov r9d, dword [rsp + 0x48]
mov rcx, r13
mov edx, 0x39
mov r10d, dword [rbp + 0x90]
mov r8d, dword [rsp + 0x184]
lea eax, [r11 - 1]
mov dword [rsp + 0x70], r11d
mov dword [rbx + 0x44], eax
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x18c]
mov dword [rsp + 0x78], r10d
mov dword [rsp + 0x20], eax
call fcn.14033de00
xor r9d, r9d
xor r8d, r8d
mov edx, 1
mov rcx, r13
call fcn.14038bac0
xor r9d, r9d
mov r8d, edi
mov edx, 2
mov rcx, r13
call fcn.14038bac0
mov r10d, dword [rsp + 0x78]
mov rcx, rbp
xor r8d, r8d
mov dword [rsp + 0x20], 0
mov edx, 0xb
mov r9d, r10d
call fcn.140322f70
mov rcx, qword [rbp + 0x18]
mov r11d, dword [rsp + 0x70]
neg r11d
mov eax, dword [rcx + 0x44]
add eax, dword [rcx + 0x48]
movsxd r8, r11d
js 0x140382ac0
mov edx, dword [rbp + 0x90]
mov rax, qword [rcx + 0x50]
mov dword [rax + r8*4], edx
jmp 0x140380313
mov eax, dword [rsp + 0xc8]
mov r8d, dword [rsp + 0xa0]
mov edx, 0x57
mov rcx, rbp
mov dword [rsp + 0x20], eax
call fcn.140322ee0
mov r10d, eax
jmp 0x14037fea5
mov dword [rsp + 0x20], 0
xor r9d, r9d
mov edx, 0xc
mov rcx, rbp
mov r8d, dword [rsp + 0x80]
call fcn.140322ee0
mov dword [rsp + 0xb8], eax
jmp 0x14037ff43
mov eax, dword [rbx + 0x38]
lea r13d, [rax + 1]
mov dword [rbx + 0x38], r13d
jmp 0x1403817dd
cmp dword [rsp + 0x90], 0
je 0x14038283c
test byte [r14 + 0x5c], 4
jne 0x1403824fd
mov rax, qword [rsp + 0x78]
test byte [rax + 0x44], 8
je 0x1403824fd
mov edx, dword [rsp + 0x108]
mov rcx, r15
mov qword [rsp + 0xf0], 0
call fcn.14031df40
mov eax, dword [r15 + 0x90]
xor r13d, r13d
mov dword [rsp + 0x60], eax
jmp 0x1403818e4
mov eax, dword [rbx + 0x38]
lea edi, [rax + 1]
mov dword [rbx + 0x38], edi
jmp 0x140381867
cmp dword [rbp + 0x38], 1
jne 0x140380ace
mov rdx, qword [rbp + 0x30]
mov rax, qword [rdx]
mov rdi, qword [rax + 0x20]
test rdi, rdi
je 0x140380add
mov esi, dword [rdi]
cmp esi, 1
jne 0x140380add
test byte [rax + 7], 1
jne 0x140380add
test byte [r14 + 0x5e], 1
jne 0x140380add
mov rcx, qword [rax + 8]
xor edx, edx
lea r10, [0x14075ecaf]
lea r9, [0x14076bfa0]
jmp 0x140382585
movzx r8d, byte [r9 + r8]
cmp byte [r9 + rax], r8b
jne 0x140382a24
add rdx, 1
movzx eax, byte [rcx + rdx]
movzx r8d, byte [r10 + rdx]
cmp eax, r8d
jne 0x140382572
test eax, eax
jne 0x140382581
mov rcx, qword [rdi + 8]
call fcn.140307d00
movzx ecx, byte [rsp + 0x60]
test eax, eax
mov eax, 2
cmovne ecx, eax
mov byte [rsp + 0x60], cl
jmp 0x140382a42
xor edx, edx
cmp al, 0x56
mov r10d, dword [rbp + 0x90]
sete dl
lea edx, [rdx + rdx + 0x37]
cmp r10d, dword [rbp + 0x94]
jge 0x140382aa2
lea eax, [r10 + 1]
mov ecx, dword [rsp + 0x48]
mov dword [rbp + 0x90], eax
movsxd rax, r10d
imul rax, rax, 0x18
add rax, qword [rbp + 0x88]
mov byte [rax], dl
mov word [rax + 2], 0
mov dword [rax + 4], edi
mov dword [rax + 8], 0
mov dword [rax + 0xc], ecx
mov qword [rax + 0x10], 0
mov byte [rax + 1], 0
mov rdx, qword [rsp + 0x158]
mov rcx, qword [rsp + 0x150]
xor r8d, r8d
mov dword [rsp + 0xb4], r10d
lea r13, [rsp + 0x150]
call fcn.140323160
mov dword [rsp + 0x20], 0
mov r9d, 1
mov rcx, rbp
mov r8d, dword [rsp + 0x184]
mov edx, 0x25
call fcn.140322f70
mov rcx, r13
call fcn.14038b070
xor r9d, r9d
mov edx, 0x8e
mov rcx, rbp
mov dword [rsp + 0x20], 0
mov r8d, dword [rsp + 0x184]
call fcn.140322f70
mov edx, 0xb
xor r8d, r8d
mov rcx, rbp
mov dword [rsp + 0x20], 0
mov r9d, dword [rsp + 0xac]
call fcn.140322f70
mov r10d, dword [rsp + 0xb4]
mov edx, dword [rbp + 0x90]
test r10d, r10d
jns 0x1403826be
lea r10d, [rdx - 1]
mov rcx, qword [rbp]
lea rax, [0x1407dad80]
cmp byte [rcx + 0x63], 0
jne 0x1403826dd
movsxd rax, r10d
imul rax, rax, 0x18
add rax, qword [rbp + 0x88]
mov dword [rax + 8], edx
movzx eax, byte [rsi + 0x21]
jmp 0x140380115
mov dword [rsp + 0x20], 0
xor r8d, r8d
mov edx, 0x45
mov rcx, rbp
mov r9d, dword [rsp + 0x80]
call fcn.140322ee0
mov dword [rsp + 0x50], eax
jmp 0x1403803a1
mov r8d, edi
mov edx, 1
mov rcx, r13
call fcn.14038bac0
xor r8d, r8d
mov edx, 2
mov rcx, r13
mov r9d, 1
mov dword [rsp + 0x48], eax
call fcn.14038bac0
mov edi, eax
jmp 0x140381643
mov eax, dword [rbp + 0x90]
mov r8d, edi
mov edx, 2
mov rcx, r13
mov r9d, 1
mov dword [rsp + 0x70], eax
call fcn.14038bac0
xor r8d, r8d
mov edx, 1
mov rcx, r13
mov r9d, 1
mov edi, eax
call fcn.14038bac0
mov dword [rsp + 0x48], eax
jmp 0x140381643
mov r11d, dword [rbx + 0x44]
mov r9d, dword [rsp + 0x48]
mov rcx, r13
mov edx, 0x39
mov r10d, dword [rbp + 0x90]
mov r8d, dword [rsp + 0x184]
lea eax, [r11 - 1]
mov dword [rsp + 0x78], r11d
mov dword [rbx + 0x44], eax
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x18c]
mov dword [rsp + 0x70], r10d
mov dword [rsp + 0x20], eax
call fcn.14033de00
xor r9d, r9d
mov r8d, edi
mov edx, 2
mov rcx, r13
call fcn.14038bac0
xor r9d, r9d
xor r8d, r8d
mov edx, 1
mov rcx, r13
call fcn.14038bac0
mov r10d, dword [rsp + 0x70]
mov rcx, rbp
xor r8d, r8d
mov dword [rsp + 0x20], 0
mov edx, 0xb
mov r9d, r10d
call fcn.140322f70
mov rcx, qword [rbp + 0x18]
mov r11d, dword [rsp + 0x78]
jmp 0x140382439
xor r9d, r9d
mov r8d, edi
mov edx, 2
mov rcx, r13
call fcn.14038bac0
jmp 0x140381e0b
mov esi, edi
jmp 0x140380ed0
mov eax, dword [r15 + 0x90]
mov dword [rsp + 0x50], 0
xor r13d, r13d
mov dword [rsp + 0x60], eax
jmp 0x1403818e4
test rsi, rsi
je 0x140382866
cmp dx, word [rsi + 0x5c]
jge 0x14038212c
mov rsi, rax
jmp 0x14038212c
test byte [r13 + 0x40], 0x80
je 0x140382884
movzx eax, byte [rsi + 0x64]
and eax, 3
cmp al, 2
je 0x1403821a6
mov rax, qword [rsi]
lea rdx, str._USING_COVERING_INDEX
jmp 0x1403821b0
mov esi, dword [rbp + 0x2c]
test esi, esi
je 0x1403828d3
xor eax, eax
jmp 0x1403828c1
mov rcx, rax
shl rcx, 5
add rcx, qword [rbp + 0x30]
mov r9, qword [rcx]
test byte [r9 + 7], 1
jne 0x1403828bd
mov rcx, qword [rcx + 8]
test byte [rcx + 4], 0x20
jne 0x1403828cd
add rax, 1
cmp edx, eax
jg 0x14038289e
cmp eax, edx
je 0x1403829ba
xor esi, esi
xor edi, edi
jmp 0x1403828de
xor edi, edi
sub edx, 1
je 0x1403829ed
mov rdx, rbp
mov rcx, rbx
mov qword [rsp + 0x50], r11
call fcn.140348bf0
movzx eax, byte [rsp + 0x60]
mov r11, qword [rsp + 0x50]
mov rcx, rbx
mov dword [rsp + 0x30], 0
mov r9, qword [rsp + 0x70]
or eax, edi
mov r8, qword [rsp + 0x78]
mov rdx, r11
movzx eax, ax
mov dword [rsp + 0x28], eax
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x20], rax
call fcn.14037c580
mov r13, rax
test rax, rax
je 0x140381309
movzx r10d, byte [rax + 0x43]
mov r8, rbp
mov edx, esi
mov rcx, rbx
mov edi, r10d
mov r9d, r10d
mov dword [rsp + 0x48], r10d
call fcn.14038d500
sub edi, 1
cmp dil, 1
ja 0x140382977
mov rax, qword [rbp + 0x30]
mov r10d, dword [rsp + 0x48]
mov rcx, qword [rbx + 0x10]
mov r9d, dword [rax + 0x18]
mov r8d, dword [rax + 0x14]
mov edx, r10d
call fcn.14031e840
test esi, esi
jne 0x140382b52
cmp byte [rsp + 0x60], 0
jne 0x140382af1
mov rcx, r13
call fcn.1403262b0
mov rcx, qword [rbx + 0x10]
mov rdx, rbp
call fcn.1403233c0
jmp 0x14038209b
mov rcx, qword [r12 + 0x28]
mov rax, rdx
test byte [rcx + 0x48], 1
je 0x140382110
jmp 0x14038213e
lea esi, [r8 + 1]
mov edx, 0x45
xor r8d, r8d
mov rcx, r15
mov dword [rbx + 0x38], esi
mov r9d, esi
xor edi, edi
mov dword [rsp + 0x20], 0
mov qword [rsp + 0x50], r11
call fcn.140322f70
mov r11, qword [rsp + 0x50]
jmp 0x1403828de
mov rax, qword [rbp + 0x30]
cmp dword [rax + 0x14], 0
js 0x1403828de
mov rax, qword [rax]
mov rax, qword [rax + 0x20]
cmp rax, 1
mov qword [rsp + 0x48], rax
sbb edi, edi
not edi
and di, 0x500
jmp 0x1403828de
mov r11d, 0xffff8000
jmp 0x140381f4d
lea rdx, [0x14075ecd6]
call fcn.140305f00
test eax, eax
jne 0x140380ad9
mov byte [rsp + 0x60], 1
mov esi, 2
xor r8d, r8d
mov rdx, rdi
mov rcx, r14
mov qword [rsp + 0xa0], r11
call fcn.14032c270
mov r11, qword [rsp + 0xa0]
test rax, rax
mov qword [rsp + 0x70], rax
je 0x140382a73
movzx edi, byte [rsp + 0x60]
mov byte [rax + 0x18], dil
mov byte [rsp + 0x60], sil
jmp 0x140380ace
mov r8d, dword [rsp + 0x48]
xor r9d, r9d
mov edx, 0x30
mov rcx, rbp
mov dword [rsp + 0x20], 1
call fcn.140322ee0
mov r10d, eax
jmp 0x1403813bd
mov eax, dword [rsp + 0x48]
xor r9d, r9d
mov r8d, edi
mov rcx, rbp
mov dword [rsp + 0x20], eax
call fcn.140322ee0
mov r10d, eax
jmp 0x140382614
mov rdx, rbp
call fcn.14031ccb0
mov rcx, qword [rbp + 0x18]
jmp 0x140380313
mov edx, dword [rsp + 0x108]
mov rcx, r15
mov qword [rsp + 0xf0], 0
call fcn.14031df40
jmp 0x1403818b8
test byte [r13 + 0x44], 4
je 0x14038298a
cmp byte [r13 + 0x41], 0
je 0x14038298a
movzx eax, byte [r13 + 0x40]
sub eax, 1
cdqe
jmp 0x140382b29
imul rcx, rax, 0x60
sub rax, 1
mov rcx, qword [r13 + rcx + 0x3b0]
test byte [rcx + 0x28], 4
jne 0x140382b75
mov edx, eax
cmp rax, 0xffffffffffffffff
jne 0x140382b13
mov r9d, dword [r13 + 0x34]
xor r8d, r8d
mov edx, 0xb
mov rcx, r15
mov dword [rsp + 0x20], 0
call fcn.140322f70
jmp 0x14038298a
mov dword [rsp + 0x20], 0
mov r9d, esi
mov edx, 0x45
mov rcx, r15
mov r8d, 1
call fcn.140322f70
jmp 0x14038297f
movsxd rax, edx
xor r8d, r8d
mov edx, 0xb
mov rcx, r15
imul rax, rax, 0x60
mov dword [rsp + 0x20], 0
mov r9d, dword [r13 + rax + 0x370]
call fcn.140322f70
jmp 0x14038298a