Function at 0x1401dd670
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, 0x1b8
mov rax, qword [rcx]
mov qword [rsp + 0x210], r8
mov r12, rcx
mov r13, rdx
mov qword [rsp + 0x58], rax
call fcn.1401cc110
mov qword [rsp + 0x50], rax
test r13, r13
jne 0x1401dd6b3
mov r14d, 1
jmp 0x1401e0ad6
cmp dword [r12 + 0x30], 0
jne 0x1401dd6a8
xor r9d, r9d
xor r8d, r8d
mov edx, 0x15
mov rcx, r12
mov qword [rsp + 0x20], 0
call fcn.1401b29b0
test eax, eax
jne 0x1401dd6a8
mov rax, qword [rsp + 0x210]
cmp byte [rax], 6
ja 0x1401dd718
mov r8, qword [r13 + 0x48]
test r8, r8
je 0x1401dd708
lea rdx, [fcn.1401bf710]
mov rcx, r12
call fcn.1401d7d30
mov qword [r13 + 0x48], 0
mov eax, dword [r13 + 4]
and eax, 0xfffffffe
or eax, 0x400000
mov dword [r13 + 4], eax
xor r8d, r8d
mov rdx, r13
mov rcx, r12
call fcn.1401e0f10
mov eax, dword [r12 + 0x30]
mov dword [rsp + 0x78], eax
test eax, eax
jne 0x1401dd771
mov r11d, dword [r13 + 4]
bt r11d, 0x17
jae 0x1401dd78a
mov rbx, qword [r13 + 0x28]
lea rcx, [rbx + 8]
mov rdx, rbx
call fcn.1401ae580
test eax, eax
je 0x1401dd77f
mov r8, qword [rbx + 0x20]
test r8, r8
jne 0x1401dd762
mov rax, qword [rbx + 0x28]
mov r8, qword [rax]
lea rdx, str.target_object_alias_may_not_appear_in_FROM_clause:__s
mov rcx, r12
call fcn.1401bbc30
mov qword [rsp + 0x60], 0
jmp 0x1401dde6c
and r11d, 0xff7fffff
mov dword [r13 + 4], r11d
mov rax, qword [rsp + 0x210]
cmp byte [rax], 9
jne 0x1401dd7a2
mov rdx, r13
mov rcx, r12
call fcn.1401c98d0
cmp qword [r13 + 0x70], 0
jne 0x1401dd7e7
mov eax, dword [r13 + 4]
lea rdx, [rsp + 0x110]
mov ecx, 0xa
mov r15, qword [r13 + 0x28]
mov rdi, rdx
and eax, 8
setne bpl
mov dword [rsp + 0x70], eax
xor eax, eax
xor ebx, ebx
rep stosd dword [rdi], eax
mov rax, qword [r13 + 0x48]
movzx ebp, bpl
mov qword [rsp + 0x108], rax
jmp 0x1401ddce8
cmp qword [r13 + 0x50], 0
jne 0x1401dd7a9
mov esi, dword [r13 + 4]
and esi, 0x100000
jne 0x1401dd7a9
cmp byte [r12 + 0x134], 1
ja 0x1401dd7a9
mov rcx, r12
call fcn.1401cc110
mov r14, qword [r12]
mov edx, 0x68
mov qword [rsp + 0x138], 0
mov r15, qword [r13 + 0x28]
mov rbx, qword [r13 + 0x70]
mov qword [rsp + 0x60], rax
mov rax, qword [r13 + 0x30]
mov rcx, r14
mov qword [rsp + 0x68], rax
mov rax, qword [r13 + 0x38]
mov qword [rsp + 0x70], rax
mov rax, qword [r13 + 0x40]
mov qword [rsp + 0x80], rax
mov eax, dword [r13 + 4]
mov dword [rsp + 0x88], eax
call fcn.1401b9670
mov rbp, rax
test rax, rax
jne 0x1401dd87c
mov edx, 7
mov rcx, r14
call fcn.1401bbcd0
mov ebx, eax
jmp 0x1401ddcae
lea rdx, [rsp + 0x180]
mov eax, esi
mov ecx, 6
mov rdi, rdx
lea r8, [rsp + 0x168]
mov rdx, r13
rep stosd dword [rdi], eax
lea rax, [0x1401652f0]
mov rcx, r8
mov qword [rsp + 0x90], r8
mov qword [rsp + 0x170], rax
lea rax, [0x1401e1030]
mov qword [rsp + 0x168], r12
mov qword [rsp + 0x178], rax
call fcn.1401f16e0
test byte [r13 + 4], 8
mov r8, qword [rsp + 0x90]
jne 0x1401dd907
mov rdx, qword [r13 + 0x48]
mov rcx, r8
lea rax, [0x14016fec0]
mov qword [rsp + 0x178], 0
mov qword [rsp + 0x170], rax
call fcn.1401f1690
mov eax, dword [r13 + 4]
mov qword [r13 + 0x28], 0
mov r9d, 1
xor edx, edx
mov qword [r13 + 0x30], 0
mov r8, qword [rbx + 0x10]
mov rcx, r12
and eax, 0xfffffff7
mov qword [r13 + 0x38], 0
or eax, 0x100000
mov qword [r13 + 0x40], 0
mov dword [r13 + 4], eax
call fcn.1401724e0
mov r8, qword [rbx + 0x18]
mov r9d, 1
mov rcx, r12
mov rdx, rax
call fcn.1401724e0
mov rsi, rax
test rax, rax
je 0x1401dd9a1
mov rdx, qword [r13 + 0x48]
test rdx, rdx
je 0x1401dd9a1
mov eax, dword [rdx]
mov edi, dword [rsi]
cmp eax, edi
jg 0x1401dd9a1
mov dword [rsi], eax
or r8d, 0xffffffff
mov rcx, rsi
call fcn.1401bf690
test eax, eax
jne 0x1401dd99f
mov rdx, qword [r13 + 0x48]
mov rcx, r14
call fcn.1401bf710
mov qword [r13 + 0x48], 0
mov dword [rsi], edi
mov eax, dword [r12 + 0x34]
mov r9, qword [r13 + 0x20]
mov r8, r15
mov rdx, rbx
lea rdi, [rsp + 0x138]
mov rcx, r12
mov dword [rbx + 0x58], eax
add eax, 4
mov dword [r12 + 0x34], eax
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rbp
call fcn.1401b07d0
mov qword [rsp + 0x28], rdi
mov rdx, rbx
mov r8, r15
mov qword [rsp + 0x20], rbp
mov r9, qword [r13 + 0x48]
mov rcx, r12
call fcn.1401b07d0
mov rdx, qword [rsp + 0x138]
xor eax, eax
test rdx, rdx
je 0x1401dda02
mov eax, dword [rdx]
mov dword [rbx + 0x78], eax
mov r8, qword [rbx + 0x10]
xor r9d, r9d
mov rcx, r12
mov rdi, rbx
call fcn.1401724e0
xor r9d, r9d
mov rcx, r12
mov qword [rsp + 0x138], rax
mov r8, qword [rbx + 0x18]
mov rdx, rax
call fcn.1401724e0
mov qword [rsp + 0x138], rax
lea rax, [rsp + 0x138]
mov qword [rsp + 0x90], rax
mov rax, qword [rdi + 0x70]
mov r8, qword [rax + 0x20]
mov rax, qword [rdi + 0x50]
test byte [rax + 6], 0x10
je 0x1401dda9b
mov qword [rsp + 0x20], rbp
mov r9, r8
mov rdx, rbx
mov r8, r15
mov rax, qword [rsp + 0x90]
mov rcx, r12
mov qword [rsp + 0x28], rax
call fcn.1401b07d0
mov rdx, qword [rsp + 0x138]
xor eax, eax
test rdx, rdx
je 0x1401dda8f
mov eax, dword [rdx]
mov dword [rdi + 0x7c], eax
mov byte [rdi + 0x8c], 1
jmp 0x1401ddac2
mov rdx, qword [rsp + 0x138]
xor eax, eax
test rdx, rdx
je 0x1401ddaac
mov eax, dword [rdx]
mov dword [rdi + 0x7c], eax
xor r9d, r9d
mov rcx, r12
call fcn.1401724e0
mov qword [rsp + 0x138], rax
mov rdx, qword [rdi + 0x48]
test rdx, rdx
je 0x1401ddaf1
xor r8d, r8d
mov rcx, r14
call fcn.1401bea10
mov rdx, qword [rsp + 0x138]
mov rcx, r12
mov r8, rax
call fcn.1401bf420
mov qword [rsp + 0x138], rax
mov eax, dword [r12 + 0x38]
mov rcx, qword [rsp + 0x60]
xor r8d, r8d
mov edx, 0x4b
lea r9d, [rax + 1]
add eax, 2
mov dword [rdi + 0x5c], r9d
mov dword [r12 + 0x38], eax
mov dword [rdi + 0x60], eax
call fcn.1401e5700
mov rdi, qword [rdi + 0x40]
test rdi, rdi
jne 0x1401dda49
cmp qword [rsp + 0x138], 0
jne 0x1401ddb5b
lea r8, [0x14028f2ae]
mov edx, 0x9b
mov rcx, r14
call fcn.1401bbdb0
mov rcx, qword [r12]
mov rdx, rax
call fcn.1401bf470
mov qword [rsp + 0x138], rax
mov qword [rsp + 0x30], rsi
mov r9, qword [rsp + 0x68]
mov r8, r15
mov rcx, r12
mov rax, qword [rsp + 0x80]
mov dword [rsp + 0x38], 0
mov qword [rsp + 0x40], 0
mov rdx, qword [rsp + 0x138]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x20], rax
call fcn.1401e0d30
xor edx, edx
xor r9d, r9d
xor r8d, r8d
mov rcx, r12
mov r15, rax
call fcn.1401e1230
mov qword [r13 + 0x28], rax
mov rdx, rax
test rax, rax
je 0x1401ddc82
or byte [rax + 0x48], 8
mov rcx, r12
mov ebx, 7
mov r8d, 0x40
mov qword [rax + 0x30], r15
call fcn.1401e1530
or dword [r15 + 4], 0x8000040
mov rdx, r15
mov rcx, r12
call fcn.1401dc5a0
mov r8, rax
mov eax, dword [rsp + 0x88]
and eax, 8
or dword [r15 + 4], eax
test r8, r8
je 0x1401ddc8f
mov rsi, r8
mov rdi, rbp
mov ecx, 0x1a
mov rdx, r15
rep movsd dword [rdi], dword [rsi]
lea r9, [rsp + 0x168]
mov ecx, 0xc
mov qword [rsp + 0x60], r8
mov rdi, r9
mov rax, qword [r13 + 0x28]
or dword [rbp + 0x30], 0x4000
mov qword [rax + 0x28], rbp
xor eax, eax
rep stosd dword [rdi], eax
lea rax, [0x1401f6060]
mov rcx, r9
mov qword [rsp + 0x170], rax
lea rax, [0x1401f1880]
mov qword [rsp + 0x178], rax
lea rax, [0x1401f1870]
mov qword [rsp + 0x180], rax
call fcn.1401f16e0
mov r8, qword [rsp + 0x60]
mov rbp, r8
jmp 0x1401ddc8d
mov rdx, r15
mov rcx, r14
call fcn.1401e0af0
xor ebx, ebx
cmp byte [r14 + 0x67], 0
mov eax, 7
mov r8, rbp
mov rcx, r12
lea rdx, [fcn.1401b9490]
cmovne ebx, eax
call fcn.1401d7d30
test ebx, ebx
jne 0x1401dd771
jmp 0x1401dd7a9
cmp dword [r15], ebx
jle 0x1401de20a
movsxd r14, ebx
imul r14, r14, 0x68
add r14, r15
mov al, byte [r14 + 0x44]
mov rdi, qword [r14 + 0x30]
mov rsi, qword [r14 + 0x28]
and eax, 0x18
cmp al, 8
je 0x1401ddcfb
test rdi, rdi
jne 0x1401ddd33
inc ebx
mov rax, qword [r13 + 0x50]
mov qword [rsp + 0x60], rax
test rax, rax
je 0x1401ddcbb
jmp 0x1401de1e7
mov rcx, qword [r13 + 0x30]
mov edx, dword [r14 + 0x4c]
call fcn.1401bf2c0
test eax, eax
je 0x1401ddce1
mov rax, qword [rsp + 0x58]
test byte [rax + 0x61], 0x20
jne 0x1401ddce1
and byte [r14 + 0x44], 0xd7
mov r8b, byte [r15 + 0x44]
mov rcx, qword [r13 + 0x30]
mov edx, dword [r14 + 0x4c]
and r8d, 0x40
call fcn.140203dc0
jmp 0x1401ddce1
mov rax, qword [rdi + 0x20]
movsx r8d, word [rsi + 0x36]
mov eax, dword [rax]
cmp r8d, eax
je 0x1401ddd5e
mov dword [rsp + 0x20], eax
mov r9, qword [rsi]
lea rdx, str.expected__d_columns_for__s_but_got__d
mov rcx, r12
call fcn.1401bbc30
jmp 0x1401dde6c
mov eax, dword [rdi + 4]
test al, 8
jne 0x1401ddce6
mov r8, qword [rdi + 0x48]
test r8, r8
je 0x1401e0a7d
cmp qword [r13 + 0x48], 0
jne 0x1401ddd7f
cmp dword [r15], 1
jle 0x1401dddba
cmp qword [rdi + 0x60], 0
jne 0x1401dddba
bt eax, 0x1b
jb 0x1401dddba
test byte [r13 + 7], 8
jne 0x1401dddba
mov rax, qword [rsp + 0x58]
test byte [rax + 0x62], 4
jne 0x1401dddba
lea rdx, [fcn.1401bf710]
mov rcx, r12
call fcn.1401d7d30
mov qword [rdi + 0x48], 0
jmp 0x1401e0a7d
test ebx, ebx
jne 0x1401e0a7d
test byte [r13 + 6], 4
je 0x1401e0a7d
cmp dword [r15], 1
je 0x1401ddce6
test byte [r15 + 0xac], 0x22
je 0x1401e0a7d
jmp 0x1401ddce6
cmp word [r13 + 2], 0x42
jle 0x1401dddf9
mov word [r13 + 2], 0x42
mov rdx, qword [rsp + 0x108]
mov dword [rsp + 0x90], 0
test rdx, rdx
jne 0x1401dfad6
mov eax, dword [r12 + 0x44]
mov rcx, qword [rsp + 0x58]
mov edx, 0x38
dec eax
mov dword [r12 + 0x44], eax
mov dword [rsp + 0x80], eax
call fcn.1401b9670
mov r14, rax
test rax, rax
je 0x1401dde51
mov r8, rax
lea rdx, [0x1401652b0]
mov rcx, r12
call fcn.1401d7d30
mov rax, qword [rsp + 0x58]
xor ebp, ebp
mov al, byte [rax + 0x67]
mov byte [rsp + 0x70], al
test al, al
je 0x1401dfb37
mov qword [rsp + 0x60], rbp
mov r14d, 1
jmp 0x1401de1cb
cmp qword [rbp + 0x50], 0
je 0x1401de357
mov rsi, qword [rbp + 0x28]
test rsi, rsi
jne 0x1401de386
inc ebx
add rbp, 0x68
cmp dword [r15], ebx
jg 0x1401dde77
mov rax, qword [r13 + 0x20]
mov rbx, qword [r13 + 0x38]
mov qword [rsp + 0x68], rax
mov rax, qword [r13 + 0x30]
mov qword [rsp + 0xa8], rax
mov rax, qword [r13 + 0x40]
mov qword [rsp + 0xb0], rax
mov eax, dword [r13 + 4]
mov byte [rsp + 0xfc], al
and eax, 9
and byte [rsp + 0xfc], 1
dec eax
je 0x1401de7d6
mov rdx, qword [rsp + 0x108]
test rdx, rdx
je 0x1401de82f
mov rax, qword [rsp + 0x68]
xor r8d, r8d
mov rcx, r12
mov r9d, dword [rax]
call fcn.1401cf440
mov r8d, dword [r12 + 0x34]
mov rcx, qword [rsp + 0x50]
mov r9, rax
lea eax, [r8 + 1]
mov dword [rsp + 0x114], r8d
mov dword [r12 + 0x34], eax
mov rax, qword [rsp + 0x108]
mov edx, dword [rax]
mov rax, qword [rsp + 0x68]
mov eax, dword [rax]
mov qword [rsp + 0x28], r9
mov dword [rsp + 0x30], 0xfffffff8
mov dword [rsp + 0x20], 0
lea r9d, [rdx + rax + 1]
mov edx, 0x76
call fcn.1401e5780
mov dword [rsp + 0x120], eax
mov rax, qword [rsp + 0x210]
cmp byte [rax], 0xc
je 0x1401de83f
mov eax, dword [r12 + 0x44]
dec eax
mov dword [rsp + 0xd8], eax
mov dword [r12 + 0x44], eax
test byte [r13 + 5], 0x40
jne 0x1401ddf8d
mov word [r13 + 2], 0x140
cmp qword [r13 + 0x60], 0
je 0x1401ddfa7
mov r8d, dword [rsp + 0xd8]
mov rdx, r13
mov rcx, r12
call fcn.14016db90
cmp dword [r13 + 8], 0
je 0x1401de902
test byte [r13 + 4], 1
je 0x1401de92b
mov eax, dword [r12 + 0x34]
xor r9d, r9d
xor r8d, r8d
mov rcx, r12
lea edx, [rax + 1]
mov dword [rsp + 0x100], eax
mov dword [r12 + 0x34], edx
mov rdx, qword [r13 + 0x20]
call fcn.1401cf440
mov dword [rsp + 0x30], 0xfffffff8
xor r9d, r9d
mov rcx, qword [rsp + 0x50]
mov qword [rsp + 0x28], rax
mov r8d, dword [rsp + 0x100]
mov edx, 0x76
mov dword [rsp + 0x20], 0
call fcn.1401e5780
mov rcx, qword [rsp + 0x50]
mov edx, 8
mov dword [rsp + 0x104], eax
call fcn.1401e5b00
mov byte [rsp + 0xfd], 3
cmp dword [rsp + 0x70], 0
jne 0x1401dfa93
test rbx, rbx
jne 0x1401dfa9c
cmp byte [rsp + 0xfc], 1
mov eax, dword [r13 + 4]
sbb ebp, ebp
not ebp
and ax, 0x4000
and bp, 0x100
or eax, ebp
mov rbp, qword [r13 + 0x70]
mov word [rsp + 0x60], ax
test rbp, rbp
jne 0x1401de938
movsx eax, word [r13 + 2]
mov qword [rsp + 0x28], r13
mov rdx, r15
mov rcx, r12
mov r9, qword [rsp + 0x108]
mov r8, qword [rsp + 0xa8]
mov dword [rsp + 0x38], eax
movzx eax, word [rsp + 0x60]
mov dword [rsp + 0x30], eax
mov rax, qword [r13 + 0x20]
mov qword [rsp + 0x20], rax
call fcn.1401f1990
mov qword [rsp + 0x70], rax
test rax, rax
je 0x1401dd771
mov eax, dword [rax + 0x48]
cmp word [r13 + 2], ax
jle 0x1401de0c9
mov word [r13 + 2], ax
cmp byte [rsp + 0xfc], 0
jne 0x1401debd6
mov rcx, qword [rsp + 0x108]
test rcx, rcx
jne 0x1401debf2
mov edx, dword [rsp + 0x120]
test edx, edx
jns 0x1401dec67
test rbp, rbp
jne 0x1401dec85
mov rax, qword [rsp + 0x70]
mov rcx, r12
or r8d, 0xffffffff
mov rdx, r13
lea r9, [rsp + 0x108]
mov eax, dword [rax + 0x34]
mov dword [rsp + 0x38], eax
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x30]
mov dword [rsp + 0x30], eax
mov rax, qword [rsp + 0x210]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0xfc]
mov qword [rsp + 0x20], rax
call fcn.1401aff40
mov rcx, qword [rsp + 0x70]
call fcn.1401f4af0
cmp byte [rsp + 0xfd], 3
jne 0x1401de175
lea r9, str.DISTINCT
lea r8, str.USE_TEMP_B_TREE_FOR__s
xor edx, edx
mov rcx, r12
call fcn.1401ed440
cmp qword [rsp + 0x108], 0
je 0x1401de1a8
mov rax, qword [rsp + 0x210]
lea r8, [rsp + 0x108]
mov rdx, r13
mov rcx, r12
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x68]
mov r9d, dword [rax]
call fcn.1401940a0
mov edx, dword [rsp + 0xd8]
mov rcx, qword [rsp + 0x50]
xor r14d, r14d
call fcn.1401efca0
mov qword [rsp + 0x60], rbp
cmp dword [r12 + 0x30], 0
setg r14b
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x58]
call fcn.1401bf710
mov rcx, r12
call fcn.1401ed4c0
jmp 0x1401e0ad6
mov r8, qword [rsp + 0x210]
mov rdx, r13
mov rcx, r12
call fcn.14019cde0
cmp qword [r13 + 0x58], 0
mov r14d, eax
jne 0x1401e0ad6
jmp 0x1401de1da
mov rax, qword [r13 + 0x30]
test rax, rax
je 0x1401de32f
cmp byte [rax], 0x2c
jne 0x1401de32f
mov rax, qword [rsp + 0x58]
test byte [rax + 0x61], 0x80
jne 0x1401de32f
mov rax, qword [r12]
mov qword [rsp + 0x138], r12
lea rbx, [rsp + 0x138]
lea rsi, [0x1401a4270]
lea rdi, [0x1401e1030]
add rax, 0x67
mov qword [rsp + 0x140], rax
mov rdx, qword [r13 + 0x28]
mov eax, 1
mov qword [rsp + 0x158], 0
mov qword [rsp + 0x148], 0
mov dword [rsp + 0x150], 0
test rdx, rdx
je 0x1401de2a3
cmp dword [rdx], 0
jle 0x1401de2a3
mov al, byte [rdx + 0x44]
and eax, 0x40
cmp al, 1
sbb eax, eax
and eax, 0xfffffffe
add eax, 3
mov rdx, qword [r13 + 0x30]
mov rcx, rbx
mov dword [rsp + 0x154], eax
call fcn.1401736e0
cmp dword [rsp + 0x148], 0
je 0x1401de321
mov rdx, qword [r13 + 0x30]
lea rcx, [rsp + 0x168]
mov qword [rsp + 0x180], 0
mov qword [rsp + 0x188], 0
mov qword [rsp + 0x168], r12
mov qword [rsp + 0x170], rsi
mov qword [rsp + 0x178], rdi
mov qword [rsp + 0x190], rbx
call fcn.1401f1680
mov rax, qword [rsp + 0x138]
mov rdx, qword [rsp + 0x158]
mov rcx, qword [rax]
call fcn.1401b9490
cmp dword [rsp + 0x14c], 0
jne 0x1401de25d
lea rax, [rsp + 0x168]
lea rbp, [r15 + 8]
xor ebx, ebx
mov qword [rsp + 0x68], rax
lea rax, [rsp + 0x138]
mov qword [rsp + 0x88], rax
jmp 0x1401dde95
mov r8, qword [rbp + 0x10]
test r8, r8
je 0x1401dde82
mov rax, qword [rbp + 8]
lea r9, [0x14028e13e]
mov edx, 0x14
mov rcx, r12
mov qword [rsp + 0x20], rax
call fcn.1401b29b0
jmp 0x1401dde82
mov rdx, qword [rsp + 0x68]
mov rcx, r13
movsxd rdi, ebx
mov dword [rsp + 0x168], 0
call fcn.140195850
mov eax, dword [rsp + 0x168]
add dword [r12 + 0x13c], eax
mov rax, qword [rsp + 0x58]
test byte [rax + 0x61], 0x10
jne 0x1401de3e8
imul rax, rdi, 0x68
test byte [r15 + rax + 0x49], 1
je 0x1401de3d6
mov rax, qword [rbp + 0x60]
cmp byte [rax + 0x12], 0
je 0x1401de3e8
cmp dword [rax], 1
jg 0x1401de3e8
mov r8, qword [r13 + 0x30]
mov r9, rbp
mov rdx, rsi
mov rcx, r12
call fcn.1401a4600
mov rax, qword [r12 + 0x178]
mov qword [rsp + 0x80], rax
mov rax, qword [rbp + 0x10]
mov qword [r12 + 0x178], rax
imul rax, rdi, 0x68
mov dil, byte [r15 + rax + 0x49]
and dil, 1
je 0x1401de42f
mov rdx, qword [rbp + 0x60]
mov al, byte [rdx + 0x12]
test al, al
je 0x1401de5a5
cmp dword [rdx], 1
jle 0x1401de42f
cmp al, 2
jne 0x1401de5a5
test byte [r15 + 0x44], 0x40
jne 0x1401de5a0
mov rax, qword [r12]
test byte [rax + 0x63], 2
jne 0x1401de5a0
mov r14d, dword [r15]
lea r8d, [rbx + 1]
mov rdx, rbp
mov rcx, r15
mov r9d, r14d
call fcn.1401970f0
test rax, rax
jne 0x1401de5a0
mov eax, dword [r13 + 4]
test ebx, ebx
jne 0x1401de489
dec r14d
je 0x1401de4b8
test byte [r15 + 0xac], 2
jne 0x1401de4b8
bt eax, 0x1c
jb 0x1401de5a0
jmp 0x1401de4b8
bt eax, 0x1c
jb 0x1401de5a0
mov rax, rbp
mov edx, ebx
test byte [rax + 0x3c], 0x22
jne 0x1401de5a0
test edx, edx
je 0x1401de4b8
sub rax, 0x68
dec edx
cmp qword [rax + 0x28], 0
je 0x1401de498
jmp 0x1401de5a0
mov rax, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x50]
xor r9d, r9d
mov edx, 0xb
mov r14d, dword [rax + 0x90]
mov eax, dword [r12 + 0x38]
lea edi, [r14 + 1]
lea r8d, [rax + 1]
mov dword [r12 + 0x38], r8d
mov dword [rbp + 0x34], r8d
mov dword [rsp + 0x20], edi
call fcn.1401e5720
mov dword [rbp + 0x30], edi
mov eax, dword [rbp + 0x34]
mov r9, rbp
lea r8, str.CO_ROUTINE___S
mov edx, 1
mov rcx, r12
mov byte [rsp + 0x168], 0xd
mov dword [rsp + 0x16c], eax
mov qword [rsp + 0x180], 0
mov qword [rsp + 0x170], 0
mov dword [rsp + 0x178], 0
call fcn.1401ed440
mov r8, qword [rsp + 0x68]
mov rdx, rsi
mov rcx, r12
call fcn.1401dd670
mov dx, word [rsi + 2]
mov rax, qword [rbp + 0x20]
mov rcx, qword [rsp + 0x50]
mov word [rax + 0x3a], dx
movsxd rax, ebx
imul rax, rax, 0x68
or byte [r15 + rax + 0x48], 0x20
mov eax, dword [rsp + 0x174]
mov edx, dword [rbp + 0x34]
mov dword [rbp + 0x38], eax
call fcn.1401e5e00
mov rcx, qword [rsp + 0x50]
mov edx, r14d
call fcn.1401ee1f0
mov byte [r12 + 0x1f], 0
mov dword [r12 + 0x28], 0
jmp 0x1401de788
test dil, dil
je 0x1401de5e6
mov rdi, qword [rbp + 0x60]
mov r9d, dword [rdi + 4]
test r9d, r9d
jle 0x1401de5e6
mov r8d, dword [rdi + 8]
mov rcx, qword [rsp + 0x50]
mov edx, 0xa
call fcn.1401e5700
mov r8d, dword [rbp + 0x44]
mov r9d, dword [rdi + 0xc]
cmp r8d, r9d
je 0x1401de5e1
mov rcx, qword [rsp + 0x50]
mov edx, 0x73
call fcn.1401e5700
mov eax, dword [rdi + 0x10]
jmp 0x1401de63a
mov r9d, ebx
xor r8d, r8d
mov rdx, rbp
mov rcx, r15
call fcn.1401970f0
mov rdi, rax
test rax, rax
je 0x1401de643
mov r9d, dword [rax + 0x30]
test r9d, r9d
je 0x1401de61b
mov r8d, dword [rax + 0x34]
mov rcx, qword [rsp + 0x50]
mov edx, 0xa
call fcn.1401e5700
mov r9d, dword [rdi + 0x44]
mov r8d, dword [rbp + 0x44]
mov edx, 0x73
mov rcx, qword [rsp + 0x50]
call fcn.1401e5700
mov rax, qword [rdi + 0x28]
mov ax, word [rax + 2]
mov word [rsi + 2], ax
jmp 0x1401de788
mov eax, dword [r12 + 0x38]
mov rcx, qword [rsp + 0x50]
mov edx, 9
inc eax
mov dword [r12 + 0x38], eax
mov dword [rbp + 0x34], eax
call fcn.1401e56c0
xor r10d, r10d
lea edi, [rax + 1]
mov r14d, eax
movsxd rax, ebx
imul rax, rax, 0x68
mov dword [rbp + 0x30], edi
lea rdx, [r15 + rax + 0x30]
mov al, byte [rdx + 0x18]
or eax, 0x10
mov byte [rdx + 0x18], al
test al, 8
jne 0x1401de698
mov rcx, qword [rsp + 0x50]
mov edx, 0xf
call fcn.1401e56c0
mov r10d, eax
mov eax, dword [rbp + 0x44]
mov r9, rbp
lea r8, str.MATERIALIZE___S
mov rcx, r12
mov edx, 1
mov dword [rsp + 0x90], r10d
mov byte [rsp + 0x168], 0xc
mov dword [rsp + 0x16c], eax
mov qword [rsp + 0x180], 0
mov qword [rsp + 0x170], 0
mov dword [rsp + 0x178], 0
call fcn.1401ed440
mov r8, qword [rsp + 0x68]
mov rdx, rsi
mov rcx, r12
call fcn.1401dd670
mov rax, qword [rbp + 0x20]
mov dx, word [rsi + 2]
mov r10d, dword [rsp + 0x90]
mov word [rax + 0x3a], dx
test r10d, r10d
je 0x1401de722
mov rcx, qword [rsp + 0x50]
mov edx, r10d
call fcn.1401ee1f0
mov r8d, dword [rbp + 0x34]
mov rcx, qword [rsp + 0x50]
mov edx, 0x43
mov r9d, edi
call fcn.1401e5700
mov rcx, qword [rsp + 0x50]
mov edx, r14d
call fcn.1401ee1f0
movsxd rax, ebx
mov byte [r12 + 0x1f], 0
mov dword [r12 + 0x28], 0
imul rax, rax, 0x68
mov eax, dword [r15 + rax + 0x48]
and ax, 0x108
cmp ax, 0x100
jne 0x1401de788
mov edx, dword [rbp + 0x30]
mov rax, qword [rbp + 0x60]
mov dword [rax + 4], edx
mov edx, dword [rbp + 0x34]
mov dword [rax + 8], edx
mov edx, dword [rbp + 0x44]
mov dword [rax + 0xc], edx
mov dx, word [rsi + 2]
mov word [rax + 0x10], dx
mov rax, qword [rsp + 0x58]
cmp byte [rax + 0x67], 0
jne 0x1401dde6c
mov rdx, qword [rsp + 0x88]
mov rcx, r13
mov dword [rsp + 0x138], 0
call fcn.140195850
mov eax, dword [rsp + 0x138]
sub dword [r12 + 0x13c], eax
mov rax, qword [rsp + 0x80]
mov qword [r12 + 0x178], rax
jmp 0x1401dde8f
mov rdx, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x108]
or r8d, 0xffffffff
call fcn.1401bf690
test eax, eax
jne 0x1401ddedd
cmp qword [r13 + 0x70], 0
jne 0x1401ddedd
and dword [r13 + 4], 0xfffffffe
mov rdx, qword [rsp + 0x68]
xor r8d, r8d
mov rcx, qword [rsp + 0x58]
call fcn.1401bf720
or dword [r13 + 4], 8
mov qword [r13 + 0x38], rax
mov rbx, rax
mov byte [rsp + 0xfc], 2
jmp 0x1401ddedd
mov dword [rsp + 0x120], 0xffffffff
jmp 0x1401ddf5b
mov rax, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x50]
mov edx, 0x76
mov r9d, dword [rax]
mov rax, qword [rsp + 0x210]
mov r8d, dword [rax + 4]
call fcn.1401e5700
test byte [r13 + 5], 8
je 0x1401ddf6c
mov rax, qword [rsp + 0x68]
movsxd rsi, dword [rax]
lea edi, [rsi - 1]
shl rsi, 5
test edi, edi
jle 0x1401de8ca
movsxd rax, edi
mov rcx, qword [rsp + 0x68]
sub rsi, 0x20
shl rax, 5
test byte [rcx + rax + 0x1c], 0x40
jne 0x1401de8ca
mov rax, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x58]
dec edi
mov rdx, qword [rax + rsi + 8]
call fcn.1401be960
mov rax, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rax + rsi + 0x10]
call fcn.1401b9490
mov rax, qword [rsp + 0x68]
dec dword [rax]
jmp 0x1401de87c
mov rax, qword [rsp + 0x68]
mov ecx, dword [rax]
xor eax, eax
cmp ecx, eax
jle 0x1401ddf6c
movsxd rdx, eax
mov rsi, qword [rsp + 0x68]
shl rdx, 5
test byte [rsi + rdx + 0x1c], 0x40
jne 0x1401de8fd
mov rdx, rax
shl rdx, 5
mov rdx, qword [rsi + rdx + 8]
mov byte [rdx], 0x79
inc rax
jmp 0x1401de8d3
mov edx, dword [rsp + 0x120]
test edx, edx
js 0x1401ddfb2
mov rcx, qword [rsp + 0x50]
call fcn.1401ed7c0
mov byte [rax], 0x77
or byte [rsp + 0x12c], 1
jmp 0x1401ddfb2
mov byte [rsp + 0xfd], 0
jmp 0x1401de030
mov rax, qword [r13 + 0x28]
mov rcx, r12
mov rax, qword [rax + 0x30]
mov rax, qword [rax + 0x20]
mov r9d, dword [rax]
mov dword [rsp + 0x70], r9d
call fcn.1401cc110
mov r9d, dword [rsp + 0x70]
mov r8d, dword [rbp + 0x58]
mov edx, 0x76
mov rcx, rax
mov r14, rax
call fcn.1401e5700
mov r9d, dword [rbp + 0x58]
mov edx, 0x73
mov rcx, r14
lea r8d, [r9 + 1]
call fcn.1401e5700
mov r9d, dword [rbp + 0x58]
mov edx, 0x73
mov rcx, r14
lea r8d, [r9 + 2]
call fcn.1401e5700
mov r9d, dword [rbp + 0x58]
mov edx, 0x73
mov rcx, r14
lea r8d, [r9 + 3]
call fcn.1401e5700
mov rax, qword [rbp + 0x10]
test rax, rax
je 0x1401de9e4
mov edx, dword [rax]
mov eax, dword [r12 + 0x38]
xor r8d, r8d
mov rcx, r14
lea r9d, [rax + 1]
add eax, edx
mov dword [rbp + 0x6c], r9d
mov dword [r12 + 0x38], eax
lea eax, [rdx + r9 - 1]
mov edx, 0x4b
mov dword [rsp + 0x20], eax
call fcn.1401e5720
mov eax, dword [r12 + 0x38]
mov edx, 0x47
mov rcx, r14
mov rbx, rbp
mov r8d, 1
lea rdi, str.nth_value
lea rsi, str.first_value
lea r9d, [rax + 1]
mov dword [r12 + 0x38], r9d
mov dword [rbp + 0x80], r9d
call fcn.1401e5700
cmp byte [rbp + 0x24], 0
je 0x1401deae2
mov eax, dword [r12 + 0x38]
mov rcx, r14
mov r8d, 1
lea r9d, [rax + 1]
add eax, 2
mov dword [rbp + 0x84], r9d
mov dword [r12 + 0x38], eax
mov dword [rbp + 0x88], eax
mov eax, dword [r12 + 0x34]
lea edx, [rax + 1]
mov dword [r12 + 0x34], edx
mov edx, 0x47
mov dword [rbp + 0x64], eax
call fcn.1401e5700
xor r8d, r8d
mov rcx, r14
mov edx, 0x47
mov r9d, dword [rbp + 0x88]
call fcn.1401e5700
mov r9d, dword [rbp + 0x58]
mov r8d, dword [rbp + 0x64]
mov rcx, r14
mov edx, 0x73
call fcn.1401e5700
jmp 0x1401de071
cmp byte [rbx + 0x21], 0x5a
jne 0x1401deaee
mov rax, qword [rax + 0x38]
cmp rax, rdi
je 0x1401deb87
cmp rax, rsi
je 0x1401deb87
lea rcx, str.lead
cmp rax, rcx
je 0x1401debae
lea rdx, [0x1402a04a0]
cmp rax, rdx
je 0x1401debae
mov rbx, qword [rbx + 0x40]
test rbx, rbx
je 0x1401de071
mov rax, qword [rbx + 0x50]
test byte [rax + 5], 0x10
je 0x1401dea9f
jmp 0x1401dea99
mov rax, qword [rbx + 0x70]
xor r9d, r9d
xor r8d, r8d
mov rcx, r12
mov rdx, qword [rax + 0x20]
call fcn.1401cf440
mov r11, rax
mov eax, dword [r12 + 0x34]
lea edx, [rax + 1]
mov dword [r12 + 0x34], edx
mov dword [rbx + 0x64], eax
mov eax, dword [r12 + 0x38]
lea edx, [rax + 1]
add eax, 3
mov dword [rbx + 0x68], edx
mov dword [r12 + 0x38], eax
test r11, r11
je 0x1401deb44
mov rax, qword [rbx + 0x50]
mov rax, qword [rax + 0x38]
cmp byte [rax + 1], 0x69
jne 0x1401deb44
mov rax, qword [r11 + 0x18]
mov byte [rax], 1
mov r8d, dword [rbx + 0x64]
mov edx, 0x76
mov rcx, r14
mov qword [rsp + 0x70], r11
mov r9d, 2
call fcn.1401e5700
mov r11, qword [rsp + 0x70]
mov r8d, 0xfffffff8
mov rcx, r14
mov rdx, r11
call fcn.1401e59f0
mov r9d, dword [rbx + 0x68]
xor r8d, r8d
mov edx, 0x47
inc r9d
jmp 0x1401debc9
mov eax, dword [r12 + 0x38]
mov r8d, dword [r12 + 0x34]
lea edx, [rax + 1]
add eax, 2
mov dword [rbx + 0x68], edx
lea edx, [r8 + 1]
mov dword [r12 + 0x34], edx
mov dword [rbx + 0x64], r8d
mov dword [r12 + 0x38], eax
jmp 0x1401debc0
mov r8d, dword [r12 + 0x34]
lea eax, [r8 + 1]
mov dword [r12 + 0x34], eax
mov dword [rbx + 0x64], r8d
mov r9d, dword [rbp + 0x58]
mov edx, 0x73
mov rcx, r14
call fcn.1401e5700
jmp 0x1401dead5
mov rax, qword [rsp + 0x70]
mov al, byte [rax + 0x43]
test al, al
je 0x1401de0d7
mov byte [rsp + 0xfd], al
jmp 0x1401de0d7
mov rax, qword [rsp + 0x70]
movsx edx, byte [rax + 0x41]
mov eax, 0
test dl, dl
cmovs edx, eax
mov rax, qword [rsp + 0x70]
mov dword [rsp + 0x110], edx
test byte [rax + 0x44], 4
je 0x1401dec3c
mov rax, qword [rsp + 0x70]
movzx eax, byte [rax + 0x40]
dec eax
cdqe
imul rax, rax, 0x70
add rax, qword [rsp + 0x70]
cmp qword [rax + 0x398], 0
je 0x1401dec41
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x30]
jmp 0x1401dec47
mov eax, dword [rax + 0x370]
mov dword [rsp + 0x128], eax
cmp dword [rcx], edx
jne 0x1401de0e8
mov qword [rsp + 0x108], 0
jmp 0x1401de0e8
cmp qword [rsp + 0x108], 0
jne 0x1401de0f7
mov rcx, qword [rsp + 0x50]
call fcn.1401e5b20
jmp 0x1401de0f7
mov eax, dword [r12 + 0x44]
mov rbx, qword [r13 + 0x70]
mov rcx, r12
lea esi, [rax - 1]
mov r15, qword [rbx + 0x18]
mov dword [rsp + 0xc4], esi
lea esi, [rax - 2]
sub eax, 3
mov dword [rsp + 0x9c], eax
mov dword [r12 + 0x44], eax
mov eax, dword [r12 + 0x38]
mov dword [rsp + 0xb8], esi
inc eax
mov dword [r12 + 0x38], eax
mov dword [rsp + 0xa8], eax
call fcn.1401cc110
lea rdx, [rsp + 0x188]
mov ecx, 0xa
mov r14, rax
mov rax, qword [r13 + 0x28]
mov rdi, rdx
mov esi, dword [rax + 0x4c]
mov rax, qword [rax + 0x28]
movsx eax, word [rax + 0x36]
mov dword [rsp + 0xa0], esi
mov dword [rsp + 0x90], eax
mov eax, dword [r12 + 0x44]
dec eax
mov dword [r12 + 0x44], eax
mov dword [rsp + 0x88], eax
xor eax, eax
rep stosd dword [rdi], eax
mov eax, dword [rsp + 0xa8]
mov qword [rsp + 0x168], r12
mov qword [rsp + 0x170], rbx
mov dword [rsp + 0x184], eax
mov eax, dword [rsp + 0xc4]
mov qword [rsp + 0x178], r14
mov dword [rsp + 0x180], eax
mov eax, dword [rbx + 0x58]
mov dword [rsp + 0x19c], eax
lea esi, [rax + 1]
lea edx, [rax + 2]
add eax, 3
mov dword [rsp + 0x194], edx
mov dword [rsp + 0x1a4], eax
mov al, byte [rbx + 0x21]
mov dword [rsp + 0xb0], esi
cmp al, 0x56
je 0x1401ded83
cmp al, 0x5a
je 0x1401dedab
jmp 0x1401dee09
cmp byte [rbx + 0x20], 0x59
je 0x1401dee14
mov rdx, qword [rbx + 0x28]
mov rcx, qword [r12]
call fcn.1402115e0
test eax, eax
je 0x1401dee14
mov dword [rsp + 0x18c], 1
jmp 0x1401dee14
cmp dword [rbx + 0x84], 0
jne 0x1401dee14
mov rax, rbx
lea r8, str.first_value
lea r9, str.nth_value
lea r10, str.lead
lea r11, [0x1402a04a0]
mov rdx, qword [rax + 0x50]
mov rdx, qword [rdx + 0x38]
cmp rdx, r8
sete sil
cmp rdx, r9
sete cl
or ecx, esi
cmp rdx, r10
sete sil
or cl, sil
jne 0x1401dee14
cmp rdx, r11
je 0x1401dee14
mov rax, qword [rax + 0x40]
test rax, rax
jne 0x1401dedd3
jmp 0x1401e0a44
mov dword [rsp + 0x18c], 2
mov r8d, dword [r12 + 0x38]
mov eax, dword [rsp + 0x90]
add eax, r8d
lea edi, [r8 + 1]
lea edx, [rax + 2]
lea ebp, [rax + 1]
mov dword [r12 + 0x38], edx
mov dword [rsp + 0x190], edx
mov sil, byte [rbx + 0x21]
lea edx, [rsi - 0x56]
xor esi, esi
and dl, 0xfd
jne 0x1401dee4f
lea esi, [rax + 3]
mov dword [r12 + 0x38], esi
mov al, byte [rbx + 0x22]
mov dword [rsp + 0x60], 0
sub eax, 0x56
test al, 0xfd
jne 0x1401dee71
mov eax, dword [r12 + 0x38]
inc eax
mov dword [rsp + 0x60], eax
mov dword [r12 + 0x38], eax
cmp byte [rbx + 0x20], 0x4c
je 0x1401deedb
xor edx, edx
test r15, r15
je 0x1401dee81
mov edx, dword [r15]
mov eax, dword [rbx + 0x78]
add eax, edi
mov dword [rsp + 0xc0], eax
mov rax, qword [rbx + 0x10]
test rax, rax
je 0x1401dee9f
mov eax, dword [rax]
add dword [rsp + 0xc0], eax
mov eax, dword [r12 + 0x38]
lea ecx, [rax + 1]
add eax, edx
mov dword [rsp + 0x80], ecx
lea ecx, [rax + 1]
add eax, edx
mov dword [rsp + 0x198], ecx
lea ecx, [rax + 1]
add eax, edx
mov dword [rsp + 0x1a0], ecx
lea ecx, [rax + 1]
add eax, edx
mov dword [rsp + 0x1a8], ecx
mov dword [r12 + 0x38], eax
jmp 0x1401deef1
mov dword [rsp + 0x80], 0
mov dword [rsp + 0xc0], 0
lea eax, [r8 + 1]
xor r9d, r9d
mov dword [rsp + 0xd0], eax
cmp dword [rsp + 0x90], r9d
jle 0x1401def41
mov eax, dword [rsp + 0xd0]
mov r8d, dword [rsp + 0xa0]
mov edx, 0x5e
mov rcx, r14
mov dword [rsp + 0xc8], r9d
add eax, r9d
mov dword [rsp + 0x20], eax
call fcn.1401e5720
mov r9d, dword [rsp + 0xc8]
inc r9d
jmp 0x1401deeff
mov dword [rsp + 0x20], ebp
mov edx, 0x61
mov r8d, edi
mov rcx, r14
mov r9d, dword [rsp + 0x90]
call fcn.1401e5720
mov rdx, qword [rbx + 0x10]
test rdx, rdx
je 0x1401df03e
mov eax, dword [rdx]
xor r9d, r9d
xor r8d, r8d
mov rcx, r12
add edi, dword [rbx + 0x78]
mov dword [rsp + 0xa0], eax
call fcn.1401cf440
mov r9d, dword [rbx + 0x6c]
mov r8d, edi
mov rcx, r14
mov qword [rsp + 0xc8], rax
mov eax, dword [r12 + 0x38]
mov edx, 0x5a
inc eax
mov dword [rsp + 0x90], eax
mov dword [r12 + 0x38], eax
mov eax, dword [rsp + 0xa0]
mov dword [rsp + 0x20], eax
call fcn.1401e5720
mov r10, qword [rsp + 0xc8]
mov rcx, r14
mov r8d, 0xfffffff8
mov dword [rsp + 0xd0], eax
mov rdx, r10
call fcn.1401e59f0
mov eax, dword [rsp + 0xd0]
mov rcx, r14
mov edx, 0xe
lea r8d, [rax + 2]
lea r9d, [rax + 4]
mov dword [rsp + 0x20], r8d
call fcn.1401e5720
mov r8d, dword [rsp + 0x90]
mov rcx, r14
mov edx, 0xa
call fcn.1401e56e0
mov r9d, dword [rbx + 0x6c]
mov r8d, edi
mov rcx, r14
mov dword [rsp + 0xd0], eax
mov eax, dword [rsp + 0xa0]
mov edx, 0x50
dec eax
mov dword [rsp + 0x20], eax
call fcn.1401e5720
jmp 0x1401df054
mov dword [rsp + 0x90], 0
mov dword [rsp + 0xd0], 0
mov r9d, dword [rsp + 0x190]
mov r8d, dword [rsp + 0xb0]
mov edx, 0x7f
mov rcx, r14
call fcn.1401e5700
mov r9d, ebp
mov edx, pe_nt_image_headers64
mov rcx, r14
mov eax, dword [rsp + 0x190]
mov r8d, dword [rsp + 0xb0]
mov rbp, rbx
mov dword [rsp + 0x20], eax
call fcn.1401e5720
xor r9d, r9d
mov edx, 0x34
mov rcx, r14
mov eax, dword [rsp + 0x190]
mov r8d, dword [rbx + 0x80]
mov dword [rsp + 0x20], eax
call fcn.1401e5720
mov rcx, r12
mov dword [rsp + 0xd4], eax
call fcn.1401cc110
mov dword [rsp + 0xa0], 0
mov rdi, rax
mov rax, qword [rbp + 0x50]
mov r9d, dword [rbp + 0x5c]
mov edx, 0x4b
xor r8d, r8d
mov rcx, rdi
mov qword [rsp + 0xc8], rax
call fcn.1401e5700
mov rax, qword [rbp + 0x70]
mov rdx, qword [rax + 0x20]
xor eax, eax
test rdx, rdx
je 0x1401df107
mov eax, dword [rdx]
cmp dword [rsp + 0xa0], eax
cmovge eax, dword [rsp + 0xa0]
cmp dword [rbx + 0x84], 0
mov dword [rsp + 0xa0], eax
jne 0x1401df1b4
mov rax, qword [rsp + 0xc8]
lea rcx, str.first_value
mov rax, qword [rax + 0x38]
cmp rax, rcx
je 0x1401df14e
lea rcx, str.nth_value
cmp rax, rcx
jne 0x1401df179
mov r9d, dword [rbp + 0x68]
xor r8d, r8d
mov edx, 0x47
mov rcx, rdi
call fcn.1401e5700
mov r9d, dword [rbp + 0x68]
xor r8d, r8d
mov rcx, rdi
mov edx, 0x47
inc r9d
call fcn.1401e5700
mov rax, qword [rsp + 0xc8]
test byte [rax + 5], 0x10
je 0x1401df1b4
mov r8d, dword [rbp + 0x64]
test r8d, r8d
je 0x1401df1b4
mov edx, 0x92
mov rcx, rdi
call fcn.1401e56e0
mov r9d, dword [rbp + 0x68]
xor r8d, r8d
mov rcx, rdi
mov edx, 0x47
inc r9d
call fcn.1401e5700
mov rbp, qword [rbp + 0x40]
test rbp, rbp
jne 0x1401df0d6
mov eax, dword [r12 + 0x38]
mov edx, dword [rsp + 0xa0]
add edx, eax
inc eax
mov dword [r12 + 0x38], edx
mov dword [rsp + 0x188], eax
test esi, esi
je 0x1401df209
mov rdx, qword [rbx + 0x28]
mov r8d, esi
mov rcx, r12
call fcn.1401bc270
xor r8d, r8d
cmp byte [rbx + 0x20], 0x59
mov edx, esi
sete r8b
mov rcx, r12
lea r8d, [r8 + r8*2]
call fcn.140210e10
cmp dword [rsp + 0x60], 0
je 0x1401df23d
mov rdx, qword [rbx + 0x30]
mov r8d, dword [rsp + 0x60]
mov rcx, r12
call fcn.1401bc270
xor r8d, r8d
cmp byte [rbx + 0x20], 0x59
mov edx, dword [rsp + 0x60]
sete r8b
mov rcx, r12
lea r8d, [r8 + r8*2 + 1]
call fcn.140210e10
cmp byte [rbx + 0x20], 0x59
je 0x1401df2f4
mov al, byte [rbx + 0x21]
cmp byte [rbx + 0x22], al
jne 0x1401df2f4
test esi, esi
je 0x1401df2f4
xor edx, edx
cmp al, 0x56
mov eax, dword [rsp + 0x60]
mov r8d, esi
sete dl
mov rcx, r14
xor r9d, r9d
mov dword [rsp + 0x20], eax
lea edx, [rdx + rdx + 0x37]
call fcn.1401e5720
lea r9, [rsp + 0x168]
xor edx, edx
mov rcx, r9
mov qword [rsp + 0xa0], r9
mov edi, eax
call fcn.140210920
mov r8d, dword [rsp + 0x19c]
mov edx, 0x24
mov rcx, r14
call fcn.1401e56e0
mov r9, qword [rsp + 0xa0]
mov rcx, r9
call fcn.1402117e0
mov r8d, dword [rsp + 0x19c]
mov edx, 0x92
mov rcx, r14
call fcn.1401e56e0
mov edx, 9
mov rcx, r14
xor r8d, r8d
mov r9d, dword [rsp + 0x88]
call fcn.1401e5700
mov edx, edi
mov rcx, r14
call fcn.1401ee1f0
cmp byte [rbx + 0x21], 0x56
jne 0x1401df337
cmp byte [rbx + 0x20], 0x59
je 0x1401df307
cmp dword [rsp + 0x60], 0
jne 0x1401df31e
mov r8d, dword [rsp + 0x194]
mov edx, 0x24
mov rcx, r14
call fcn.1401e56e0
jmp 0x1401df33d
mov dword [rsp + 0x20], esi
mov r9d, dword [rsp + 0x60]
mov r8d, esi
mov rcx, r14
mov edx, 0x6b
call fcn.1401e5720
cmp byte [rbx + 0x21], 0x5a
jne 0x1401df307
mov r8d, dword [rsp + 0x19c]
mov edx, 0x24
mov rcx, r14
call fcn.1401e56e0
mov r8d, dword [rsp + 0x1a4]
mov edx, 0x24
mov rcx, r14
call fcn.1401e56e0
cmp dword [rsp + 0x80], 0
je 0x1401df416
test r15, r15
je 0x1401df416
mov eax, dword [r15]
mov r9d, dword [rsp + 0x80]
mov edx, 0x50
mov rcx, r14
mov r8d, dword [rsp + 0xc0]
dec eax
mov dword [rsp + 0x20], eax
call fcn.1401e5720
mov eax, dword [r15]
mov edx, 0x50
mov rcx, r14
mov r9d, dword [rsp + 0x198]
mov r8d, dword [rsp + 0x80]
dec eax
mov dword [rsp + 0x20], eax
call fcn.1401e5720
mov eax, dword [r15]
mov edx, 0x50
mov rcx, r14
mov r9d, dword [rsp + 0x1a0]
mov r8d, dword [rsp + 0x80]
dec eax
mov dword [rsp + 0x20], eax
call fcn.1401e5720
mov eax, dword [r15]
mov edx, 0x50
mov rcx, r14
mov r9d, dword [rsp + 0x1a8]
mov r8d, dword [rsp + 0x80]
dec eax
mov dword [rsp + 0x20], eax
call fcn.1401e5720
mov r9d, dword [rsp + 0x88]
xor r8d, r8d
mov edx, 9
mov rcx, r14
call fcn.1401e5700
mov edx, dword [rsp + 0xd4]
mov rcx, r14
call fcn.1401ee1f0
cmp dword [rsp + 0x80], 0
je 0x1401df46d
mov eax, dword [rsp + 0x88]
mov r9d, dword [rsp + 0x80]
mov rdx, r15
mov rcx, r12
mov r8d, dword [rsp + 0xc0]
mov dword [rsp + 0x20], eax
call fcn.140211690
cmp byte [rbx + 0x21], 0x56
lea rcx, [rsp + 0x168]
jne 0x1401df54f
xor r9d, r9d
xor r8d, r8d
mov edx, 3
mov qword [rsp + 0x80], rcx
call fcn.140210f60
cmp byte [rbx + 0x22], 0x5a
je 0x1401df720
cmp byte [rbx + 0x20], 0x59
mov rcx, qword [rsp + 0x80]
jne 0x1401df520
mov eax, dword [r12 + 0x44]
mov edi, dword [r14 + 0x90]
mov edx, 0x39
mov r9d, dword [rsp + 0x60]
mov r8d, dword [rsp + 0x19c]
lea r15d, [rax - 1]
mov eax, dword [rsp + 0x1a4]
mov dword [r12 + 0x44], r15d
mov dword [rsp + 0x20], eax
mov dword [rsp + 0x28], r15d
call fcn.140211360
xor r9d, r9d
mov r8d, esi
mov edx, 2
mov rcx, qword [rsp + 0x80]
call fcn.140210f60
xor r9d, r9d
xor r8d, r8d
mov edx, 1
mov rcx, qword [rsp + 0x80]
call fcn.140210f60
jmp 0x1401df68c
mov r8d, dword [rsp + 0x60]
xor r9d, r9d
mov edx, 1
mov qword [rsp + 0x80], rcx
call fcn.140210f60
xor r9d, r9d
mov r8d, esi
mov edx, 2
mov rcx, qword [rsp + 0x80]
jmp 0x1401df5c5
cmp byte [rbx + 0x22], 0x58
jne 0x1401df5cf
mov edi, dword [rbx + 0x20]
mov r8d, dword [rsp + 0x60]
xor r9d, r9d
mov edx, 3
mov qword [rsp + 0x80], rcx
call fcn.140210f60
cmp di, 0x5859
mov rcx, qword [rsp + 0x80]
jne 0x1401df591
xor r9d, r9d
mov r8d, esi
mov edx, 2
call fcn.140210f60
lea r15, [rsp + 0x168]
xor r9d, r9d
xor r8d, r8d
mov edx, 1
mov rcx, r15
call fcn.140210f60
cmp di, 0x5859
je 0x1401df720
xor r9d, r9d
mov r8d, esi
mov edx, 2
mov rcx, r15
call fcn.140210f60
jmp 0x1401df720
xor r9d, r9d
xor r8d, r8d
mov edx, 3
mov qword [rsp + 0x80], rcx
call fcn.140210f60
cmp byte [rbx + 0x22], 0x5a
je 0x1401df720
cmp byte [rbx + 0x20], 0x59
mov rcx, qword [rsp + 0x80]
jne 0x1401df6ac
xor r15d, r15d
cmp dword [rsp + 0x60], 0
mov edi, dword [r14 + 0x90]
je 0x1401df649
mov eax, dword [r12 + 0x44]
mov r9d, dword [rsp + 0x60]
mov edx, 0x39
mov r8d, dword [rsp + 0x19c]
lea r15d, [rax - 1]
mov eax, dword [rsp + 0x1a4]
mov dword [r12 + 0x44], r15d
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], eax
call fcn.140211360
lea rcx, [rsp + 0x168]
xor r9d, r9d
xor r8d, r8d
mov edx, 1
mov qword [rsp + 0x80], rcx
call fcn.140210f60
xor r9d, r9d
mov r8d, esi
mov edx, 2
mov rcx, qword [rsp + 0x80]
call fcn.140210f60
cmp dword [rsp + 0x60], 0
je 0x1401df720
mov rcx, r14
mov r9d, edi
xor r8d, r8d
mov edx, 9
call fcn.1401e5700
mov edx, r15d
mov rcx, r14
call fcn.1401efca0
jmp 0x1401df720
xor r15d, r15d
cmp dword [rsp + 0x60], 0
je 0x1401df6d6
mov r8d, dword [rsp + 0x60]
xor r9d, r9d
mov edx, 0x3b
mov rcx, r14
mov dword [rsp + 0x20], 1
call fcn.1401e5720
mov r15d, eax
lea rcx, [rsp + 0x168]
xor r9d, r9d
xor r8d, r8d
mov edx, 1
mov qword [rsp + 0x80], rcx
call fcn.140210f60
xor r9d, r9d
mov r8d, esi
mov edx, 2
mov rcx, qword [rsp + 0x80]
call fcn.140210f60
cmp dword [rsp + 0x60], 0
je 0x1401df720
mov edx, r15d
mov rcx, r14
call fcn.1401ee1f0
mov edx, dword [rsp + 0x88]
mov rcx, r14
call fcn.1401efca0
mov rcx, qword [rsp + 0x70]
call fcn.1401f4af0
cmp qword [rbx + 0x10], 0
je 0x1401df76b
mov r9d, dword [rsp + 0x90]
mov edx, 0x47
mov rcx, r14
xor r8d, r8d
call fcn.1401e5700
mov edx, dword [rsp + 0xd0]
mov rcx, r14
mov dword [rsp + 0x78], eax
call fcn.1401ee1f0
mov r8d, dword [rsp + 0xb0]
mov edx, 0x24
mov rcx, r14
mov dword [rsp + 0x190], 0
lea r15, [rsp + 0x168]
call fcn.1401e56e0
cmp byte [rbx + 0x22], 0x58
mov dword [rsp + 0x70], eax
jne 0x1401df7ec
mov edi, dword [rbx + 0x20]
mov r8d, dword [rsp + 0x60]
xor r9d, r9d
mov edx, 3
mov rcx, r15
call fcn.140210f60
cmp di, 0x5859
jne 0x1401df7cf
xor r9d, r9d
mov r8d, esi
mov edx, 2
mov rcx, r15
call fcn.140210f60
lea rcx, [rsp + 0x168]
xor r9d, r9d
xor r8d, r8d
mov edx, 1
call fcn.140210f60
jmp 0x1401df95f
xor r9d, r9d
xor r8d, r8d
cmp byte [rbx + 0x21], 0x56
mov edx, 3
mov rcx, r15
jne 0x1401df903
call fcn.140210f60
cmp byte [rbx + 0x20], 0x59
mov edi, dword [r14 + 0x90]
mov r9d, 1
jne 0x1401df84a
mov r8d, esi
mov edx, 2
mov rcx, r15
call fcn.140210f60
xor r8d, r8d
mov edx, 1
mov rcx, r15
mov r9d, 1
mov esi, eax
call fcn.140210f60
mov dword [rsp + 0x60], eax
jmp 0x1401df89d
cmp byte [rbx + 0x22], 0x5a
jne 0x1401df86f
mov r8d, esi
mov edx, 1
mov rcx, r15
call fcn.140210f60
mov r9d, 1
xor r8d, r8d
mov dword [rsp + 0x60], eax
jmp 0x1401df88e
mov r8d, dword [rsp + 0x60]
mov edx, 1
mov rcx, r15
call fcn.140210f60
mov r9d, 1
mov r8d, esi
mov dword [rsp + 0x60], eax
mov edx, 2
mov rcx, r15
call fcn.140210f60
mov esi, eax
mov r9d, edi
xor r8d, r8d
mov edx, 9
mov rcx, r14
call fcn.1401e5700
mov edx, esi
mov rcx, r14
mov r9d, 1
call fcn.1401ee1f0
mov edi, dword [r14 + 0x90]
xor r8d, r8d
lea rcx, [rsp + 0x168]
mov edx, 1
call fcn.140210f60
xor r8d, r8d
mov edx, 9
mov rcx, r14
mov r9d, edi
mov r15d, eax
call fcn.1401e5700
mov edx, dword [rsp + 0x60]
mov rcx, r14
call fcn.1401ee1f0
mov edx, r15d
jmp 0x1401df95a
call fcn.140210f60
xor r8d, r8d
mov edx, 1
mov rcx, r15
mov edi, dword [r14 + 0x90]
mov r9d, 1
call fcn.140210f60
xor r9d, r9d
mov r8d, esi
mov edx, 2
mov rcx, r15
mov dword [rsp + 0x60], eax
call fcn.140210f60
mov edx, 9
mov rcx, r14
mov r9d, edi
xor r8d, r8d
call fcn.1401e5700
mov r10d, dword [rsp + 0x60]
mov rcx, r14
mov edx, r10d
call fcn.1401ee1f0
mov edx, dword [rsp + 0x70]
mov rcx, r14
call fcn.1401ee1f0
mov r8d, dword [rsp + 0x19c]
mov edx, 0x92
call fcn.1401e56e0
cmp qword [rbx + 0x10], 0
je 0x1401df9e2
mov r9d, dword [rbx + 0x84]
test r9d, r9d
je 0x1401df9ba
mov r8d, 1
mov edx, 0x47
mov rcx, r14
call fcn.1401e5700
xor r8d, r8d
mov edx, 0x47
mov rcx, r14
mov r9d, dword [rbx + 0x88]
call fcn.1401e5700
mov edx, dword [rsp + 0x78]
mov rcx, r14
call fcn.1401ed7c0
mov edx, dword [r14 + 0x90]
mov r8d, dword [rsp + 0x90]
mov dword [rax + 4], edx
mov edx, 0x43
call fcn.1401e56e0
mov r9d, dword [rsp + 0x9c]
mov rcx, qword [rsp + 0x50]
xor r8d, r8d
mov edx, 9
call fcn.1401e5700
mov edx, dword [rsp + 0xc4]
mov rcx, qword [rsp + 0x50]
call fcn.1401efca0
or r8d, 0xffffffff
mov rdx, r13
mov rcx, r12
mov eax, dword [rsp + 0x9c]
lea r9, [rsp + 0x108]
mov dword [rsp + 0x128], 0
mov dword [rsp + 0x38], eax
mov eax, dword [rsp + 0xb8]
mov dword [rsp + 0x30], eax
mov rax, qword [rsp + 0x210]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0xfc]
mov qword [rsp + 0x20], rax
call fcn.1401aff40
mov edx, dword [rsp + 0xb8]
mov rcx, qword [rsp + 0x50]
call fcn.1401efca0
mov rcx, qword [rsp + 0x50]
mov edx, 0x43
mov r8d, dword [rsp + 0xa8]
call fcn.1401e56e0
mov edx, dword [rsp + 0x9c]
jmp 0x1401e0a35
test rbx, rbx
je 0x1401dfb20
mov rax, qword [r13 + 0x20]
mov edx, dword [rax]
add rax, 8
test edx, edx
jle 0x1401dfab8
mov word [rax + 0x1a], 0
dec edx
add rax, 0x20
jmp 0x1401dfaa6
mov ecx, dword [rbx]
lea rdx, [rbx + 8]
mov eax, ecx
test eax, eax
jle 0x1401dddea
mov word [rdx + 0x1a], 0
dec eax
add rdx, 0x20
jmp 0x1401dfac0
cmp dword [rdx], ecx
jne 0x1401dde15
xor r8d, r8d
mov eax, 0x18
cmp r8d, ecx
jge 0x1401dfb00
mov r9b, byte [rdx + rax]
inc r8d
and r9d, 1
mov byte [rbx + rax], r9b
add rax, 0x20
jmp 0x1401dfae6
or r8d, 0xffffffff
mov rcx, rbx
call fcn.1401bf690
test eax, eax
sete al
movzx eax, al
mov dword [rsp + 0x90], eax
jmp 0x1401dde15
mov word [r13 + 2], 0
mov dword [rsp + 0x90], 0
jmp 0x1401dde15
mov eax, dword [r13 + 0x10]
lea rdx, [rsp + 0x180]
mov ecx, 8
mov rdi, rdx
mov dword [r14 + 0x34], eax
xor eax, eax
rep stosd dword [rdi], eax
mov qword [rsp + 0x168], r12
mov qword [rsp + 0x170], r15
mov qword [rsp + 0x178], r14
test rbx, rbx
je 0x1401dfb72
mov eax, dword [rbx]
mov word [r14 + 2], ax
mov rdx, qword [rsp + 0x68]
lea rcx, [rsp + 0x168]
mov qword [r14 + 0x10], rbx
mov qword [rsp + 0x88], rcx
call fcn.1401bc020
mov rdx, qword [rsp + 0x108]
mov rcx, qword [rsp + 0x88]
call fcn.1401bc020
cmp qword [rsp + 0xb0], 0
je 0x1401dfc22
test rbx, rbx
je 0x1401dfc0d
lea rdx, [rsp + 0x148]
xor eax, eax
mov ecx, 6
mov rdi, rdx
lea r8, [rsp + 0x138]
mov rdx, qword [r13 + 0x40]
rep stosd dword [rdi], eax
lea rax, [0x140195720]
mov rcx, r8
mov qword [rsp + 0x138], r12
mov qword [rsp + 0x140], rax
mov qword [rsp + 0x160], r13
call fcn.1401f1680
mov rax, qword [r13 + 0x30]
mov qword [rsp + 0xa8], rax
mov rdx, qword [rsp + 0xb0]
lea rcx, [rsp + 0x168]
call fcn.1401bc060
mov eax, dword [r14 + 0x20]
xor ebp, ebp
cmp qword [r13 + 0x38], 0
mov dword [r14 + 0x24], eax
jne 0x1401dfd0a
mov rbp, qword [r13 + 0x40]
test rbp, rbp
jne 0x1401dfd08
cmp dword [r14 + 0x30], 1
jne 0x1401dfd0a
mov rax, qword [r14 + 0x28]
mov rax, qword [rax]
mov r11, qword [rax + 0x20]
test r11, r11
je 0x1401dfd0a
mov esi, dword [r11]
cmp esi, 1
jne 0x1401dfd0a
test byte [rax + 7], 1
jne 0x1401dfd0a
mov rdi, qword [rsp + 0x58]
test byte [rdi + 0x62], 1
jne 0x1401dfd0a
mov rcx, qword [rax + 8]
lea rdx, [0x14029178a]
mov qword [rsp + 0x88], rcx
call fcn.1401e2200
mov rcx, qword [rsp + 0x88]
test eax, eax
jne 0x1401dfcc8
mov rcx, qword [r11 + 8]
call fcn.1401bc170
mov dil, byte [rsp + 0x70]
test eax, eax
mov al, 2
cmovne edi, eax
mov byte [rsp + 0x70], dil
jmp 0x1401dfce2
lea rdx, [0x14029178e]
call fcn.1401e2200
test eax, eax
jne 0x1401dfd0a
mov byte [rsp + 0x70], 1
mov esi, 2
mov rcx, qword [rsp + 0x58]
xor r8d, r8d
mov rdx, r11
call fcn.1401bf720
mov rbp, rax
test rax, rax
je 0x1401dfd01
mov al, byte [rsp + 0x70]
mov byte [rbp + 0x18], al
mov byte [rsp + 0x70], sil
jmp 0x1401dfd0a
xor ebp, ebp
lea rdx, [rsp + 0x168]
mov rcx, r14
call fcn.140165d20
mov rax, qword [rsp + 0x58]
cmp byte [rax + 0x67], 0
jne 0x1401dde67
mov eax, dword [r14 + 0x30]
test rbx, rbx
je 0x1401e05f6
mov word [rsp + 0x9c], 0
dec eax
jne 0x1401dfdcf
mov rax, qword [r14 + 0x28]
cmp dword [rax + 0x10], 0
js 0x1401dfdcf
mov rax, qword [rax]
test rax, rax
je 0x1401dfdc6
test byte [rax + 5], 0x10
jne 0x1401dfdcf
mov rax, qword [rax + 0x20]
mov qword [rsp + 0x60], rax
test rax, rax
je 0x1401dfdcf
mov rdx, qword [rax + 8]
mov rcx, qword [rsp + 0x58]
xor r8d, r8d
call fcn.1401bea10
mov rcx, qword [rsp + 0x58]
xor r8d, r8d
mov rdx, rbx
mov rsi, rax
call fcn.1401bf720
mov r8, rsi
mov rcx, r12
mov rdx, rax
call fcn.1401bf420
cmp rax, 1
mov qword [rsp + 0x60], rax
sbb eax, eax
mov dword [rsp + 0x9c], eax
not word [rsp + 0x9c]
and word [rsp + 0x9c], 0x500
jmp 0x1401dfdcf
mov qword [rsp + 0x60], 0
mov eax, dword [r12 + 0x34]
mov r9d, dword [r14 + 0x20]
xor r8d, r8d
mov rcx, r12
lea edx, [rax + 1]
mov dword [r12 + 0x34], edx
mov rdx, rbx
mov dword [r14 + 4], eax
call fcn.1401cf440
movzx r9d, word [r14 + 2]
mov r8d, dword [r14 + 4]
mov dword [rsp + 0x30], 0xfffffff8
mov qword [rsp + 0x28], rax
mov rcx, qword [rsp + 0x50]
mov edx, 0x77
mov dword [rsp + 0x20], 0
mov qword [rsp + 0xb8], rax
call fcn.1401e5780
mov edx, dword [r12 + 0x44]
mov rcx, qword [rsp + 0x50]
xor r8d, r8d
mov dword [rsp + 0xe4], eax
mov eax, dword [r12 + 0x38]
lea esi, [rax + 1]
mov dword [rsp + 0xc0], esi
lea esi, [rax + 2]
mov dword [rsp + 0xc8], esi
lea esi, [rax + 3]
mov r9d, dword [rsp + 0xc8]
mov dword [rsp + 0x88], esi
lea esi, [rdx - 1]
mov dword [rsp + 0xdc], esi
lea esi, [rax + 4]
add eax, 5
mov dword [rsp + 0xa0], esi
mov edi, dword [rsp + 0xa0]
lea esi, [rdx - 2]
mov edx, 0x47
mov dword [rsp + 0xc4], eax
mov eax, dword [rbx]
mov dword [rsp + 0xd0], esi
mov dword [r12 + 0x44], esi
lea esi, [rdi + rax]
mov edi, esi
mov dword [rsp + 0xd4], esi
lea esi, [rsi + 1]
add eax, edi
mov dword [rsp + 0xe0], esi
mov dword [r12 + 0x38], eax
call fcn.1401e5700
mov eax, dword [rsp + 0xc4]
add eax, dword [rbx]
xor r8d, r8d
dec eax
mov rcx, qword [rsp + 0x50]
mov edx, 0x4b
mov r9d, dword [rsp + 0xc4]
mov dword [rsp + 0x20], eax
call fcn.1401e5720
mov rcx, qword [rsp + 0x50]
mov edx, 0xa
mov r9d, dword [rsp + 0xd0]
mov r8d, dword [rsp + 0xa0]
call fcn.1401e5700
mov edx, 0x40
mov r9, rbx
mov rcx, r12
cmp byte [rsp + 0xfc], 2
mov eax, pe_nt_image_headers64
mov dword [rsp + 0x38], 0
cmovne eax, edx
mov edx, dword [rsp + 0x90]
mov qword [rsp + 0x28], r13
or eax, dword [rsp + 0x9c]
mov r8, qword [rsp + 0xa8]
shl edx, 9
or eax, edx
mov rdx, r15
cwde
mov dword [rsp + 0x30], eax
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x20], rax
call fcn.1401f1990
mov qword [rsp + 0x70], rax
test rax, rax
jne 0x1401dff83
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x58]
call fcn.1401bf710
jmp 0x1401dde67
cmp qword [r12 + 0x60], 0
je 0x1401dffca
movsxd rax, dword [r14 + 0x24]
cmp word [r14 + 2], 0
mov dword [r14 + 0x20], eax
je 0x1401dffba
test eax, eax
jne 0x1401dffa7
mov rax, qword [r13 + 0x38]
mov eax, dword [rax]
jmp 0x1401dffb5
imul rax, rax, 0x18
add rax, qword [r14 + 0x18]
mov ax, word [rax - 2]
inc eax
mov word [r14 + 2], ax
lea rdx, [rsp + 0x168]
mov rcx, r14
call fcn.140165d20
mov edx, dword [r12 + 0x38]
lea eax, [rdx + 1]
mov dword [r14 + 0xc], eax
mov eax, dword [r14 + 0x30]
add eax, dword [r14 + 0x20]
add eax, edx
mov edx, 0
mov dword [r12 + 0x38], eax
mov rax, qword [rsp + 0x70]
movzx eax, byte [rax + 0x43]
mov dword [rsp + 0xa8], eax
mov rax, qword [rsp + 0x70]
movsx eax, byte [rax + 0x41]
test al, al
cmovs eax, edx
cmp dword [rbx], eax
je 0x1401e0183
cmp byte [rsp + 0xfc], 0
lea r9, str.GROUP_BY
je 0x1401e0031
test byte [r13 + 4], 1
lea rax, str.DISTINCT
cmove r9, rax
mov rcx, r12
lea r8, str.USE_TEMP_B_TREE_FOR__s
xor edx, edx
call fcn.1401ed440
mov esi, dword [rbx]
mov ecx, dword [r14 + 0x20]
xor eax, eax
mov edi, esi
cmp ecx, eax
jle 0x1401e0067
imul rdx, rax, 0x18
add rdx, qword [r14 + 0x18]
movsx edx, word [rdx + 0x16]
cmp edx, edi
jl 0x1401e0062
inc edi
inc rax
jmp 0x1401e004c
mov edx, edi
mov rcx, r12
call fcn.1401cb8e0
mov dword [rsp + 0x20], 0
xor r9d, r9d
mov rdx, rbx
mov r8d, eax
mov r15d, eax
call fcn.1401bc320
mov byte [r14], 1
xor r9d, r9d
cmp dword [r14 + 0x20], r9d
jle 0x1401e00c8
imul rax, r9, 0x18
add rax, qword [r14 + 0x18]
movsx edx, word [rax + 0x16]
cmp edx, esi
jl 0x1401e00c3
mov rdx, qword [rax + 8]
lea r8d, [rsi + r15]
mov rcx, r12
mov qword [rsp + 0x78], r9
inc esi
call fcn.1401bc270
mov r9, qword [rsp + 0x78]
inc r9
jmp 0x1401e0091
mov byte [r14], 0
mov rcx, r12
mov r8d, r15d
mov r9d, edi
mov edx, 0x61
call fcn.1401cb920
mov rcx, qword [rsp + 0x50]
mov dword [rsp + 0x20], eax
mov esi, eax
call fcn.1401e5720
mov r8d, dword [r14 + 4]
mov rcx, qword [rsp + 0x50]
mov r9d, esi
mov edx, 0x8b
call fcn.1401e5700
mov edx, esi
mov rcx, r12
call fcn.1401dbfb0
mov edx, r15d
mov r8d, edi
call fcn.1401dbf90
mov rcx, qword [rsp + 0x70]
call fcn.1401f4af0
mov esi, dword [r12 + 0x34]
mov rcx, r12
mov edx, 0x79
lea eax, [rsi + 1]
mov r8d, esi
mov dword [r12 + 0x34], eax
mov dword [r14 + 8], esi
call fcn.1401cb920
mov dword [rsp + 0x20], edi
mov rcx, qword [rsp + 0x50]
mov r9d, eax
mov r15d, eax
call fcn.1401e5720
mov r8d, dword [r14 + 4]
mov rcx, qword [rsp + 0x50]
mov edx, 0x22
mov r9d, dword [rsp + 0x80]
call fcn.1401e5700
mov byte [r14 + 1], 1
mov dword [rsp + 0x78], 1
jmp 0x1401e0188
xor r15d, r15d
xor esi, esi
cmp qword [r12 + 0x60], 0
je 0x1401e01e7
lea rdx, [rsp + 0x138]
xor eax, eax
mov ecx, 0xc
xor r8d, r8d
mov rdi, rdx
rep stosd dword [rdi], eax
lea rax, [0x140165390]
mov rdi, rdx
mov qword [rsp + 0x140], rax
cmp dword [r14 + 0x30], r8d
jle 0x1401e01e7
imul rax, r8, 0x18
add rax, qword [r14 + 0x28]
mov rcx, rdi
mov qword [rsp + 0xe8], r8
mov rdx, qword [rax]
call fcn.1401f1680
mov r8, qword [rsp + 0xe8]
inc r8
jmp 0x1401e01b9
cmp dword [rsp + 0x90], 0
je 0x1401e022b
mov rax, qword [rsp + 0x58]
test byte [rax + 0x60], 4
jne 0x1401e022b
cmp dword [rsp + 0x78], 0
jne 0x1401e020e
mov rax, qword [rsp + 0x70]
test byte [rax + 0x44], 8
je 0x1401e022b
mov edx, dword [rsp + 0x120]
mov rcx, qword [rsp + 0x50]
mov qword [rsp + 0x108], 0
call fcn.1401e5b20
mov rax, qword [rsp + 0x50]
cmp dword [rsp + 0x78], 0
mov edi, dword [rax + 0x90]
je 0x1401e0255
mov r8d, dword [r14 + 4]
mov dword [rsp + 0x20], esi
mov r9d, r15d
mov edx, 0x85
mov rcx, rax
call fcn.1401e5720
mov eax, dword [rsp + 0xd4]
xor r15d, r15d
inc eax
mov dword [rsp + 0x90], eax
mov eax, dword [rbx]
cmp eax, r15d
jle 0x1401e02ba
mov eax, dword [rsp + 0x90]
cmp dword [rsp + 0x78], 0
lea r8d, [rax + r15]
je 0x1401e029d
mov dword [rsp + 0x20], r8d
mov rcx, qword [rsp + 0x50]
mov r9d, r15d
mov r8d, esi
mov edx, 0x5e
call fcn.1401e5720
jmp 0x1401e02b5
mov rax, r15
mov byte [r14], 1
mov rcx, r12
shl rax, 5
mov rdx, qword [rbx + rax + 8]
call fcn.1401bc270
inc r15
jmp 0x1401e0268
cmp qword [rsp + 0xb8], 0
je 0x1401e02cf
mov rsi, qword [rsp + 0xb8]
inc dword [rsi]
mov dword [rsp + 0x20], eax
mov rsi, qword [rsp + 0xb8]
mov edx, 0x5a
mov dword [rsp + 0x30], 0xfffffff8
mov r9d, dword [rsp + 0xe0]
mov qword [rsp + 0x28], rsi
mov r8d, dword [rsp + 0xc4]
mov rcx, qword [rsp + 0x50]
call fcn.1401e5780
mov rax, qword [rsp + 0x50]
xor r9d, r9d
mov edx, 0xe
mov r15d, dword [rax + 0x90]
mov rcx, rax
lea r8d, [r15 + 1]
mov dword [rsp + 0x20], r8d
call fcn.1401e5720
mov eax, dword [rbx]
mov rcx, qword [r12 + 0x10]
mov edx, 0x4f
mov r9d, dword [rsp + 0xc4]
mov r8d, dword [rsp + 0xe0]
mov dword [rsp + 0x20], eax
call fcn.1401e5720
mov rcx, qword [rsp + 0x50]
mov edx, 0xa
mov r9d, dword [rsp + 0xdc]
mov r8d, dword [rsp + 0x88]
call fcn.1401e5700
mov rcx, qword [rsp + 0x50]
mov edx, 0x3b
mov r9d, dword [rsp + 0x80]
mov r8d, dword [rsp + 0xc8]
call fcn.1401e5700
mov rcx, qword [rsp + 0x50]
mov edx, 0xa
mov r8d, dword [rsp + 0xa0]
mov r9d, dword [rsp + 0xd0]
call fcn.1401e5700
mov rcx, qword [rsp + 0x50]
mov edx, r15d
call fcn.1401ee1f0
mov r9d, dword [rsp + 0xa8]
mov r8, r14
mov rcx, r12
mov edx, dword [rsp + 0xc0]
call fcn.140203e60
mov rcx, qword [rsp + 0x50]
mov r8d, 1
mov r9d, dword [rsp + 0xc0]
mov edx, 0x47
call fcn.1401e5700
cmp dword [rsp + 0x78], 0
je 0x1401e0411
mov r8d, dword [r14 + 4]
mov rcx, qword [rsp + 0x50]
mov r9d, edi
mov edx, 0x25
call fcn.1401e5700
jmp 0x1401e042c
mov rcx, qword [rsp + 0x70]
call fcn.1401f4af0
mov edx, dword [rsp + 0xe4]
mov rcx, qword [rsp + 0x50]
call fcn.1401e5b20
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x58]
call fcn.1401bf710
mov rcx, qword [rsp + 0x50]
mov edx, 0xa
mov r9d, dword [rsp + 0xdc]
mov r8d, dword [rsp + 0x88]
call fcn.1401e5700
mov edx, dword [rsp + 0x80]
mov rcx, qword [rsp + 0x50]
call fcn.1401ed7e0
mov rax, qword [rsp + 0x50]
mov r8d, 1
mov r9d, dword [rsp + 0xc8]
mov edx, 0x47
mov rcx, rax
mov esi, dword [rax + 0x90]
call fcn.1401e5700
mov rcx, qword [rsp + 0x50]
mov edx, 0x43
mov r8d, dword [rsp + 0x88]
call fcn.1401e56e0
mov edx, dword [rsp + 0xdc]
mov rcx, qword [rsp + 0x50]
call fcn.1401efca0
mov rax, qword [rsp + 0x50]
mov edx, 0x3b
mov r8d, dword [rsp + 0xc0]
mov ebx, dword [rax + 0x90]
mov rcx, rax
lea r9d, [rbx + 2]
inc ebx
call fcn.1401e5700
mov rcx, qword [rsp + 0x50]
mov edx, 0x43
mov r8d, dword [rsp + 0x88]
call fcn.1401e56e0
mov rcx, qword [r12 + 0x10]
mov rdx, r14
call fcn.1401734f0
mov rdx, qword [rsp + 0xb0]
mov r8d, ebx
mov rcx, r12
mov r9d, 0x10
call fcn.1401bebd0
mov dword [rsp + 0x38], esi
or r8d, 0xffffffff
mov rdx, r13
mov rax, qword [rsp + 0x210]
mov dword [rsp + 0x30], ebx
lea r9, [rsp + 0x108]
mov rcx, r12
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0xfc]
mov qword [rsp + 0x20], rax
call fcn.1401aff40
mov rcx, qword [rsp + 0x50]
mov edx, 0x43
mov r8d, dword [rsp + 0x88]
call fcn.1401e56e0
mov edx, dword [rsp + 0xd0]
mov rcx, qword [rsp + 0x50]
call fcn.1401efca0
mov rdx, r14
mov rcx, r12
call fcn.1401a7f70
mov r9d, dword [rsp + 0xc0]
mov rcx, qword [rsp + 0x50]
xor r8d, r8d
mov edx, 0x47
call fcn.1401e5700
mov rcx, qword [rsp + 0x50]
mov edx, 0x43
mov r8d, dword [rsp + 0xa0]
call fcn.1401e56e0
cmp word [rsp + 0x9c], 0
je 0x1401e0a2e
cmp dword [rsp + 0xa8], 0
je 0x1401e0a2e
mov rax, qword [r14 + 0x28]
mov edx, dword [rsp + 0xa8]
mov rcx, r12
mov r9d, dword [rax + 0x14]
mov r8d, dword [rax + 0x10]
call fcn.140173b90
jmp 0x1401e0a2e
cmp qword [r13 + 0x30], 0
jne 0x1401e081b
mov rcx, qword [r13 + 0x20]
cmp dword [rcx], 1
jne 0x1401e081b
mov rdx, qword [r13 + 0x28]
cmp dword [rdx], 1
jne 0x1401e081b
cmp qword [rdx + 0x30], 0
jne 0x1401e081b
cmp eax, 1
jne 0x1401e081b
mov rdi, qword [r13 + 0x40]
test rdi, rdi
jne 0x1401e081b
mov rsi, qword [rdx + 0x28]
cmp byte [rsi + 0x3f], 0
jne 0x1401e081b
mov rdx, qword [rcx + 8]
cmp byte [rdx], 0xa8
jne 0x1401e081b
cmp r14, qword [rdx + 0x38]
jne 0x1401e081b
mov rcx, qword [r14 + 0x28]
mov rcx, qword [rcx + 8]
test byte [rcx + 5], 1
je 0x1401e081b
test dword [rdx + 4], 0x1000004
jne 0x1401e081b
mov rdx, qword [rsi + 0x60]
mov rcx, qword [r12]
call fcn.1401dd640
mov ebx, dword [r12 + 0x34]
mov rcx, r12
mov dword [rsp + 0x60], eax
mov edx, dword [rsp + 0x60]
lea eax, [rbx + 1]
mov dword [r12 + 0x34], eax
mov eax, dword [rsi + 0x28]
mov dword [rsp + 0x70], eax
call fcn.1401b72c0
mov rax, qword [rsi]
mov r8d, dword [rsi + 0x28]
xor r9d, r9d
mov edx, dword [rsp + 0x60]
mov rcx, r12
mov qword [rsp + 0x20], rax
call fcn.1401e2750
test byte [rsi + 0x30], 0x80
je 0x1401e06de
mov rcx, qword [rsi + 0x10]
call fcn.1401db8d0
mov rdi, rax
mov rax, qword [r13 + 0x28]
test byte [rax + 0x48], 1
jne 0x1401e071b
mov rax, qword [rsi + 0x10]
test rax, rax
je 0x1401e071b
test byte [rax + 0x64], 4
jne 0x1401e0715
mov edx, dword [rax + 0x5c]
cmp dx, word [rsi + 0x3c]
jge 0x1401e0715
cmp qword [rax + 0x48], 0
jne 0x1401e0715
test rdi, rdi
je 0x1401e0712
cmp dx, word [rdi + 0x5c]
jge 0x1401e0715
mov rdi, rax
mov rax, qword [rax + 0x28]
jmp 0x1401e06ec
xor r15d, r15d
test rdi, rdi
je 0x1401e0738
mov eax, dword [rdi + 0x58]
mov rdx, rdi
mov rcx, r12
mov dword [rsp + 0x70], eax
call fcn.1401cf4c0
mov r15, rax
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0x28], 1
mov r8d, ebx
mov edx, 0x70
mov r9d, dword [rsp + 0x70]
mov rcx, qword [rsp + 0x50]
mov dword [rsp + 0x20], eax
call fcn.1401e5830
test r15, r15
je 0x1401e077a
mov rcx, qword [rsp + 0x50]
mov r9d, 0xfffffff8
mov r8, r15
or edx, 0xffffffff
call fcn.1401e5a90
mov edx, dword [r14 + 0x20]
mov eax, dword [r14 + 0x30]
mov r8d, ebx
mov ecx, dword [r12 + 0x38]
add eax, edx
add eax, ecx
lea r9d, [rcx + 1]
mov rcx, qword [rsp + 0x50]
mov dword [r14 + 0xc], r9d
add r9d, edx
mov edx, 0x62
mov dword [r12 + 0x38], eax
call fcn.1401e5700
mov rcx, qword [rsp + 0x50]
mov r8d, ebx
mov edx, 0x7a
call fcn.1401e56e0
cmp byte [r12 + 0x133], 2
jne 0x1401e09cd
lea rax, [0x14028e13e]
mov rdx, rax
test rdi, rdi
je 0x1401e07f8
test byte [rsi + 0x30], 0x80
je 0x1401e07ee
mov cl, byte [rdi + 0x64]
and ecx, 3
cmp cl, 2
je 0x1401e07f8
mov rax, qword [rdi]
lea rdx, str._USING_COVERING_INDEX
mov qword [rsp + 0x20], rdx
lea r8, str.SCAN__s_s_s
xor edx, edx
mov rcx, r12
mov qword [rsp + 0x28], rax
mov r9, qword [rsi]
call fcn.1401ed440
jmp 0x1401e09cd
mov esi, dword [r14 + 0x24]
test esi, esi
je 0x1401e0872
xor edx, edx
cmp eax, edx
jle 0x1401e084a
imul rcx, rdx, 0x18
add rcx, qword [r14 + 0x28]
mov r8, qword [rcx]
test byte [r8 + 7], 1
jne 0x1401e0845
mov rcx, qword [rcx + 8]
test byte [rcx + 4], 0x20
jne 0x1401e0898
inc rdx
jmp 0x1401e0825
cmp edx, eax
jne 0x1401e0898
mov eax, dword [r12 + 0x38]
mov rcx, qword [rsp + 0x50]
xor r8d, r8d
mov edx, 0x47
lea esi, [rax + 1]
mov dword [r12 + 0x38], esi
mov r9d, esi
call fcn.1401e5700
jmp 0x1401e089a
xor edi, edi
dec eax
jne 0x1401e089c
mov rax, qword [r14 + 0x28]
cmp dword [rax + 0x10], 0
js 0x1401e089c
mov rax, qword [rax]
mov rbx, qword [rax + 0x20]
cmp rbx, 1
sbb edi, edi
not edi
and di, 0x500
jmp 0x1401e089c
xor esi, esi
xor edi, edi
mov edx, dword [r12 + 0x38]
mov rcx, r12
lea eax, [rdx + 1]
mov dword [r14 + 0xc], eax
mov eax, dword [r14 + 0x30]
add eax, dword [r14 + 0x20]
add eax, edx
mov rdx, r14
mov dword [r12 + 0x38], eax
call fcn.1401a7f70
movzx eax, byte [rsp + 0x70]
mov rdx, r15
mov r9, rbp
mov qword [rsp + 0x28], r13
mov r8, qword [rsp + 0xa8]
mov rcx, r12
or edi, eax
mov dword [rsp + 0x38], 0
movzx edi, di
mov qword [rsp + 0x20], rbx
mov dword [rsp + 0x30], edi
call fcn.1401f1990
mov r15, rax
test rax, rax
je 0x1401dde67
movzx r10d, byte [rax + 0x43]
mov r8, r14
mov edx, esi
mov rcx, r12
mov r9d, r10d
mov dword [rsp + 0x60], r10d
call fcn.140203e60
mov r10d, dword [rsp + 0x60]
test r10d, r10d
je 0x1401e0944
mov rax, qword [r14 + 0x28]
test rax, rax
je 0x1401e0944
mov r9d, dword [rax + 0x14]
mov r8d, dword [rax + 0x10]
mov edx, r10d
mov rcx, r12
call fcn.140173b90
test esi, esi
je 0x1401e0960
mov rcx, qword [rsp + 0x50]
mov r9d, esi
mov r8d, 1
mov edx, 0x47
call fcn.1401e5700
cmp byte [rsp + 0x70], 0
je 0x1401e09b8
test byte [r15 + 0x44], 4
je 0x1401e09b8
cmp byte [r15 + 0x41], 0
je 0x1401e09b8
movzx eax, byte [r15 + 0x40]
dec eax
cdqe
movsxd rdx, eax
cmp rax, 0xffffffffffffffff
je 0x1401e09aa
imul rcx, rax, 0x70
dec rax
mov rcx, qword [r15 + rcx + 0x3c0]
test byte [rcx + 0x38], 4
je 0x1401e097e
imul rdx, rdx, 0x70
mov edx, dword [r15 + rdx + 0x370]
jmp 0x1401e09ae
mov edx, dword [r15 + 0x34]
mov rcx, qword [rsp + 0x50]
call fcn.1401ed7e0
mov rcx, r15
call fcn.1401f4af0
mov rcx, qword [r12 + 0x10]
mov rdx, r14
call fcn.1401734f0
mov r8d, dword [rsp + 0x80]
mov rdx, qword [rsp + 0xb0]
mov r9d, 0x10
mov rcx, r12
mov qword [rsp + 0x108], 0
call fcn.1401bebd0
xor r9d, r9d
or r8d, 0xffffffff
mov rdx, r13
mov eax, dword [rsp + 0x80]
mov rcx, r12
mov qword [rsp + 0x20], 0
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x30], eax
mov rax, qword [rsp + 0x210]
mov qword [rsp + 0x28], rax
call fcn.1401aff40
mov edx, dword [rsp + 0x80]
mov rcx, qword [rsp + 0x50]
call fcn.1401efca0
jmp 0x1401de153
cmp byte [rbx + 0x22], 0x58
jne 0x1401ded9e
cmp byte [rbx + 0x20], 0x59
je 0x1401dee14
mov rdx, qword [rbx + 0x30]
mov rcx, qword [r12]
call fcn.1402115e0
test eax, eax
je 0x1401dee14
mov dword [rsp + 0x18c], 3
jmp 0x1401dee14
mov r9d, ebp
mov r8d, ebx
mov rdx, r13
mov rcx, r12
call fcn.1401745a0
test eax, eax
je 0x1401e0aa1
cmp dword [r12 + 0x30], 0
jne 0x1401dd771
or ebx, 0xffffffff
mov rax, qword [rsp + 0x58]
mov r15, qword [r13 + 0x28]
cmp byte [rax + 0x67], 0
jne 0x1401dd771
mov rax, qword [rsp + 0x210]
cmp byte [rax], 8
jbe 0x1401ddce6
mov rax, qword [r13 + 0x48]
mov qword [rsp + 0x108], rax
jmp 0x1401ddce6
mov eax, r14d
add rsp, 0x1b8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret