Function at 0x18012deb0
Capabilities:
Reference sql statements
Resolve function by parsing pe exports

Disassembly:
mov dword [rsp + 0x20], r9d
mov dword [rsp + 0x18], r8d
mov qword [rsp + 8], rcx
push rbx
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xb8
mov r14, qword [rcx]
mov r11d, r8d
xor r8d, r8d
mov rdi, rdx
mov eax, r8d
mov qword [rsp + 0x70], r8
mov r12, rcx
mov qword [rsp + 0x90], rax
lea r15d, [r11 + 1]
mov qword [rsp + 0x58], rax
mov r13d, r8d
test r15d, r15d
je 0x18012df49
mov ebx, 0x40
mov eax, r15d
cmp rbx, rax
jae 0x18012df18
nop dword [rax]
add rbx, rbx
cmp rbx, rax
jb 0x18012df10
call fcn.180003c56
test eax, eax
jne 0x18012e081
mov rcx, rbx
call fcn.1801408c0
mov qword [rsp + 0x70], rax
mov r13, rax
test rax, rax
je 0x18012e081
mov r11d, dword [rsp + 0x100]
xor r8d, r8d
mov r12d, dword [r14 + 0x5c]
mov qword [rsp + 0xf8], rbp
mov ebp, r8d
mov qword [rsp + 0xb0], rsi
mov esi, r8d
movsxd rbx, r11d
test r11d, r11d
jle 0x18012df85
lea rcx, [r13 + 1]
mov r8, rbx
mov rdx, rdi
call fcn.180002c16
mov r11d, dword [rsp + 0x100]
xor r8d, r8d
mov edx, dword [rsp + 0x108]
mov r9d, 1
test dl, 0x88
mov qword [rsp + 0x48], r13
mov r10, r13
mov qword [rsp + 0x80], r13
cmovne r12d, r8d
test r9b, dl
je 0x18012e04e
mov qword [rsp + 0x48], r13
mov edx, r8d
mov qword [rsp + 0x80], r13
test rbx, rbx
jle 0x18012e009
mov rcx, r8
mov qword [rsp + 0x48], r13
mov qword [rsp + 0x80], r13
nop word [rax + rax]
movzx eax, byte [rcx + rdi]
inc rcx
cmp al, 0xc0
jb 0x18012e002
cmp rcx, rbx
jge 0x18012e002
movzx eax, byte [rcx + rdi]
and al, 0xc0
cmp al, 0x80
jne 0x18012e002
inc rcx
cmp rcx, rbx
jl 0x18012dff0
inc edx
cmp rcx, rbx
jl 0x18012dfe0
mov esi, r9d
mov r9d, dword [r14 + 0x30]
cmp r9d, esi
jl 0x18012e047
mov r10, qword [r14 + 0x38]
nop dword [rax]
movsxd rax, esi
mov ecx, esi
mov r8d, dword [r10 + rax*4 - 4]
cmp r8d, edx
je 0x18012e041
inc esi
lea eax, [rdx + 1]
cmp r8d, eax
cmovne ecx, ebp
mov ebp, ecx
cmp esi, r9d
jle 0x18012e020
mov r10, r13
xor r8d, r8d
mov edx, dword [rsp + 0x108]
test r12d, r12d
je 0x18012e08f
test esi, esi
jne 0x18012e08f
mov r12, qword [rsp + 0xf0]
mov r8d, r15d
mov r9, qword [rsp + 0x110]
mov rcx, r12
mov rdx, r10
mov byte [r10], 0x30
call fcn.1800b9190
mov r14, rax
jmp 0x18012e3d8
mov dword [r12 + 0x3c], 7
jmp 0x18012f19c
mov r12, qword [rsp + 0xf0]
cmp esi, dword [r14 + 0x30]
jg 0x18012ef6a
lea rbx, [r12 + 0xa0]
cmp qword [rbx], 0
jne 0x18012e3ba
mov eax, dword [r12 + 0x3c]
mov rbp, r8
test eax, eax
jne 0x18012e1f1
lea rdi, [r12 + 0x90]
cmp qword [rdi], 0
mov rbx, rdi
jne 0x18012e1bf
mov rdx, qword [r12]
lea rcx, str.PRAGMA__Q.data_version
mov rdx, qword [rdx + 8]
call fcn.1800042ff
cmp dword [r12 + 0x3c], 0
mov rbx, rax
jne 0x18012e138
test rax, rax
je 0x18012e12d
mov rcx, qword [r12]
xor eax, eax
mov qword [rsp + 0x30], rax
mov r9d, 0x85
mov qword [rsp + 0x28], rdi
mov rdx, rbx
mov qword [rsp + 0x20], rax
mov rcx, qword [rcx]
lea r8d, [rax - 1]
call fcn.180140280
mov dword [r12 + 0x3c], eax
jmp 0x18012e13d
mov dword [r12 + 0x3c], 7
jmp 0x18012e198
test rbx, rbx
je 0x18012e198
cmp dword [0x18028cb60], 0
je 0x18012e18f
mov rcx, qword [0x180294f30]
test rcx, rcx
je 0x18012e158
call qword [0x18028cbe0]
mov rcx, rbx
call qword [0x18028cb98]
dec qword [0x180294eb8]
movsxd rcx, eax
sub qword [0x180294e70], rcx
mov rcx, rbx
call qword [0x18028cb88]
mov rcx, qword [0x180294f30]
test rcx, rcx
je 0x18012e198
call qword [0x18028cbf0]
jmp 0x18012e198
mov rcx, rbx
call qword [0x18028cb88]
mov eax, dword [r12 + 0x3c]
mov dword [r12 + 0x3c], eax
test eax, eax
je 0x18012e1b7
mov qword [r12 + 0x98], 0
jmp 0x18012e3b2
lea rbx, [r12 + 0x90]
mov rcx, qword [rdi]
call fcn.180001145
cmp eax, 0x64
jne 0x18012e1d9
mov rcx, qword [rbx]
xor edx, edx
call fcn.180001aeb
mov rbp, rax
mov rcx, qword [rbx]
call fcn.180003206
mov dword [r12 + 0x3c], eax
lea rbx, [r12 + 0xa0]
xor r8d, r8d
mov qword [r12 + 0x98], rbp
test eax, eax
jne 0x18012e3ba
mov rdi, qword [r12 + 0x48]
lea r15, [r12 + 0x48]
mov rax, r8
mov r14, r8
mov qword [rsp + 0x58], rax
mov ebx, r8d
mov qword [rsp + 0x60], rax
mov rax, qword [r12]
mov qword [rsp + 0x88], rax
test rdi, rdi
je 0x18012e34b
mov edx, 0xa
mov qword [r15], r8
mov rcx, rdi
call fcn.1800038d7
mov qword [r15], rdi
mov ebx, eax
test eax, eax
je 0x18012e340
mov qword [r15], 0
mov rbp, qword [rdi + 0x20]
mov r15, qword [rdi + 0x18]
mov rcx, qword [rbp + 0x18]
test rcx, rcx
je 0x18012e26e
call qword [0x18028cbe0]
cmp rdi, qword [rbp + 0x1e0]
jae 0x18012e2b2
cmp rdi, qword [rbp + 0x1d0]
jb 0x18012e296
mov rax, qword [rbp + 0x1c8]
mov qword [rdi], rax
mov qword [rbp + 0x1c8], rdi
jmp 0x18012e324
cmp rdi, qword [rbp + 0x1d8]
jb 0x18012e2b2
mov rax, qword [rbp + 0x1b8]
mov qword [rdi], rax
mov qword [rbp + 0x1b8], rdi
jmp 0x18012e324
cmp qword [rbp + 0x2e8], 0
je 0x18012e2c9
mov rdx, rdi
mov rcx, rbp
call fcn.1800db8f0
jmp 0x18012e324
cmp dword [0x18028cb60], 0
je 0x18012e31b
mov rcx, qword [0x180294f30]
test rcx, rcx
je 0x18012e2e4
call qword [0x18028cbe0]
mov rcx, rdi
call qword [0x18028cb98]
dec qword [0x180294eb8]
movsxd rcx, eax
sub qword [0x180294e70], rcx
mov rcx, rdi
call qword [0x18028cb88]
mov rcx, qword [0x180294f30]
test rcx, rcx
je 0x18012e324
call qword [0x18028cbf0]
jmp 0x18012e324
mov rcx, rdi
call qword [0x18028cb88]
mov rcx, qword [rbp + 0x18]
test rcx, rcx
je 0x18012e333
call qword [0x18028cbf0]
mov rcx, r15
call fcn.180002180
lea r15, [r12 + 0x48]
xor r8d, r8d
cmp ebx, 4
jne 0x18012e34b
mov ebx, r8d
cmp qword [r15], 0
jne 0x18012e386
test ebx, ebx
jne 0x18012e386
mov rcx, qword [r12]
lea r9, str.block
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x28], r8d
mov r8, qword [r12 + 8]
mov rdx, qword [rcx + 8]
mov rcx, qword [rcx]
mov qword [rsp + 0x20], 0xa
call fcn.180002130
mov ebx, eax
cmp ebx, 1
jne 0x18012e46b
inc dword [r12 + 0x80]
mov dword [r12 + 0x3c], 0x10b
mov rax, qword [rsp + 0x58]
mov r13, qword [rsp + 0x70]
mov qword [r12 + 0xa0], rax
lea rbx, [r12 + 0xa0]
lea rdi, [r12 + 0x3c]
add sil, 0x30
cmp dword [rdi], 0
je 0x18012e83f
mov byte [r13], sil
mov r14, qword [rsp + 0x90]
cmp dword [r12 + 0x3c], 0
mov rbp, qword [rsp + 0xf8]
je 0x18012f124
test r14, r14
je 0x18012e40e
mov rcx, qword [r14 + 0x18]
mov rbx, qword [r14 + 0x20]
call fcn.1800c0b60
mov rcx, r14
call fcn.1800b1ae0
mov rcx, rbx
call fcn.18012c0d0
mov rbx, qword [r12 + 0x48]
xor r14d, r14d
test rbx, rbx
je 0x18012f124
mov qword [r12 + 0x48], r14
mov rdi, qword [rbx + 0x20]
mov rsi, qword [rbx + 0x18]
mov rcx, qword [rdi + 0x18]
test rcx, rcx
je 0x18012e43b
call qword [0x18028cbe0]
cmp rbx, qword [rdi + 0x1e0]
jae 0x18012f09c
cmp rbx, qword [rdi + 0x1d0]
jb 0x18012f080
mov rax, qword [rdi + 0x1c8]
mov qword [rbx], rax
mov qword [rdi + 0x1c8], rbx
jmp 0x18012f10d
test ebx, ebx
jne 0x18012e665
mov rbp, qword [r15]
test rbp, rbp
je 0x18012e487
cmp qword [rbp + 0x18], 0
je 0x18012e487
mov ebp, dword [rbp]
jmp 0x18012e489
xor ebp, ebp
call fcn.180003c56
test eax, eax
jne 0x18012e65d
movsxd rcx, ebp
add rcx, 0x24
call fcn.1801408c0
mov r14, rax
test rax, rax
je 0x18012e65d
lea rbx, [rax + 0x10]
mov dword [rax + 8], ebp
mov qword [rax], rbx
mov r15, qword [r12 + 0x48]
test r15, r15
jne 0x18012e4f3
lea rax, [0x18024f174]
mov ebx, 0x15
mov ecx, ebx
mov qword [rsp + 0x20], rax
mov r9d, 0x18ec2
lea r8, str.misuse
lea rdx, str._s_at_line__d_of___.10s_
call fcn.18000206d
jmp 0x18012e5c8
mov rdi, qword [r15 + 0x20]
mov rcx, qword [rdi + 0x18]
test rcx, rcx
je 0x18012e506
call qword [0x18028cbe0]
mov r13, qword [r15 + 0x18]
test ebp, ebp
js 0x18012e583
cmp ebp, dword [r15]
jg 0x18012e583
test r13, r13
jne 0x18012e522
mov ebx, 4
mov dword [rdi + 0x50], ebx
jmp 0x18012e58d
mov rcx, qword [r15 + 0x10]
mov r9, rbx
mov edx, dword [r15 + 4]
mov r8d, ebp
cmp byte [rcx], 0
jne 0x18012e544
mov dword [rsp + 0x20], 0
call fcn.1800548b0
jmp 0x18012e549
call fcn.180054e70
mov ebx, eax
cmp eax, 4
jne 0x18012e565
mov rcx, r13
call fcn.18016ccf0
mov qword [r15 + 0x18], 0
mov dword [rdi + 0x50], ebx
jmp 0x18012e58d
mov dword [r13 + 0x34], ebx
mov dword [rdi + 0x50], ebx
test ebx, ebx
jne 0x18012e58d
cmp qword [rdi + 0x180], 0
jne 0x18012e58d
mov dword [rdi + 0x54], 0xffffffff
jmp 0x18012e597
mov eax, 1
mov ebx, eax
mov dword [rdi + 0x50], eax
mov edx, ebx
mov rcx, rdi
call fcn.180110dc0
cmp byte [rdi + 0x67], 0
jne 0x18012e5a1
test ebx, ebx
je 0x18012e5ad
mov edx, ebx
mov rcx, rdi
call fcn.1800596e0
mov ebx, eax
mov rcx, qword [rdi + 0x18]
test rcx, rcx
je 0x18012e5bc
call qword [0x18028cbf0]
mov r12, qword [rsp + 0xf0]
test ebx, ebx
je 0x18012e625
cmp dword [0x18028cb60], 0
je 0x18012e61a
mov rcx, qword [0x180294f30]
test rcx, rcx
je 0x18012e5e3
call qword [0x18028cbe0]
mov rcx, r14
call qword [0x18028cb98]
dec qword [0x180294eb8]
movsxd rcx, eax
sub qword [0x180294e70], rcx
mov rcx, r14
call qword [0x18028cb88]
mov rcx, qword [0x180294f30]
test rcx, rcx
je 0x18012e662
call qword [0x18028cbf0]
jmp 0x18012e662
mov rcx, r14
call qword [0x18028cb88]
jmp 0x18012e662
mov rax, qword [r14]
movsxd rcx, ebp
mov byte [rcx + rax], 0
mov rax, qword [r14]
movsxd rcx, ebp
mov byte [rcx + rax + 1], 0
mov rax, qword [r14]
movzx ecx, byte [rax + 2]
movzx eax, byte [rax + 3]
shl ecx, 8
add ecx, eax
mov dword [r14 + 0xc], ecx
inc dword [r12 + 0x80]
mov dword [r12 + 0x3c], ebx
jmp 0x18012e67a
mov ebx, 7
xor r14d, r14d
inc dword [r12 + 0x80]
mov dword [r12 + 0x3c], ebx
test ebx, ebx
jne 0x18012e3a0
movsxd rax, dword [r14 + 8]
lea r9, [rsp + 0x60]
add rax, qword [r14]
lea r8, [rsp + 0x50]
xor ecx, ecx
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov dword [rax + 0x10], ecx
mov edx, dword [r14 + 8]
mov rcx, qword [r14]
call fcn.1800be700
mov dword [r12 + 0x3c], eax
test eax, eax
jne 0x18012e6d5
mov rax, qword [rsp + 0x88]
mov edx, dword [rsp + 0x50]
cmp dword [rax + 0x90], 0
je 0x18012e6c8
cmp dword [rax + 0x8c], edx
je 0x18012e6d5
mov rcx, rax
call fcn.180127e00
mov dword [r12 + 0x3c], eax
cmp dword [0x18028cb60], 0
je 0x18012e727
mov rcx, qword [0x180294f30]
test rcx, rcx
je 0x18012e6f0
call qword [0x18028cbe0]
mov rcx, r14
call qword [0x18028cb98]
dec qword [0x180294eb8]
movsxd rcx, eax
sub qword [0x180294e70], rcx
mov rcx, r14
call qword [0x18028cb88]
mov rcx, qword [0x180294f30]
test rcx, rcx
je 0x18012e730
call qword [0x18028cbf0]
jmp 0x18012e730
mov rcx, r14
call qword [0x18028cb88]
cmp dword [r12 + 0x3c], 0
je 0x18012e835
mov rdi, qword [rsp + 0x60]
test rdi, rdi
je 0x18012e82e
dec dword [rdi]
cmp dword [rdi], 0
jg 0x18012e82e
mov rcx, qword [0x180294f30]
xor ebp, ebp
cmp dword [rdi + 0x1c], ebp
jle 0x18012e7d5
lea r14, [rdi + 0x28]
mov rbx, qword [r14]
test rbx, rbx
je 0x18012e7ca
cmp dword [0x18028cb60], 0
je 0x18012e7ba
test rcx, rcx
je 0x18012e783
call qword [0x18028cbe0]
mov rcx, rbx
call qword [0x18028cb98]
dec qword [0x180294eb8]
mov rcx, rbx
movsxd rdx, eax
sub qword [0x180294e70], rdx
call qword [0x18028cb88]
mov rcx, qword [0x180294f30]
test rcx, rcx
je 0x18012e7ca
call qword [0x18028cbf0]
jmp 0x18012e7c3
mov rcx, rbx
call qword [0x18028cb88]
mov rcx, qword [0x180294f30]
inc ebp
add r14, 0x10
cmp ebp, dword [rdi + 0x1c]
jl 0x18012e767
cmp dword [0x18028cb60], 0
je 0x18012e825
test rcx, rcx
je 0x18012e7e9
call qword [0x18028cbe0]
mov rcx, rdi
call qword [0x18028cb98]
dec qword [0x180294eb8]
mov rcx, rdi
movsxd rdx, eax
sub qword [0x180294e70], rdx
call qword [0x18028cb88]
mov rcx, qword [0x180294f30]
test rcx, rcx
je 0x18012e82e
call qword [0x18028cbf0]
xor eax, eax
jmp 0x18012e3a5
mov rcx, rdi
call qword [0x18028cb88]
xor eax, eax
jmp 0x18012e3a5
mov rax, qword [rsp + 0x60]
jmp 0x18012e3a5
mov rax, qword [r12 + 0xa0]
inc dword [rax]
mov rbx, qword [rbx]
mov byte [r13], sil
test rbx, rbx
je 0x18012e3d0
mov r15d, dword [rsp + 0x108]
xor edx, edx
mov esi, dword [rsp + 0x100]
or r15d, 0x10
inc esi
mov dword [rsp + 0x108], r15d
mov dword [rsp + 0x78], esi
cmp dword [rdi], edx
jne 0x18012e8a1
cmp qword [r12 + 0x18], 0
mov edx, dword [rbx + 0x18]
je 0x18012e898
test r15b, 0x40
jne 0x18012e898
mov eax, 1
jmp 0x18012e89a
xor eax, eax
add edx, eax
lea rdi, [r12 + 0x3c]
mov rcx, r12
call fcn.1800b1760
mov qword [rsp + 0x90], rax
mov r14, rax
mov rbp, rbx
test rax, rax
je 0x18012ef5d
mov rcx, qword [rsp + 0x110]
mov eax, r15d
shr eax, 1
and eax, 1
mov byte [r14 + 0x50], 1
mov dword [r14 + 0x4c], eax
mov qword [r14 + 0x38], rcx
test r15b, 0x20
jne 0x18012e971
cmp dword [rdi], 0
jne 0x18012e971
mov rax, qword [r14 + 0x20]
mov r8, qword [rax]
mov eax, dword [r8 + 0x60]
cmp eax, 1
jne 0x18012e90d
lea rax, [0x1800af720]
mov qword [r14 + 0x40], rax
jmp 0x18012e971
test rcx, rcx
jne 0x18012e91f
lea rax, [0x1800af620]
mov qword [r14 + 0x40], rax
jmp 0x18012e971
cmp dword [rcx], 0
jne 0x18012e931
lea rax, [0x1800af750]
mov qword [r14 + 0x40], rax
jmp 0x18012e971
test eax, eax
jne 0x18012e942
lea rax, [0x1800af570]
mov qword [r14 + 0x40], rax
jmp 0x18012e971
cmp dword [r8 + 0x18], 0x64
jg 0x18012e966
lea rax, [0x1800af430]
mov rcx, rdi
mov qword [r14 + 0x40], rax
lea rdx, [r14 + 0x28]
mov r8d, dword [r8 + 0x18]
call fcn.180127770
jmp 0x18012e971
lea rdi, [fcn.1800af3c0]
mov qword [r14 + 0x40], rdi
cmp dword [r12 + 0x3c], 0
jne 0x18012ef52
movsxd rdi, dword [rbx + 0x1c]
xor r10d, r10d
add rdi, 2
mov ecx, r10d
shl rdi, 4
add rdi, rbx
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0xa0], rdi
cmp qword [r12 + 0x18], rcx
je 0x18012e9e1
mov qword [rsp + 0x60], rcx
test r15b, 0x40
jne 0x18012e9e1
lea rax, [r14 + 0x68]
mov r8d, esi
mov r9d, r15d
mov qword [rsp + 0x20], rax
mov rdx, r13
mov rcx, r12
mov rsi, r13
call fcn.1800b5ed0
mov r11d, 1
xor r10d, r10d
mov ecx, r11d
mov qword [rsp + 0x60], rcx
jmp 0x18012e9ec
mov rsi, qword [rsp + 0x48]
mov r11d, 1
lea r9, [rbx + 0x20]
mov qword [rsp + 0x70], r9
cmp r9, rdi
jae 0x18012ef10
mov qword [rsp + 0x58], rbx
jmp 0x18012ea18
mov rsi, qword [rsp + 0x48]
xor r10d, r10d
mov eax, dword [r9 + 4]
sub eax, 1
movsxd rbp, eax
mov qword [rsp + 0x88], rbp
js 0x18012eef4
mov r8, rcx
and r15d, 8
shl r8, 7
inc rcx
imul rdx, rbp, 0x38
add r8, 0x68
mov dword [rsp + 0x50], r15d
add r8, r14
mov qword [rsp + 0x40], rdx
add rcx, rbp
mov qword [rsp + 0x60], rcx
jmp 0x18012ea68
mov rsi, qword [rsp + 0x48]
xor r10d, r10d
mov rbx, qword [r9 + 8]
lea r14, [r12 + 0x70]
mov rcx, r8
mov dword [rsp + 0x100], r10d
xorps xmm0, xmm0
add rbx, rdx
mov r15, r8
mov qword [rsp + 0x68], rbx
xor eax, eax
sub r8, 0xffffffffffffff80
movups xmmword [rcx + 8], xmm0
mov qword [rsp + 0x98], r8
mov r13d, r11d
movups xmmword [rcx + 0x18], xmm0
mov edi, r10d
movups xmmword [rcx + 0x28], xmm0
movups xmmword [rcx + 0x38], xmm0
movups xmmword [rcx + 0x48], xmm0
movups xmmword [rcx + 0x58], xmm0
movups xmmword [rcx + 0x68], xmm0
mov qword [rcx + 0x78], rax
mov qword [r15], rbx
cmp qword [r14], rax
jne 0x18012eb9e
mov rdx, qword [r12]
lea rcx, str.SELECT_pgno_FROM__q._q_idx_WHERE_segid__AND_term___ORDER_BY_term_DESC_LIMIT_1
mov r8, qword [rdx + 0x10]
mov rdx, qword [rdx + 8]
call fcn.1800042ff
cmp dword [r12 + 0x3c], 0
mov rbx, rax
jne 0x18012eb2e
test rax, rax
je 0x18012eb23
mov rcx, qword [r12]
xor eax, eax
mov qword [rsp + 0x30], rax
mov r9d, 0x85
mov qword [rsp + 0x28], r14
mov rdx, rbx
mov qword [rsp + 0x20], rax
mov rcx, qword [rcx]
lea r8d, [rax - 1]
call fcn.180140280
mov dword [r12 + 0x3c], eax
jmp 0x18012eb33
mov dword [r12 + 0x3c], 7
jmp 0x18012eb8e
test rbx, rbx
je 0x18012eb8e
cmp dword [0x18028cb60], 0
je 0x18012eb85
mov rcx, qword [0x180294f30]
test rcx, rcx
je 0x18012eb4e
call qword [0x18028cbe0]
mov rcx, rbx
call qword [0x18028cb98]
dec qword [0x180294eb8]
movsxd rcx, eax
sub qword [0x180294e70], rcx
mov rcx, rbx
call qword [0x18028cb88]
mov rcx, qword [0x180294f30]
test rcx, rcx
je 0x18012eb8e
call qword [0x18028cbf0]
jmp 0x18012eb8e
mov rcx, rbx
call qword [0x18028cb88]
mov rbx, qword [rsp + 0x68]
mov r11d, 1
mov rdx, qword [rsp + 0x40]
cmp dword [r12 + 0x3c], 0
mov r14, qword [r14]
jne 0x18012eeb2
movsxd r8, dword [rbx]
mov edx, r11d
mov rcx, r14
call fcn.180004f7f
mov edx, 1
mov rcx, r14
call fcn.18018df20
test eax, eax
jne 0x18012ed25
mov rdi, qword [r14 + 0x80]
xor bpl, bpl
movsxd rbx, dword [rsp + 0x78]
mov rax, qword [rdi + 0x50]
test rax, rax
je 0x18012ebf0
mov edx, dword [rax + 0x88]
jmp 0x18012ebf5
mov edx, 0x3b9aca00
test rbx, rbx
jns 0x18012ec33
xor ebx, ebx
movsxd rcx, edx
test edx, edx
js 0x18012ec2c
mov r12, qword [rsp + 0x80]
nop dword [rax + rax]
movzx eax, byte [rbx + r12 + 1]
or al, byte [rbx + rsi]
je 0x18012ec24
add rbx, 2
cmp rbx, rcx
jle 0x18012ec10
mov r12, qword [rsp + 0xf0]
mov esi, 0x2202
jmp 0x18012ec3b
mov bpl, 1
mov esi, 0x2010
movzx ecx, word [rdi + 0x4c]
movsxd rax, edx
mov edx, 0x9000
and cx, dx
cmp rbx, rax
jle 0x18012eccb
test cx, cx
je 0x18012ec5f
lea rcx, [rdi + 0x38]
call fcn.18018a810
jmp 0x18012ec65
mov word [rdi + 0x4c], 1
mov rax, qword [rdi + 0x50]
test rax, rax
je 0x18012ec84
mov rax, qword [rax + 0x150]
test rax, rax
je 0x18012ec84
inc dword [rax + 0x30]
mov dword [rax + 0x18], 0x12
mov rcx, qword [r14]
mov edx, 0x12
mov dword [rcx + 0x50], 0x12
call fcn.180110dc0
mov rcx, qword [r14]
mov edx, 0x12
call fcn.1800596e0
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x80], rax
jmp 0x18012ecff
test cx, cx
jne 0x18012ecd6
cmp dword [rdi + 0x58], 0
je 0x18012ecdf
lea rcx, [rdi + 0x38]
call fcn.18018a7b0
mov rax, qword [rsp + 0x48]
btr ebx, 0x1f
mov qword [rdi + 0x40], rax
mov dword [rdi + 0x48], ebx
mov qword [rdi + 0x68], 0
mov word [rdi + 0x4c], si
mov byte [rdi + 0x4e], bpl
mov rax, qword [r14]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x18012ed11
call qword [0x18028cbf0]
mov rbp, qword [rsp + 0x88]
mov edi, dword [rsp + 0x100]
mov rbx, qword [rsp + 0x68]
mov rcx, r14
call fcn.180001145
cmp eax, 0x64
jne 0x18012ed47
xor edx, edx
mov rcx, r14
call fcn.180002478
mov r13d, eax
mov edi, eax
sar r13d, 1
and edi, 1
mov rcx, r14
call fcn.180003206
mov edx, 1
mov dword [r12 + 0x3c], eax
mov rcx, r14
call fcn.18018df20
test eax, eax
jne 0x18012ed77
mov rax, qword [r14]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x18012ed77
call qword [0x18028cbf0]
mov eax, dword [rbx + 4]
xor r14d, r14d
cmp r13d, eax
jge 0x18012ed88
mov r13d, eax
mov edi, r14d
lea eax, [r13 - 1]
mov rdx, r15
mov rcx, r12
mov dword [r15 + 0xc], eax
call fcn.1800b70e0
cmp qword [r15 + 0x10], 0
mov ebx, dword [rsp + 0x50]
je 0x18012edc0
mov eax, dword [rsp + 0x78]
mov r8, r15
mov r9, qword [rsp + 0x48]
mov edx, ebx
mov rcx, r12
mov dword [rsp + 0x20], eax
call fcn.1800af8d0
cmp dword [r12 + 0x3c], 0
jne 0x18012ee17
mov ecx, dword [rsp + 0x108]
test ebx, ebx
je 0x18012edd9
bt ecx, 8
jae 0x18012ee17
mov eax, dword [r15 + 8]
or eax, 1
cmp qword [r15 + 0x10], 0
mov dword [r15 + 8], eax
je 0x18012ee17
mov ebx, ecx
and ebx, 2
je 0x18012edf9
or eax, 2
mov dword [r15 + 8], eax
test edi, edi
je 0x18012ee08
mov rdx, r15
mov rcx, r12
call fcn.1800b6470
test ebx, ebx
je 0x18012ee17
mov rdx, r15
mov rcx, r12
call fcn.1800b75c0
test byte [r15 + 8], 2
je 0x18012ee27
lea rcx, [0x1800b7510]
jmp 0x18012ee41
mov rax, qword [r12]
lea rcx, [0x1800b6840]
cmp dword [rax + 0x60], 1
lea rax, [0x1800b7230]
cmove rcx, rax
mov qword [r15 + 0x30], rcx
test dword [rsp + 0x108], 0x100
jne 0x18012eea7
mov rax, qword [r15]
mov esi, dword [rax + 0x20]
test esi, esi
jle 0x18012eea7
cmp dword [r12 + 0x3c], 0
lea eax, [rsi*8 + 0x10]
movsxd rdi, eax
jne 0x18012eea7
call fcn.180003c56
test eax, eax
je 0x18012ee7c
mov rbx, r14
jmp 0x18012ee90
mov rcx, rdi
call fcn.1801408c0
mov rbx, rax
test rax, rax
jne 0x18012ef30
test rdi, rdi
jle 0x18012ee9e
mov dword [r12 + 0x3c], 7
test rbx, rbx
jne 0x18012ef3d
mov r11d, 1
mov rdx, qword [rsp + 0x40]
mov r8, qword [rsp + 0x98]
dec rbp
mov r9, qword [rsp + 0x70]
sub rdx, 0x38
mov qword [rsp + 0x88], rbp
mov qword [rsp + 0x40], rdx
test rbp, rbp
jns 0x18012ea60
mov r14, qword [rsp + 0x90]
mov r15d, dword [rsp + 0x108]
mov rdi, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0x60]
add r9, 0x10
mov qword [rsp + 0x70], r9
cmp r9, rdi
jb 0x18012ea10
mov rbp, qword [rsp + 0x58]
cmp dword [r12 + 0x3c], 0
jne 0x18012ef52
mov rdx, r14
mov rcx, r12
call fcn.1800b1980
mov rcx, rbp
call fcn.1800bf9c0
jmp 0x18012e3d8
mov r8, rdi
xor edx, edx
mov rcx, rax
call fcn.180003b25
mov r11d, 1
mov dword [rbx + 4], esi
mov dword [rbx], r11d
mov qword [r15 + 0x28], rbx
jmp 0x18012eead
mov rcx, r14
call fcn.1800b1ae0
xor r14d, r14d
mov rcx, rbp
call fcn.1800bf9c0
jmp 0x18012e3d8
lea ecx, [r11 + 1]
shr edx, 1
lea rax, [rsp + 0x58]
and edx, 1
mov qword [rsp + 0x30], rax
mov r9, r10
mov rax, qword [rsp + 0x110]
mov r8d, ebp
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ecx
mov rcx, r12
call fcn.1800b8500
mov r14, qword [rsp + 0x58]
test r14, r14
je 0x18012e3d8
cmp dword [r12 + 0x3c], 0
lea rcx, [r12 + 0x3c]
lea rdi, [fcn.1800af3c0]
jne 0x18012f039
mov rax, qword [r14 + 0x20]
mov r8, qword [rax]
mov edx, dword [r8 + 0x60]
cmp edx, 1
jne 0x18012efdb
lea rax, [0x1800af720]
mov qword [r14 + 0x40], rax
jmp 0x18012f039
mov rax, qword [r14 + 0x38]
test rax, rax
jne 0x18012eff1
lea rax, [0x1800af620]
mov qword [r14 + 0x40], rax
jmp 0x18012f039
cmp dword [rax], 0
jne 0x18012f003
lea rax, [0x1800af750]
mov qword [r14 + 0x40], rax
jmp 0x18012f039
test edx, edx
jne 0x18012f014
lea rax, [0x1800af570]
mov qword [r14 + 0x40], rax
jmp 0x18012f039
cmp dword [r8 + 0x18], 0x64
jg 0x18012f035
lea rax, [0x1800af430]
mov qword [r14 + 0x40], rax
lea rdx, [r14 + 0x28]
mov r8d, dword [r8 + 0x18]
call fcn.180127770
jmp 0x18012f039
mov qword [r14 + 0x40], rdi
cmp dword [r12 + 0x3c], 0
jne 0x18012e3d8
mov rax, qword [r14 + 0x60]
movzx edx, word [rax + 4]
shl rdx, 7
add rdx, 0x68
add rdx, r14
cmp qword [rdx + 0x10], 0
je 0x18012e3d8
mov rax, qword [r14 + 0x40]
mov rcx, r14
cmp rax, rdi
jne 0x18012f079
call fcn.1800af3c0
jmp 0x18012e3d8
call rax
jmp 0x18012e3d8
cmp rbx, qword [rdi + 0x1d8]
jb 0x18012f09c
mov rax, qword [rdi + 0x1b8]
mov qword [rbx], rax
mov qword [rdi + 0x1b8], rbx
jmp 0x18012f10d
cmp qword [rdi + 0x2e8], r14
je 0x18012f0b2
mov rdx, rbx
mov rcx, rdi
call fcn.1800db8f0
jmp 0x18012f10d
cmp dword [0x18028cb60], r14d
je 0x18012f104
mov rcx, qword [0x180294f30]
test rcx, rcx
je 0x18012f0cd
call qword [0x18028cbe0]
mov rcx, rbx
call qword [0x18028cb98]
dec qword [0x180294eb8]
movsxd rcx, eax
sub qword [0x180294e70], rcx
mov rcx, rbx
call qword [0x18028cb88]
mov rcx, qword [0x180294f30]
test rcx, rcx
je 0x18012f10d
call qword [0x18028cbf0]
jmp 0x18012f10d
mov rcx, rbx
call qword [0x18028cb88]
mov rcx, qword [rdi + 0x18]
test rcx, rcx
je 0x18012f11c
call qword [0x18028cbf0]
mov rcx, rsi
call fcn.180002180
mov rax, qword [rsp + 0x118]
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0xb0]
mov qword [rax], r14
test rbx, rbx
je 0x18012f19c
cmp dword [0x18028cb60], 0
je 0x18012f193
mov rcx, qword [0x180294f30]
test rcx, rcx
je 0x18012f15c
call qword [0x18028cbe0]
mov rcx, rbx
call qword [0x18028cb98]
dec qword [0x180294eb8]
mov rcx, rbx
movsxd rdx, eax
sub qword [0x180294e70], rdx
call qword [0x18028cb88]
mov rcx, qword [0x180294f30]
test rcx, rcx
je 0x18012f19c
call qword [0x18028cbf0]
jmp 0x18012f19c
mov rcx, rbx
call qword [0x18028cb88]
mov eax, dword [r12 + 0x3c]
mov dword [r12 + 0x3c], 0
add rsp, 0xb8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rbx
ret