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

Disassembly:
mov r11, rsp
push rbp
push rbx
push r15
lea rbp, [r11 - 0x2a8]
sub rsp, 0x390
mov rax, qword [0x18014b940]
xor rax, rsp
mov qword [rbp + 0x268], rax
mov rax, qword [rcx + 0x88]
mov rbx, rcx
mov qword [r11 + 0x10], rsi
mov rsi, qword [rcx]
mov qword [r11 + 0x18], rdi
mov qword [r11 + 0x20], r12
xor r12d, r12d
mov qword [r11 - 0x20], r13
mov edi, r12d
movzx r15d, byte [rsi + 0x5e]
mov qword [r11 - 0x28], r14
mov r14, qword [rcx + 0x68]
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x38], rax
xor al, al
mov byte [rsp + 0x30], r15b
mov qword [rsp + 0x48], rcx
mov dword [rsp + 0x40], r12d
mov qword [rsp + 0x50], rsi
mov byte [rsp + 0x70], al
mov dword [rsp + 0x7c], r12d
mov qword [rbp - 0x20], r12
mov qword [rsp + 0x68], r14
call fcn.1800e2d70
cmp qword [rsi + 0x1e0], r12
je 0x1800e2f0d
mov ecx, dword [rsi + 0x1f0]
xor edx, edx
mov eax, dword [rbx + 0xe4]
div ecx
sub ecx, edx
mov r13d, ecx
jmp 0x1800e2f14
mov r13, 0xffffffffffffffff
mov ecx, 7
mov qword [rsp + 0x60], r13
movaps xmmword [rsp + 0x370], xmm6
lea r10d, [rcx - 6]
cmp dword [rbx + 0x38], ecx
je 0x1800ead3e
xor r11d, r11d
mov dword [rbx + 0x38], r11d
mov qword [rbx + 0x48], r11
mov qword [rbx + 0xa0], r11
mov dword [rsi + 0x268], r11d
mov eax, dword [rsi + 0x170]
test eax, eax
jne 0x1800eacfe
movsxd rax, dword [rbx + 0x34]
lea rdx, [0x180000000]
mov r9, qword [rsp + 0x58]
mov r8d, 0x2400
xorps xmm6, xmm6
lea rcx, [rax + rax*2]
mov eax, dword [rbp - 0x30]
lea r12, [r9 + rcx*8]
mov dword [rbp - 0x78], eax
inc rdi
mov qword [rsp + 0x38], r12
mov qword [rbp - 0x20], rdi
movzx edi, byte [r12]
cmp edi, 0xaa
ja case.0x1800e2fa8.85
mov ecx, dword [rdx + rdi*4 + 0xeaeb4]
add rcx, rdx
jmp rcx
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
sub rcx, r9
imul r8, rax, 0x38
mov eax, 4
mov word [r8 + r14 + 8], ax
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rax, rdx
cdqe
mov qword [r8 + r14], rax
mov r12, qword [rsp + 0x38]
jmp 0x1800e4d48
movsxd rax, dword [r12 + 4]
imul rdx, rax, 0x38
mov rax, qword [rdx + r14]
lea rcx, [rax + rax*2]
mov eax, 0x80
mov word [rdx + r14 + 8], ax
lea r12, [r9 + rcx*8]
lea rdx, [0x180000000]
mov r13, qword [rsp + 0x60]
add r12, 0x18
mov rdi, qword [rbp - 0x20]
jmp 0x1800e2f81
movsxd rax, dword [r12 + 4]
imul rcx, rax, 0x38
mov eax, dword [r12 + 0xc]
dec eax
cdqe
mov qword [rcx + r14], rax
mov eax, 4
mov word [rcx + r14 + 8], ax
cmp dword [r12 + 8], 0
jne 0x1800e4d48
mov r13, qword [rsp + 0x60]
add r12, 0x18
mov rdi, qword [rbp - 0x20]
jmp 0x1800e2f81
movsxd rax, dword [r12 + 4]
imul rdx, rax, 0x38
mov rax, qword [rdx + r14]
lea rcx, [rax + rax*2]
mov eax, dword [r9 + rcx*8 + 8]
dec eax
cdqe
jmp 0x1800e2ffd
mov rdi, qword [rsp + 0x38]
movsxd rax, dword [rdi + 4]
sub rdi, r9
imul r8, rax, 0x38
mov eax, 4
mov word [r8 + r14 + 8], ax
movabs rax, 0x2aaaaaaaaaaaaaab
movsxd rcx, dword [r8 + r14]
imul rdi
lea rcx, [rcx + rcx*2]
sar rdx, 2
lea r12, [r9 + rcx*8]
mov rax, rdx
shr rax, 0x3f
add rax, rdx
lea rdx, [0x180000000]
cdqe
mov qword [r8 + r14], rax
mov r8d, 0x2400
mov r13, qword [rsp + 0x60]
add r12, 0x18
mov rdi, qword [rbp - 0x20]
jmp 0x1800e2f81
movsxd rax, dword [r12 + 0xc]
imul rcx, rax, 0x38
test byte [rcx + r14 + 8], 1
je case.0x1800e2fa8.85
mov r15, qword [rsp + 0x48]
mov rcx, r12
sub rcx, r9
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov rbx, rdx
mov rdx, qword [rsp + 0x38]
sar rbx, 2
mov rax, rbx
shr rax, 0x3f
mov ecx, dword [rdx + 4]
add rbx, rax
test ecx, ecx
jne 0x1800ea574
mov rdx, qword [r15 + 0x100]
test rdx, rdx
je 0x1800ea56f
mov rax, qword [rdx + 8]
mov rbx, r15
mov rcx, rdx
mov qword [rbx + 0x100], rax
dec dword [rbx + 0x110]
mov eax, dword [rbx + 0x3c]
mov dword [rsi + 0x74], eax
add dword [rsi + 0x78], eax
call fcn.1800ebc00
mov r12, qword [rsp + 0x38]
mov r9, qword [rbx + 0x88]
mov qword [rsp + 0x58], r9
cmp dword [r12 + 8], 4
jne 0x1800e3197
cdqe
lea rcx, [rax + rax*2]
mov eax, dword [r9 + rcx*8 + 8]
dec eax
mov r14, qword [rbx + 0x68]
cdqe
mov qword [rsp + 0x68], r14
lea rcx, [rax + rax*2]
lea r12, [r9 + rcx*8]
movzx r15d, byte [rsp + 0x30]
xor r11d, r11d
mov r10d, 1
lea rdx, [0x180000000]
mov r8d, 0x2400
mov r13, qword [rsp + 0x60]
add r12, 0x18
mov rdi, qword [rbp - 0x20]
jmp 0x1800e2f81
movsxd rax, dword [r12 + 8]
imul rcx, rax, 0x38
add rcx, qword [rbx + 0x68]
test word [rcx + 8], r8w
je 0x1800e3227
call fcn.180084360
mov r9, qword [rsp + 0x58]
lea rdx, [0x180000000]
mov rcx, rax
xor r11d, r11d
movsxd rax, dword [r12 + 4]
mov r8d, 0x2400
lea r10d, [r11 + 1]
mov qword [rcx], rax
mov r13, qword [rsp + 0x60]
add r12, 0x18
mov rdi, qword [rbp - 0x20]
jmp 0x1800e2f81
mov eax, 4
mov word [rcx + 8], ax
movsxd rax, dword [r12 + 4]
mov qword [rcx], rax
mov r13, qword [rsp + 0x60]
add r12, 0x18
mov rdi, qword [rbp - 0x20]
jmp 0x1800e2f81
movsxd rax, dword [r12 + 8]
imul rdx, rax, 0x38
add rdx, qword [rbx + 0x68]
test word [rdx + 8], r8w
je 0x1800e328b
mov rcx, rdx
call fcn.180084360
mov r9, qword [rsp + 0x58]
mov rdx, rax
mov rax, qword [r12 + 0x10]
xor r11d, r11d
mov r8d, 0x2400
mov rcx, qword [rax]
lea r10d, [r11 + 1]
mov qword [rdx], rcx
jmp 0x1800e3010
mov eax, 4
mov word [rdx + 8], ax
mov rax, qword [r12 + 0x10]
mov rcx, qword [rax]
mov qword [rdx], rcx
jmp 0x1800e3010
movsxd rax, dword [r12 + 8]
imul rdx, rax, 0x38
add rdx, qword [rbx + 0x68]
test word [rdx + 8], r8w
je 0x1800e32d5
mov rcx, rdx
call fcn.180084360
mov r9, qword [rsp + 0x58]
xor r11d, r11d
mov rdx, rax
mov r8d, 0x2400
lea r10d, [r11 + 1]
mov eax, 8
mov word [rdx + 8], ax
mov rax, qword [r12 + 0x10]
mov rcx, qword [rax]
mov qword [rdx], rcx
jmp 0x1800e3010
mov rdi, qword [rsp + 0x38]
movsxd rax, dword [rdi + 8]
imul rsi, rax, 0x38
add rsi, qword [rbx + 0x68]
test word [rsi + 8], r8w
je 0x1800e3320
mov rcx, rsi
call fcn.180084360
xor r11d, r11d
mov rsi, rax
mov r8d, 0x2400
lea r10d, [r11 + 1]
jmp 0x1800e3329
mov eax, 4
mov word [rsi + 8], ax
mov rdi, qword [rdi + 0x10]
test rdi, rdi
jne 0x1800e3337
mov eax, r11d
jmp 0x1800e334e
mov rax, 0xffffffffffffffff
nop
inc rax
cmp byte [rdi + rax], 0
jne 0x1800e3340
and eax, 0x3fffffff
mov r12, qword [rsp + 0x38]
mov dword [r12 + 4], eax
cmp r15b, 1
je 0x1800e346f
test rdi, rdi
jne 0x1800e338c
test word [rsi + 8], r8w
je 0x1800e3378
mov rcx, rsi
call fcn.180108f50
jmp 0x1800e337d
mov word [rsi + 8], r10w
test byte [rsi + 8], 2
je 0x1800e341a
xor r12d, r12d
jmp 0x1800e3400
mov rax, qword [rsi + 0x28]
test rax, rax
je 0x1800e339b
mov r14d, dword [rax + 0x7c]
jmp 0x1800e33a1
mov r14d, 0x3b9aca00
mov rbx, 0xffffffffffffffff
nop dword [rax + rax]
inc rbx
cmp byte [rdi + rbx], 0
jne 0x1800e33b0
btr ebx, 0x1f
test word [rsi + 8], r8w
jne 0x1800e33ca
cmp dword [rsi + 0x20], 0
je 0x1800e33d2
mov rcx, rsi
call fcn.180108f00
mov qword [rsi + 0x10], rdi
xor r12d, r12d
mov qword [rsi + 0x30], r12
mov eax, 0xa02
mov dword [rsi + 0xc], ebx
mov word [rsi + 8], ax
mov byte [rsi + 0xa], 1
cmp ebx, r14d
jg 0x1800eaa71
mov rbx, qword [rsp + 0x48]
mov r14, qword [rsp + 0x68]
cmp byte [rsi + 0xa], r15b
je 0x1800e341a
movzx edx, r15b
mov rcx, rsi
call fcn.1800ee0b0
test eax, eax
jne 0x1800ead29
xor r11d, r11d
mov eax, 0x800
mov dword [rsi + 0x20], r11d
or word [rsi + 8], ax
mov rax, qword [rsp + 0x38]
cmp byte [rax + 1], 0xf9
jne 0x1800e3450
mov rdx, qword [rax + 0x10]
test rdx, rdx
je 0x1800e3450
mov rcx, qword [rsp + 0x50]
call fcn.1800a5670
mov rax, qword [rsp + 0x38]
xor r11d, r11d
mov r12, qword [rsp + 0x38]
mov byte [rax + 1], 0xf9
mov rax, qword [rsi + 0x10]
mov dword [rsp + 0x40], r11d
mov qword [r12 + 0x10], rax
mov eax, dword [rsi + 0xc]
mov dword [r12 + 4], eax
mov rsi, qword [rsp + 0x50]
cmp eax, dword [rsi + 0x7c]
jg 0x1800eaa3c
mov byte [r12], 0x47
mov r8d, 0x2400
movsxd rax, dword [r12 + 8]
imul rdx, rax, 0x38
add rdx, qword [rbx + 0x68]
test word [rdx + 8], r8w
je 0x1800e34ad
mov rcx, rdx
call fcn.180084360
mov rdx, rax
mov r8d, 0x2400
mov eax, 0xa02
mov word [rdx + 8], ax
mov rax, qword [r12 + 0x10]
mov qword [rdx + 0x10], rax
mov eax, dword [r12 + 4]
mov dword [rdx + 0xc], eax
mov byte [rdx + 0xa], r15b
movsxd rax, dword [r12 + 0xc]
test eax, eax
jle 0x1800ea3cb
imul rcx, rax, 0x38
movzx eax, word [r12 + 2]
xor r11d, r11d
cmp qword [rcx + r14], rax
jne 0x1800ea367
mov r9, qword [rsp + 0x58]
lea r10d, [r11 + 1]
mov eax, 0xa10
mov word [rdx + 8], ax
jmp 0x1800e3010
movsxd rax, dword [r12 + 8]
imul rcx, rax, 0x38
add rcx, qword [rbx + 0x68]
test word [rcx + 8], r8w
je 0x1800e3531
call fcn.180084360
xor r11d, r11d
mov rcx, rax
mov r8d, 0x2400
lea r10d, [r11 + 1]
jmp 0x1800e353a
mov eax, 4
mov word [rcx + 8], ax
mov rbx, qword [rsp + 0x38]
mov esi, r10d
mov edx, 0x101
cmp dword [rbx + 4], 0
mov edi, dword [rbx + 0xc]
mov eax, dword [rbx + 8]
cmovne si, dx
sub edi, eax
mov word [rcx + 8], si
mov dword [rcx + 0xc], r11d
lea rbx, [rcx + 8]
test edi, edi
jle 0x1800ea3d0
nop dword [rax + rax]
test word [rbx + 0x38], r8w
lea rbx, [rbx + 0x38]
je 0x1800e358d
lea rcx, [rbx - 8]
call fcn.180108f50
xor r11d, r11d
mov r8d, 0x2400
dec edi
mov word [rbx], si
mov dword [rbx + 4], r11d
test edi, edi
jg 0x1800e3570
mov rsi, qword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x48]
mov r10d, 1
lea rdx, [0x180000000]
jmp 0x1800e3b3f
movsxd rax, dword [r12 + 4]
imul rcx, rax, 0x38
mov eax, 0xff41
add rcx, r14
and word [rcx + 8], ax
or word [rcx + 8], 1
mov r13, qword [rsp + 0x60]
add r12, 0x18
mov rdi, qword [rbp - 0x20]
jmp 0x1800e2f81
movsxd rax, dword [r12 + 8]
imul r14, rax, 0x38
add r14, qword [rbx + 0x68]
test word [r14 + 8], r8w
je 0x1800e3615
mov rcx, r14
call fcn.180084360
xor r11d, r11d
mov r14, rax
mov r8d, 0x2400
lea r10d, [r11 + 1]
jmp 0x1800e361f
mov eax, 4
mov word [r14 + 8], ax
mov rbx, qword [rsp + 0x38]
mov rdi, qword [rbx + 0x10]
mov ebx, dword [rbx + 4]
test rdi, rdi
jne 0x1800e364e
test word [r14 + 8], r8w
je 0x1800e3644
mov rcx, r14
call fcn.180108f50
jmp 0x1800e36cc
mov word [r14 + 8], r10w
jmp 0x1800e36d2
mov rax, qword [r14 + 0x28]
test rax, rax
je 0x1800e365c
mov ecx, dword [rax + 0x7c]
jmp 0x1800e3661
mov ecx, 0x3b9aca00
mov esi, 0x10
test ebx, ebx
jns 0x1800e3696
movsxd rdx, ecx
mov ebx, r11d
test ecx, ecx
js 0x1800e3691
mov rcx, rdi
movzx eax, byte [rcx + 1]
or al, byte [rcx]
je 0x1800e3691
add rcx, 2
add ebx, 2
mov rax, rcx
sub rax, rdi
cmp rax, rdx
jle 0x1800e3677
mov esi, 0x210
test word [r14 + 8], r8w
jne 0x1800e36a4
cmp dword [r14 + 0x20], 0
je 0x1800e36ac
mov rcx, r14
call fcn.180108f00
xor eax, eax
mov qword [r14 + 0x10], rdi
mov qword [r14 + 0x30], rax
mov eax, 0x800
or si, ax
mov dword [r14 + 0xc], ebx
mov word [r14 + 8], si
mov rsi, qword [rsp + 0x50]
mov r10d, 1
mov rbx, qword [rsp + 0x48]
lea rdx, [0x180000000]
mov r9, qword [rsp + 0x58]
xor r11d, r11d
mov byte [r14 + 0xa], r15b
mov r8d, 0x2400
mov r14, qword [rsp + 0x68]
jmp 0x1800e3b3f
movsxd rax, dword [r12 + 4]
mov rsi, qword [rbx + 0x80]
imul rdi, rax, 0x38
movzx eax, word [rdi + rsi - 0x30]
test al, 0x12
je 0x1800e3730
bt ax, 0xe
mov ecx, dword [rdi + rsi - 0x2c]
jae 0x1800e3722
add ecx, dword [rdi + rsi - 0x38]
mov rax, qword [rdi + rsi - 0x10]
cmp ecx, dword [rax + 0x7c]
jg 0x1800eaa6a
movsxd rax, dword [r12 + 8]
imul rbx, rax, 0x38
add rbx, r14
test word [rbx + 8], r8w
je 0x1800e3764
mov rcx, rbx
call fcn.180108f50
mov r9, qword [rsp + 0x58]
lea rdx, [0x180000000]
xor r11d, r11d
mov r8d, 0x2400
lea r10d, [r11 + 1]
movups xmm0, xmmword [rdi + rsi - 0x38]
mov ecx, 0xebff
movups xmmword [rbx], xmm0
movsd xmm1, qword [rdi + rsi - 0x28]
mov rsi, qword [rsp + 0x50]
movsd qword [rbx + 0x10], xmm1
movzx eax, word [rbx + 8]
and ax, cx
mov ecx, 0x840
or ax, cx
mov word [rbx + 8], ax
mov rbx, qword [rsp + 0x48]
mov r13, qword [rsp + 0x60]
add r12, 0x18
mov rdi, qword [rbp - 0x20]
jmp 0x1800e2f81
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
mov esi, dword [rcx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rdi, r14
add rbx, r14
nop dword [rax]
test word [rbx + 8], r8w
jne 0x1800e37dd
cmp dword [rbx + 0x20], 0
je 0x1800e37ec
mov rcx, rbx
call fcn.180108f00
xor r11d, r11d
lea r10d, [r11 + 1]
movups xmm0, xmmword [rdi]
movups xmmword [rbx], xmm0
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rbx + 0x10], xmm1
movups xmm0, xmmword [rdi + 0x20]
movups xmmword [rbx + 0x20], xmm0
movsd xmm1, qword [rdi + 0x30]
movsd qword [rbx + 0x30], xmm1
mov word [rdi + 8], r10w
mov dword [rdi + 0x20], r11d
movzx eax, word [rbx + 8]
bt ax, 0xc
jae 0x1800e389e
test al, 0x12
je 0x1800e388e
bt ax, 0xe
jae 0x1800e386e
mov edx, dword [rbx]
add edx, dword [rbx + 0xc]
test edx, edx
jg 0x1800e383b
test al, 0x10
je 0x1800e386e
mov edx, r10d
mov r8d, r10d
mov rcx, rbx
call fcn.1800ed720
test eax, eax
jne 0x1800ead0b
movsxd rcx, dword [rbx + 0xc]
xor edx, edx
add rcx, qword [rbx + 0x10]
movsxd r8, dword [rbx]
call sub.VCRUNTIME140.dll_memset
mov eax, dword [rbx]
add dword [rbx + 0xc], eax
mov eax, 0xbdff
and word [rbx + 8], ax
cmp dword [rbx + 0x20], 0
je 0x1800e387e
mov rax, qword [rbx + 0x18]
cmp qword [rbx + 0x10], rax
je 0x1800e388e
mov rcx, rbx
call fcn.180108ea0
test eax, eax
jne 0x1800ead0b
mov eax, 0xefff
and word [rbx + 8], ax
xor r11d, r11d
lea r10d, [r11 + 1]
add rdi, 0x38
add rbx, 0x38
mov r8d, 0x2400
sub esi, 1
jne 0x1800e37d0
mov rsi, qword [rsp + 0x50]
lea rdx, [0x180000000]
mov rbx, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
jmp 0x1800e3b3f
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
mov esi, dword [rcx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rdi, r14
add rbx, r14
nop
test word [rbx + 8], r8w
je 0x1800e3910
mov r8d, 0x1000
mov rdx, rdi
mov rcx, rbx
call fcn.180107a20
mov r10d, 1
jmp 0x1800e393d
movups xmm0, xmmword [rdi]
mov eax, 0x800
movups xmmword [rbx], xmm0
movsd xmm1, qword [rdi + 0x10]
movsd qword [rbx + 0x10], xmm1
test word [rdi + 8], ax
jne 0x1800e393d
mov eax, 0xf3ff
and word [rbx + 8], ax
mov eax, 0x1000
or word [rbx + 8], ax
movzx eax, word [rbx + 8]
bt ax, 0xc
jae 0x1800e39bf
test al, 0x12
je 0x1800e39b6
bt ax, 0xe
jae 0x1800e3996
mov edx, dword [rbx]
add edx, dword [rbx + 0xc]
test edx, edx
jg 0x1800e3963
test al, 0x10
je 0x1800e3996
mov edx, r10d
mov r8d, r10d
mov rcx, rbx
call fcn.1800ed720
test eax, eax
jne 0x1800ead0b
movsxd rcx, dword [rbx + 0xc]
xor edx, edx
add rcx, qword [rbx + 0x10]
movsxd r8, dword [rbx]
call sub.VCRUNTIME140.dll_memset
mov eax, dword [rbx]
add dword [rbx + 0xc], eax
mov eax, 0xbdff
and word [rbx + 8], ax
cmp dword [rbx + 0x20], 0
je 0x1800e39a6
mov rax, qword [rbx + 0x18]
cmp qword [rbx + 0x10], rax
je 0x1800e39b6
mov rcx, rbx
call fcn.180108ea0
test eax, eax
jne 0x1800ead0b
mov eax, 0xefff
and word [rbx + 8], ax
mov eax, esi
mov r8d, 0x2400
dec esi
test eax, eax
je 0x1800ea3c1
add rbx, 0x38
mov r10d, 1
add rdi, 0x38
jmp 0x1800e38f0
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
imul rdx, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
add rdx, r14
add rcx, r14
test word [rcx + 8], r8w
je 0x1800e3a31
mov r8d, 0x1000
call fcn.180107a20
xor r11d, r11d
mov r10d, 1
mov r9, qword [rsp + 0x58]
lea rdx, [0x180000000]
mov r8d, 0x2400
jmp 0x1800e3b3f
movups xmm0, xmmword [rdx]
mov r12, qword [rsp + 0x38]
mov eax, 0x800
movups xmmword [rcx], xmm0
movsd xmm1, qword [rdx + 0x10]
movsd qword [rcx + 0x10], xmm1
test word [rdx + 8], ax
jne 0x1800ea367
mov eax, 0xf3ff
and word [rcx + 8], ax
mov eax, 0x1000
or word [rcx + 8], ax
jmp 0x1800e3010
mov rcx, qword [rsp + 0x38]
mov r12d, 0x2400
movsxd rax, dword [rcx + 8]
imul r8, rax, 0x38
movsxd rax, dword [rcx + 4]
imul rcx, rax, 0x38
add r8, r14
mov rax, qword [rcx + r14]
test word [r8 + 8], r12w
je 0x1800e3aa5
mov rdx, rax
mov rcx, r8
call fcn.18010a010
jmp 0x1800e3a11
mov qword [r8], rax
mov eax, 4
mov word [r8 + 8], ax
mov r8d, 0x2400
jmp 0x1800e3b3f
mov rsi, qword [rsp + 0x38]
movsxd rax, dword [rsi + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rsi + 8]
imul r15, rax, 0x38
movsxd rax, dword [rsi + 0xc]
add rbx, r14
add r15, r14
imul r14, rax, 0x38
movzx esi, word [rbx + 8]
add r14, qword [rsp + 0x68]
movzx eax, sil
or al, byte [r15 + 8]
test al, 1
je 0x1800e3b56
test word [r14 + 8], r8w
je 0x1800e3b1e
mov rcx, r14
call fcn.180108f50
mov rsi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x48]
mov r14, qword [rsp + 0x68]
movzx r15d, byte [rsp + 0x30]
jmp 0x1800e3a11
mov rsi, qword [rsp + 0x50]
lea rdx, [0x180000000]
mov rbx, qword [rsp + 0x48]
mov word [r14 + 8], r10w
mov r14, qword [rsp + 0x68]
movzx r15d, byte [rsp + 0x30]
mov r12, qword [rsp + 0x38]
mov r13, qword [rsp + 0x60]
add r12, 0x18
mov rdi, qword [rbp - 0x20]
jmp 0x1800e2f81
test sil, 0x12
jne 0x1800e3b8e
movzx r12d, byte [rsp + 0x30]
xor r8d, r8d
movzx edx, r12b
mov rcx, rbx
call fcn.1800edf80
test eax, eax
jne 0x1800ead0b
movzx esi, word [rbx + 8]
mov r13d, 0xfffd
and si, r13w
mov edx, 0x4000
jmp 0x1800e3bfe
mov edx, 0x4000
test dx, si
je 0x1800e3bf2
mov edx, dword [rbx + 0xc]
add edx, dword [rbx]
test edx, edx
jg 0x1800e3baa
test sil, 0x10
je 0x1800e3be1
mov edx, r10d
mov r8d, r10d
mov rcx, rbx
call fcn.1800ed720
test eax, eax
jne 0x1800ead0b
movsxd rcx, dword [rbx + 0xc]
xor edx, edx
add rcx, qword [rbx + 0x10]
movsxd r8, dword [rbx]
call sub.VCRUNTIME140.dll_memset
mov eax, dword [rbx]
add dword [rbx + 0xc], eax
mov eax, 0xbdff
and word [rbx + 8], ax
movzx esi, word [rbx + 8]
mov r13d, 0xfffd
mov edx, 0x4000
and si, r13w
jmp 0x1800e3bf8
mov r13d, 0xfffd
movzx r12d, byte [rsp + 0x30]
movzx edi, word [r15 + 8]
test dil, 0x12
jne 0x1800e3c1a
xor r8d, r8d
movzx edx, r12b
mov rcx, r15
call fcn.1800edf80
jmp 0x1800e3c27
test dx, di
je 0x1800e3c38
mov rcx, r15
call fcn.1800ed4a0
test eax, eax
jne 0x1800ead0b
movzx edi, word [r15 + 8]
and di, r13w
mov r9, qword [rsp + 0x50]
mov r13d, dword [r15 + 0xc]
add r13d, dword [rbx + 0xc]
movsxd r12, r13d
movsxd rax, dword [r9 + 0x7c]
cmp r12, rax
jg 0x1800eaa39
xor eax, eax
lea edx, [r13 + 3]
mov r8d, eax
cmp r14, r15
mov rcx, r14
sete r8b
call fcn.1800ed720
test eax, eax
jne 0x1800ead0b
mov eax, 0x3e40
and word [r14 + 8], ax
or word [r14 + 8], 2
cmp r14, r15
je 0x1800e3ca0
movsxd r8, dword [r15 + 0xc]
mov rdx, qword [r15 + 0x10]
mov rcx, qword [r14 + 0x10]
call sub.VCRUNTIME140.dll_memcpy
mov word [r15 + 8], di
movsxd rcx, dword [r15 + 0xc]
add rcx, qword [r14 + 0x10]
movsxd r8, dword [rbx + 0xc]
mov rdx, qword [rbx + 0x10]
call sub.VCRUNTIME140.dll_memcpy
movzx r15d, byte [rsp + 0x30]
mov word [rbx + 8], si
mov rax, qword [r14 + 0x10]
mov rsi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x48]
mov byte [r12 + rax], 0
mov rax, qword [r14 + 0x10]
mov byte [r12 + rax + 1], 0
mov rax, qword [r14 + 0x10]
mov byte [r12 + rax + 2], 0
mov eax, 0x200
or word [r14 + 8], ax
mov dword [r14 + 0xc], r13d
mov byte [r14 + 0xa], r15b
mov r14, qword [rsp + 0x68]
jmp 0x1800e3a11
mov rsi, qword [rsp + 0x38]
movsxd rax, dword [rsi + 4]
imul rdi, rax, 0x38
add rdi, r14
movzx ebx, word [rdi + 8]
test bl, 0x2c
jne 0x1800e3d33
test bl, 0x12
je 0x1800e3d30
mov rcx, rdi
call fcn.18002fca0
movzx ebx, ax
xor r11d, r11d
jmp 0x1800e3d33
mov ebx, r11d
movsxd rax, dword [rsi + 8]
imul rsi, rax, 0x38
add rsi, r14
movzx r8d, word [rsi + 8]
movzx edx, r8w
and dx, 0x2c
jne 0x1800e3d68
test r8b, 0x12
je 0x1800e3d65
mov rcx, rsi
call fcn.18002fca0
movzx r8d, word [rsi + 8]
movzx edx, ax
jmp 0x1800e3d68
mov edx, r11d
mov r12, qword [rsp + 0x38]
and dl, bl
movzx r10d, word [rdi + 8]
movsxd rax, dword [r12 + 0xc]
imul rcx, rax, 0x38
movzx eax, r10w
add r14, rcx
or ax, r8w
test dl, 4
je 0x1800e3f20
mov r9, qword [rdi]
mov rbx, r12
mov r8, qword [rsi]
movzx ecx, byte [rbx]
sub ecx, 0x69
je 0x1800e3ecb
sub ecx, 1
je 0x1800e3ead
sub ecx, 1
je 0x1800e3e12
cmp ecx, 1
je 0x1800e3de0
test r9, r9
je 0x1800e40d2
cmp r9, 0xffffffffffffffff
mov rax, r8
mov r12d, 1
cqo
cmove r9, r12
idiv r9
mov r8, rdx
jmp 0x1800e3f07
test r9, r9
je 0x1800e40d2
cmp r9, 0xffffffffffffffff
jne 0x1800e3e02
movabs rax, 0x8000000000000000
cmp r8, rax
je 0x1800e3f2b
mov rax, r8
cqo
idiv r9
mov r8, rax
jmp 0x1800e3f07
test r9, r9
jle 0x1800e3e48
movabs rax, 0x7fffffffffffffff
cqo
idiv r9
cmp r8, rax
jg 0x1800e3f2b
movabs rax, 0x8000000000000000
cqo
idiv r9
cmp r8, rax
jge 0x1800e3ea7
jmp 0x1800e3f2b
jns 0x1800e3ea7
test r8, r8
jle 0x1800e3e68
movabs rax, 0x8000000000000000
cqo
idiv r8
cmp r9, rax
jge 0x1800e3ea7
jmp 0x1800e3f2b
jns 0x1800e3ea7
movabs rax, 0x8000000000000000
cmp r9, rax
je 0x1800e3f2b
cmp r8, rax
je 0x1800e3f2b
movabs rax, 0x8000000000000001
cqo
idiv r9
mov rcx, rax
mov rax, r8
neg rax
cmp rax, rcx
jg 0x1800e3f2b
imul r8, r9
jmp 0x1800e3f07
movabs rax, 0x8000000000000000
cmp r9, rax
jne 0x1800e3ec6
test r8, r8
jns 0x1800e3f2b
sub r8, rax
jmp 0x1800e3f07
neg r9
jmp 0x1800e3ece
test r9, r9
js 0x1800e3ee9
test r8, r8
jle 0x1800e3f04
movabs rax, 0x7fffffffffffffff
sub rax, r8
cmp rax, r9
jge 0x1800e3f04
jmp 0x1800e3f2b
test r8, r8
jns 0x1800e3f04
movabs rax, 0x8000000000000001
lea rcx, [r9 + 1]
sub rax, r8
cmp rax, rcx
jg 0x1800e3f2b
add r8, r9
mov qword [r14], r8
mov ecx, 0x3e40
movzx eax, word [r14 + 8]
and ax, cx
or ax, 4
jmp 0x1800e40b0
test al, 1
jne 0x1800e40d5
mov rbx, r12
test r10b, 8
je 0x1800e3f37
movsd xmm2, qword [rdi]
jmp 0x1800e3f5d
test r10b, 0x24
je 0x1800e3f47
xorps xmm2, xmm2
cvtsi2sd xmm2, qword [rdi]
jmp 0x1800e3f5d
test r10b, 0x12
je 0x1800e3f5a
mov rcx, rdi
call fcn.18007fdf0
movaps xmm2, xmm0
jmp 0x1800e3f5d
movaps xmm2, xmm6
movzx eax, word [rsi + 8]
test al, 8
je 0x1800e3f6b
movsd xmm0, qword [rsi]
jmp 0x1800e3f8a
test al, 0x24
je 0x1800e3f79
xorps xmm0, xmm0
cvtsi2sd xmm0, qword [rsi]
jmp 0x1800e3f8a
test al, 0x12
je 0x1800e3f87
mov rcx, rsi
call fcn.18007fdf0
jmp 0x1800e3f8a
movaps xmm0, xmm6
movzx ecx, byte [rbx]
sub ecx, 0x69
je 0x1800e4066
sub ecx, 1
je 0x1800e4060
sub ecx, 1
je 0x1800e405a
cmp ecx, 1
je 0x1800e404c
movzx eax, word [rdi + 8]
test al, 0x24
je 0x1800e3fc0
mov rbx, qword [rdi]
xor ecx, ecx
jmp 0x1800e3ff2
test al, 8
je 0x1800e3fd4
movsd xmm0, qword [rdi]
call fcn.180033770
mov rbx, rax
xor ecx, ecx
jmp 0x1800e3ff2
test al, 0x12
je 0x1800e3fee
cmp qword [rdi + 0x10], 0
je 0x1800e3fee
mov rcx, rdi
call fcn.18007fdc0
mov rbx, rax
xor ecx, ecx
jmp 0x1800e3ff2
xor ecx, ecx
mov ebx, ecx
movzx eax, word [rsi + 8]
test al, 0x24
je 0x1800e3fff
mov rax, qword [rsi]
jmp 0x1800e4026
test al, 8
je 0x1800e400e
movsd xmm0, qword [rsi]
call fcn.180033770
jmp 0x1800e4026
test al, 0x12
je 0x1800e4023
cmp qword [rsi + 0x10], 0
je 0x1800e4023
mov rcx, rsi
call fcn.18007fdc0
jmp 0x1800e4026
mov rax, rcx
test rbx, rbx
je 0x1800e40d0
cmp rbx, 0xffffffffffffffff
mov r12d, 1
cqo
xorps xmm0, xmm0
cmove rbx, r12
idiv rbx
cvtsi2sd xmm0, rdx
jmp 0x1800e406a
ucomisd xmm2, xmm6
jp 0x1800e4054
je 0x1800e40d0
divsd xmm0, xmm2
jmp 0x1800e406a
mulsd xmm0, xmm2
jmp 0x1800e406a
subsd xmm0, xmm2
jmp 0x1800e406a
addsd xmm0, xmm2
movabs rcx, 0xfffffffffffff
movsd qword [rbp - 0x80], xmm0
mov rax, qword [rbp - 0x80]
movabs rdx, 0x7ff0000000000000
test rcx, rax
setne cl
and rax, rdx
cmp rax, rdx
sete al
test al, cl
jne 0x1800e40c9
movsd qword [r14], xmm0
mov ecx, 0x3e40
movzx eax, word [r14 + 8]
and ax, cx
or ax, 8
mov rsi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x48]
mov word [r14 + 8], ax
mov r14, qword [rsp + 0x68]
jmp 0x1800e3a11
mov r12, qword [rsp + 0x38]
jmp 0x1800e40d5
jmp 0x1800e40d5
mov r12, rbx
mov r8d, 0x2400
test word [r14 + 8], r8w
je 0x1800e4103
mov rcx, r14
call fcn.180108f50
mov r9, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x48]
mov r14, qword [rsp + 0x68]
jmp 0x1800e31b0
mov rsi, qword [rsp + 0x50]
mov r10d, 1
mov rbx, qword [rsp + 0x48]
xor r11d, r11d
mov r9, qword [rsp + 0x58]
mov word [r14 + 8], r10w
mov r14, qword [rsp + 0x68]
jmp 0x1800e3010
movsxd rax, dword [r12 + 4]
test eax, eax
je case.0x1800e2fa8.85
imul rcx, rax, 0x38
add rcx, r14
test word [rcx + 8], r8w
je 0x1800e4156
xor edx, edx
call fcn.18010a010
mov r9, qword [rsp + 0x58]
jmp 0x1800e31b0
mov eax, 4
mov qword [rcx], r11
mov word [rcx + 8], ax
mov r13, qword [rsp + 0x60]
add r12, 0x18
mov rdi, qword [rbp - 0x20]
jmp 0x1800e2f81
mov rsi, qword [rsp + 0x38]
movsxd rax, dword [rsi + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rsi + 8]
imul rcx, rax, 0x38
movsxd rax, dword [rsi + 0xc]
add rdi, r14
imul rsi, rax, 0x38
movzx edx, word [rdi + 8]
add rcx, r14
add rsi, r14
movzx r8d, word [rcx + 8]
movzx eax, r8b
or al, dl
test al, 1
je 0x1800e41e2
mov r8d, 0x2400
test word [rsi + 8], r8w
je 0x1800e41cc
mov rcx, rsi
call fcn.180108f50
mov rsi, qword [rsp + 0x50]
jmp 0x1800e3a11
mov word [rsi + 8], r10w
lea rdx, [0x180000000]
mov rsi, qword [rsp + 0x50]
jmp 0x1800e3b3f
mov eax, r8d
test r8b, 0x24
je 0x1800e41f0
mov rbx, qword [rcx]
jmp 0x1800e4221
test al, 8
je 0x1800e4202
movsd xmm0, qword [rcx]
call fcn.180033770
mov rbx, rax
jmp 0x1800e4221
test al, 0x12
je 0x1800e421e
cmp qword [rcx + 0x10], 0
je 0x1800e421e
call fcn.18007fdc0
movzx edx, word [rdi + 8]
mov rbx, rax
xor r11d, r11d
jmp 0x1800e4221
mov rbx, r11
movzx eax, dx
test al, 0x24
je 0x1800e422d
mov rcx, qword [rdi]
jmp 0x1800e425a
test al, 8
je 0x1800e423f
movsd xmm0, qword [rdi]
call fcn.180033770
mov rcx, rax
jmp 0x1800e425a
test al, 0x12
je 0x1800e4257
cmp qword [rdi + 0x10], 0
je 0x1800e4257
mov rcx, rdi
call fcn.18007fdc0
mov rcx, rax
jmp 0x1800e425a
mov rcx, r11
mov r12, qword [rsp + 0x38]
movzx edx, byte [r12]
cmp dl, 0x65
jne 0x1800e426e
and rbx, rcx
jmp 0x1800e42e3
cmp dl, 0x66
jne 0x1800e4278
or rbx, rcx
jmp 0x1800e42e3
test rcx, rcx
je 0x1800e42e3
jns 0x1800e4292
mov eax, 0xcf
sub al, dl
movzx edx, al
cmp rcx, 0xffffffffffffffc0
jle 0x1800e4298
neg rcx
cmp rcx, 0x40
jl 0x1800e42b1
test rbx, rbx
jns 0x1800e42ab
cmp dl, 0x67
je 0x1800e42ab
mov rbx, 0xffffffffffffffff
jmp 0x1800e42e3
xor eax, eax
mov ebx, eax
jmp 0x1800e42e3
cmp dl, 0x67
jne 0x1800e42be
shl rbx, cl
mov r8, rbx
jmp 0x1800e42e0
mov r8, rbx
shr r8, cl
test rbx, rbx
jns 0x1800e42e0
mov eax, 0x40
mov rdx, 0xffffffffffffffff
sub al, cl
movzx ecx, al
shl rdx, cl
or r8, rdx
mov rbx, r8
mov qword [rsi], rbx
mov eax, 0x3e40
and word [rsi + 8], ax
or word [rsi + 8], 4
mov rsi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x48]
mov r10d, 1
mov r9, qword [rsp + 0x58]
xor r11d, r11d
lea rdx, [0x180000000]
mov r8d, 0x2400
mov r13, qword [rsp + 0x60]
add r12, 0x18
mov rdi, qword [rbp - 0x20]
jmp 0x1800e2f81
movsxd rax, dword [r12 + 4]
imul rbx, rax, 0x38
add rbx, r14
mov rcx, rbx
call fcn.1800ed8b0
movsxd rax, dword [r12 + 8]
add qword [rbx], rax
jmp 0x1800e42f9
movsxd rax, dword [r12 + 4]
imul rbx, rax, 0x38
add rbx, r14
movzx eax, word [rbx + 8]
test al, 4
jne 0x1800e4413
test al, 8
jne 0x1800e4388
test al, 2
je 0x1800e4397
mov edx, r10d
mov rcx, rbx
call fcn.1800261e0
mov r9, qword [rsp + 0x58]
xor r11d, r11d
mov r8d, 0x2400
lea r10d, [r11 + 1]
jmp 0x1800e4390
mov rcx, rbx
call fcn.1800ec680
lea rdx, [0x180000000]
movzx eax, word [rbx + 8]
test al, 4
jne 0x1800e4413
cmp dword [r12 + 8], 0
jne 0x1800e4d48
mov eax, 0x14
mov r15, qword [rsp + 0x48]
mov ebx, 1
xor r12d, r12d
mov r14d, 7
mov rdi, qword [rsp + 0x60]
cmp byte [rsi + 0x61], 0
cmovne eax, r14d
cmp qword [r15 + 0xa8], 0
mov dword [rsp + 0x40], eax
jne 0x1800ead60
cmp eax, 0xc0a
je 0x1800ead60
mov ecx, eax
call fcn.1800a8000
mov r8, rax
lea rdx, [0x18012a598]
mov rcx, r15
call fcn.1800e2e10
mov eax, dword [rsp + 0x40]
mov dword [r15 + 0x38], eax
jmp 0x1800ead6b
mov ecx, 0x3e40
and ax, cx
or ax, 4
mov word [rbx + 8], ax
mov rbx, qword [rsp + 0x48]
mov r13, qword [rsp + 0x60]
add r12, 0x18
mov rdi, qword [rbp - 0x20]
jmp 0x1800e2f81
movsxd rax, dword [r12 + 4]
imul rcx, rax, 0x38
add rcx, r14
movzx eax, word [rcx + 8]
test al, 0x24
je case.0x1800e2fa8.85
test al, 8
je 0x1800e445c
movsd xmm0, qword [rcx]
jmp 0x1800e4464
xorps xmm0, xmm0
cvtsi2sd xmm0, qword [rcx]
mov edi, 0x3e40
movsd qword [rcx], xmm0
and ax, di
or ax, 8
mov word [rcx + 8], ax
mov r13, qword [rsp + 0x60]
add r12, 0x18
mov rdi, qword [rbp - 0x20]
jmp 0x1800e2f81
movsxd rax, dword [r12 + 4]
imul rbx, rax, 0x38
mov eax, 0x4000
add rbx, r14
test word [rbx + 8], ax
je 0x1800e44b1
mov rcx, rbx
call fcn.1800ed4a0
test eax, eax
jne 0x1800e43b0
movzx edx, byte [r12 + 8]
movzx r8d, r15b
mov rcx, rbx
call fcn.1800ed2b0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e43b0
jmp 0x1800e42f9
mov rcx, qword [rsp + 0x38]
mov r12, rcx
movsxd rax, dword [rcx + 4]
imul r14, rax, 0x38
movsxd rax, dword [rcx + 0xc]
add r14, qword [rsp + 0x68]
imul rsi, rax, 0x38
movzx edi, word [r14 + 8]
add rsi, qword [rsp + 0x68]
movzx ebx, word [rsi + 8]
movzx edx, bx
or dx, di
test dl, 1
je 0x1800e459d
movzx eax, word [rcx + 2]
test al, al
jns 0x1800e454a
movzx eax, bl
and al, dil
test al, 1
je 0x1800e4535
mov eax, 0x100
test ax, bx
jne 0x1800e4535
movzx eax, byte [rcx]
mov edx, r11d
jmp 0x1800e4755
movzx eax, bx
not ax
and eax, 1
lea edx, [rax*2 - 1]
jmp 0x1800e472c
test al, 0x20
je 0x1800e4581
movsxd rax, dword [r12 + 8]
mov r14, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x48]
imul rcx, rax, 0x38
mov eax, 0x3e40
mov dword [rsp + 0x7c], r10d
add rcx, r14
and word [rcx + 8], ax
or word [rcx + 8], 1
jmp 0x1800e3010
test al, 0x10
jne 0x1800e4d48
mov rsi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x48]
mov r14, qword [rsp + 0x68]
jmp 0x1800e3010
movzx eax, byte [r12 + 2]
and al, 0x47
cmp al, 0x43
jb 0x1800e46a4
movzx ecx, bx
test dl, 2
je 0x1800e45e7
movzx eax, dil
and al, 0x2e
cmp al, 2
jne 0x1800e45cd
xor edx, edx
mov rcx, r14
call fcn.1800261e0
movzx ebx, word [rsi + 8]
movzx eax, bl
movzx ecx, bx
and al, 0x2e
cmp al, 2
jne 0x1800e45e7
xor edx, edx
mov rcx, rsi
call fcn.1800261e0
movzx ecx, word [rsi + 8]
and cl, byte [r14 + 8]
test cl, 4
je 0x1800e4713
mov rax, qword [rsi]
cmp rax, qword [r14]
movzx eax, byte [r12]
jle 0x1800e468d
mov r10d, 1
mov edx, r10d
lea rcx, [0x180000000]
movzx ecx, byte [rax + rcx + 0x123814]
xor r11d, r11d
mov word [rsi + 8], bx
mov rsi, qword [rsp + 0x38]
mov word [r14 + 8], di
movzx r8d, cl
movzx r9d, word [rsi + 2]
test r9b, 0x20
je 0x1800e476f
movsxd rax, dword [rsi + 8]
mov r14, qword [rsp + 0x68]
imul rcx, rax, 0x38
mov dword [rsp + 0x7c], edx
add rcx, r14
test r9b, 8
je 0x1800e466d
cmp byte [rsi], 0x35
mov eax, r11d
sete al
cmp eax, r8d
je 0x1800ea3dc
mov eax, 0x3e40
and word [rcx + 8], ax
or word [rcx + 8], 4
mov qword [rcx], r8
mov rsi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x48]
jmp 0x1800e3a1a
jge 0x1800e4699
mov edx, 0xffffffff
jmp 0x1800e4735
xor r11d, r11d
mov edx, r11d
jmp 0x1800e4755
cmp al, 0x42
jne 0x1800e4713
test dil, 2
jne 0x1800e46e6
test dil, 0x2c
je 0x1800e46e6
mov r8b, 1
movzx edx, r15b
mov rcx, r14
call fcn.1800edf80
movzx eax, di
mov r13d, 0x3e40
xor ax, word [r14 + 8]
and ax, r13w
xor di, ax
cmp r14, rsi
jne 0x1800e46ec
movzx ebx, di
or bx, 2
jmp 0x1800e46ec
mov r13d, 0x3e40
test bl, 2
jne 0x1800e4713
test bl, 0x2c
je 0x1800e4713
mov r8b, 1
movzx edx, r15b
mov rcx, rsi
call fcn.1800edf80
movzx eax, bx
xor ax, word [rsi + 8]
and ax, r13w
xor bx, ax
mov r8, qword [r12 + 0x10]
mov rdx, r14
mov rcx, rsi
call fcn.1800ca7b0
xor r11d, r11d
mov edx, eax
lea r10d, [r11 + 1]
movzx eax, byte [r12]
test edx, edx
jns 0x1800e474f
lea rcx, [0x180000000]
mov r10d, 1
movzx ecx, byte [rax + rcx + 0x1235d0]
jmp 0x1800e461d
jne 0x1800e460e
lea rcx, [0x180000000]
mov r10d, 1
movzx ecx, byte [rax + rcx + 0x1236b4]
jmp 0x1800e4620
mov r9, qword [rsp + 0x58]
test cl, cl
jne 0x1800e9cec
mov rsi, qword [rsp + 0x50]
lea rdx, [0x180000000]
mov rbx, qword [rsp + 0x48]
mov r8d, 0x2400
mov r14, qword [rsp + 0x68]
jmp 0x1800e3b3f
cmp dword [rsp + 0x7c], 0
jne 0x1800e4d48
mov r13, qword [rsp + 0x60]
add r12, 0x18
mov rdi, qword [rbp - 0x20]
jmp 0x1800e2f81
mov rax, qword [rsp + 0x38]
test byte [rax + 2], 1
jne 0x1800e47ca
mov r13, r11
jmp 0x1800e47d2
mov r13, qword [rax - 8]
add r13, 4
mov rdx, qword [rax + 0x10]
mov esi, r11d
mov r8d, dword [rax + 4]
mov rbx, r11
mov r9d, dword [rax + 8]
movsxd rax, dword [rax + 0xc]
mov qword [rbp - 0x80], rdx
mov dword [rsp + 0x78], r8d
mov dword [rbp - 0x70], r9d
mov qword [rbp - 0x68], rax
test rax, rax
jle 0x1800e467e
lea r12, [rdx + 0x20]
test r13, r13
je 0x1800e4812
mov ecx, dword [r13 + rbx*4]
jmp 0x1800e4814
mov ecx, esi
mov rax, qword [rdx + 0x18]
lea r15d, [rcx + r9]
lea r14d, [rcx + r8]
mov r8, qword [r12]
imul rdx, r15, 0x38
imul rcx, r14, 0x38
movzx edi, byte [rax + rbx]
add rdx, qword [rsp + 0x68]
and edi, 1
add rcx, qword [rsp + 0x68]
call fcn.1800ca7b0
mov dword [rsp + 0x7c], eax
mov edx, eax
test eax, eax
jne 0x1800e486d
mov rdx, qword [rbp - 0x80]
inc esi
mov r8d, dword [rsp + 0x78]
inc rbx
mov r9d, dword [rbp - 0x70]
add r12, 8
cmp rbx, qword [rbp - 0x68]
jl 0x1800e4806
jmp 0x1800e3b04
mov rax, qword [rbp - 0x80]
mov rax, qword [rax + 0x18]
test byte [rbx + rax], 2
je 0x1800e48a0
imul rax, r14, 0x38
mov r14, qword [rsp + 0x68]
test byte [rax + r14 + 8], 1
jne 0x1800e4898
imul rax, r15, 0x38
test byte [rax + r14 + 8], 1
je 0x1800e48a5
neg edx
mov dword [rsp + 0x7c], edx
jmp 0x1800e48a5
mov r14, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x50]
mov r8d, 0x2400
mov r12, qword [rsp + 0x38]
movzx r15d, byte [rsp + 0x30]
test edi, edi
je 0x1800ea3cb
mov rbx, qword [rsp + 0x48]
neg edx
mov dword [rsp + 0x7c], edx
mov r9, qword [rsp + 0x58]
xor r11d, r11d
lea r10d, [r11 + 1]
jmp 0x1800e3010
mov edx, dword [rsp + 0x7c]
test edx, edx
jns 0x1800e48f9
mov eax, dword [r12 + 4]
dec eax
cdqe
lea rcx, [rax + rax*2]
jmp 0x1800e300c
lea rdx, [0x180000000]
jne 0x1800e4925
mov eax, dword [r12 + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r12, [r9 + rcx*8]
mov r13, qword [rsp + 0x60]
add r12, 0x18
mov rdi, qword [rbp - 0x20]
jmp 0x1800e2f81
mov eax, dword [r12 + 0xc]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r12, [r9 + rcx*8]
mov r13, qword [rsp + 0x60]
add r12, 0x18
mov rdi, qword [rbp - 0x20]
jmp 0x1800e2f81
mov rdi, qword [rsp + 0x38]
mov r12d, 2
mov edx, r12d
movsxd rax, dword [rdi + 4]
imul rcx, rax, 0x38
add rcx, r14
call fcn.1800e20a0
movsxd rcx, dword [rdi + 8]
mov edx, r12d
imul rcx, rcx, 0x38
mov ebx, eax
add rcx, r14
call fcn.1800e20a0
lea rdx, [0x180000000]
lea eax, [rax + rbx*2]
add eax, ebx
movsxd rcx, eax
mov rax, rdi
cmp byte [rax], 0x2c
jne 0x1800e499c
movzx edx, byte [rcx + rdx + 0x123978]
jmp 0x1800e49a4
movzx edx, byte [rcx + rdx + 0x123990]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, r14
cmp dl, r12b
jne 0x1800e49d0
movzx eax, word [rcx + 8]
mov edx, 0x3e40
and ax, dx
mov r12, rdi
or ax, 1
mov word [rcx + 8], ax
jmp 0x1800e42f9
movzx eax, dl
mov r12, rdi
mov qword [rcx], rax
mov edx, 0x3e40
movzx eax, word [rcx + 8]
and ax, dx
or ax, 4
mov word [rcx + 8], ax
jmp 0x1800e42f9
mov rdi, qword [rsp + 0x38]
movsxd rax, dword [rdi + 4]
mov edx, dword [rdi + 0xc]
imul rcx, rax, 0x38
add rcx, r14
call fcn.1800e20a0
movsxd rcx, eax
mov r8d, 0x2400
mov rax, rdi
movsxd rdx, dword [rax + 0x10]
movsxd rax, dword [rax + 8]
xor rdx, rcx
imul rcx, rax, 0x38
add rcx, r14
test word [rcx + 8], r8w
je 0x1800e4a41
call fcn.18010a010
mov r9, qword [rsp + 0x58]
mov r12, rdi
jmp 0x1800e31b0
mov eax, 4
mov qword [rcx], rdx
mov word [rcx + 8], ax
mov r12, rdi
jmp 0x1800e48ce
mov rbx, qword [rsp + 0x38]
movsxd rax, dword [rbx + 4]
imul rcx, rax, 0x38
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
add rcx, r14
add rbx, r14
movzx eax, word [rcx + 8]
test al, 1
jne 0x1800e9d1b
test al, 0x24
je 0x1800e4a8c
cmp qword [rcx], 0
mov rax, r11
sete al
jmp 0x1800e4ac8
test al, 8
je 0x1800e4a96
movsd xmm0, qword [rcx]
jmp 0x1800e4ab8
test al, 0x12
je 0x1800e4ac5
call fcn.18007fdf0
mov r9, qword [rsp + 0x58]
lea rdx, [0x180000000]
xor r11d, r11d
mov r8d, 0x2400
lea r10d, [r11 + 1]
ucomisd xmm0, xmm6
jp 0x1800e4ac0
je 0x1800e4ac5
mov rax, r11
jmp 0x1800e4ac8
mov rax, r10
test word [rbx + 8], r8w
je 0x1800e4ae4
mov rdx, rax
mov rcx, rbx
call fcn.18010a010
mov rbx, qword [rsp + 0x48]
jmp 0x1800e3a11
mov qword [rbx], rax
mov eax, 4
mov word [rbx + 8], ax
mov rbx, qword [rsp + 0x48]
jmp 0x1800e3b3f
mov word [rbx + 8], r10w
mov rbx, qword [rsp + 0x48]
jmp 0x1800e3b3f
mov rdi, qword [rsp + 0x38]
movsxd rax, dword [rdi + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rdi + 8]
imul rdi, rax, 0x38
add rbx, r14
add rdi, r14
test word [rdi + 8], r8w
je 0x1800e4b3e
mov rcx, rdi
call fcn.180108f50
xor r11d, r11d
mov r8d, 0x2400
jmp 0x1800e4b43
mov word [rdi + 8], r10w
test byte [rbx + 8], 1
jne 0x1800ea3d5
mov eax, 4
mov word [rdi + 8], ax
movzx eax, word [rbx + 8]
test al, 0x24
je 0x1800e4b71
mov rax, qword [rbx]
mov rbx, qword [rsp + 0x48]
not rax
mov qword [rdi], rax
jmp 0x1800e3a11
test al, 8
je 0x1800e4b8e
movsd xmm0, qword [rbx]
call fcn.180033770
mov rbx, qword [rsp + 0x48]
not rax
mov qword [rdi], rax
jmp 0x1800e3a11
test al, 0x12
je 0x1800e4bb1
cmp qword [rbx + 0x10], 0
je 0x1800e4bb1
mov rcx, rbx
call fcn.18007fdc0
mov rbx, qword [rsp + 0x48]
not rax
mov qword [rdi], rax
jmp 0x1800e3a11
mov rbx, qword [rsp + 0x48]
mov rax, r11
not rax
mov qword [rdi], rax
jmp 0x1800e3a11
mov r8, qword [rbx + 0x100]
test r8, r8
je 0x1800e4c37
mov r9, qword [r8 + 0x30]
mov rcx, r12
sub rcx, qword [rbx + 0x88]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov ecx, edx
and edx, 7
shr rcx, 3
movzx eax, byte [rcx + r9]
bt eax, edx
jb 0x1800e4d43
bts eax, edx
mov byte [rcx + r9], al
lea rdx, [0x180000000]
mov rcx, qword [rbx + 0x88]
mov r9, qword [rsp + 0x58]
mov eax, dword [rcx + 4]
mov dword [r12 + 4], eax
jmp 0x1800e4313
mov rcx, qword [rbx + 0x88]
mov eax, dword [r12 + 4]
cmp dword [rcx + 4], eax
je 0x1800e4d48
mov eax, dword [rcx + 4]
mov dword [r12 + 4], eax
jmp 0x1800e4313
movsxd rax, dword [r12 + 4]
mov edx, dword [r12 + 0xc]
imul rcx, rax, 0x38
add rcx, r14
call fcn.1800e20a0
mov r9, qword [rsp + 0x58]
xor r11d, r11d
lea r10d, [r11 + 1]
test eax, eax
jne 0x1800e4d48
jmp 0x1800e430c
mov rax, qword [rsp + 0x38]
mov edx, r11d
cmp dword [rax + 0xc], 0
movsxd rax, dword [rax + 4]
sete dl
imul rcx, rax, 0x38
add rcx, r14
call fcn.1800e20a0
mov r12, qword [rsp + 0x38]
xor r11d, r11d
mov r9, qword [rsp + 0x58]
lea r10d, [r11 + 1]
test eax, eax
je 0x1800e4d48
jmp 0x1800e430c
movsxd rax, dword [r12 + 4]
imul rcx, rax, 0x38
test byte [rcx + r14 + 8], 1
jne 0x1800e4d48
mov r13, qword [rsp + 0x60]
add r12, 0x18
mov rdi, qword [rbp - 0x20]
jmp 0x1800e2f81
movsxd rax, dword [r12 + 4]
imul rcx, rax, 0x38
test byte [rcx + r14 + 8], 1
je 0x1800e4d48
mov r13, qword [rsp + 0x60]
add r12, 0x18
mov rdi, qword [rbp - 0x20]
jmp 0x1800e2f81
movsxd rcx, dword [r12 + 4]
mov rax, qword [rbx + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx + 2], 0
je case.0x1800e2fa8.85
movsxd rax, dword [r12 + 0xc]
imul rcx, rax, 0x38
add rcx, r14
test word [rcx + 8], r8w
je 0x1800e4d85
call fcn.180108f50
xor r11d, r11d
mov r10d, 1
mov r9, qword [rsp + 0x58]
mov eax, dword [r12 + 8]
lea rdx, [0x180000000]
mov rsi, qword [rsp + 0x50]
dec eax
mov r14, qword [rsp + 0x68]
mov r8d, 0x2400
movzx r15d, byte [rsp + 0x30]
cdqe
lea rcx, [rax + rax*2]
lea rbx, [r9 + rcx*8]
mov qword [rsp + 0x38], rbx
mov rbx, qword [rsp + 0x48]
jmp 0x1800e3b3f
mov word [rcx + 8], r10w
jmp 0x1800e4d48
movsxd rcx, dword [r12 + 4]
mov rax, qword [rbx + 0x78]
mov r15d, dword [r12 + 8]
mov dword [rsp + 0x78], r15d
mov r13, qword [rax + rcx*8]
cmp byte [r13 + 3], 0
je 0x1800e4e5a
mov rdx, qword [r13 + 0x20]
test rdx, rdx
je 0x1800e4e50
lea eax, [r15 + 1]
mov eax, dword [rdx + rax*4]
test eax, eax
je 0x1800e4e50
cmp byte [r13 + 2], 0
jne 0x1800e4e50
mov r13, qword [r13 + 0x30]
lea r15d, [rax - 1]
mov dword [rsp + 0x78], r15d
lea rdx, [0x180000000]
mov dword [rsp + 0x40], r11d
mov rax, qword [rsp + 0x38]
mov rsi, qword [r13 + 0x60]
mov qword [rbp - 0x80], rsi
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov eax, dword [rbx + 0x30]
add r14, rcx
mov qword [rbp + 0x10], r14
cmp dword [r13 + 0x28], eax
je 0x1800e4fcd
cmp byte [r13 + 2], 0
je 0x1800e4ecd
cmp byte [r13], 3
jne 0x1800e4e95
movsxd rax, dword [r13 + 0x2c]
mov rdx, qword [rsp + 0x68]
imul rcx, rax, 0x38
mov eax, dword [rcx + rdx + 0xc]
mov dword [r13 + 0x74], eax
mov dword [r13 + 0x70], eax
mov rcx, qword [rcx + rdx + 0x10]
mov qword [r13 + 0x68], rcx
jmp 0x1800e4f29
mov rcx, r13
call fcn.1800eb940
jmp 0x1800e4e6b
mov rax, qword [r13 + 0x38]
cmp byte [rax], 0
je 0x1800e4de9
mov rcx, r13
call fcn.180078a50
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e43b0
mov r9, qword [rsp + 0x58]
lea r10d, [rax + 1]
xor r11d, r11d
lea rdx, [0x180000000]
mov r8d, 0x2400
jmp 0x1800e4dee
test word [r14 + 8], r8w
je 0x1800e4eb9
mov rcx, r14
call fcn.180108f50
mov rsi, qword [rsp + 0x50]
mov r14, qword [rsp + 0x68]
movzx r15d, byte [rsp + 0x30]
jmp 0x1800e3a11
mov rsi, qword [rsp + 0x50]
mov word [r14 + 8], r10w
mov r14, qword [rsp + 0x68]
jmp 0x1800e3b39
mov rbx, qword [r13 + 0x38]
mov rcx, rbx
call fcn.180076f30
mov r8d, dword [rbx + 0x40]
mov dword [r13 + 0x70], r8d
mov rax, qword [rbx + 0x88]
movzx ecx, word [rbx + 0x44]
mov edx, dword [rax + 0x58]
sub edx, dword [rbx + 0x38]
cmp ecx, edx
jle 0x1800e4f06
test edx, edx
mov ecx, edx
mov r12d, 0
cmovs ecx, r12d
jmp 0x1800e4f09
xor r12d, r12d
mov r9, qword [rsp + 0x50]
mov dword [r13 + 0x74], ecx
mov rcx, qword [rbx + 0x38]
mov qword [r13 + 0x68], rcx
cmp r8d, dword [r9 + 0x7c]
ja 0x1800eaa60
mov rbx, qword [rsp + 0x48]
mov eax, dword [rbx + 0x30]
mov dword [r13 + 0x28], eax
movzx eax, byte [rcx]
cmp al, 0x80
jae 0x1800e4f3d
mov dword [rsi], eax
mov al, 1
jmp 0x1800e4f45
mov rdx, rsi
call fcn.1800c5460
lea rbx, [r13 + 0x52]
movzx edx, al
mov dword [r13 + 0x48], edx
xor r11d, r11d
mov word [rbx], r11w
mov ecx, dword [rsi]
mov qword [rbp - 0x70], rbx
cmp dword [r13 + 0x74], ecx
jae 0x1800e4fbc
mov qword [r13 + 0x68], r11
mov dword [r13 + 0x74], r11d
mov eax, dword [rsi]
cmp eax, 0x18003
ja 0x1800e4f7e
mov qword [rbp - 0x70], rbx
cmp eax, dword [r13 + 0x70]
jbe 0x1800e4fd5
mov r8d, 0x2400
mov r9, qword [rsp + 0x58]
mov eax, dword [r9 + 0xc]
test eax, eax
jle 0x1800ea662
mov rsi, qword [rsp + 0x50]
dec eax
mov r14, qword [rsp + 0x68]
movzx r15d, byte [rsp + 0x30]
movsxd rcx, eax
lea rax, [rcx + rcx*2]
lea rbx, [r9 + rax*8]
mov qword [rsp + 0x38], rbx
jmp 0x1800e35a4
mov r9, qword [r13 + 0x68]
movzx eax, r11w
mov qword [rbp - 0x68], r9
jmp 0x1800e509a
lea rbx, [r13 + 0x52]
mov qword [rbp - 0x70], rbx
movzx eax, word [rbx]
cmp eax, r15d
ja 0x1800e52cb
mov edx, dword [r13 + 0x48]
mov ecx, dword [rsi]
cmp edx, ecx
jae 0x1800e51e5
mov r9, qword [r13 + 0x68]
mov qword [rbp - 0x68], r9
test r9, r9
jne 0x1800e5096
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x30], xmm0
mov qword [rbp + 0x60], rax
movups xmmword [rbp + 0x40], xmm0
movups xmmword [rbp + 0x50], xmm0
mov r10, qword [r13 + 0x38]
mov r8d, dword [rsi]
mov rax, qword [r10 + 0x88]
movzx ecx, word [r10 + 0x44]
mov edx, dword [rax + 0x58]
sub edx, dword [r10 + 0x38]
cmp ecx, edx
jle 0x1800e503b
test edx, edx
mov ecx, edx
cmovs ecx, r11d
mov r9, qword [r10 + 0x38]
mov qword [rbp - 0x68], r9
mov qword [rbp + 0x40], r9
cmp r8d, ecx
ja 0x1800e5069
mov dword [rbp + 0x3c], r8d
mov eax, 0x1010
mov word [rbp + 0x38], ax
movzx eax, word [rbx]
mov ecx, dword [rsi]
mov edx, dword [r13 + 0x48]
mov dword [rsp + 0x40], r11d
jmp 0x1800e509a
lea r9, [rbp + 0x30]
xor edx, edx
mov rcx, r10
call fcn.1800ed5b0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800ea66c
mov r9, qword [rbp + 0x40]
movzx eax, word [rbx]
mov ecx, dword [rsi]
mov edx, dword [r13 + 0x48]
mov qword [rbp - 0x68], r9
jmp 0x1800e509a
mov qword [rbp - 0x70], rbx
movzx r15d, ax
mov r12d, ecx
mov ebx, r15d
mov rcx, qword [rbp - 0x80]
mov r14d, dword [rsi + r15*4]
mov esi, edx
add rsi, r9
add r12, r9
nop dword [rax]
nop dword [rax + rax]
movzx edi, byte [rsi]
mov eax, 0x80
mov dword [rbp - 0x5c], edi
mov dword [r13 + rbx*4 + 0x78], edi
cmp edi, eax
jae 0x1800e50e8
lea rdx, [0x180000000]
inc rsi
movzx eax, byte [rdi + rdx + 0x1226c0]
jmp 0x1800e5125
lea rdx, [rbp - 0x5c]
mov rcx, rsi
call fcn.1800c5460
mov edi, dword [rbp - 0x5c]
movzx eax, al
add rsi, rax
mov dword [r13 + rbx*4 + 0x78], edi
mov eax, 0x80
cmp edi, eax
jb 0x1800e5112
lea eax, [rdi - 0xc]
shr eax, 1
jmp 0x1800e5121
lea rcx, [0x180000000]
movzx eax, byte [rdi + rcx + 0x1226c0]
mov rcx, qword [rbp - 0x80]
inc r15d
add r14, rax
movsxd rbx, r15d
mov dword [rcx + rbx*4], r14d
cmp r15d, dword [rsp + 0x78]
ja 0x1800e5140
cmp rsi, r12
jb 0x1800e50c0
jmp 0x1800e5145
cmp rsi, r12
jb 0x1800e519a
cmp rsi, r12
ja 0x1800e51a3
mov eax, dword [r13 + 0x70]
cmp r14, rax
jne 0x1800e51a3
sub esi, dword [rbp - 0x68]
mov r12d, 0x2400
mov rbx, qword [rbp - 0x70]
mov word [rbx], r15w
mov dword [r13 + 0x48], esi
cmp qword [r13 + 0x68], 0
jne 0x1800e5185
test word [rbp + 0x38], r12w
jne 0x1800e517c
cmp dword [rbp + 0x50], 0
je 0x1800e5185
lea rcx, [rbp + 0x30]
call fcn.180108f00
movzx eax, word [rbx]
xor r11d, r11d
mov rsi, qword [rbp - 0x80]
mov r14, qword [rbp + 0x10]
mov r15d, dword [rsp + 0x78]
jmp 0x1800e51f2
mov eax, dword [r13 + 0x70]
cmp r14, rax
jbe 0x1800e5153
cmp dword [rcx], 0
jne 0x1800e51b2
xor eax, eax
mov rsi, r12
mov r15d, eax
jmp 0x1800e5153
cmp qword [r13 + 0x68], 0
mov r8d, 0x2400
jne 0x1800e51dd
test word [rbp + 0x38], r8w
jne 0x1800e51cc
cmp dword [rbp + 0x50], 0
je 0x1800e51dd
lea rcx, [rbp + 0x30]
call fcn.180108f00
xor r11d, r11d
jmp 0x1800e4f7e
xor r11d, r11d
jmp 0x1800e4f84
mov edi, r11d
mov dword [rbp - 0x5c], r11d
mov r12d, 0x2400
movzx eax, ax
cmp eax, r15d
ja 0x1800e52c6
mov rsi, qword [rsp + 0x38]
mov r8d, 0x2400
cmp byte [rsi + 1], 0xf5
jne 0x1800e528a
mov rax, qword [rsi + 0x10]
test word [r14 + 8], r8w
je 0x1800e5230
mov r8d, 0x800
mov rdx, rax
mov rcx, r14
call fcn.180107a20
jmp 0x1800e3b04
movups xmm0, xmmword [rax]
mov rsi, qword [rsp + 0x50]
mov ecx, 0x800
mov r12, qword [rsp + 0x38]
movzx r15d, byte [rsp + 0x30]
movups xmmword [r14], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [r14 + 0x10], xmm1
test word [rax + 8], cx
jne 0x1800ea3ba
mov rbx, qword [rsp + 0x48]
mov eax, 0xebff
and word [r14 + 8], ax
mov r10d, 1
or word [r14 + 8], cx
mov r14, qword [rsp + 0x68]
mov r9, qword [rsp + 0x58]
jmp 0x1800e3010
test word [r14 + 8], r8w
jne 0x1800e3afc
mov rsi, qword [rsp + 0x50]
lea rdx, [0x180000000]
mov rbx, qword [rsp + 0x48]
mov r10d, 1
movzx r15d, byte [rsp + 0x30]
mov r9, qword [rsp + 0x58]
mov word [r14 + 8], r10w
mov r14, qword [rsp + 0x68]
jmp 0x1800e3b3f
mov ebx, r15d
jmp 0x1800e52dc
mov ebx, r15d
mov r12d, 0x2400
mov edi, dword [r13 + rbx*4 + 0x78]
mov dword [rbp - 0x5c], edi
test word [r14 + 8], r12w
je 0x1800e52eb
mov rcx, r14
call fcn.180108f50
lea eax, [r15 + 1]
mov eax, dword [rsi + rax*4]
cmp dword [r13 + 0x74], eax
jb 0x1800e53bd
mov esi, dword [rsi + rbx*4]
add rsi, qword [r13 + 0x68]
cmp edi, 0xc
jae 0x1800e531a
mov r8, r14
mov edx, edi
mov rcx, rsi
call fcn.1800ef820
jmp 0x1800e3b04
movzx r15d, byte [rsp + 0x30]
lea ebx, [rdi - 0xc]
shr ebx, 1
mov dword [r14 + 0xc], ebx
mov byte [r14 + 0xa], r15b
lea edx, [rbx + 2]
cmp dword [r14 + 0x20], edx
jge 0x1800e535a
mov r12d, 1
xor r8d, r8d
mov rcx, r14
mov word [r14 + 8], r12w
call fcn.1800ed720
test eax, eax
jne 0x1800ead0b
mov rcx, qword [r14 + 0x10]
jmp 0x1800e5362
mov rcx, qword [r14 + 0x18]
mov qword [r14 + 0x10], rcx
mov r8, rbx
mov rdx, rsi
call sub.VCRUNTIME140.dll_memcpy
mov rax, qword [r14 + 0x10]
lea rdx, [0x180000000]
mov rsi, qword [rsp + 0x50]
mov r8d, 0x2400
mov r9, qword [rsp + 0x58]
mov byte [rbx + rax], 0
mov rax, qword [r14 + 0x10]
mov byte [rax + rbx + 1], 0
mov eax, edi
mov rbx, qword [rsp + 0x48]
and eax, 1
xor r11d, r11d
movzx eax, word [rdx + rax*2 + 0x1236b4]
mov word [r14 + 8], ax
lea r10d, [r11 + 1]
mov r14, qword [rsp + 0x68]
jmp 0x1800e3b3f
mov rax, qword [rsp + 0x38]
movzx r15d, byte [rsp + 0x30]
mov byte [r14 + 0xa], r15b
movzx eax, word [rax + 2]
test al, 0xc0
je 0x1800e53e3
cmp edi, 0xc
jb 0x1800e53df
test dil, 1
je 0x1800e540c
test al, al
js 0x1800e540c
mov eax, 0x80
cmp edi, eax
jb 0x1800e53f5
lea r8d, [rdi - 0xc]
shr r8d, 1
jmp 0x1800e5407
mov eax, edi
lea rcx, [0x180000000]
movzx r8d, byte [rax + rcx + 0x1226c0]
test r8d, r8d
jne 0x1800e5431
mov r8, r14
lea rcx, [0x180122890]
mov edx, edi
call fcn.1800ef820
mov rsi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x48]
mov r14, qword [rsp + 0x68]
jmp 0x1800e3a11
mov edx, dword [rsi + rbx*4]
mov r9, r14
mov rcx, qword [r13 + 0x38]
call fcn.1800ed5b0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800ea66c
mov rcx, qword [r14 + 0x10]
mov r8, r14
mov edx, edi
call fcn.1800ef820
mov rsi, qword [rsp + 0x50]
mov eax, 0xefff
and word [r14 + 8], ax
mov r14, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x48]
jmp 0x1800e3a11
mov rax, qword [rsp + 0x38]
mov rdi, qword [rax + 0x10]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
movzx eax, byte [rdi]
add rbx, r14
nop
cmp al, 0x43
jl 0x1800e54bb
movzx eax, word [rbx + 8]
test al, 4
jne 0x1800e54ef
test al, 8
jne 0x1800e54b1
test al, 2
je 0x1800e54ef
mov edx, r10d
mov rcx, rbx
call fcn.1800261e0
jmp 0x1800e54ef
mov rcx, rbx
call fcn.1800ec680
jmp 0x1800e54ef
cmp al, 0x42
jne 0x1800e54ef
movzx ecx, word [rbx + 8]
movzx eax, cx
test cl, 2
jne 0x1800e54e3
test cl, 0x2c
je 0x1800e54e3
mov r8b, 1
movzx edx, r15b
mov rcx, rbx
call fcn.1800edf80
movzx eax, word [rbx + 8]
mov ecx, 0xffd3
and ax, cx
mov word [rbx + 8], ax
cmp byte [rdi], 0x45
jne 0x1800e5541
movzx ecx, word [rbx + 8]
test cl, 4
je 0x1800e5541
mov rdx, qword [rbx]
movabs rax, 0x800000000000
add rax, rdx
movabs r8, 0xffffffffffff
cmp rax, r8
mov eax, 0xfffb
ja 0x1800e552a
and cx, ax
or cx, 0x20
jmp 0x1800e553d
xorps xmm0, xmm0
and cx, ax
cvtsi2sd xmm0, rdx
or cx, 8
movsd qword [rbx], xmm0
mov word [rbx + 8], cx
movzx eax, byte [rdi + 1]
inc rdi
test al, al
je 0x1800ea32d
add rbx, 0x38
mov r10d, 1
jmp 0x1800e5490
mov rcx, qword [rsp + 0x38]
mov rdx, r11
movzx r13d, byte [rbx + 0xc3]
mov r15, r11
mov r12d, r11d
mov qword [rbp - 0x68], rdx
movsxd rax, dword [rcx + 4]
mov rdi, qword [rcx + 0x10]
imul r11, rax, 0x38
mov eax, dword [rcx + 8]
dec eax
add r11, r14
cdqe
imul rsi, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
add rsi, r11
mov qword [rbp - 0x80], r11
add rcx, r14
mov qword [rbp - 0x70], rsi
mov qword [rbp + 0x10], rcx
test rdi, rdi
je 0x1800e5617
movzx eax, byte [rdi]
lea rbx, [r11 + 8]
movzx r14d, byte [rsp + 0x30]
mov esi, 0xfffb
nop dword [rax]
nop dword [rax + rax]
lea rcx, [rbx - 8]
movzx r8d, r14b
movzx edx, al
call fcn.180026160
cmp byte [rdi], 0x45
jne 0x1800e55f6
movzx eax, word [rbx]
test al, 4
je 0x1800e55f6
and ax, si
or ax, 0x20
mov word [rbx], ax
movzx eax, byte [rdi + 1]
inc rdi
add rbx, 0x38
test al, al
jne 0x1800e55d0
mov rdx, qword [rbp - 0x68]
mov r10d, 1
mov r11, qword [rbp - 0x80]
mov rsi, qword [rbp - 0x70]
lea r14, [rsi + 0x24]
nop dword [rax + rax]
movzx ecx, word [r14 - 0x1c]
test cl, 1
je 0x1800e5645
mov eax, 0x4000
and cx, ax
neg cx
sbb eax, eax
and eax, 0xa
mov dword [r14], eax
inc r12d
jmp 0x1800e57c6
test cl, 0x24
je 0x1800e5740
mov r8, qword [r14 - 0x24]
mov rdx, r8
test r8, r8
jns 0x1800e565d
not rdx
inc r12d
cmp rdx, 0x7f
ja 0x1800e5690
mov rax, r8
and eax, 1
cmp rax, r8
jne 0x1800e5682
cmp r13b, 4
jb 0x1800e5682
lea eax, [rdx + 8]
mov dword [r14], eax
jmp 0x1800e57c6
mov eax, r10d
inc r15
mov dword [r14], eax
jmp 0x1800e57c6
cmp rdx, 0x7fff
ja 0x1800e56aa
mov eax, 2
add r15, 2
mov dword [r14], eax
jmp 0x1800e57c6
cmp rdx, 0x7fffff
ja 0x1800e56c4
mov eax, 3
add r15, 3
mov dword [r14], eax
jmp 0x1800e57c6
cmp rdx, 0x7fffffff
ja 0x1800e56de
mov eax, 4
add r15, 4
mov dword [r14], eax
jmp 0x1800e57c6
movabs rax, 0x7fffffffffff
cmp rdx, rax
ja 0x1800e56fe
mov eax, 5
add r15, 6
mov dword [r14], eax
jmp 0x1800e57c6
add r15, 8
test cl, 0x20
je 0x1800e5733
mov eax, 0xffdf
xorps xmm0, xmm0
and cx, ax
mov eax, 7
cvtsi2sd xmm0, r8
or cx, 8
movsd qword [r14 - 0x24], xmm0
mov word [r14 - 0x1c], cx
mov dword [r14], eax
jmp 0x1800e57c6
mov eax, 6
mov dword [r14], eax
jmp 0x1800e57c6
test cl, 8
je 0x1800e5756
inc r12d
mov eax, 7
add r15, 8
mov dword [r14], eax
jmp 0x1800e57c6
mov edi, dword [r14 - 0x18]
mov eax, ecx
shr eax, 1
and eax, 1
bt cx, 0xe
lea esi, [rdi + 6]
lea esi, [rax + rsi*2]
jae 0x1800e579e
movsxd rax, dword [r14 - 0x24]
lea esi, [rsi + rax*2]
test r15, r15
je 0x1800e5797
lea rcx, [r14 - 0x24]
call fcn.1800ed4a0
mov r10d, 1
test eax, eax
jne 0x1800ead1a
add edi, dword [r14 - 0x24]
jmp 0x1800e579e
add rdx, rax
mov qword [rbp - 0x68], rdx
mov eax, edi
mov ecx, r10d
add r15, rax
mov eax, esi
shr rax, 7
test rax, rax
je 0x1800e57bc
inc ecx
shr rax, 7
test rax, rax
jne 0x1800e57b1
mov r11, qword [rbp - 0x80]
add r12d, ecx
mov dword [r14], esi
lea rax, [r14 - 0x24]
cmp rax, r11
je 0x1800e57dc
mov rdx, qword [rbp - 0x68]
sub r14, 0x38
jmp 0x1800e5620
cmp r12d, 0x7e
jle 0x1800e581f
movsxd rax, r12d
mov edx, r10d
shr rax, 7
test rax, rax
je 0x1800e57fc
inc edx
shr rax, 7
test rax, rax
jne 0x1800e57f1
add r12d, edx
mov ecx, r10d
movsxd rax, r12d
shr rax, 7
test rax, rax
je 0x1800e581b
nop
inc ecx
shr rax, 7
test rax, rax
jne 0x1800e5810
cmp edx, ecx
jge 0x1800e5822
inc r12d
mov r14, qword [rbp + 0x10]
mov rsi, qword [rbp - 0x68]
movsxd rbx, r12d
movsxd rdx, dword [r14 + 0x20]
lea rdi, [r15 + rbx]
lea rcx, [rdi + rsi]
cmp rcx, rdx
jle 0x1800e5875
mov r9, qword [rsp + 0x50]
movsxd rax, dword [r9 + 0x7c]
cmp rcx, rax
jg 0x1800eaa39
cmp edx, edi
jge 0x1800e5875
xor r8d, r8d
mov edx, edi
mov rcx, r14
call fcn.1800ed720
mov r10d, 1
test eax, eax
jne 0x1800ead1a
mov r11, qword [rbp - 0x80]
jmp 0x1800e587d
mov rax, qword [r14 + 0x18]
mov qword [r14 + 0x10], rax
mov dword [r14 + 0xc], edi
mov eax, 0x10
mov word [r14 + 8], ax
test rsi, rsi
je 0x1800e589d
mov eax, 0x4010
mov dword [r14], esi
mov word [r14 + 8], ax
mov rsi, qword [r14 + 0x10]
mov ecx, 0x80
lea rdi, [rsi + rbx]
cmp r12d, ecx
jae 0x1800e58b7
mov byte [rsi], r12b
mov eax, r10d
jmp 0x1800e58fc
cmp rbx, 0x7f
ja 0x1800e58c7
and bl, 0x7f
mov eax, r10d
mov byte [rsi], bl
jmp 0x1800e58fc
cmp rbx, 0x3fff
ja 0x1800e58ec
mov rax, rbx
mov r13d, 2
shr rax, 7
or al, cl
mov byte [rsi], al
and bl, 0x7f
mov byte [rsi + 1], bl
mov eax, r13d
jmp 0x1800e5902
mov rdx, rbx
mov rcx, rsi
call fcn.18006a360
mov ecx, 0x80
mov r13d, 2
mov r15, qword [rbp - 0x70]
lea r14, [r11 + 0xc]
movzx eax, al
mov r12d, 1
add rsi, rax
mov r11d, dword [r14 + 0x18]
cmp r11d, ecx
jae 0x1800e5927
mov byte [rsi], r11b
mov eax, r12d
jmp 0x1800e5961
mov rdx, r11
cmp r11, 0x7f
ja 0x1800e593a
and dl, 0x7f
mov eax, r12d
mov byte [rsi], dl
jmp 0x1800e5961
cmp rdx, 0x3fff
ja 0x1800e5959
mov rax, rdx
shr rax, 7
or al, 0x80
mov byte [rsi], al
and dl, 0x7f
mov byte [rsi + 1], dl
mov eax, r13d
jmp 0x1800e5961
mov rcx, rsi
call fcn.18006a360
movzx eax, al
add rsi, rax
lea eax, [r11 - 1]
cmp eax, 6
ja 0x1800e59a4
mov rdx, qword [r14 - 0xc]
lea rcx, [0x180000000]
movzx ecx, byte [r11 + rcx + 0x1226c0]
mov r12d, 0xffffffff
mov ebx, ecx
nop dword [rax]
add ecx, r12d
mov byte [rcx + rdi], dl
shr rdx, 8
test ecx, ecx
jne 0x1800e5990
lea r12d, [rcx + 1]
jmp 0x1800e59c6
cmp r11d, 0xc
jb 0x1800e59c2
mov ebx, dword [r14]
test ebx, ebx
je 0x1800e59c6
mov rdx, qword [r14 + 4]
mov r8d, ebx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
jmp 0x1800e59c6
xor eax, eax
mov ebx, eax
add r14, 0x38
mov eax, ebx
add rdi, rax
mov ecx, 0x80
lea rax, [r14 - 0xc]
cmp rax, r15
jbe 0x1800e5916
jmp 0x1800e3b04
mov rdi, qword [rsp + 0x38]
mov rax, qword [rbx + 0x78]
cmp dword [rdi + 0xc], 0
movsxd rcx, dword [rdi + 4]
mov rcx, qword [rax + rcx*8]
mov rdx, qword [rcx + 0x38]
je 0x1800e5a12
mov rcx, rdx
call fcn.18009fec0
mov rbx, rax
mov qword [rbp - 8], rax
jmp 0x1800e5a32
lea r8, [rbp - 8]
mov qword [rbp - 8], r11
mov rcx, rsi
call fcn.18009d960
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e43b0
mov rbx, qword [rbp - 8]
mov r15, qword [rsp + 0x48]
mov rax, rdi
mov r12d, 0x2400
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
add rax, qword [r15 + 0x68]
test word [rax + 8], r12w
je 0x1800e5a66
mov rcx, rax
call fcn.180084360
mov r8d, r12d
mov qword [rax], rbx
jmp 0x1800e7914
mov ecx, 4
mov r8d, r12d
mov word [rax + 8], cx
mov qword [rax], rbx
jmp 0x1800e7914
mov rax, qword [rsp + 0x38]
mov r10d, dword [rax + 4]
mov rsi, qword [rax + 0x10]
mov dword [rsp + 0x78], r10d
test r10d, r10d
jne 0x1800e5b70
mov rdi, qword [rsp + 0x50]
cmp dword [rdi + 0xd0], r10d
jg 0x1800ea676
test rsi, rsi
jne 0x1800e5ab1
mov ebx, r11d
jmp 0x1800e5acf
mov rbx, 0xffffffffffffffff
nop dword [rax + rax]
inc rbx
cmp byte [rsi + rbx], 0
jne 0x1800e5ac0
and ebx, 0x3fffffff
mov r8d, dword [rdi + 0x2c4]
xor edx, edx
add r8d, dword [rdi + 0x2c0]
mov rcx, rdi
call fcn.1800f16d0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800ea68a
mov edx, ebx
mov rcx, rdi
add rdx, 0x21
call fcn.1800a5800
mov rdi, rax
test rax, rax
je 0x1800ea328
lea r9, [rax + 0x20]
mov rdx, rsi
mov rcx, r9
mov qword [rax], r9
lea r8d, [rbx + 1]
call sub.VCRUNTIME140.dll_memcpy
mov rsi, qword [rsp + 0x50]
cmp byte [rsi + 0x5f], 0
je 0x1800e5b38
mov byte [rsi + 0x5f], 0
mov byte [rsi + 0x67], 1
jmp 0x1800e5b3e
inc dword [rsi + 0x2c0]
mov rax, qword [rsi + 0x2b0]
mov rbx, qword [rsp + 0x48]
mov qword [rdi + 0x18], rax
mov qword [rsi + 0x2b0], rdi
mov rax, qword [rsi + 0x2c8]
mov qword [rdi + 8], rax
mov rax, qword [rsi + 0x2d0]
mov qword [rdi + 0x10], rax
jmp 0x1800e3a11
mov r9, qword [rsp + 0x50]
mov r13d, r11d
mov r12, qword [r9 + 0x2b0]
test r12, r12
je 0x1800e5c6a
lea rdi, [0x180000000]
nop
mov r8, qword [r12]
mov r9, rsi
sub r9, r8
nop word [rax + rax]
movzx eax, byte [r8]
movzx edx, byte [r9 + r8]
cmp eax, edx
jne 0x1800e5c3d
test eax, eax
jne 0x1800e5c51
mov rsi, qword [rsp + 0x50]
cmp dword [rsi + 0xd0], eax
jle 0x1800e5bd0
cmp r10d, 1
je 0x1800ea692
cmp qword [r12 + 0x18], 0
jne 0x1800e5c92
cmp byte [rsi + 0x67], 0
je 0x1800e5c92
mov edi, 1
mov r15d, edi
cmp r10d, edi
jne 0x1800e5c95
mov rax, qword [rbx]
mov rcx, qword [rax + 0x2d0]
add rcx, qword [rax + 0x2c8]
test rcx, rcx
mov rcx, rbx
jg 0x1800ea74d
mov byte [rsi + 0x5f], dil
call fcn.1800ebf70
cmp eax, 5
je 0x1800ea6b4
mov eax, dword [rbx + 0x38]
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800ea6ab
mov byte [rsi + 0x67], al
jmp 0x1800e5da4
movzx ecx, byte [rax + rdi + 0x122790]
movzx eax, byte [rdx + rdi + 0x122790]
cmp ecx, eax
jne 0x1800e5c59
inc r8
jmp 0x1800e5ba0
mov r12, qword [r12 + 0x18]
inc r13d
test r12, r12
jne 0x1800e5b90
mov r8, rsi
lea rdx, str.no_such_savepoint:__s
mov rcx, rbx
call fcn.1800e2e10
mov rsi, qword [rsp + 0x50]
mov ebx, 1
mov r15, qword [rsp + 0x48]
mov eax, ebx
jmp 0x1800e43ba
mov r15d, r11d
mov eax, dword [rsi + 0x2c0]
sub eax, r13d
lea r13d, [rax - 1]
mov eax, dword [rsi + 0x28]
cmp r10d, 2
jne 0x1800e5d0b
mov r14d, dword [rsi + 0x2c]
mov edi, r11d
and r14d, 1
test eax, eax
jle 0x1800e5d0e
mov esi, r14d
mov rbx, r11
xor esi, 1
mov r9, qword [rsp + 0x50]
mov r8d, esi
mov edx, 0x204
mov rcx, qword [r9 + 0x20]
mov rcx, qword [rbx + rcx + 8]
call fcn.1800a0570
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800ea66c
mov rax, qword [rsp + 0x50]
inc edi
add rbx, 0x20
mov eax, dword [rax + 0x28]
cmp edi, eax
jl 0x1800e5cc3
mov r10d, dword [rsp + 0x78]
xor r11d, r11d
mov rsi, qword [rsp + 0x50]
jmp 0x1800e5d0e
mov r14d, r11d
mov edi, r11d
test eax, eax
jle 0x1800e5d52
mov rbx, r11
nop dword [rax + rax]
mov rcx, qword [rsi + 0x20]
mov r8d, r13d
mov edx, r10d
mov rcx, qword [rbx + rcx + 8]
call fcn.18009ff20
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e43b0
mov r10d, dword [rsp + 0x78]
inc edi
add rbx, 0x20
cmp edi, dword [rsi + 0x28]
jl 0x1800e5d20
jmp 0x1800e5d56
mov eax, dword [rsp + 0x40]
test r14d, r14d
je 0x1800e5d97
mov rax, qword [rsi + 8]
test rax, rax
je 0x1800e5d87
nop dword [rax]
nop dword [rax + rax]
and dword [rax + 0xc8], 0xfffffffd
or dword [rax + 0xc8], 1
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x1800e5d70
mov rcx, rsi
call fcn.1800d4380
or dword [rsi + 0x2c], 1
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x1800e43b0
mov r14, qword [rsp + 0x68]
mov rcx, qword [rsi + 0x2b0]
cmp rcx, r12
je 0x1800e5dd8
mov rax, qword [rcx + 0x18]
mov rdx, rcx
mov rcx, rsi
mov qword [rsi + 0x2b0], rax
call fcn.1800a5670
dec dword [rsi + 0x2c0]
mov rcx, qword [rsi + 0x2b0]
cmp rcx, r12
jne 0x1800e5db0
mov ebx, dword [rsp + 0x78]
cmp ebx, 1
jne 0x1800e5e09
mov rax, qword [r12 + 0x18]
mov rdx, r12
mov rcx, rsi
mov qword [rsi + 0x2b0], rax
call fcn.1800a5670
test r15d, r15d
jne 0x1800ea3eb
dec dword [rsi + 0x2c0]
jmp 0x1800e5e2f
mov rax, qword [r12 + 8]
mov qword [rsi + 0x2c8], rax
mov rax, qword [r12 + 0x10]
mov qword [rsi + 0x2d0], rax
test r15d, r15d
je 0x1800e5e2f
cmp ebx, 2
jne 0x1800ea3eb
mov r8d, r13d
mov edx, ebx
mov rcx, rsi
call fcn.1800f16d0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e43b0
mov rbx, qword [rsp + 0x48]
movzx r15d, byte [rsp + 0x30]
jmp 0x1800e3a11
mov rcx, qword [rsp + 0x38]
mov dword [rbp - 0x54], r11d
mov edx, dword [rcx + 8]
test edx, edx
je 0x1800e5e76
mov eax, dword [rsi + 0x30]
bt rax, 0x14
jb 0x1800ea76d
movsxd rcx, dword [rcx + 4]
mov rax, qword [rsi + 0x20]
shl rcx, 5
mov rbx, qword [rcx + rax + 8]
test rbx, rbx
je 0x1800e5f88
lea r8, [rbp - 0x54]
mov rcx, rbx
call fcn.18009cbf0
mov r15, qword [rsp + 0x48]
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800ea777
test byte [r15 + 0xc8], 0x40
mov r12, qword [rsp + 0x38]
je 0x1800e5f98
cmp dword [r12 + 8], eax
je 0x1800e5f98
cmp byte [rsi + 0x5f], al
je 0x1800e5edd
cmp dword [rsi + 0xcc], 1
jle 0x1800e5f98
mov r8d, dword [r15 + 0x40]
test r8d, r8d
jne 0x1800e5efe
inc dword [rsi + 0x2c4]
mov r8d, dword [rsi + 0x2c0]
add r8d, dword [rsi + 0x2c4]
mov dword [r15 + 0x40], r8d
dec r8d
xor edx, edx
mov rcx, rsi
call fcn.1800f16d0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e5f69
mov edi, dword [r15 + 0x40]
mov rsi, qword [rbx + 8]
cmp byte [rbx + 0x11], al
je 0x1800e5f30
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], al
jne 0x1800e5f30
mov rcx, rbx
call fcn.18002a4b0
mov rcx, qword [rsi]
cmp edi, dword [rcx + 0x80]
jle 0x1800e5f4a
cmp byte [rcx + 0xa], 0
je 0x1800e5f4a
mov edx, edi
call fcn.180084d10
jmp 0x1800e5f4c
xor eax, eax
cmp byte [rbx + 0x11], 0
mov dword [rsp + 0x40], eax
je 0x1800e5f64
sub dword [rbx + 0x14], 1
jne 0x1800e5f64
mov rcx, rbx
call fcn.1801056b0
mov rsi, qword [rsp + 0x50]
mov rax, qword [rsi + 0x2c8]
mov rbx, r15
mov qword [rbx + 0x58], rax
mov rax, qword [rsi + 0x2d0]
mov qword [rbx + 0x60], rax
mov eax, dword [rsp + 0x40]
jmp 0x1800e5f9b
mov eax, dword [rsp + 0x40]
mov rbx, qword [rsp + 0x48]
mov r12, qword [rsp + 0x38]
jmp 0x1800e5fb5
mov rbx, r15
mov r9, qword [rsp + 0x58]
mov r8d, 0x2400
movzx r15d, byte [rsp + 0x30]
mov r10d, 1
xor r11d, r11d
cmp word [r12 + 2], 0
je 0x1800e5fff
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0xc]
cmp dword [rbp - 0x54], eax
jne 0x1800ea7bc
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0x10]
cmp dword [rcx + 4], eax
jne 0x1800ea7bc
mov eax, dword [rsp + 0x40]
mov r12, qword [rsp + 0x38]
test eax, eax
jne 0x1800e43b0
jmp 0x1800e3010
mov rcx, qword [rsi + 0x20]
lea r8, [rbp - 0x18]
mov rax, qword [rsp + 0x38]
mov r12, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov edx, dword [r12 + 0xc]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.18009e170
movsxd rax, dword [r12 + 8]
mov r8d, 0x2400
imul rcx, rax, 0x38
add rcx, qword [rbx + 0x68]
test word [rcx + 8], r8w
je 0x1800e6069
call fcn.180084360
mov rcx, rax
mov r8d, 0x2400
movsxd rax, dword [rbp - 0x18]
mov qword [rcx], rax
jmp 0x1800e48ce
mov eax, 4
mov word [rcx + 8], ax
movsxd rax, dword [rbp - 0x18]
mov qword [rcx], rax
jmp 0x1800e48ce
mov rax, qword [rsp + 0x38]
movsxd rbx, dword [rax + 4]
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 8]
shl rbx, 5
add rbx, qword [rsi + 0x20]
mov rcx, qword [rbx + 8]
call fcn.1800a0680
mov rdx, qword [rsp + 0x38]
mov dword [rsp + 0x40], eax
mov eax, dword [rdx + 8]
cmp eax, 1
jne 0x1800e60c5
movzx eax, word [rdx + 2]
mov ecx, dword [rdx + 0xc]
sub ecx, eax
mov rax, qword [rbx + 0x18]
mov dword [rax], ecx
or dword [rsi + 0x2c], 1
jmp 0x1800e60d5
cmp eax, 2
jne 0x1800e60d5
mov rcx, qword [rbx + 0x18]
movzx eax, byte [rdx + 0xc]
mov byte [rcx + 0x70], al
mov rax, rdx
cmp dword [rax + 4], 1
jne 0x1800e6115
mov rax, qword [rsi + 8]
test rax, rax
je 0x1800e6107
nop word [rax + rax]
and dword [rax + 0xc8], 0xfffffffd
or dword [rax + 0xc8], 1
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x1800e60f0
mov rbx, qword [rsp + 0x48]
and dword [rbx + 0xc8], 0xfffffffc
jmp 0x1800e611a
mov rbx, qword [rsp + 0x48]
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x1800e43b0
mov r12, rdx
jmp 0x1800e42fe
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [rbx + 0x78]
mov rbx, qword [rax + rcx*8]
test rbx, rbx
je 0x1800e6155
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 8]
cmp dword [rbx + 0x4c], eax
je 0x1800e628b
mov rbx, qword [rsp + 0x48]
mov eax, dword [rbx + 0xc8]
and al, 3
cmp al, 1
je 0x1800ea849
mov rax, qword [rsp + 0x38]
mov esi, r11d
mov r9, qword [rsp + 0x50]
mov r14, r11
movsxd r12, dword [rax + 0xc]
mov r15d, dword [rax + 8]
mov rax, r12
shl rax, 5
add rax, qword [r9 + 0x20]
mov r9, qword [rsp + 0x38]
mov r13, qword [rax + 8]
cmp dil, 0x61
jne 0x1800e61bf
mov rax, qword [rax + 0x18]
movzx edi, word [r9 + 2]
and edi, 8
or edi, 4
movzx ecx, byte [rax + 0x70]
cmp cl, byte [rbx + 0xc3]
jae 0x1800e61c2
mov byte [rbx + 0xc3], cl
jmp 0x1800e61c2
mov edi, r11d
test byte [r9 + 2], 0x10
je 0x1800e61e7
imul rbx, r15, 0x38
add rbx, qword [rsp + 0x68]
mov rcx, rbx
call fcn.1800ed8b0
mov r15d, dword [rbx]
mov rbx, qword [rsp + 0x48]
mov r9, qword [rsp + 0x38]
movzx eax, byte [r9 + 1]
cmp al, 0xf7
jne 0x1800e61fb
mov r14, qword [r9 + 0x10]
movzx esi, word [r14 + 8]
jmp 0x1800e6203
cmp al, 0xfd
jne 0x1800e6203
mov esi, dword [r9 + 0x10]
mov r8d, esi
mov byte [rsp + 0x20], 0
mov rsi, qword [rsp + 0x38]
mov r9d, r12d
mov rcx, rbx
mov edx, dword [rsi + 4]
call fcn.180024560
mov rbx, rax
test rax, rax
je 0x1800ead0b
mov byte [rax + 2], 1
mov r9, r14
or dword [rax + 8], 4
mov r8d, edi
mov dword [rax + 0x4c], r15d
mov edx, r15d
mov rcx, qword [rax + 0x38]
mov qword [rsp + 0x20], rcx
mov rcx, r13
call fcn.18009db90
movzx r15d, byte [rsp + 0x30]
lea rdx, [0x180000000]
mov r9, qword [rsp + 0x58]
mov r8d, 0x2400
mov qword [rbx + 0x40], r14
cmp byte [rsi + 1], 0xf7
mov rsi, qword [rsp + 0x50]
mov r14, qword [rsp + 0x68]
mov dword [rsp + 0x40], eax
setne al
xor r11d, r11d
mov byte [rbx + 4], al
lea r10d, [r11 + 1]
mov rax, qword [rsp + 0x38]
movzx ecx, byte [rax + 2]
mov rax, qword [rbx + 0x38]
and cl, 3
mov byte [rax + 3], cl
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x1800e43b0
mov rbx, qword [rsp + 0x48]
jmp 0x1800e3b3f
mov rax, qword [rsp + 0x38]
mov r9d, 0xffffffff
mov r15, qword [rsp + 0x48]
mov byte [rsp + 0x20], 0
movsxd rcx, dword [rax + 8]
mov rax, qword [rbx + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, r15
mov rax, qword [rsp + 0x38]
movsx r8d, word [rbx + 0x50]
mov edx, dword [rax + 4]
call fcn.180024560
test rax, rax
je 0x1800ea8b9
mov byte [rax + 2], 1
mov r8d, 4
or dword [rax + 8], 1
mov r9, qword [rbx + 0x40]
mov qword [rax + 0x40], r9
movzx ecx, byte [rbx + 4]
mov byte [rax + 4], cl
mov edx, dword [rbx + 0x4c]
mov dword [rax + 0x4c], edx
mov ecx, dword [rax + 8]
xor ecx, dword [rbx + 8]
and ecx, 4
xor dword [rax + 8], ecx
mov rax, qword [rax + 0x38]
mov rcx, qword [rbx + 0x10]
mov qword [rsp + 0x20], rax
call fcn.18009db90
mov rbx, r15
mov dword [rsp + 0x40], eax
movzx r15d, byte [rsp + 0x30]
jmp 0x1800e3a11
mov rax, qword [rsp + 0x38]
movsxd rdx, dword [rax + 4]
mov rax, qword [rbx + 0x78]
mov rbx, qword [rax + rdx*8]
test rbx, rbx
je 0x1800e6386
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x1800e6386
mov qword [rbx + 0x18], r11
xor r8d, r8d
mov dword [rbx + 0x28], r11d
mov edx, dword [rbx + 0x4c]
call fcn.18009d020
mov r15, qword [rsp + 0x48]
mov dword [rsp + 0x40], eax
jmp 0x1800e64bb
mov rax, qword [rsp + 0x38]
mov r9d, 0xffffffff
mov r15, qword [rsp + 0x48]
mov rcx, r15
mov byte [rsp + 0x20], 0
mov r8d, dword [rax + 8]
call fcn.180024560
mov rbx, rax
test rax, rax
je 0x1800ea8b9
or dword [rax + 8], 1
lea r9, [rbx + 0x10]
mov rax, qword [rsp + 0x38]
mov r8, rsi
mov dword [rsp + 0x28], 0x41e
xor edx, edx
movzx ecx, word [rax + 2]
or ecx, 5
mov dword [rsp + 0x20], ecx
mov rcx, qword [rsi]
call fcn.18009f470
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e6496
mov rcx, qword [rbx + 0x10]
mov r12d, 1
mov edx, r12d
xor r8d, r8d
call fcn.18009cbf0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e6496
mov rax, qword [rsp + 0x38]
mov r14, qword [rax + 0x10]
mov qword [rbx + 0x40], r14
test r14, r14
je 0x1800e6464
movzx r8d, word [rax + 2]
lea rdx, [rbx + 0x4c]
mov rcx, qword [rbx + 0x10]
or r8d, 2
call fcn.18009db20
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e645e
mov rax, qword [rbx + 0x38]
lea r8d, [r12 + 3]
mov edx, dword [rbx + 0x4c]
mov r9, r14
mov rcx, qword [rbx + 0x10]
mov qword [rsp + 0x20], rax
call fcn.18009db90
mov dword [rsp + 0x40], eax
mov byte [rbx + 4], 0
jmp 0x1800e648c
mov dword [rbx + 0x4c], r12d
xor r9d, r9d
mov rax, qword [rbx + 0x38]
mov edx, r12d
mov rcx, qword [rbx + 0x10]
mov qword [rsp + 0x20], rax
lea r8d, [r9 + 4]
call fcn.18009db90
mov dword [rsp + 0x40], eax
mov byte [rbx + 4], r12b
mov r14, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x50]
xor eax, eax
mov ecx, eax
mov rax, qword [rsp + 0x38]
cmp word [rax + 2], 8
mov eax, 4
cmovne ecx, eax
mov eax, dword [rbx + 8]
and eax, 0xfffffffb
or ecx, eax
mov eax, dword [rsp + 0x40]
mov dword [rbx + 8], ecx
test eax, eax
jne 0x1800e43b5
movzx r15d, byte [rsp + 0x30]
mov byte [rbx + 2], 1
mov rbx, qword [rsp + 0x48]
jmp 0x1800e3a11
mov rax, qword [rsp + 0x38]
mov r9d, 0xffffffff
mov rcx, rbx
mov byte [rsp + 0x20], 1
mov r8d, dword [rax + 8]
mov edx, dword [rax + 4]
call fcn.180024560
test rax, rax
je 0x1800ead10
mov rdx, qword [rsp + 0x38]
mov r8, rax
mov rcx, qword [rdx + 0x10]
mov qword [rax + 0x40], rcx
mov rcx, rsi
mov edx, dword [rdx + 0xc]
call fcn.1800efdb0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e43b0
jmp 0x1800e3a11
mov rax, qword [rsp + 0x38]
mov r12, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [rbx + 0x78]
mov rdx, qword [rax + rcx*8]
mov rcx, qword [rdx + 0x18]
lea rax, [rcx + 1]
mov qword [rdx + 0x18], rax
test rcx, rcx
je 0x1800e4d48
jmp 0x1800e3010
mov rax, qword [rsp + 0x38]
mov r9d, 0xffffffff
mov rcx, rbx
mov byte [rsp + 0x20], 3
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 4]
call fcn.180024560
mov r10d, 1
test rax, rax
je 0x1800ead1f
mov r12, qword [rsp + 0x38]
mov byte [rax + 2], r10b
mov ecx, dword [r12 + 8]
mov dword [rax + 0x2c], ecx
lea rcx, [0x18014bf43]
mov byte [rax + 4], r10b
mov qword [rax + 0x38], rcx
jmp 0x1800e4304
mov rdx, qword [rbx + 0x78]
mov rcx, rbx
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rdx, qword [rdx + rax*8]
call fcn.1800ebda0
mov rax, qword [rsp + 0x38]
xor r11d, r11d
movsxd rcx, dword [rax + 4]
mov rax, qword [rbx + 0x78]
mov qword [rax + rcx*8], r11
jmp 0x1800e3a14
mov rax, qword [rsp + 0x38]
mov r12d, r11d
movsxd rcx, dword [rax + 4]
mov rax, qword [rbx + 0x78]
mov r15, qword [rax + rcx*8]
mov byte [r15 + 2], 0
mov byte [r15 + 3], 0
mov dword [r15 + 0x28], r11d
cmp byte [r15 + 4], 0
je 0x1800e672b
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
add rbx, r14
movzx r14d, word [rbx + 8]
movzx eax, r14b
movzx ecx, r14w
and al, 0x2e
cmp al, 2
jne 0x1800e6641
xor edx, edx
mov rcx, rbx
call fcn.1800261e0
movzx ecx, word [rbx + 8]
xor r11d, r11d
movzx eax, cx
test al, 0x24
je 0x1800e664d
mov rsi, qword [rbx]
jmp 0x1800e667e
test al, 8
je 0x1800e665f
movsd xmm0, qword [rbx]
call fcn.180033770
mov rsi, rax
jmp 0x1800e667e
test al, 0x12
je 0x1800e667b
cmp qword [rbx + 0x10], 0
je 0x1800e667b
mov rcx, rbx
call fcn.18007fdc0
movzx ecx, word [rbx + 8]
mov rsi, rax
jmp 0x1800e667e
mov rsi, r11
mov word [rbx + 8], r14w
test cl, 0x24
jne 0x1800e66f6
test cl, 8
jne 0x1800e66cc
test cl, 1
jne 0x1800e9ce2
cmp edi, 0x18
jae 0x1800e9ce2
mov rcx, qword [r15 + 0x38]
lea rdx, [rsp + 0x74]
call fcn.18009ede0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800ea66c
xor r11d, r11d
cmp dword [rsp + 0x74], 0
jne 0x1800e95b6
jmp 0x1800e68cf
movsd xmm0, qword [rbx]
xorps xmm1, xmm1
cvtsi2sd xmm1, rsi
comisd xmm1, xmm0
jbe 0x1800e66e8
test dil, 1
je 0x1800e66f6
dec edi
jmp 0x1800e66f6
comisd xmm0, xmm1
jbe 0x1800e66f6
test dil, 1
jne 0x1800e66f6
inc edi
mov rcx, qword [r15 + 0x38]
lea rax, [rsp + 0x74]
xor r9d, r9d
mov qword [rsp + 0x20], rax
mov r8, rsi
xor edx, edx
call fcn.18009ee60
mov qword [r15 + 0x58], rsi
mov rsi, qword [rsp + 0x50]
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e43b0
jmp 0x1800e67ae
mov rax, qword [r15 + 0x38]
lea rdx, [rbp + 0x18]
movzx ebx, byte [rax + 3]
mov rax, qword [rsp + 0x38]
and bl, 2
setne r12b
test dil, 1
mov ecx, dword [rax + 0x10]
mov rax, qword [r15 + 0x40]
mov qword [rbp + 0x18], rax
mov eax, r10d
mov word [rbp + 0x28], cx
mov ecx, 0xffffffff
cmovne eax, ecx
xor r9d, r9d
mov byte [rbp + 0x2a], al
xor r8d, r8d
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov byte [rbp + 0x2e], 0
lea rax, [rsp + 0x74]
add rcx, r14
mov qword [rsp + 0x20], rax
mov qword [rbp + 0x20], rcx
mov rcx, qword [r15 + 0x38]
call fcn.18009ee60
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e43b0
test bl, bl
je 0x1800e67ae
cmp byte [rbp + 0x2e], al
je 0x1800e66b9
mov eax, dword [rsp + 0x74]
cmp edi, 0x18
jl 0x1800e6861
test eax, eax
js 0x1800e67d3
jne 0x1800e67c6
cmp edi, 0x19
je 0x1800e67d3
xor r11d, r11d
mov dword [rsp + 0x74], r11d
jmp 0x1800e68cf
mov rcx, qword [r15 + 0x38]
xor r11d, r11d
mov dword [rsp + 0x74], r11d
mov word [rcx + 0x46], r11w
and byte [rcx + 1], 0xf9
cmp byte [rcx], r11b
je 0x1800e67f4
call fcn.18002a670
jmp 0x1800e682f
movzx r8d, word [rcx + 0x56]
mov rdx, qword [rcx + 0x88]
lea eax, [r8 + 1]
mov word [rcx + 0x56], ax
cmp ax, word [rdx + 0x18]
jb 0x1800e681a
mov word [rcx + 0x56], r8w
call fcn.18002a670
jmp 0x1800e682f
cmp byte [rdx + 8], r11b
je 0x1800e682a
mov dword [rsp + 0x40], r11d
jmp 0x1800e68cf
call fcn.180080110
mov dword [rsp + 0x40], eax
test eax, eax
je 0x1800e68cc
cmp eax, 0x65
jne 0x1800e43b0
mov r12, qword [rsp + 0x38]
mov r10d, 1
xor r11d, r11d
mov dword [rsp + 0x74], r10d
mov dword [rsp + 0x40], r11d
jmp 0x1800e4d43
test eax, eax
jg 0x1800e6884
jne 0x1800e686c
cmp edi, 0x16
je 0x1800e6884
mov rax, qword [r15 + 0x38]
xor r11d, r11d
mov ecx, r11d
cmp byte [rax], cl
setne cl
mov dword [rsp + 0x74], ecx
jmp 0x1800e66bc
mov rcx, qword [r15 + 0x38]
xor r11d, r11d
mov dword [rsp + 0x74], r11d
and byte [rcx + 1], 0xf1
mov word [rcx + 0x46], r11w
cmp byte [rcx], r11b
jne 0x1800e68c2
movzx edx, word [rcx + 0x56]
test dx, dx
je 0x1800e68c2
mov rax, qword [rcx + 0x88]
cmp byte [rax + 8], r11b
je 0x1800e68c2
dec dx
mov dword [rsp + 0x40], r11d
mov word [rcx + 0x56], dx
jmp 0x1800e68cf
call fcn.18002ae40
jmp 0x1800e682f
xor r11d, r11d
mov rsi, qword [rsp + 0x50]
mov r8d, 0x2400
mov r14, qword [rsp + 0x68]
movzx r15d, byte [rsp + 0x30]
test r12d, r12d
je 0x1800ea3d5
add qword [rsp + 0x38], 0x18
jmp 0x1800e359f
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [rbx + 0x78]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 8]
shl eax, 3
xor eax, dword [rdx + 8]
and eax, 8
xor dword [rdx + 8], eax
lea rdx, [0x180000000]
jmp 0x1800e3b3f
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [rbx + 0x78]
cmp qword [rax + rcx*8], 0
je case.0x1800e2fa8.11
jmp 0x1800e3b3f
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [rbx + 0x78]
mov rcx, qword [rax + rcx*8]
test byte [rcx + 8], 8
jne 0x1800e3b3f
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [rbx + 0x78]
mov rsi, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 0xc]
imul rbx, rax, 0x38
add rbx, r14
cmp dword [rcx + 0x10], 0
jle 0x1800e69b2
mov rax, qword [rsi + 0x40]
lea rdi, [rbp + 0x1a0]
mov qword [rbp + 0x1a0], rax
mov r14, r11
movzx eax, word [rcx + 0x10]
mov word [rbp + 0x1b0], ax
mov qword [rbp + 0x1a8], rbx
jmp 0x1800e6a04
mov eax, 0x4000
test word [rbx + 8], ax
je 0x1800e69cd
mov rcx, rbx
call fcn.1800ed4a0
test eax, eax
jne 0x1800ead0b
mov rcx, qword [rsi + 0x40]
call fcn.1800e2000
mov rdi, rax
mov r14, rax
test rax, rax
je 0x1800ead0b
mov r8, qword [rbx + 0x10]
mov r9, rax
mov edx, dword [rbx + 0xc]
mov rcx, qword [rsi + 0x40]
call fcn.1800ef320
mov rcx, qword [rsp + 0x38]
xor r11d, r11d
lea r10d, [r11 + 1]
mov byte [rdi + 0x12], 0
mov ebx, r11d
cmp byte [rcx], 0x1c
jne 0x1800e6a3d
movzx eax, word [rdi + 0x10]
mov rcx, r11
cmp r11w, ax
jae 0x1800e6a3d
mov edx, eax
mov rax, qword [rdi + 8]
add rax, 8
test byte [rax], 1
jne 0x1800e6a3a
inc rcx
add rax, 0x38
cmp rcx, rdx
jl 0x1800e6a27
jmp 0x1800e6a3d
mov ebx, r10d
mov rcx, qword [rsi + 0x38]
lea rax, [rbp - 0x14]
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, rdi
call fcn.18009ee60
mov dword [rsp + 0x40], eax
test r14, r14
je 0x1800e6a72
mov rcx, qword [rsp + 0x50]
mov rdx, r14
call fcn.1800a5670
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x1800ea66c
mov eax, dword [rbp - 0x14]
xor r11d, r11d
mov r12, qword [rsp + 0x38]
test eax, eax
mov dword [rsi + 0x2c], eax
mov ecx, r11d
sete cl
test eax, eax
setne al
mov byte [rsi + 2], al
mov byte [rsi + 3], r11b
mov dword [rsi + 0x28], r11d
cmp byte [r12], 0x1e
jne 0x1800e6acc
mov r9, qword [rsp + 0x58]
lea r10d, [r11 + 1]
test ecx, ecx
jne 0x1800e4d48
mov rsi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x48]
mov r14, qword [rsp + 0x68]
jmp 0x1800e31b9
test ebx, ebx
jne 0x1800e4d3d
mov r9, qword [rsp + 0x58]
lea r10d, [rbx + 1]
test ecx, ecx
je 0x1800e4d48
mov rsi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x48]
mov r14, qword [rsp + 0x68]
jmp 0x1800e430c
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, r14
test byte [rcx + 8], 0x24
jne case.0x1800e2fa8.32
movups xmm2, xmmword [rcx]
movups xmmword [rbp + 0xd0], xmm2
movups xmm0, xmmword [rcx + 0x10]
psrldq xmm2, 8
movups xmmword [rbp + 0xe0], xmm0
movups xmm1, xmmword [rcx + 0x20]
movd edx, xmm2
movups xmmword [rbp + 0xf0], xmm1
movsd xmm0, qword [rcx + 0x30]
movsd qword [rbp + 0x100], xmm0
test dl, 4
jne 0x1800e6bdd
test dl, 8
jne 0x1800e6b79
test dl, 2
je 0x1800e6bd4
mov edx, r10d
lea rcx, [rbp + 0xd0]
call fcn.1800261e0
mov r9, qword [rsp + 0x58]
xor r11d, r11d
lea r10d, [r11 + 1]
jmp 0x1800e6bcd
movsd xmm3, qword [rbp + 0xd0]
movaps xmm0, xmm3
call fcn.180033770
xorps xmm2, xmm2
cvtsi2sd xmm2, rax
ucomisd xmm3, xmm2
jp 0x1800e6bd4
jne 0x1800e6bd4
movabs rcx, 0x7fffffffffffffff
add rcx, rax
cmp rcx, 0xfffffffffffffffd
ja 0x1800e6bd4
mov qword [rbp + 0xd0], rax
mov ecx, 0x3e40
movzx eax, word [rbp + 0xd8]
and ax, cx
or ax, 4
mov word [rbp + 0xd8], ax
movzx edx, byte [rbp + 0xd8]
test dl, 4
je 0x1800e2fe6
mov rdi, qword [rbp + 0xd0]
jmp 0x1800e6bf7
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov rdi, qword [rcx + r14]
mov rax, qword [rsp + 0x38]
xor r9d, r9d
mov r8, rdi
mov dword [rbp - 0x48], r11d
xor edx, edx
movsxd rcx, dword [rax + 4]
mov rax, qword [rbx + 0x78]
mov rbx, qword [rax + rcx*8]
lea rax, [rbp - 0x48]
mov qword [rsp + 0x20], rax
mov rcx, qword [rbx + 0x38]
call fcn.18009ee60
mov qword [rbx + 0x58], rdi
xor r11d, r11d
mov byte [rbx + 2], 0
mov dword [rbx + 0x28], r11d
mov dword [rsp + 0x40], eax
mov eax, dword [rbp - 0x48]
mov byte [rbx + 3], r11b
mov dword [rbx + 0x2c], eax
test eax, eax
je 0x1800e6c8b
mov r12, qword [rsp + 0x38]
cmp dword [r12 + 8], r11d
jne 0x1800e4d3d
mov r9d, 0x15fa6
lea rax, [0x180131c04]
mov ecx, 0xb
lea r8, str.database_corruption
mov qword [rsp + 0x20], rax
lea rdx, str._s_at_line__d_of___.10s_
call fcn.1801003c0
mov eax, 0xb
jmp 0x1800e43b0
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x1800e43b0
mov rbx, qword [rsp + 0x48]
jmp 0x1800e3a14
mov rdi, qword [rsp + 0x38]
movsxd rax, dword [rdi + 8]
imul rdx, rax, 0x38
add rdx, qword [rbx + 0x68]
test word [rdx + 8], r8w
je 0x1800e6cd8
mov rcx, rdx
call fcn.180084360
mov r9, qword [rsp + 0x58]
xor r11d, r11d
mov rdx, rax
mov r8d, 0x2400
lea r10d, [r11 + 1]
jmp 0x1800e6ce1
mov eax, 4
mov word [rdx + 8], ax
mov rax, qword [rbx + 0x78]
mov r12, rdi
movsxd rcx, dword [rdi + 4]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x18]
mov qword [rdx], rax
mov rax, rdi
movsxd rcx, dword [rax + 4]
mov rax, qword [rbx + 0x78]
mov rdx, qword [rax + rcx*8]
inc qword [rdx + 0x18]
jmp 0x1800e3010
mov rsi, qword [rsp + 0x38]
mov rbx, r11
mov r15, qword [rsp + 0x48]
mov qword [rbp - 0x50], rbx
mov dword [rbp - 0x60], r11d
movsxd rax, dword [rsi + 8]
imul r14, rax, 0x38
add r14, qword [r15 + 0x68]
test word [r14 + 8], r8w
je 0x1800e6d44
mov rcx, r14
call fcn.180084360
mov r14, rax
jmp 0x1800e6d4e
mov eax, 4
mov word [r14 + 8], ax
movsxd rcx, dword [rsi + 4]
mov rax, qword [r15 + 0x78]
mov rsi, qword [rax + rcx*8]
test byte [rsi + 8], 2
jne 0x1800e6d87
mov rcx, qword [rsi + 0x38]
lea rdx, [rbp - 0x60]
call fcn.18009ede0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800ea858
cmp dword [rbp - 0x60], eax
je 0x1800e6dd6
mov ebx, 1
mov qword [rbp - 0x50], rbx
movabs r12, 0x7fffffffffffffff
mov rax, qword [rsp + 0x38]
movsxd rdx, dword [rax + 0xc]
test edx, edx
je 0x1800e6e40
mov rcx, qword [r15 + 0x100]
test rcx, rcx
je 0x1800e6e08
mov rax, qword [rcx + 8]
test rax, rax
je 0x1800e6dcc
nop word [rax + rax]
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x1800e6dc0
imul rdi, rdx, 0x38
add rdi, qword [rcx + 0x20]
jmp 0x1800e6e11
mov rbx, qword [rsi + 0x38]
mov rcx, rbx
call fcn.180076f30
mov rbx, qword [rbx + 0x30]
movabs r12, 0x7fffffffffffffff
mov qword [rbp - 0x50], rbx
cmp rbx, r12
jl 0x1800e6dff
or dword [rsi + 8], 2
jmp 0x1800e6d91
inc rbx
mov qword [rbp - 0x50], rbx
jmp 0x1800e6d91
imul rdi, rdx, 0x38
add rdi, qword [rsp + 0x68]
mov rcx, rdi
call fcn.1800ed8b0
mov rax, qword [rdi]
cmp rax, r12
je 0x1800ea853
test byte [rsi + 8], 2
jne 0x1800ea853
inc rax
cmp rbx, rax
cmovl rbx, rax
mov qword [rbp - 0x50], rbx
mov qword [rdi], rbx
test byte [rsi + 8], 2
je 0x1800e6eb9
xor r12d, r12d
mov edi, r12d
nop dword [rax]
lea rdx, [rbp - 0x50]
mov ecx, 8
call fcn.180100980
mov rbx, qword [rbp - 0x50]
movabs rax, 0x3fffffffffffffff
mov rcx, qword [rsi + 0x38]
and rbx, rax
inc rbx
lea rax, [rbp - 0x60]
mov r8, rbx
mov qword [rbp - 0x50], rbx
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor edx, edx
call fcn.18009ee60
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e6eaa
cmp dword [rbp - 0x60], r12d
jne 0x1800e6eb9
inc edi
cmp edi, 0x64
jl 0x1800e6e50
mov eax, 0xd
mov rsi, qword [rsp + 0x50]
mov ebx, 1
jmp 0x1800e43bd
mov byte [rsi + 3], 0
xor r11d, r11d
mov dword [rsi + 0x28], r11d
mov rsi, qword [rsp + 0x50]
mov qword [r14], rbx
mov rbx, r15
movzx r15d, byte [rsp + 0x30]
mov r14, qword [rsp + 0x68]
jmp 0x1800e3a14
mov rdi, qword [rsp + 0x38]
movsxd rax, dword [rdi + 8]
movsxd rcx, dword [rdi + 4]
imul rdx, rax, 0x38
mov rax, qword [rbx + 0x78]
add rdx, r14
mov rbx, qword [rax + rcx*8]
movsxd rax, dword [rdi + 0xc]
imul rcx, rax, 0x38
mov r8, qword [rcx + r14]
mov qword [rbp + 0x178], r8
cmp byte [rdi + 1], 0xfa
jne 0x1800e6f35
cmp qword [rsi + 0x130], 0
je 0x1800e6f35
movsx rcx, byte [rbx + 1]
mov rax, qword [rsi + 0x20]
mov rdi, qword [rdi + 0x10]
shl rcx, 5
mov rsi, qword [rcx + rax]
jmp 0x1800e6f3b
mov rdi, r11
mov rsi, r11
mov rcx, qword [rsp + 0x38]
mov r15, qword [rsp + 0x48]
movzx eax, word [rcx + 2]
test al, 1
je 0x1800e6f5c
inc dword [r15 + 0x3c]
movzx eax, word [rcx + 2]
mov r8, qword [rbp + 0x178]
test al, 0x20
je 0x1800e6f69
mov rax, qword [rsp + 0x50]
mov qword [rax + 0x38], r8
mov rax, qword [rdx + 0x10]
mov qword [rbp + 0x180], rax
mov eax, dword [rdx + 0xc]
mov dword [rbp + 0x194], eax
test byte [rcx + 2], 0x10
je 0x1800e6f89
mov r9d, dword [rbx + 0x2c]
jmp 0x1800e6f8c
mov r9d, r11d
mov eax, 0x4000
test word [rdx + 8], ax
je 0x1800e6fa1
mov eax, dword [rdx]
mov dword [rbp + 0x198], eax
jmp 0x1800e6fa8
mov dword [rbp + 0x198], r11d
mov qword [rbp + 0x170], r11
lea rdx, [rbp + 0x170]
movzx r8d, word [rcx + 2]
mov rcx, qword [rbx + 0x38]
and r8d, 0xa
call fcn.18009e270
xor r11d, r11d
mov byte [rbx + 3], 0
mov dword [rsp + 0x40], eax
mov dword [rbx + 0x28], r11d
test eax, eax
jne 0x1800ea858
test rdi, rdi
je 0x1800ea3a8
mov rax, qword [rsp + 0x38]
mov r8, rsi
mov rsi, qword [rsp + 0x50]
mov edx, 0x12
mov r9, qword [rdi]
test byte [rax + 2], 4
mov eax, 0x17
mov rcx, qword [rsi + 0x128]
cmovne edx, eax
mov rax, qword [rbp + 0x178]
mov qword [rsp + 0x20], rax
call qword [rsi + 0x130]
mov rbx, qword [rsp + 0x48]
movzx r15d, byte [rsp + 0x30]
jmp 0x1800e3a11
mov rax, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
cmp byte [rdx + 1], 0xfa
mov r15d, dword [rax + 8]
mov rax, qword [rbx + 0x78]
mov rdi, qword [rax + rcx*8]
jne 0x1800e709d
cmp qword [rsi + 0x130], 0
je 0x1800e709d
mov rax, qword [rsi + 0x20]
movsx rcx, byte [rdi + 1]
mov rsi, qword [rdx + 0x10]
shl rcx, 5
test byte [rdx + 2], 2
mov r14, qword [rcx + rax]
je 0x1800e70a3
cmp byte [rdi + 4], 0
je 0x1800e70a3
mov rbx, qword [rdi + 0x38]
mov rcx, rbx
call fcn.180076f30
mov rax, qword [rbx + 0x30]
mov rbx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x38]
mov qword [rdi + 0x58], rax
jmp 0x1800e70a3
mov r14, r11
mov rsi, r11
movzx edx, byte [rdx + 2]
mov rcx, qword [rdi + 0x38]
call fcn.18009dc20
xor r11d, r11d
mov dword [rsp + 0x40], eax
mov dword [rdi + 0x28], r11d
mov dword [rdi + 0x2c], r11d
test eax, eax
jne 0x1800ea66c
test r15b, 1
je 0x1800ea37c
inc dword [rbx + 0x3c]
mov rax, qword [rsp + 0x50]
mov r10, qword [rax + 0x130]
test r10, r10
je 0x1800ea393
test byte [rsi + 0x40], 0x80
jne 0x1800ea393
mov r9, qword [rsi]
lea edx, [r11 + 9]
mov rax, qword [rdi + 0x58]
mov r8, r14
mov rsi, qword [rsp + 0x50]
mov qword [rsp + 0x20], rax
mov rcx, qword [rsi + 0x128]
call r10
mov r14, qword [rsp + 0x68]
movzx r15d, byte [rsp + 0x30]
jmp 0x1800e3a11
mov eax, dword [rbx + 0x3c]
mov dword [rsi + 0x74], eax
add dword [rsi + 0x78], eax
mov dword [rbx + 0x3c], r11d
mov r13, qword [rsp + 0x60]
add r12, 0x18
mov rdi, qword [rbp - 0x20]
jmp 0x1800e2f81
mov rdi, qword [rsp + 0x38]
mov rax, qword [rbx + 0x78]
movsxd rcx, dword [rdi + 4]
mov rdx, qword [rax + rcx*8]
movsxd rax, dword [rdi + 0xc]
mov edi, dword [rdi + 0x10]
imul r15, rax, 0x38
mov rbx, qword [rdx + 0x38]
mov rsi, qword [rdx + 0x40]
add r15, r14
mov r14, qword [rbx + 0x30]
test r14, r14
jne 0x1800e7190
mov rcx, rsi
call fcn.1800e2000
mov qword [rbx + 0x30], rax
mov r14, rax
test rax, rax
je 0x1800ea862
mov word [rax + 0x10], di
cmp byte [rbx + 0x58], 0
je 0x1800e71cc
cmp byte [rbx + 0x59], 0
je 0x1800e71aa
mov rax, qword [rbx + 0x10]
mov r8, qword [rax + 0x28]
add rax, 0x14
jmp 0x1800e71d4
mov rdx, qword [rbx + 0x18]
mov rax, qword [rdx + 0x10]
movsxd rcx, dword [rax + 4]
lea rax, [rcx + rcx*4]
shl rax, 4
add rax, qword [rdx + 0x18]
mov r8, qword [rax + 0x28]
add rax, 0x14
jmp 0x1800e71d4
mov rax, qword [rbx + 0x38]
lea r8, [rax + 0x10]
mov edx, dword [rax]
mov r9, r14
mov rcx, rsi
call fcn.1800ef320
xor r11d, r11d
mov ecx, r11d
test edi, edi
jle 0x1800e7206
mov rax, qword [r14 + 8]
add rax, 8
test byte [rax], 1
jne 0x1800e95b1
inc ecx
add rax, 0x38
cmp ecx, edi
jl 0x1800e71f3
mov rdx, qword [r15 + 0x10]
xor r9d, r9d
mov ecx, dword [r15 + 0xc]
mov r8, r14
call fcn.1800eea70
mov r12, qword [rsp + 0x38]
xor r11d, r11d
mov r9, qword [rsp + 0x58]
mov dword [rsp + 0x40], r11d
lea r10d, [r11 + 1]
test eax, eax
jne 0x1800e4d48
mov rsi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x48]
mov r14, qword [rsp + 0x68]
movzx r15d, byte [rsp + 0x30]
jmp 0x1800e430c
mov rcx, qword [rsp + 0x38]
mov r15, qword [rsp + 0x48]
movsxd rax, dword [rcx + 8]
movsxd rcx, dword [rcx + 4]
imul rbx, rax, 0x38
mov rax, qword [r15 + 0x78]
add rbx, r14
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x38]
cmp byte [rax + 0x58], 0
je 0x1800e72b2
cmp byte [rax + 0x59], 0
je 0x1800e7290
mov rax, qword [rax + 0x10]
mov rsi, qword [rax + 0x28]
add rax, 0x14
jmp 0x1800e72ba
mov rdx, qword [rax + 0x18]
mov rax, qword [rdx + 0x10]
movsxd rcx, dword [rax + 4]
lea rax, [rcx + rcx*4]
shl rax, 4
add rax, qword [rdx + 0x18]
mov rsi, qword [rax + 0x28]
add rax, 0x14
jmp 0x1800e72ba
mov rax, qword [rax + 0x38]
lea rsi, [rax + 0x10]
movsxd rdi, dword [rax]
cmp dword [rbx + 0x20], edi
jge 0x1800e72d9
xor r8d, r8d
mov edx, edi
mov rcx, rbx
call fcn.1800ed720
test eax, eax
jne 0x1800ea867
jmp 0x1800e72e6
mov rax, qword [rbx + 0x18]
mov qword [rbx + 0x10], rax
and word [rbx + 8], 0x2d
mov dword [rbx + 0xc], edi
mov eax, 0x3e40
and word [rbx + 8], ax
mov r8, rdi
or word [rbx + 8], 0x10
mov rdx, rsi
mov rcx, qword [rbx + 0x10]
call sub.VCRUNTIME140.dll_memcpy
mov rax, qword [rsp + 0x38]
mov rbx, r15
mov rsi, qword [rsp + 0x50]
xor r11d, r11d
movzx r15d, byte [rsp + 0x30]
mov dword [rsp + 0x40], r11d
movsxd rcx, dword [rax + 0xc]
mov rax, qword [rbx + 0x78]
mov rcx, qword [rax + rcx*8]
mov dword [rcx + 0x28], r11d
jmp 0x1800e3a14
mov rdi, qword [rsp + 0x38]
mov r15, qword [rsp + 0x48]
movsxd rax, dword [rdi + 8]
imul rbx, rax, 0x38
add rbx, qword [r15 + 0x68]
test word [rbx + 8], r8w
je 0x1800e7360
mov rcx, rbx
call fcn.180084360
mov rbx, rax
jmp 0x1800e7369
mov eax, 4
mov word [rbx + 8], ax
movsxd rcx, dword [rdi + 4]
mov rax, qword [r15 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rdi, qword [rcx + 0x38]
mov rcx, rdi
call fcn.180076f30
mov edx, dword [rdi + 0x40]
cmp edx, dword [rsi + 0x7c]
ja 0x1800eaa41
mov r8, rbx
mov rcx, rdi
call fcn.1800ed6c0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e43b5
mov r12, qword [rsp + 0x38]
cmp dword [r12 + 0xc], eax
jne 0x1800ea358
movzx eax, word [rbx + 8]
bt ax, 0xc
jae 0x1800ea358
test al, 0x12
je 0x1800e73fe
bt ax, 0xe
jae 0x1800e73de
mov rcx, rbx
call fcn.1800ed4a0
test eax, eax
jne 0x1800ea8b9
cmp dword [rbx + 0x20], 0
je 0x1800e73ee
mov rax, qword [rbx + 0x18]
cmp qword [rbx + 0x10], rax
je 0x1800e73fe
mov rcx, rbx
call fcn.180108ea0
test eax, eax
jne 0x1800ea8b9
mov eax, 0xefff
and word [rbx + 8], ax
mov rbx, r15
movzx r15d, byte [rsp + 0x30]
jmp 0x1800e42fe
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rdi, rax, 0x38
add rdi, qword [rbx + 0x68]
test word [rdi + 8], r8w
je 0x1800e7453
mov rcx, rdi
call fcn.180084360
mov r9, qword [rsp + 0x58]
lea rdx, [0x180000000]
xor r11d, r11d
mov rdi, rax
mov r8d, 0x2400
lea r10d, [r11 + 1]
jmp 0x1800e745c
mov eax, 4
mov word [rdi + 8], ax
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [rbx + 0x78]
mov rbx, qword [rax + rcx*8]
cmp byte [rbx + 2], 0
je 0x1800e7482
mov rbx, qword [rsp + 0x48]
mov word [rdi + 8], r10w
jmp 0x1800e3b3f
cmp byte [rbx + 3], 0
je 0x1800e749d
mov rax, qword [rbx + 0x58]
mov rbx, qword [rsp + 0x48]
mov qword [rbp], rax
mov qword [rdi], rax
jmp 0x1800e3a11
cmp byte [rbx], 2
mov rcx, qword [rbx + 0x38]
jne 0x1800e74df
mov rbx, qword [rcx]
lea rdx, [rbp]
mov rax, qword [rbx]
call qword [rax + 0x60]
mov rdx, rbx
mov rbx, qword [rsp + 0x48]
mov rcx, rbx
mov dword [rsp + 0x40], eax
call fcn.1800f1310
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x1800eaa2a
mov rax, qword [rbp]
mov qword [rdi], rax
jmp 0x1800e3a11
cmp byte [rcx], 0
je 0x1800e74fd
mov rcx, rbx
call fcn.180078a50
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e43b0
xor r11d, r11d
jmp 0x1800e7502
mov dword [rsp + 0x40], r11d
cmp byte [rbx + 2], 0
je 0x1800e751d
mov rbx, qword [rsp + 0x48]
mov r10d, 1
mov word [rdi + 8], r10w
jmp 0x1800e3a1a
mov rbx, qword [rbx + 0x38]
mov rcx, rbx
call fcn.180076f30
mov rax, qword [rbx + 0x30]
mov rbx, qword [rsp + 0x48]
mov qword [rbp], rax
mov qword [rdi], rax
jmp 0x1800e3a11
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [rbx + 0x78]
mov rcx, qword [rax + rcx*8]
mov byte [rcx + 2], 1
mov dword [rcx + 0x28], r11d
cmp byte [rcx], 0
jne 0x1800ea3d5
mov rcx, qword [rcx + 0x38]
call fcn.18009cf60
jmp 0x1800e3a11
mov rax, qword [rsp + 0x38]
mov dword [rbp - 0x44], r11d
movsxd rcx, dword [rax + 4]
mov rax, qword [rbx + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rbx + 0x38]
cmp dil, 0x81
jne 0x1800e759d
mov dword [rbx + 0x2c], 0xffffffff
cmp byte [rcx], 0
je 0x1800ea3d5
lea rdx, [rbp - 0x44]
call fcn.18009ede0
mov dword [rsp + 0x40], eax
xor r11d, r11d
mov eax, dword [rbp - 0x44]
mov byte [rbx + 2], al
mov byte [rbx + 3], 0
mov dword [rbx + 0x28], r11d
cmp dword [rsp + 0x40], r11d
jne 0x1800ea939
mov r12, qword [rsp + 0x38]
cmp dword [r12 + 8], r11d
jle 0x1800ea361
mov r9, qword [rsp + 0x58]
lea r10d, [r11 + 1]
test eax, eax
jne 0x1800e4d48
mov rbx, qword [rsp + 0x48]
jmp 0x1800e430c
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [rbx + 0x78]
mov rcx, qword [rax + rcx*8]
mov rbx, qword [rcx + 0x38]
mov rcx, rbx
call fcn.1800803a0
mov dword [rsp + 0x40], eax
mov r11d, eax
test eax, eax
jne 0x1800e7630
xor r12d, r12d
mov rcx, rbx
mov edi, r12d
call fcn.180080110
mov r11d, eax
mov dword [rsp + 0x40], eax
jmp 0x1800e7657
cmp eax, 0x10
jne 0x1800e7651
mov r12, qword [rsp + 0x38]
mov r10d, 1
xor r11d, r11d
mov dword [rbp - 0x78], r10d
mov dword [rsp + 0x40], r11d
jmp 0x1800e4d43
mov edi, dword [rbp - 0x78]
xor r12d, r12d
mov eax, dword [rsp + 0x40]
mov dword [rbp - 0x78], edi
test eax, eax
jne 0x1800ea889
mov dword [rsp + 0x40], r11d
test edi, edi
jne 0x1800e9ce2
mov rcx, rbx
call fcn.18009fec0
test rax, rax
js 0x1800e76ae
mov rcx, rax
call fcn.1800c9fd0
mov r12, qword [rsp + 0x38]
movsx ecx, ax
cmp ecx, dword [r12 + 0xc]
jge 0x1800e76b3
mov r10d, 1
mov dword [rsp + 0x40], r11d
mov dword [rbp - 0x78], r10d
xor r11d, r11d
jmp 0x1800e4d43
mov r12, qword [rsp + 0x38]
mov dword [rbp - 0x78], edi
mov dword [rsp + 0x40], r11d
jmp 0x1800e42f9
inc dword [rbx + 0xdc]
mov rax, qword [rsp + 0x38]
mov edi, r10d
movsxd rcx, dword [rax + 4]
mov rax, qword [rbx + 0x78]
mov rsi, qword [rax + rcx*8]
cmp byte [rsi], 1
mov rbx, qword [rsi + 0x38]
jne 0x1800e773c
cmp byte [rbx + 0x58], 0
mov dword [rsp + 0x40], r11d
jne 0x1800e770e
cmp qword [rbx + 0x38], 0
lea rdx, [rbx + 0x38]
je 0x1800e7767
lea rcx, [rbx + 0x60]
mov edi, r11d
call fcn.18010b950
mov dword [rsp + 0x40], eax
xor r11d, r11d
jmp 0x1800e7767
mov rcx, rbx
call fcn.18010a890
mov edx, eax
mov rcx, rbx
call fcn.18010aa00
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e7709
mov rcx, rbx
call fcn.18010b680
xor r11d, r11d
mov dword [rsp + 0x40], eax
mov edi, r11d
jmp 0x1800e7767
mov rcx, rbx
call fcn.1800803a0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e779c
xor eax, eax
mov rcx, rbx
mov edi, eax
call fcn.180080110
mov dword [rsp + 0x40], eax
xor r11d, r11d
mov byte [rsi + 3], 0
mov dword [rsi + 0x28], r11d
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x1800ea66c
mov r12, qword [rsp + 0x38]
lea r10d, [rax + 1]
mov r9, qword [rsp + 0x58]
mov byte [rsi + 2], dil
test edi, edi
jne 0x1800e4d48
mov rsi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x48]
jmp 0x1800e430c
cmp eax, 0x10
jne 0x1800e775c
xor r11d, r11d
lea edi, [rax - 0xf]
mov dword [rsp + 0x40], r11d
jmp 0x1800e775f
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [rbx + 0x78]
mov rdi, qword [rax + rcx*8]
mov rbx, qword [rdi + 0x38]
cmp byte [rbx + 0x58], 0
je 0x1800e783a
cmp byte [rbx + 0x59], 0
je 0x1800e7808
mov rcx, qword [rbx + 0x10]
call fcn.180109a60
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e7880
mov rax, qword [rbx + 0x10]
xor r11d, r11d
cmp qword [rax + 0x18], r11
jne 0x1800e7875
mov rbx, qword [rsp + 0x48]
mov eax, 0x65
mov dword [rsp + 0x40], eax
jmp 0x1800e78b1
mov rcx, qword [rbx + 0x18]
lea rdx, [rbp - 0x40]
mov dword [rbp - 0x40], r11d
call fcn.1801093f0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e7880
xor r11d, r11d
cmp dword [rbp - 0x40], r11d
je 0x1800e7883
mov rbx, qword [rsp + 0x48]
mov eax, 0x65
mov dword [rsp + 0x40], eax
jmp 0x1800e78b1
mov rdx, qword [rbx + 0x38]
mov rax, qword [rdx + 8]
mov qword [rbx + 0x38], rax
mov qword [rdx + 8], r11
cmp qword [rbx + 0x40], 0
jne 0x1800e785c
mov rcx, rsi
call fcn.18010b580
xor r11d, r11d
cmp qword [rbx + 0x38], 0
mov eax, 0x65
mov rbx, qword [rsp + 0x48]
cmovne eax, r11d
mov dword [rsp + 0x40], eax
jmp 0x1800e78b1
mov eax, dword [rsp + 0x40]
mov rbx, qword [rsp + 0x48]
jmp 0x1800e78b1
xor r11d, r11d
mov rbx, qword [rsp + 0x48]
jmp 0x1800e78b1
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [rbx + 0x78]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rsp + 0x38]
mov rcx, qword [rdi + 0x38]
mov edx, dword [rax + 0xc]
call qword [rax + 0x10]
mov dword [rsp + 0x40], eax
xor r11d, r11d
mov dword [rdi + 0x28], r11d
test eax, eax
jne 0x1800e78f7
mov byte [rdi + 2], al
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
inc dword [rbx + rax*4 + 0xd4]
mov r8d, 0x2400
mov r15, qword [rsp + 0x48]
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rsp + 0x58]
lea rax, [rax + rcx*8]
mov qword [rsp + 0x38], rax
jmp 0x1800e7914
mov r15, qword [rsp + 0x48]
cmp eax, 0x65
jne 0x1800e43b5
mov dword [rsp + 0x40], r11d
mov byte [rdi + 2], 1
mov r8d, 0x2400
mov eax, dword [rsi + 0x170]
test eax, eax
jne 0x1800ead01
mov r12, qword [rbp - 0x20]
cmp r12, r13
jb 0x1800ea3f5
nop
mov rdx, qword [rsi + 0x1e0]
test rdx, rdx
je 0x1800ea3eb
mov eax, dword [rsi + 0x1f0]
mov rcx, qword [rsi + 0x1e8]
add r13, rax
mov qword [rsp + 0x60], r13
call rdx
test eax, eax
jne 0x1800ea9f9
cmp r12, r13
jae 0x1800e7930
mov rbx, qword [rsp + 0x48]
movzx r15d, byte [rsp + 0x30]
jmp 0x1800e3a11
mov rax, qword [rsp + 0x38]
mov r15, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rbx + 0x78]
mov rdi, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rbx, r14
test byte [rcx + 2], 1
je 0x1800e79a4
inc dword [r15 + 0x3c]
mov eax, 0x4000
test word [rbx + 8], ax
je 0x1800e79c7
mov rcx, rbx
call fcn.1800ed4a0
test eax, eax
jne 0x1800e43b5
mov rcx, qword [rsp + 0x38]
xor r11d, r11d
movsxd rax, dword [rbx + 0xc]
mov qword [rbp + 0x230], rax
mov rax, qword [rbx + 0x10]
mov qword [rbp + 0x228], rax
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
add rcx, r14
mov qword [rbp + 0x240], rcx
mov rcx, qword [rsp + 0x38]
movzx eax, word [rcx + 0x10]
mov word [rbp + 0x248], ax
movzx r8d, word [rcx + 2]
test r8b, 0x10
je 0x1800e7a10
mov r9d, dword [rdi + 0x2c]
jmp 0x1800e7a13
mov r9d, r11d
mov rcx, qword [rdi + 0x38]
lea rdx, [rbp + 0x228]
and r8d, 0xa
call fcn.18009e270
xor r11d, r11d
mov dword [rsp + 0x40], eax
mov dword [rdi + 0x28], r11d
test eax, eax
jne 0x1800e43b5
mov rbx, qword [rsp + 0x48]
movzx r15d, byte [rsp + 0x30]
jmp 0x1800e3a14
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [rbx + 0x78]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rbx, rax, 0x38
mov eax, 0x4000
add rbx, r14
test word [rbx + 8], ax
je 0x1800e7a86
mov rcx, rbx
call fcn.1800ed4a0
test eax, eax
jne 0x1800e43b0
mov rdx, rbx
mov rcx, rdi
call fcn.1800f03c0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e43b0
mov rbx, qword [rsp + 0x48]
jmp 0x1800e3a11
mov rax, qword [rsp + 0x38]
lea rdx, [rbp + 0x140]
xor r9d, r9d
xor r8d, r8d
movsxd rcx, dword [rax + 4]
mov rax, qword [rbx + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x38]
mov rax, qword [rbx + 0x40]
mov rdi, qword [rbx + 0x38]
mov qword [rbp + 0x140], rax
movzx eax, word [rcx + 0xc]
mov word [rbp + 0x150], ax
mov byte [rbp + 0x152], 0
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
lea rax, [rbp - 0x10]
add rcx, r14
mov qword [rsp + 0x20], rax
mov qword [rbp + 0x148], rcx
mov rcx, rdi
call fcn.18009ee60
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e43b0
cmp dword [rbp - 0x10], eax
jne 0x1800e7b3c
mov dl, 4
mov rcx, rdi
call fcn.18009dc20
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e43b0
mov r12, qword [rsp + 0x38]
jmp 0x1800e7b4e
mov r12, qword [rsp + 0x38]
cmp word [r12 + 2], 0
jne 0x1800ea87f
mov r9, qword [rsp + 0x58]
xor r11d, r11d
mov dword [rbx + 0x28], r11d
mov dword [rbx + 0x2c], r11d
mov rbx, qword [rsp + 0x48]
jmp 0x1800e31b3
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [rbx + 0x78]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x38]
cmp byte [rax], 0
je 0x1800e7bb1
mov rcx, rbx
call fcn.180078a50
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e43b0
mov r9, qword [rsp + 0x58]
lea r10d, [rax + 1]
xor r11d, r11d
lea rdx, [0x180000000]
mov r8d, 0x2400
jmp 0x1800e7bb6
mov dword [rsp + 0x40], r11d
cmp byte [rbx + 2], 0
jne 0x1800e7c8f
mov rdx, qword [rbx + 0x38]
lea r8, [rbp + 8]
mov rcx, rsi
mov qword [rbp + 8], r11
call fcn.1800ec450
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e43b0
mov rax, qword [rsp + 0x38]
mov r8d, 0x2400
cmp byte [rax], 0x85
jne 0x1800e7c38
movsxd rcx, dword [rax + 0xc]
xor r11d, r11d
mov r15, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
mov rax, qword [r15 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rbp + 8]
mov byte [rdx + 2], 0
mov qword [rdx + 0x58], rax
mov rax, qword [rsp + 0x38]
mov byte [rdx + 3], 1
mov rax, qword [rax + 0x10]
mov qword [rdx + 0x20], rax
mov qword [rdx + 0x30], rbx
mov rbx, r15
movzx r15d, byte [rsp + 0x30]
jmp 0x1800e35a9
movsxd rax, dword [rax + 8]
mov rbx, qword [rsp + 0x48]
imul rcx, rax, 0x38
add rcx, qword [rbx + 0x68]
test word [rcx + 8], r8w
je 0x1800e7c72
call fcn.180084360
mov r9, qword [rsp + 0x58]
mov rcx, rax
mov rax, qword [rbp + 8]
mov r8d, 0x2400
xor r11d, r11d
mov qword [rcx], rax
jmp 0x1800e35a9
mov r9, qword [rsp + 0x58]
mov eax, 4
mov word [rcx + 8], ax
xor r11d, r11d
mov rax, qword [rbp + 8]
mov qword [rcx], rax
jmp 0x1800e35a9
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
add rcx, r14
test word [rcx + 8], r8w
je 0x1800e7cb5
call fcn.180108f50
mov rbx, qword [rsp + 0x48]
jmp 0x1800e3a11
mov rbx, qword [rsp + 0x48]
mov word [rcx + 8], r10w
jmp 0x1800e3b3f
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [rbx + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx + 3], 0
je 0x1800e3b3f
call fcn.1800eb940
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e43b0
jmp 0x1800e3a11
mov rax, qword [rsp + 0x38]
cmp dil, 0x28
movsxd rcx, dword [rax + 4]
mov rax, qword [rbx + 0x78]
mov rdx, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x38]
mov rax, qword [rdx + 0x40]
mov rbx, qword [rdx + 0x38]
mov qword [rbp + 0x158], rax
movzx eax, word [rcx + 0x10]
mov word [rbp + 0x168], ax
sbb al, al
mov byte [rbp + 0x16a], al
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
add rcx, r14
mov qword [rbp + 0x160], rcx
mov rcx, rbx
call fcn.180076f30
mov r10d, dword [rbx + 0x40]
lea rax, [r10 - 1]
cmp rax, 0x7ffffffe
ja 0x1800ea898
mov qword [rbp + 0x130], rsi
xor r12d, r12d
mov word [rbp + 0x110], r12w
mov dword [rbp + 0x128], r12d
mov rax, qword [rbx + 0x88]
movzx ecx, word [rbx + 0x44]
mov edx, dword [rax + 0x58]
sub edx, dword [rbx + 0x38]
cmp ecx, edx
jle 0x1800e7d95
test edx, edx
mov ecx, edx
cmovs ecx, r12d
mov rdx, qword [rbx + 0x38]
mov qword [rbp + 0x118], rdx
cmp r10d, ecx
ja 0x1800e7dba
mov eax, 0x1010
mov dword [rbp + 0x114], r10d
mov word [rbp + 0x110], ax
jmp 0x1800e7de4
lea r9, [rbp + 0x108]
mov r8d, r10d
xor edx, edx
mov rcx, rbx
call fcn.1800ed5b0
test eax, eax
jne 0x1800ea889
mov rdx, qword [rbp + 0x118]
mov r10d, dword [rbp + 0x114]
xor r9d, r9d
lea r8, [rbp + 0x158]
mov ecx, r10d
call fcn.1800eea70
mov r8d, 0x2400
mov ebx, eax
test word [rbp + 0x110], r8w
jne 0x1800e7e11
cmp dword [rbp + 0x128], r12d
je 0x1800e7e23
lea rcx, [rbp + 0x108]
call fcn.180108f00
mov r8d, 0x2400
mov rax, qword [rsp + 0x38]
xor r11d, r11d
mov r12, qword [rsp + 0x38]
mov r9, qword [rsp + 0x58]
mov dword [rsp + 0x40], r11d
movzx ecx, byte [rax]
lea r10d, [r11 + 1]
lea eax, [rbx + 1]
neg ebx
and cl, 1
cmovne ebx, eax
test ebx, ebx
jg 0x1800e4d48
mov rbx, qword [rsp + 0x48]
mov ecx, r11d
mov dword [rsp + 0x40], ecx
jmp 0x1800e3010
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rdi, rax, 0x38
add rdi, qword [rbx + 0x68]
test word [rdi + 8], r8w
je 0x1800e7e91
mov rcx, rdi
call fcn.180084360
mov rdi, rax
xor r11d, r11d
mov r10d, 1
mov word [rdi + 8], r10w
mov eax, dword [rsi + 0xd8]
inc eax
cmp dword [rsi + 0xcc], eax
jg 0x1800ea8a3
mov rax, qword [rsp + 0x38]
mov dword [rbp - 0x3c], r11d
movsxd r15, dword [rax + 0xc]
mov esi, dword [rax + 4]
mov r14, r15
mov rax, qword [rsp + 0x50]
shl r14, 5
mov rax, qword [rax + 0x20]
mov rbx, qword [rax + r14 + 8]
cmp byte [rbx + 0x11], 0
je 0x1800e7ee6
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x1800e7ee6
mov rcx, rbx
call fcn.18002a4b0
lea r8, [rbp - 0x3c]
mov edx, esi
mov rcx, rbx
call fcn.180029c20
cmp byte [rbx + 0x11], 0
mov dword [rsp + 0x40], eax
je 0x1800e7f0c
sub dword [rbx + 0x14], 1
jne 0x1800e7f0c
mov rcx, rbx
call fcn.1801056b0
movsxd rdx, dword [rbp - 0x3c]
mov eax, 4
mov word [rdi + 8], ax
mov eax, dword [rsp + 0x40]
mov qword [rdi], rdx
test eax, eax
jne 0x1800ea66c
mov rsi, qword [rsp + 0x50]
test edx, edx
je 0x1800ea34e
mov rax, qword [rsp + 0x38]
mov r9, qword [rsi + 0x20]
mov r8d, dword [rax + 4]
mov rcx, qword [r9 + r14 + 0x18]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x1800e7f6a
mov rcx, qword [rax + 0x10]
cmp dword [rcx + 0x38], edx
jne 0x1800e7f5d
mov dword [rcx + 0x38], r8d
mov rax, qword [rax]
test rax, rax
jne 0x1800e7f50
mov rcx, qword [r9 + r14 + 0x18]
mov rax, qword [rcx + 0x28]
test rax, rax
je 0x1800e7f88
mov rcx, qword [rax + 0x10]
cmp dword [rcx + 0x58], edx
jne 0x1800e7f80
mov dword [rcx + 0x58], r8d
mov rax, qword [rax]
test rax, rax
jne 0x1800e7f73
mov rbx, qword [rsp + 0x48]
lea eax, [r15 + 1]
mov r14, qword [rsp + 0x68]
movzx r15d, byte [rsp + 0x30]
mov byte [rsp + 0x70], al
jmp 0x1800e3a11
mov rax, qword [rsp + 0x38]
lea r8, [rbp - 0x58]
mov r12, qword [rsp + 0x38]
mov dword [rbp - 0x58], r11d
mov rcx, qword [rsi + 0x20]
cmp dword [rax + 0xc], 0
movsxd rax, dword [rax + 8]
mov edx, dword [r12 + 4]
cmove r8, r11
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.18009d020
cmp dword [r12 + 0xc], 0
mov dword [rsp + 0x40], eax
je 0x1800e8007
mov eax, dword [rbp - 0x58]
add dword [rbx + 0x3c], eax
mov rax, r12
movsxd rax, dword [rax + 0xc]
test eax, eax
jle 0x1800e8003
imul rcx, rax, 0x38
movsxd rax, dword [rbp - 0x58]
add qword [rcx + r14], rax
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x1800e43b0
mov r9, qword [rsp + 0x58]
jmp 0x1800e31b0
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [rbx + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx], 1
jne 0x1800e8040
mov rdx, qword [rcx + 0x38]
mov rcx, rsi
call fcn.1800eff80
jmp 0x1800e3a11
mov rcx, qword [rcx + 0x38]
xor r8d, r8d
mov edx, dword [rcx + 0x50]
mov rcx, qword [rcx + 8]
call fcn.18009d020
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e43b0
jmp 0x1800e3a11
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rdi, rax, 0x38
add rdi, qword [rbx + 0x68]
test word [rdi + 8], r8w
je 0x1800e808c
mov rcx, rdi
call fcn.180084360
mov rdi, rax
xor r11d, r11d
jmp 0x1800e8095
mov eax, 4
mov word [rdi + 8], ax
mov rax, qword [rsp + 0x38]
mov dword [rbp - 0x38], r11d
movsxd rcx, dword [rax + 4]
mov esi, dword [rax + 0xc]
mov rax, qword [rsp + 0x50]
shl rcx, 5
mov rax, qword [rax + 0x20]
mov rbx, qword [rcx + rax + 8]
cmp byte [rbx + 0x11], 0
je 0x1800e80ce
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x1800e80ce
mov rcx, rbx
call fcn.18002a4b0
mov r8d, esi
lea rdx, [rbp - 0x38]
mov rcx, rbx
call fcn.180029710
cmp byte [rbx + 0x11], 0
mov dword [rsp + 0x40], eax
je 0x1800e80f9
sub dword [rbx + 0x14], 1
jne 0x1800e80f9
mov rcx, rbx
call fcn.1801056b0
mov eax, dword [rsp + 0x40]
mov rsi, qword [rsp + 0x50]
test eax, eax
jne 0x1800e43b0
mov eax, dword [rbp - 0x38]
mov rbx, qword [rsp + 0x48]
mov qword [rdi], rax
jmp 0x1800e3a11
mov rax, qword [rsp + 0x38]
xor r9d, r9d
inc byte [rsi + 0x6a]
xor r8d, r8d
mov rcx, rsi
mov qword [rsp + 0x20], r11
mov rdx, qword [rax + 0x10]
call fcn.1800fefb0
dec byte [rsi + 0x6a]
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e43b0
jmp 0x1800e3a11
mov rax, qword [rsp + 0x38]
cmp qword [rax + 0x10], 0
movsxd rbx, dword [rax + 4]
jne 0x1800e81aa
mov rcx, qword [rsi + 0x20]
mov rax, rbx
shl rax, 5
mov rcx, qword [rax + rcx + 0x18]
call fcn.1800d62f0
mov r8, qword [rsp + 0x48]
mov r9d, 1
and dword [rsi + 0x2c], 0xffffffef
add r8, 0xa8
mov edx, ebx
mov rcx, rsi
call fcn.1800c6940
or dword [rsi + 0x2c], 1
mov rbx, qword [rsp + 0x48]
mov dword [rsp + 0x40], eax
and dword [rbx + 0xc8], 0xfffffffc
xor r12d, r12d
jmp 0x1800e82bd
mov r15, qword [rsp + 0x48]
lea r9, str.sqlite_master
mov qword [rbp + 0x70], rsi
mov rdx, rbx
mov dword [rbp + 0x80], ebx
mov dword [rbp + 0x88], r11d
shl rdx, 5
lea rax, [r15 + 0xa8]
mov qword [rbp + 0x78], rax
mov rax, qword [rsi + 0x20]
mov rcx, qword [rax + rdx + 8]
mov rax, qword [rcx + 8]
mov ecx, dword [rax + 0x40]
mov rax, qword [rsp + 0x38]
mov dword [rbp + 0x90], ecx
mov rcx, rsi
mov r8, qword [rsi + 0x20]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x20], rax
mov r8, qword [r8 + rdx]
lea rdx, str.SELECTFROM__w_._s_WHERE__s_ORDER_BY_rowid
call fcn.1800ca1a0
mov rbx, rax
mov rcx, rsi
test rax, rax
je 0x1800ea8b4
xor r12d, r12d
mov byte [rsi + 0xb5], 1
lea r9, [rbp + 0x70]
mov dword [rbp + 0x84], r12d
lea r8, [fcn.1800c6190]
mov dword [rbp + 0x8c], r12d
mov rdx, rax
mov qword [rsp + 0x20], r12
call fcn.1800fefb0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e82a4
mov eax, dword [rbp + 0x84]
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e82a4
cmp dword [rbp + 0x8c], r12d
jne 0x1800e82a4
lea rax, [0x180131c04]
mov r9d, 0x16553
lea r8, str.database_corruption
mov qword [rsp + 0x20], rax
lea rdx, str._s_at_line__d_of___.10s_
lea ecx, [r12 + 0xb]
call fcn.1801003c0
mov dword [rsp + 0x40], 0xb
mov rdx, rbx
mov rcx, rsi
call fcn.1800a5670
mov eax, dword [rsp + 0x40]
mov rbx, r15
mov byte [rsi + 0xb5], r12b
test eax, eax
je 0x1800e3b13
mov rcx, rsi
call fcn.1800d4380
mov eax, dword [rsp + 0x40]
mov r15, qword [rsp + 0x48]
cmp eax, 7
je 0x1800ead33
mov ebx, 1
jmp 0x1800e43bd
mov rax, qword [rsp + 0x38]
mov rcx, rsi
mov edx, dword [rax + 4]
call fcn.18009aa10
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e43b0
jmp 0x1800e3a11
mov rax, qword [rsp + 0x38]
xor r8d, r8d
movsxd rcx, dword [rax + 4]
mov rdx, qword [rax + 0x10]
shl rcx, 5
add rcx, qword [rsi + 0x20]
mov rcx, qword [rcx + 0x18]
add rcx, 8
call fcn.1800c5750
test rax, rax
je 0x1800e8353
cmp qword [rsi + 0x2d8], 0
jne 0x1800e8348
mov ecx, 0xffffffff
add dword [rax + 0x3c], ecx
jne 0x1800e8353
mov rdx, rax
mov rcx, rsi
call fcn.180032eb0
or dword [rsi + 0x2c], 1
jmp 0x1800e3a11
mov rax, qword [rsp + 0x38]
xor r8d, r8d
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov rax, qword [rsp + 0x38]
add rcx, 0x20
mov rdx, qword [rax + 0x10]
call fcn.1800c5750
mov rdx, rax
test rax, rax
je 0x1800e8353
mov rax, qword [rax + 0x18]
mov rcx, qword [rax + 0x10]
cmp rcx, rdx
jne 0x1800e83b5
mov rcx, qword [rdx + 0x28]
mov qword [rax + 0x10], rcx
mov rcx, rsi
call fcn.1800b14a0
or dword [rsi + 0x2c], 1
jmp 0x1800e3a11
test rcx, rcx
je 0x1800e83ea
nop word [rax + rax]
mov rax, qword [rcx + 0x28]
cmp rax, rdx
je 0x1800e83e2
mov rcx, rax
test rax, rax
jne 0x1800e83c0
mov rcx, rsi
call fcn.1800b14a0
or dword [rsi + 0x2c], 1
jmp 0x1800e3a11
mov rax, qword [rdx + 0x28]
mov qword [rcx + 0x28], rax
mov rcx, rsi
call fcn.1800b14a0
or dword [rsi + 0x2c], 1
jmp 0x1800e3a11
mov rbx, qword [rsp + 0x38]
xor r8d, r8d
mov rax, qword [rsi + 0x20]
movsxd rcx, dword [rbx + 4]
mov rdx, qword [rbx + 0x10]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
add rcx, 0x38
call fcn.1800c5750
mov rbx, rax
test rax, rax
je 0x1800ea32d
mov rcx, qword [rax + 0x30]
cmp qword [rax + 0x28], rcx
jne 0x1800e847b
mov rdx, qword [rax + 8]
add rcx, 8
xor r8d, r8d
call fcn.180038930
mov rdx, qword [rax + 0x10]
test rdx, rdx
je 0x1800e847b
mov rax, qword [rdx + 0x68]
add rdx, 0x68
test rax, rax
je 0x1800e847b
nop dword [rax]
cmp rax, rbx
je 0x1800e8474
lea rdx, [rax + 0x40]
mov rax, qword [rax + 0x40]
test rax, rax
jne 0x1800e8460
jmp 0x1800e847b
mov rax, qword [rax + 0x40]
mov qword [rdx], rax
mov rdx, rbx
mov rcx, rsi
call fcn.1800a69d0
or dword [rsi + 0x2c], 1
mov rbx, qword [rsp + 0x48]
jmp 0x1800e3a11
mov rcx, qword [rsp + 0x38]
lea r10, [rbp - 0x30]
mov r9, qword [rsp + 0x38]
mov rdx, qword [rsi + 0x20]
mov qword [rsp + 0x28], r10
movsxd rax, dword [rcx + 0xc]
mov r8, qword [rcx + 0x10]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 4]
add r8, 4
imul rbx, rax, 0x38
movzx eax, word [r9 + 2]
mov ecx, dword [rdi + r14]
add rbx, r14
mov r9d, dword [r9 + 8]
inc ecx
shl rax, 5
mov dword [rsp + 0x20], ecx
mov rcx, rsi
mov rdx, qword [rax + rdx + 8]
call fcn.18009e6c0
mov r12d, 0x2400
mov rsi, rax
test word [rbx + 8], r12w
je 0x1800e850a
mov rcx, rbx
call fcn.180108f50
mov r10d, 1
jmp 0x1800e8515
mov r10d, 1
mov word [rbx + 8], r10w
mov eax, dword [rbp - 0x30]
test eax, eax
je 0x1800e854e
test rsi, rsi
je 0x1800ead1a
dec eax
mov r9b, 1
movsxd rcx, eax
mov r8d, 0xffffffff
sub qword [rdi + r14], rcx
lea rax, [fcn.1800ffdc0]
mov rcx, rbx
mov qword [rsp + 0x20], rax
mov rdx, rsi
call fcn.1800edc40
test byte [rbx + 8], 2
je 0x1800e8566
cmp byte [rbx + 0xa], r15b
je 0x1800e8566
movzx edx, r15b
mov rcx, rbx
call fcn.1800ee0b0
mov rsi, qword [rsp + 0x50]
mov r8d, r12d
mov r15, qword [rsp + 0x48]
jmp 0x1800e7914
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 8]
add rbx, r14
imul rdi, rax, 0x38
test byte [rbx + 8], 0x10
jne 0x1800e85a6
mov rcx, rbx
call fcn.1800edb30
test eax, eax
jne 0x1800ead10
mov rdx, qword [rdi + r14]
mov rcx, qword [rbx + 0x10]
call fcn.1800d5120
mov rbx, qword [rsp + 0x48]
jmp 0x1800e3a11
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, r14
movzx eax, word [rdi + 8]
test al, 0x10
je 0x1800e8678
mov rbx, qword [rdi + 0x10]
movzx eax, word [rbx + 0x32]
test al, 2
jne 0x1800e860e
test al, 1
jne 0x1800e8606
mov rcx, qword [rbx + 0x10]
call fcn.180090a10
mov qword [rbx + 0x10], rax
mov r10d, 1
movzx eax, word [rbx + 0x32]
mov r8d, 0x2400
or ax, 3
mov word [rbx + 0x32], ax
mov rax, qword [rbx + 0x10]
test rax, rax
je 0x1800e8674
mov rdi, qword [rax]
mov rax, qword [rax + 8]
mov qword [rbx + 0x10], rax
test rax, rax
jne 0x1800e8635
mov rcx, rbx
call fcn.1800d4fd0
mov r8d, 0x2400
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, r14
test word [rcx + 8], r8w
je 0x1800e865e
mov rdx, rdi
call fcn.18010a010
mov r15, qword [rsp + 0x48]
jmp 0x1800e790e
mov r15, qword [rsp + 0x48]
mov eax, 4
mov qword [rcx], rdi
mov word [rcx + 8], ax
jmp 0x1800e7914
movzx eax, word [rdi + 8]
test r8w, ax
je 0x1800e868b
mov rcx, rdi
call fcn.180108f50
jmp 0x1800e78cc
mov word [rdi + 8], r10w
jmp case.0x1800e2fa8.11
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
mov edi, dword [rcx + 0x10]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
add rbx, r14
imul rsi, rax, 0x38
test byte [rbx + 8], 0x10
jne 0x1800e86c6
mov rcx, rbx
call fcn.1800edb30
test eax, eax
jne 0x1800ead0b
test edi, edi
je 0x1800e86e9
mov r8, qword [rsi + r14]
mov edx, edi
mov rcx, qword [rbx + 0x10]
call fcn.1800d5190
test eax, eax
jne 0x1800e9ce2
test edi, edi
js 0x1800ea328
mov rdx, qword [rsi + r14]
mov rcx, qword [rbx + 0x10]
call fcn.1800d5120
mov rsi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x48]
jmp 0x1800e3a11
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 0xc]
mov r12, qword [rcx + 0x10]
imul r15, rax, 0x38
add r15, r14
cmp word [rcx + 2], 0
je 0x1800e8744
mov rax, qword [rbx + 0x100]
mov rcx, qword [r12 + 0x20]
test rax, rax
je 0x1800e8744
cmp qword [rax + 0x38], rcx
je 0x1800e3b39
mov rax, qword [rax + 8]
test rax, rax
jne 0x1800e8731
mov eax, dword [rbx + 0x110]
cmp eax, dword [rsi + 0xa4]
jge 0x1800ea925
test byte [r15 + 8], 0x10
jne 0x1800e88ac
mov edx, dword [r12 + 0x10]
mov ecx, dword [r12 + 0xc]
add ecx, edx
test edx, edx
lea esi, [rcx + 1]
cmovne esi, ecx
lea eax, [rsi + 2]
imul ecx, eax, 7
mov eax, dword [r12 + 8]
add ecx, edx
add eax, 7
jns 0x1800e878a
add eax, 7
sar eax, 3
lea edi, [rax + rcx*8]
mov rcx, qword [rsp + 0x50]
movsxd rbx, edi
mov rdx, rbx
call fcn.1800a5800
mov r14, rax
test rax, rax
je 0x1800ead0b
mov r8, rbx
xor edx, edx
mov rcx, rax
call sub.VCRUNTIME140.dll_memset
mov eax, 0x2400
test word [r15 + 8], ax
jne 0x1800e87cc
cmp dword [r15 + 0x20], 0
je 0x1800e87d4
mov rcx, r15
call fcn.180108f00
mov rbx, qword [rsp + 0x48]
mov eax, 0x410
mov rcx, qword [rsp + 0x38]
sub rcx, qword [rsp + 0x58]
mov word [r15 + 8], ax
lea rax, [0x1800ebbe0]
mov qword [r15 + 0x10], r14
mov dword [r15 + 0xc], edi
mov qword [r15 + 0x30], rax
mov qword [r14], rbx
mov dword [r14 + 0x60], esi
mov eax, dword [r12 + 0x10]
mov dword [r14 + 0x64], eax
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [r14 + 0x54], edx
mov rax, qword [rbx + 0x68]
mov qword [r14 + 0x20], rax
mov eax, dword [rbx + 0x28]
mov dword [r14 + 0x5c], eax
mov rax, qword [rbx + 0x78]
mov qword [r14 + 0x28], rax
mov eax, dword [rbx + 0x2c]
mov dword [r14 + 0x50], eax
mov rax, qword [rbx + 0x88]
mov qword [r14 + 0x10], rax
mov eax, dword [rbx + 0x90]
mov dword [r14 + 0x58], eax
mov rax, qword [r12 + 0x20]
mov qword [r14 + 0x38], rax
movsxd rax, esi
mov rsi, qword [rsp + 0x50]
add rax, 2
imul rcx, rax, 0x38
lea rax, [r14 + 0x70]
add rcx, r14
cmp rax, rcx
je 0x1800e88a1
mov edx, 0x80
nop dword [rax]
mov word [rax + 8], dx
mov qword [rax + 0x28], rsi
add rax, 0x38
cmp rax, rcx
jne 0x1800e8890
mov eax, dword [rbx + 0x110]
xor r11d, r11d
jmp 0x1800e88b0
mov r14, qword [r15 + 0x10]
inc eax
lea rdx, [r14 + 0x70]
mov dword [rbx + 0x110], eax
mov rax, qword [rbx + 0x100]
mov qword [r14 + 8], rax
mov rax, qword [rsi + 0x38]
mov qword [r14 + 0x40], rax
mov eax, dword [rbx + 0x3c]
mov dword [r14 + 0x68], eax
mov rax, qword [rbx]
mov qword [rsp + 0x68], rdx
mov ecx, dword [rax + 0x74]
mov dword [r14 + 0x6c], ecx
mov rax, qword [rbx + 0x120]
mov qword [r14 + 0x48], rax
mov qword [rbx + 0x120], r11
mov dword [rbx + 0x3c], r11d
mov qword [rbx + 0x100], r14
mov qword [rbx + 0x68], rdx
movsxd rcx, dword [r14 + 0x60]
mov dword [rbx + 0x28], ecx
movzx eax, word [r14 + 0x64]
mov dword [rbx + 0x2c], eax
imul rcx, rcx, 0x38
add rdx, rcx
mov qword [rbx + 0x78], rdx
movsxd rax, dword [r12 + 0x10]
lea rcx, [rdx + rax*8]
mov qword [r14 + 0x30], rcx
mov eax, dword [r12 + 8]
add eax, 7
cdq
and edx, 7
add eax, edx
xor edx, edx
sar eax, 3
movsxd r8, eax
call sub.VCRUNTIME140.dll_memset
mov rcx, qword [r12]
mov r15, qword [rsp + 0x48]
mov r14, qword [rsp + 0x68]
mov qword [rbx + 0x88], rcx
mov eax, dword [r12 + 8]
mov dword [rbx + 0x90], eax
lea rax, [rcx - 0x18]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x58], rcx
jmp 0x1800e790e
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul r9, rax, 0x38
add r9, qword [rbx + 0x68]
test word [r9 + 8], r8w
je 0x1800e89a7
mov rcx, r9
call fcn.180084360
xor r11d, r11d
mov r9, rax
lea r10d, [r11 + 1]
jmp 0x1800e89b1
mov eax, 4
mov word [r9 + 8], ax
mov r8, qword [rbx + 0x100]
movsxd rax, dword [r8 + 0x54]
lea rcx, [rax + rax*2]
mov rax, qword [r8 + 0x10]
mov edx, dword [rax + rcx*8 + 4]
mov rax, qword [rsp + 0x38]
add edx, dword [rax + 4]
movsxd rax, edx
imul rcx, rax, 0x38
add rcx, qword [r8 + 0x20]
mov r8d, 0x2400
test word [r9 + 8], r8w
je 0x1800e89f3
mov rdx, rcx
mov rcx, r9
jmp 0x1800e3a06
movups xmm0, xmmword [rcx]
mov r12, qword [rsp + 0x38]
mov eax, 0x800
movups xmmword [r9], xmm0
movsd xmm1, qword [rcx + 0x10]
movsd qword [r9 + 0x10], xmm1
test word [rcx + 8], ax
jne 0x1800ea367
mov eax, 0xf3ff
and word [r9 + 8], ax
mov eax, 0x1000
or word [r9 + 8], ax
mov r9, qword [rsp + 0x58]
jmp 0x1800e3010
mov eax, dword [rsi + 0x30]
bt rax, 0x13
mov rax, qword [rsp + 0x38]
jae 0x1800e8a56
movsxd rax, dword [rax + 8]
add qword [rsi + 0x2d0], rax
jmp 0x1800e3b3f
cmp dword [rax + 4], 0
movsxd rax, dword [rax + 8]
mov r12, qword [rsp + 0x38]
je 0x1800e8a7e
add qword [rsi + 0x2c8], rax
mov r13, qword [rsp + 0x60]
add r12, 0x18
mov rdi, qword [rbp - 0x20]
jmp 0x1800e2f81
add qword [rbx + 0x50], rax
mov r13, qword [rsp + 0x60]
add r12, 0x18
mov rdi, qword [rbp - 0x20]
jmp 0x1800e2f81
cmp dword [r12 + 4], 0
je 0x1800e8aca
cmp qword [rsi + 0x2c8], 0
jne case.0x1800e2fa8.85
cmp qword [rsi + 0x2d0], 0
je 0x1800e4d48
mov r13, qword [rsp + 0x60]
add r12, 0x18
mov rdi, qword [rbp - 0x20]
jmp 0x1800e2f81
cmp qword [rbx + 0x50], 0
jne case.0x1800e2fa8.85
cmp qword [rsi + 0x2d0], 0
je 0x1800e4d48
mov r13, qword [rsp + 0x60]
add r12, 0x18
mov rdi, qword [rbp - 0x20]
jmp 0x1800e2f81
mov rcx, qword [rbx + 0x100]
test rcx, rcx
je 0x1800e8b2f
mov rax, qword [rcx + 8]
test rax, rax
je 0x1800e8b1c
nop word [rax + rax]
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x1800e8b10
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, qword [rcx + 0x20]
jmp 0x1800e8b3f
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, r14
mov rcx, rdi
call fcn.1800ed8b0
mov r12, qword [rsp + 0x38]
movsxd rax, dword [r12 + 8]
imul rbx, rax, 0x38
add rbx, r14
mov rcx, rbx
call fcn.1800ed8b0
mov rax, qword [rbx]
xor r11d, r11d
mov r8d, 0x2400
cmp qword [rdi], rax
jge 0x1800ea367
mov rbx, qword [rsp + 0x48]
lea r10d, [r11 + 1]
mov r9, qword [rsp + 0x58]
mov qword [rdi], rax
jmp 0x1800e3010
mov rax, qword [rsp + 0x38]
mov r12, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rdx, qword [rcx + r14]
test rdx, rdx
jle 0x1800e3010
mov rax, r12
movsxd rax, dword [rax + 0xc]
sub rdx, rax
mov qword [rcx + r14], rdx
jmp 0x1800e4d48
mov rcx, qword [rsp + 0x38]
mov r15, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rdx, rax, 0x38
add rdx, qword [r15 + 0x68]
test word [rdx + 8], r8w
je 0x1800e8c03
mov rcx, rdx
call fcn.180084360
mov r9, qword [rsp + 0x58]
xor r11d, r11d
mov rdx, rax
lea r10d, [r11 + 1]
jmp 0x1800e8c0c
mov eax, 4
mov word [rdx + 8], ax
mov r8, qword [rbx + r14]
test r8, r8
jle 0x1800e8c59
mov rcx, qword [rdi + r14]
test rcx, rcx
cmovle rcx, r11
test rcx, rcx
js 0x1800e8c37
movabs rax, 0x7fffffffffffffff
sub rax, r8
cmp rax, rcx
jl 0x1800e8c59
lea rax, [r8 + rcx]
mov rbx, r15
movzx r15d, byte [rsp + 0x30]
mov r8d, 0x2400
mov qword [rdx], rax
lea rdx, [0x180000000]
jmp 0x1800e3b3f
mov rax, 0xffffffffffffffff
mov rbx, r15
movzx r15d, byte [rsp + 0x30]
mov r8d, 0x2400
mov qword [rdx], rax
lea rdx, [0x180000000]
jmp 0x1800e3b3f
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r14]
test rax, rax
je 0x1800e3b3f
mov r12, qword [rsp + 0x38]
jle 0x1800e4d48
dec rax
mov qword [rcx + r14], rax
jmp 0x1800e4d48
mov rax, qword [rsp + 0x38]
movabs rdi, 0x8000000000000000
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r14]
cmp rax, rdi
jle 0x1800e8cd6
dec rax
mov qword [rcx + r14], rax
mov r12, qword [rsp + 0x38]
test rax, rax
je 0x1800e4d48
mov r13, qword [rsp + 0x60]
add r12, 0x18
mov rdi, qword [rbp - 0x20]
jmp 0x1800e2f81
mov rax, qword [rsp + 0x38]
mov rcx, rsi
movzx ebx, word [rax + 2]
mov edi, ebx
lea rdx, [rbx*8 + 0x68]
call fcn.1800a5800
mov r15, qword [rsp + 0x48]
mov r8, rax
test rax, rax
je 0x1800ea8b9
xor r13d, r13d
add rdi, 6
mov qword [rax + 0x10], r13
lea rcx, [rax + rdi*8]
mov qword [rax], rcx
mov edi, 1
mov rax, qword [rsp + 0x38]
mov word [rcx + 8], di
mov qword [rcx + 0x28], rsi
mov dword [rcx + 0x20], r13d
mov rcx, qword [rax + 0x10]
mov qword [r8 + 8], rcx
mov rcx, rax
sub rcx, qword [rsp + 0x58]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov rax, qword [rsp + 0x38]
mov dword [r8 + 0x20], edx
mov qword [r8 + 0x18], r15
mov byte [r8 + 0x28], r13b
mov dword [r8 + 0x24], r13d
mov byte [r8 + 0x29], bl
mov byte [rax + 1], 0xf0
mov qword [rax + 0x10], r8
mov byte [rax], 0x9b
jmp 0x1800e8dac
mov r15, qword [rsp + 0x48]
xor r13d, r13d
mov rax, qword [rsp + 0x38]
lea edi, [r13 + 1]
mov rbx, qword [rax + 0x10]
movsxd rax, dword [rax + 0xc]
imul r10, rax, 0x38
add r10, r14
cmp qword [rbx + 0x10], r10
je 0x1800e8e15
mov qword [rbx + 0x10], r10
movzx eax, byte [rbx + 0x29]
mov edx, eax
sub rdx, 1
lea r9d, [rax - 1]
js 0x1800e8e15
mov rsi, qword [rsp + 0x38]
lea r8, [rdx + 6]
lea r8, [rbx + r8*8]
nop dword [rax]
nop word [rax + rax]
mov eax, dword [rsi + 8]
lea r8, [r8 - 8]
add eax, r9d
dec r9d
cdqe
imul rcx, rax, 0x38
add rcx, r14
sub rdx, 1
mov qword [r8 + 8], rcx
jns 0x1800e8df0
mov rsi, qword [rsp + 0x50]
inc dword [r10 + 0xc]
lea r8, [rbx + 0x30]
mov r12, qword [rsp + 0x38]
mov rcx, rbx
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x29]
cmp dword [r12 + 4], 0
je 0x1800e8e3a
call qword [rax + 0x30]
jmp 0x1800e8e3d
call qword [rax + 0x18]
mov eax, dword [rbx + 0x24]
test eax, eax
je 0x1800ea358
jle 0x1800e8ea4
mov rcx, qword [rbx]
test rcx, rcx
jne 0x1800e8e57
mov rax, r13
jmp 0x1800e8e8b
movzx edx, word [rcx + 8]
mov r8d, 0x202
movzx eax, dx
and ax, r8w
cmp ax, r8w
jne 0x1800e8e7a
cmp byte [rcx + 0xa], 1
jne 0x1800e8e7a
mov rax, qword [rcx + 0x10]
jmp 0x1800e8e8b
test dl, 1
je 0x1800e8e84
mov rax, r13
jmp 0x1800e8e8b
mov dl, 1
call fcn.180107610
mov r8, rax
lea rdx, [0x18012a598]
mov rcx, r15
call fcn.1800e2e10
mov eax, dword [rbx + 0x24]
mov dword [rsp + 0x40], eax
cmp byte [rbx + 0x28], 0
je 0x1800e8ee1
mov rax, r12
movsxd rax, dword [rax - 0x14]
test eax, eax
je 0x1800e8edd
imul rcx, rax, 0x38
mov eax, 0x2400
add rcx, r14
test word [rcx + 8], ax
je 0x1800e8ed1
mov rdx, rdi
call fcn.18010a010
jmp 0x1800e8edd
mov eax, 4
mov qword [rcx], rdi
mov word [rcx + 8], ax
mov byte [rbx + 0x28], 0
mov rax, qword [rbx]
mov r8d, 0x2400
test word [rax + 8], r8w
jne 0x1800e8ef7
cmp dword [rax + 0x20], 0
je 0x1800e8f08
mov rcx, rax
call fcn.180108f00
mov rax, qword [rbx]
mov r8d, 0x2400
xor r11d, r11d
mov r10d, 1
mov word [rax + 8], r10w
mov eax, dword [rsp + 0x40]
mov dword [rbx + 0x24], r11d
test eax, eax
jne 0x1800ead58
mov rbx, qword [rsp + 0x48]
movzx r15d, byte [rsp + 0x30]
mov r9, qword [rsp + 0x58]
jmp 0x1800e3010
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
mov rsi, qword [rcx + 0x10]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
add rbx, r14
test eax, eax
je 0x1800e8fd4
imul rdi, rax, 0x38
xorps xmm0, xmm0
movups xmmword [rbp + 0x1b8], xmm0
movups xmmword [rbp + 0x1c8], xmm0
xor eax, eax
add rdi, r14
mov qword [rbp + 0x1e8], rax
movups xmmword [rbp + 0x1d8], xmm0
test word [rdi + 8], r8w
je 0x1800e8f90
mov rcx, rdi
call fcn.180108f50
jmp 0x1800e8f95
mov word [rdi + 8], r10w
lea rcx, [rbp + 0x1b8]
mov qword [rbp + 0x1b8], rdi
mov qword [rbp + 0x1c8], rbx
mov qword [rbp + 0x1c0], rsi
call qword [rsi + 0x28]
mov eax, dword [rbp + 0x1dc]
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
mov eax, dword [rsp + 0x40]
add rbx, r14
jmp 0x1800e8fe3
mov rdx, rsi
mov rcx, rbx
call fcn.1800ed500
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800ea942
movzx eax, word [rbx + 8]
test al, 2
je 0x1800e9009
cmp byte [rbx + 0xa], r15b
je 0x1800e9009
movzx edx, r15b
mov rcx, rbx
call fcn.1800ee0b0
movzx eax, word [rbx + 8]
test al, 0x12
je 0x1800ea328
bt ax, 0xe
mov ecx, dword [rbx + 0xc]
jae 0x1800e901d
add ecx, dword [rbx]
mov rax, qword [rbx + 0x28]
mov rsi, qword [rsp + 0x50]
cmp ecx, dword [rax + 0x7c]
jg 0x1800eaa3c
mov rbx, qword [rsp + 0x48]
jmp 0x1800e3a11
lea rax, [rbp + 0x260]
mov dword [rbp + 0x258], r11d
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x25c]
mov rax, qword [rsp + 0x38]
mov rcx, rsi
mov dword [rbp + 0x260], 0xffffffff
mov dword [rbp + 0x25c], 0xffffffff
mov r8d, dword [rax + 8]
mov edx, dword [rax + 4]
call fcn.1800a0aa0
mov dword [rsp + 0x40], eax
test eax, eax
je 0x1800e909f
cmp eax, 5
jne 0x1800e43b0
xor eax, eax
mov r12d, 1
mov dword [rsp + 0x40], eax
mov dword [rbp + 0x258], r12d
mov rax, qword [rsp + 0x38]
mov r8d, 0x2400
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
add rbx, r14
xor eax, eax
mov edi, eax
lea r15d, [rax + 4]
nop dword [rax]
movsxd rax, dword [rbp + rdi*4 + 0x258]
test word [rbx + 8], r8w
je 0x1800e90e2
mov rdx, rax
mov rcx, rbx
call fcn.18010a010
mov r8d, 0x2400
jmp 0x1800e90ea
mov qword [rbx], rax
mov word [rbx + 8], r15w
inc rdi
add rbx, 0x38
cmp rdi, 3
jl 0x1800e90c0
movzx r15d, byte [rsp + 0x30]
xor r11d, r11d
jmp 0x1800e359f
mov rdi, qword [rsp + 0x38]
movsxd rax, dword [rdi + 8]
imul r13, rax, 0x38
add r13, qword [rbx + 0x68]
test word [r13 + 8], r8w
je 0x1800e9131
mov rcx, r13
call fcn.180084360
xor r11d, r11d
mov r13, rax
lea r10d, [r11 + 1]
jmp 0x1800e913b
mov eax, 4
mov word [r13 + 8], ax
mov rax, qword [rsi + 0x20]
mov edx, dword [rdi + 0xc]
movsxd rcx, dword [rdi + 4]
shl rcx, 5
cmp edx, 0xffffffff
mov r15, qword [rcx + rax + 8]
mov rax, qword [r15 + 8]
mov rdi, qword [rax]
movzx r14d, byte [rdi + 9]
mov esi, r14d
cmovne esi, edx
cmp byte [rdi + 0x14], 3
jae 0x1800e917b
mov rax, qword [rdi + 0x50]
cmp qword [rax], 0
je 0x1800e917e
cmp qword [rdi + 0x60], 0
jle 0x1800e917e
mov esi, r14d
cmp byte [rdi + 0x13], 0
lea rcx, [0x1801226bc]
jne 0x1800e9192
mov rcx, qword [rdi + 0xd0]
cmp esi, 5
jne 0x1800e920c
test rcx, rcx
je 0x1800e91d2
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x1800e91a3
and eax, 0x3fffffff
je 0x1800e91d2
cmp byte [rdi + 0x11], 0
mov rax, qword [rdi + 0x48]
mov rcx, qword [rax]
jne 0x1800e91d2
cmp byte [rdi + 8], 0
jne 0x1800e920c
cmp dword [rcx], 2
jl 0x1800e91d2
cmp qword [rcx + 0x68], 0
jne 0x1800e920c
mov esi, r14d
mov eax, dword [rsp + 0x40]
test eax, eax
je 0x1800e91e0
mov esi, r14d
mov edx, esi
mov rcx, rdi
call fcn.1800ccbd0
mov ecx, 0xa02
mov word [r13 + 8], cx
cmp eax, 6
jne 0x1800e9387
xor r12d, r12d
mov qword [r13 + 0x10], r12
mov eax, r12d
jmp 0x1800e93c1
cmp esi, r14d
je 0x1800e91d5
cmp r14d, 5
je 0x1800e921c
cmp esi, 5
jne 0x1800e91d5
mov r12, qword [rsp + 0x50]
cmp byte [r12 + 0x5f], 0
je 0x1800ea96f
cmp dword [r12 + 0xcc], 1
jg 0x1800ea96f
cmp r14d, 5
jne 0x1800e934d
cmp qword [rdi + 0x120], 0
mov ebx, r11d
jne 0x1800e92cd
mov dword [rbp - 0x34], r11d
movzx eax, byte [rdi + 0x15]
cmp al, 1
jb 0x1800e9264
cmp al, r14b
jne 0x1800e9287
cmp byte [rdi + 0x11], 0
jne 0x1800e927d
mov rcx, qword [rdi + 0x48]
mov edx, r10d
mov rax, qword [rcx]
call qword [rax + 0x38]
mov ebx, eax
test eax, eax
jne 0x1800e9287
cmp byte [rdi + 0x15], 5
je 0x1800e9287
mov byte [rdi + 0x15], 1
test ebx, ebx
jne 0x1800e9335
mov rax, qword [rdi]
lea r9, [rbp - 0x34]
mov rdx, qword [rdi + 0x128]
xor r8d, r8d
mov rcx, rax
call qword [rax + 0x38]
mov ebx, eax
test eax, eax
jne 0x1800e9335
cmp dword [rbp - 0x34], eax
je 0x1800e92c3
mov rcx, rdi
call fcn.180084e70
mov ebx, eax
test eax, eax
jne 0x1800e9335
cmp qword [rdi + 0x120], 0
je 0x1800e9335
mov rcx, rdi
call fcn.180084b70
mov ebx, eax
test eax, eax
jne 0x1800e9335
mov rax, qword [rdi + 0x110]
mov rdx, r12
movzx r8d, byte [rdi + 0xf]
mov r9d, dword [rdi + 0xbc]
mov rcx, qword [rdi + 0x120]
mov qword [rsp + 0x20], rax
call fcn.1800f1ec0
mov ebx, eax
mov dword [rsp + 0x40], eax
xor eax, eax
mov rcx, rdi
mov qword [rdi + 0x120], rax
call fcn.180084c00
test ebx, ebx
je 0x1800e9335
cmp byte [rdi + 8], 0
jne 0x1800e9335
mov edx, 1
mov rcx, rdi
call fcn.1800859b0
jmp 0x1800e91dd
mov dword [rsp + 0x40], ebx
test ebx, ebx
jne 0x1800e91dd
mov edx, esi
mov rcx, rdi
call fcn.1800ccbd0
jmp 0x1800e936a
cmp r14d, 4
jne 0x1800e935f
lea edx, [r14 - 2]
mov rcx, rdi
call fcn.1800ccbd0
cmp dword [rsp + 0x40], 0
jne 0x1800e91dd
xor eax, eax
mov rcx, r15
mov edx, eax
cmp esi, 5
sete dl
inc edx
call fcn.1800a0470
mov dword [rsp + 0x40], eax
jmp 0x1800e91d9
cdqe
lea rcx, [0x180000000]
mov rcx, qword [rcx + rax*8 + 0x123560]
mov qword [r13 + 0x10], rcx
test rcx, rcx
jne 0x1800e93a9
xor r12d, r12d
mov eax, r12d
jmp 0x1800e93c1
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x1800e93b0
and eax, 0x3fffffff
xor r12d, r12d
movzx r15d, byte [rsp + 0x30]
mov dword [r13 + 0xc], eax
mov byte [r13 + 0xa], 1
cmp r15b, 1
je 0x1800e93e2
movzx edx, r15b
mov rcx, r13
call fcn.1800ee0b0
mov eax, dword [rsp + 0x40]
mov rsi, qword [rsp + 0x50]
test eax, eax
jne 0x1800ea889
mov rbx, qword [rsp + 0x48]
mov r14, qword [rsp + 0x68]
jmp 0x1800e3a11
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
test eax, eax
je 0x1800e9418
imul r9, rax, 0x38
add r9, r14
jmp 0x1800e941b
mov r9, r11
mov rax, qword [rsp + 0x38]
lea rcx, [rbx + 0xa8]
mov rdx, rsi
mov r8d, dword [rax + 4]
call fcn.1800d5b40
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e43b0
jmp 0x1800e3a11
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x20]
shl rcx, 5
mov rsi, qword [rcx + rax + 8]
cmp byte [rsi + 0x11], 0
mov rdi, qword [rsi + 8]
je 0x1800e9475
inc dword [rsi + 0x14]
cmp byte [rsi + 0x12], 0
jne 0x1800e9475
mov rcx, rsi
call fcn.18002a4b0
cmp byte [rdi + 0x21], 0
jne 0x1800e9488
mov dword [rsp + 0x40], 0x65
jmp 0x1800e9585
mov rax, qword [rdi + 0x18]
mov r14d, dword [rdi + 0x40]
mov edx, r14d
mov rcx, qword [rax + 0x50]
mov ebx, dword [rcx + 0x24]
mov rcx, rdi
bswap ebx
mov r8d, ebx
call fcn.180038610
mov r15d, eax
cmp r14d, eax
jb 0x1800e9543
cmp ebx, r14d
jae 0x1800e9543
test ebx, ebx
je 0x1800e9539
mov rcx, qword [rdi + 0x10]
test rcx, rcx
je 0x1800e94df
xor r8d, r8d
xor edx, edx
call fcn.180094c90
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e9575
mov rax, qword [rdi + 0x10]
test rax, rax
je 0x1800e94fd
nop dword [rax + rax]
and byte [rax + 1], 0xfb
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x1800e94f0
xor r9d, r9d
mov r8d, r14d
mov edx, r15d
mov rcx, rdi
call fcn.180079330
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e9575
mov rcx, qword [rdi + 0x18]
mov rcx, qword [rcx + 0x70]
call fcn.1800cd2e0
mov edx, dword [rdi + 0x40]
mov dword [rsp + 0x40], eax
mov rax, qword [rdi + 0x18]
bswap edx
mov rcx, qword [rax + 0x50]
mov dword [rcx + 0x1c], edx
jmp 0x1800e9575
mov dword [rsp + 0x40], 0x65
jmp 0x1800e9575
lea rax, [0x180131c04]
mov r9d, 0x10b14
lea r8, str.database_corruption
mov qword [rsp + 0x20], rax
lea rdx, str._s_at_line__d_of___.10s_
mov ecx, 0xb
call fcn.1801003c0
mov dword [rsp + 0x40], 0xb
movzx r15d, byte [rsp + 0x30]
mov r14, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x48]
cmp byte [rsi + 0x11], 0
je 0x1800e9599
sub dword [rsi + 0x14], 1
jne 0x1800e9599
mov rcx, rsi
call fcn.1801056b0
mov eax, dword [rsp + 0x40]
test eax, eax
je 0x1800e41c2
cmp eax, 0x65
jne 0x1800ea66c
xor r11d, r11d
mov dword [rsp + 0x40], r11d
mov r12, qword [rsp + 0x38]
jmp 0x1800e4d3d
mov rax, qword [rsp + 0x38]
cmp dword [rax + 4], 0
jne 0x1800e95fb
mov ecx, dword [rax + 8]
mov rax, qword [rsi + 8]
test rax, rax
je 0x1800e3b3f
inc ecx
and ecx, 3
and dword [rax + 0xc8], 0xfffffffc
or dword [rax + 0xc8], ecx
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x1800e95e0
jmp 0x1800e3b3f
mov eax, dword [rax + 8]
inc eax
xor eax, dword [rbx + 0xc8]
and eax, 3
xor dword [rbx + 0xc8], eax
jmp 0x1800e3b3f
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [rbx + 0x78]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x38]
or byte [rax + 1], 0x40
jmp 0x1800e3b3f
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [rbx + 0x78]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x38]
and byte [rax + 1], 0xbf
jmp 0x1800e3b3f
mov rax, qword [rsp + 0x38]
movzx esi, byte [rax + 0xc]
test sil, sil
jne 0x1800e9676
mov rax, qword [rsp + 0x50]
mov eax, dword [rax + 0x30]
bt rax, 0xa
jb 0x1800ea555
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov edi, dword [rax + 8]
mov rax, qword [rsp + 0x50]
shl rcx, 5
mov rax, qword [rax + 0x20]
mov rbx, qword [rcx + rax + 8]
mov eax, r11d
mov dword [rsp + 0x40], eax
cmp byte [rbx + 0x11], 0
je 0x1800e9773
inc dword [rbx + 0x14]
inc sil
cmp byte [rbx + 0x12], 0
jne 0x1800e96b7
mov rcx, rbx
call fcn.18002a4b0
xor r11d, r11d
movzx r8d, sil
mov edx, edi
mov rcx, rbx
call fcn.18008b470
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e9742
mov r14, qword [rbx + 8]
mov rax, qword [r14 + 0x78]
test rax, rax
je 0x1800e96f3
nop word [rax + rax]
cmp dword [rax + 8], edi
jne 0x1800e96ea
cmp qword [rax], rbx
je 0x1800e971f
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x1800e96e0
mov ecx, 0x18
call fcn.1800ca1d0
test rax, rax
je 0x1800e9730
xor r11d, r11d
mov qword [rax + 0xc], r11
mov dword [rax + 0x14], r11d
mov dword [rax + 8], edi
mov qword [rax], rbx
mov rcx, qword [r14 + 0x78]
mov qword [rax + 0x10], rcx
mov qword [r14 + 0x78], rax
cmp sil, byte [rax + 0xc]
jbe 0x1800e9729
mov byte [rax + 0xc], sil
mov dword [rsp + 0x40], r11d
jmp 0x1800e9739
mov eax, 7
mov dword [rsp + 0x40], eax
mov r14, qword [rsp + 0x68]
mov eax, dword [rsp + 0x40]
cmp byte [rbx + 0x11], 0
je 0x1800e975a
sub dword [rbx + 0x14], 1
jne 0x1800e975a
mov rcx, rbx
call fcn.1801056b0
mov eax, dword [rsp + 0x40]
mov r9, qword [rsp + 0x58]
lea rdx, [0x180000000]
xor r11d, r11d
mov r8d, 0x2400
lea r10d, [r11 + 1]
test eax, eax
jne 0x1800ea9a4
mov rsi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x48]
jmp 0x1800e3b3f
movsxd rdx, dword [rsi + 0x1f4]
mov rbx, qword [r12 + 0x10]
mov dword [rsp + 0x40], r11d
test edx, edx
jle 0x1800e97c0
cmp qword [rsi + 0x218], 0
jne 0x1800e97c0
mov eax, 6
mov dword [rsp + 0x40], eax
test rbx, rbx
je 0x1800e43b0
jmp 0x1800e9870
test rbx, rbx
jne 0x1800e97d4
mov rbx, qword [rsp + 0x48]
mov dword [rsp + 0x40], r11d
jmp 0x1800e3010
mov rax, qword [rbx + 0x10]
mov rdi, qword [rax]
cmp qword [rdi + 0x70], 0
je 0x1800e9870
mov rcx, r11
test edx, edx
jle 0x1800e9809
mov rax, qword [rsi + 0x218]
cmp qword [rax], rbx
je 0x1800e9897
inc rcx
add rax, 8
cmp rcx, rdx
jl 0x1800e97f4
mov rcx, rsi
call fcn.180078990
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e9870
mov rcx, qword [rbx + 0x10]
call qword [rdi + 0x70]
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e9870
mov edx, dword [rsi + 0x2c4]
add edx, dword [rsi + 0x2c0]
movsxd rcx, dword [rsi + 0x1f4]
mov rax, qword [rsi + 0x218]
mov qword [rax + rcx*8], rbx
inc dword [rsi + 0x1f4]
inc dword [rbx + 0x18]
test edx, edx
je 0x1800e9870
cmp qword [rdi + 0xa0], 0
je 0x1800e9870
mov dword [rbx + 0x20], edx
dec edx
mov rcx, qword [rbx + 0x10]
call qword [rdi + 0xa0]
mov dword [rsp + 0x40], eax
mov rdx, qword [rbx + 0x10]
mov rbx, qword [rsp + 0x48]
mov rcx, rbx
call fcn.1800f1310
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x1800eaa2a
mov r9, qword [rsp + 0x58]
jmp 0x1800e31b0
mov dword [rsp + 0x40], r11d
jmp 0x1800e9870
mov rax, qword [rsp + 0x38]
lea rcx, [rbp + 0x98]
xorps xmm0, xmm0
mov qword [rbp + 0x98], r11
xorps xmm1, xmm1
mov qword [rbp + 0xc8], r11
movdqu xmmword [rbp + 0xa0], xmm0
mov qword [rbp + 0xc0], rsi
movdqu xmmword [rbp + 0xb0], xmm1
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
add rdx, r14
call fcn.1800ed400
mov rcx, qword [rbp + 0xa0]
mov r13d, 0x202
mov dword [rsp + 0x40], eax
movzx eax, cx
and ax, r13w
cmp ax, r13w
jne 0x1800e9915
cmp byte [rbp + 0xa2], 1
jne 0x1800e9915
mov rax, qword [rbp + 0xa8]
jmp 0x1800e9933
test cl, 1
jne 0x1800e9a83
mov dl, 1
lea rcx, [rbp + 0x98]
call fcn.180107610
mov rcx, qword [rbp + 0xa0]
mov r12, qword [rsp + 0x38]
test rax, rax
je 0x1800e9a88
movsxd rcx, dword [r12 + 4]
mov rdx, rax
mov r8, qword [rsi + 0x20]
add rbx, 0xa8
shl rcx, 5
mov r8, qword [rcx + r8]
mov rcx, rsi
call fcn.1800aebd0
mov r14, qword [rsp + 0x50]
xor r8d, r8d
mov rsi, rax
mov rcx, qword [rax + 0x58]
mov rdi, qword [rcx]
lea rcx, [r14 + 0x1f8]
mov rdx, rdi
call fcn.180038930
mov r8, qword [rax + 0x10]
test r8, r8
je 0x1800e9a4f
mov rcx, qword [r8]
mov r9, qword [rcx + 8]
test r9, r9
je 0x1800e9a4f
cmp qword [rcx + 0x28], 0
je 0x1800e9a4f
mov rdx, rsi
mov qword [rsp + 0x20], rbx
mov rcx, r14
call fcn.18010bcf0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e99de
mov rax, qword [rsi + 0x60]
test rax, rax
je 0x1800e99de
nop
cmp qword [rax], r14
je 0x1800e99f7
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x1800e99d0
mov rcx, qword [rbp + 0xa0]
mov rsi, r14
mov r14, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x48]
jmp 0x1800e9a88
mov rcx, r14
call fcn.180078990
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e99de
mov rdx, qword [rsi + 0x60]
mov rsi, r14
test rdx, rdx
je 0x1800e9a21
cmp qword [rdx], rsi
je 0x1800e9a21
mov rdx, qword [rdx + 0x28]
test rdx, rdx
jne 0x1800e9a13
movsxd rcx, dword [rsi + 0x1f4]
mov rax, qword [rsi + 0x218]
mov rbx, qword [rsp + 0x48]
mov r14, qword [rsp + 0x68]
mov qword [rax + rcx*8], rdx
inc dword [rsi + 0x1f4]
inc dword [rdx + 0x18]
mov rcx, qword [rbp + 0xa0]
jmp 0x1800e9a88
mov r8, rdi
lea rdx, str.no_such_module:__s
mov rcx, r14
mov rsi, r14
call fcn.1800ca1a0
mov r14, qword [rsp + 0x68]
mov qword [rbx], rax
mov eax, 1
mov rcx, qword [rbp + 0xa0]
mov rbx, qword [rsp + 0x48]
mov dword [rsp + 0x40], eax
jmp 0x1800e9a88
mov r12, qword [rsp + 0x38]
mov r8d, 0x2400
test r8w, cx
jne 0x1800e9a9d
cmp dword [rbp + 0xb8], 0
je 0x1800e9aaf
lea rcx, [rbp + 0x98]
call fcn.180108f00
mov r8d, 0x2400
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x1800e43b0
jmp 0x1800e48ce
inc dword [rsi + 0xd8]
mov rcx, qword [rsp + 0x38]
mov r8, qword [rsi + 0x20]
mov dword [rsp + 0x40], r11d
movsxd rax, dword [rcx + 4]
mov rdx, qword [rcx + 0x10]
mov rcx, rsi
shl rax, 5
mov r8, qword [rax + r8]
call fcn.1800aebd0
mov rdi, rax
test rax, rax
je 0x1800e9b90
mov rdx, qword [rax + 0x60]
test rdx, rdx
je 0x1800e9b90
nop word [rax + rax]
mov rcx, qword [rdx + 0x10]
cmp dword [rcx + 8], 0
jg 0x1800ea9d7
mov rdx, qword [rdx + 0x28]
test rdx, rdx
jne 0x1800e9b10
mov rdx, rdi
mov rcx, rsi
call fcn.18010c2f0
mov rbx, rax
mov rcx, qword [rax + 8]
mov rdx, qword [rcx]
mov rax, qword [rdx + 0x28]
test rax, rax
jne 0x1800e9b49
mov rax, qword [rdx + 0x20]
inc dword [rdi + 0x3c]
mov rcx, qword [rbx + 0x10]
call rax
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800e9b6c
xor eax, eax
mov rcx, rbx
mov qword [rbx + 0x10], rax
mov qword [rdi + 0x60], rax
call fcn.1800f17c0
cmp qword [rsi + 0x2d8], 0
jne 0x1800e9b80
mov eax, 0xffffffff
add dword [rdi + 0x3c], eax
jne 0x1800e9b8b
mov rdx, rdi
mov rcx, rsi
call fcn.180032eb0
mov rbx, qword [rsp + 0x48]
dec dword [rsi + 0xd8]
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x1800e43b0
mov dword [rsp + 0x40], eax
jmp 0x1800e3a11
mov rax, qword [rsp + 0x38]
mov qword [rbp - 0x28], r11
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x1800ea9ef
mov rdi, qword [rbx]
test rdi, rdi
je 0x1800ea9ef
lea rdx, [rbp - 0x28]
mov rcx, rbx
call qword [rdi + 0x30]
mov r15, qword [rsp + 0x48]
mov rdx, rbx
mov rcx, r15
mov dword [rsp + 0x40], eax
call fcn.1800f1310
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x1800e43b5
mov rax, qword [rbp - 0x28]
mov r9d, 0xffffffff
xor r8d, r8d
mov byte [rsp + 0x20], 2
mov rcx, r15
mov qword [rax], rbx
mov rax, qword [rsp + 0x38]
mov edx, dword [rax + 4]
call fcn.180024560
mov rcx, qword [rbp - 0x28]
test rax, rax
je 0x1800ea9e7
mov qword [rax + 0x38], rcx
inc dword [rbx + 8]
mov rbx, r15
movzx r15d, byte [rsp + 0x30]
jmp 0x1800e3a11
mov rcx, qword [rsp + 0x38]
xor r12d, r12d
mov rdi, qword [rbx + 0x70]
mov r8d, r12d
movsxd rax, dword [rcx + 0xc]
movsxd rcx, dword [rcx + 4]
imul rdx, rax, 0x38
mov rax, qword [rbx + 0x78]
add rdx, r14
movsxd r9, dword [rdx + 0x38]
lea r11, [rdx + 0x38]
mov r13, qword [rax + rcx*8]
mov edx, dword [rdx]
mov rsi, qword [r13 + 0x38]
mov r15, qword [rsi]
mov r14, qword [r15]
test r9d, r9d
jle 0x1800e9c9a
movsxd rax, r10d
inc r10d
imul rcx, rax, 0x38
add rcx, r11
mov qword [rdi + r8*8], rcx
inc r8
cmp r8, r9
jl 0x1800e9c81
mov rax, qword [rsp + 0x38]
mov rcx, rsi
mov qword [rsp + 0x20], rdi
mov r8, qword [rax + 0x10]
call qword [r14 + 0x40]
mov rbx, qword [rsp + 0x48]
mov rdx, r15
mov rcx, rbx
mov dword [rsp + 0x40], eax
call fcn.1800f1310
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x1800ead46
mov rcx, rsi
call qword [r14 + 0x50]
mov byte [r13 + 2], r12b
test eax, eax
je 0x1800e4ea4
mov r12, qword [rsp + 0x38]
jmp 0x1800e4d3a
mov r12, rsi
jmp 0x1800e4d48
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [rbx + 0x78]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
add rbx, r14
cmp byte [rdi + 2], 0
je 0x1800e9d38
test word [rbx + 8], r8w
je 0x1800e4afa
mov rcx, rbx
call fcn.180108f50
mov rbx, qword [rsp + 0x48]
jmp 0x1800e3a11
mov rax, qword [rdi + 0x38]
xorps xmm0, xmm0
xorps xmm1, xmm1
mov rsi, qword [rax]
mov rax, qword [rsp + 0x38]
mov r14, qword [rsi]
movdqu xmmword [rbp + 0x1f8], xmm0
mov qword [rbp + 0x1f0], rbx
movdqu xmmword [rbp + 0x208], xmm1
movdqu xmmword [rbp + 0x218], xmm0
test byte [rax + 2], 1
je 0x1800e9d97
test word [rbx + 8], r8w
je 0x1800e9d89
mov rcx, rbx
call fcn.180108f50
mov rax, qword [rsp + 0x38]
xor r11d, r11d
mov ecx, 0x4001
mov word [rbx + 8], cx
mov dword [rbx], r11d
jmp 0x1800e9da5
mov ecx, 0x3e40
and word [rbx + 8], cx
or word [rbx + 8], 1
mov r8d, dword [rax + 8]
lea rdx, [rbp + 0x1f0]
mov rcx, qword [rdi + 0x38]
call qword [r14 + 0x58]
mov r15, qword [rsp + 0x48]
mov rdx, rsi
mov rcx, r15
mov dword [rsp + 0x40], eax
call fcn.1800f1310
cmp dword [rbp + 0x214], 0
jle 0x1800e9e24
movzx ecx, word [rbx + 8]
mov edx, 0x202
movzx eax, cx
and ax, dx
cmp ax, dx
jne 0x1800e9df5
cmp byte [rbx + 0xa], 1
jne 0x1800e9df5
mov rax, qword [rbx + 0x10]
jmp 0x1800e9e08
test cl, 1
je 0x1800e9dfe
xor eax, eax
jmp 0x1800e9e08
mov dl, 1
mov rcx, rbx
call fcn.180107610
mov r8, rax
lea rdx, [0x18012a598]
mov rcx, r15
call fcn.1800e2e10
mov eax, dword [rbp + 0x214]
mov dword [rsp + 0x40], eax
movzx eax, word [rbx + 8]
test al, 2
je 0x1800e9e45
movzx ecx, byte [rsp + 0x30]
cmp byte [rbx + 0xa], cl
je 0x1800e9e45
movzx edx, cl
mov rcx, rbx
call fcn.1800ee0b0
movzx eax, word [rbx + 8]
test al, 0x12
je 0x1800e9e62
bt ax, 0xe
mov ecx, dword [rbx + 0xc]
jae 0x1800e9e55
add ecx, dword [rbx]
mov rax, qword [rbx + 0x28]
cmp ecx, dword [rax + 0x7c]
jg 0x1800eaa32
mov eax, dword [rsp + 0x40]
mov rsi, qword [rsp + 0x50]
test eax, eax
jne 0x1800e43b5
mov r14, qword [rsp + 0x68]
mov rbx, r15
movzx r15d, byte [rsp + 0x30]
jmp 0x1800e3a11
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [rbx + 0x78]
mov rdi, qword [rax + rcx*8]
cmp byte [rdi + 2], 0
jne 0x1800e3b3f
mov rcx, qword [rdi + 0x38]
mov rbx, qword [rcx]
mov rsi, qword [rbx]
call qword [rsi + 0x48]
mov r15, qword [rsp + 0x48]
mov rdx, rbx
mov rcx, r15
mov dword [rsp + 0x40], eax
call fcn.1800f1310
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x1800ea858
mov rcx, qword [rdi + 0x38]
call qword [rsi + 0x50]
mov rsi, qword [rsp + 0x50]
test eax, eax
jne 0x1800e790e
mov r8d, 0x2400
jmp 0x1800e78d7
mov edi, dword [rsi + 0x30]
or qword [rsi + 0x30], 0x4000000
and edi, 0x4000000
mov rcx, qword [rsp + 0x38]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax + 0x10]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
add rbx, r14
test byte [rbx + 8], 2
je 0x1800e9f34
cmp byte [rbx + 0xa], 1
je 0x1800e9f34
mov dl, 1
mov rcx, rbx
call fcn.1800ee0b0
test eax, eax
jne 0x1800ea66c
mov rax, qword [rsi]
mov rcx, rsi
mov rdx, qword [rbx + 0x10]
call qword [rax + 0x98]
mov dword [rsp + 0x40], eax
test edi, edi
jne 0x1800e9f59
mov rax, qword [rsp + 0x50]
and qword [rax + 0x30], 0xfffffffffbffffff
mov rbx, qword [rsp + 0x48]
mov rdx, rsi
mov rcx, rbx
call fcn.1800f1310
and dword [rbx + 0xc8], 0xfffffffc
mov eax, dword [rsp + 0x40]
mov rsi, qword [rsp + 0x50]
test eax, eax
jne 0x1800eaa2a
jmp 0x1800e3a11
cmp byte [rsi + 0x61], 0
jne 0x1800ead1f
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x1800ea9ef
mov r10, qword [rbx]
test r10, r10
je 0x1800ea9ef
cmp qword [r10 + 0x68], 0
mov r12, qword [rsp + 0x38]
movsxd rdx, dword [r12 + 8]
je 0x1800ea55f
movsxd rax, dword [r12 + 0xc]
mov r15, qword [rsp + 0x48]
movzx edi, byte [rsi + 0x66]
imul rcx, rax, 0x38
mov r8, qword [r15 + 0x70]
mov rax, r11
add rcx, r14
test edx, edx
jle 0x1800ea000
nop word [rax + rax]
mov qword [r8 + rax*8], rcx
add rcx, 0x38
inc rax
cmp rax, rdx
jl 0x1800e9ff0
mov rax, r12
lea r9, [rbp + 0x68]
mov rcx, rbx
movzx eax, byte [rax + 2]
mov byte [rsi + 0x66], al
call qword [r10 + 0x68]
mov rdx, rbx
mov byte [rsi + 0x66], dil
mov rbx, r15
mov dword [rsp + 0x40], eax
mov rcx, rbx
call fcn.1800f1310
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x1800ea048
cmp dword [r12 + 4], eax
je 0x1800ea080
mov rax, qword [rbp + 0x68]
mov qword [rsi + 0x38], rax
mov eax, dword [rsp + 0x40]
jmp 0x1800ea080
cmp al, 0x13
jne 0x1800ea080
mov rax, r12
mov rax, qword [rax + 0x10]
cmp byte [rax + 0x1c], 0
je 0x1800ea042
movzx ecx, word [r12 + 2]
cmp ecx, 4
jne 0x1800eaa12
movzx r15d, byte [rsp + 0x30]
xor r11d, r11d
mov r9, qword [rsp + 0x58]
mov dword [rsp + 0x40], r11d
jmp 0x1800e31b3
inc dword [rbx + 0x3c]
test eax, eax
jne 0x1800eaa2a
mov r9, qword [rsp + 0x58]
jmp 0x1800e31aa
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
add rdx, qword [rbx + 0x68]
test word [rdx + 8], r8w
je 0x1800ea0cc
mov rcx, rdx
call fcn.180084360
mov r9, qword [rsp + 0x58]
xor r11d, r11d
mov rdx, rax
mov r8d, 0x2400
lea r10d, [r11 + 1]
jmp 0x1800ea0d5
mov eax, 4
mov word [rdx + 8], ax
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 8]
mov rax, qword [rcx + 8]
mov ecx, dword [rax + 0x40]
mov qword [rdx], rcx
lea rdx, [0x180000000]
jmp 0x1800e3b3f
mov rdi, qword [rsp + 0x38]
movsxd rax, dword [rdi + 8]
imul rsi, rax, 0x38
add rsi, qword [rbx + 0x68]
test word [rsi + 8], r8w
je 0x1800ea129
mov rcx, rsi
call fcn.180084360
mov rsi, rax
xor r11d, r11d
jmp 0x1800ea132
mov eax, 4
mov word [rsi + 8], ax
movsxd rcx, dword [rdi + 4]
mov edi, r11d
mov rax, qword [rsp + 0x50]
shl rcx, 5
mov rax, qword [rax + 0x20]
mov rbx, qword [rcx + rax + 8]
mov rax, qword [rsp + 0x38]
mov ecx, dword [rax + 0xc]
test ecx, ecx
je 0x1800ea163
mov rax, qword [rbx + 8]
mov edi, dword [rax + 0x40]
cmp edi, ecx
cmovb edi, ecx
cmp byte [rbx + 0x11], 0
je 0x1800ea17a
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x1800ea17a
mov rcx, rbx
call fcn.18002a4b0
mov rax, qword [rbx + 8]
mov rcx, qword [rax]
test edi, edi
je 0x1800ea18d
mov dword [rcx + 0xc0], edi
jmp 0x1800ea193
mov edi, dword [rcx + 0xc0]
cmp byte [rbx + 0x11], 0
je 0x1800ea1a7
sub dword [rbx + 0x14], 1
jne 0x1800ea1a7
mov rcx, rbx
call fcn.1801056b0
mov rbx, qword [rsp + 0x48]
mov eax, edi
mov qword [rsi], rax
mov rsi, qword [rsp + 0x50]
jmp 0x1800e3a11
mov rax, qword [rsp + 0x38]
mov r15, qword [rsp + 0x48]
mov rdi, qword [rax + 0x10]
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
add rbx, r14
cmp qword [rdi], rbx
je 0x1800ea225
mov qword [rdi + 0x18], r15
mov qword [rdi], rbx
movzx eax, byte [rdi + 0x29]
mov edx, eax
sub rdx, 1
lea r9d, [rax - 1]
js 0x1800ea225
mov rsi, qword [rsp + 0x38]
lea r8, [rdi + 0x30]
lea r8, [r8 + rdx*8]
nop dword [rax]
mov eax, dword [rsi + 8]
lea r8, [r8 - 8]
add eax, r9d
dec r9d
cdqe
imul rcx, rax, 0x38
add rcx, r14
sub rdx, 1
mov qword [r8 + 8], rcx
jns 0x1800ea200
mov rsi, qword [rsp + 0x50]
mov eax, 0x3e40
lea r8, [rdi + 0x30]
and word [rbx + 8], ax
mov rcx, rdi
or word [rbx + 8], 1
mov rax, qword [rdi + 8]
movzx edx, byte [rdi + 0x29]
call qword [rax + 0x18]
mov eax, dword [rdi + 0x24]
test eax, eax
je 0x1800ea2cb
jle 0x1800ea29a
movzx ecx, word [rbx + 8]
mov edx, 0x202
movzx eax, cx
and ax, dx
cmp ax, dx
jne 0x1800ea26e
cmp byte [rbx + 0xa], 1
jne 0x1800ea26e
mov rax, qword [rbx + 0x10]
jmp 0x1800ea281
test cl, 1
je 0x1800ea277
xor eax, eax
jmp 0x1800ea281
mov dl, 1
mov rcx, rbx
call fcn.180107610
mov r8, rax
lea rdx, [0x18012a598]
mov rcx, r15
call fcn.1800e2e10
mov eax, dword [rdi + 0x24]
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x38]
lea rdx, [r15 + 0x120]
mov r8d, dword [rdi + 0x20]
mov rcx, rsi
mov r9d, dword [rax + 4]
call fcn.1800e2780
mov eax, dword [rsp + 0x40]
xor r11d, r11d
mov dword [rdi + 0x24], r11d
test eax, eax
jne 0x1800e43b5
jmp 0x1800ea2ce
xor r11d, r11d
movzx eax, word [rbx + 8]
test al, 0x12
je 0x1800ea3ad
test al, 2
je 0x1800ea2f7
movzx ecx, byte [rsp + 0x30]
cmp byte [rbx + 0xa], cl
je 0x1800ea2f7
movzx edx, cl
mov rcx, rbx
call fcn.1800ee0b0
movzx eax, word [rbx + 8]
test al, 0x12
je 0x1800ea3eb
bt ax, 0xe
mov ecx, dword [rbx + 0xc]
jae 0x1800ea30b
add ecx, dword [rbx]
mov rax, qword [rbx + 0x28]
cmp ecx, dword [rax + 0x7c]
jg 0x1800eaa41
mov rbx, qword [rsp + 0x48]
movzx r15d, byte [rsp + 0x30]
jmp 0x1800e3a11
mov rsi, qword [rsp + 0x50]
mov r12, qword [rsp + 0x38]
xor r11d, r11d
mov rbx, qword [rsp + 0x48]
mov r8d, 0x2400
mov r9, qword [rsp + 0x58]
lea r10d, [r11 + 1]
jmp 0x1800e3010
mov r12, qword [rsp + 0x38]
mov r14, qword [rsp + 0x68]
movzx r15d, byte [rsp + 0x30]
xor r11d, r11d
mov r8d, 0x2400
mov rbx, qword [rsp + 0x48]
mov r10d, 1
mov r9, qword [rsp + 0x58]
jmp 0x1800e3010
mov rsi, qword [rsp + 0x50]
mov r12, qword [rsp + 0x38]
mov r14, qword [rsp + 0x68]
movzx r15d, byte [rsp + 0x30]
jmp 0x1800ea361
mov r12, qword [rsp + 0x38]
mov rsi, rax
mov r14, qword [rsp + 0x68]
movzx r15d, byte [rsp + 0x30]
jmp 0x1800ea361
mov rsi, qword [rsp + 0x50]
mov r12, qword [rsp + 0x38]
movzx r15d, byte [rsp + 0x30]
jmp 0x1800ea361
mov r14, qword [rsp + 0x68]
jmp 0x1800ea367
mov rsi, qword [rsp + 0x50]
mov r12, qword [rsp + 0x38]
xor r11d, r11d
jmp 0x1800ea367
mov rsi, qword [rsp + 0x50]
mov r12, qword [rsp + 0x38]
jmp 0x1800ea367
mov rsi, qword [rsp + 0x50]
mov r12, qword [rsp + 0x38]
jmp 0x1800ea361
mov r12, qword [rsp + 0x38]
jmp 0x1800ea358
mov r12, qword [rsp + 0x38]
xor r11d, r11d
movzx r15d, byte [rsp + 0x30]
jmp 0x1800ea367
movzx eax, byte [rsi + 0x68]
test al, 0x41
je 0x1800ea4ed
cmp byte [rbx + 0xc5], 0
jne 0x1800ea4ed
mov r9, qword [r12 + 0x10]
test r9, r9
jne 0x1800ea43b
mov r9, qword [rbx + 0xf0]
test r9, r9
je 0x1800ea4e8
test al, 0x40
je 0x1800ea46c
mov rdx, r9
mov rcx, rbx
call fcn.1800eb160
mov rcx, qword [rsi + 0xf0]
mov rdx, rax
mov rbx, rax
call qword [rsi + 0xe8]
mov rcx, rbx
call fcn.1800ffdc0
mov rbx, qword [rsp + 0x48]
jmp 0x1800ea4d4
cmp dword [rsi + 0xd4], 1
jle 0x1800ea4c1
mov r8, r9
lea rdx, str.____s
mov rcx, rsi
call fcn.1800ca1a0
mov r8, qword [rsp + 0x48]
mov r9, rax
mov rdx, qword [rsi + 0xf0]
mov ecx, 1
mov rbx, rax
call qword [rsi + 0xe8]
test rbx, rbx
je 0x1800ea4b4
mov rdx, rbx
mov rcx, rsi
call fcn.1800a5670
mov rbx, qword [rsp + 0x48]
movzx r15d, byte [rsp + 0x30]
jmp 0x1800ea4d4
mov rdx, qword [rsi + 0xf0]
mov r8, rbx
mov ecx, r10d
call qword [rsi + 0xe8]
xor r11d, r11d
lea rdx, [0x180000000]
mov r8d, 0x2400
lea r10d, [r11 + 1]
mov r9, qword [rsp + 0x58]
mov rax, qword [rsp + 0x38]
mov r12, qword [rsp + 0x38]
mov eax, dword [rax + 4]
cmp eax, dword [0x180147224]
jl 0x1800ea543
cmp byte [r12], 0xaa
je case.0x1800e2fa8.85
cmp dword [rbx + 0x90], 1
mov edx, r10d
jle 0x1800ea540
mov eax, 0x18
nop
mov rcx, qword [rbx + 0x88]
cmp byte [rax + rcx], 0x11
jne 0x1800ea532
mov dword [rax + rcx + 4], r11d
inc edx
add rax, 0x18
cmp edx, dword [rbx + 0x90]
jl 0x1800ea520
mov eax, r11d
inc eax
mov dword [r12 + 4], eax
inc dword [rbx + 0xec]
jmp 0x1800e4d48
mov rsi, qword [rsp + 0x50]
jmp 0x1800e3b3f
mov rbx, qword [rsp + 0x48]
mov r10d, 1
jmp 0x1800e3010
mov rdx, qword [rsp + 0x38]
mov dword [r15 + 0x38], ecx
movzx eax, byte [rdx + 8]
mov byte [r15 + 0xc2], al
mov dword [r15 + 0x34], ebx
test ecx, ecx
je 0x1800ea620
movzx eax, word [rdx + 2]
mov rcx, r15
test ax, ax
je 0x1800ea5e6
mov r8d, eax
lea rdx, str._s_constraint_failed
lea rax, [0x180000000]
mov r8, qword [rax + r8*8 + 0x1238e0]
call fcn.1800e2e10
mov rax, qword [rsp + 0x38]
mov r9, qword [rax + 0x10]
test r9, r9
je 0x1800ea5f6
mov r8, qword [r15 + 0xa8]
lea rdx, str._z:__s
mov rcx, rsi
call fcn.1800ca1a0
mov qword [r15 + 0xa8], rax
jmp 0x1800ea5f6
mov r8, qword [rdx + 0x10]
lea rdx, [0x18012a598]
call fcn.1800e2e10
mov rax, qword [r15 + 0xa8]
lea rdx, str.abort_at__d_in___s_:__s
mov r9, qword [r15 + 0xf0]
mov r8d, ebx
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x38]
mov ecx, dword [rax + 4]
call fcn.1801003c0
mov rcx, r15
call fcn.1800ebf70
mov rdi, qword [rsp + 0x60]
mov r14d, 7
mov dword [rsp + 0x40], eax
cmp eax, 5
jne 0x1800ea645
mov dword [r15 + 0x38], eax
jmp 0x1800ea6ff
cmp dword [r15 + 0x38], 0
mov eax, 0x65
mov r12d, 1
cmovne eax, r12d
mov dword [rsp + 0x40], eax
jmp 0x1800ea6ff
mov ecx, 0x1587b
call fcn.1800a37c0
mov rsi, qword [rsp + 0x50]
jmp 0x1800e43b0
lea rdx, str.cannot_open_savepoint___SQL_statements_in_progress
mov rcx, rbx
call fcn.1800e2e10
mov eax, 5
mov rsi, rdi
jmp 0x1800e43b0
lea rdx, str.cannot_release_savepoint___SQL_statements_in_progress
mov rcx, rbx
call fcn.1800e2e10
mov eax, 5
jmp 0x1800e43b0
mov byte [rsi + 0x5f], 0
jmp 0x1800e43b0
mov rcx, qword [rsp + 0x38]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x58]
imul rcx
mov dword [rsp + 0x40], 5
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rbx + 0x34], edx
mov byte [rsi + 0x5f], 0
mov dword [rbx + 0x38], 5
mov r15, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x60]
mov r14d, 7
mov ebx, dword [rsp + 0x40]
mov r12, qword [rbp - 0x20]
cmp r12, rdi
jb 0x1800eae4e
mov rdx, qword [rsi + 0x1e0]
test rdx, rdx
je 0x1800eae4e
mov eax, dword [rsi + 0x1f0]
mov rcx, qword [rsi + 0x1e8]
add rdi, rax
call rdx
test eax, eax
je 0x1800ea707
mov rdi, 0xffffffffffffffff
lea eax, [rdi + 0xa]
xor r12d, r12d
lea ebx, [r12 + 1]
jmp 0x1800e43c8
mov dword [rbx + 0x38], 0x313
lea rdx, str.FOREIGN_KEY_constraint_failed
mov byte [rbx + 0xc2], 2
call fcn.1800e2e10
mov dword [rsp + 0x40], edi
jmp 0x1800ea6ef
mov eax, 8
jmp 0x1800e43b0
mov rdi, qword [rsp + 0x60]
mov r14d, 7
cmp al, 5
jne 0x1800ea740
mov rcx, qword [rsp + 0x38]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x58]
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov eax, dword [rsp + 0x40]
mov dword [r15 + 0x34], edx
mov dword [r15 + 0x38], eax
jmp 0x1800ea6ff
mov rdx, qword [rbx + 0xa8]
test rdx, rdx
je 0x1800ea7d0
mov rcx, rsi
call fcn.1800a5670
mov edx, 0x1c
mov rcx, rsi
call fcn.1800a5800
test rax, rax
je 0x1800ea802
movups xmm0, xmmword [str.database_schema_has_changed]
movups xmmword [rax], xmm0
movsd xmm1, qword [0x18012a3a8]
movsd qword [rax + 0x10], xmm1
mov ecx, dword [0x18012a3b0]
mov dword [rax + 0x18], ecx
mov qword [rbx + 0xa8], rax
mov rax, qword [rsp + 0x38]
movsxd rdx, dword [rax + 4]
mov rax, qword [rsi + 0x20]
mov rcx, rdx
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov eax, dword [rbp - 0x54]
cmp dword [rcx], eax
je 0x1800ea831
mov rcx, rsi
call fcn.1800d4420
and dword [rbx + 0xc8], 0xfffffffd
mov eax, 0x11
or dword [rbx + 0xc8], 1
jmp 0x1800e43b0
mov eax, 0x204
jmp 0x1800e43b0
mov eax, 0xd
mov rsi, qword [rsp + 0x50]
jmp 0x1800e43b5
mov r15, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
mov eax, 7
xor r12d, r12d
mov r14d, eax
lea ebx, [rax - 6]
jmp 0x1800e43c3
mov eax, 0x30b
jmp 0x1800e43b0
mov r15, qword [rsp + 0x48]
mov ebx, 1
jmp 0x1800e43bd
mov r9d, 0x14331
jmp 0x1800e6c5d
mov eax, 6
mov byte [rbx + 0xc2], 2
jmp 0x1800e43b0
call fcn.1800d4380
mov r10d, 1
xor r12d, r12d
mov ecx, 7
cmp byte [rsi + 0x61], 0
jne 0x1800ea904
cmp byte [rsi + 0x62], 0
jne 0x1800ea904
mov byte [rsi + 0x61], 1
cmp dword [rsi + 0xd4], 0
jle 0x1800ea8e7
mov dword [rsi + 0x170], r10d
inc dword [rsi + 0x178]
mov word [rsi + 0x17c], r12w
mov rax, qword [rsi + 0x138]
test rax, rax
je 0x1800ea904
mov dword [rax + 0x18], ecx
lea rdx, str.out_of_memory
mov rcx, r15
call fcn.1800e2e10
mov r14d, 7
mov eax, r14d
lea ebx, [r14 - 6]
jmp 0x1800e43c3
lea rdx, str.too_many_levels_of_trigger_recursion
mov dword [rsp + 0x40], r10d
mov rcx, rbx
call fcn.1800e2e10
mov eax, dword [rsp + 0x40]
jmp 0x1800e43b0
mov rcx, rbx
call fcn.180103d80
mov r15, qword [rsp + 0x48]
lea rdx, [0x18012a598]
mov rcx, r15
mov r8, rax
call fcn.1800e2e10
mov eax, dword [rsp + 0x40]
mov rsi, qword [rsp + 0x50]
jmp 0x1800e43b5
cmp esi, 5
mov dword [rsp + 0x40], r10d
lea rax, str.into
mov rcx, rbx
lea r8, str.out_of
cmove r8, rax
lea rdx, str.cannot_change__s_wal_mode_from_within_a_transaction
call fcn.1800e2e10
mov eax, dword [rsp + 0x40]
mov rsi, r12
jmp 0x1800e43b0
mov r15, qword [rsp + 0x48]
cmp al, 6
jne 0x1800ea858
mov rax, qword [rsp + 0x38]
lea rdx, str.database_table_is_locked:__s
mov rcx, r15
mov r8, qword [rax + 0x10]
call fcn.1800e2e10
mov eax, dword [rsp + 0x40]
mov rsi, qword [rsp + 0x50]
jmp 0x1800e43b5
dec dword [rsi + 0xd8]
mov eax, 6
jmp 0x1800e43b0
call qword [rdi + 0x38]
jmp 0x1800ea8b9
mov eax, 6
jmp 0x1800e43b0
mov rdi, 0xffffffffffffffff
xor r12d, r12d
lea eax, [rdi + 0xa]
lea ebx, [rdi + 2]
lea r14d, [rdi + 8]
jmp 0x1800e43c8
movzx eax, cl
cmp ecx, 5
mov ecx, 2
cmove eax, ecx
mov byte [rbx + 0xc2], al
mov eax, dword [rsp + 0x40]
mov r15, rbx
jmp 0x1800e43b5
mov rsi, qword [rsp + 0x50]
jmp 0x1800eaa41
mov rsi, r9
mov r15, qword [rsp + 0x48]
xor r12d, r12d
lea rdx, str.string_or_blob_too_big
mov rcx, r15
call fcn.1800e2e10
mov eax, 0x12
lea ebx, [rax - 0x11]
jmp 0x1800e43bd
mov r15, qword [rsp + 0x48]
mov rsi, r9
jmp 0x1800eaa44
mov rsi, qword [rsp + 0x50]
jmp 0x1800eaa3c
mov rsi, qword [rsp + 0x50]
mov r15, qword [rsp + 0x48]
jmp 0x1800eaa44
cmp qword [rbx + 0x50], 0
jle 0x1800eaab2
mov dword [rbx + 0x38], 0x313
lea rdx, str.FOREIGN_KEY_constraint_failed
mov rcx, rbx
mov byte [rbx + 0xc2], 2
call fcn.1800e2e10
mov r15, qword [rsp + 0x48]
mov ebx, 1
mov eax, ebx
jmp 0x1800e43ba
mov rax, qword [rbx]
cmp dword [rax + 0x2c4], 0
je 0x1800eaad2
cmp dword [rbx + 0x40], 0
je 0x1800eaad2
mov edx, r10d
mov rcx, rbx
call fcn.1801077c0
xor r11d, r11d
mov eax, dword [rbx + 0x30]
mov edi, r11d
add eax, 2
or eax, 1
mov dword [rbx + 0x30], eax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rsi, rax, 0x38
mov rax, qword [rsp + 0x38]
add rsi, r14
mov qword [rbx + 0xa0], rsi
cmp dword [rax + 8], 0
jle 0x1800eab5c
lea rbx, [rsi + 8]
mov r14d, 0x202
nop dword [rax]
mov eax, 0x1000
test word [rbx], ax
je 0x1800eab31
movsxd rax, edi
imul rcx, rax, 0x38
add rcx, rsi
call fcn.1800ed910
test eax, eax
jne 0x1800ead0b
movzx eax, word [rbx]
and ax, r14w
cmp ax, 2
jne 0x1800eab47
lea rcx, [rbx - 8]
call fcn.180108ea0
mov rax, qword [rsp + 0x38]
inc edi
add rbx, 0x38
cmp edi, dword [rax + 8]
jl 0x1800eab10
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
cmp byte [rsi + 0x61], 0
jne 0x1800ead10
test byte [rsi + 0x68], 4
je 0x1800eab88
mov rdx, qword [rsi + 0xf0]
xor r9d, r9d
mov r8, rbx
lea ecx, [r9 + 4]
call qword [rsi + 0xe8]
mov rcx, qword [rsp + 0x38]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x58]
mov r15, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x60]
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
inc edx
mov dword [rbx + 0x34], edx
mov ebx, 0x64
lea r14d, [rbx - 0x5d]
jmp 0x1800ea703
mov rax, qword [rsp + 0x38]
mov ebx, dword [rax + 4]
mov ecx, dword [rax + 8]
movzx eax, byte [rsi + 0x5f]
cmp ebx, eax
je 0x1800eacc4
test ecx, ecx
je 0x1800eabfb
mov edx, 0x204
mov rcx, rsi
call fcn.1800d4e70
mov r15, qword [rsp + 0x48]
mov al, 1
jmp 0x1800eac45
test ebx, ebx
je 0x1800eac26
cmp dword [rsi + 0xd0], 0
jle 0x1800eac26
mov r15, qword [rsp + 0x48]
lea rdx, str.cannot_commit_transaction___SQL_statements_in_progress
mov rcx, r15
call fcn.1800e2e10
mov eax, 5
jmp 0x1800e43b5
mov r15, qword [rsp + 0x48]
mov edx, r10d
mov rcx, r15
call fcn.1800e2220
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1800ea6f4
movzx eax, bl
mov rcx, r15
mov byte [rsi + 0x5f], al
call fcn.1800ebf70
cmp eax, 5
jne 0x1800eac9f
mov rcx, qword [rsp + 0x38]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x60]
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov eax, 1
sub al, bl
mov dword [r15 + 0x34], edx
mov ebx, 5
mov byte [rsi + 0x5f], al
mov dword [r15 + 0x38], ebx
lea r14d, [rbx + 2]
jmp 0x1800ea703
mov rcx, rsi
call fcn.1800a0ee0
cmp dword [r15 + 0x38], 0
mov eax, 0x65
mov r12d, 1
cmovne eax, r12d
mov dword [rsp + 0x40], eax
jmp 0x1800ea6f4
test ebx, ebx
jne 0x1800eacd1
lea rdx, str.cannot_start_a_transaction_within_a_transaction
jmp 0x1800eace5
test ecx, ecx
lea rax, str.cannot_rollback___no_transaction_is_active
lea rdx, str.cannot_commit___no_transaction_is_active
cmovne rdx, rax
mov r15, qword [rsp + 0x48]
mov rcx, r15
call fcn.1800e2e10
mov ebx, 1
mov eax, ebx
jmp 0x1800e43ba
mov r15, rbx
mov eax, 9
jmp 0x1800e43b5
mov rsi, qword [rsp + 0x50]
mov r15, qword [rsp + 0x48]
jmp 0x1800ea8b9
mov rsi, qword [rsp + 0x50]
mov r15, qword [rsp + 0x48]
jmp 0x1800ea8bf
mov rsi, qword [rsp + 0x50]
mov r15, qword [rsp + 0x48]
mov r10d, 1
jmp 0x1800ea8c2
mov r15, rbx
jmp 0x1800ea8c7
mov rsi, qword [rsp + 0x50]
mov r15, rbx
mov ebx, 1
jmp 0x1800e43bd
mov rbx, r10
jmp 0x1800e43ba
mov dword [r15 + 0x38], eax
cmp eax, 0xc0a
je 0x1800ead96
movzx eax, al
sub eax, 0xa
test eax, 0xfffffffb
jne 0x1800ead96
mov rcx, qword [rsi]
mov rax, qword [rcx + 0x80]
test rax, rax
je 0x1800ead90
xor r8d, r8d
xor edx, edx
call rax
jmp 0x1800ead93
mov eax, r12d
mov dword [rsi + 0x58], eax
mov rcx, qword [rsp + 0x38]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x58]
mov r9, qword [r15 + 0xf0]
imul rcx
mov rax, qword [r15 + 0xa8]
mov ecx, dword [rsp + 0x40]
sar rdx, 2
mov r8, rdx
mov qword [rsp + 0x20], rax
shr r8, 0x3f
add r8, rdx
lea rdx, str.statement_aborts_at__d:___s___s
call fcn.1801003c0
mov rcx, r15
call fcn.1800ebf70
cmp dword [rsp + 0x40], 0xc0a
jne 0x1800eae2d
cmp byte [rsi + 0x61], 0
jne 0x1800eae2d
cmp byte [rsi + 0x62], 0
jne 0x1800eae2d
mov byte [rsi + 0x61], 1
cmp dword [rsi + 0xd4], 0
jle 0x1800eae0f
mov dword [rsi + 0x170], ebx
inc dword [rsi + 0x178]
mov word [rsi + 0x17c], r12w
mov rax, qword [rsi + 0x138]
test rax, rax
je 0x1800eae2d
mov dword [rax + 0x18], r14d
movzx eax, byte [rsp + 0x70]
mov dword [rsp + 0x40], ebx
test al, al
je 0x1800ea6ff
lea edx, [rax - 1]
mov rcx, rsi
call fcn.1800d4420
jmp 0x1800ea6ff
add dword [r15 + 0xe4], r12d
cmp dword [r15 + 0xd0], 0
movaps xmm6, xmmword [rsp + 0x370]
mov r14, qword [rsp + 0x380]
mov r13, qword [rsp + 0x388]
mov r12, qword [rsp + 0x3c8]
mov rdi, qword [rsp + 0x3c0]
mov rsi, qword [rsp + 0x3b8]
je 0x1800eae97
mov rcx, r15
call fcn.180108e10
mov eax, ebx
mov rcx, qword [rbp + 0x268]
xor rcx, rsp
call fcn.18011eb70
add rsp, 0x390
pop r15
pop rbx
pop rbp
ret