Function at 0x18003e810
Capabilities:
Encrypt data using speck
Reference sql statements
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
push rbp
push rdi
push r12
push r13
push r14
lea rbp, [rsp - 0x180]
sub rsp, 0x280
mov rax, qword [0x18015a008]
xor rax, rsp
mov qword [rbp + 0x150], rax
mov rax, qword [rcx + 0x88]
xor r14d, r14d
mov r13, rcx
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x38], rax
mov r12d, r14d
mov rax, qword [rcx]
mov edi, r14d
mov qword [rbp - 0x78], rcx
xor cl, cl
mov rsi, qword [r13 + 0x68]
mov qword [rsp + 0x40], rax
movzx eax, byte [rax + 0x5e]
mov byte [rsp + 0x79], cl
mov rcx, r13
mov byte [rsp + 0x48], al
mov dword [rsp + 0x30], r14d
mov dword [rbp - 0x68], r14d
mov qword [rbp + 0x10], r14
mov qword [rsp + 0x60], rsi
call fcn.1800347b0
mov r8, qword [rsp + 0x40]
cmp qword [r8 + 0x1e0], r14
je 0x18003e8bd
mov ecx, dword [r8 + 0x1f0]
xor edx, edx
mov eax, dword [r13 + 0xe4]
div ecx
sub ecx, edx
mov ebx, ecx
jmp 0x18003e8c4
mov rbx, 0xffffffffffffffff
cmp dword [r13 + 0x38], 7
mov r10d, 1
mov qword [rsp + 0x2b8], r15
movaps xmmword [rsp + 0x270], xmm6
movaps xmmword [rsp + 0x260], xmm7
mov qword [rsp + 0x58], rbx
je 0x1800445be
mov dword [r13 + 0x38], r14d
mov qword [r13 + 0x48], r14
mov qword [r13 + 0xa0], r14
mov eax, dword [r8 + 0x170]
mov dword [r8 + 0x268], r14d
test eax, eax
jne 0x180044a5a
movsxd rax, dword [r13 + 0x34]
mov edx, 0x2400
mov r9, qword [rsp + 0x50]
xorps xmm7, xmm7
lea rcx, [rax + rax*2]
lea r15, [r9 + rcx*8]
movzx ebx, byte [r15]
inc rdi
mov qword [rsp + 0x38], r15
mov r11d, 0x80
mov qword [rbp + 0x10], rdi
cmp ebx, 0xab
ja case.0x18003e963.85
lea rdi, [0x180000000]
mov ecx, dword [rdi + rbx*4 + 0x44ac8]
add rcx, rdi
jmp rcx
mov rax, qword [rsp + 0x38]
movabs rdx, 0xaaaaaaaaaaaaaaab
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov eax, 4
mov word [rcx + rsi + 8], ax
mov rax, qword [rsp + 0x38]
sub rax, r9
sar rax, 3
imul rax, rdx
cdqe
mov qword [rcx + rsi], rax
jmp 0x1800400d0
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rdx, rax, 0x38
mov rax, qword [rdx + rsi]
mov word [rdx + rsi + 8], r11w
lea rcx, [rax + rax*2]
lea r15, [r9 + rcx*8]
jmp 0x18004362f
mov rax, qword [rsp + 0x38]
mov r15, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0xc]
dec eax
cdqe
mov qword [rcx + rsi], rax
mov eax, 4
mov word [rcx + rsi + 8], ax
cmp dword [r15 + 8], 0
jne 0x1800400d5
mov r13, qword [rbp - 0x78]
add r15, 0x18
mov rdi, qword [rbp + 0x10]
xor r14d, r14d
jmp 0x18003e930
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rdx, rax, 0x38
mov rax, qword [rdx + rsi]
lea rcx, [rax + rax*2]
mov eax, dword [r9 + rcx*8 + 8]
dec eax
mov word [rdx + rsi + 8], r11w
cdqe
lea rcx, [rax + rax*2]
lea r15, [r9 + rcx*8]
jmp 0x18004362f
mov rbx, qword [rsp + 0x38]
movsxd rax, dword [rbx + 4]
sub rbx, r9
imul rdx, rax, 0x38
mov eax, 4
sar rbx, 3
movsxd rcx, dword [rdx + rsi]
mov word [rdx + rsi + 8], ax
movabs rax, 0xaaaaaaaaaaaaaaab
imul rax, rbx
lea rcx, [rcx + rcx*2]
cdqe
lea r15, [r9 + rcx*8]
mov qword [rdx + rsi], rax
jmp 0x18004362f
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
test byte [rcx + rsi + 8], 1
je 0x18003ebb4
mov rax, qword [rsp + 0x38]
movabs rcx, 0xaaaaaaaaaaaaaaab
mov rbx, rax
sub rbx, r9
sar rbx, 3
imul rbx, rcx
mov ecx, dword [rax + 4]
test ecx, ecx
jne 0x180044306
mov rdx, qword [r13 + 0x100]
test rdx, rdx
je 0x180044306
mov rax, qword [rdx + 8]
mov rcx, rdx
dec dword [r13 + 0x110]
mov qword [r13 + 0x100], rax
mov eax, dword [r13 + 0x3c]
add dword [r8 + 0x78], eax
mov dword [r8 + 0x74], eax
call fcn.180035c80
mov r15, qword [rsp + 0x38]
mov r9, qword [r13 + 0x88]
mov qword [rsp + 0x50], r9
cmp dword [r15 + 8], 4
jne 0x18003eb1f
cdqe
lea rcx, [rax + rax*2]
mov eax, dword [r9 + rcx*8 + 8]
dec eax
mov rsi, qword [r13 + 0x68]
cdqe
mov qword [rsp + 0x60], rsi
lea rcx, [rax + rax*2]
lea r8, [r9 + rcx*8]
mov qword [rsp + 0x38], r8
mov r15, qword [rsp + 0x38]
mov r8, qword [rsp + 0x40]
jmp 0x180043629
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
add rcx, qword [r13 + 0x68]
test word [rcx + 8], dx
je 0x18003eb9f
call fcn.18003e7b0
mov r8, qword [rsp + 0x40]
mov rcx, rax
mov rax, qword [rsp + 0x38]
mov edx, 0x2400
mov r9, qword [rsp + 0x50]
mov r10d, 1
mov r15, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov qword [rcx], rax
mov r13, qword [rbp - 0x78]
add r15, 0x18
mov rdi, qword [rbp + 0x10]
xor r14d, r14d
jmp 0x18003e930
mov eax, 4
mov word [rcx + 8], ax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov qword [rcx], rax
mov r15, qword [rsp + 0x38]
mov r13, qword [rbp - 0x78]
add r15, 0x18
mov rdi, qword [rbp + 0x10]
xor r14d, r14d
jmp 0x18003e930
mov rax, qword [rsp + 0x38]
mov r15d, 0x2400
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
add rdx, qword [r13 + 0x68]
test word [rdx + 8], r15w
je 0x18003ec08
mov rcx, rdx
call fcn.18003e7b0
mov r8, qword [rsp + 0x40]
mov rdx, rax
mov r9, qword [rsp + 0x50]
mov r10d, 1
jmp 0x18003ec11
mov eax, 4
mov word [rdx + 8], ax
mov rax, qword [rsp + 0x38]
mov r15, qword [rsp + 0x38]
mov rax, qword [rax + 0x10]
mov rcx, qword [rax]
mov qword [rdx], rcx
jmp 0x18004362f
mov rax, qword [rsp + 0x38]
mov r15d, 0x2400
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
add rdx, qword [r13 + 0x68]
test word [rdx + 8], r15w
je 0x18003ec63
mov rcx, rdx
call fcn.18003e7b0
mov r8, qword [rsp + 0x40]
mov rdx, rax
mov r9, qword [rsp + 0x50]
mov r10d, 1
mov eax, 8
jmp 0x18003ec0d
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rbx, qword [r13 + 0x68]
test word [rbx + 8], dx
je 0x18003ec98
mov rcx, rbx
call fcn.18003e7b0
mov r8, qword [rsp + 0x40]
mov rbx, rax
mov rcx, qword [rsp + 0x38]
jmp 0x18003eca1
mov eax, 4
mov word [rbx + 8], ax
mov rdx, qword [rcx + 0x10]
test rdx, rdx
jne 0x18003ecaf
mov eax, r14d
jmp 0x18003ecc4
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rdx + rax], 0
jne 0x18003ecb6
and eax, 0x3fffffff
movzx edi, byte [rsp + 0x48]
mov dword [rcx + 4], eax
cmp dil, 1
je 0x18003ed67
mov r9b, 1
mov qword [rsp + 0x20], r14
mov r8d, 0xffffffff
mov rcx, rbx
call fcn.180031670
mov dword [rsp + 0x30], eax
mov r12d, eax
test eax, eax
jne 0x1800446ba
test byte [rbx + 8], 2
je 0x18003ed1b
cmp byte [rbx + 0xa], dil
je 0x18003ed1b
movzx edx, dil
mov rcx, rbx
call fcn.180009770
test eax, eax
jne 0x180044682
mov rcx, qword [rsp + 0x38]
mov eax, 0x800
or word [rbx + 8], ax
mov dword [rbx + 0x20], r14d
cmp byte [rcx + 1], 0xf9
jne 0x18003ed50
mov rdx, qword [rcx + 0x10]
test rdx, rdx
je 0x18003ed50
mov rcx, qword [rsp + 0x40]
call fcn.180005ba0
mov rcx, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x60]
mov r8, qword [rsp + 0x40]
mov byte [rcx + 1], 0xf9
mov rax, qword [rbx + 0x10]
mov qword [rcx + 0x10], rax
mov eax, dword [rbx + 0xc]
mov dword [rcx + 4], eax
cmp eax, dword [r8 + 0x7c]
jg 0x1800446ba
mov r8, qword [rsp + 0x38]
mov byte [r8], 0x47
jmp 0x18003ed86
mov r8, qword [rsp + 0x38]
movzx edi, byte [rsp + 0x48]
movsxd rax, dword [r8 + 8]
mov r15d, 0x2400
imul rdx, rax, 0x38
add rdx, qword [r13 + 0x68]
test word [rdx + 8], r15w
je 0x18003edaf
mov rcx, rdx
call fcn.18003e7b0
mov r8, qword [rsp + 0x38]
mov rdx, rax
mov eax, 0xa02
mov word [rdx + 8], ax
mov rax, qword [r8 + 0x10]
mov qword [rdx + 0x10], rax
mov eax, dword [r8 + 4]
mov dword [rdx + 0xc], eax
mov byte [rdx + 0xa], dil
movsxd rax, dword [r8 + 0xc]
test eax, eax
jle 0x180044151
mov r15, qword [rsp + 0x38]
imul rcx, rax, 0x38
movzx eax, word [r8 + 2]
mov r8, qword [rsp + 0x40]
cmp qword [rcx + rsi], rax
jne 0x1800441ae
mov eax, 0xa10
mov word [rdx + 8], ax
jmp 0x180043624
mov rbx, qword [rsp + 0x38]
movsxd rax, dword [rbx + 8]
imul rcx, rax, 0x38
add rcx, qword [r13 + 0x68]
test word [rcx + 8], dx
je 0x18003ee33
call fcn.18003e7b0
mov r8, qword [rsp + 0x40]
mov rcx, rax
mov edx, 0x2400
mov r10d, 1
jmp 0x18003ee3c
mov eax, 4
mov word [rcx + 8], ax
cmp dword [rbx + 4], 0
mov esi, r10d
mov edi, dword [rbx + 0xc]
mov r9d, 0x101
mov eax, dword [rbx + 8]
cmovne si, r9w
sub edi, eax
mov word [rcx + 8], si
mov dword [rcx + 0xc], r14d
lea rbx, [rcx + 8]
test edi, edi
jle 0x1800441a4
nop word [rax + rax]
test word [rbx + 0x38], dx
lea rbx, [rbx + 0x38]
je 0x18003ee88
lea rcx, [rbx - 8]
call fcn.180030c20
mov edx, 0x2400
dec edi
mov word [rbx], si
mov dword [rbx + 4], r14d
test edi, edi
jg 0x18003ee70
mov r8, qword [rsp + 0x40]
mov r10d, 1
mov r15, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x60]
mov r9, qword [rsp + 0x50]
mov r13, qword [rbp - 0x78]
add r15, 0x18
mov rdi, qword [rbp + 0x10]
xor r14d, r14d
jmp 0x18003e930
mov rax, qword [rsp + 0x38]
mov r15, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov eax, 0xff41
add rcx, rsi
and word [rcx + 8], ax
or word [rcx + 8], 1
mov r13, qword [rbp - 0x78]
add r15, 0x18
mov rdi, qword [rbp + 0x10]
xor r14d, r14d
jmp 0x18003e930
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rbx, rax, 0x38
add rbx, qword [r13 + 0x68]
test word [rbx + 8], dx
je 0x18003ef1e
mov rcx, rbx
call fcn.18003e7b0
mov rbx, rax
jmp 0x18003ef27
mov eax, 4
mov word [rbx + 8], ax
mov rax, qword [rsp + 0x38]
xor r9d, r9d
mov rcx, rbx
mov qword [rsp + 0x20], r14
mov r8d, dword [rax + 4]
mov rdx, qword [rax + 0x10]
call fcn.180031670
movzx eax, byte [rsp + 0x48]
mov byte [rbx + 0xa], al
jmp 0x18004361a
mov rbx, qword [rsp + 0x38]
movsxd rax, dword [rbx + 4]
imul rdi, rax, 0x38
add rdi, qword [r13 + 0x80]
lea rcx, [rdi - 0x38]
call fcn.1800314b0
test eax, eax
jne 0x1800446ba
movsxd rax, dword [rbx + 8]
mov r15d, 0x2400
imul rbx, rax, 0x38
add rbx, rsi
test word [rbx + 8], r15w
je 0x18003ef96
mov rcx, rbx
call fcn.180030c20
movups xmm0, xmmword [rdi - 0x38]
mov ecx, 0xebff
movups xmmword [rbx], xmm0
movsd xmm1, qword [rdi - 0x28]
movsd qword [rbx + 0x10], xmm1
movzx eax, word [rbx + 8]
and ax, cx
mov ecx, 0x840
or ax, cx
mov word [rbx + 8], ax
jmp 0x18004361a
mov rcx, qword [rsp + 0x38]
mov r15d, 0x2400
movsxd rax, dword [rcx + 4]
mov esi, dword [rcx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
add rdi, qword [rsp + 0x60]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x60]
nop dword [rax]
test word [rbx + 8], r15w
jne 0x18003effd
cmp dword [rbx + 0x20], 0
je 0x18003f00b
mov rcx, rbx
call fcn.180030c60
mov r10d, 1
movups xmm0, xmmword [rdi]
mov eax, 0x1000
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], r14d
test word [rbx + 8], ax
je 0x18003f053
mov rcx, rbx
call fcn.1800308e0
test eax, eax
jne 0x180044682
lea r10d, [rax + 1]
add rdi, 0x38
add rbx, 0x38
sub esi, 1
jne 0x18003eff0
mov rsi, qword [rsp + 0x60]
mov r8, qword [rsp + 0x40]
mov r15, qword [rsp + 0x38]
mov r9, qword [rsp + 0x50]
jmp 0x18004362f
mov r12, qword [rsp + 0x38]
mov r14d, 0x1000
movsxd rax, dword [r12 + 4]
mov esi, dword [r12 + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [r12 + 8]
add rdi, qword [rsp + 0x60]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x60]
nop word [rax + rax]
mov r8d, r14d
mov rdx, rdi
mov rcx, rbx
call fcn.180031520
test word [rbx + 8], r14w
je 0x18003f0d5
mov rcx, rbx
call fcn.1800308e0
test eax, eax
jne 0x180044682
mov eax, esi
dec esi
test eax, eax
je 0x18004419f
add rbx, 0x38
add rdi, 0x38
jmp 0x18003f0b0
mov rcx, qword [rsp + 0x38]
mov r8d, 0x1000
movsxd rax, dword [rcx + 4]
imul rdx, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
add rdx, rsi
add rcx, rsi
call fcn.180031520
jmp 0x18004361a
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 8]
imul r8, rax, 0x38
movsxd rax, dword [rcx + 4]
imul rcx, rax, 0x38
add r8, rsi
mov rax, qword [rcx + rsi]
test word [r8 + 8], dx
je 0x18003f149
mov rdx, rax
mov rcx, r8
call fcn.180031270
jmp 0x18004361a
mov qword [r8], rax
mov eax, 4
mov word [r8 + 8], ax
mov r8, qword [rsp + 0x40]
mov r15, qword [rsp + 0x38]
mov r13, qword [rbp - 0x78]
add r15, 0x18
mov rdi, qword [rbp + 0x10]
xor r14d, r14d
jmp 0x18003e930
mov rbx, qword [rsp + 0x38]
movsxd rax, dword [rbx + 4]
imul r15, rax, 0x38
movsxd rax, dword [rbx + 8]
imul rdi, rax, 0x38
movsxd rax, dword [rbx + 0xc]
add r15, rsi
imul rbx, rax, 0x38
movzx r14d, word [r15 + 8]
add rdi, rsi
movzx eax, r14b
add rbx, rsi
or al, byte [rdi + 8]
test al, 1
je 0x18003f1db
test word [rbx + 8], dx
je 0x18003f1bd
mov rcx, rbx
call fcn.180030c20
jmp 0x18004361a
mov r15, qword [rsp + 0x38]
mov word [rbx + 8], r10w
mov r13, qword [rbp - 0x78]
add r15, 0x18
mov rdi, qword [rbp + 0x10]
xor r14d, r14d
jmp 0x18003e930
test r14b, 0x12
jne 0x18003f213
movzx r12d, byte [rsp + 0x48]
xor r8d, r8d
movzx edx, r12b
mov rcx, r15
call fcn.1800309c0
test eax, eax
jne 0x180044682
movzx r14d, word [r15 + 8]
mov eax, 0xfffd
and r14w, ax
mov eax, 0x4000
jmp 0x18003f247
mov eax, 0x4000
test ax, r14w
je 0x18003f241
mov rcx, r15
call fcn.180030940
test eax, eax
jne 0x180044682
movzx r14d, word [r15 + 8]
mov eax, 0xfffd
and r14w, ax
mov eax, 0x4000
movzx r12d, byte [rsp + 0x48]
movzx esi, word [rdi + 8]
test sil, 0x12
jne 0x18003f262
xor r8d, r8d
movzx edx, r12b
mov rcx, rdi
call fcn.1800309c0
jmp 0x18003f26f
test ax, si
je 0x18003f283
mov rcx, rdi
call fcn.180030940
test eax, eax
jne 0x180044682
movzx esi, word [rdi + 8]
mov eax, 0xfffd
and si, ax
mov rax, qword [rsp + 0x40]
mov r13d, dword [rdi + 0xc]
add r13d, dword [r15 + 0xc]
movsxd r12, r13d
movsxd rax, dword [rax + 0x7c]
cmp r12, rax
jg 0x1800446b6
xor r8d, r8d
lea edx, [r13 + 3]
cmp rbx, rdi
mov rcx, rbx
sete r8b
call fcn.1800306d0
test eax, eax
jne 0x18004491d
mov eax, 0x3e40
and word [rbx + 8], ax
or word [rbx + 8], 2
cmp rbx, rdi
je 0x18003f2e6
movsxd r8, dword [rdi + 0xc]
mov rdx, qword [rdi + 0x10]
mov rcx, qword [rbx + 0x10]
call sub.VCRUNTIME140.dll_memcpy
mov word [rdi + 8], si
movsxd rcx, dword [rdi + 0xc]
add rcx, qword [rbx + 0x10]
movsxd r8, dword [r15 + 0xc]
mov rdx, qword [r15 + 0x10]
call sub.VCRUNTIME140.dll_memcpy
mov r8, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x60]
mov word [r15 + 8], r14w
mov rax, qword [rbx + 0x10]
mov r15, qword [rsp + 0x38]
mov byte [r12 + rax], 0
mov rax, qword [rbx + 0x10]
mov byte [r12 + rax + 1], 0
mov rax, qword [rbx + 0x10]
mov byte [r12 + rax + 2], 0
mov eax, 0x200
or word [rbx + 8], ax
movzx eax, byte [rsp + 0x48]
mov r12d, dword [rsp + 0x30]
mov byte [rbx + 0xa], al
mov dword [rbx + 0xc], r13d
jmp 0x180043624
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, rsi
mov rcx, rdi
call fcn.18003e790
mov r14, qword [rsp + 0x60]
movzx ebx, ax
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 8]
imul rsi, rcx, 0x38
add rsi, r14
mov rcx, rsi
call fcn.18003e790
mov r15, qword [rsp + 0x38]
and al, bl
movsxd rcx, dword [r15 + 0xc]
imul rdx, rcx, 0x38
movzx ecx, word [rsi + 8]
or cx, word [rdi + 8]
add r14, rdx
test al, 4
je 0x18003f4ba
mov rdx, qword [rsi]
mov rax, r15
mov r8, qword [rdi]
mov qword [rbp - 0x48], rdx
movzx ecx, byte [rax]
sub ecx, 0x69
je 0x18003f448
sub ecx, 1
je 0x18003f436
sub ecx, 1
je 0x18003f420
cmp ecx, 1
je 0x18003f3f4
test r8, r8
je 0x18003f5ab
cmp r8, 0xffffffffffffffff
mov rax, rdx
mov ecx, 1
cqo
cmove r8, rcx
idiv r8
mov qword [rbp - 0x48], rdx
jmp 0x18003f489
test r8, r8
je 0x18003f5ab
cmp r8, 0xffffffffffffffff
jne 0x18003f416
movabs rax, 0x8000000000000000
cmp rdx, rax
je 0x18003f4c3
mov rax, rdx
cqo
idiv r8
jmp 0x18003f485
mov rdx, r8
lea rcx, [rbp - 0x48]
call fcn.18000b860
test eax, eax
jne 0x18003f4c3
jmp 0x18003f489
mov rdx, r8
lea rcx, [rbp - 0x48]
call fcn.18000b7f0
test eax, eax
jne 0x18003f4c3
jmp 0x18003f489
test r8, r8
js 0x18003f466
test rdx, rdx
jle 0x18003f481
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, r8
jge 0x18003f481
jmp 0x18003f4c3
test rdx, rdx
jns 0x18003f481
movabs rax, 0x8000000000000001
lea rcx, [r8 + 1]
sub rax, rdx
cmp rax, rcx
jg 0x18003f4c3
lea rax, [rdx + r8]
mov qword [rbp - 0x48], rax
mov rax, qword [rbp - 0x48]
mov ecx, 0x3e40
mov r15, qword [rsp + 0x38]
mov r8, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x60]
mov qword [r14], rax
movzx eax, word [r14 + 8]
and ax, cx
or ax, 4
mov word [r14 + 8], ax
jmp 0x180043624
test cl, 1
jne 0x18003f5b0
mov rcx, rdi
call fcn.180030da0
mov rcx, rsi
movaps xmm6, xmm0
call fcn.180030da0
mov rax, qword [rsp + 0x38]
movzx ecx, byte [rax]
sub ecx, 0x69
je 0x18003f548
sub ecx, 1
je 0x18003f542
sub ecx, 1
je 0x18003f53c
cmp ecx, 1
je 0x18003f52e
mov rcx, rdi
call fcn.180030d40
mov rcx, rsi
mov rbx, rax
call fcn.180030d40
mov qword [rbp - 0x48], rax
test rbx, rbx
je 0x18003f5ab
cmp rbx, 0xffffffffffffffff
mov ecx, 1
cqo
xorps xmm0, xmm0
cmove rbx, rcx
idiv rbx
cvtsi2sd xmm0, rdx
jmp 0x18003f54c
ucomisd xmm6, xmm7
jp 0x18003f536
je 0x18003f5ab
divsd xmm0, xmm6
jmp 0x18003f54c
mulsd xmm0, xmm6
jmp 0x18003f54c
subsd xmm0, xmm6
jmp 0x18003f54c
addsd xmm0, xmm6
movabs rcx, 0xfffffffffffff
movsd qword [rbp - 0x40], xmm0
mov rax, qword [rbp - 0x40]
movabs rdx, 0x7ff0000000000000
test rcx, rax
setne cl
and rax, rdx
cmp rax, rdx
sete al
test al, cl
jne 0x18003f5ab
movzx eax, word [r14 + 8]
mov ecx, 0x3e40
mov r15, qword [rsp + 0x38]
and ax, cx
mov r8, qword [rsp + 0x40]
or ax, 8
mov rsi, qword [rsp + 0x60]
movsd qword [r14], xmm0
mov word [r14 + 8], ax
jmp 0x180043624
mov r15, qword [rsp + 0x38]
mov edx, 0x2400
test word [r14 + 8], dx
je 0x18003f5d3
mov rcx, r14
call fcn.180030c20
mov r8, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x60]
jmp 0x180043624
mov r8, qword [rsp + 0x40]
mov r10d, 1
mov rsi, qword [rsp + 0x60]
mov r9, qword [rsp + 0x50]
mov word [r14 + 8], r10w
mov r13, qword [rbp - 0x78]
add r15, 0x18
mov rdi, qword [rbp + 0x10]
xor r14d, r14d
jmp 0x18003e930
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
test eax, eax
je 0x18003ebb4
imul rcx, rax, 0x38
add rcx, rsi
test word [rcx + 8], dx
je 0x18003f62b
xor edx, edx
call fcn.180031270
jmp 0x18004361a
mov r15, qword [rsp + 0x38]
mov eax, 4
mov word [rcx + 8], ax
mov qword [rcx], r14
mov r13, qword [rbp - 0x78]
add r15, 0x18
mov rdi, qword [rbp + 0x10]
xor r14d, r14d
jmp 0x18003e930
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x38]
add rdi, rsi
add rcx, rsi
movsxd rax, dword [rax + 0xc]
imul rsi, rax, 0x38
movzx eax, byte [rcx + 8]
add rsi, qword [rsp + 0x60]
or al, byte [rdi + 8]
test al, 1
je 0x18003f6cd
test word [rsi + 8], dx
je 0x18003f6aa
mov rcx, rsi
call fcn.180030c20
mov r8, qword [rsp + 0x40]
mov r15, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x60]
jmp 0x180043624
mov r15, qword [rsp + 0x38]
mov word [rsi + 8], r10w
mov rsi, qword [rsp + 0x60]
mov r13, qword [rbp - 0x78]
add r15, 0x18
mov rdi, qword [rbp + 0x10]
xor r14d, r14d
jmp 0x18003e930
call fcn.180030d40
mov rcx, rdi
mov rbx, rax
call fcn.180030d40
mov r15, qword [rsp + 0x38]
mov rcx, rax
movzx edx, byte [r15]
cmp dl, 0x65
jne 0x18003f6f3
and rbx, rax
jmp 0x18003f767
cmp dl, 0x66
jne 0x18003f6fd
or rbx, rcx
jmp 0x18003f767
test rcx, rcx
je 0x18003f767
jns 0x18003f717
mov eax, 0xcf
sub al, dl
movzx edx, al
cmp rcx, 0xffffffffffffffc0
jle 0x18003f71d
neg rcx
cmp rcx, 0x40
jl 0x18003f735
test rbx, rbx
jns 0x18003f730
cmp dl, 0x67
je 0x18003f730
mov rbx, 0xffffffffffffffff
jmp 0x18003f767
mov rbx, r14
jmp 0x18003f767
cmp dl, 0x67
jne 0x18003f742
shl rbx, cl
mov r8, rbx
jmp 0x18003f764
mov r8, rbx
shr r8, cl
test rbx, rbx
jns 0x18003f764
mov eax, 0x40
mov rdx, 0xffffffffffffffff
sub al, cl
movzx ecx, al
shl rdx, cl
or r8, rdx
mov rbx, r8
mov r8, qword [rsp + 0x40]
mov eax, 0x3e40
and word [rsi + 8], ax
or word [rsi + 8], 4
mov qword [rsi], rbx
mov rsi, qword [rsp + 0x60]
jmp 0x180043624
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, rsi
mov rcx, rbx
call fcn.180030d40
mov r15, qword [rsp + 0x38]
mov ecx, 0x3e40
and word [rbx + 8], cx
or word [rbx + 8], 4
mov r8, qword [rsp + 0x40]
mov qword [rbx], rax
movsxd rcx, dword [r15 + 8]
add rcx, rax
mov qword [rbx], rcx
jmp 0x180043624
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, rsi
movzx eax, word [rbx + 8]
test al, 4
jne 0x18003f82e
movzx r8d, byte [rsp + 0x48]
mov dl, 0x43
mov rcx, rbx
call fcn.18003e620
movzx eax, word [rbx + 8]
test al, 4
jne 0x18003f819
mov r15, qword [rsp + 0x38]
cmp dword [r15 + 8], 0
je 0x1800443e6
mov r9, qword [rsp + 0x50]
mov r10d, 1
jmp 0x1800400d5
mov r8, qword [rsp + 0x40]
mov edx, 0x2400
mov r9, qword [rsp + 0x50]
mov r10d, 1
mov r15, qword [rsp + 0x38]
mov ecx, 0x3e40
and ax, cx
or ax, 4
mov word [rbx + 8], ax
mov r13, qword [rbp - 0x78]
add r15, 0x18
mov rdi, qword [rbp + 0x10]
xor r14d, r14d
jmp 0x18003e930
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, rsi
test byte [rbx + 8], 0x24
je 0x18003ebb4
mov rcx, rbx
call fcn.180030da0
mov eax, 0x3e40
movsd qword [rbx], xmm0
and word [rbx + 8], ax
or word [rbx + 8], 8
jmp 0x18004361a
mov r12, qword [rsp + 0x38]
movsxd rax, dword [r12 + 4]
imul rbx, rax, 0x38
mov eax, 0x4000
add rbx, rsi
test word [rbx + 8], ax
je 0x18003f8c3
mov rcx, rbx
call fcn.180030940
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x180041ee2
movzx r8d, byte [rsp + 0x48]
mov rcx, rbx
movzx edx, byte [r12 + 8]
call fcn.180031070
jmp 0x18004388d
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
imul r14, rax, 0x38
movsxd rax, dword [rcx + 0xc]
add r14, rsi
imul rcx, rax, 0x38
movzx edi, word [r14 + 8]
add rsi, rcx
movzx ebx, word [rsi + 8]
movzx edx, bx
or dx, di
test dl, 1
je 0x18003f9a0
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
test al, al
jns 0x18003f954
movzx eax, bl
and al, dil
test al, 1
je 0x18003f93f
mov eax, 0x100
test ax, bx
jne 0x18003f93f
mov rax, qword [rsp + 0x38]
xor edx, edx
movzx eax, byte [rax]
jmp 0x18003fb6d
movzx eax, bx
not ax
and eax, 1
lea edx, [rax*2 - 1]
jmp 0x18003fb41
test al, 0x20
je 0x18003f989
mov rax, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x60]
mov r15, qword [rsp + 0x38]
mov dword [rbp - 0x68], r10d
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
mov eax, 0x3e40
add rcx, rsi
and word [rcx + 8], ax
or word [rcx + 8], 1
jmp 0x18004362f
test al, 0x10
jne 0x1800400d0
mov r15, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x60]
jmp 0x18004362f
mov r15, qword [rsp + 0x38]
movzx eax, byte [r15 + 2]
and al, 0x47
cmp al, 0x43
jb 0x18003fab0
movzx ecx, bx
test dl, 2
je 0x18003f9ee
movzx eax, dil
and al, 0x2e
cmp al, 2
jne 0x18003f9d4
xor edx, edx
mov rcx, r14
call fcn.18003e4e0
movzx ebx, word [rsi + 8]
movzx eax, bl
movzx ecx, bx
and al, 0x2e
cmp al, 2
jne 0x18003f9ee
xor edx, edx
mov rcx, rsi
call fcn.18003e4e0
movzx ecx, word [rsi + 8]
movzx eax, byte [r14 + 8]
and al, cl
test al, 4
je 0x18003fb25
mov rax, qword [rsi]
cmp rax, qword [r14]
jle 0x18003fa91
movzx eax, byte [r15]
mov r10d, 1
mov edx, r10d
lea rcx, [0x180000000]
movzx ecx, byte [rax + rcx + 0x131900]
mov r15, qword [rsp + 0x38]
mov word [rsi + 8], bx
mov word [r14 + 8], di
movzx r8d, cl
movzx r9d, word [r15 + 2]
test r9b, 0x20
je 0x18003fb87
movsxd rax, dword [r15 + 8]
mov rsi, qword [rsp + 0x60]
imul rcx, rax, 0x38
mov dword [rbp - 0x68], edx
add rcx, rsi
test r9b, 8
je 0x18003fa71
xor eax, eax
cmp byte [r15], 0x35
sete al
cmp eax, r8d
je 0x180044190
mov r9, qword [rsp + 0x50]
mov eax, 0x3e40
and word [rcx + 8], ax
or word [rcx + 8], 4
mov qword [rcx], r8
mov r8, qword [rsp + 0x40]
jmp 0x18004362f
jge 0x18003faa1
movzx eax, byte [r15]
mov edx, 0xffffffff
jmp 0x18003fb4d
mov rax, qword [rsp + 0x38]
xor edx, edx
movzx eax, byte [rax]
jmp 0x18003fb6d
cmp al, 0x42
jne 0x18003fb25
movzx r15d, byte [rsp + 0x48]
test dil, 2
jne 0x18003faf8
test dil, 0x2c
je 0x18003faf8
mov r8b, 1
movzx edx, r15b
mov rcx, r14
call fcn.1800309c0
movzx eax, di
mov r13d, 0x3e40
xor ax, word [r14 + 8]
and ax, r13w
xor di, ax
cmp r14, rsi
jne 0x18003fafe
movzx ebx, di
or bx, 2
jmp 0x18003fafe
mov r13d, 0x3e40
test bl, 2
jne 0x18003fb25
test bl, 0x2c
je 0x18003fb25
mov r8b, 1
movzx edx, r15b
mov rcx, rsi
call fcn.1800309c0
movzx eax, bx
xor ax, word [rsi + 8]
and ax, r13w
xor bx, ax
mov rax, qword [rsp + 0x38]
mov rdx, r14
mov rcx, rsi
mov r8, qword [rax + 0x10]
call fcn.180038a30
mov edx, eax
mov r10d, 1
mov rax, qword [rsp + 0x38]
movzx eax, byte [rax]
test edx, edx
jns 0x18003fb67
lea rcx, [0x180000000]
mov r10d, 1
movzx ecx, byte [rax + rcx + 0x130bb4]
jmp 0x18003fa25
jne 0x18003fa16
lea rcx, [0x180000000]
mov r10d, 1
movzx ecx, byte [rax + rcx + 0x133e70]
jmp 0x18003fa25
mov r9, qword [rsp + 0x50]
test cl, cl
jne 0x1800400d5
mov r8, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x60]
jmp 0x18004362f
cmp dword [rbp - 0x68], 0
jne 0x1800400d5
mov r13, qword [rbp - 0x78]
add r15, 0x18
mov rdi, qword [rbp + 0x10]
xor r14d, r14d
jmp 0x18003e930
mov rax, qword [rsp + 0x38]
test byte [rax + 2], 1
jne 0x18003fbd1
mov r13, r14
jmp 0x18003fbd9
mov r13, qword [rax - 8]
add r13, 4
mov rdx, qword [rax + 0x10]
mov edi, r14d
mov r8d, dword [rax + 4]
mov rbx, r14
mov r9d, dword [rax + 8]
movsxd rax, dword [rax + 0xc]
mov qword [rbp - 0x40], rdx
mov dword [rbp - 0x70], r8d
mov dword [rsp + 0x70], r9d
mov qword [rbp + 0x40], rax
test rax, rax
jle 0x18003f065
lea r12, [rdx + 0x20]
nop dword [rax]
test r13, r13
je 0x18003fc1c
mov ecx, dword [r13 + rbx*4]
jmp 0x18003fc1e
mov ecx, edi
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 esi, byte [rax + rbx]
add rdx, qword [rsp + 0x60]
and esi, 1
add rcx, qword [rsp + 0x60]
call fcn.180038a30
mov dword [rbp - 0x68], eax
mov edx, eax
test eax, eax
jne 0x18003fc76
mov rdx, qword [rbp - 0x40]
inc edi
mov r8d, dword [rbp - 0x70]
inc rbx
mov r9d, dword [rsp + 0x70]
add r12, 8
cmp rbx, qword [rbp + 0x40]
jl 0x18003fc10
jmp 0x180043844
mov rax, qword [rbp - 0x40]
mov rax, qword [rax + 0x18]
test byte [rbx + rax], 2
je 0x18003fca4
mov rcx, qword [rsp + 0x60]
imul rax, r14, 0x38
test byte [rax + rcx + 8], 1
jne 0x18003fc9f
imul rax, r15, 0x38
test byte [rax + rcx + 8], 1
je 0x18003fca4
neg edx
mov dword [rbp - 0x68], edx
mov r8, qword [rsp + 0x40]
test esi, esi
mov rsi, qword [rsp + 0x60]
mov r15, qword [rsp + 0x38]
je 0x1800441ae
mov r12d, dword [rsp + 0x30]
neg edx
mov dword [rbp - 0x68], edx
jmp 0x180043624
mov edx, dword [rbp - 0x68]
mov rax, qword [rsp + 0x38]
test edx, edx
jns 0x18003fcea
mov eax, dword [rax + 4]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r15, [r9 + rcx*8]
jmp 0x18004362f
mov edx, 0x2400
jne 0x18003fd14
mov eax, dword [rax + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r15, [r9 + rcx*8]
mov r13, qword [rbp - 0x78]
add r15, 0x18
mov rdi, qword [rbp + 0x10]
xor r14d, r14d
jmp 0x18003e930
mov eax, dword [rax + 0xc]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r15, [r9 + rcx*8]
mov r13, qword [rbp - 0x78]
add r15, 0x18
mov rdi, qword [rbp + 0x10]
xor r14d, r14d
jmp 0x18003e930
mov rax, qword [rsp + 0x38]
mov r14d, 2
mov edx, r14d
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
add rcx, rsi
call fcn.180030dd0
mov ebx, eax
mov edx, r14d
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 8]
imul rcx, rcx, 0x38
add rcx, rsi
call fcn.180030dd0
lea eax, [rax + rbx*2]
add eax, ebx
movsxd rcx, eax
mov rax, qword [rsp + 0x38]
cmp byte [rax], 0x2c
jne 0x18003fd8c
movzx r8d, byte [rcx + rdi + 0x132b68]
jmp 0x18003fd95
movzx r8d, byte [rcx + rdi + 0x132af0]
movsxd rax, dword [rax + 0xc]
imul rdx, rax, 0x38
mov eax, 0x3e40
movzx ecx, word [rdx + rsi + 8]
and cx, ax
cmp r8b, r14b
jne 0x18003fdbd
or cx, 1
mov word [rdx + rsi + 8], cx
jmp 0x18004361a
movzx eax, r8b
or cx, 4
mov qword [rdx + rsi], rax
mov word [rdx + rsi + 8], cx
jmp 0x18004361a
mov r8, qword [rsp + 0x38]
movsxd rax, dword [r8 + 4]
mov edx, dword [r8 + 0xc]
imul rcx, rax, 0x38
add rcx, rsi
call fcn.180030dd0
movsxd rcx, eax
mov r15d, 0x2400
mov rax, qword [rsp + 0x38]
movsxd rdx, dword [rax + 0x10]
movsxd rax, dword [rax + 8]
xor rdx, rcx
imul rcx, rax, 0x38
add rcx, rsi
test word [rcx + 8], r15w
jne 0x18003f13f
mov eax, 4
mov qword [rcx], rdx
mov word [rcx + 8], ax
jmp 0x18004361a
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, rsi
add rbx, rsi
test byte [rcx + 8], 1
jne 0x18003f1aa
xor edx, edx
call fcn.180030dd0
test eax, eax
mov rcx, r14
mov edx, 0x2400
sete cl
test word [rbx + 8], dx
je 0x18003fe77
mov rdx, rcx
mov rcx, rbx
call fcn.180031270
jmp 0x18004361a
mov r8, qword [rsp + 0x40]
mov eax, 4
mov r15, qword [rsp + 0x38]
mov r9, qword [rsp + 0x50]
mov qword [rbx], rcx
lea r10d, [rax - 3]
mov word [rbx + 8], ax
mov r13, qword [rbp - 0x78]
add r15, 0x18
mov rdi, qword [rbp + 0x10]
xor r14d, r14d
jmp 0x18003e930
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rdi, rsi
add rbx, rsi
test word [rbx + 8], dx
je 0x18003feda
mov rcx, rbx
call fcn.180030c20
mov r8, qword [rsp + 0x40]
jmp 0x18003fedf
mov word [rbx + 8], r10w
test byte [rdi + 8], 1
jne 0x1800441a9
mov eax, 4
mov rcx, rdi
mov word [rbx + 8], ax
call fcn.180030d40
not rax
mov qword [rbx], rax
jmp 0x18004361a
mov rcx, qword [r13 + 0x100]
mov rax, qword [rsp + 0x38]
test rcx, rcx
je 0x18003ff82
sub rax, qword [r13 + 0x88]
movabs rdx, 0xaaaaaaaaaaaaaaab
mov r8, qword [rcx + 0x30]
sar rax, 3
imul rax, rdx
mov edx, eax
and eax, 7
shr rdx, 3
movzx ecx, byte [rdx + r8]
bt ecx, eax
jb 0x1800400d0
mov r15, qword [rsp + 0x38]
bts ecx, eax
mov byte [rdx + r8], cl
mov edx, 0x2400
mov rcx, qword [r13 + 0x88]
mov r8, qword [rsp + 0x40]
mov eax, dword [rcx + 4]
mov dword [r15 + 4], eax
mov r13, qword [rbp - 0x78]
add r15, 0x18
mov rdi, qword [rbp + 0x10]
xor r14d, r14d
jmp 0x18003e930
mov rcx, qword [r13 + 0x88]
mov eax, dword [rax + 4]
cmp dword [rcx + 4], eax
je 0x1800400d0
mov r15, qword [rsp + 0x38]
mov eax, dword [rcx + 4]
mov dword [r15 + 4], eax
mov r13, qword [rbp - 0x78]
add r15, 0x18
mov rdi, qword [rbp + 0x10]
xor r14d, r14d
jmp 0x18003e930
mov r8, qword [rsp + 0x38]
movsxd rax, dword [r8 + 4]
mov edx, dword [r8 + 0xc]
imul rcx, rax, 0x38
add rcx, rsi
call fcn.180030dd0
mov r15, qword [rsp + 0x38]
mov r10d, 1
mov r9, qword [rsp + 0x50]
test eax, eax
jne 0x1800400d5
mov r8, qword [rsp + 0x40]
jmp 0x18004362f
mov rax, qword [rsp + 0x38]
mov edx, r14d
cmp dword [rax + 0xc], 0
movsxd rax, dword [rax + 4]
sete dl
imul rcx, rax, 0x38
add rcx, rsi
call fcn.180030dd0
mov r15, qword [rsp + 0x38]
mov r10d, 1
mov r9, qword [rsp + 0x50]
test eax, eax
je 0x1800400d5
mov r8, qword [rsp + 0x40]
jmp 0x18004362f
mov rax, qword [rsp + 0x38]
mov r15, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
test byte [rcx + rsi + 8], 1
jne 0x1800400d5
mov r13, qword [rbp - 0x78]
add r15, 0x18
mov rdi, qword [rbp + 0x10]
xor r14d, r14d
jmp 0x18003e930
mov rax, qword [rsp + 0x38]
mov r15, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
test byte [rcx + rsi + 8], 1
je 0x1800400d5
mov r13, qword [rbp - 0x78]
add r15, 0x18
mov rdi, qword [rbp + 0x10]
xor r14d, r14d
jmp 0x18003e930
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx + 2], 0
je 0x18003ebb4
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, rsi
test word [rcx + 8], dx
je 0x1800400fe
call fcn.180030c20
mov r10d, 1
mov r9, qword [rsp + 0x50]
mov r15, qword [rsp + 0x38]
mov eax, dword [r15 + 8]
mov rsi, qword [rsp + 0x60]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r8, [r9 + rcx*8]
mov qword [rsp + 0x38], r8
mov r15, qword [rsp + 0x38]
mov r8, qword [rsp + 0x40]
jmp 0x18004362f
mov word [rcx + 8], r10w
jmp 0x1800400d0
mov rax, qword [r13 + 0x78]
lea rdx, [rbp - 0x64]
mov r12, qword [rsp + 0x38]
movsxd rcx, dword [r12 + 4]
mov rcx, qword [rax + rcx*8]
mov qword [rbp - 0x80], rcx
lea rcx, [rbp - 0x80]
mov eax, dword [r12 + 8]
mov dword [rbp - 0x64], eax
call fcn.180037e90
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x180041ee2
movsxd rax, dword [r12 + 0xc]
mov r9, qword [rbp - 0x80]
mov rdi, qword [rbp - 0x78]
imul r13, rax, 0x38
mov eax, dword [rdi + 0x30]
mov r12, qword [r9 + 0x60]
add r13, rsi
cmp dword [r9 + 0x28], eax
je 0x1800402f3
cmp byte [r9 + 2], r8b
je 0x1800401f2
cmp byte [r9], 3
jne 0x1800401a1
movsxd rax, dword [r9 + 0x2c]
imul rdx, rax, 0x38
mov ecx, dword [rdx + rsi + 0xc]
mov dword [r9 + 0x74], ecx
mov rax, qword [rbp - 0x80]
mov dword [rax + 0x70], ecx
mov rcx, qword [rdx + rsi + 0x10]
mov rax, qword [rbp - 0x80]
mov qword [rax + 0x68], rcx
mov rcx, qword [rbp - 0x80]
jmp 0x180040235
mov edx, 0x2400
test word [r13 + 8], dx
je 0x1800401bf
mov rcx, r13
call fcn.180030c20
mov r12d, dword [rsp + 0x30]
jmp 0x18004361a
mov r12d, dword [rsp + 0x30]
mov r10d, 1
mov r8, qword [rsp + 0x40]
mov r15, qword [rsp + 0x38]
mov r9, qword [rsp + 0x50]
mov word [r13 + 8], r10w
mov r13, qword [rbp - 0x78]
add r15, 0x18
mov rdi, qword [rbp + 0x10]
xor r14d, r14d
jmp 0x18003e930
mov rbx, qword [r9 + 0x38]
mov rcx, rbx
call fcn.1800260c0
mov ecx, dword [rbx + 0x40]
mov rax, qword [rbp - 0x80]
mov dword [rax + 0x70], ecx
mov rcx, rbx
mov rdx, qword [rbp - 0x80]
add rdx, 0x74
call fcn.180026850
mov rcx, qword [rbp - 0x80]
mov qword [rcx + 0x68], rax
mov rax, qword [rsp + 0x40]
mov rcx, qword [rbp - 0x80]
mov eax, dword [rax + 0x7c]
cmp dword [rcx + 0x70], eax
ja 0x1800446b1
mov eax, dword [rdi + 0x30]
mov dword [rcx + 0x28], eax
mov rax, qword [rbp - 0x80]
mov rcx, qword [rax + 0x68]
movzx eax, byte [rcx]
cmp al, 0x80
jae 0x180040252
mov dword [r12], eax
mov al, 1
jmp 0x18004025a
mov rdx, r12
call fcn.18000b520
movzx ecx, al
mov rax, qword [rbp - 0x80]
mov dword [rax + 0x48], ecx
mov rax, qword [rbp - 0x80]
mov word [rax + 0x52], r14w
mov r9, qword [rbp - 0x80]
mov eax, dword [r12]
cmp dword [r9 + 0x74], eax
jae 0x1800402ed
mov qword [r9 + 0x68], r14
mov rax, qword [rbp - 0x80]
mov dword [rax + 0x74], r14d
mov eax, dword [r12]
cmp eax, 0x18003
ja 0x18004029c
mov r9, qword [rbp - 0x80]
cmp eax, dword [r9 + 0x70]
jbe 0x1800402f3
mov edx, 0x2400
mov r9, qword [rsp + 0x50]
mov eax, dword [r9 + 0xc]
test eax, eax
jle 0x1800443f1
mov r12d, dword [rsp + 0x30]
dec eax
movsxd rcx, eax
mov r10d, 1
lea rax, [rcx + rcx*2]
lea r8, [r9 + rax*8]
mov qword [rsp + 0x38], r8
mov r15, qword [rsp + 0x38]
mov r8, qword [rsp + 0x40]
mov r13, qword [rbp - 0x78]
add r15, 0x18
mov rdi, qword [rbp + 0x10]
xor r14d, r14d
jmp 0x18003e930
mov rcx, qword [r9 + 0x68]
jmp 0x180040368
movzx eax, word [r9 + 0x52]
mov r8d, dword [rbp - 0x64]
cmp eax, r8d
ja 0x180040512
mov eax, dword [r12]
cmp dword [r9 + 0x48], eax
jae 0x1800404cd
mov rcx, qword [r9 + 0x68]
mov qword [rsp + 0x70], rcx
test rcx, rcx
jne 0x18004036d
xorps xmm0, xmm0
lea r8, [rbp + 0x60]
movups xmmword [rbp + 0x60], xmm0
xor eax, eax
movups xmmword [rbp + 0x70], xmm0
mov qword [rbp + 0x90], rax
movups xmmword [rbp + 0x80], xmm0
mov edx, dword [r12]
mov rcx, qword [r9 + 0x38]
call fcn.180031a80
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x180041ee2
mov rcx, qword [rbp + 0x70]
mov eax, dword [r12]
mov r9, qword [rbp - 0x80]
mov qword [rsp + 0x70], rcx
movzx r14d, word [r9 + 0x52]
mov ebx, dword [r9 + 0x48]
mov edi, r14d
add rbx, rcx
mov r15d, eax
add r15, rcx
mov ecx, 0x80
mov esi, dword [r12 + r14*4]
nop dword [rax + rax]
movzx eax, byte [rbx]
mov dword [rsp + 0x68], eax
mov dword [r9 + rdi*4 + 0x78], eax
mov eax, dword [rsp + 0x68]
cmp eax, ecx
jae 0x1800403bb
movzx eax, al
lea rdx, [0x180000000]
inc rbx
movzx eax, byte [rax + rdx + 0x135370]
jmp 0x1800403fd
lea rdx, [rsp + 0x68]
mov rcx, rbx
call fcn.18000b520
mov rcx, qword [rbp - 0x80]
movzx eax, al
add rbx, rax
mov eax, dword [rsp + 0x68]
mov dword [rcx + rdi*4 + 0x78], eax
mov ecx, 0x80
mov eax, dword [rsp + 0x68]
cmp eax, ecx
jb 0x1800403ee
add eax, 0xfffffff4
shr eax, 1
jmp 0x1800403fd
lea rdx, [0x180000000]
movzx eax, byte [rax + rdx + 0x135370]
inc r14d
add rsi, rax
movsxd rdi, r14d
mov dword [r12 + rdi*4], esi
mov r9, qword [rbp - 0x80]
cmp r14d, dword [rbp - 0x64]
ja 0x18004041f
cmp rbx, r15
jb 0x180040390
jmp 0x180040424
cmp rbx, r15
jb 0x180040432
cmp rbx, r15
ja 0x18004043b
mov eax, dword [r9 + 0x70]
cmp rsi, rax
jne 0x18004043b
mov eax, dword [r9 + 0x70]
cmp rsi, rax
jbe 0x180040448
cmp dword [r12], 0
jne 0x180040495
xor r14d, r14d
mov rbx, r15
sub ebx, dword [rsp + 0x70]
mov r15d, 0x2400
mov word [r9 + 0x52], r14w
mov rax, qword [rbp - 0x80]
mov dword [rax + 0x48], ebx
mov r9, qword [rbp - 0x80]
cmp qword [r9 + 0x68], 0
jne 0x180040486
test word [rbp + 0x68], r15w
jne 0x180040479
cmp dword [rbp + 0x80], 0
je 0x180040486
lea rcx, [rbp + 0x60]
call fcn.180030c60
mov r9, qword [rbp - 0x80]
mov r8d, dword [rbp - 0x64]
mov edx, dword [rsp + 0x68]
mov rsi, qword [rsp + 0x60]
jmp 0x1800404da
cmp qword [r9 + 0x68], 0
mov edx, 0x2400
jne 0x1800404c3
test word [rbp + 0x68], dx
jne 0x1800404b0
cmp dword [rbp + 0x80], 0
je 0x1800404c3
lea rcx, [rbp + 0x60]
call fcn.180030c60
mov rsi, qword [rsp + 0x60]
jmp 0x18004029c
mov rsi, qword [rsp + 0x60]
jmp 0x1800402a1
mov edx, r14d
mov r15d, 0x2400
mov dword [rsp + 0x68], edx
movzx eax, word [r9 + 0x52]
cmp eax, r8d
ja 0x180040521
mov r12, qword [rsp + 0x38]
cmp byte [r12 + 1], 0xf5
jne 0x1800401a1
mov rdx, qword [r12 + 0x10]
mov r8d, 0x800
mov rcx, r13
call fcn.180031520
mov r12d, dword [rsp + 0x30]
jmp 0x18004361a
mov edx, dword [r9 + r8*4 + 0x78]
mov r15d, 0x2400
mov dword [rsp + 0x68], edx
test word [r13 + 8], r15w
je 0x18004053c
mov rcx, r13
call fcn.180030c20
mov r9, qword [rbp - 0x80]
mov r8d, dword [rbp - 0x64]
mov edx, dword [rsp + 0x68]
lea eax, [r8 + 1]
mov eax, dword [r12 + rax*4]
cmp dword [r9 + 0x74], eax
jb 0x1800405fa
mov eax, r8d
mov edi, dword [r12 + rax*4]
add rdi, qword [r9 + 0x68]
cmp edx, 0xc
jae 0x180040573
mov r8, r13
mov rcx, rdi
call fcn.180038040
mov r12d, dword [rsp + 0x30]
jmp 0x18004361a
movzx eax, byte [rsp + 0x48]
lea ebx, [rdx - 0xc]
shr ebx, 1
mov dword [r13 + 0xc], ebx
mov byte [r13 + 0xa], al
lea edx, [rbx + 2]
cmp dword [r13 + 0x20], edx
jge 0x1800405b1
mov ecx, 1
xor r8d, r8d
mov word [r13 + 8], cx
mov rcx, r13
call fcn.1800306d0
test eax, eax
jne 0x18004491d
mov rcx, qword [r13 + 0x10]
jmp 0x1800405b9
mov rcx, qword [r13 + 0x18]
mov qword [r13 + 0x10], rcx
mov r8d, ebx
mov rdx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov rax, qword [r13 + 0x10]
lea rcx, [0x180000000]
mov r12d, dword [rsp + 0x30]
mov byte [rbx + rax], 0
mov rax, qword [r13 + 0x10]
mov byte [rbx + rax + 1], 0
mov eax, dword [rsp + 0x68]
and eax, 1
movzx eax, word [rcx + rax*2 + 0x132aec]
mov word [r13 + 8], ax
jmp 0x18004361a
movzx eax, byte [rsp + 0x48]
mov byte [r13 + 0xa], al
mov rax, qword [rsp + 0x38]
mov edx, dword [rsp + 0x68]
movzx eax, word [rax + 2]
test al, 0xc0
je 0x180040622
cmp edx, 0xc
jb 0x18004061e
test dl, 1
je 0x180040649
test al, al
js 0x180040649
mov eax, 0x80
cmp edx, eax
jb 0x180040634
lea r8d, [rdx - 0xc]
shr r8d, 1
jmp 0x180040644
lea rcx, [0x180000000]
movzx r8d, byte [rdx + rcx + 0x135370]
test r8d, r8d
jne 0x180040662
mov r8, r13
lea rcx, [0x180134c40]
call fcn.180038040
mov r12d, dword [rsp + 0x30]
jmp 0x18004361a
mov eax, dword [rbp - 0x64]
mov r9, r13
mov rcx, qword [rbp - 0x80]
mov edx, dword [r12 + rax*4]
mov rcx, qword [rcx + 0x38]
call fcn.180031970
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x180041ee2
mov edx, dword [rsp + 0x68]
mov r8, r13
mov rcx, qword [r13 + 0x10]
call fcn.180038040
mov r12d, dword [rsp + 0x30]
mov eax, 0xefff
and word [r13 + 8], ax
jmp 0x18004361a
mov r12, qword [rsp + 0x38]
movsxd rax, dword [r12 + 4]
mov rdi, qword [r12 + 0x10]
imul rbx, rax, 0x38
movzx eax, byte [rdi]
add rbx, rsi
nop word [rax + rax]
movzx r8d, byte [rsp + 0x48]
movzx edx, al
mov rcx, rbx
call fcn.18003e620
cmp byte [rdi], 0x45
jne 0x180040733
movzx ecx, word [rbx + 8]
test cl, 4
je 0x180040733
mov rdx, qword [rbx]
movabs rax, 0x800000000000
add rax, rdx
movabs r8, 0xffffffffffff
cmp rax, r8
mov eax, 0xfffb
ja 0x18004071c
and cx, ax
or cx, 0x20
jmp 0x18004072f
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 0x180044151
add rbx, 0x38
jmp 0x1800406d0
mov rcx, qword [rsp + 0x38]
mov rdx, r14
mov r15, r14
mov qword [rsp + 0x70], rdx
mov r12d, r14d
movsxd rax, dword [rcx + 4]
mov rdi, qword [rcx + 0x10]
imul r13, rax, 0x38
mov eax, dword [rcx + 8]
dec eax
add r13, rsi
cdqe
imul rsi, rax, 0x38
mov rax, qword [rbp - 0x78]
add rsi, r13
mov qword [rbp + 0x40], r13
mov qword [rbp - 0x40], rsi
movzx r9d, byte [rax + 0xc3]
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
mov byte [rsp + 0x78], r9b
add rcx, qword [rsp + 0x60]
mov qword [rbp - 0x70], rcx
test rdi, rdi
je 0x18004080f
movzx eax, byte [rdi]
lea rbx, [r13 + 8]
movzx esi, byte [rsp + 0x48]
mov r13d, 0xfffb
nop dword [rax]
lea rcx, [rbx - 8]
movzx r8d, sil
movzx edx, al
call fcn.18003e620
cmp byte [rdi], 0x45
jne 0x1800407e7
movzx eax, word [rbx]
test al, 4
je 0x1800407e7
and ax, r13w
or ax, 0x20
mov word [rbx], ax
movzx eax, byte [rdi + 1]
inc rdi
add rbx, 0x38
test al, al
jne 0x1800407c0
mov r13, qword [rbp + 0x40]
mov r10d, 1
movzx r9d, byte [rsp + 0x78]
mov rdx, qword [rsp + 0x70]
mov rsi, qword [rbp - 0x40]
lea r14, [rsi + 0x24]
movzx ecx, word [r14 - 0x1c]
test cl, 1
je 0x180040838
mov eax, 0x4000
and cx, ax
neg cx
sbb eax, eax
and eax, 0xa
mov dword [r14], eax
inc r12d
jmp 0x1800409b3
test cl, 0x24
je 0x180040933
mov r8, qword [r14 - 0x24]
mov rdx, r8
test r8, r8
jns 0x180040850
not rdx
inc r12d
cmp rdx, 0x7f
ja 0x180040883
mov rax, r8
and eax, 1
cmp rax, r8
jne 0x180040875
cmp r9b, 4
jb 0x180040875
lea eax, [rdx + 8]
mov dword [r14], eax
jmp 0x1800409b3
mov eax, r10d
inc r15
mov dword [r14], eax
jmp 0x1800409b3
cmp rdx, 0x7fff
ja 0x18004089d
mov eax, 2
add r15, 2
mov dword [r14], eax
jmp 0x1800409b3
cmp rdx, 0x7fffff
ja 0x1800408b7
mov eax, 3
add r15, 3
mov dword [r14], eax
jmp 0x1800409b3
cmp rdx, 0x7fffffff
ja 0x1800408d1
mov eax, 4
add r15, 4
mov dword [r14], eax
jmp 0x1800409b3
movabs rax, 0x7fffffffffff
cmp rdx, rax
ja 0x1800408f1
mov eax, 5
add r15, 6
mov dword [r14], eax
jmp 0x1800409b3
add r15, 8
test cl, 0x20
je 0x180040926
mov eax, 0xffdf
xorps xmm0, xmm0
and cx, ax
mov eax, 7
cvtsi2sd xmm0, r8
or cx, 8
mov word [r14 - 0x1c], cx
movsd qword [r14 - 0x24], xmm0
mov dword [r14], eax
jmp 0x1800409b3
mov eax, 6
mov dword [r14], eax
jmp 0x1800409b3
test cl, 8
je 0x180040948
inc r12d
mov dword [r14], 7
add r15, 8
jmp 0x1800409b3
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 0x18004098f
movsxd rax, dword [r14 - 0x24]
lea esi, [rsi + rax*2]
test r15, r15
je 0x180040987
lea rcx, [r14 - 0x24]
call fcn.180030940
test eax, eax
jne 0x18004491d
add edi, dword [r14 - 0x24]
lea r10d, [rax + 1]
jmp 0x18004098f
add rdx, rax
mov qword [rsp + 0x70], rdx
mov eax, edi
mov ecx, r10d
add r15, rax
mov eax, esi
shr rax, 7
test rax, rax
je 0x1800409ad
inc ecx
shr rax, 7
test rax, rax
jne 0x1800409a2
add r12d, ecx
mov dword [r14], esi
lea rax, [r14 - 0x24]
cmp rax, r13
je 0x1800409d0
movzx r9d, byte [rsp + 0x78]
sub r14, 0x38
mov rdx, qword [rsp + 0x70]
jmp 0x180040813
cmp r12d, 0x7e
jle 0x180040a11
movsxd rax, r12d
mov edx, r10d
shr rax, 7
test rax, rax
je 0x1800409f0
inc edx
shr rax, 7
test rax, rax
jne 0x1800409e5
add r12d, edx
mov ecx, r10d
movsxd rax, r12d
shr rax, 7
test rax, rax
je 0x180040a0d
inc ecx
shr rax, 7
test rax, rax
jne 0x180040a02
cmp edx, ecx
jge 0x180040a14
inc r12d
mov rsi, qword [rbp - 0x70]
mov rdi, qword [rsp + 0x70]
movsxd r14, r12d
movsxd rdx, dword [rsi + 0x20]
lea rbx, [r15 + r14]
lea rcx, [rbx + rdi]
cmp rcx, rdx
jle 0x180040a62
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 0x7c]
cmp rcx, rax
jg 0x1800446b6
cmp edx, ebx
jge 0x180040a62
xor r8d, r8d
mov edx, ebx
mov rcx, rsi
call fcn.1800306d0
test eax, eax
jne 0x18004491d
lea r10d, [rax + 1]
jmp 0x180040a6a
mov rax, qword [rsi + 0x18]
mov qword [rsi + 0x10], rax
mov dword [rsi + 0xc], ebx
mov eax, 0x10
mov word [rsi + 8], ax
test rdi, rdi
je 0x180040a86
mov eax, 0x4010
mov dword [rsi], edi
mov word [rsi + 8], ax
mov rdi, qword [rsi + 0x10]
mov ecx, 0x80
lea rsi, [rdi + r14]
cmp r12d, ecx
jae 0x180040aa0
mov byte [rdi], r12b
mov eax, r10d
jmp 0x180040ab4
mov rdx, r14
mov rcx, rdi
call fcn.18000b2f0
mov ecx, 0x80
lea r10d, [rcx - 0x7f]
mov r14, qword [rbp - 0x40]
movzx eax, al
add rdi, rax
nop
mov ebx, dword [r13 + 0x24]
cmp ebx, ecx
jae 0x180040acf
mov byte [rdi], bl
mov eax, r10d
jmp 0x180040ada
mov rdx, rbx
mov rcx, rdi
call fcn.18000b2f0
movzx eax, al
mov r8d, ebx
mov rdx, r13
mov rcx, rsi
add rdi, rax
call fcn.180037f10
mov eax, eax
mov ecx, 0x80
add rsi, rax
add r13, 0x38
lea r10d, [rcx - 0x7f]
cmp r13, r14
jbe 0x180040ac0
mov r12d, dword [rsp + 0x30]
jmp 0x18003f060
mov r8, qword [rsp + 0x38]
mov rax, qword [r13 + 0x78]
cmp dword [r8 + 0xc], 0
movsxd rcx, dword [r8 + 4]
mov rcx, qword [rax + rcx*8]
mov rdx, qword [rcx + 0x38]
je 0x180040b39
mov rcx, rdx
call fcn.1800274b0
mov qword [rbp + 0x28], rax
jmp 0x180040b5d
mov rcx, qword [rsp + 0x40]
lea r8, [rbp + 0x28]
mov qword [rbp + 0x28], r14
call fcn.18002d990
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x180041ee2
mov r12d, eax
mov rax, qword [rsp + 0x38]
mov r15d, 0x2400
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
add rcx, qword [r13 + 0x68]
test word [rcx + 8], r15w
je 0x180040b8f
call fcn.18003e7b0
mov rcx, rax
mov rax, qword [rbp + 0x28]
mov qword [rcx], rax
jmp 0x180043d97
mov eax, 4
mov word [rcx + 8], ax
mov rax, qword [rbp + 0x28]
mov qword [rcx], rax
jmp 0x180043d97
mov r12, qword [rsp + 0x38]
mov r14d, dword [r12 + 4]
mov rdi, qword [r12 + 0x10]
mov dword [rbp - 0x70], r14d
test r14d, r14d
jne 0x180040ca8
cmp dword [r8 + 0xd0], r14d
jg 0x18004442c
test rdi, rdi
jne 0x180040bd6
xor ebx, ebx
jmp 0x180040bef
mov rbx, 0xffffffffffffffff
nop dword [rax]
inc rbx
cmp byte [rdi + rbx], 0
jne 0x180040be0
and ebx, 0x3fffffff
mov rax, qword [rsp + 0x40]
xor edx, edx
mov r8d, dword [r8 + 0x2c4]
mov rcx, rax
add r8d, dword [rax + 0x2c0]
call fcn.1800a4630
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x180041ee2
mov rcx, qword [rsp + 0x40]
mov edx, ebx
add rdx, 0x21
call fcn.180006000
mov rsi, rax
test rax, rax
je 0x18004419f
lea r9, [rax + 0x20]
mov rdx, rdi
mov rcx, r9
mov qword [rax], r9
lea r8d, [rbx + 1]
call sub.VCRUNTIME140.dll_memcpy
mov r8, qword [rsp + 0x40]
cmp byte [r8 + 0x5f], 0
je 0x180040c65
mov byte [r8 + 0x5f], 0
mov byte [r8 + 0x67], 1
jmp 0x180040c6c
inc dword [r8 + 0x2c0]
mov rax, qword [r8 + 0x2b0]
mov r12d, dword [rsp + 0x30]
mov r15, qword [rsp + 0x38]
mov qword [rsi + 0x18], rax
mov rax, qword [r8 + 0x2c8]
mov qword [r8 + 0x2b0], rsi
mov qword [rsi + 8], rax
mov rax, qword [r8 + 0x2d0]
mov qword [rsi + 0x10], rax
mov rsi, qword [rsp + 0x60]
jmp 0x180043624
mov rsi, qword [r8 + 0x2b0]
xor ebx, ebx
mov r15d, ebx
test rsi, rsi
je 0x180040cdb
nop dword [rax]
mov rcx, qword [rsi]
mov rdx, rdi
call fcn.18000a500
test eax, eax
je 0x180040d03
mov rsi, qword [rsi + 0x18]
inc r15d
test rsi, rsi
jne 0x180040cc0
mov r8, rdi
lea rdx, str.no_such_savepoint:__s
mov rcx, r13
call fcn.180032660
mov rsi, qword [rsp + 0x40]
mov edi, 1
mov r8d, edi
mov dword [rsp + 0x30], edi
jmp 0x180041eec
mov r8, qword [rsp + 0x40]
cmp dword [r8 + 0xd0], ebx
jle 0x180040d1b
cmp r14d, 1
je 0x180044446
cmp qword [rsi + 0x18], rbx
jne 0x180040d86
cmp byte [r8 + 0x67], bl
je 0x180040d86
mov eax, 1
mov r13d, eax
cmp r14d, eax
jne 0x180040d89
mov rbx, qword [rbp - 0x78]
mov edx, eax
mov rcx, rbx
call fcn.180037090
mov edi, eax
test eax, eax
jne 0x180044a15
mov rax, qword [rsp + 0x40]
mov rcx, rbx
mov byte [rax + 0x5f], r13b
call fcn.1800370e0
cmp eax, 5
je 0x180044471
mov r8d, dword [rbx + 0x38]
mov dword [rsp + 0x30], r8d
test r8d, r8d
jne 0x180044460
mov r8, qword [rsp + 0x40]
mov byte [r8 + 0x67], dil
jmp 0x180040e99
mov r13d, ebx
mov eax, dword [r8 + 0x2c0]
sub eax, r15d
lea r15d, [rax - 1]
mov eax, dword [r8 + 0x28]
cmp r14d, 2
jne 0x180040e00
mov r12d, dword [r8 + 0x2c]
mov edi, ebx
and r12d, 1
test eax, eax
jle 0x180040e03
mov r14d, r12d
xor r14d, 1
nop word [rax + rax]
mov rcx, qword [r8 + 0x20]
mov edx, 0x204
mov r8d, r14d
mov rcx, qword [rbx + rcx + 8]
call fcn.1800258a0
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x180041ee2
mov r8, qword [rsp + 0x40]
inc edi
add rbx, 0x20
mov eax, dword [r8 + 0x28]
cmp edi, eax
jl 0x180040dc0
mov r14d, dword [rbp - 0x70]
xor ebx, ebx
jmp 0x180040e03
mov r12d, ebx
mov rcx, qword [rsp + 0x40]
mov edi, ebx
test eax, eax
jle 0x180040e45
nop
mov rcx, qword [rcx + 0x20]
mov r8d, r15d
mov edx, r14d
mov rcx, qword [rbx + rcx + 8]
call fcn.180025ba0
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x180041ee2
mov rcx, qword [rsp + 0x40]
inc edi
add rbx, 0x20
cmp edi, dword [rcx + 0x28]
jl 0x180040e10
jmp 0x180040e4a
mov r8d, dword [rsp + 0x30]
test r12d, r12d
je 0x180040e8b
mov rax, qword [rcx + 8]
test rax, rax
je 0x180040e77
nop dword [rax + rax]
and dword [rax + 0xc8], 0xfffffffd
or dword [rax + 0xc8], 1
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x180040e60
call fcn.180063fb0
mov r8, qword [rsp + 0x40]
or dword [r8 + 0x2c], 1
mov r8d, dword [rsp + 0x30]
test r8d, r8d
jne 0x180041ee2
mov r8, qword [rsp + 0x40]
mov rcx, qword [r8 + 0x2b0]
cmp rcx, rsi
je 0x180040ee2
mov r14, qword [rsp + 0x40]
nop word [rax + rax]
mov rax, qword [rcx + 0x18]
mov rdx, rcx
mov rcx, r14
mov qword [r14 + 0x2b0], rax
call fcn.180005ba0
mov rcx, qword [r14 + 0x2b0]
dec dword [r14 + 0x2c0]
cmp rcx, rsi
jne 0x180040eb0
mov r14d, dword [rbp - 0x70]
mov r8, qword [rsp + 0x40]
cmp r14d, 1
jne 0x180040f14
mov rax, qword [rsi + 0x18]
mov rdx, rsi
mov rcx, r8
mov qword [r8 + 0x2b0], rax
call fcn.180005ba0
test r13d, r13d
jne 0x18004419f
mov rdx, qword [rsp + 0x40]
dec dword [rdx + 0x2c0]
jmp 0x180040f39
mov rax, qword [rsi + 8]
mov qword [r8 + 0x2c8], rax
mov rax, qword [rsi + 0x10]
mov qword [r8 + 0x2d0], rax
test r13d, r13d
je 0x180040f39
cmp r14d, 2
jne 0x1800441a4
mov rcx, qword [rsp + 0x40]
mov r8d, r15d
mov edx, r14d
call fcn.1800a4630
mov r8d, eax
mov dword [rsp + 0x30], eax
test eax, eax
jmp 0x18004383e
mov r12, qword [rsp + 0x38]
mov dword [rbp - 0x70], r14d
mov edx, dword [r12 + 8]
test edx, edx
je 0x180040f78
mov eax, dword [r8 + 0x30]
bt rax, 0x14
jb 0x1800444ad
movsxd rcx, dword [r12 + 4]
mov rax, qword [r8 + 0x20]
shl rcx, 5
mov rbx, qword [rcx + rax + 8]
test rbx, rbx
je 0x1800410a2
lea r8, [rbp - 0x70]
mov rcx, rbx
call fcn.180024100
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x1800444be
test byte [r13 + 0xc8], 0x40
je 0x18004103e
cmp dword [r12 + 8], eax
je 0x18004103e
mov rax, qword [rsp + 0x40]
cmp byte [rax + 0x5f], r8b
je 0x180040fd7
cmp dword [rax + 0xcc], 1
jle 0x18004103e
mov r8d, dword [r13 + 0x40]
test r8d, r8d
jne 0x180040ff8
inc dword [rax + 0x2c4]
mov r8d, dword [rax + 0x2c0]
add r8d, dword [rax + 0x2c4]
mov dword [r13 + 0x40], r8d
dec r8d
xor edx, edx
mov rcx, rax
call fcn.1800a4630
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x180041023
mov edx, dword [r13 + 0x40]
mov rcx, rbx
call fcn.180025b30
mov r8d, eax
mov dword [rsp + 0x30], eax
mov rcx, qword [rsp + 0x40]
mov rax, qword [rcx + 0x2c8]
mov qword [r13 + 0x58], rax
mov rax, qword [rcx + 0x2d0]
mov qword [r13 + 0x60], rax
mov r10d, 1
cmp word [r12 + 2], 0
je 0x180041080
mov eax, dword [r12 + 0xc]
mov r9, qword [rsp + 0x40]
cmp dword [rbp - 0x70], eax
jne 0x1800444f8
mov rax, qword [r9 + 0x20]
movsxd rcx, dword [r12 + 4]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov eax, dword [r12 + 0x10]
cmp dword [rcx + 4], eax
jne 0x1800444f8
test r8d, r8d
jne 0x180041ee2
mov r12d, dword [rsp + 0x30]
mov r8, qword [rsp + 0x40]
mov r15, qword [rsp + 0x38]
mov r9, qword [rsp + 0x50]
jmp 0x18004362f
mov r8d, dword [rsp + 0x30]
jmp 0x180041044
mov rcx, qword [r8 + 0x20]
lea r8, [rbp + 0x20]
mov rax, qword [rsp + 0x38]
mov r15, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov edx, dword [r15 + 0xc]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.18002d810
movsxd rax, dword [r15 + 8]
mov edx, 0x2400
imul rcx, rax, 0x38
add rcx, qword [r13 + 0x68]
test word [rcx + 8], dx
je 0x1800410f7
call fcn.18003e7b0
mov rcx, rax
mov edx, 0x2400
jmp 0x180041100
mov eax, 4
mov word [rcx + 8], ax
movsxd rax, dword [rbp + 0x20]
mov r10d, 1
mov r8, qword [rsp + 0x40]
mov r9, qword [rsp + 0x50]
mov qword [rcx], rax
mov r13, qword [rbp - 0x78]
add r15, 0x18
mov rdi, qword [rbp + 0x10]
xor r14d, r14d
jmp 0x18003e930
mov r12, qword [rsp + 0x38]
movsxd rbx, dword [r12 + 4]
mov edx, dword [r12 + 8]
shl rbx, 5
add rbx, qword [r8 + 0x20]
mov r8d, dword [r12 + 0xc]
mov rcx, qword [rbx + 8]
call fcn.18002d8a0
mov r8d, eax
mov dword [rsp + 0x30], eax
mov eax, dword [r12 + 8]
cmp eax, 1
jne 0x18004117f
movzx eax, word [r12 + 2]
mov ecx, dword [r12 + 0xc]
sub ecx, eax
mov rax, qword [rbx + 0x18]
mov dword [rax], ecx
mov rax, qword [rsp + 0x40]
or dword [rax + 0x2c], 1
jmp 0x180041196
cmp eax, 2
jne 0x180041191
mov rcx, qword [rbx + 0x18]
movzx eax, byte [r12 + 0xc]
mov byte [rcx + 0x70], al
mov rax, qword [rsp + 0x40]
cmp dword [r12 + 4], 1
jne 0x1800411cf
mov rax, qword [rax + 8]
test rax, rax
je 0x1800411c7
nop word [rax + rax]
and dword [rax + 0xc8], 0xfffffffd
or dword [rax + 0xc8], 1
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x1800411b0
and dword [r13 + 0xc8], 0xfffffffc
test r8d, r8d
jmp 0x180043896
mov r12, qword [rsp + 0x38]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r12 + 4]
mov rdi, qword [rax + rcx*8]
test rdi, rdi
je 0x18004123e
mov eax, dword [r12 + 8]
cmp dword [rdi + 0x4c], eax
jne 0x18004123e
mov r8d, dword [rsp + 0x30]
movzx ecx, byte [r12 + 2]
mov rax, qword [rdi + 0x38]
and cl, 3
mov byte [rax + 3], cl
test r8d, r8d
jne 0x180041ee2
mov r12d, dword [rsp + 0x30]
mov r8, qword [rsp + 0x40]
mov r15, qword [rsp + 0x38]
mov r13, qword [rbp - 0x78]
add r15, 0x18
mov rdi, qword [rbp + 0x10]
xor r14d, r14d
jmp 0x18003e930
mov r12, qword [rsp + 0x38]
mov eax, dword [r13 + 0xc8]
and al, 3
cmp al, 1
je 0x180044568
mov r15d, dword [r12 + 8]
mov edi, r14d
movsxd r12, dword [r12 + 0xc]
mov rax, r12
shl rax, 5
add rax, qword [r8 + 0x20]
mov r13, qword [rax + 8]
cmp bl, 0x61
jne 0x18004129b
mov rcx, qword [rsp + 0x38]
mov rax, qword [rax + 0x18]
movzx esi, word [rcx + 2]
movzx ecx, byte [rax + 0x70]
and esi, 8
mov rax, qword [rbp - 0x78]
or esi, 4
cmp cl, byte [rax + 0xc3]
jae 0x18004129d
mov byte [rax + 0xc3], cl
jmp 0x18004129d
xor esi, esi
mov rcx, qword [rsp + 0x38]
test byte [rcx + 2], 0x10
je 0x1800412d2
imul rbx, r15, 0x38
add rbx, qword [rsp + 0x60]
mov rcx, rbx
call fcn.180030d40
mov rcx, qword [rsp + 0x38]
mov qword [rbx], rax
mov eax, 0x3e40
and word [rbx + 8], ax
or word [rbx + 8], 4
mov r15d, dword [rbx]
movzx eax, byte [rcx + 1]
cmp al, 0xf7
jne 0x1800412e5
mov r14, qword [rcx + 0x10]
movzx edi, word [r14 + 8]
jmp 0x1800412ec
cmp al, 0xfd
jne 0x1800412ec
mov edi, dword [rcx + 0x10]
mov rcx, qword [rbp - 0x78]
mov r9d, r12d
mov r12, qword [rsp + 0x38]
mov r8d, edi
mov byte [rsp + 0x20], 0
mov edx, dword [r12 + 4]
call fcn.18003e310
mov rdi, rax
test rax, rax
je 0x18004491d
mov rcx, qword [rax + 0x38]
mov r9, r14
or dword [rax + 8], 4
mov r8d, esi
mov qword [rsp + 0x20], rcx
mov edx, r15d
mov rcx, r13
mov byte [rax + 2], 1
mov dword [rax + 0x4c], r15d
call fcn.180025e60
mov rsi, qword [rsp + 0x60]
mov r8d, eax
mov r9, qword [rsp + 0x50]
mov edx, 0x2400
mov qword [rdi + 0x40], r14
mov r10d, 1
cmp byte [r12 + 1], 0xf7
mov dword [rsp + 0x30], eax
setne al
mov byte [rdi + 4], al
jmp 0x1800411fd
mov r12, qword [rsp + 0x38]
mov r9d, 0xffffffff
mov rax, qword [r13 + 0x78]
mov byte [rsp + 0x20], 0
movsxd rcx, dword [r12 + 8]
mov edx, dword [r12 + 4]
mov rbx, qword [rax + rcx*8]
mov rcx, r13
movsx r8d, word [rbx + 0x50]
call fcn.18003e310
test rax, rax
je 0x180044682
or dword [rax + 8], 1
mov r14, qword [rax + 0x38]
mov byte [rax + 2], 1
mov rdi, qword [rbx + 0x40]
mov qword [rax + 0x40], rdi
movzx ecx, byte [rbx + 4]
mov byte [rax + 4], cl
mov esi, dword [rbx + 0x4c]
mov ecx, dword [rax + 8]
mov dword [rax + 0x4c], esi
xor ecx, dword [rbx + 8]
and ecx, 4
xor dword [rax + 8], ecx
mov rbx, qword [rbx + 0x10]
mov rcx, rbx
cmp byte [rbx + 0x11], 0
je 0x18004141f
call fcn.180020110
mov r9, rdi
mov qword [rsp + 0x20], r14
mov r8d, 4
mov edx, esi
mov rcx, rbx
call fcn.180025ca0
mov rcx, rbx
mov dword [rsp + 0x30], eax
mov r12d, eax
call fcn.180020200
mov r8, qword [rsp + 0x40]
mov r15, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x60]
jmp 0x180043624
mov r9, rdi
mov qword [rsp + 0x20], r14
mov r8d, 4
mov edx, esi
call fcn.180025ca0
mov r8, qword [rsp + 0x40]
mov r12d, eax
mov r15, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x60]
mov dword [rsp + 0x30], eax
jmp 0x180043624
mov r12, qword [rsp + 0x38]
movsxd rax, dword [r12 + 0xc]
test eax, eax
jle 0x18004147b
imul rcx, rax, 0x38
mov dword [rcx + rsi + 0xc], r14d
movsxd rax, dword [r12 + 0xc]
imul rcx, rax, 0x38
lea rax, [0x180137988]
mov qword [rcx + rsi + 0x10], rax
movsxd rdx, dword [r12 + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rdx*8]
test rbx, rbx
je 0x1800414b5
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x1800414b5
mov edx, dword [rbx + 0x4c]
xor r8d, r8d
mov qword [rbx + 0x18], r14
mov dword [rbx + 0x28], r14d
call fcn.18002d370
mov r8d, eax
mov dword [rsp + 0x30], eax
jmp 0x1800415e0
mov r8d, dword [r12 + 8]
mov r9d, 0xffffffff
mov rcx, r13
mov byte [rsp + 0x20], 0
call fcn.18003e310
mov rbx, rax
test rax, rax
je 0x180044682
or dword [rax + 8], 1
lea r9, [rax + 0x10]
movzx ecx, word [r12 + 2]
xor edx, edx
mov rax, qword [rsp + 0x40]
or ecx, 5
mov dword [rsp + 0x28], 0x41e
mov r8, rax
mov dword [rsp + 0x20], ecx
mov rcx, qword [rax]
call fcn.1800229c0
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x1800415c3
mov rcx, qword [rbx + 0x10]
mov r15d, 1
mov edx, r15d
xor r8d, r8d
call fcn.180024100
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x1800415c3
mov r14, qword [r12 + 0x10]
mov rcx, qword [rbx + 0x10]
mov qword [rbx + 0x40], r14
test r14, r14
je 0x180041594
movzx r8d, word [r12 + 2]
lea rdx, [rbx + 0x4c]
or r8d, 2
call fcn.18002d050
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x18004158e
mov rax, qword [rbx + 0x38]
lea r8d, [r15 + 3]
mov edx, dword [rbx + 0x4c]
mov r9, r14
mov rcx, qword [rbx + 0x10]
mov qword [rsp + 0x20], rax
call fcn.180025e60
mov r8d, eax
mov dword [rsp + 0x30], eax
mov byte [rbx + 4], 0
jmp 0x1800415bb
mov rax, qword [rbx + 0x38]
xor r9d, r9d
mov edx, r15d
mov dword [rbx + 0x4c], r15d
mov qword [rsp + 0x20], rax
lea r8d, [r9 + 4]
call fcn.180025e60
mov r8d, eax
mov dword [rsp + 0x30], eax
mov byte [rbx + 4], r15b
mov rsi, qword [rsp + 0x60]
xor r14d, r14d
cmp word [r12 + 2], 8
mov eax, 4
mov ecx, r14d
cmovne ecx, eax
mov eax, dword [rbx + 8]
and eax, 0xfffffffb
or ecx, eax
mov dword [rbx + 8], ecx
test r8d, r8d
jne 0x180041ee2
mov r12d, dword [rsp + 0x30]
mov byte [rbx + 2], 1
jmp 0x18004361a
mov r12, qword [rsp + 0x38]
mov r9d, 0xffffffff
mov rcx, r13
mov byte [rsp + 0x20], 1
mov r8d, dword [r12 + 8]
mov edx, dword [r12 + 4]
call fcn.18003e310
test rax, rax
je 0x180044682
mov rcx, qword [r12 + 0x10]
mov r8, rax
mov qword [rax + 0x40], rcx
mov edx, dword [r12 + 0xc]
mov rcx, qword [rsp + 0x40]
call fcn.180046a00
jmp 0x18004388d
mov rax, qword [rsp + 0x38]
mov r15, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 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 0x1800400d5
jmp 0x18004362f
mov rax, qword [rsp + 0x38]
mov r9d, 0xffffffff
mov rcx, r13
mov byte [rsp + 0x20], 3
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 4]
call fcn.18003e310
mov r8, qword [rsp + 0x40]
test rax, rax
je 0x1800445b9
mov rcx, qword [rsp + 0x38]
mov byte [rax + 2], 1
mov ecx, dword [rcx + 8]
mov dword [rax + 0x2c], ecx
lea rcx, [0x18015cfc4]
mov qword [rax + 0x38], rcx
mov byte [rax + 4], 1
jmp 0x18004361f
mov rdx, qword [r13 + 0x78]
mov rcx, r13
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rdx, qword [rdx + rax*8]
call fcn.1800359d0
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov qword [rax + rcx*8], r14
jmp 0x18004361a
mov rax, qword [r13 + 0x78]
xor edi, edi
mov r8, qword [rsp + 0x38]
mov r12d, edi
movsxd rcx, dword [r8 + 4]
mov r14, qword [rax + rcx*8]
mov word [r14 + 2], di
mov dword [r14 + 0x28], edi
cmp byte [r14 + 4], dil
je 0x180041818
movsxd rax, dword [r8 + 0xc]
imul rdi, rax, 0x38
add rdi, rsi
movzx esi, word [rdi + 8]
movzx eax, sil
and al, 0x2e
cmp al, 2
jne 0x18004173d
xor edx, edx
mov rcx, rdi
call fcn.18003e4e0
mov rcx, rdi
call fcn.180030d40
movzx edx, word [rdi + 8]
mov r15, rax
mov word [rdi + 8], si
test dl, 0x24
jne 0x1800417e3
test dl, 8
jne 0x1800417bb
test dl, 1
jne 0x180043c1d
cmp ebx, 0x18
jae 0x180043c1d
mov rcx, qword [r14 + 0x38]
lea rdx, [rsp + 0x7c]
call fcn.180026e50
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x180041ee2
cmp dword [rsp + 0x7c], 0
jne 0x180043c1d
mov r8, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x60]
test r12d, r12d
je 0x1800441a9
add qword [rsp + 0x38], 0x18
mov r12d, dword [rsp + 0x30]
jmp 0x18004361f
movsd xmm0, qword [rdi]
xorps xmm1, xmm1
cvtsi2sd xmm1, r15
comisd xmm1, xmm0
jbe 0x1800417d6
test bl, 1
je 0x1800417e3
dec ebx
jmp 0x1800417e3
comisd xmm0, xmm1
jbe 0x1800417e3
test bl, 1
jne 0x1800417e3
inc ebx
mov rcx, qword [r14 + 0x38]
lea rax, [rsp + 0x7c]
xor r9d, r9d
mov qword [rsp + 0x20], rax
mov r8, r15
xor edx, edx
call fcn.180026ed0
mov dword [rsp + 0x30], eax
mov r8d, eax
mov qword [r14 + 0x58], r15
test eax, eax
jne 0x180041ee2
xor edi, edi
jmp 0x1800418a3
mov rcx, qword [r14 + 0x38]
mov edx, 2
call fcn.18002f520
mov rcx, qword [rsp + 0x38]
test eax, eax
mov rax, qword [r14 + 0x40]
mov edx, 1
cmovne r12d, edx
mov qword [rbp - 0x38], rax
test dl, bl
mov byte [rbp - 0x22], dil
movzx eax, word [rcx + 0x10]
mov word [rbp - 0x28], ax
mov eax, edx
mov edx, 0xffffffff
cmovne eax, edx
xor r9d, r9d
mov byte [rbp - 0x26], al
lea rdx, [rbp - 0x38]
movsxd rax, dword [rcx + 0xc]
xor r8d, r8d
imul rcx, rax, 0x38
lea rax, [rsp + 0x7c]
add rcx, rsi
mov qword [rsp + 0x20], rax
mov qword [rbp - 0x30], rcx
mov rcx, qword [r14 + 0x38]
call fcn.180026ed0
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x180041ee2
test r12d, r12d
je 0x1800418a3
cmp byte [rbp - 0x22], dil
je 0x18004178d
mov eax, dword [rsp + 0x7c]
cmp ebx, 0x18
jl 0x1800418fe
test eax, eax
js 0x1800418c0
jne 0x1800418b7
cmp ebx, 0x19
je 0x1800418c0
mov dword [rsp + 0x7c], edi
jmp 0x180041798
mov dword [rsp + 0x7c], edi
xor edx, edx
mov rcx, qword [r14 + 0x38]
call fcn.180027680
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
je 0x18004178d
cmp eax, 0x65
jne 0x180041ee2
mov r10d, 1
mov dword [rsp + 0x30], edi
mov dword [rsp + 0x7c], r10d
mov r12d, edi
jmp 0x1800400cb
test eax, eax
jg 0x18004191b
jne 0x180041909
cmp ebx, 0x16
je 0x18004191b
mov rcx, qword [r14 + 0x38]
call fcn.1800274a0
mov dword [rsp + 0x7c], eax
jmp 0x18004178d
mov dword [rsp + 0x7c], edi
xor edx, edx
mov rcx, qword [r14 + 0x38]
call fcn.1800277b0
jmp 0x1800418cf
mov rax, qword [r13 + 0x78]
mov r12, qword [rsp + 0x38]
movsxd rcx, dword [r12 + 0x1c]
mov rdi, qword [rax + rcx*8]
mov rcx, qword [rdi + 0x38]
call fcn.180026100
test eax, eax
je 0x180044151
mov rax, qword [rdi + 0x40]
mov ebx, dword [r12 + 4]
mov qword [rbp - 0x38], rax
movzx eax, word [r12 + 0x28]
mov word [rbp - 0x28], ax
movsxd rax, dword [r12 + 0x24]
imul rcx, rax, 0x38
mov byte [rbp - 0x26], 0
add rcx, rsi
mov dword [rbp], r14d
mov qword [rbp - 0x30], rcx
nop
mov rcx, qword [rsp + 0x40]
lea r9, [rbp]
lea r8, [rbp - 0x38]
mov rdx, rdi
call fcn.180039b20
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x180041ee2
mov eax, dword [rbp]
test eax, eax
jg 0x1800419e4
je 0x180043c1d
test ebx, ebx
jle 0x180044151
mov rcx, qword [rdi + 0x38]
xor edx, edx
dec ebx
call fcn.180027680
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
je 0x180041980
cmp eax, 0x65
jne 0x180041ee2
mov r12d, r14d
mov dword [rsp + 0x30], r14d
jmp 0x1800419e9
mov r12d, dword [rsp + 0x30]
mov r15, qword [rsp + 0x38]
mov r10d, 1
mov r9, qword [rsp + 0x50]
add r15, 0x18
jmp 0x1800400d5
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rsp + 0x38]
movzx ecx, word [rdx + 0xc]
mov eax, dword [rax + 8]
cmp ecx, eax
jge 0x180041a31
mov r15, qword [rsp + 0x38]
mov word [rdx + 0xc], ax
jmp 0x18004362f
mov rax, qword [rsp + 0x38]
mov r15, qword [rsp + 0x38]
mov eax, dword [rax + 0xc]
cmp ecx, eax
jle 0x18004362f
mov word [rdx + 0xc], ax
jmp 0x18004362f
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
cmp qword [rax + rcx*8], 0
je case.0x18003e963.11
mov r15, qword [rsp + 0x38]
mov r13, qword [rbp - 0x78]
add r15, 0x18
mov rdi, qword [rbp + 0x10]
xor r14d, r14d
jmp 0x18003e930
mov rax, qword [rsp + 0x38]
mov r15, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
movzx eax, word [rcx + 0xc]
cmp eax, dword [r15 + 0x10]
jge case.0x18003e963.85
mov r12, qword [rsp + 0x38]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r12 + 4]
mov rsi, qword [rax + rcx*8]
movsxd rax, dword [r12 + 0xc]
mov ecx, dword [r12 + 0x10]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x60]
test ecx, ecx
jle 0x180041ae3
mov rax, qword [rsi + 0x40]
lea rdi, [rbp - 0x38]
mov qword [rbp - 0x38], rax
mov word [rbp - 0x28], cx
mov qword [rbp - 0x30], rbx
jmp 0x180041b2f
mov eax, 0x4000
test word [rbx + 8], ax
je 0x180041afe
mov rcx, rbx
call fcn.180030940
test eax, eax
jne 0x180044682
mov rcx, qword [rsi + 0x40]
call fcn.180038290
mov rdi, rax
mov r14, rax
test rax, rax
je 0x180044682
mov r8, qword [rbx + 0x10]
mov r9, rax
mov edx, dword [rbx + 0xc]
mov rcx, qword [rsi + 0x40]
call fcn.1800382f0
mov r10d, 1
xor r15d, r15d
mov byte [rdi + 0x12], 0
cmp byte [r12], 0x1c
mov ebx, r15d
jne 0x180041b67
movzx edx, word [rdi + 0x10]
mov ecx, r15d
test edx, edx
je 0x180041b67
mov rax, qword [rdi + 8]
add rax, 8
test byte [rax], 1
jne 0x180041b64
inc ecx
add rax, 0x38
cmp ecx, edx
jl 0x180041b53
jmp 0x180041b67
mov ebx, r10d
mov rcx, qword [rsi + 0x38]
lea rax, [rbp + 4]
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, rdi
call fcn.180026ed0
mov dword [rsp + 0x30], eax
mov r8d, eax
test r14, r14
je 0x180041ba0
mov rcx, qword [rsp + 0x40]
mov rdx, r14
call fcn.180005ba0
mov r8d, dword [rsp + 0x30]
test r8d, r8d
jne 0x180041ee2
mov eax, dword [rbp + 4]
mov ecx, r15d
mov dword [rsi + 0x2c], eax
mov eax, dword [rbp + 4]
test eax, eax
mov byte [rsi + 3], r15b
sete cl
mov dword [rsi + 0x28], r15d
test eax, eax
setne al
mov byte [rsi + 2], al
movzx eax, byte [r12]
cmp al, 0x1e
jne 0x180041bfd
mov r12d, dword [rsp + 0x30]
lea r10d, [r8 + 1]
mov r15, qword [rsp + 0x38]
mov r9, qword [rsp + 0x50]
test ecx, ecx
jne 0x1800400d5
mov r8, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x60]
jmp 0x18004362f
test ebx, ebx
jne 0x180043c1d
test ecx, ecx
je 0x180043c1d
mov r8, qword [rsp + 0x40]
mov r15, qword [rsp + 0x38]
cmp al, 0x1b
jne 0x18004416a
movzx eax, word [r12 + 0x10]
mov r12d, dword [rsp + 0x30]
mov word [rsi + 0xc], ax
mov rsi, qword [rsp + 0x60]
jmp 0x180043624
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, rsi
test byte [rcx + 8], 0x24
jne case.0x18003e963.32
movups xmm0, xmmword [rcx]
movzx r8d, byte [rsp + 0x48]
mov dl, 0x43
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rbp + 0xd0], xmm0
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rbp + 0xe0], xmm1
movsd xmm1, qword [rcx + 0x30]
lea rcx, [rbp + 0xd0]
movups xmmword [rbp + 0xf0], xmm0
movsd qword [rbp + 0x100], xmm1
call fcn.18003e620
test byte [rbp + 0xd8], 4
je 0x1800400c5
mov rdi, qword [rbp + 0xd0]
mov r12, qword [rsp + 0x38]
jmp 0x180041cbc
mov r12, qword [rsp + 0x38]
movsxd rax, dword [r12 + 0xc]
imul rcx, rax, 0x38
mov rdi, qword [rcx + rsi]
movsxd rcx, dword [r12 + 4]
xor r9d, r9d
mov rax, qword [r13 + 0x78]
mov r8, rdi
xor edx, edx
mov rbx, qword [rax + rcx*8]
lea rax, [rbp - 0x5c]
mov qword [rsp + 0x20], rax
mov rcx, qword [rbx + 0x38]
mov dword [rbp - 0x5c], r14d
call fcn.180026ed0
mov qword [rbx + 0x58], rdi
mov r8d, eax
mov word [rbx + 2], 0
mov dword [rbx + 0x28], r14d
mov dword [rsp + 0x30], eax
mov eax, dword [rbp - 0x5c]
mov dword [rbx + 0x2c], eax
cmp dword [rbp - 0x5c], 0
je 0x180041d25
cmp dword [r12 + 8], 0
jne 0x180043c1d
mov ecx, 0x1614a
call fcn.1800c8fa0
mov r8d, eax
mov dword [rsp + 0x30], eax
test r8d, r8d
jmp 0x180043896
mov rdx, qword [rsp + 0x38]
mov rcx, r13
call fcn.18003e7e0
mov rcx, qword [r13 + 0x78]
mov r8, qword [rsp + 0x38]
movsxd rdx, dword [r8 + 4]
mov rdx, qword [rcx + rdx*8]
mov rcx, qword [rdx + 0x18]
mov qword [rax], rcx
movsxd rcx, dword [r8 + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
inc qword [rdx + 0x18]
jmp 0x18004361a
mov r12, qword [rsp + 0x38]
mov rcx, r13
mov rdx, r12
mov qword [rsp + 0x70], r14
mov dword [rbp - 0x70], r14d
call fcn.18003e7e0
movsxd rdx, dword [r12 + 4]
mov rsi, rax
mov rcx, qword [r13 + 0x78]
mov rdi, qword [rcx + rdx*8]
test byte [rdi + 8], 2
jne 0x180041dc1
mov rcx, qword [rdi + 0x38]
lea rdx, [rbp - 0x70]
call fcn.180026e50
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x180041ee2
cmp dword [rbp - 0x70], eax
je 0x180041e06
mov ecx, 1
mov qword [rsp + 0x70], rcx
movabs r15, 0x7fffffffffffffff
movsxd rdx, dword [r12 + 0xc]
test edx, edx
je 0x180041e71
mov rcx, qword [r13 + 0x100]
test rcx, rcx
je 0x180041e33
mov rax, qword [rcx + 8]
test rax, rax
je 0x180041dfc
nop dword [rax]
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x180041df0
imul rbx, rdx, 0x38
add rbx, qword [rcx + 0x20]
jmp 0x180041e3c
mov rcx, qword [rdi + 0x38]
call fcn.180026110
movabs r15, 0x7fffffffffffffff
mov qword [rsp + 0x70], rax
cmp rax, r15
jl 0x180041e29
or dword [rdi + 8], 2
jmp 0x180041dcb
inc rax
mov qword [rsp + 0x70], rax
jmp 0x180041dcb
imul rbx, rdx, 0x38
add rbx, qword [rsp + 0x60]
mov rcx, rbx
call fcn.180030e80
mov rax, qword [rbx]
cmp rax, r15
je 0x180041ed7
test byte [rdi + 8], 2
jne 0x180041ed7
mov rcx, qword [rsp + 0x70]
inc rax
cmp rcx, rax
cmovl rcx, rax
mov qword [rsp + 0x70], rcx
mov qword [rbx], rcx
test byte [rdi + 8], 2
je 0x180041f0b
mov ebx, r14d
nop
lea rdx, [rsp + 0x70]
mov ecx, 8
call sym.QoOBJSl.dll_hqlite3_randomness
mov r8, qword [rsp + 0x70]
movabs rax, 0x3fffffffffffffff
and r8, rax
xor r9d, r9d
inc r8
lea rax, [rbp - 0x70]
mov qword [rsp + 0x70], r8
xor edx, edx
mov rcx, qword [rdi + 0x38]
mov qword [rsp + 0x20], rax
call fcn.180026ed0
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x180041ee2
cmp dword [rbp - 0x70], eax
jne 0x180041f0b
inc ebx
cmp ebx, 0x64
jl 0x180041e80
mov r8d, 0xd
mov dword [rsp + 0x30], r8d
mov rsi, qword [rsp + 0x40]
mov edi, 1
mov rbx, qword [rsp + 0x58]
cmp byte [rsi + 0x61], 0
je 0x180044942
mov r8d, 7
mov dword [rsp + 0x30], r8d
jmp 0x18004495c
mov byte [rdi + 3], 0
mov dword [rdi + 0x28], r14d
mov rax, qword [rsp + 0x70]
mov qword [rsi], rax
jmp 0x180043844
mov r12, qword [rsp + 0x38]
mov r9, qword [rsp + 0x40]
movsxd rax, dword [r12 + 8]
movsxd rcx, dword [r12 + 4]
imul rdx, rax, 0x38
mov rax, qword [r13 + 0x78]
add rdx, rsi
mov rbx, qword [rax + rcx*8]
movsxd rax, dword [r12 + 0xc]
imul rcx, rax, 0x38
cmp byte [r12 + 1], 0xfa
mov r8, qword [rcx + rsi]
mov qword [rbp - 0x30], r8
jne 0x180041f7e
cmp qword [r9 + 0x130], 0
je 0x180041f7e
movsx rcx, byte [rbx + 1]
mov rax, qword [r9 + 0x20]
mov rdi, qword [r12 + 0x10]
shl rcx, 5
mov rsi, qword [rcx + rax]
jmp 0x180041f84
mov rdi, r14
mov rsi, r14
movzx ecx, word [r12 + 2]
test cl, 1
je 0x180041f99
inc dword [r13 + 0x3c]
movzx ecx, word [r12 + 2]
test cl, 0x20
je 0x180041fa8
mov qword [r9 + 0x38], r8
movzx ecx, word [r12 + 2]
mov rax, qword [rdx + 0x10]
mov qword [rbp - 0x28], rax
mov eax, dword [rdx + 0xc]
mov dword [rbp - 0x14], eax
test cl, 0x10
je 0x180041fc1
mov r9d, dword [rbx + 0x2c]
jmp 0x180041fc4
mov r9d, r14d
mov eax, 0x4000
test word [rdx + 8], ax
je 0x180041fd6
mov eax, dword [rdx]
mov dword [rbp - 0x10], eax
jmp 0x180041fda
mov dword [rbp - 0x10], r14d
movzx r8d, cx
lea rdx, [rbp - 0x38]
mov qword [rbp - 0x38], r14
and r8d, 0xa
mov rcx, qword [rbx + 0x38]
call fcn.18002c350
mov dword [rsp + 0x30], eax
mov r8d, eax
mov byte [rbx + 3], 0
mov dword [rbx + 0x28], r14d
test eax, eax
jne 0x180041ee2
test rdi, rdi
je 0x18004419f
test byte [r12 + 2], 4
mov edx, 0x12
mov r9, qword [rdi]
mov eax, 0x17
cmovne edx, eax
mov r8, rsi
mov rax, qword [rbp - 0x30]
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x40]
mov rcx, qword [rax + 0x128]
call qword [rax + 0x130]
jmp 0x180043844
mov r12, qword [rsp + 0x38]
mov rax, qword [r13 + 0x78]
cmp byte [r12 + 1], 0xfa
movsxd rcx, dword [r12 + 4]
mov r14d, dword [r12 + 8]
mov rbx, qword [rax + rcx*8]
jne 0x1800420a8
cmp qword [r8 + 0x130], 0
je 0x1800420a8
movsx rcx, byte [rbx + 1]
mov rax, qword [r8 + 0x20]
mov rdi, qword [r12 + 0x10]
shl rcx, 5
test byte [r12 + 2], 2
mov rsi, qword [rcx + rax]
je 0x1800420ac
cmp byte [rbx + 4], 0
je 0x1800420ac
mov rcx, qword [rbx + 0x38]
call fcn.180026110
mov qword [rbx + 0x58], rax
jmp 0x1800420ac
xor esi, esi
xor edi, edi
movzx edx, byte [r12 + 2]
mov rcx, qword [rbx + 0x38]
call fcn.18002c790
mov r8d, eax
mov dword [rsp + 0x30], eax
xor eax, eax
mov qword [rbx + 0x28], rax
test r8d, r8d
jne 0x180041ee2
mov r8, qword [rsp + 0x40]
test r14b, 1
je 0x1800441a4
inc dword [r13 + 0x3c]
mov r10, qword [r8 + 0x130]
test r10, r10
je 0x1800441a4
test byte [rdi + 0x40], 0x80
jne 0x1800441a4
mov rax, qword [rbx + 0x58]
mov r8, rsi
mov r9, qword [rdi]
mov edx, 9
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x40]
mov rcx, qword [rax + 0x128]
call r10
jmp 0x180043844
mov edx, dword [r13 + 0x3c]
mov rcx, r8
call fcn.180039c50
mov r8, qword [rsp + 0x40]
mov dword [r13 + 0x3c], r14d
jmp 0x180043624
mov r12, qword [rsp + 0x38]
lea r9, [rbp + 8]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r12 + 4]
mov r8d, dword [r12 + 0x10]
mov rcx, qword [rax + rcx*8]
movsxd rax, dword [r12 + 0xc]
imul rdx, rax, 0x38
mov dword [rbp + 8], r14d
add rdx, rsi
call fcn.180049fe0
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x180041ee2
lea r10d, [rax + 1]
mov r15, qword [rsp + 0x38]
mov r12d, eax
mov r9, qword [rsp + 0x50]
cmp dword [rbp + 8], eax
jne 0x1800400d5
mov r8, qword [rsp + 0x40]
jmp 0x18004362f
mov r12, qword [rsp + 0x38]
movsxd rax, dword [r12 + 8]
movsxd rcx, dword [r12 + 4]
imul rdx, rax, 0x38
mov rax, qword [r13 + 0x78]
add rdx, rsi
mov rcx, qword [rax + rcx*8]
call fcn.180049f10
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x180041ee2
movsxd rcx, dword [r12 + 0xc]
mov r12d, r8d
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov dword [rcx + 0x28], r14d
jmp 0x18004361a
mov r12, qword [rsp + 0x38]
mov rcx, r13
mov rdx, r12
call fcn.18003e7e0
mov rcx, qword [r13 + 0x78]
mov rbx, rax
movsxd rdx, dword [r12 + 4]
mov rdx, qword [rcx + rdx*8]
mov rdi, qword [rdx + 0x38]
mov rcx, rdi
call fcn.180026150
mov rsi, qword [rsp + 0x40]
cmp eax, dword [rsi + 0x7c]
ja 0x1800446bf
mov r8, rbx
mov edx, eax
mov rcx, rdi
call fcn.180031a80
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x180041ee7
cmp dword [r12 + 0xc], eax
jne 0x180044179
mov eax, 0x1000
test word [rbx + 8], ax
je 0x180044179
mov rcx, rbx
call fcn.1800308e0
mov r8, rsi
test eax, eax
jne 0x1800445b9
mov r12d, dword [rsp + 0x30]
mov r15, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x60]
jmp 0x180043624
mov rbx, qword [rsp + 0x38]
mov rcx, r13
mov rdx, rbx
call fcn.18003e7e0
movsxd rdx, dword [rbx + 4]
mov rdi, rax
mov rcx, qword [r13 + 0x78]
mov rbx, qword [rcx + rdx*8]
cmp byte [rbx + 2], 0
je 0x1800422c9
mov r8, qword [rsp + 0x40]
mov r10d, 1
mov r15, qword [rsp + 0x38]
mov r9, qword [rsp + 0x50]
mov word [rax + 8], r10w
jmp 0x18004362f
cmp byte [rbx + 3], 0
je 0x1800422df
mov rax, qword [rbx + 0x58]
mov qword [rbp + 0x30], rax
mov qword [rdi], rax
jmp 0x18004361a
cmp byte [rbx], 2
jne 0x180042321
mov rcx, qword [rbx + 0x38]
lea rdx, [rbp + 0x30]
mov rbx, qword [rcx]
mov rax, qword [rbx]
call qword [rax + 0x60]
mov rdx, rbx
mov rcx, r13
mov dword [rsp + 0x30], eax
call fcn.180039e90
mov r8d, dword [rsp + 0x30]
test r8d, r8d
jne 0x180041ee2
mov rax, qword [rbp + 0x30]
mov r12d, r8d
mov qword [rdi], rax
jmp 0x18004361a
mov rcx, rbx
call fcn.180037e80
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x180041ee2
cmp byte [rbx + 2], al
je 0x18004235f
mov r8, qword [rsp + 0x40]
mov r10d, 1
mov r15, qword [rsp + 0x38]
mov r12d, eax
mov r9, qword [rsp + 0x50]
mov word [rdi + 8], r10w
jmp 0x18004362f
mov rcx, qword [rbx + 0x38]
call fcn.180026110
mov r12d, dword [rsp + 0x30]
mov qword [rbp + 0x30], rax
mov qword [rdi], rax
jmp 0x18004361a
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx], 0
mov byte [rcx + 2], 1
mov dword [rcx + 0x28], r14d
jne 0x1800441a9
mov rcx, qword [rcx + 0x38]
call fcn.1800209d0
jmp 0x18004361a
mov r12, qword [rsp + 0x38]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r12 + 4]
mov rdi, qword [rax + rcx*8]
mov rsi, qword [rdi + 0x38]
mov dword [rbp - 0x58], r14d
cmp bl, 0x82
jne 0x1800423df
mov rcx, rsi
mov dword [rdi + 0x2c], 0xffffffff
call fcn.180026100
test eax, eax
jne 0x18004419f
lea rdx, [rbp - 0x58]
mov rcx, rsi
call fcn.180026e50
mov r8d, eax
mov dword [rsp + 0x30], eax
movzx eax, byte [rbp - 0x58]
mov byte [rdi + 2], al
mov byte [rdi + 3], 0
mov dword [rdi + 0x28], r14d
test r8d, r8d
jne 0x180041ee2
mov r15, qword [rsp + 0x38]
cmp dword [r12 + 8], r8d
jle 0x180044165
lea r10d, [r8 + 1]
mov r9, qword [rsp + 0x50]
mov r12d, r8d
cmp dword [rbp - 0x58], r8d
jne 0x1800400d5
mov r8, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x60]
jmp 0x18004362f
mov rax, qword [r13 + 0x78]
lea rdx, [rbp - 0x54]
mov r12, qword [rsp + 0x38]
movsxd rcx, dword [r12 + 4]
mov rcx, qword [rax + rcx*8]
mov rbx, qword [rcx + 0x38]
mov rcx, rbx
call fcn.180026e00
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x180041ee2
cmp dword [rbp - 0x54], eax
jne 0x180043c1d
mov rcx, rbx
call fcn.1800274b0
test rax, rax
js 0x1800424ac
mov rcx, rax
call fcn.18000b9a0
movsx ecx, ax
cmp ecx, dword [r12 + 0xc]
jge 0x1800424ac
mov r12d, dword [rsp + 0x30]
mov r10d, 1
mov dword [rbp - 0x54], r10d
jmp 0x1800400cb
cmp dword [rbp - 0x54], 0
mov r10d, 1
mov r12d, dword [rsp + 0x30]
mov r15, qword [rsp + 0x38]
mov r9, qword [rsp + 0x50]
jne 0x1800400d5
mov r8, qword [rsp + 0x40]
jmp 0x18004362f
inc dword [r13 + 0xdc]
mov rax, qword [rsp + 0x38]
lea rdx, [rbp - 0x60]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
mov dword [rbp - 0x60], r10d
cmp byte [rbx], 1
jne 0x180042504
mov rcx, rbx
call fcn.180049d70
jmp 0x180042515
mov rcx, qword [rbx + 0x38]
call fcn.180026e00
mov byte [rbx + 3], 0
mov dword [rbx + 0x28], r14d
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x180041ee2
movzx eax, byte [rbp - 0x60]
lea r10d, [r8 + 1]
mov r15, qword [rsp + 0x38]
mov r12d, r8d
mov r9, qword [rsp + 0x50]
mov byte [rbx + 2], al
cmp dword [rbp - 0x60], r8d
jne 0x1800400d5
mov r8, qword [rsp + 0x40]
jmp 0x18004362f
mov rax, qword [r13 + 0x78]
mov r12, qword [rsp + 0x38]
movsxd rcx, dword [r12 + 4]
mov rbx, qword [rax + rcx*8]
mov rcx, r8
mov rdx, rbx
call fcn.180049e00
jmp 0x18004258f
mov r12, qword [rsp + 0x38]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r12 + 4]
mov edx, dword [r12 + 0xc]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rbx + 0x38]
call qword [r12 + 0x10]
mov dword [rsp + 0x30], eax
mov r8d, eax
mov dword [rbx + 0x28], r14d
test eax, eax
jne 0x1800425b4
mov byte [rbx + 2], al
movzx eax, word [r12 + 2]
inc dword [r13 + rax*4 + 0xd4]
jmp 0x180043d68
cmp r8d, 0x65
jne 0x180041ee2
mov r12d, r14d
mov dword [rsp + 0x30], r14d
mov byte [rbx + 2], 1
jmp 0x180043d97
mov r12, qword [rsp + 0x38]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r12 + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [r12 + 8]
imul rbx, rax, 0x38
add rbx, rsi
test byte [r12 + 2], 1
je 0x1800425f9
inc dword [r13 + 0x3c]
mov eax, 0x4000
test word [rbx + 8], ax
je 0x18004261b
mov rcx, rbx
call fcn.180030940
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x180041ee2
movsxd rax, dword [rbx + 0xc]
movzx r8d, word [r12 + 2]
mov qword [rbp - 0x30], rax
mov rax, qword [rbx + 0x10]
mov qword [rbp - 0x38], rax
movsxd rax, dword [r12 + 0xc]
imul rcx, rax, 0x38
movzx eax, word [r12 + 0x10]
add rcx, rsi
mov word [rbp - 0x18], ax
mov qword [rbp - 0x20], rcx
test r8b, 0x10
je 0x180042657
mov r9d, dword [rdi + 0x2c]
jmp 0x18004265a
mov r9d, r14d
mov rcx, qword [rdi + 0x38]
lea rdx, [rbp - 0x38]
and r8d, 0xa
call fcn.18002c350
mov dword [rdi + 0x28], r14d
jmp 0x18004388d
mov r12, qword [rsp + 0x38]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r12 + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [r12 + 8]
imul rbx, rax, 0x38
mov eax, 0x4000
add rbx, rsi
test word [rbx + 8], ax
je 0x1800426b4
mov rcx, rbx
call fcn.180030940
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x180041ee2
mov rdx, rbx
mov rcx, rdi
call fcn.1800487b0
jmp 0x18004388d
mov r12, qword [rsp + 0x38]
lea rdx, [rbp - 0x38]
mov rax, qword [r13 + 0x78]
xor r9d, r9d
xor r8d, r8d
movsxd rcx, dword [r12 + 4]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x40]
mov rdi, qword [rbx + 0x38]
mov qword [rbp - 0x38], rax
movzx eax, word [r12 + 0xc]
mov word [rbp - 0x28], ax
movsxd rax, dword [r12 + 8]
imul rcx, rax, 0x38
lea rax, [rbp + 0x1c]
mov byte [rbp - 0x26], 0
add rcx, rsi
mov qword [rsp + 0x20], rax
mov qword [rbp - 0x30], rcx
mov rcx, rdi
call fcn.180026ed0
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x180041ee2
cmp dword [rbp + 0x1c], eax
jne 0x180042758
mov dl, 4
mov rcx, rdi
call fcn.18002c790
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x180041ee2
mov qword [rbx + 0x28], 0
mov r12d, eax
jmp 0x18004361a
cmp word [r12 + 2], 0
jne 0x180044573
mov r12d, dword [rsp + 0x30]
mov qword [rbx + 0x28], 0
jmp 0x18004361a
mov rax, qword [r13 + 0x78]
mov r12, qword [rsp + 0x38]
movsxd rcx, dword [r12 + 4]
mov rbx, qword [rax + rcx*8]
mov rcx, rbx
call fcn.180037e80
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x180041ee2
cmp byte [rbx + 2], al
jne 0x18004281f
mov rcx, qword [rsp + 0x40]
lea r8, [rbp + 0x38]
mov qword [rbp + 0x38], r14
mov rdx, qword [rbx + 0x38]
call fcn.1800398f0
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x180041ee2
cmp byte [r12], 0x86
jne 0x180042803
movsxd rcx, dword [r12 + 0xc]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
mov byte [rdx + 2], r8b
mov rax, qword [rbp + 0x38]
mov qword [rdx + 0x58], rax
mov byte [rdx + 3], 1
mov rax, qword [r12 + 0x10]
mov r12d, r8d
mov qword [rdx + 0x20], rax
mov qword [rdx + 0x30], rbx
jmp 0x18004361a
mov rdx, r12
mov rcx, r13
call fcn.18003e7e0
mov rcx, qword [rbp + 0x38]
mov r12d, dword [rsp + 0x30]
mov qword [rax], rcx
jmp 0x18004361a
movsxd rax, dword [r12 + 8]
imul rcx, rax, 0x38
add rcx, rsi
call fcn.1800311e0
mov r12d, dword [rsp + 0x30]
jmp 0x18004361a
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx + 3], 0
je 0x18003ebb4
call fcn.180037da0
jmp 0x18004388d
mov r12, qword [rsp + 0x38]
cmp bl, 0x28
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r12 + 4]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rdx + 0x40]
mov qword [rbp - 0x38], rax
movzx eax, word [r12 + 0x10]
mov word [rbp - 0x28], ax
sbb al, al
mov byte [rbp - 0x26], al
movsxd rax, dword [r12 + 0xc]
imul rcx, rax, 0x38
add rcx, rsi
mov qword [rbp - 0x30], rcx
mov rdi, qword [rdx + 0x38]
mov rcx, rdi
call fcn.180026150
mov ebx, eax
test eax, eax
je 0x18004457e
cmp rbx, 0x7fffffff
ja 0x18004457e
mov rdx, qword [rsp + 0x40]
lea rcx, [rbp + 0x108]
xor r8d, r8d
call fcn.1800311c0
lea r8, [rbp + 0x108]
mov edx, ebx
mov rcx, rdi
call fcn.180031a80
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x180041ee2
mov rdx, qword [rbp + 0x118]
lea r8, [rbp - 0x38]
mov ecx, dword [rbp + 0x114]
xor r9d, r9d
call fcn.180038c80
lea rcx, [rbp + 0x108]
mov ebx, eax
call fcn.180030cb0
movzx edx, byte [r12]
lea ecx, [rbx + 1]
mov r12d, dword [rsp + 0x30]
neg ebx
mov r15, qword [rsp + 0x38]
and dl, 1
mov r9, qword [rsp + 0x50]
mov r10d, 1
cmovne ebx, ecx
test ebx, ebx
jg 0x1800400d5
mov r8, qword [rsp + 0x40]
jmp 0x18004362f
mov r12, qword [rsp + 0x38]
mov rcx, r13
mov rdx, r12
call fcn.18003e7e0
mov r8, qword [rsp + 0x40]
mov edi, 1
mov rbx, rax
mov word [rax + 8], di
mov ecx, dword [r8 + 0xd8]
inc ecx
cmp dword [r8 + 0xcc], ecx
jg 0x180044594
mov rcx, qword [r8 + 0x20]
lea r8, [rbp - 0x50]
movsxd rdi, dword [r12 + 0xc]
mov edx, dword [r12 + 4]
mov r9, rdi
shl r9, 5
mov dword [rbp - 0x50], r14d
mov rcx, qword [r9 + rcx + 8]
call fcn.18002d7b0
mov r8d, eax
mov dword [rsp + 0x30], eax
mov eax, 4
mov word [rbx + 8], ax
movsxd rax, dword [rbp - 0x50]
mov qword [rbx], rax
test r8d, r8d
jne 0x180041ee2
mov r8d, dword [rbp - 0x50]
test r8d, r8d
je 0x180044151
mov r9d, dword [r12 + 4]
mov edx, edi
mov rcx, qword [rsp + 0x40]
call fcn.180068630
mov r12d, dword [rsp + 0x30]
lea ecx, [rdi + 1]
mov byte [rsp + 0x79], cl
jmp 0x18004361a
mov r12, qword [rsp + 0x38]
lea r8, [rbp - 0x70]
mov rsi, qword [rsp + 0x40]
mov dword [rbp - 0x70], r14d
cmp dword [r12 + 0xc], 0
movsxd rax, dword [r12 + 8]
mov rcx, qword [rsi + 0x20]
cmove r8, r14
mov edx, dword [r12 + 4]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.18002d370
cmp dword [r12 + 0xc], 0
mov r8d, eax
mov dword [rsp + 0x30], eax
je 0x180042a65
movsxd rdx, dword [rbp - 0x70]
add dword [r13 + 0x3c], edx
movsxd rax, dword [r12 + 0xc]
test eax, eax
jle 0x180042a65
imul rcx, rax, 0x38
mov rax, rdx
mov rdx, qword [rsp + 0x60]
add qword [rcx + rdx], rax
test r8d, r8d
jne 0x180041ee7
mov r12d, dword [rsp + 0x30]
mov r8, rsi
mov rsi, qword [rsp + 0x60]
mov r15, qword [rsp + 0x38]
jmp 0x180043624
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx], 1
jne 0x180042aac
mov rdx, qword [rcx + 0x38]
mov rcx, r8
call fcn.180047380
jmp 0x18004361a
mov rcx, qword [rcx + 0x38]
call fcn.18002d450
jmp 0x18004388d
mov r12, qword [rsp + 0x38]
mov rcx, r13
mov rdx, r12
call fcn.18003e7e0
movsxd rcx, dword [r12 + 4]
lea rdx, [rbp + 0xc]
mov r8d, dword [r12 + 0xc]
mov rbx, rax
mov rax, qword [rsp + 0x40]
shl rcx, 5
mov dword [rbp + 0xc], r14d
add rcx, qword [rax + 0x20]
mov rcx, qword [rcx + 8]
call fcn.18002d050
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x180041ee2
mov eax, dword [rbp + 0xc]
mov r12d, r8d
mov qword [rbx], rax
jmp 0x18004361a
inc byte [r8 + 0x6a]
xor r9d, r9d
mov rax, qword [rsp + 0x38]
xor r8d, r8d
mov rcx, qword [rsp + 0x40]
mov qword [rsp + 0x20], r14
mov rdx, qword [rax + 0x10]
call sym.QoOBJSl.dll_hqlite3_exec
mov rsi, qword [rsp + 0x40]
mov r8d, eax
mov dword [rsp + 0x30], eax
dec byte [rsi + 0x6a]
test eax, eax
jne 0x180041ee7
mov r15, qword [rsp + 0x38]
mov r8, rsi
mov rsi, qword [rsp + 0x60]
mov r12d, eax
jmp 0x180043624
mov r12, qword [rsp + 0x38]
mov rcx, qword [r8 + 0x20]
cmp qword [r12 + 0x10], 0
movsxd rbx, dword [r12 + 4]
jne 0x180042bc5
mov rax, rbx
shl rax, 5
mov rcx, qword [rax + rcx + 0x18]
call fcn.18006e220
mov rax, qword [rsp + 0x40]
lea r8, [r13 + 0xa8]
mov edi, 1
mov edx, ebx
mov r9d, edi
mov rcx, rax
and dword [rax + 0x2c], 0xffffffef
call fcn.180088430
mov r8d, eax
mov dword [rsp + 0x30], eax
mov rax, qword [rsp + 0x40]
or dword [rax + 0x2c], edi
and dword [r13 + 0xc8], 0xfffffffc
jmp 0x180042ca3
mov dword [rbp - 0x28], ebx
lea rax, [r13 + 0xa8]
mov qword [rbp - 0x38], r8
mov qword [rbp - 0x30], rax
mov dword [rbp - 0x20], r14d
shl rbx, 5
mov rcx, qword [rbx + rcx + 8]
call fcn.180022580
mov r12, qword [rsp + 0x40]
lea r9, str.sqlite_master
mov dword [rbp - 0x18], eax
lea rdx, str.SELECTFROM__w_._s_WHERE__s_ORDER_BY_rowid
mov rax, qword [rsp + 0x38]
mov rcx, r12
mov r8, qword [r12 + 0x20]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x20], rax
mov r8, qword [rbx + r8]
call fcn.180008da0
mov rbx, rax
mov rcx, r12
test rax, rax
je 0x1800445b1
lea r9, [rbp - 0x38]
mov byte [r12 + 0xb5], 1
lea r8, [fcn.180087cd0]
mov dword [rbp - 0x24], r14d
mov rdx, rax
mov dword [rbp - 0x1c], r14d
mov qword [rsp + 0x20], r14
call sym.QoOBJSl.dll_hqlite3_exec
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x180042c80
mov r12d, dword [rbp - 0x24]
mov dword [rsp + 0x30], r12d
test r12d, r12d
jne 0x180042c80
cmp dword [rbp - 0x1c], r12d
jne 0x180042c80
mov ecx, 0x1670d
call fcn.1800c8fa0
mov dword [rsp + 0x30], eax
mov rcx, qword [rsp + 0x40]
mov rdx, rbx
call fcn.180005ba0
mov rax, qword [rsp + 0x40]
mov edi, 1
mov r8d, dword [rsp + 0x30]
mov byte [rax + 0xb5], 0
test r8d, r8d
je 0x18004389c
mov rcx, rax
call fcn.180063fb0
mov r8d, dword [rsp + 0x30]
mov rbx, qword [rsp + 0x58]
cmp r8d, 7
je 0x18004492b
mov rsi, qword [rsp + 0x40]
mov dword [rsp + 0x30], r8d
jmp 0x180041ef1
mov rax, qword [rsp + 0x38]
mov rcx, r8
mov edx, dword [rax + 4]
call fcn.180060f20
jmp 0x18004388d
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x40]
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.180064810
jmp 0x18004361a
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x40]
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.180063d70
jmp 0x18004361a
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x40]
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.18009c2e0
jmp 0x18004361a
mov rcx, qword [rsp + 0x38]
lea r11, [rbp + 0x18]
mov r9, qword [rsp + 0x38]
mov r10, qword [rsp + 0x40]
mov qword [rsp + 0x28], r11
movsxd rax, dword [rcx + 0xc]
mov r8, qword [rcx + 0x10]
mov rdx, qword [r10 + 0x20]
add r8, 4
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movzx eax, word [r9 + 2]
add rdi, rsi
mov r9d, dword [r9 + 8]
add rbx, rsi
shl rax, 5
mov ecx, dword [rdi]
inc ecx
mov rdx, qword [rax + rdx + 8]
mov dword [rsp + 0x20], ecx
mov rcx, r10
call fcn.18002e880
mov rcx, rbx
mov rsi, rax
call fcn.1800311e0
mov ecx, dword [rbp + 0x18]
test ecx, ecx
je 0x180042ddc
test rsi, rsi
je 0x180044682
dec ecx
lea rax, [sym.QoOBJSl.dll_hqlite3_free]
movsxd rdx, ecx
mov r9b, 1
sub qword [rdi], rdx
mov r8d, 0xffffffff
mov rdx, rsi
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.180031670
movzx edx, byte [rsp + 0x48]
mov rcx, rbx
call fcn.1800306b0
jmp 0x180043d97
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 8]
add rbx, rsi
imul rdi, rax, 0x38
test byte [rbx + 8], 0x10
jne 0x180042e1c
mov rcx, rbx
call fcn.1800313a0
test eax, eax
jne 0x180044682
mov rdx, qword [rdi + rsi]
mov rcx, qword [rbx + 0x10]
call fcn.1800144e0
jmp 0x18004361a
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, rsi
test byte [rbx + 8], 0x10
je 0x180042e73
mov rcx, qword [rbx + 0x10]
lea rdx, [rbp + 0x50]
call fcn.180014980
test eax, eax
je 0x180042e73
mov rax, qword [rsp + 0x38]
mov rdx, qword [rbp + 0x50]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, rsi
call fcn.1800312b0
jmp 0x180043d97
mov rcx, rbx
call fcn.1800311e0
jmp 0x180043d6d
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, rsi
imul rsi, rax, 0x38
add rsi, qword [rsp + 0x60]
test byte [rbx + 8], 0x10
jne 0x180042eb6
mov rcx, rbx
call fcn.1800313a0
test eax, eax
jne 0x180044682
test edi, edi
je 0x180042ed8
mov r8, qword [rsi]
mov edx, edi
mov rcx, qword [rbx + 0x10]
call fcn.180014a00
test eax, eax
jne 0x1800400c5
test edi, edi
js 0x18004419f
mov rdx, qword [rsi]
mov rcx, qword [rbx + 0x10]
call fcn.1800144e0
mov r8, qword [rsp + 0x40]
mov r15, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x60]
jmp 0x180043624
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 0xc]
mov r15, qword [rcx + 0x10]
imul r14, rax, 0x38
add r14, rsi
cmp word [rcx + 2], 0
je 0x180042f36
mov rax, qword [r13 + 0x100]
mov rcx, qword [r15 + 0x20]
test rax, rax
je 0x180042f36
cmp qword [rax + 0x38], rcx
je 0x18003ebb4
mov rax, qword [rax + 8]
test rax, rax
jne 0x180042f23
mov eax, dword [r13 + 0x110]
cmp eax, dword [r8 + 0xa4]
jge 0x1800445e0
test byte [r14 + 8], 0x10
jne 0x18004306a
mov edx, dword [r15 + 0x10]
mov ecx, dword [r15 + 0xc]
add ecx, edx
test edx, edx
lea ebx, [rcx + 1]
cmovne ebx, ecx
lea eax, [rbx + 2]
imul ecx, eax, 7
mov eax, dword [r15 + 8]
add ecx, edx
add eax, 7
jns 0x180042f7b
add eax, 7
sar eax, 3
lea edi, [rax + rcx*8]
mov rcx, r8
movsxd rdx, edi
call fcn.180005f30
mov rsi, rax
test rax, rax
je 0x180044682
mov rcx, r14
call fcn.180030cb0
mov r8, qword [rsp + 0x40]
mov eax, 0x410
mov word [r14 + 8], ax
lea rax, [0x180034a20]
mov qword [r14 + 0x30], rax
mov rax, qword [rsp + 0x38]
sub rax, qword [rsp + 0x50]
mov qword [r14 + 0x10], rsi
mov dword [r14 + 0xc], edi
sar rax, 3
mov qword [rsi], r13
mov dword [rsi + 0x60], ebx
mov ecx, dword [r15 + 0x10]
mov dword [rsi + 0x64], ecx
movabs rcx, 0xaaaaaaaaaaaaaaab
imul rax, rcx
mov dword [rsi + 0x54], eax
mov rax, qword [r13 + 0x68]
mov qword [rsi + 0x20], rax
mov eax, dword [r13 + 0x28]
mov dword [rsi + 0x5c], eax
mov rax, qword [r13 + 0x78]
mov qword [rsi + 0x28], rax
mov eax, dword [r13 + 0x2c]
mov dword [rsi + 0x50], eax
mov rax, qword [r13 + 0x88]
mov qword [rsi + 0x10], rax
mov eax, dword [r13 + 0x90]
mov dword [rsi + 0x58], eax
mov rax, qword [r15 + 0x20]
mov qword [rsi + 0x38], rax
movsxd rax, ebx
add rax, 2
imul rcx, rax, 0x38
lea rax, [rsi + 0x70]
add rcx, rsi
cmp rax, rcx
je 0x180043061
mov edx, 0x80
nop word [rax + rax]
mov word [rax + 8], dx
mov qword [rax + 0x28], r8
add rax, 0x38
cmp rax, rcx
jne 0x180043050
mov eax, dword [r13 + 0x110]
jmp 0x18004306e
mov rsi, qword [r14 + 0x10]
inc eax
lea rdx, [rsi + 0x70]
mov dword [r13 + 0x110], eax
mov rax, qword [r13 + 0x100]
mov qword [rsi + 8], rax
mov rax, qword [r8 + 0x38]
mov qword [rsi + 0x40], rax
mov eax, dword [r13 + 0x3c]
mov dword [rsi + 0x68], eax
mov rax, qword [r13]
mov qword [rsp + 0x60], rdx
mov ecx, dword [rax + 0x74]
mov dword [rsi + 0x6c], ecx
mov rax, qword [r13 + 0x120]
mov qword [rsi + 0x48], rax
xor eax, eax
mov qword [r13 + 0x120], rax
mov dword [r13 + 0x3c], eax
mov qword [r13 + 0x68], rdx
mov qword [r13 + 0x100], rsi
movsxd rcx, dword [rsi + 0x60]
mov dword [r13 + 0x28], ecx
movzx eax, word [rsi + 0x64]
mov dword [r13 + 0x2c], eax
imul rcx, rcx, 0x38
add rdx, rcx
mov qword [r13 + 0x78], rdx
movsxd rax, dword [r15 + 0x10]
lea rcx, [rdx + rax*8]
mov qword [rsi + 0x30], rcx
mov eax, dword [r15 + 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 r9, qword [r15]
mov qword [r13 + 0x88], r9
mov eax, dword [r15 + 8]
mov qword [rsp + 0x50], r9
lea rcx, [r9 - 0x18]
mov dword [r13 + 0x90], eax
mov qword [rsp + 0x38], rcx
jmp 0x180043d97
mov rdx, qword [rsp + 0x38]
mov rcx, r13
call fcn.18003e7e0
mov r9, qword [r13 + 0x100]
movsxd rcx, dword [r9 + 0x54]
lea rdx, [rcx + rcx*2]
mov rcx, qword [r9 + 0x10]
mov r8d, dword [rcx + rdx*8 + 4]
mov rcx, qword [rsp + 0x38]
add r8d, dword [rcx + 4]
movsxd rcx, r8d
mov r8d, 0x1000
imul rdx, rcx, 0x38
mov rcx, rax
add rdx, qword [r9 + 0x20]
call fcn.180031520
jmp 0x18004361a
mov eax, dword [r8 + 0x30]
bt rax, 0x13
mov rax, qword [rsp + 0x38]
mov r15, rax
jae 0x1800431ae
movsxd rax, dword [rax + 8]
add qword [r8 + 0x2d0], rax
mov r13, qword [rbp - 0x78]
add r15, 0x18
mov rdi, qword [rbp + 0x10]
xor r14d, r14d
jmp 0x18003e930
cmp dword [rax + 4], 0
movsxd rax, dword [rax + 8]
je 0x1800431d3
add qword [r8 + 0x2c8], rax
mov r13, qword [rbp - 0x78]
add r15, 0x18
mov rdi, qword [rbp + 0x10]
xor r14d, r14d
jmp 0x18003e930
add qword [r13 + 0x50], rax
mov r13, qword [rbp - 0x78]
add r15, 0x18
mov rdi, qword [rbp + 0x10]
xor r14d, r14d
jmp 0x18003e930
cmp dword [r15 + 4], 0
je 0x180043222
cmp qword [r8 + 0x2c8], 0
jne case.0x18003e963.85
cmp qword [r8 + 0x2d0], 0
je 0x1800400d5
mov r13, qword [rbp - 0x78]
add r15, 0x18
mov rdi, qword [rbp + 0x10]
xor r14d, r14d
jmp 0x18003e930
cmp qword [r13 + 0x50], 0
jne case.0x18003e963.85
cmp qword [r8 + 0x2d0], 0
je 0x1800400d5
mov r13, qword [rbp - 0x78]
add r15, 0x18
mov rdi, qword [rbp + 0x10]
xor r14d, r14d
jmp 0x18003e930
mov rcx, qword [r13 + 0x100]
test rcx, rcx
je 0x180043283
mov rax, qword [rcx + 8]
test rax, rax
je 0x180043270
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x180043264
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, qword [rcx + 0x20]
jmp 0x180043293
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, rsi
mov rcx, rdi
call fcn.180030e80
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rbx, rsi
mov rcx, rbx
call fcn.180030e80
mov rax, qword [rbx]
mov r8, qword [rsp + 0x40]
mov r15, qword [rsp + 0x38]
cmp qword [rdi], rax
jge 0x1800441ae
mov qword [rdi], rax
jmp 0x180043624
mov rax, qword [rsp + 0x38]
mov r15, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rdx, qword [rcx + rsi]
test rdx, rdx
jle 0x18004362f
mov rax, r15
movsxd rax, dword [rax + 0xc]
sub rdx, rax
mov qword [rcx + rsi], rdx
jmp 0x1800400d5
mov rcx, qword [rsp + 0x38]
mov rdx, rcx
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
mov rcx, r13
imul rdi, rax, 0x38
add rbx, rsi
add rdi, rsi
call fcn.18003e7e0
mov rcx, qword [rbx]
mov rsi, rax
mov qword [rbp + 0x48], rcx
test rcx, rcx
jle 0x180043360
mov rdx, qword [rdi]
lea rcx, [rbp + 0x48]
test rdx, rdx
cmovle rdx, r14
call fcn.18000b7a0
test eax, eax
jne 0x180043360
mov rax, qword [rbp + 0x48]
mov qword [rsi], rax
mov rsi, qword [rsp + 0x60]
jmp 0x18004361a
mov qword [rsi], 0xffffffffffffffff
mov rsi, qword [rsp + 0x60]
jmp 0x18004361a
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + rsi]
test rax, rax
je 0x18003ebb4
mov r15, qword [rsp + 0x38]
jle 0x1800400d5
dec rax
mov qword [rcx + rsi], rax
jmp 0x1800400d5
mov rax, qword [rsp + 0x38]
movabs r11, 0x8000000000000000
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + rsi]
cmp rax, r11
jle 0x1800433c9
dec rax
mov qword [rcx + rsi], rax
mov r15, qword [rsp + 0x38]
test rax, rax
je 0x1800400d5
mov r13, qword [rbp - 0x78]
add r15, 0x18
mov rdi, qword [rbp + 0x10]
xor r14d, r14d
jmp 0x18003e930
mov r12, qword [rsp + 0x38]
mov rcx, r8
movzx edi, word [r12 + 2]
mov esi, edi
lea rdx, [rdi*8 + 0x68]
call fcn.180006000
mov rbx, rax
test rax, rax
je 0x180044682
mov rdx, qword [rsp + 0x40]
add rsi, 6
mov r15d, 1
mov qword [rax + 0x10], r14
mov r8d, r15d
lea rcx, [rax + rsi*8]
mov qword [rax], rcx
call fcn.1800311c0
mov rcx, qword [r12 + 0x10]
movabs rax, 0xaaaaaaaaaaaaaaab
mov rsi, qword [rsp + 0x60]
mov qword [rbx + 8], rcx
mov rcx, r12
sub rcx, qword [rsp + 0x50]
mov qword [rbx + 0x18], r13
mov byte [rbx + 0x28], 0
mov dword [rbx + 0x24], r14d
mov byte [rbx + 0x29], dil
sar rcx, 3
imul rcx, rax
mov dword [rbx + 0x20], ecx
mov word [r12], 0xf09c
mov qword [r12 + 0x10], rbx
jmp 0x18004348a
mov r12, qword [rsp + 0x38]
mov r15d, 1
movsxd rax, dword [r12 + 0xc]
mov rbx, qword [r12 + 0x10]
imul r10, rax, 0x38
add r10, rsi
cmp qword [rbx + 0x10], r10
je 0x1800434e2
movzx eax, byte [rbx + 0x29]
mov edx, eax
mov qword [rbx + 0x10], r10
sub rdx, 1
lea r9d, [rax - 1]
js 0x1800434e2
lea r8, [rdx + 6]
lea r8, [rbx + r8*8]
nop dword [rax]
mov eax, dword [r12 + 8]
lea r8, [r8 - 8]
add eax, r9d
dec r9d
cdqe
imul rcx, rax, 0x38
add rcx, rsi
sub rdx, 1
mov qword [r8 + 8], rcx
jns 0x1800434c0
inc dword [r10 + 0xc]
lea r8, [rbx + 0x30]
cmp dword [r12 + 4], 0
mov rcx, rbx
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x29]
je 0x180043502
call qword [rax + 0x30]
jmp 0x180043505
call qword [rax + 0x18]
mov eax, dword [rbx + 0x24]
test eax, eax
je 0x180044151
jle 0x18004353a
mov rcx, qword [rbx]
call sym.QoOBJSl.dll_hqlite3_value_text
mov r8, rax
lea rdx, [0x180138810]
mov rcx, r13
call fcn.180032660
mov r12d, dword [rbx + 0x24]
mov dword [rsp + 0x30], r12d
mov r12, qword [rsp + 0x38]
cmp byte [rbx + 0x28], 0
je 0x18004355c
movsxd rax, dword [r12 - 0x14]
test eax, eax
je 0x180043558
imul rcx, rax, 0x38
mov rdx, r15
add rcx, rsi
call fcn.1800312b0
mov byte [rbx + 0x28], 0
mov rcx, qword [rbx]
call fcn.180030cb0
mov rax, qword [rbx]
mov r10d, 1
mov r8d, dword [rsp + 0x30]
mov word [rax + 8], r10w
mov dword [rbx + 0x24], r14d
test r8d, r8d
jne 0x180044935
mov r15, qword [rsp + 0x38]
mov r12d, r8d
mov r8, qword [rsp + 0x40]
mov r9, qword [rsp + 0x50]
jmp 0x18004362f
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
mov rcx, qword [rcx + 0x10]
add rbx, rsi
test eax, eax
je 0x1800435e2
imul rdx, rax, 0x38
mov r8, rcx
mov rcx, rbx
add rdx, rsi
call fcn.180030ba0
mov r12d, eax
mov dword [rsp + 0x30], eax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
add rbx, rsi
jmp 0x1800435f4
mov rdx, rcx
mov rcx, rbx
call fcn.180030af0
mov r12d, eax
mov dword [rsp + 0x30], eax
mov rcx, rbx
test r12d, r12d
jne 0x1800445fe
movzx edx, byte [rsp + 0x48]
call fcn.1800306b0
mov rcx, rbx
call fcn.1800314b0
test eax, eax
jne 0x1800446ba
mov r8, qword [rsp + 0x40]
mov r15, qword [rsp + 0x38]
mov r9, qword [rsp + 0x50]
mov r10d, 1
mov edx, 0x2400
mov r13, qword [rbp - 0x78]
add r15, 0x18
mov rdi, qword [rbp + 0x10]
xor r14d, r14d
jmp 0x18003e930
mov r12, qword [rsp + 0x38]
lea rax, [rbp + 0x148]
mov rcx, qword [rsp + 0x40]
lea r9, [rbp + 0x144]
mov dword [rbp + 0x140], r14d
mov qword [rbp + 0x144], 0xffffffffffffffff
mov r8d, dword [r12 + 8]
mov edx, dword [r12 + 4]
mov qword [rsp + 0x20], rax
call fcn.1800c70c0
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
je 0x1800436af
cmp eax, 5
jne 0x180041ee2
mov ecx, 1
mov dword [rsp + 0x30], r14d
mov dword [rbp + 0x140], ecx
mov r12d, r14d
jmp 0x1800436b4
mov r12d, dword [rsp + 0x30]
mov rax, qword [rsp + 0x38]
mov rbx, r14
movsxd rax, dword [rax + 0xc]
imul rdi, rax, 0x38
add rdi, rsi
nop word [rax + rax]
movsxd rdx, dword [rbp + rbx*4 + 0x140]
mov rcx, rdi
call fcn.1800312b0
inc rbx
add rdi, 0x38
cmp rbx, 3
jl 0x1800436d0
jmp 0x18004361a
mov rdx, qword [rsp + 0x38]
mov rcx, r13
call fcn.18003e7e0
mov r14, rax
mov rax, qword [rsp + 0x38]
movsxd rdx, dword [rax + 4]
mov ebx, dword [rax + 0xc]
mov rax, qword [rsp + 0x40]
shl rdx, 5
mov rcx, qword [rax + 0x20]
mov r15, qword [rdx + rcx + 8]
mov rcx, r15
call fcn.18002db50
mov rcx, rax
mov rsi, rax
call fcn.18001b760
cmp ebx, 0xffffffff
mov rcx, rsi
mov edi, eax
cmove ebx, eax
call fcn.18001b770
test eax, eax
mov edx, 1
mov rcx, rsi
cmove ebx, edi
call fcn.18001b390
cmp ebx, 5
jne 0x180043776
mov rcx, rax
call fcn.180009f30
test eax, eax
je 0x180043772
mov rcx, rsi
call fcn.18001b8b0
test eax, eax
jne 0x180043776
mov ebx, edi
jmp 0x1800437f2
cmp ebx, edi
je 0x1800437f2
cmp edi, 5
je 0x180043784
cmp ebx, 5
jne 0x1800437f2
mov rax, qword [rsp + 0x40]
cmp byte [rax + 0x5f], 0
je 0x18004461f
cmp dword [rax + 0xcc], 1
jg 0x18004461f
cmp edi, 5
jne 0x1800437c4
mov rdx, rax
mov rcx, rsi
call fcn.18001bbf0
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x1800437f7
mov edx, ebx
mov rcx, rsi
call fcn.18001b5f0
jmp 0x1800437d9
cmp edi, 4
jne 0x1800437d4
lea edx, [rdi - 2]
mov rcx, rsi
call fcn.18001b5f0
test r12d, r12d
jne 0x1800437f7
xor edx, edx
mov rcx, r15
cmp ebx, 5
sete dl
inc edx
call fcn.18002f420
mov r12d, eax
mov dword [rsp + 0x30], eax
test r12d, r12d
je 0x1800437f9
mov ebx, edi
mov edx, ebx
mov rcx, rsi
call fcn.18001b5f0
mov ecx, 0xa02
mov word [r14 + 8], cx
mov ecx, eax
call fcn.180082ea0
mov rcx, rax
mov qword [r14 + 0x10], rax
call fcn.180009f30
movzx edx, byte [rsp + 0x48]
mov rcx, r14
mov dword [r14 + 0xc], eax
mov byte [r14 + 0xa], 1
call fcn.1800306b0
mov r8d, dword [rsp + 0x30]
test r8d, r8d
jne 0x180041ee2
mov r12d, dword [rsp + 0x30]
mov r8, qword [rsp + 0x40]
mov r15, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x60]
jmp 0x180043624
mov r12, qword [rsp + 0x38]
movsxd rax, dword [r12 + 8]
test eax, eax
je 0x180043874
imul r9, rax, 0x38
add r9, rsi
jmp 0x180043877
mov r9, r14
mov r8d, dword [r12 + 4]
lea rcx, [r13 + 0xa8]
mov rdx, qword [rsp + 0x40]
call fcn.1800a1ff0
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x180041ee2
mov r12d, dword [rsp + 0x30]
jmp 0x18004361a
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r8 + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 8]
call fcn.180025190
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
je 0x180044151
cmp eax, 0x65
jne 0x180041ee2
mov r12d, r14d
mov dword [rsp + 0x30], r14d
jmp 0x1800400c5
mov rax, qword [rsp + 0x38]
cmp dword [rax + 4], 0
jne 0x180043901
mov edx, dword [rax + 8]
mov rcx, r8
call fcn.180039c70
jmp 0x18004361a
mov eax, dword [rax + 8]
mov r15, qword [rsp + 0x38]
inc eax
xor eax, dword [r13 + 0xc8]
and eax, 3
xor dword [r13 + 0xc8], eax
mov r13, qword [rbp - 0x78]
add r15, 0x18
mov rdi, qword [rbp + 0x10]
xor r14d, r14d
jmp 0x18003e930
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rcx, qword [rcx + 0x38]
call fcn.180026130
jmp 0x18004361a
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rcx, qword [rcx + 0x38]
call fcn.180026140
jmp 0x18004361a
mov rax, qword [rsp + 0x38]
movzx r8d, byte [rax + 0xc]
test r8b, r8b
jne 0x180043990
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0x30]
bt rax, 0xa
jb 0x18003f156
mov r12, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
movsxd rax, dword [r12 + 4]
mov rcx, qword [rsi + 0x20]
mov edx, dword [r12 + 8]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.18002f220
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x180044659
mov r8, rsi
mov r12d, eax
mov rsi, qword [rsp + 0x60]
jmp 0x18004361f
mov rax, qword [rsp + 0x38]
mov rcx, r8
mov rbx, qword [rax + 0x10]
mov rdx, rbx
call fcn.1800a4530
mov dword [rsp + 0x30], eax
mov r8d, eax
test rbx, rbx
je 0x180043a06
mov rdx, qword [rbx + 0x10]
mov rcx, r13
call fcn.180039e90
mov r8d, dword [rsp + 0x30]
test r8d, r8d
jne 0x180041ee2
mov r12d, dword [rsp + 0x30]
jmp 0x18004361a
mov rax, qword [rsp + 0x38]
lea rcx, [rbp + 0x98]
xorps xmm0, xmm0
mov qword [rbp + 0x98], r14
xorps xmm1, xmm1
mov qword [rbp + 0xc8], r14
movdqu xmmword [rbp + 0xa0], xmm0
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
movdqu xmmword [rbp + 0xb0], xmm1
mov qword [rbp + 0xc0], r8
add rdx, rsi
call fcn.180031560
lea rcx, [rbp + 0x98]
mov dword [rsp + 0x30], eax
call sym.QoOBJSl.dll_hqlite3_value_text
test rax, rax
je 0x180043a95
mov rcx, qword [rsp + 0x40]
lea r9, [r13 + 0xa8]
mov r8, rax
mov rax, qword [rsp + 0x38]
mov edx, dword [rax + 4]
call fcn.1800a3d30
mov dword [rsp + 0x30], eax
lea rcx, [rbp + 0x98]
call fcn.180030cb0
jmp 0x180043a01
inc dword [r8 + 0xd8]
mov r12, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x40]
mov r8, qword [r12 + 0x10]
mov edx, dword [r12 + 4]
call fcn.1800a41f0
mov rsi, qword [rsp + 0x40]
mov r8d, eax
mov dword [rsp + 0x30], eax
dec dword [rsi + 0xd8]
test eax, eax
jne 0x180041ee7
mov r8, rsi
mov r12d, eax
mov rsi, qword [rsp + 0x60]
jmp 0x18004361f
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x70], r14
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x18004468c
mov rdi, qword [rbx]
test rdi, rdi
je 0x18004468c
lea rdx, [rsp + 0x70]
mov rcx, rbx
call qword [rdi + 0x30]
mov rdx, rbx
mov rcx, r13
mov dword [rsp + 0x30], eax
call fcn.180039e90
mov r8d, dword [rsp + 0x30]
test r8d, r8d
jne 0x180041ee2
mov rax, qword [rsp + 0x70]
lea r9d, [r8 - 1]
mov rcx, r13
mov byte [rsp + 0x20], 2
mov qword [rax], rbx
mov rax, qword [rsp + 0x38]
mov edx, dword [rax + 4]
call fcn.18003e310
mov rcx, qword [rsp + 0x70]
test rax, rax
je 0x18004467f
mov r12d, dword [rsp + 0x30]
mov qword [rax + 0x38], rcx
inc dword [rbx + 8]
jmp 0x18004361a
mov r12, qword [rsp + 0x38]
xor r8d, r8d
movsxd rax, dword [r12 + 0xc]
movsxd rcx, dword [r12 + 4]
imul rdx, rax, 0x38
mov rax, qword [r13 + 0x78]
add rdx, rsi
movsxd r9, dword [rdx + 0x38]
lea r11, [rdx + 0x38]
mov r13, qword [rax + rcx*8]
mov rax, qword [rbp - 0x78]
mov edx, dword [rdx]
mov rsi, qword [r13 + 0x38]
mov rdi, qword [rax + 0x70]
mov r15, qword [rsi]
mov r14, qword [r15]
test r9d, r9d
jle 0x180043bda
movsxd rax, r10d
inc r10d
imul rcx, rax, 0x38
add rcx, r11
mov qword [rdi + r8*8], rcx
inc r8
cmp r8, r9
jl 0x180043bc1
mov r8, qword [r12 + 0x10]
mov rcx, rsi
mov qword [rsp + 0x20], rdi
call qword [r14 + 0x40]
mov rcx, qword [rbp - 0x78]
mov rdx, r15
mov dword [rsp + 0x30], eax
call fcn.180039e90
mov r8d, dword [rsp + 0x30]
test r8d, r8d
jne 0x180041ee2
mov rcx, rsi
call qword [r14 + 0x50]
mov byte [r13 + 2], 0
test eax, eax
je 0x180043844
mov r12d, dword [rsp + 0x30]
jmp 0x1800400c5
mov r8, qword [rsp + 0x38]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r8 + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [r8 + 0xc]
imul rbx, rax, 0x38
add rbx, rsi
cmp byte [rdi + 2], 0
je 0x180043c56
mov rcx, rbx
call fcn.1800311e0
jmp 0x18004361a
test byte [r8 + 2], 1
xorps xmm0, xmm0
mov rax, qword [rdi + 0x38]
xorps xmm1, xmm1
mov rsi, qword [rax]
mov r14, qword [rsi]
movdqu xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x38], rbx
movdqu xmmword [rbp - 0x20], xmm1
movdqu xmmword [rbp - 0x10], xmm0
je 0x180043c9a
mov rcx, rbx
call fcn.1800311e0
mov r8, qword [rsp + 0x38]
mov eax, 0x4001
mov dword [rbx], 0
jmp 0x180043caa
movzx eax, word [rbx + 8]
mov ecx, 0x3e40
and ax, cx
or ax, 1
mov word [rbx + 8], ax
lea rdx, [rbp - 0x38]
mov r8d, dword [r8 + 8]
mov rcx, qword [rdi + 0x38]
call qword [r14 + 0x58]
mov rdx, rsi
mov rcx, r13
mov dword [rsp + 0x30], eax
call fcn.180039e90
cmp dword [rbp - 0x14], 0
jle 0x180043cf6
mov rcx, rbx
call sym.QoOBJSl.dll_hqlite3_value_text
mov r8, rax
lea rdx, [0x180138810]
mov rcx, r13
call fcn.180032660
mov r12d, dword [rbp - 0x14]
mov dword [rsp + 0x30], r12d
movzx edx, byte [rsp + 0x48]
mov rcx, rbx
call fcn.1800306b0
mov rcx, rbx
call fcn.1800314b0
test eax, eax
jne 0x1800446ba
jmp 0x180043836
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
cmp byte [rdi + 2], 0
jne 0x18003ebb4
mov rcx, qword [rdi + 0x38]
mov rbx, qword [rcx]
mov rsi, qword [rbx]
call qword [rsi + 0x48]
mov rdx, rbx
mov rcx, r13
mov dword [rsp + 0x30], eax
call fcn.180039e90
mov r8d, dword [rsp + 0x30]
test r8d, r8d
jne 0x180041ee2
mov rcx, qword [rdi + 0x38]
call qword [rsi + 0x50]
test eax, eax
jne 0x180043d92
mov r12d, dword [rsp + 0x30]
mov r8, qword [rsp + 0x40]
mov r9, qword [rsp + 0x50]
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea rax, [r9 + rcx*8]
mov qword [rsp + 0x38], rax
jmp 0x180043d9c
mov r12d, dword [rsp + 0x30]
mov r8, qword [rsp + 0x40]
mov eax, dword [r8 + 0x170]
mov rbx, qword [rsp + 0x58]
test eax, eax
jne 0x180044a5a
mov r14, qword [rbp + 0x10]
cmp r14, rbx
jb 0x1800441a4
nop dword [rax]
mov rdx, qword [r8 + 0x1e0]
test rdx, rdx
je 0x1800441a4
mov eax, dword [r8 + 0x1f0]
mov rcx, qword [r8 + 0x1e8]
add rbx, rax
mov qword [rsp + 0x58], rbx
call rdx
test eax, eax
jne 0x180044a53
mov r8, qword [rsp + 0x40]
cmp r14, rbx
jae 0x180043dc0
mov r15, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x60]
jmp 0x180043624
mov rcx, qword [rsp + 0x38]
mov edx, r10d
mov edi, dword [r8 + 0x30]
or qword [r8 + 0x30], 0x4000000
and edi, 0x4000000
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax + 0x10]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x60]
mov rcx, rbx
call fcn.1800306b0
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x180041ee2
mov rax, qword [rsi]
mov rcx, rsi
mov rdx, qword [rbx + 0x10]
call qword [rax + 0x98]
mov dword [rsp + 0x30], eax
test edi, edi
jne 0x180043e74
mov rax, qword [rsp + 0x40]
and qword [rax + 0x30], 0xfffffffffbffffff
mov rdx, rsi
mov rcx, r13
call fcn.180039e90
and dword [r13 + 0xc8], 0xfffffffc
jmp 0x180043836
cmp byte [r8 + 0x61], 0
jne 0x1800445b9
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x18004468c
mov r10, qword [rbx]
test r10, r10
je 0x18004468c
cmp qword [r10 + 0x68], 0
mov r15, qword [rsp + 0x38]
movsxd rdx, dword [r15 + 8]
je 0x180043629
movsxd rax, dword [r15 + 0xc]
mov r12, r15
movzx edi, byte [r8 + 0x66]
mov r8, qword [r13 + 0x70]
imul rcx, rax, 0x38
mov rax, r14
add rcx, rsi
test edx, edx
jle 0x180043f00
nop dword [rax + rax]
mov qword [r8 + rax*8], rcx
add rcx, 0x38
inc rax
cmp rax, rdx
jl 0x180043ef0
movzx eax, byte [r12 + 2]
lea r9, [rbp + 0x58]
mov rsi, qword [rsp + 0x40]
mov rcx, rbx
mov byte [rsi + 0x66], al
call qword [r10 + 0x68]
mov rdx, rbx
mov byte [rsi + 0x66], dil
mov rcx, r13
mov dword [rsp + 0x30], eax
call fcn.180039e90
mov r8d, dword [rsp + 0x30]
test r8d, r8d
jne 0x180043f4b
mov r15, qword [rsp + 0x38]
cmp dword [r15 + 4], r8d
je 0x180043f8f
mov rax, qword [rbp + 0x58]
mov qword [rsi + 0x38], rax
jmp 0x180043f8f
cmp r8b, 0x13
jne 0x180043f8a
mov r12, qword [rsp + 0x38]
mov rax, qword [r12 + 0x10]
cmp byte [rax + 0x1c], 0
je 0x180043f8a
movzx ecx, word [r12 + 2]
cmp ecx, 4
jne 0x180044697
mov r15, qword [rsp + 0x38]
mov r8, rsi
mov rsi, qword [rsp + 0x60]
mov r12d, r14d
mov dword [rsp + 0x30], r14d
jmp 0x180043624
mov r15, qword [rsp + 0x38]
inc dword [r13 + 0x3c]
test r8d, r8d
jne 0x180041ee7
mov r12d, dword [rsp + 0x30]
mov r8, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x60]
jmp 0x180043624
mov rdx, qword [rsp + 0x38]
mov rcx, r13
call fcn.18003e7e0
mov rbx, rax
mov rax, qword [rsp + 0x38]
movsxd rdx, dword [rax + 4]
mov rax, qword [rsp + 0x40]
shl rdx, 5
mov rcx, qword [rax + 0x20]
mov rcx, qword [rdx + rcx + 8]
call fcn.180022580
mov ecx, eax
mov qword [rbx], rcx
jmp 0x18004361a
mov rdx, qword [rsp + 0x38]
mov rcx, r13
call fcn.18003e7e0
mov r8, qword [rsp + 0x38]
mov rdi, rax
mov rax, qword [rsp + 0x40]
movsxd rdx, dword [r8 + 4]
mov rcx, qword [rax + 0x20]
mov eax, r14d
shl rdx, 5
cmp dword [r8 + 0xc], 0
mov rbx, qword [rdx + rcx + 8]
je 0x180044034
mov rcx, rbx
call fcn.180022580
mov rcx, qword [rsp + 0x38]
mov ecx, dword [rcx + 0xc]
cmp eax, ecx
cmovb eax, ecx
mov edx, eax
mov rcx, rbx
call fcn.180023aa0
mov eax, eax
mov qword [rdi], rax
jmp 0x18004361a
mov rax, qword [rsp + 0x38]
mov rbx, qword [rax + 0x10]
movsxd rax, dword [rax + 0xc]
imul rdi, rax, 0x38
add rdi, rsi
cmp qword [rbx], rdi
je 0x1800440b7
movzx eax, byte [rbx + 0x29]
mov edx, eax
mov qword [rbx + 0x18], r13
sub rdx, 1
mov qword [rbx], rdi
lea r9d, [rax - 1]
js 0x1800440b7
mov r12, qword [rsp + 0x38]
lea r8, [rbx + 0x30]
lea r8, [r8 + rdx*8]
nop word [rax + rax]
mov eax, dword [r12 + 8]
lea r8, [r8 - 8]
add eax, r9d
dec r9d
cdqe
imul rcx, rax, 0x38
add rcx, rsi
sub rdx, 1
mov qword [r8 + 8], rcx
jns 0x180044090
mov r12d, dword [rsp + 0x30]
mov eax, 0x3e40
lea r8, [rbx + 0x30]
and word [rdi + 8], ax
mov rcx, rbx
or word [rdi + 8], 1
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x29]
call qword [rax + 0x18]
mov eax, dword [rbx + 0x24]
test eax, eax
je 0x180044136
jle 0x180044103
mov rcx, rdi
call sym.QoOBJSl.dll_hqlite3_value_text
mov r8, rax
lea rdx, [0x180138810]
mov rcx, r13
call fcn.180032660
mov r12d, dword [rbx + 0x24]
mov dword [rsp + 0x30], r12d
mov rax, qword [rsp + 0x38]
lea rdx, [r13 + 0x120]
mov r8d, dword [rbx + 0x20]
mov rcx, qword [rsp + 0x40]
mov r9d, dword [rax + 4]
call fcn.1800378a0
mov r8d, dword [rsp + 0x30]
mov dword [rbx + 0x24], r14d
test r8d, r8d
jne 0x180041ee2
mov r12d, r8d
test byte [rdi + 8], 0x12
je 0x180044151
movzx edx, byte [rsp + 0x48]
mov rcx, rdi
call fcn.1800306b0
mov rcx, rdi
jmp 0x18004360d
mov r8, qword [rsp + 0x40]
mov r15, qword [rsp + 0x38]
mov r12d, dword [rsp + 0x30]
jmp 0x180043624
mov r8, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x60]
mov r12d, dword [rsp + 0x30]
jmp 0x180043624
mov r15, qword [rsp + 0x38]
mov r8, rsi
mov rsi, qword [rsp + 0x60]
mov r12d, dword [rsp + 0x30]
jmp 0x180043624
mov r8, qword [rsp + 0x40]
mov r12d, dword [rsp + 0x30]
jmp 0x180043624
mov r8, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x60]
mov r15, qword [rsp + 0x38]
mov r12d, dword [rsp + 0x30]
jmp 0x180043624
movzx eax, byte [r8 + 0x68]
test al, 0x41
je 0x18004429b
cmp byte [r13 + 0xc5], 0
jne 0x18004429b
mov rcx, qword [rsp + 0x38]
mov r9, qword [rcx + 0x10]
test r9, r9
jne 0x1800441f1
mov r9, qword [r13 + 0xf0]
test r9, r9
je 0x180044296
test al, 0x40
je 0x180044222
mov rdx, r9
mov rcx, r13
call fcn.18003dd10
mov rbx, rax
mov rdx, rax
mov rax, qword [rsp + 0x40]
mov rcx, qword [rax + 0xf0]
call qword [rax + 0xe8]
mov rcx, rbx
call sym.QoOBJSl.dll_hqlite3_free
jmp 0x180044286
cmp dword [r8 + 0xd4], 1
jle 0x18004426e
mov rdi, qword [rsp + 0x40]
lea rdx, str.____s
mov rcx, rdi
mov r8, r9
call fcn.180008da0
mov rdx, qword [rdi + 0xf0]
mov r9, rax
mov r8, r13
mov ecx, 1
mov rbx, rax
call qword [rdi + 0xe8]
mov rdx, rbx
mov rcx, rdi
call fcn.180005c80
mov r8, rdi
jmp 0x18004428b
mov rax, qword [rsp + 0x40]
mov r8, r13
mov ecx, r10d
mov rdx, qword [rax + 0xf0]
call qword [rax + 0xe8]
mov r8, qword [rsp + 0x40]
mov edx, 0x2400
mov r10d, 1
mov r9, qword [rsp + 0x50]
mov rax, qword [rsp + 0x38]
mov r15, qword [rsp + 0x38]
mov eax, dword [rax + 4]
cmp eax, dword [0x18015a214]
jl 0x1800442f4
cmp byte [r15], 0xab
je case.0x18003e963.85
cmp dword [r13 + 0x90], 1
mov edx, r10d
jle 0x1800442f1
mov eax, 0x18
nop dword [rax]
mov rcx, qword [r13 + 0x88]
cmp byte [rax + rcx], 0x11
jne 0x1800442e2
mov dword [rax + rcx + 4], r14d
inc edx
add rax, 0x18
cmp edx, dword [r13 + 0x90]
jl 0x1800442d0
mov eax, r14d
inc eax
mov dword [r15 + 4], eax
inc dword [r13 + 0xec]
jmp 0x1800400d5
mov r12, qword [rsp + 0x38]
mov dword [r13 + 0x38], ecx
movzx eax, byte [r12 + 8]
mov byte [r13 + 0xc2], al
mov dword [r13 + 0x34], ebx
test ecx, ecx
je 0x1800443ad
movzx eax, word [r12 + 2]
mov rcx, r13
test ax, ax
je 0x180044375
mov r8, qword [rdi + rax*8 + 0x133e60]
lea rdx, str._s_constraint_failed
call fcn.180032660
mov r9, qword [r12 + 0x10]
test r9, r9
je 0x180044386
mov r8, qword [r13 + 0xa8]
lea rdx, str._z:__s
mov rcx, qword [rsp + 0x40]
call fcn.180008da0
mov qword [r13 + 0xa8], rax
jmp 0x180044386
mov r8, qword [r12 + 0x10]
lea rdx, [0x180138810]
call fcn.180032660
mov rax, qword [r13 + 0xa8]
lea rdx, str.abort_at__d_in___s_:__s
mov r9, qword [r13 + 0xf0]
mov r8d, ebx
mov ecx, dword [r12 + 4]
mov qword [rsp + 0x20], rax
call sym.QoOBJSl.dll_hqlite3_log
mov rcx, r13
call fcn.1800370e0
mov r8, qword [rsp + 0x40]
mov edi, eax
mov rbx, qword [rsp + 0x58]
cmp eax, 5
jne 0x1800443cf
mov dword [r13 + 0x38], eax
jmp 0x180044a22
cmp dword [r13 + 0x38], 0
mov edi, 0x65
mov ecx, 1
cmovne edi, ecx
jmp 0x180044a22
mov r8d, 0x14
jmp 0x180041edd
mov r12d, 0xb
lea rax, [0x180140714]
mov ecx, r12d
mov qword [rsp + 0x20], rax
mov r9d, 0x15975
mov dword [rsp + 0x30], r12d
lea r8, str.database_corruption
lea rdx, str._s_at_line__d_of___.10s_
call sym.QoOBJSl.dll_hqlite3_log
mov r8d, r12d
jmp 0x180041ee2
lea rdx, str.cannot_open_savepoint___SQL_statements_in_progress
mov rcx, r13
call fcn.180032660
mov r8d, 5
jmp 0x180041edd
lea rdx, str.cannot_release_savepoint___SQL_statements_in_progress
mov rcx, r13
call fcn.180032660
mov r8d, 5
jmp 0x180041edd
mov rsi, qword [rsp + 0x40]
mov rdi, r13
mov byte [rsi + 0x5f], 0
jmp 0x180041eec
mov r8, qword [rsp + 0x40]
mov rax, r12
sub rax, qword [rsp + 0x50]
movabs rcx, 0xaaaaaaaaaaaaaaab
sar rax, 3
mov edi, 5
imul rax, rcx
mov r13, rbx
mov dword [rbx + 0x34], eax
mov byte [r8 + 0x5f], 0
mov dword [rbx + 0x38], edi
mov rbx, qword [rsp + 0x58]
jmp 0x180044a22
mov eax, 8
mov r8d, eax
mov dword [rsp + 0x30], eax
jmp 0x180041ee2
mov rbx, qword [rsp + 0x58]
cmp r8b, 5
jne 0x180044a65
mov edi, dword [rsp + 0x30]
mov rax, r12
sub rax, qword [rsp + 0x50]
movabs rcx, 0xaaaaaaaaaaaaaaab
sar rax, 3
imul rax, rcx
mov dword [r13 + 0x38], r8d
mov dword [r13 + 0x34], eax
jmp 0x180044a1d
mov rdx, qword [r13 + 0xa8]
test rdx, rdx
je 0x18004450c
mov rcx, r9
call fcn.180005ba0
mov rcx, qword [rsp + 0x40]
lea rdx, str.database_schema_has_changed
call fcn.180006280
mov r8, qword [rsp + 0x40]
mov qword [r13 + 0xa8], rax
movsxd rdx, dword [r12 + 4]
mov rcx, rdx
mov rax, qword [r8 + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov eax, dword [rbp - 0x70]
cmp dword [rcx], eax
je 0x18004454d
mov rcx, r8
call fcn.180063f30
and dword [r13 + 0xc8], 0xfffffffd
mov r8d, 0x11
or dword [r13 + 0xc8], 1
jmp 0x180041edd
mov r8d, 0x204
jmp 0x180041edd
mov r8d, 0x30b
jmp 0x180041edd
mov ecx, 0x16610
call fcn.1800c8fa0
mov r8d, eax
mov dword [rsp + 0x30], eax
jmp 0x180041ee2
mov rsi, qword [rsp + 0x40]
mov r8d, 6
mov dword [rsp + 0x30], r8d
mov byte [r13 + 0xc2], 2
jmp 0x180041eec
call fcn.180063fb0
mov r8, r12
mov rbx, qword [rsp + 0x58]
mov rcx, r8
call fcn.1800064c0
lea rdx, str.out_of_memory
mov rcx, r13
call fcn.180032660
mov r8d, 7
jmp 0x180044a60
lea rdx, str.too_many_levels_of_trigger_recursion
mov dword [rsp + 0x30], r10d
mov rcx, r13
call fcn.180032660
mov r8d, dword [rsp + 0x30]
jmp 0x180041ee2
call sym.QoOBJSl.dll_hqlite3_value_text
mov r8, rax
lea rdx, [0x180138810]
mov rcx, r13
call fcn.180032660
mov r8d, dword [rsp + 0x30]
jmp 0x180041ee2
cmp ebx, 5
lea rax, str.into
lea r8, str.out_of
mov edi, 1
cmove r8, rax
mov dword [rsp + 0x30], edi
lea rdx, str.cannot_change__s_wal_mode_from_within_a_transaction
mov rcx, r13
call fcn.180032660
mov rsi, qword [rsp + 0x40]
mov r8d, edi
jmp 0x180041eec
cmp al, 6
jne 0x180041ee7
mov r8, qword [r12 + 0x10]
lea rdx, str.database_table_is_locked:__s
mov rcx, r13
call fcn.180032660
mov r8d, dword [rsp + 0x30]
jmp 0x180041ee7
call qword [rdi + 0x38]
mov r8, qword [rsp + 0x40]
jmp 0x1800445b9
mov r8d, 6
jmp 0x180041edd
movzx eax, cl
cmp ecx, 5
mov ecx, 2
cmove eax, ecx
mov byte [r13 + 0xc2], al
jmp 0x180041ee7
mov r13, rdi
jmp 0x1800446ba
mov r13, qword [rbp - 0x78]
mov rsi, qword [rsp + 0x40]
lea rdx, str.string_or_blob_too_big
mov rcx, r13
call fcn.180032660
mov r8d, 0x12
mov dword [rsp + 0x30], r8d
jmp 0x180041ee7
xor edx, edx
mov rcx, r13
call fcn.180037090
mov dword [rsp + 0x30], eax
mov r8d, eax
test eax, eax
jne 0x180041ee2
mov rax, qword [r13]
cmp dword [rax + 0x2c4], r8d
je 0x180044716
cmp dword [r13 + 0x40], r8d
je 0x180044716
lea edx, [r8 + 1]
mov rcx, r13
call fcn.180036e10
mov eax, dword [r13 + 0x30]
mov r12, qword [rsp + 0x38]
add eax, 2
or eax, 1
mov dword [r13 + 0x30], eax
movsxd rax, dword [r12 + 4]
imul rdi, rax, 0x38
add rdi, rsi
mov qword [r13 + 0xa0], rdi
cmp dword [r12 + 8], 0
jle 0x180044794
lea rbx, [rdi + 8]
mov esi, 0x202
nop dword [rax]
mov eax, 0x1000
test word [rbx], ax
je 0x180044771
movsxd rax, r14d
imul rcx, rax, 0x38
add rcx, rdi
call fcn.1800308e0
test eax, eax
jne 0x180044682
movzx eax, word [rbx]
and ax, si
cmp ax, 2
jne 0x180044786
lea rcx, [rbx - 8]
call fcn.180030880
inc r14d
add rbx, 0x38
cmp r14d, dword [r12 + 8]
jl 0x180044750
mov r8, qword [rsp + 0x40]
cmp byte [r8 + 0x61], 0
jne 0x1800445b9
test byte [r8 + 0x68], 4
je 0x1800447cc
mov rax, qword [rsp + 0x40]
xor r9d, r9d
mov r8, r13
mov rdx, qword [rax + 0xf0]
lea ecx, [r9 + 4]
call qword [rax + 0xe8]
mov r8, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x58]
mov rax, r12
sub rax, qword [rsp + 0x50]
movabs rcx, 0xaaaaaaaaaaaaaaab
sar rax, 3
mov edi, 0x64
imul rax, rcx
inc eax
mov dword [r13 + 0x34], eax
jmp 0x180044a22
mov r12, qword [rsp + 0x38]
movzx eax, byte [r8 + 0x5f]
mov ebx, dword [r12 + 4]
mov ecx, dword [r12 + 8]
cmp ebx, eax
je 0x1800448de
test ecx, ecx
je 0x18004482c
mov edx, 0x204
mov rcx, r8
call fcn.1800c5e90
mov al, 1
jmp 0x18004486c
test ebx, ebx
je 0x180044854
cmp dword [r8 + 0xd0], 0
jle 0x180044854
lea rdx, str.cannot_commit_transaction___SQL_statements_in_progress
mov rcx, r13
call fcn.180032660
mov r8d, 5
jmp 0x180041edd
mov edx, r10d
mov rcx, r13
call fcn.180037090
mov edi, eax
test eax, eax
jne 0x180044a18
movzx eax, bl
mov rdi, qword [rsp + 0x40]
mov rcx, r13
mov byte [rdi + 0x5f], al
call fcn.1800370e0
cmp eax, 5
jne 0x1800448bf
mov rax, r12
movabs rcx, 0xaaaaaaaaaaaaaaab
sub rax, qword [rsp + 0x50]
mov r8, rdi
sar rax, 3
imul rax, rcx
mov dword [r13 + 0x34], eax
mov eax, 1
sub al, bl
mov rbx, qword [rsp + 0x58]
mov byte [rdi + 0x5f], al
mov edi, 5
mov dword [r13 + 0x38], edi
jmp 0x180044a22
mov rcx, rdi
call fcn.1800c5070
cmp dword [r13 + 0x38], 0
mov edi, 0x65
mov ecx, 1
cmovne edi, ecx
jmp 0x180044a18
test ebx, ebx
jne 0x1800448eb
lea rdx, str.cannot_start_a_transaction_within_a_transaction
jmp 0x1800448ff
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 rcx, r13
call fcn.180032660
mov rsi, qword [rsp + 0x40]
mov edi, 1
mov r8d, edi
mov dword [rsp + 0x30], edi
jmp 0x180041eec
mov r8, qword [rsp + 0x40]
mov r13, qword [rbp - 0x78]
jmp 0x1800445b9
mov r8, qword [rsp + 0x40]
jmp 0x1800445be
mov rsi, qword [rsp + 0x40]
mov rdi, r10
jmp 0x180041eec
cmp r8d, 0x210a
jne 0x18004495c
mov ecx, 0x16e39
call fcn.1800c8fa0
mov r8d, eax
mov dword [rsp + 0x30], eax
mov r13, qword [rbp - 0x78]
cmp qword [r13 + 0xa8], 0
jne 0x18004498d
cmp r8d, 0xc0a
je 0x18004498d
mov ecx, r8d
call fcn.1800c5ff0
mov r8, rax
lea rdx, [0x180138810]
mov rcx, r13
call fcn.180032660
mov r12d, dword [rsp + 0x30]
mov edx, r12d
mov rcx, qword [rsp + 0x40]
mov dword [r13 + 0x38], r12d
call fcn.18000a030
mov r8, qword [rsp + 0x38]
lea rdx, str.statement_aborts_at__d:___s___s
sub r8, qword [rsp + 0x50]
movabs rax, 0xaaaaaaaaaaaaaaab
mov r9, qword [r13 + 0xf0]
mov ecx, r12d
sar r8, 3
imul r8, rax
mov rax, qword [r13 + 0xa8]
mov qword [rsp + 0x20], rax
call sym.QoOBJSl.dll_hqlite3_log
mov rcx, r13
call fcn.1800370e0
cmp r12d, 0xc0a
mov r12, qword [rsp + 0x40]
jne 0x1800449ff
mov rcx, r12
call fcn.1800064c0
movzx eax, byte [rsp + 0x79]
test al, al
je 0x180044a1d
lea edx, [rax - 1]
mov rcx, r12
call fcn.180063f30
jmp 0x180044a1d
mov r13, rbx
mov rbx, qword [rsp + 0x58]
mov r8, qword [rsp + 0x40]
mov r14, qword [rbp + 0x10]
cmp r14, rbx
jb 0x180044a74
mov rdx, qword [r8 + 0x1e0]
test rdx, rdx
je 0x180044a74
mov eax, dword [r8 + 0x1f0]
mov rcx, qword [r8 + 0x1e8]
add rbx, rax
call rdx
mov r8, qword [rsp + 0x40]
test eax, eax
je 0x180044a26
mov rbx, 0xffffffffffffffff
mov r8d, 9
mov dword [rsp + 0x30], r8d
mov rsi, qword [rsp + 0x40]
mov edi, 1
jmp 0x180041ef1
add dword [r13 + 0xe4], r14d
mov rcx, r13
call fcn.1800348e0
movaps xmm7, xmmword [rsp + 0x260]
mov eax, edi
movaps xmm6, xmmword [rsp + 0x270]
mov r15, qword [rsp + 0x2b8]
mov rcx, qword [rbp + 0x150]
xor rcx, rsp
call fcn.18012ba20
lea r11, [rsp + 0x280]
mov rbx, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r14
pop r13
pop r12
pop rdi
pop rbp
ret