Function at 0x180059150
Capabilities:
Encrypt data using speck
Reference sql statements

Disassembly:
mov r11, rsp
push rbp
push r12
push r13
lea rbp, [r11 - 0x1d8]
sub rsp, 0x2c0
mov rax, qword [0x180182008]
xor rax, rsp
mov qword [rbp + 0x180], rax
mov r13, rcx
mov qword [r11 + 0x18], rsi
mov qword [r11 + 0x20], rdi
xor al, al
mov qword [r11 - 0x28], r15
mov r15, qword [rcx + 0x88]
mov r12, qword [r13]
mov r11, qword [r13 + 0x68]
mov qword [rbp - 0x80], rcx
xor ecx, ecx
mov r8d, ecx
mov qword [rsp + 0x68], r15
mov r10d, ecx
movzx r9d, byte [r12 + 0x64]
mov esi, ecx
mov byte [rsp + 0x40], r9b
mov qword [rsp + 0x48], r15
mov dword [rsp + 0x44], ecx
mov qword [rsp + 0x60], r12
mov byte [rbp - 0x64], al
mov dword [rsp + 0x50], ecx
mov qword [rsp + 0x58], r11
cmp dword [r13 + 0xd0], ecx
je 0x1800591f3
mov rcx, r13
call fcn.1800512e0
mov r8d, dword [rsp + 0x44]
mov r10d, esi
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
cmp qword [r12 + 0x210], rsi
je 0x180059216
mov ecx, dword [r12 + 0x220]
xor edx, edx
mov eax, dword [r13 + 0xe4]
div ecx
sub ecx, edx
mov edi, ecx
jmp 0x18005921d
mov rdi, 0xffffffffffffffff
cmp dword [r13 + 0x34], 7
mov qword [rsp + 0x2e8], rbx
mov qword [rsp + 0x2b8], r14
movaps xmmword [rsp + 0x2a0], xmm6
movaps xmmword [rsp + 0x290], xmm7
mov qword [rsp + 0x70], rdi
je 0x18005b697
xor edx, edx
mov dword [r13 + 0x34], edx
mov qword [r13 + 0x48], rdx
mov eax, dword [r12 + 0x198]
mov dword [r12 + 0x298], edx
test eax, eax
jne 0x18005f7f3
movsxd rax, dword [r13 + 0x30]
xorps xmm7, xmm7
lea rcx, [rax + rax*2]
lea r14, [r15 + rcx*8]
lea rcx, [0x180000000]
movzx ebx, byte [r14]
inc rsi
mov qword [rsp + 0x48], r14
mov edi, 8
mov qword [rsp + 0x78], rsi
cmp ebx, 0xb5
ja case.default.0x1800592bb
movsxd rax, ebx
mov ecx, dword [rcx + rax*4 + 0x5fbf0]
lea rax, [0x180000000]
add rcx, rax
jmp rcx
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
sub rcx, r15
imul r8, rax, 0x38
mov eax, 4
mov word [r8 + r11 + 0x14], ax
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rax, rdx
cdqe
mov qword [r8 + r11], rax
jmp 0x18005ed28
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
test byte [rax + r11 + 0x14], 4
je 0x1800597f5
mov rax, qword [rax + r11]
lea rcx, [rax + rax*2]
lea r14, [r15 + rcx*8]
jmp case.0x1800592bb.89
mov rax, qword [rsp + 0x48]
mov r14, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 0xc]
dec eax
cdqe
mov qword [rcx + r11], rax
mov eax, 4
mov word [rcx + r11 + 0x14], ax
cmp dword [r14 + 8], 0
jne 0x18005eb76
jmp case.0x1800592bb.89
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rdx, rax, 0x38
mov rax, qword [rdx + r11]
lea rcx, [rax + rax*2]
mov eax, dword [r15 + rcx*8 + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
xor eax, eax
mov word [rdx + r11 + 0x14], ax
lea r14, [r15 + rcx*8]
jmp 0x18005aae1
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 4]
sub rbx, r15
imul r8, rax, 0x38
mov eax, 4
movsxd rcx, dword [r8 + r11]
mov word [r8 + r11 + 0x14], ax
movabs rax, 0x2aaaaaaaaaaaaaab
imul rbx
lea rcx, [rcx + rcx*2]
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rax, rdx
cdqe
mov qword [r8 + r11], rax
lea r8, [r15 + rcx*8]
mov qword [rsp + 0x48], r8
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
jmp 0x18005aae1
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
je 0x1800597f5
mov rcx, qword [r13 + 0x108]
mov r8, qword [rsp + 0x48]
test rcx, rcx
je 0x18005f3aa
cmp dword [r8 + 4], 0
jne 0x18005f3aa
mov rax, qword [rcx + 8]
dec dword [r13 + 0x118]
mov qword [r13 + 0x108], rax
mov rax, qword [r13 + 0x38]
add qword [r12 + 0x80], rax
mov qword [r12 + 0x78], rax
call fcn.180052370
mov r14, qword [rsp + 0x48]
mov r15, qword [r13 + 0x88]
mov qword [rsp + 0x68], r15
cmp dword [r14 + 8], 4
jne 0x18005947a
cdqe
lea rcx, [rax + rax*2]
mov eax, dword [r15 + rcx*8 + 8]
dec eax
mov r11, qword [r13 + 0x68]
cdqe
mov qword [rsp + 0x58], r11
lea rcx, [rax + rax*2]
lea r8, [r15 + rcx*8]
mov qword [rsp + 0x48], r8
mov r14, r8
mov r8d, dword [rsp + 0x44]
jmp 0x18005aad6
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, qword [r13 + 0x68]
test word [rcx + 0x14], ax
je 0x1800594c7
call fcn.180059060
mov rcx, rax
xor edx, edx
jmp 0x1800594d0
mov eax, 4
mov word [rcx + 0x14], ax
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
mov qword [rcx], rax
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp case.0x1800592bb.89
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [r13 + 0x68]
test word [rdx + 0x14], ax
je 0x180059524
mov rcx, rdx
call fcn.180059060
mov rdx, rax
jmp 0x18005952d
mov eax, 4
mov word [rdx + 0x14], ax
mov rax, qword [rsp + 0x48]
mov r14, qword [rsp + 0x48]
mov rax, qword [rax + 0x10]
mov rcx, qword [rax]
mov qword [rdx], rcx
jmp 0x18005aacc
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [r13 + 0x68]
test word [rdx + 0x14], ax
je 0x18005956d
mov rcx, rdx
call fcn.180059060
mov rdx, rax
mov word [rdx + 0x14], di
jmp 0x18005952d
mov r8, qword [rsp + 0x48]
movsxd rax, dword [r8 + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, qword [r13 + 0x68]
test word [rbx + 0x14], ax
je 0x1800595a1
mov rcx, rbx
call fcn.180059060
mov r8, qword [rsp + 0x48]
mov rbx, rax
jmp 0x1800595aa
mov eax, 4
mov word [rbx + 0x14], ax
mov rdx, qword [r8 + 0x10]
test rdx, rdx
jne 0x1800595bb
xor r14d, r14d
mov eax, r14d
jmp 0x1800595d3
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rdx + rax], 0
jne 0x1800595c2
and eax, 0x3fffffff
xor r14d, r14d
movzx edi, byte [rsp + 0x40]
mov dword [r8 + 4], eax
cmp dil, 1
je 0x180059677
mov r9b, 1
mov qword [rsp + 0x20], r14
mov r8, 0xffffffffffffffff
mov rcx, rbx
call fcn.18004ed30
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x18005f6a3
test byte [rbx + 0x14], 2
jne 0x180059615
mov byte [rbx + 0x16], dil
jmp 0x18005962f
cmp byte [rbx + 0x16], dil
je 0x18005962f
movzx edx, dil
mov rcx, rbx
call fcn.18002beb0
test eax, eax
jne 0x18005f7d2
mov r8, qword [rsp + 0x48]
mov eax, 0x2000
or word [rbx + 0x14], ax
mov r12, qword [rsp + 0x60]
mov dword [rbx + 0x20], r14d
cmp byte [r8 + 1], 0xfa
jne 0x180059663
mov rdx, qword [r8 + 0x10]
test rdx, rdx
je 0x180059663
mov rcx, r12
call fcn.180028930
mov r8, qword [rsp + 0x48]
mov byte [r8 + 1], 0xfa
mov rax, qword [rbx + 8]
mov qword [r8 + 0x10], rax
mov eax, dword [rbx + 0x10]
mov dword [r8 + 4], eax
cmp eax, dword [r12 + 0x88]
jg 0x18005f6a3
mov byte [r8], 0x49
jmp 0x180059695
mov r8, qword [rsp + 0x48]
movzx edi, byte [rsp + 0x40]
movsxd rax, dword [r8 + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [r13 + 0x68]
test word [rdx + 0x14], ax
je 0x1800596bc
mov rcx, rdx
call fcn.180059060
mov r8, qword [rsp + 0x48]
mov rdx, rax
mov r11, qword [rsp + 0x58]
mov eax, 0x2202
mov r14, qword [rsp + 0x48]
mov word [rdx + 0x14], ax
mov rax, qword [r8 + 0x10]
mov qword [rdx + 8], rax
mov eax, dword [r8 + 4]
mov dword [rdx + 0x10], eax
mov byte [rdx + 0x16], dil
movsxd rax, dword [r8 + 0xc]
test eax, eax
jle 0x18005f131
mov r10d, dword [rsp + 0x50]
imul rcx, rax, 0x38
movzx eax, word [r8 + 2]
mov r8d, dword [rsp + 0x44]
cmp qword [rcx + r11], rax
jne 0x18005f115
movzx r9d, byte [rsp + 0x40]
mov eax, 0x2210
mov word [rdx + 0x14], ax
jmp 0x18005aae1
mov rbx, qword [rsp + 0x48]
mov r9d, 0x9000
movsxd rax, dword [rbx + 8]
imul rcx, rax, 0x38
add rcx, qword [r13 + 0x68]
test word [rcx + 0x14], r9w
je 0x18005974f
call fcn.180059060
mov rcx, rax
xor edx, edx
mov r9d, 0x9000
jmp 0x180059758
mov eax, 4
mov word [rcx + 0x14], ax
cmp dword [rbx + 4], 0
mov esi, 1
mov edi, dword [rbx + 0xc]
mov r8d, 0x101
mov eax, dword [rbx + 8]
cmovne si, r8w
sub edi, eax
mov word [rcx + 0x14], si
mov dword [rcx + 0x10], edx
lea rbx, [rcx + 0x14]
test edi, edi
jle 0x18005f0c6
nop word [rax + rax]
test word [rbx + 0x38], r9w
lea rbx, [rbx + 0x38]
je 0x1800597ac
lea rcx, [rbx - 0x14]
call fcn.18004e360
xor edx, edx
mov r9d, 0x9000
dec edi
mov word [rbx], si
mov dword [rbx - 4], edx
test edi, edi
jg 0x180059790
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp case.0x1800592bb.89
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov eax, 0xffc1
add rcx, r11
and word [rcx + 0x14], ax
or word [rcx + 0x14], 1
mov r14, qword [rsp + 0x48]
jmp case.0x1800592bb.89
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, qword [r13 + 0x68]
test word [rbx + 0x14], ax
je 0x180059828
mov rcx, rbx
call fcn.180059060
mov rbx, rax
jmp 0x180059831
mov eax, 4
mov word [rbx + 0x14], ax
mov rax, qword [rsp + 0x48]
mov rcx, rbx
mov rdx, qword [rax + 0x10]
movsxd rax, dword [rax + 4]
test rdx, rdx
jne 0x18005985f
mov edx, eax
call fcn.18004e980
mov rcx, rbx
call fcn.18004df80
test eax, eax
jne 0x18005b692
jmp 0x180059871
mov r8, rax
xor r9d, r9d
xor eax, eax
mov qword [rsp + 0x20], rax
call fcn.18004ed30
movzx r9d, byte [rsp + 0x40]
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov byte [rbx + 0x16], r9b
jmp 0x18005aadc
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 4]
imul rdi, rax, 0x38
add rdi, qword [r13 + 0x80]
lea rcx, [rdi - 0x38]
call fcn.18004ebb0
test eax, eax
jne 0x18005f6a3
movsxd rax, dword [rbx + 8]
mov r11, qword [rsp + 0x58]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, r11
test word [rbx + 0x14], ax
je 0x1800598dc
mov rcx, rbx
call fcn.18004e360
mov r11, qword [rsp + 0x58]
movups xmm0, xmmword [rdi - 0x38]
mov r14, qword [rsp + 0x48]
mov ecx, 0xafff
mov r8d, dword [rsp + 0x44]
movups xmmword [rbx], xmm0
movsd xmm1, qword [rdi - 0x28]
movsd qword [rbx + 0x10], xmm1
movzx eax, word [rbx + 0x14]
and ax, cx
mov ecx, 0x2040
or ax, cx
mov word [rbx + 0x14], ax
jmp 0x18005aad6
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
mov esi, dword [rcx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rdi, r11
add rbx, r11
mov eax, 0x9000
test word [rbx + 0x14], ax
jne 0x180059943
cmp dword [rbx + 0x20], 0
je 0x18005994d
mov rcx, rbx
call fcn.18004e3a0
xor edx, edx
movups xmm0, xmmword [rdi]
mov eax, 1
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 + 0x14], ax
mov eax, 0x4000
mov dword [rdi + 0x20], edx
test word [rbx + 0x14], ax
je 0x180059996
mov rcx, rbx
call fcn.18004df20
test eax, eax
jne 0x18005b68d
xor edx, edx
add rdi, 0x38
add rbx, 0x38
sub esi, 1
jne 0x180059932
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp case.0x1800592bb.89
mov rcx, qword [rsp + 0x48]
mov r15d, 0x4000
mov r14, rcx
movsxd rax, dword [rcx + 4]
mov esi, dword [rcx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rdi, r11
add rbx, r11
nop dword [rax]
mov r8d, r15d
mov rdx, rdi
mov rcx, rbx
call fcn.18004ec20
test word [rbx + 0x14], r15w
je 0x180059a15
mov rcx, rbx
call fcn.18004df20
test eax, eax
jne 0x18005b68d
movzx eax, word [rbx + 0x14]
bt ax, 0xb
jae 0x180059a33
test byte [r14 + 2], 2
je 0x180059a33
mov ecx, 0xf7ff
and ax, cx
mov word [rbx + 0x14], ax
mov eax, esi
dec esi
test eax, eax
je 0x18005f127
add rbx, 0x38
add rdi, 0x38
jmp 0x1800599f0
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rdx, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
add rdx, r11
add rcx, r11
mov r8d, 0x4000
call fcn.18004ec20
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 8]
imul r8, rax, 0x38
movsxd rax, dword [rcx + 4]
imul rcx, rax, 0x38
add r8, r11
mov rax, qword [rcx + r11]
mov ecx, 0x9000
test word [r8 + 0x14], cx
je 0x180059ac5
mov rdx, rax
mov rcx, r8
call fcn.18004e9d0
mov r11, qword [rsp + 0x58]
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
jmp 0x18005aad6
mov qword [r8], rax
mov eax, 4
mov word [r8 + 0x14], ax
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
jmp case.0x1800592bb.89
xor edx, edx
mov rcx, r13
call fcn.180052f40
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005bc0d
jmp 0x18005aad1
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 4]
imul r13, rax, 0x38
movsxd rax, dword [rbx + 8]
imul rdi, rax, 0x38
movsxd rax, dword [rbx + 0xc]
add r13, r11
imul rbx, rax, 0x38
movzx r15d, word [r13 + 0x14]
add rdi, r11
movzx eax, r15b
add rbx, r11
or al, byte [rdi + 0x14]
test al, 1
je 0x180059b7f
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x180059b67
mov rcx, rbx
call fcn.18004e360
mov r8d, dword [rsp + 0x44]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r14, qword [rsp + 0x48]
mov r15, qword [rsp + 0x68]
jmp 0x18005aadc
mov eax, 1
mov word [rbx + 0x14], ax
mov r14, qword [rsp + 0x48]
mov r15, qword [rsp + 0x68]
jmp case.0x1800592bb.89
test r15b, 0x12
jne 0x180059bb2
xor r8d, r8d
movzx edx, r9b
mov rcx, r13
call fcn.18004dfe0
test eax, eax
jne 0x18005fa0b
movzx r15d, word [r13 + 0x14]
mov r14d, 0xfffd
and r15w, r14w
mov eax, 0x400
jmp 0x180059bcd
mov eax, 0x400
test ax, r15w
je 0x180059bc7
mov rcx, r13
call fcn.18004df80
jmp 0x180059b94
mov r14d, 0xfffd
movzx esi, word [rdi + 0x14]
test sil, 0x12
jne 0x180059be9
movzx edx, byte [rsp + 0x40]
xor r8d, r8d
mov rcx, rdi
call fcn.18004dfe0
jmp 0x180059bf6
test ax, si
je 0x180059c06
mov rcx, rdi
call fcn.18004df80
test eax, eax
jne 0x18005b689
movzx esi, word [rdi + 0x14]
and si, r14w
mov edx, dword [rdi + 0x10]
add edx, dword [r13 + 0x10]
movsxd rax, dword [r12 + 0x88]
movsxd r14, edx
cmp r14, rax
jg 0x18005f69a
xor eax, eax
mov rcx, rbx
mov r8d, eax
cmp rbx, rdi
sete r8b
add edx, 2
call fcn.18004dcd0
test eax, eax
jne 0x18005b689
mov eax, 0xf242
and word [rbx + 0x14], ax
or word [rbx + 0x14], 2
cmp rbx, rdi
je 0x180059c68
movsxd r8, dword [rdi + 0x10]
mov rdx, qword [rdi + 8]
mov rcx, qword [rbx + 8]
call fcn.180133760
mov word [rdi + 0x14], si
movsxd rcx, dword [rdi + 0x10]
add rcx, qword [rbx + 8]
movsxd r8, dword [r13 + 0x10]
mov rdx, qword [r13 + 8]
call fcn.180133760
movzx r9d, byte [rsp + 0x40]
mov word [r13 + 0x14], r15w
cmp r9b, 1
jbe 0x180059c92
and r14, 0xfffffffffffffffe
mov rax, qword [rbx + 8]
mov r8d, dword [rsp + 0x44]
mov r11, qword [rsp + 0x58]
mov r15, qword [rsp + 0x68]
mov byte [r14 + rax], 0
mov rax, qword [rbx + 8]
mov byte [rax + r14 + 1], 0
mov eax, 0x200
or word [rbx + 0x14], ax
mov dword [rbx + 0x10], r14d
mov r14, qword [rsp + 0x48]
mov byte [rbx + 0x16], r9b
jmp 0x18005aadc
mov r8, qword [rsp + 0x48]
movsxd rax, dword [r8 + 4]
imul rsi, rax, 0x38
movsxd rax, dword [r8 + 8]
imul rdi, rax, 0x38
movsxd rax, dword [r8 + 0xc]
add rsi, r11
imul r14, rax, 0x38
movzx ebx, word [rsi + 0x14]
add rdi, r11
add r14, r11
movzx edx, word [rdi + 0x14]
movzx eax, dl
and al, bl
test al, 4
jne 0x180059d44
movzx eax, dl
or al, bl
test al, 1
jne 0x180059f0b
and bx, 0x2d
jne 0x180059d28
mov rcx, rsi
call fcn.180058fb0
movzx edx, word [rdi + 0x14]
movzx ebx, ax
and dx, 0x2d
jne 0x180059d39
mov rcx, rdi
call fcn.180058fb0
movzx edx, ax
and dl, bl
test dl, 4
je 0x180059e56
mov rax, qword [rsp + 0x48]
mov rdx, qword [rdi]
mov r8, qword [rsi]
mov qword [rbp - 8], rdx
movzx ecx, byte [rax]
sub ecx, 0x6a
je 0x180059de6
sub ecx, 1
je 0x180059dd4
sub ecx, 1
je 0x180059dbe
cmp ecx, 1
je 0x180059d92
test r8, r8
je 0x180059f0b
cmp r8, 0xffffffffffffffff
mov eax, 1
cmove r8, rax
mov rax, rdx
cqo
idiv r8
mov qword [rbp - 8], rdx
jmp 0x180059e0a
test r8, r8
je 0x180059f0b
cmp r8, 0xffffffffffffffff
jne 0x180059db4
movabs rax, 0x8000000000000000
cmp rdx, rax
je 0x180059e56
mov rax, rdx
cqo
idiv r8
jmp 0x180059e06
mov rdx, r8
lea rcx, [rbp - 8]
call fcn.18002d9c0
test eax, eax
jne 0x180059e56
jmp 0x180059e0a
mov rdx, r8
lea rcx, [rbp - 8]
call fcn.18002d950
test eax, eax
jne 0x180059e56
jmp 0x180059e0a
test r8, r8
js 0x180059e3b
test rdx, rdx
jle 0x180059e02
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, r8
jl 0x180059e56
lea rax, [r8 + rdx]
mov qword [rbp - 8], rax
mov rax, qword [rbp - 8]
mov ecx, 0xf244
mov r11, qword [rsp + 0x58]
mov r8d, dword [rsp + 0x44]
mov qword [r14], rax
movzx eax, word [r14 + 0x14]
and ax, cx
or ax, 4
mov word [r14 + 0x14], ax
mov r14, qword [rsp + 0x48]
jmp 0x18005aad6
test rdx, rdx
jns 0x180059e02
movabs rcx, 0x8000000000000001
lea rax, [r8 + 1]
sub rcx, rdx
cmp rcx, rax
jle 0x180059e02
mov rcx, rsi
call fcn.18004e570
mov rcx, rdi
movaps xmm6, xmm0
call fcn.18004e570
mov rax, qword [rsp + 0x48]
movzx ecx, byte [rax]
sub ecx, 0x6a
je 0x180059ed7
sub ecx, 1
je 0x180059ed1
sub ecx, 1
je 0x180059ecb
cmp ecx, 1
je 0x180059ebd
mov rcx, rsi
call fcn.18004e510
mov rcx, rdi
mov rbx, rax
call fcn.18004e510
mov qword [rbp - 8], rax
test rbx, rbx
je 0x180059f0b
cmp rbx, 0xffffffffffffffff
mov ecx, 1
cqo
xorps xmm0, xmm0
cmove rbx, rcx
idiv rbx
cvtsi2sd xmm0, rdx
jmp 0x180059edb
ucomisd xmm6, xmm7
jp 0x180059ec5
je 0x180059f0b
divsd xmm0, xmm6
jmp 0x180059edb
mulsd xmm0, xmm6
jmp 0x180059edb
subsd xmm0, xmm6
jmp 0x180059edb
addsd xmm0, xmm6
movabs rcx, 0xfffffffffffff
movsd qword [rbp - 0x58], xmm0
mov rax, qword [rbp - 0x58]
movabs rdx, 0x7ff0000000000000
test rcx, rax
setne cl
and rax, rdx
cmp rax, rdx
sete al
test al, cl
je 0x180059f51
mov eax, 0x9000
test word [r14 + 0x14], ax
je 0x180059f33
mov rcx, r14
call fcn.18004e360
mov r11, qword [rsp + 0x58]
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
jmp 0x18005aad6
mov eax, 1
mov r11, qword [rsp + 0x58]
mov r8d, dword [rsp + 0x44]
mov word [r14 + 0x14], ax
mov r14, qword [rsp + 0x48]
jmp 0x18005aad6
movzx eax, word [r14 + 0x14]
mov ecx, 0xf248
and ax, cx
movsd qword [r14], xmm0
or ax, 8
jmp 0x180059f38
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
test eax, eax
je 0x1800597f5
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x180059f93
xor edx, edx
jmp 0x180059aac
mov r14, qword [rsp + 0x48]
mov eax, 4
mov word [rcx + 0x14], ax
mov qword [rcx], rdx
jmp case.0x1800592bb.89
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x48]
add rdi, r11
add rcx, r11
movsxd rax, dword [rax + 0xc]
imul rsi, rax, 0x38
movzx eax, byte [rcx + 0x14]
or al, byte [rdi + 0x14]
add rsi, r11
test al, 1
je 0x18005a014
mov eax, 0x9000
test word [rsi + 0x14], ax
je 0x18005a001
mov rcx, rsi
call fcn.18004e360
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov r14, qword [rsp + 0x48]
mov eax, 1
mov word [rsi + 0x14], ax
jmp case.0x1800592bb.89
call fcn.18004e510
mov rcx, rdi
mov rbx, rax
call fcn.18004e510
mov r14, qword [rsp + 0x48]
mov rcx, rax
movzx edx, byte [r14]
cmp dl, 0x66
jne 0x18005a03a
and rbx, rax
jmp 0x18005a0af
cmp dl, 0x67
jne 0x18005a044
or rbx, rcx
jmp 0x18005a0af
test rcx, rcx
je 0x18005a0af
jns 0x18005a05e
mov eax, 0xd1
sub al, dl
movzx edx, al
cmp rcx, 0xffffffffffffffc0
jle 0x18005a064
neg rcx
cmp rcx, 0x40
jl 0x18005a07d
test rbx, rbx
jns 0x18005a077
cmp dl, 0x68
je 0x18005a077
mov rbx, 0xffffffffffffffff
jmp 0x18005a0af
xor eax, eax
mov ebx, eax
jmp 0x18005a0af
cmp dl, 0x68
jne 0x18005a08a
shl rbx, cl
mov r8, rbx
jmp 0x18005a0ac
mov r8, rbx
shr r8, cl
test rbx, rbx
jns 0x18005a0ac
mov eax, 0x40
mov rdx, 0xffffffffffffffff
sub al, cl
movzx ecx, al
shl rdx, cl
or r8, rdx
mov rbx, r8
mov eax, 0xf244
mov qword [rsi], rbx
and word [rsi + 0x14], ax
or word [rsi + 0x14], 4
jmp 0x18005aacc
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, r11
mov rcx, rbx
call fcn.18004e510
mov r14, qword [rsp + 0x48]
mov ecx, 0xf244
and word [rbx + 0x14], cx
or word [rbx + 0x14], 4
mov qword [rbx], rax
movsxd rcx, dword [r14 + 8]
add rcx, rax
mov qword [rbx], rcx
jmp 0x18005aacc
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, r11
movzx eax, word [rbx + 0x14]
test al, 4
jne 0x18005a157
movzx r8d, r9b
mov dl, 0x43
mov rcx, rbx
call fcn.180058e70
movzx eax, word [rbx + 0x14]
test al, 4
jne 0x18005a150
mov r14, qword [rsp + 0x48]
cmp dword [r14 + 8], 0
jne 0x18005ab9d
mov r8d, 0x14
mov dword [rsp + 0x44], r8d
jmp 0x18005bc0d
mov r11, qword [rsp + 0x58]
xor edx, edx
mov r8d, dword [rsp + 0x44]
mov ecx, 0xf244
mov r14, qword [rsp + 0x48]
and ax, cx
movzx r9d, byte [rsp + 0x40]
or ax, 4
mov r10d, dword [rsp + 0x50]
mov word [rbx + 0x14], ax
jmp case.0x1800592bb.89
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, r11
test byte [rbx + 0x14], 0x24
je 0x1800597f5
mov rcx, rbx
call fcn.18004e570
mov r8d, dword [rsp + 0x44]
mov eax, 0xf248
and word [rbx + 0x14], ax
or word [rbx + 0x14], 8
mov r14, qword [rsp + 0x48]
movsd qword [rbx], xmm0
jmp 0x18005aad1
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
mov eax, 0x400
add rbx, r11
test word [rbx + 0x14], ax
je 0x18005a1f6
mov rcx, rbx
call fcn.18004df80
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005bc0d
mov rax, qword [rsp + 0x48]
mov rcx, rbx
movzx r8d, byte [rsp + 0x40]
movzx edx, byte [rax + 8]
call fcn.18004e770
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005bc0d
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul r15, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul r14, rax, 0x38
add r15, r11
add r14, r11
movzx esi, word [r15 + 0x14]
movzx edi, word [r14 + 0x14]
movzx edx, di
and dx, si
test dl, 4
je 0x18005a2f6
mov rcx, qword [r14]
cmp rcx, qword [r15]
lea rcx, [0x180000000]
mov r15, qword [rsp + 0x68]
mov r14, qword [rsp + 0x48]
jle 0x18005a2a0
xor edx, edx
cmp byte [rbx + rcx + 0x15c108], dl
jne 0x18005aba4
mov eax, 1
mov r10d, eax
mov dword [rsp + 0x50], eax
mov r13, qword [rbp - 0x80]
add r14, 0x18
mov rsi, qword [rsp + 0x78]
jmp 0x180059285
jge 0x18005a2ce
xor edx, edx
cmp byte [rbx + rcx + 0x15c0fc], dl
jne 0x18005aba4
mov r10d, 0xffffffff
mov dword [rsp + 0x50], r10d
mov r13, qword [rbp - 0x80]
add r14, 0x18
mov rsi, qword [rsp + 0x78]
jmp 0x180059285
xor edx, edx
cmp byte [rbx + rcx + 0x15c102], dl
jne 0x18005aba4
mov r10d, edx
mov dword [rsp + 0x50], edx
mov r13, qword [rbp - 0x80]
add r14, 0x18
mov rsi, qword [rsp + 0x78]
jmp 0x180059285
movzx ecx, di
or cx, si
test cl, 1
je 0x18005a385
mov rax, qword [rsp + 0x48]
movzx eax, word [rax + 2]
test al, al
jns 0x18005a360
test dl, 1
je 0x18005a345
mov eax, pe_nt_image_headers64
test ax, di
jne 0x18005a345
xor eax, eax
lea rdx, [0x180000000]
mov r10d, eax
mov dword [rsp + 0x50], eax
mov rax, qword [rsp + 0x48]
lea rcx, [rdx + 0x15c102]
movzx eax, byte [rax]
jmp 0x18005a49e
movzx eax, di
not ax
and eax, 1
lea r10d, [rax*2 - 1]
mov dword [rsp + 0x50], r10d
jmp 0x18005a461
mov r14, qword [rsp + 0x48]
xor edx, edx
mov r15, qword [rsp + 0x68]
test al, 0x10
jne 0x18005aba4
mov eax, 1
mov r10d, eax
mov dword [rsp + 0x50], eax
jmp case.0x1800592bb.89
mov rbx, qword [rsp + 0x48]
movzx eax, byte [rbx + 2]
and al, 0x47
cmp al, 0x43
jb 0x18005a3d0
test cl, 2
je 0x18005a446
movzx eax, sil
and al, 0x2e
cmp al, 2
jne 0x18005a3b6
xor edx, edx
mov rcx, r15
call fcn.180058d00
movzx edi, word [r14 + 0x14]
movzx eax, dil
and al, 0x2e
cmp al, 2
jne 0x18005a446
xor edx, edx
mov rcx, r14
call fcn.180058d00
jmp 0x18005a446
cmp al, 0x42
jne 0x18005a446
test cl, 2
je 0x18005a446
test sil, 2
jne 0x18005a416
test sil, 0x2c
je 0x18005a416
mov r8b, 1
movzx edx, r9b
mov rcx, r15
call fcn.18004dfe0
xor si, word [r15 + 0x14]
mov r13d, 0xdbf
and si, r13w
xor si, word [r15 + 0x14]
cmp r15, r14
jne 0x18005a41c
movzx edi, si
or di, 2
jmp 0x18005a41c
mov r13d, 0xdbf
test dil, 2
jne 0x18005a446
test dil, 0x2c
je 0x18005a446
movzx edx, byte [rsp + 0x40]
mov r8b, 1
mov rcx, r14
call fcn.18004dfe0
xor di, word [r14 + 0x14]
and di, r13w
xor di, word [r14 + 0x14]
mov r8, qword [rbx + 0x10]
mov rdx, r15
mov rcx, r14
call fcn.1800543a0
mov r11, qword [rsp + 0x58]
mov r10d, eax
mov dword [rsp + 0x50], eax
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax]
test r10d, r10d
jns 0x18005a47e
lea rdx, [0x180000000]
lea rcx, [rdx + 0x15c0fc]
jmp 0x18005a49e
jne 0x18005a490
lea rdx, [0x180000000]
lea rcx, [rdx + 0x15c102]
jmp 0x18005a49e
lea rdx, [0x180000000]
lea rcx, [rdx + 0x15c108]
mov r8d, dword [rsp + 0x44]
add rcx, rax
xor edx, edx
movzx eax, byte [rcx]
mov word [r14 + 0x14], di
mov r14, qword [rsp + 0x48]
mov word [r15 + 0x14], si
mov r15, qword [rsp + 0x68]
test al, al
jne 0x18005eb76
movzx r9d, byte [rsp + 0x40]
jmp case.0x1800592bb.89
test r10d, r10d
je 0x18005aba4
jmp case.0x1800592bb.89
mov rax, qword [rsp + 0x48]
test byte [rax + 2], 1
jne 0x18005a4f0
mov r13, rdx
jmp 0x18005a4f8
mov r13, qword [rax - 8]
add r13, 4
mov rdx, qword [rax + 0x10]
xor ecx, ecx
mov r8d, dword [rax + 4]
mov esi, ecx
mov r9d, dword [rax + 8]
mov ebx, ecx
movsxd rax, dword [rax + 0xc]
mov qword [rbp - 0x58], rdx
mov dword [rbp - 0x78], r8d
mov dword [rbp - 0x70], r9d
mov qword [rbp + 0x38], rax
test rax, rax
jle 0x18005f38b
lea r12, [rdx + 0x20]
nop dword [rax + rax]
test r13, r13
je 0x18005a53c
mov ecx, dword [r13 + rbx*4]
jmp 0x18005a53e
mov ecx, esi
mov rax, qword [rdx + 0x18]
lea r15d, [rcx + r9]
lea r14d, [rcx + r8]
mov r8, qword [r12]
imul rdx, r15, 0x38
imul rcx, r14, 0x38
movzx edi, byte [rbx + rax]
add rdx, r11
and edi, 1
add rcx, r11
call fcn.1800543a0
mov r11, qword [rsp + 0x58]
mov r10d, eax
mov dword [rsp + 0x50], eax
test eax, eax
jne 0x18005a5b2
mov rdx, qword [rbp - 0x58]
inc esi
mov r8d, dword [rbp - 0x78]
inc rbx
mov r9d, dword [rbp - 0x70]
add r12, 8
cmp rbx, qword [rbp + 0x38]
jl 0x18005a530
mov r8d, dword [rsp + 0x44]
mov r12, qword [rsp + 0x60]
mov r14, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r15, qword [rsp + 0x68]
jmp 0x18005aae1
mov rax, qword [rbp - 0x58]
mov rax, qword [rax + 0x18]
test byte [rbx + rax], 2
je 0x18005a5e0
imul rax, r14, 0x38
test byte [rax + r11 + 0x14], 1
jne 0x18005a5d8
imul rax, r15, 0x38
test byte [rax + r11 + 0x14], 1
je 0x18005a5e0
neg r10d
mov dword [rsp + 0x50], r10d
mov r8d, dword [rsp + 0x44]
mov r12, qword [rsp + 0x60]
mov r14, qword [rsp + 0x48]
test edi, edi
je 0x18005f115
movzx r9d, byte [rsp + 0x40]
neg r10d
mov r15, qword [rsp + 0x68]
mov dword [rsp + 0x50], r10d
jmp 0x18005aae1
mov rax, qword [rsp + 0x48]
test r10d, r10d
jns 0x18005a62d
mov eax, dword [rax + 4]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r14, [r15 + rcx*8]
jmp case.0x1800592bb.89
jne 0x18005a643
mov eax, dword [rax + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r14, [r15 + rcx*8]
jmp case.0x1800592bb.89
mov eax, dword [rax + 0xc]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r14, [r15 + rcx*8]
jmp case.0x1800592bb.89
mov rax, qword [rsp + 0x48]
mov edi, 2
mov edx, edi
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
add rcx, r11
call fcn.18004e5a0
mov ebx, eax
mov edx, edi
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 8]
imul rcx, rcx, 0x38
add rcx, qword [rsp + 0x58]
call fcn.18004e5a0
lea rdx, [0x180000000]
lea eax, [rax + rbx*2]
add eax, ebx
movsxd rcx, eax
mov rax, qword [rsp + 0x48]
cmp byte [rax], 0x2c
jne 0x18005a6b2
movzx r8d, byte [rcx + rdx + 0x1600f0]
jmp 0x18005a6bb
movzx r8d, byte [rcx + rdx + 0x1613c0]
movsxd rax, dword [rax + 0xc]
mov r11, qword [rsp + 0x58]
imul rdx, rax, 0x38
movzx ecx, word [rdx + r11 + 0x14]
cmp r8b, dil
jne 0x18005a6f4
mov r14, qword [rsp + 0x48]
mov eax, 0xf241
mov r8d, dword [rsp + 0x44]
and cx, ax
or cx, 1
mov word [rdx + r11 + 0x14], cx
jmp 0x18005aad6
mov r14, qword [rsp + 0x48]
movzx eax, r8b
mov r8d, dword [rsp + 0x44]
mov qword [rdx + r11], rax
mov eax, 0xf244
and cx, ax
or cx, 4
mov word [rdx + r11 + 0x14], cx
jmp 0x18005aad6
mov r8, qword [rsp + 0x48]
movsxd rax, dword [r8 + 4]
mov edx, dword [r8 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
call fcn.18004e5a0
mov r11, qword [rsp + 0x58]
movsxd rcx, eax
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 0x10]
movsxd rax, dword [rax + 8]
xor rdx, rcx
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
jne 0x180059aac
mov r14, qword [rsp + 0x48]
mov eax, 4
mov r8d, dword [rsp + 0x44]
mov word [rcx + 0x14], ax
mov qword [rcx], rdx
jmp 0x18005aad6
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 4]
imul rcx, rax, 0x38
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
add rcx, r11
add rbx, r11
test byte [rcx + 0x14], 1
jne 0x18005a7f1
xor edx, edx
call fcn.18004e5a0
xor edx, edx
test eax, eax
mov ecx, edx
mov eax, 0x9000
sete cl
test word [rbx + 0x14], ax
je 0x18005a7c6
mov rdx, rcx
mov rcx, rbx
jmp 0x180059aac
mov r8d, dword [rsp + 0x44]
mov eax, 4
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov word [rbx + 0x14], ax
mov qword [rbx], rcx
jmp case.0x1800592bb.89
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x18005a813
mov rcx, rbx
call fcn.18004e360
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov r14, qword [rsp + 0x48]
mov eax, 1
mov word [rbx + 0x14], ax
jmp case.0x1800592bb.89
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rdi, r11
mov eax, 0x9000
add rbx, r11
test word [rbx + 0x14], ax
je 0x18005a85d
mov rcx, rbx
call fcn.18004e360
mov r11, qword [rsp + 0x58]
xor edx, edx
jmp 0x18005a866
mov eax, 1
mov word [rbx + 0x14], ax
test byte [rdi + 0x14], 1
jne 0x18005f0f6
mov eax, 4
mov rcx, rdi
mov word [rbx + 0x14], ax
call fcn.18004e510
mov r8d, dword [rsp + 0x44]
not rax
mov r14, qword [rsp + 0x48]
mov qword [rbx], rax
jmp 0x18005aad1
mov r8, qword [r13 + 0x108]
test r8, r8
je 0x18005a8f6
mov rcx, qword [rsp + 0x48]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [r13 + 0x88]
mov r9, qword [r8 + 0x28]
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov ecx, edx
and edx, 7
shr rcx, 3
movzx eax, byte [rcx + r9]
bt eax, edx
jb 0x18005ab98
bts eax, edx
mov byte [rcx + r9], al
xor edx, edx
mov rcx, qword [r13 + 0x88]
jmp 0x18005a90e
mov rax, qword [rsp + 0x48]
mov rcx, qword [r13 + 0x88]
mov eax, dword [rax + 4]
cmp dword [rcx + 4], eax
je 0x18005f37c
mov r14, qword [rsp + 0x48]
mov eax, dword [rcx + 4]
mov r8d, dword [rsp + 0x44]
movzx r9d, byte [rsp + 0x40]
mov dword [r14 + 4], eax
jmp case.0x1800592bb.89
mov r8, qword [rsp + 0x48]
movsxd rax, dword [r8 + 4]
mov edx, dword [r8 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
call fcn.18004e5a0
mov r8d, dword [rsp + 0x44]
xor edx, edx
mov r14, qword [rsp + 0x48]
test eax, eax
jne 0x18005eb76
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp case.0x1800592bb.89
mov rax, qword [rsp + 0x48]
cmp dword [rax + 0xc], 0
movsxd rax, dword [rax + 4]
sete dl
imul rcx, rax, 0x38
add rcx, r11
call fcn.18004e5a0
mov r8d, dword [rsp + 0x44]
xor edx, edx
mov r14, qword [rsp + 0x48]
test eax, eax
je 0x18005eb76
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp case.0x1800592bb.89
mov rax, qword [rsp + 0x48]
mov r14, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
jne 0x18005aba4
jmp case.0x1800592bb.89
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
test eax, eax
js 0x18005aa32
mov rcx, rax
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 0xc]
movzx eax, word [rdx + 0x4a]
cmp ecx, eax
jge 0x18005aa28
mov ecx, dword [rdx + rcx*4 + 0x70]
cmp ecx, 0xc
jb 0x18005aa14
test cl, 1
mov edx, 4
cmove dx, di
jmp 0x18005aa5c
mov rax, rcx
lea rcx, [0x180000000]
movzx edx, byte [rax + rcx + 0x15b4c8]
jmp 0x18005aa63
mov rax, qword [rsp + 0x48]
mov ecx, dword [rax + 0x10]
jmp 0x18005aa52
movsxd rax, dword [rcx + 0xc]
lea rdx, [0x180000000]
imul rcx, rax, 0x38
movzx eax, word [rcx + r11 + 0x14]
and eax, 0x3f
movzx ecx, byte [rax + rdx + 0x160190]
dec ecx
mov edx, 1
shl dx, cl
lea rcx, [0x180000000]
mov r14, qword [rsp + 0x48]
test word [r14 + 2], dx
jne 0x18005aba2
xor edx, edx
mov r13, qword [rbp - 0x80]
add r14, 0x18
mov rsi, qword [rsp + 0x78]
jmp 0x180059285
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 4]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
jne 0x18005ab0d
movsxd rax, dword [rbx + 0xc]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
jne 0x18005ab0d
movsxd rax, dword [rbx + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x18005aafc
xor edx, edx
call fcn.18004e9d0
mov r14, rbx
mov r8d, dword [rsp + 0x44]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
xor edx, edx
lea rcx, [0x180000000]
mov r13, qword [rbp - 0x80]
add r14, 0x18
mov rsi, qword [rsp + 0x78]
jmp 0x180059285
mov eax, 4
mov qword [rcx], rdx
mov word [rcx + 0x14], ax
mov r14, rbx
jmp case.0x1800592bb.89
movsxd rax, dword [rbx + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x18005ab2a
call fcn.18004e360
jmp 0x18005aac9
mov eax, 1
mov r14, rbx
mov word [rcx + 0x14], ax
jmp case.0x1800592bb.89
mov rax, qword [rsp + 0x48]
mov r14, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
je 0x18005aba4
jmp case.0x1800592bb.89
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je 0x1800593ea
cmp byte [rdx + 2], 0
je 0x1800593ea
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x18005abc9
call fcn.18004e360
mov r14, qword [rsp + 0x48]
mov r8d, dword [rsp + 0x44]
xor edx, edx
mov eax, dword [r14 + 8]
mov r11, qword [rsp + 0x58]
dec eax
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
cdqe
lea rcx, [rax + rax*2]
lea r14, [r15 + rcx*8]
jmp case.0x1800592bb.89
mov r14, qword [rsp + 0x48]
mov eax, 1
mov word [rcx + 0x14], ax
jmp 0x18005aba2
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x48]
mov r15d, dword [rcx + 8]
mov dword [rbp - 0x78], r15d
nop word [rax + rax]
mov r14, qword [rbx + 0x58]
mov eax, dword [r13 + 0x2c]
mov qword [rbp - 0x70], r14
cmp dword [rbx + 0x20], eax
je 0x18005ac4a
cmp byte [rbx + 2], 0
jne 0x18005aca5
cmp byte [rbx + 3], 0
mov rdi, qword [rbx + 0x30]
je 0x18005ac43
mov rdx, qword [rbx + 0x10]
test rdx, rdx
je 0x18005ac6f
lea eax, [r15 + 1]
mov eax, dword [rdx + rax*4]
test eax, eax
je 0x18005ac6f
mov rbx, qword [rbx + 0x28]
lea r15d, [rax - 1]
jmp 0x18005abf3
cmp byte [rdi], 0
je 0x18005ac86
jmp 0x18005ac57
mov rax, qword [rbx + 0x30]
cmp byte [rax], 0
je 0x18005ad3c
mov rcx, rbx
call fcn.180053bc0
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
je 0x18005ac00
jmp 0x18005bc0d
mov rcx, rbx
call fcn.180053b50
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005bc0d
mov rcx, rdi
call fcn.180043670
mov eax, dword [rdi + 0x40]
lea rsi, [rbx + 0x6c]
mov rdx, rsi
mov dword [rbx + 0x68], eax
mov rcx, rdi
call fcn.180043da0
jmp 0x18005acd3
cmp byte [rbx], 3
jne 0x18005adf4
movsxd rax, dword [rbx + 0x24]
test eax, eax
jle 0x18005adf4
imul rcx, rax, 0x38
lea rsi, [rbx + 0x6c]
add rcx, qword [rsp + 0x58]
mov eax, dword [rcx + 0x10]
mov dword [rsi], eax
mov dword [rbx + 0x68], eax
mov rax, qword [rcx + 8]
mov qword [rbx + 0x60], rax
mov eax, dword [r13 + 0x2c]
mov dword [rbx + 0x20], eax
mov rax, qword [rbx + 0x60]
movzx ecx, byte [rax]
mov dword [r14], ecx
cmp ecx, 0x80
jae 0x18005acf7
mov eax, 1
jmp 0x18005ad06
mov rcx, qword [rbx + 0x60]
mov rdx, r14
call fcn.18002d7b0
movzx eax, al
mov dword [rbx + 0x40], eax
xor edx, edx
mov word [rbx + 0x4a], dx
mov eax, dword [r14]
cmp dword [rsi], eax
jae 0x18005adee
mov qword [rbx + 0x60], rdx
mov dword [rsi], edx
mov eax, dword [r14]
cmp eax, 0x18003
ja 0x18005af30
cmp eax, dword [rbx + 0x68]
ja 0x18005af30
mov rsi, qword [rsp + 0x78]
movzx edx, word [rbx + 0x4a]
cmp edx, r15d
ja 0x18005afee
mov ecx, dword [rbx + 0x40]
mov eax, dword [r14]
cmp ecx, eax
jae 0x18005af72
mov r13, qword [rbx + 0x60]
test r13, r13
jne 0x18005ada5
xorps xmm0, xmm0
lea r8, [rbp + 0x58]
movups xmmword [rbp + 0x58], xmm0
xor eax, eax
movups xmmword [rbp + 0x68], xmm0
mov qword [rbp + 0x88], rax
movups xmmword [rbp + 0x78], xmm0
mov edx, dword [r14]
mov rcx, qword [rbx + 0x30]
call fcn.18004f1d0
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005bc09
mov r13, qword [rbp + 0x60]
movzx edx, word [rbx + 0x4a]
mov eax, dword [r14]
mov ecx, dword [rbx + 0x40]
movzx r15d, dx
mov edi, ecx
mov esi, r15d
add rdi, r13
mov r12d, eax
add r12, r13
mov r14d, dword [r14 + r15*4]
nop dword [rax + rax]
movzx eax, byte [rdi]
mov dword [rbp - 0x68], eax
mov dword [rbx + rsi*4 + 0x70], eax
mov eax, dword [rbp - 0x68]
cmp eax, 0x80
jae 0x18005ae36
movzx eax, al
lea rcx, [0x180000000]
inc rdi
movzx eax, byte [rax + rcx + 0x15b650]
jmp 0x18005ae6f
mov r13, qword [rbx + 0x60]
jmp 0x18005ada2
mov rax, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
jne 0x180059b43
movzx r9d, byte [rsp + 0x40]
mov eax, 1
mov r14, qword [rsp + 0x48]
mov r15, qword [rsp + 0x68]
mov word [rcx + 0x14], ax
jmp 0x18005aadc
lea rdx, [rbp - 0x68]
mov rcx, rdi
call fcn.18002d7b0
movzx eax, al
add rdi, rax
mov eax, dword [rbp - 0x68]
mov dword [rbx + rsi*4 + 0x70], eax
mov eax, dword [rbp - 0x68]
cmp eax, 0x80
jb 0x18005ae60
add eax, 0xfffffff4
shr eax, 1
jmp 0x18005ae6f
lea rcx, [0x180000000]
movzx eax, byte [rax + rcx + 0x15b650]
add r14, rax
inc r15d
mov rax, qword [rbp - 0x70]
movsxd rsi, r15d
mov dword [rax + rsi*4], r14d
cmp r15d, dword [rbp - 0x78]
ja 0x18005ae91
cmp rdi, r12
jb 0x18005adc0
jmp 0x18005ae96
cmp rdi, r12
jb 0x18005aee8
cmp rdi, r12
ja 0x18005aef0
mov eax, dword [rbx + 0x68]
cmp r14, rax
jne 0x18005aef0
mov r14, qword [rbp - 0x70]
sub edi, r13d
mov word [rbx + 0x4a], r15w
cmp qword [rbx + 0x60], 0
mov dword [rbx + 0x40], edi
jne 0x18005aed3
mov eax, 0x9000
test word [rbp + 0x6c], ax
jne 0x18005aeca
cmp dword [rbp + 0x78], 0
je 0x18005aed3
lea rcx, [rbp + 0x58]
call fcn.18004e3a0
mov edx, dword [rbp - 0x68]
mov r15d, dword [rbp - 0x78]
mov r12, qword [rsp + 0x60]
mov r13, qword [rbp - 0x80]
jmp 0x18005af79
mov eax, dword [rbx + 0x68]
cmp r14, rax
jbe 0x18005aea3
mov r14, qword [rbp - 0x70]
cmp dword [r14], 0
jne 0x18005af04
xor eax, eax
mov rdi, r12
mov r15d, eax
jmp 0x18005aea7
cmp qword [rbx + 0x60], 0
jne 0x18005af25
mov eax, 0x9000
test word [rbp + 0x6c], ax
jne 0x18005af1c
cmp dword [rbp + 0x78], 0
je 0x18005af25
lea rcx, [rbp + 0x58]
call fcn.18004e3a0
mov r12, qword [rsp + 0x60]
xor edx, edx
mov r13, qword [rbp - 0x80]
mov r15, qword [rsp + 0x68]
mov eax, dword [r15 + 0xc]
test eax, eax
jle 0x18005f4b8
mov r11, qword [rsp + 0x58]
dec eax
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
movsxd rcx, eax
lea rax, [rcx + rcx*2]
lea r8, [r15 + rax*8]
mov qword [rsp + 0x48], r8
mov r14, qword [rsp + 0x48]
mov r8d, dword [rsp + 0x44]
jmp case.0x1800592bb.89
xor eax, eax
mov edx, eax
mov dword [rbp - 0x68], eax
movzx eax, word [rbx + 0x4a]
cmp eax, r15d
ja 0x18005afe9
mov r8, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movsxd rax, dword [r8 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
cmp byte [r8 + 1], 0xf6
jne 0x18005afb7
mov rax, qword [rsp + 0x48]
mov r8d, 0x2000
mov rdx, qword [rax + 0x10]
call fcn.18004ec20
jmp 0x180059b48
mov eax, 0x9000
test word [rcx + 0x14], ax
jne 0x180059b43
mov r8d, dword [rsp + 0x44]
mov eax, 1
movzx r9d, byte [rsp + 0x40]
mov r14, qword [rsp + 0x48]
mov r15, qword [rsp + 0x68]
mov word [rcx + 0x14], ax
jmp 0x18005aadc
mov esi, r15d
jmp 0x18005aff8
mov esi, r15d
mov edx, dword [rbx + rsi*4 + 0x70]
mov dword [rbp - 0x68], edx
mov r8, qword [rsp + 0x48]
movsxd rax, dword [r8 + 0xc]
imul rdi, rax, 0x38
mov eax, 0x9000
add rdi, qword [rsp + 0x58]
test word [rdi + 0x14], ax
je 0x18005b025
mov rcx, rdi
call fcn.18004e360
mov edx, dword [rbp - 0x68]
mov r8, qword [rsp + 0x48]
lea eax, [r15 + 1]
mov eax, dword [r14 + rax*4]
cmp dword [rbx + 0x6c], eax
jb 0x18005b10b
mov esi, dword [r14 + rsi*4]
add rsi, qword [rbx + 0x60]
cmp edx, 0xc
jae 0x18005b053
mov r8, rdi
mov rcx, rsi
call fcn.180053c30
jmp 0x180059b48
movzx eax, byte [rsp + 0x40]
lea ebx, [rdx - 0xc]
shr ebx, 1
mov dword [rdi + 0x10], ebx
mov byte [rdi + 0x16], al
lea edx, [rbx + 2]
cmp dword [rdi + 0x20], edx
jge 0x18005b09b
cmp ebx, dword [r12 + 0x88]
jg 0x18005f69e
mov eax, 1
xor r8d, r8d
mov rcx, rdi
mov word [rdi + 0x14], ax
call fcn.18004dcd0
test eax, eax
jne 0x18005b68d
mov rcx, qword [rdi + 8]
jmp 0x18005b0a3
mov rcx, qword [rdi + 0x28]
mov qword [rdi + 8], rcx
mov r8d, ebx
mov rdx, rsi
call fcn.180133760
mov rax, qword [rdi + 8]
lea rcx, [0x180000000]
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov r15, qword [rsp + 0x68]
mov byte [rbx + rax], 0
mov rax, qword [rdi + 8]
mov byte [rax + rbx + 1], 0
mov eax, dword [rbp - 0x68]
and eax, 1
xor edx, edx
movzx eax, word [rcx + rax*2 + 0x1578e4]
mov word [rdi + 0x14], ax
mov r13, qword [rbp - 0x80]
add r14, 0x18
mov rsi, qword [rsp + 0x78]
jmp 0x180059285
movzx eax, byte [rsp + 0x40]
mov byte [rdi + 0x16], al
movzx eax, word [r8 + 2]
mov edx, dword [rbp - 0x68]
test al, 0xc0
je 0x18005b12d
cmp edx, 0xc
jb 0x18005b129
test dl, 1
je 0x18005b153
test al, al
js 0x18005b153
cmp edx, 0x80
jb 0x18005b13e
lea r8d, [rdx - 0xc]
shr r8d, 1
jmp 0x18005b14e
lea rcx, [0x180000000]
movzx r8d, byte [rdx + rcx + 0x15b650]
test r8d, r8d
jne 0x18005b167
mov r8, rdi
lea rcx, [0x18015adf0]
call fcn.180053c30
jmp 0x180059b48
cmp r8d, dword [r12 + 0x88]
jg 0x18005f69e
mov edx, dword [r14 + rsi*4]
mov r9, rdi
mov rcx, qword [rbx + 0x30]
call fcn.18004f0c0
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005f560
mov edx, dword [rbp - 0x68]
mov r8, rdi
mov rcx, qword [rdi + 8]
call fcn.180053c30
mov eax, 0xbfff
and word [rdi + 0x14], ax
jmp 0x180059b48
mov rax, qword [rsp + 0x48]
mov esi, edx
mov r14, qword [rax + 0x10]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
mov r15, qword [r14 + 8]
add rbx, r11
cmp dx, word [r14 + 0x36]
jge 0x180059b70
lea rdi, [r15 + 0xc]
nop word [rax + rax]
movzx eax, word [rdi + 6]
test al, 0x60
je 0x18005b1ff
test al, 0x20
jne 0x18005b2ad
mov rax, qword [rsp + 0x48]
cmp dword [rax + 0xc], 0
jne 0x18005b2a9
movzx edx, byte [rdi]
movzx r8d, r9b
mov rcx, rbx
call fcn.180058e70
movzx edx, word [rbx + 0x14]
test dl, 1
jne 0x18005b2a9
mov eax, dword [rdi - 4]
shr eax, 4
and eax, 0xf
sub eax, 2
je 0x18005b2a0
sub eax, 1
je 0x18005b29b
sub eax, 1
je 0x18005b29b
sub eax, 1
je 0x18005b242
cmp eax, 1
jne 0x18005b2a9
test dl, 2
jmp 0x18005b2a3
test dl, 4
je 0x18005b296
mov rcx, qword [rbx]
movabs rax, 0x800000000000
add rax, rcx
movabs r8, 0xffffffffffff
cmp rax, r8
ja 0x18005b278
or dx, 0x20
mov eax, 0xfffb
and dx, ax
mov word [rbx + 0x14], dx
jmp 0x18005b2a9
xorps xmm0, xmm0
or dx, 8
cvtsi2sd xmm0, rcx
mov eax, 0xfffb
and dx, ax
movsd qword [rbx], xmm0
mov word [rbx + 0x14], dx
jmp 0x18005b2a9
test dl, 0x28
jmp 0x18005b2a3
test dl, 4
jmp 0x18005b2a3
test dl, 0x10
je 0x18005f4fb
add rbx, 0x38
movsx eax, word [r14 + 0x36]
inc esi
movzx r9d, byte [rsp + 0x40]
add rdi, 0x18
cmp esi, eax
jl 0x18005b1e0
mov r8d, dword [rsp + 0x44]
mov r11, qword [rsp + 0x58]
mov r14, qword [rsp + 0x48]
mov r15, qword [rsp + 0x68]
jmp 0x18005aadc
mov rax, qword [rsp + 0x48]
mov rdi, qword [rax + 0x10]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
movzx eax, byte [rdi]
add rbx, r11
nop word [rax + rax]
movzx r8d, r9b
movzx edx, al
mov rcx, rbx
call fcn.180058e70
cmp byte [rdi], 0x45
jne 0x18005b361
movzx ecx, word [rbx + 0x14]
test cl, 4
je 0x18005b361
mov rdx, qword [rbx]
movabs rax, 0x800000000000
add rax, rdx
movabs r8, 0xffffffffffff
cmp rax, r8
mov eax, 0xfffb
ja 0x18005b34a
and cx, ax
or cx, 0x20
jmp 0x18005b35d
xorps xmm0, xmm0
and cx, ax
cvtsi2sd xmm0, rdx
or cx, 8
movsd qword [rbx], xmm0
mov word [rbx + 0x14], cx
movzx eax, byte [rdi + 1]
inc rdi
test al, al
je 0x18005f07c
movzx r9d, byte [rsp + 0x40]
add rbx, 0x38
jmp 0x18005b300
mov r8, qword [rsp + 0x48]
mov r15, rdx
mov r12d, edx
mov r13, rdx
movsxd rax, dword [r8 + 4]
mov rdi, qword [r8 + 0x10]
imul rcx, rax, 0x38
mov eax, dword [r8 + 8]
dec eax
add rcx, r11
cdqe
imul rsi, rax, 0x38
movsxd rax, dword [r8 + 0xc]
imul rdx, rax, 0x38
add rsi, rcx
mov qword [rbp - 0x58], rcx
add rdx, r11
mov qword [rbp - 0x70], rsi
mov qword [rbp + 0x38], rdx
test rdi, rdi
je 0x18005b40f
movzx eax, byte [rdi]
lea rbx, [rcx + 0x14]
mov esi, 0xfffb
lea rcx, [rbx - 0x14]
movzx r8d, r9b
movzx edx, al
call fcn.180058e70
cmp byte [rdi], 0x45
jne 0x18005b3f6
movzx eax, word [rbx]
test al, 4
je 0x18005b3f6
and ax, si
or ax, 0x20
mov word [rbx], ax
movzx eax, byte [rdi + 1]
inc rdi
movzx r9d, byte [rsp + 0x40]
add rbx, 0x38
test al, al
jne 0x18005b3d0
mov rsi, qword [rbp - 0x70]
lea r14, [rsi + 0x24]
movzx ecx, word [r14 - 0x10]
test cl, 1
je 0x18005b43e
mov eax, 0x400
mov r8d, 1
and cx, ax
neg cx
sbb eax, eax
and eax, 0xa
mov dword [r14], eax
inc r12d
jmp 0x18005b5e6
test cl, 0x24
je 0x18005b563
mov r8, qword [r14 - 0x24]
mov rdx, r8
test r8, r8
jns 0x18005b456
not rdx
inc r12d
cmp rdx, 0x7f
ja 0x18005b49b
mov rax, r8
and eax, 1
cmp rax, r8
jne 0x18005b488
mov rax, qword [rbp - 0x80]
cmp byte [rax + 0xc3], 4
jb 0x18005b488
lea eax, [rdx + 8]
mov r8d, 1
mov dword [r14], eax
jmp 0x18005b5e6
mov eax, 1
inc r15
mov dword [r14], eax
mov r8d, eax
jmp 0x18005b5e6
cmp rdx, 0x7fff
ja 0x18005b4b9
mov eax, 2
add r15, 2
mov dword [r14], eax
lea r8d, [rax - 1]
jmp 0x18005b5e6
cmp rdx, 0x7fffff
ja 0x18005b4d7
mov eax, 3
add r15, 3
mov dword [r14], eax
lea r8d, [rax - 2]
jmp 0x18005b5e6
cmp rdx, 0x7fffffff
ja 0x18005b4f5
mov eax, 4
add r15, 4
mov dword [r14], eax
lea r8d, [rax - 3]
jmp 0x18005b5e6
movabs rax, 0x7fffffffffff
cmp rdx, rax
ja 0x18005b519
mov eax, 5
add r15, 6
mov dword [r14], eax
lea r8d, [rax - 4]
jmp 0x18005b5e6
add r15, 8
test cl, 0x20
je 0x18005b552
mov eax, 0xffdf
xorps xmm0, xmm0
cvtsi2sd xmm0, r8
and cx, ax
mov eax, 7
or cx, 8
mov word [r14 - 0x10], cx
lea r8d, [rax - 6]
movsd qword [r14 - 0x24], xmm0
mov dword [r14], eax
jmp 0x18005b5e6
mov eax, 6
mov dword [r14], eax
lea r8d, [rax - 5]
jmp 0x18005b5e6
test cl, 8
je 0x18005b57e
inc r12d
mov dword [r14], 7
add r15, 8
mov r8d, 1
jmp 0x18005b5e6
mov edi, dword [r14 - 0x14]
mov eax, ecx
shr eax, 1
and eax, 1
bt cx, 0xa
lea esi, [rdi + 6]
lea esi, [rax + rsi*2]
jae 0x18005b5bc
movsxd rax, dword [r14 - 0x24]
lea esi, [rsi + rax*2]
test r15, r15
je 0x18005b5b9
lea rcx, [r14 - 0x24]
call fcn.18004df80
test eax, eax
jne 0x18005b684
add edi, dword [r14 - 0x24]
jmp 0x18005b5bc
add r13, rax
mov eax, edi
mov r8d, 1
add r15, rax
mov ecx, r8d
mov eax, esi
shr rax, 7
test rax, rax
je 0x18005b5e0
inc ecx
shr rax, 7
test rax, rax
jne 0x18005b5d5
add r12d, ecx
mov dword [r14], esi
lea rax, [r14 - 0x24]
cmp rax, qword [rbp - 0x58]
je 0x18005b5f9
sub r14, 0x38
jmp 0x18005b413
cmp r12d, 0x7e
jle 0x18005b63f
movsxd rax, r12d
mov edx, r8d
shr rax, 7
test rax, rax
je 0x18005b61b
nop
inc edx
shr rax, 7
test rax, rax
jne 0x18005b610
add r12d, edx
mov ecx, r8d
movsxd rax, r12d
shr rax, 7
test rax, rax
je 0x18005b63b
nop dword [rax]
inc ecx
shr rax, 7
test rax, rax
jne 0x18005b630
cmp edx, ecx
jge 0x18005b642
inc r12d
mov rdi, qword [rbp + 0x38]
movsxd rsi, r12d
movsxd rdx, dword [rdi + 0x20]
lea rbx, [rsi + r15]
lea rcx, [rbx + r13]
cmp rcx, rdx
jle 0x18005b6b9
mov r8, qword [rsp + 0x60]
movsxd rax, dword [r8 + 0x88]
cmp rcx, rax
jg 0x18005f69a
cmp edx, ebx
jge 0x18005b6b9
xor r8d, r8d
mov edx, ebx
mov rcx, rdi
call fcn.18004dcd0
test eax, eax
je 0x18005b6c1
mov r12, qword [rsp + 0x60]
mov r13, qword [rbp - 0x80]
mov rsi, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x70]
mov rcx, r12
call fcn.1800292b0
lea rdx, str.out_of_memory
mov rcx, r13
call fcn.18004fa90
mov r8d, 7
jmp 0x18005f7f9
mov rax, qword [rdi + 0x28]
mov qword [rdi + 8], rax
mov dword [rdi + 0x10], ebx
mov eax, 0x10
mov word [rdi + 0x14], ax
test r13, r13
je 0x18005b6de
mov eax, 0x410
mov dword [rdi], r13d
mov word [rdi + 0x14], ax
mov rdi, qword [rdi + 8]
lea r14, [rsi + rdi]
cmp r12d, 0x80
jge 0x18005b6f7
mov byte [rdi], r12b
inc rdi
jmp 0x18005b708
mov rdx, rsi
mov rcx, rdi
call fcn.18002d580
movsxd rcx, eax
add rdi, rcx
mov rbx, qword [rbp - 0x58]
mov rsi, qword [rbp - 0x70]
add rbx, 0x10
mov eax, dword [rbx + 0x14]
cmp eax, 7
ja 0x18005b775
mov byte [rdi], al
inc rdi
test eax, eax
je 0x18005b7bc
mov rdx, qword [rbx - 0x10]
lea rcx, [0x180000000]
movzx ecx, byte [rax + rcx + 0x15b650]
mov r10d, 0xffffffff
mov r9d, ecx
add ecx, r10d
lea r8, [rcx + r14]
mov byte [r8], dl
je 0x18005b770
nop dword [rax]
nop word [rax + rax]
shr rdx, 8
lea r8, [r8 - 1]
mov byte [r8], dl
add ecx, r10d
jne 0x18005b760
add r14, r9
jmp 0x18005b7bc
cmp eax, 0x80
jae 0x18005b78f
mov byte [rdi], al
inc rdi
cmp eax, 0xe
jb 0x18005b7bc
movsxd rax, dword [rbx]
test eax, eax
jle 0x18005b7bc
jmp 0x18005b7a7
mov rdx, rax
mov rcx, rdi
call fcn.18002d580
movsxd rcx, eax
movsxd rax, dword [rbx]
add rdi, rcx
test eax, eax
je 0x18005b7bc
mov rdx, qword [rbx - 8]
mov r8, rax
mov rcx, r14
call fcn.180133760
movsxd rax, dword [rbx]
add r14, rax
lea rax, [rbx - 0x10]
cmp rax, rsi
je 0x18005f0ea
add rbx, 0x38
jmp 0x18005b714
mov r8, qword [rsp + 0x48]
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 + 0x30]
je 0x18005b7fc
mov rcx, rdx
call fcn.180044a10
mov qword [rbp + 0x18], rax
jmp 0x18005b81d
xor eax, eax
lea r8, [rbp + 0x18]
mov rcx, r12
mov qword [rbp + 0x18], rax
call fcn.18004b570
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005bc0d
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, qword [r13 + 0x68]
test word [rcx + 0x14], ax
je 0x18005b84d
call fcn.180059060
mov rcx, rax
mov rax, qword [rbp + 0x18]
mov qword [rcx], rax
jmp 0x18005dc17
mov eax, 4
mov word [rcx + 0x14], ax
mov rax, qword [rbp + 0x18]
mov qword [rcx], rax
jmp 0x18005dc17
mov rbx, qword [rsp + 0x48]
mov r14d, dword [rbx + 4]
mov rdi, qword [rbx + 0x10]
mov dword [rbp - 0x70], r14d
test r14d, r14d
jne 0x18005b958
cmp dword [r12 + 0xe0], r14d
jg 0x18005f56a
test rdi, rdi
jne 0x18005b893
mov ebx, edx
jmp 0x18005b8af
mov rbx, 0xffffffffffffffff
nop word [rax + rax]
inc rbx
cmp byte [rdi + rbx], 0
jne 0x18005b8a0
and ebx, 0x3fffffff
mov r8d, dword [r12 + 0x2f4]
xor edx, edx
add r8d, dword [r12 + 0x2f0]
mov rcx, r12
call fcn.1800c0900
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005bc0d
mov edx, ebx
mov rcx, r12
add rdx, 0x21
call fcn.180028ce0
mov rsi, rax
test rax, rax
je 0x18005b94e
lea r9, [rax + 0x20]
mov rdx, rdi
mov rcx, r9
mov qword [rax], r9
lea r8d, [rbx + 1]
call fcn.180133760
cmp byte [r12 + 0x65], 0
je 0x18005b91a
mov byte [r12 + 0x65], 0
mov byte [r12 + 0x6d], 1
jmp 0x18005b922
inc dword [r12 + 0x2f0]
mov rax, qword [r12 + 0x2e0]
mov qword [rsi + 0x18], rax
mov rax, qword [r12 + 0x2f8]
mov qword [r12 + 0x2e0], rsi
mov qword [rsi + 8], rax
mov rax, qword [r12 + 0x300]
mov qword [rsi + 0x10], rax
mov r8d, dword [rsp + 0x44]
jmp 0x18005bc4a
mov rsi, qword [r12 + 0x2e0]
mov r15d, edx
test rsi, rsi
je 0x18005b98b
nop dword [rax + rax]
mov rcx, qword [rsi]
mov rdx, rdi
call fcn.18002c900
test eax, eax
je 0x18005b9bf
mov rsi, qword [rsi + 0x18]
inc r15d
test rsi, rsi
jne 0x18005b970
mov r8, rdi
lea rdx, str.no_such_savepoint:__s
mov rcx, r13
call fcn.18004fa90
mov rbx, qword [rsp + 0x60]
mov r15d, 1
mov rsi, qword [rsp + 0x78]
mov r8d, r15d
mov r14, qword [rsp + 0x68]
mov dword [rsp + 0x44], r15d
jmp 0x18005bc1d
cmp dword [r12 + 0xe0], 0
jle 0x18005b9d4
cmp r14d, 1
je 0x18005f589
cmp qword [rsi + 0x18], 0
jne 0x18005ba40
cmp byte [r12 + 0x6d], 0
je 0x18005ba40
mov eax, 1
mov r13d, eax
cmp r14d, eax
jne 0x18005ba47
mov rdi, qword [rbp - 0x80]
mov edx, eax
mov rcx, rdi
call fcn.180052f40
mov r12d, eax
test eax, eax
jne 0x18005fb1d
mov r12, qword [rsp + 0x60]
mov rcx, rdi
mov byte [r12 + 0x65], r13b
call fcn.180052fb0
cmp eax, 5
je 0x18005f5c8
mov r8d, dword [rdi + 0x34]
mov dword [rsp + 0x44], r8d
test r8d, r8d
jne 0x18005f5ad
mov byte [r12 + 0x6d], r8b
jmp 0x18005bb63
xor ecx, ecx
mov r13d, ecx
jmp 0x18005ba49
xor ecx, ecx
mov eax, dword [r12 + 0x2f0]
sub eax, r15d
lea r15d, [rax - 1]
mov eax, dword [r12 + 0x28]
cmp r14d, 2
jne 0x18005bac4
mov r12d, dword [r12 + 0x2c]
mov edi, ecx
and r12d, 1
test eax, eax
jle 0x18005bac7
mov r14d, r12d
mov rbx, rcx
xor r14d, 1
nop dword [rax]
mov r8, qword [rsp + 0x60]
mov edx, 0x204
mov rcx, qword [r8 + 0x20]
mov r8d, r14d
mov rcx, qword [rbx + rcx + 8]
call fcn.1800430e0
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005bc04
mov rax, qword [rsp + 0x60]
inc edi
add rbx, 0x20
mov eax, dword [rax + 0x28]
cmp edi, eax
jl 0x18005ba80
mov r14d, dword [rbp - 0x70]
xor ecx, ecx
jmp 0x18005bac7
mov r12d, ecx
mov edi, ecx
test eax, eax
jle 0x18005bb15
mov rax, qword [rsp + 0x60]
mov rbx, rcx
nop word [rax + rax]
mov rcx, qword [rax + 0x20]
mov r8d, r15d
mov edx, r14d
mov rcx, qword [rbx + rcx + 8]
call fcn.180043400
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005bc04
mov rax, qword [rsp + 0x60]
inc edi
add rbx, 0x20
cmp edi, dword [rax + 0x28]
jl 0x18005bae0
jmp 0x18005bb1a
mov r8d, dword [rsp + 0x44]
test r12d, r12d
mov r12, qword [rsp + 0x60]
je 0x18005bb5a
mov rax, qword [r12 + 8]
test rax, rax
je 0x18005bb47
nop
and dword [rax + 0xc8], 0xfffffffd
or dword [rax + 0xc8], 1
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x18005bb30
mov rcx, r12
call fcn.18007e710
or dword [r12 + 0x2c], 1
mov r8d, dword [rsp + 0x44]
test r8d, r8d
jne 0x18005bc04
mov rcx, qword [r12 + 0x2e0]
cmp rcx, rsi
je 0x18005bb9c
mov rax, qword [rcx + 0x18]
mov rdx, rcx
mov rcx, r12
mov qword [r12 + 0x2e0], rax
call fcn.180028930
mov rcx, qword [r12 + 0x2e0]
dec dword [r12 + 0x2f0]
cmp rcx, rsi
jne 0x18005bb70
cmp r14d, 1
jne 0x18005bbc8
mov rax, qword [rsi + 0x18]
mov rdx, rsi
mov rcx, r12
mov qword [r12 + 0x2e0], rax
call fcn.180028930
test r13d, r13d
jne 0x18005bc3c
dec dword [r12 + 0x2f0]
jmp 0x18005bbeb
mov rax, qword [rsi + 8]
mov qword [r12 + 0x2f8], rax
mov rax, qword [rsi + 0x10]
mov qword [r12 + 0x300], rax
test r13d, r13d
je 0x18005bbeb
cmp r14d, 2
jne 0x18005bc3c
mov r8d, r15d
mov edx, r14d
mov rcx, r12
call fcn.1800c0900
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
je 0x18005bc41
mov rsi, qword [rsp + 0x78]
mov r13, qword [rbp - 0x80]
mov r14, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x60]
mov r15d, 1
mov rdi, qword [rsp + 0x70]
cmp byte [rbx + 0x67], 0
je 0x18005fa26
mov r8d, 7
mov dword [rsp + 0x44], r8d
jmp 0x18005fa40
mov r8d, dword [rsp + 0x44]
mov r13, qword [rbp - 0x80]
mov r15, qword [rsp + 0x68]
cmp byte [r13 + 0xc5], 3
jne 0x180059a74
mov r12d, 0x65
jmp 0x18005fb20
mov rbx, qword [rsp + 0x48]
mov dword [rbp - 0x78], edx
mov edx, dword [rbx + 8]
test edx, edx
je 0x18005bc8a
mov rax, qword [r12 + 0x30]
movabs rcx, 0x200100000
test rcx, rax
jne 0x18005f60e
movsxd rdi, dword [rbx + 4]
shl rdi, 5
add rdi, qword [r12 + 0x20]
mov rbx, qword [rdi + 8]
test rbx, rbx
je 0x18005bd5a
lea r8, [rbp - 0x78]
mov rcx, rbx
call fcn.180041ad0
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005f629
test byte [r13 + 0xc8], 0x20
je 0x18005bd63
mov rax, qword [rsp + 0x48]
cmp dword [rax + 8], r8d
je 0x18005bd63
cmp byte [r12 + 0x65], r8b
je 0x18005bcee
cmp dword [r12 + 0xdc], 1
jle 0x18005bd63
mov r8d, dword [r13 + 0x40]
test r8d, r8d
jne 0x18005bd13
inc dword [r12 + 0x2f4]
mov r8d, dword [r12 + 0x2f0]
add r8d, dword [r12 + 0x2f4]
mov dword [r13 + 0x40], r8d
dec r8d
xor edx, edx
mov rcx, r12
call fcn.1800c0900
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x18005bd38
mov edx, dword [r13 + 0x40]
mov rcx, rbx
call fcn.180043390
mov dword [rsp + 0x44], eax
mov r12, qword [rsp + 0x60]
mov r8d, dword [rsp + 0x44]
mov rax, qword [r12 + 0x2f8]
mov qword [r13 + 0x58], rax
mov rax, qword [r12 + 0x300]
mov qword [r13 + 0x60], rax
test r8d, r8d
jne 0x18005bc0d
mov r14, qword [rsp + 0x48]
cmp word [r14 + 2], 0
je 0x18005aad1
mov eax, dword [r14 + 0xc]
cmp dword [rbp - 0x78], eax
jne 0x18005bd8e
mov rcx, qword [rdi + 0x18]
mov eax, dword [r14 + 0x10]
cmp dword [rcx + 4], eax
je 0x18005aad1
mov rdx, qword [r13 + 0xa8]
test rdx, rdx
je 0x18005bda2
mov rcx, r12
call fcn.180028930
lea rdx, str.database_schema_has_changed
mov rcx, r12
call fcn.180029040
mov qword [r13 + 0xa8], rax
mov rax, qword [r12 + 0x20]
movsxd rdx, dword [r14 + 4]
mov rcx, rdx
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov eax, dword [rbp - 0x78]
cmp dword [rcx], eax
je 0x18005bddc
mov rcx, r12
call fcn.18007e690
mov eax, dword [r13 + 0xc8]
mov r8d, 0x11
and eax, 0xffffffed
mov dword [rsp + 0x44], r8d
or eax, 1
mov dword [r13 + 0xc8], eax
jmp 0x18005bc0d
mov rbx, qword [rsp + 0x48]
lea r8, [rbp + 0x14]
mov rcx, qword [r12 + 0x20]
movsxd rax, dword [rbx + 4]
mov edx, dword [rbx + 0xc]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.18004b3f0
mov rdx, rbx
mov rcx, r13
call fcn.180059090
movsxd rcx, dword [rbp + 0x14]
mov qword [rax], rcx
jmp 0x18005aac9
mov rax, qword [rsp + 0x48]
movsxd rbx, dword [rax + 4]
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 8]
shl rbx, 5
add rbx, qword [r12 + 0x20]
mov rcx, qword [rbx + 8]
call fcn.18004b480
mov r12, qword [rsp + 0x48]
mov dword [rsp + 0x44], eax
mov eax, dword [r12 + 8]
cmp eax, 1
jne 0x18005be9a
movzx eax, word [r12 + 2]
mov ecx, dword [r12 + 0xc]
sub ecx, eax
mov rax, qword [rbx + 0x18]
mov rbx, qword [rsp + 0x60]
mov dword [rax], ecx
mov rcx, rbx
or dword [rbx + 0x2c], 1
mov edx, dword [r12 + 4]
call fcn.180093000
jmp 0x18005beb1
cmp eax, 2
jne 0x18005beac
mov rcx, qword [rbx + 0x18]
movzx eax, byte [r12 + 0xc]
mov byte [rcx + 0x70], al
mov rbx, qword [rsp + 0x60]
cmp dword [r12 + 4], 1
jne 0x18005e92e
xor edx, edx
mov rcx, rbx
call fcn.1800554c0
and dword [r13 + 0xc8], 0xfffffffc
jmp 0x18005e92e
mov r8, qword [rsp + 0x48]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r8 + 4]
mov rdi, qword [rax + rcx*8]
test rdi, rdi
je 0x18005bf0a
mov eax, dword [r8 + 8]
cmp dword [rdi + 0x44], eax
jne 0x18005bf0a
mov rcx, qword [rdi + 0x30]
add rdi, 0x30
call fcn.18003ec60
jmp 0x18005c020
mov r8, qword [rsp + 0x48]
mov eax, dword [r13 + 0xc8]
and al, 3
cmp al, 1
je 0x18005f677
movsxd r12, dword [r8 + 0xc]
mov edi, edx
mov r15d, dword [r8 + 8]
mov rax, r12
mov r8, qword [rsp + 0x60]
mov r14, rdx
shl rax, 5
add rax, qword [r8 + 0x20]
mov r13, qword [rax + 8]
cmp bl, 0x71
jne 0x18005bf6c
mov rcx, qword [rsp + 0x48]
mov rax, qword [rax + 0x18]
movzx esi, word [rcx + 2]
movzx ecx, byte [rax + 0x70]
and esi, 8
mov rax, qword [rbp - 0x80]
or esi, 4
cmp cl, byte [rax + 0xc3]
jae 0x18005bf6e
mov byte [rax + 0xc3], cl
jmp 0x18005bf6e
mov esi, edx
mov rcx, qword [rsp + 0x48]
test byte [rcx + 2], 0x10
je 0x18005bf90
imul rbx, r15, 0x38
add rbx, r11
mov rcx, rbx
call fcn.18004e600
mov rcx, qword [rsp + 0x48]
mov r15d, dword [rbx]
movzx eax, byte [rcx + 1]
cmp al, 0xf8
jne 0x18005bfa3
mov r14, qword [rcx + 0x10]
movzx edi, word [r14 + 8]
jmp 0x18005bfaa
cmp al, 0xfd
jne 0x18005bfaa
mov edi, dword [rcx + 0x10]
mov edx, dword [rcx + 4]
xor r9d, r9d
mov rcx, qword [rbp - 0x80]
mov r8d, edi
call fcn.180058b70
mov rbx, rax
test rax, rax
je 0x18005b684
mov rcx, qword [rax + 0x30]
lea rdi, [rax + 0x30]
or dword [rax + 8], 4
mov r9, r14
mov qword [rsp + 0x20], rcx
mov r8d, esi
mov rcx, r13
mov byte [rax + 1], r12b
mov edx, r15d
mov byte [rax + 2], 1
mov dword [rax + 0x44], r15d
call fcn.1800435e0
mov r12, qword [rsp + 0x60]
mov r13, qword [rbp - 0x80]
mov rsi, qword [rsp + 0x78]
mov r15, qword [rsp + 0x68]
mov dword [rsp + 0x44], eax
mov rax, qword [rsp + 0x48]
mov qword [rbx + 0x38], r14
cmp byte [rax + 1], 0xf8
setne al
mov byte [rbx + 4], al
mov rax, qword [rsp + 0x48]
mov rcx, qword [rdi]
movzx edx, word [rax + 2]
and edx, 3
call fcn.18003ee90
mov r8d, dword [rsp + 0x44]
test r8d, r8d
jne 0x18005bc0d
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov rax, qword [rsp + 0x48]
xor r9d, r9d
movsxd rcx, dword [rax + 8]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, r13
mov rax, qword [rsp + 0x48]
movsx r8d, word [rbx + 0x48]
mov edx, dword [rax + 4]
call fcn.180058b70
mov r10, rax
test rax, rax
je 0x18005b692
or dword [rax + 8], 1
mov r8d, 4
mov byte [rax + 2], 1
mov rcx, qword [rbx + 0x38]
mov qword [rax + 0x38], rcx
movzx ecx, byte [rbx + 4]
mov byte [rax + 4], cl
mov ecx, dword [rbx + 0x44]
mov dword [rax + 0x44], ecx
mov ecx, dword [rax + 8]
xor ecx, dword [rbx + 8]
and ecx, 4
xor ecx, dword [rax + 8]
mov dword [rax + 8], ecx
or ecx, 8
mov rax, qword [rbx + 0x10]
mov qword [r10 + 0x10], rax
mov dword [r10 + 8], ecx
or dword [rbx + 8], 8
mov rax, qword [r10 + 0x30]
mov r9, qword [r10 + 0x38]
mov edx, dword [r10 + 0x44]
mov rcx, qword [r10 + 0x10]
mov qword [rsp + 0x20], rax
call fcn.1800435e0
mov r14, qword [rsp + 0x48]
mov r8d, eax
mov dword [rsp + 0x44], eax
jmp 0x18005aad1
mov r8, qword [rsp + 0x48]
movsxd rax, dword [r8 + 0xc]
test eax, eax
jle 0x18005c11b
imul rcx, rax, 0x38
mov dword [rcx + r11 + 0x10], edx
movsxd rax, dword [r8 + 0xc]
imul rcx, rax, 0x38
lea rax, [0x18016154b]
mov qword [rcx + r11 + 8], rax
movsxd rdx, dword [r8 + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rdx*8]
test rbx, rbx
je 0x18005c16e
test byte [rbx + 8], 8
jne 0x18005c16e
movsx eax, word [rbx + 0x48]
cmp dword [r8 + 8], eax
jg 0x18005c16e
mov edx, dword [rbx + 0x44]
xor eax, eax
mov rcx, qword [rbx + 0x10]
xor r8d, r8d
mov qword [rbx + 0x18], rax
mov dword [rbx + 0x20], eax
call fcn.18004ae40
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005bc0d
xor edx, edx
mov byte [rbx + 2], 1
jmp 0x1800594e1
mov r8d, dword [r8 + 8]
xor r9d, r9d
mov rcx, r13
call fcn.180058b70
mov rbx, rax
test rax, rax
je 0x18005b692
or dword [rax + 8], 1
lea r9, [rbx + 0x10]
mov rax, qword [rsp + 0x48]
mov r8, r12
mov dword [rsp + 0x28], 0x41e
xor edx, edx
movzx ecx, word [rax + 2]
or ecx, 5
mov dword [rsp + 0x20], ecx
mov rcx, qword [r12]
call fcn.180040800
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005bc0d
mov rcx, qword [rbx + 0x10]
lea edx, [rax + 1]
xor r8d, r8d
call fcn.180041ad0
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005c275
mov rax, qword [rsp + 0x48]
mov r14, qword [rax + 0x10]
mov qword [rbx + 0x38], r14
test r14, r14
je 0x18005c242
movzx r8d, word [rax + 2]
lea rdx, [rbx + 0x44]
mov rcx, qword [rbx + 0x10]
or r8d, 2
call fcn.18004aaf0
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005c23c
mov rax, qword [rbx + 0x30]
mov r9, r14
mov edx, dword [rbx + 0x44]
mov r8d, 4
mov rcx, qword [rbx + 0x10]
mov qword [rsp + 0x20], rax
call fcn.1800435e0
mov r8d, eax
mov dword [rsp + 0x44], eax
mov byte [rbx + 4], 0
jmp 0x18005c270
mov rax, qword [rbx + 0x30]
mov ecx, 1
mov dword [rbx + 0x44], ecx
mov edx, ecx
xor r9d, r9d
mov qword [rsp + 0x20], rax
lea r8d, [rcx + 3]
mov rcx, qword [rbx + 0x10]
call fcn.1800435e0
mov r8d, eax
mov dword [rsp + 0x44], eax
mov byte [rbx + 4], 1
mov rsi, qword [rsp + 0x78]
mov rax, qword [rsp + 0x48]
xor edx, edx
mov ecx, edx
cmp word [rax + 2], 8
mov eax, 4
cmovne ecx, eax
mov eax, dword [rbx + 8]
and eax, 0xfffffffb
or ecx, eax
mov dword [rbx + 8], ecx
test r8d, r8d
jne 0x18005f687
mov byte [rbx + 2], 1
jmp 0x1800594e1
mov rax, qword [rsp + 0x48]
mov r9b, 1
mov rcx, r13
mov r8d, dword [rax + 8]
mov edx, dword [rax + 4]
call fcn.180058b70
test rax, rax
je 0x18005b692
mov rdx, qword [rsp + 0x48]
mov r8, rax
mov rcx, qword [rdx + 0x10]
mov qword [rax + 0x38], rcx
mov rcx, r12
mov edx, dword [rdx + 0xc]
call fcn.1800615b0
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005bc0d
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov rax, qword [rsp + 0x48]
mov r14, qword [rsp + 0x48]
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
xor edx, edx
test rcx, rcx
je 0x18005eb76
jmp case.0x1800592bb.89
mov rax, qword [rsp + 0x48]
mov r9b, 3
mov rcx, r13
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 4]
call fcn.180058b70
test rax, rax
je 0x18005b692
mov rcx, qword [rsp + 0x48]
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
mov byte [rax + 2], 1
mov ecx, dword [rcx + 8]
mov dword [rax + 0x24], ecx
lea rcx, [0x180187fe1]
mov qword [rax + 0x30], rcx
mov byte [rax + 4], 1
jmp 0x18005aad1
mov rdx, qword [r13 + 0x78]
mov rcx, r13
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
mov rdx, qword [rdx + rax*8]
call fcn.180052120
mov rax, qword [rsp + 0x48]
xor edx, edx
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov qword [rax + rcx*8], rdx
jmp 0x1800594dc
mov rax, qword [r13 + 0x78]
mov r12d, edx
mov r8, qword [rsp + 0x48]
movsxd rcx, dword [r8 + 4]
mov r14, qword [rax + rcx*8]
cmp byte [r14 + 4], 0
mov word [r14 + 2], 0
mov dword [r14 + 0x20], edx
je 0x18005c4e0
movsxd rax, dword [r8 + 0xc]
imul rdi, rax, 0x38
add rdi, r11
movzx esi, word [rdi + 0x14]
movzx eax, sil
and al, 0x2e
cmp al, 2
jne 0x18005c3f9
xor edx, edx
mov rcx, rdi
call fcn.180058d00
mov rcx, rdi
call fcn.18004e510
movzx edx, word [rdi + 0x14]
mov r15, rax
mov word [rdi + 0x14], si
test dl, 0x24
jne 0x18005c4a8
test dl, 8
jne 0x18005c486
test dl, 1
jne 0x18005eb80
cmp ebx, 0x17
jae 0x18005eb80
mov rcx, qword [r14 + 0x30]
lea rdx, [rbp - 0x60]
call fcn.1800442a0
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005f560
xor edx, edx
cmp dword [rbp - 0x60], edx
jne 0x18005eb9b
mov r11, qword [rsp + 0x58]
test r12d, r12d
mov r12, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x50]
je 0x18005f14d
add qword [rsp + 0x48], 0x18
mov r14, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r15, qword [rsp + 0x68]
jmp case.0x1800592bb.89
movsd xmm1, qword [rdi]
mov rcx, r15
call fcn.180054350
test eax, eax
jle 0x18005c49f
test bl, 1
jne 0x18005c4a8
dec ebx
jmp 0x18005c4a8
jns 0x18005c4a8
test bl, 1
je 0x18005c4a8
inc ebx
mov rcx, qword [r14 + 0x30]
lea r9, [rbp - 0x60]
xor r8d, r8d
mov rdx, r15
call fcn.1800442c0
mov rsi, qword [rsp + 0x78]
mov r8d, eax
mov dword [rsp + 0x44], eax
mov qword [r14 + 0x50], r15
test eax, eax
jne 0x18005bc0d
mov r15, qword [rsp + 0x68]
lea edi, [rax + 1]
jmp 0x18005c564
mov rcx, qword [r14 + 0x30]
mov edx, 2
call fcn.18004cce0
mov rcx, qword [rsp + 0x48]
lea r8, [rbp - 0x60]
test eax, eax
mov edi, 1
mov rax, qword [r14 + 0x38]
mov edx, 0xffffffff
mov qword [rbp - 0x48], rax
cmovne r12d, edi
movzx eax, word [rcx + 0x10]
mov word [rbp - 0x2c], ax
lea eax, [rbx - 1]
test dil, al
mov byte [rbp - 0x26], 0
mov eax, edi
cmovne eax, edx
lea rdx, [rbp - 0x48]
mov byte [rbp - 0x2a], al
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x58]
mov qword [rbp - 0x40], rcx
mov rcx, qword [r14 + 0x30]
call fcn.180044540
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005bc0d
test r12d, r12d
je 0x18005c564
cmp byte [rbp - 0x26], al
je 0x18005c448
mov eax, dword [rbp - 0x60]
cmp ebx, 0x17
jl 0x18005c5c4
test eax, eax
js 0x18005c581
jne 0x18005c577
cmp ebx, 0x18
je 0x18005c581
xor edx, edx
mov dword [rbp - 0x60], edx
jmp 0x18005c453
xor eax, eax
xor edx, edx
mov dword [rbp - 0x60], eax
mov rcx, qword [r14 + 0x30]
call fcn.180044c70
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
je 0x18005c448
cmp eax, 0x65
jne 0x18005bc0d
mov r12, qword [rsp + 0x60]
xor edx, edx
mov r14, qword [rsp + 0x48]
mov r8d, edx
mov dword [rsp + 0x44], edx
mov dword [rbp - 0x60], edi
jmp 0x18005aba4
test eax, eax
jg 0x18005c5e5
jne 0x18005c5cf
cmp ebx, 0x15
je 0x18005c5e5
mov rcx, qword [r14 + 0x30]
call fcn.180044a00
mov r8d, dword [rsp + 0x44]
mov dword [rbp - 0x60], eax
jmp 0x18005c448
xor eax, eax
xor edx, edx
mov dword [rbp - 0x60], eax
mov rcx, qword [r14 + 0x30]
call fcn.180044e40
jmp 0x18005c591
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 0x1c]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
mov rcx, qword [rdi + 0x30]
call fcn.1800436b0
mov r14, qword [rsp + 0x48]
test eax, eax
je 0x18005f127
mov rax, qword [rdi + 0x38]
mov rcx, r14
mov qword [rbp - 0x48], rax
mov byte [rbp - 0x2a], 0
movzx eax, word [rcx + 0x28]
mov ebx, dword [rcx + 4]
mov word [rbp - 0x2c], ax
movsxd rax, dword [rcx + 0x24]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x58]
xor eax, eax
mov qword [rbp - 0x40], rcx
mov dword [rbp + 0xc], eax
nop
lea r9, [rbp + 0xc]
mov rdx, rdi
lea r8, [rbp - 0x48]
mov rcx, r12
call fcn.180055390
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005bc0d
mov eax, dword [rbp + 0xc]
test eax, eax
jle 0x18005c682
cmp word [r14 + 2], r8w
je 0x18005c6c3
test eax, eax
jns 0x18005eb74
test ebx, ebx
jle 0x18005f086
mov rcx, qword [rdi + 0x30]
xor edx, edx
dec ebx
call fcn.180044c70
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
je 0x18005c650
cmp eax, 0x65
jne 0x18005bc0d
xor edx, edx
mov r8d, edx
mov dword [rsp + 0x44], edx
add r14, 0x18
jmp 0x18005aba4
xor edx, edx
add r14, 0x18
jmp 0x18005aba4
mov rax, qword [rsp + 0x48]
mov r14, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rsp + 0x48]
movzx ecx, word [rdx + 0xc]
mov eax, dword [rax + 8]
cmp ecx, eax
jge 0x18005c6fd
mov word [rdx + 0xc], ax
jmp 0x18005aae1
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 0xc]
cmp ecx, eax
lea rcx, [0x180000000]
jle 0x18005aa73
mov word [rdx + 0xc], ax
xor edx, edx
mov r13, qword [rbp - 0x80]
add r14, 0x18
mov rsi, qword [rsp + 0x78]
jmp 0x180059285
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je case.0x1800592bb.9
cmp byte [rdx + 2], 0
je 0x1800593ea
jmp case.0x1800592bb.9
mov rax, qword [rsp + 0x48]
mov r14, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
movzx eax, word [rcx + 0xc]
cmp eax, dword [r14 + 0x10]
jge case.0x1800592bb.89
mov r8, qword [rsp + 0x48]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r8 + 4]
mov rbx, qword [rax + rcx*8]
movsxd rax, dword [r8 + 0xc]
imul rcx, rax, 0x38
movzx eax, word [r8 + 0x10]
add rcx, r11
mov word [rbp - 0x2c], ax
mov qword [rbp - 0x40], rcx
test ax, ax
je 0x18005c7d0
mov rax, qword [rbx + 0x38]
lea rsi, [rbx + 0x24]
mov qword [rbp - 0x48], rax
lea rdx, [rbp - 0x48]
mov byte [rbp - 0x2a], 0
mov r8, rsi
mov rcx, qword [rbx + 0x30]
call fcn.180044540
mov r8d, eax
mov dword [rsp + 0x44], eax
jmp 0x18005c844
mov eax, 0x400
test word [rcx + 0x14], ax
je 0x18005c7e8
call fcn.18004df80
test eax, eax
jne 0x18005b692
mov rcx, qword [rbx + 0x38]
call fcn.180053e60
mov rdi, rax
test rax, rax
je 0x18005b692
mov rcx, qword [rbp - 0x40]
mov r9, rax
mov r8, qword [rcx + 8]
mov edx, dword [rcx + 0x10]
mov rcx, qword [rbx + 0x38]
call fcn.180053ec0
mov byte [rdi + 0x1e], 0
lea rsi, [rbx + 0x24]
mov rcx, qword [rbx + 0x30]
mov r8, rsi
mov rdx, rdi
call fcn.180044540
mov r12, qword [rsp + 0x60]
mov rdx, rdi
mov rcx, r12
mov dword [rsp + 0x44], eax
call fcn.180028930
mov r8d, dword [rsp + 0x44]
test r8d, r8d
jne 0x18005f560
mov ecx, dword [rsi]
test ecx, ecx
mov byte [rbx + 3], r8b
setne al
xor edx, edx
mov byte [rbx + 2], al
mov rax, qword [rsp + 0x48]
mov dword [rbx + 0x20], edx
movzx eax, byte [rax]
cmp al, 0x1d
jne 0x18005c88e
mov r14, qword [rsp + 0x48]
test ecx, ecx
je 0x18005eb76
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp case.0x1800592bb.89
test ecx, ecx
jne 0x18005eb5b
cmp al, 0x1b
jne 0x18005c8d1
mov rcx, rdx
movzx edx, word [rbp - 0x2c]
test rdx, rdx
je 0x18005f081
mov rax, qword [rbp - 0x40]
add rax, 0x14
test byte [rax], 1
jne 0x18005eb6f
inc rcx
add rax, 0x38
cmp rcx, rdx
jl 0x18005c8b2
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
cmp al, 0x1a
jne 0x18005f092
movzx r9d, byte [rsp + 0x40]
mov rax, r14
movzx eax, word [rax + 0x10]
mov word [rbx + 0xc], ax
jmp case.0x1800592bb.89
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, r11
test byte [rcx + 0x14], 0x24
jne case.0x1800592bb.31
movups xmm0, xmmword [rcx]
movzx r8d, r9b
mov dl, 0x43
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rbp + 0x100], xmm0
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rbp + 0x110], xmm1
movsd xmm1, qword [rcx + 0x30]
lea rcx, [rbp + 0x100]
movups xmmword [rbp + 0x120], xmm0
movsd qword [rbp + 0x130], xmm1
call fcn.180058e70
xor edx, edx
test byte [rbp + 0x114], 4
je 0x18005eb56
mov rdi, qword [rbp + 0x100]
jmp 0x18005c97c
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov rdi, qword [rcx + r11]
mov rax, qword [rsp + 0x48]
lea r9, [rbp]
xor r8d, r8d
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rbx + 0x30]
mov dword [rbp], edx
mov rdx, rdi
call fcn.1800442c0
mov r14, qword [rsp + 0x48]
xor edx, edx
mov dword [rbx + 0x20], edx
mov r8d, eax
mov qword [rbx + 0x50], rdi
mov word [rbx + 2], 0
mov dword [rsp + 0x44], eax
mov eax, dword [rbp]
mov dword [rbx + 0x24], eax
cmp dword [rbp], edx
je 0x18005c9e6
cmp dword [r14 + 8], edx
jne 0x18005eb76
mov ecx, 0x17548
call fcn.1800e5430
mov r8d, eax
mov dword [rsp + 0x44], eax
xor edx, edx
test r8d, r8d
jne 0x18005bc0d
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp case.0x1800592bb.89
mov rdx, qword [rsp + 0x48]
mov rcx, r13
call fcn.180059090
mov rcx, qword [r13 + 0x78]
mov r8, qword [rsp + 0x48]
mov r14, qword [rsp + 0x48]
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 r8d, dword [rsp + 0x44]
mov rdx, qword [rax + rcx*8]
inc qword [rdx + 0x18]
jmp 0x18005aad1
mov rbx, qword [rsp + 0x48]
mov rcx, r13
mov qword [rbp - 0x70], rdx
mov dword [rbp - 0x78], edx
mov rdx, rbx
call fcn.180059090
movsxd rdx, dword [rbx + 4]
mov rsi, rax
mov rcx, qword [r13 + 0x78]
mov rdi, qword [rcx + rdx*8]
test byte [rdi + 8], 2
jne 0x18005ca9e
mov rcx, qword [rdi + 0x30]
lea rdx, [rbp - 0x78]
call fcn.1800442a0
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005f560
cmp dword [rbp - 0x78], eax
je 0x18005cae6
mov eax, 1
mov qword [rbp - 0x70], rax
movabs r14, 0x7fffffffffffffff
movsxd rdx, dword [rbx + 0xc]
test edx, edx
je 0x18005cb49
mov rcx, qword [r13 + 0x108]
test rcx, rcx
je 0x18005cb11
mov rax, qword [rcx + 8]
test rax, rax
je 0x18005cadc
nop dword [rax]
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x18005cad0
imul rbx, rdx, 0x38
add rbx, qword [rcx + 0x18]
jmp 0x18005cb1a
mov rcx, qword [rdi + 0x30]
call fcn.1800436c0
movabs r14, 0x7fffffffffffffff
mov qword [rbp - 0x70], rax
cmp rax, r14
jl 0x18005cb08
or dword [rdi + 8], 2
jmp 0x18005caa8
inc rax
mov qword [rbp - 0x70], rax
jmp 0x18005caa8
imul rbx, rdx, 0x38
add rbx, qword [rsp + 0x58]
mov rcx, rbx
call fcn.18004e600
mov rax, qword [rbx]
cmp rax, r14
je 0x18005cbaf
test byte [rdi + 8], 2
jne 0x18005cbaf
mov rcx, qword [rbp - 0x70]
inc rax
cmp rcx, rax
cmovl rcx, rax
mov qword [rbp - 0x70], rcx
mov qword [rbx], rcx
test byte [rdi + 8], 2
je 0x18005cbc4
xor eax, eax
mov r14d, 8
mov ebx, eax
nop dword [rax]
lea rdx, [rbp - 0x70]
mov ecx, r14d
call fcn.18002bc70
mov rdx, qword [rbp - 0x70]
lea r9, [rbp - 0x78]
movabs rax, 0x3fffffffffffffff
xor r8d, r8d
and rdx, rax
inc rdx
mov qword [rbp - 0x70], rdx
mov rcx, qword [rdi + 0x30]
call fcn.1800442c0
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005f560
cmp dword [rbp - 0x78], eax
jne 0x18005cbc9
inc ebx
cmp ebx, 0x64
jl 0x18005cb60
mov rsi, qword [rsp + 0x78]
mov r8d, 0xd
mov dword [rsp + 0x44], r8d
jmp 0x18005bc0d
mov r8d, dword [rsp + 0x44]
mov byte [rdi + 3], 0
xor edx, edx
mov dword [rdi + 0x20], edx
mov rax, qword [rbp - 0x70]
mov qword [rsi], rax
jmp 0x1800594e1
mov r8, qword [rsp + 0x48]
mov r9, qword [rsp + 0x48]
movsxd rax, dword [r8 + 8]
movsxd rcx, dword [r8 + 4]
imul rdx, rax, 0x38
mov rax, qword [r13 + 0x78]
add rdx, r11
mov rbx, qword [rax + rcx*8]
movsxd rax, dword [r8 + 0xc]
imul rcx, rax, 0x38
cmp byte [r9 + 1], 0xfb
mov r8, qword [rcx + r11]
mov qword [rbp - 0x40], r8
jne 0x18005cc3c
cmp qword [r12 + 0x140], 0
je 0x18005cc3c
movsx rcx, byte [rbx + 1]
mov rax, qword [r12 + 0x20]
mov rdi, qword [r9 + 0x10]
shl rcx, 5
xor r10d, r10d
mov rsi, qword [rcx + rax]
jmp 0x18005cc45
xor r10d, r10d
mov edi, r10d
mov esi, r10d
movzx ecx, word [r9 + 2]
test cl, 1
je 0x18005cc69
inc qword [r13 + 0x38]
movzx eax, word [r9 + 2]
movzx ecx, ax
test al, 0x20
je 0x18005cc69
mov qword [r12 + 0x38], r8
movzx ecx, word [r9 + 2]
mov rax, qword [rdx + 8]
mov qword [rbp - 0x38], rax
mov eax, dword [rdx + 0x10]
mov dword [rbp - 0x24], eax
test cl, 0x10
je 0x18005cc82
mov r9d, dword [rbx + 0x24]
jmp 0x18005cc85
mov r9d, r10d
mov eax, 0x400
test word [rdx + 0x14], ax
je 0x18005cc97
mov eax, dword [rdx]
mov dword [rbp - 0x20], eax
jmp 0x18005cc9b
mov dword [rbp - 0x20], r10d
movzx r8d, cx
lea rdx, [rbp - 0x48]
mov qword [rbp - 0x48], r10
and r8d, 0x8a
mov rcx, qword [rbx + 0x30]
call fcn.180049490
xor edx, edx
mov dword [rsp + 0x44], eax
mov byte [rbx + 3], 0
mov r8d, eax
mov dword [rbx + 0x20], edx
test eax, eax
jne 0x18005f560
test rdi, rdi
je 0x18005f0cb
mov rax, qword [rsp + 0x48]
mov edx, 0x12
mov r9, qword [rdi]
mov r8, rsi
mov rcx, qword [r12 + 0x138]
test byte [rax + 2], 4
mov eax, 0x17
cmovne edx, eax
mov rax, qword [rbp - 0x40]
mov qword [rsp + 0x20], rax
call qword [r12 + 0x140]
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov r8, qword [rsp + 0x48]
mov rcx, qword [r13 + 0x78]
movsxd rax, dword [r8 + 4]
mov r9, qword [rcx + rax*8]
movsxd rax, dword [r8 + 8]
mov rdx, qword [rcx + rax*8]
movsxd rax, dword [r8 + 0xc]
test eax, eax
je 0x18005cd47
imul rcx, rax, 0x38
mov r8, qword [rcx + r11]
jmp 0x18005cd4c
xor eax, eax
mov r8d, eax
mov rdx, qword [rdx + 0x30]
mov rcx, qword [r9 + 0x30]
call fcn.180049a80
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005bc0d
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov r8, qword [rsp + 0x48]
mov rax, qword [r13 + 0x78]
cmp byte [r8 + 1], 0xfb
movsxd rcx, dword [r8 + 4]
mov r14d, dword [r8 + 8]
mov rbx, qword [rax + rcx*8]
jne 0x18005cdd0
cmp qword [r12 + 0x140], 0
je 0x18005cdd0
movsx rcx, byte [rbx + 1]
mov rax, qword [r12 + 0x20]
mov rdi, qword [r8 + 0x10]
shl rcx, 5
test byte [r8 + 2], 2
mov rsi, qword [rcx + rax]
je 0x18005cdd6
cmp byte [rbx + 4], 0
je 0x18005cdd6
mov rcx, qword [rbx + 0x30]
call fcn.1800436c0
mov r8, qword [rsp + 0x48]
mov qword [rbx + 0x50], rax
jmp 0x18005cdd6
mov rsi, rdx
mov rdi, rdx
movzx edx, byte [r8 + 2]
mov rcx, qword [rbx + 0x30]
call fcn.180049fd0
xor edx, edx
mov dword [rsp + 0x44], eax
mov qword [rbx + 0x20], rdx
mov r8d, eax
test eax, eax
jne 0x18005f560
test r14b, 1
je 0x18005f0cb
inc qword [r13 + 0x38]
mov r10, qword [r12 + 0x140]
test r10, r10
je 0x18005f0cb
test rdi, rdi
je 0x18005f0cb
test byte [rdi + 0x30], 0x80
jne 0x18005f0cb
mov rax, qword [rbx + 0x50]
mov r8, rsi
mov r9, qword [rdi]
mov edx, 9
mov rcx, qword [r12 + 0x138]
mov qword [rsp + 0x20], rax
call r10
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov rdx, qword [r13 + 0x38]
mov rcx, r12
call fcn.1800554b0
xor edx, edx
mov qword [r13 + 0x38], rdx
mov r8d, dword [rsp + 0x44]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp case.0x1800592bb.89
mov r8, qword [rsp + 0x48]
lea r9, [rbp + 8]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r8 + 4]
mov rcx, qword [rax + rcx*8]
movsxd rax, dword [r8 + 0xc]
mov r8d, dword [r8 + 0x10]
imul rdx, rax, 0x38
xor eax, eax
add rdx, r11
mov dword [rbp + 8], eax
call fcn.180063cd0
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005bc0d
mov r14, qword [rsp + 0x48]
xor edx, edx
cmp dword [rbp + 8], edx
jne 0x18005eb76
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp case.0x1800592bb.89
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 8]
movsxd rcx, dword [rcx + 4]
imul rdx, rax, 0x38
mov rax, qword [r13 + 0x78]
add rdx, r11
mov rcx, qword [rax + rcx*8]
call fcn.180063c00
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005bc0d
mov rax, qword [rsp + 0x48]
xor edx, edx
movsxd rcx, dword [rax + 0xc]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov dword [rcx + 0x20], edx
jmp 0x1800594e1
mov rdx, qword [rsp + 0x48]
mov rcx, r13
call fcn.180059090
mov rcx, qword [r13 + 0x78]
mov rbx, rax
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 4]
mov rdx, qword [rcx + rdx*8]
mov rdi, qword [rdx + 0x30]
mov rcx, rdi
call fcn.180043700
cmp eax, dword [r12 + 0x88]
ja 0x18005f6a3
mov r8, rbx
mov edx, eax
mov rcx, rdi
call fcn.18004f1d0
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005bc0d
mov r14, qword [rsp + 0x48]
cmp dword [r14 + 0xc], eax
jne 0x18005f086
mov eax, 0x4000
test word [rbx + 0x14], ax
je 0x18005f086
mov rcx, rbx
call fcn.18004df20
test eax, eax
jne 0x18005b692
jmp 0x18005aacc
mov rbx, qword [rsp + 0x48]
mov rcx, r13
mov rdx, rbx
call fcn.180059090
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 0x18005cff9
mov r8d, dword [rsp + 0x44]
mov eax, 1
mov r14, qword [rsp + 0x48]
mov word [rdi + 0x14], ax
jmp 0x18005aad1
cmp byte [rbx + 3], 0
je 0x18005d019
mov rax, qword [rbx + 0x50]
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
mov qword [rbp + 0x20], rax
mov qword [rdi], rax
jmp 0x18005aad1
cmp byte [rbx], 2
jne 0x18005d062
mov rcx, qword [rbx + 0x30]
lea rdx, [rbp + 0x20]
mov rbx, qword [rcx]
mov rax, qword [rbx]
call qword [rax + 0x60]
mov rdx, rbx
mov rcx, r13
mov dword [rsp + 0x44], eax
call fcn.180055650
mov r8d, dword [rsp + 0x44]
test r8d, r8d
jne 0x18005bc0d
mov rax, qword [rbp + 0x20]
mov r12, qword [rsp + 0x60]
mov r14, qword [rsp + 0x48]
mov qword [rdi], rax
jmp 0x18005aad1
mov rcx, rbx
call fcn.180053c20
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005bc0d
cmp byte [rbx + 2], al
je 0x18005d091
mov r14, qword [rsp + 0x48]
mov eax, 1
mov word [rdi + 0x14], ax
jmp 0x18005aad1
mov rcx, qword [rbx + 0x30]
call fcn.1800436c0
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
mov qword [rbp + 0x20], rax
mov qword [rdi], rax
jmp 0x18005aad1
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rax, qword [rax + rdx*8]
test rax, rax
jne 0x18005d0f8
mov r9b, 3
lea r8d, [rax + 1]
mov rcx, r13
call fcn.180058b70
test rax, rax
je 0x18005b692
xor edx, edx
mov byte [rax + 4], 1
or dword [rax + 8], 8
lea rcx, [0x180187fe1]
mov dword [rax + 0x24], edx
mov qword [rax + 0x30], rcx
jmp 0x18005d0fa
xor edx, edx
cmp byte [rax], 0
mov byte [rax + 2], 1
mov dword [rax + 0x20], edx
jne 0x18005f0c6
mov rcx, qword [rax + 0x30]
call fcn.18003ec60
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
mov rsi, qword [rdi + 0x30]
mov dword [rbp - 0x18], edx
cmp bl, 0x89
jne 0x18005d156
mov rcx, rsi
mov dword [rdi + 0x24], 0xffffffff
call fcn.1800436b0
test eax, eax
jne 0x18005f07c
lea rdx, [rbp - 0x18]
mov rcx, rsi
call fcn.1800442a0
mov r8d, eax
mov dword [rsp + 0x44], eax
movzx eax, byte [rbp - 0x18]
xor edx, edx
mov byte [rdi + 2], al
mov byte [rdi + 3], 0
mov dword [rdi + 0x20], edx
test r8d, r8d
jne 0x18005f560
mov r14, qword [rsp + 0x48]
cmp dword [r14 + 8], edx
jle 0x18005f0d0
cmp dword [rbp - 0x18], edx
jne 0x18005eb76
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp case.0x1800592bb.89
mov rax, qword [rsp + 0x48]
lea rdx, [rbp - 0x14]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rbx, qword [rcx + 0x30]
mov rcx, rbx
call fcn.180044160
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005bc0d
cmp dword [rbp - 0x14], eax
jne 0x18005eb6f
mov rcx, rbx
call fcn.180044a10
test rax, rax
js 0x18005d218
mov rcx, rax
call fcn.18002da60
mov r14, qword [rsp + 0x48]
movsx ecx, ax
cmp ecx, dword [r14 + 0xc]
jge 0x18005d21d
mov eax, 1
mov dword [rbp - 0x14], eax
jmp 0x18005ab9d
mov r14, qword [rsp + 0x48]
mov r8d, dword [rsp + 0x44]
xor edx, edx
cmp dword [rbp - 0x14], edx
jne 0x18005eb76
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp case.0x1800592bb.89
inc dword [r13 + 0xdc]
mov rax, qword [rsp + 0x48]
lea rdx, [rbp - 0x50]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
mov eax, 1
mov dword [rbp - 0x50], eax
cmp byte [rbx], al
jne 0x18005d276
mov rcx, rbx
call fcn.180063a80
xor edx, edx
jmp 0x18005d288
mov rcx, qword [rbx + 0x30]
call fcn.180044160
xor edx, edx
mov byte [rbx + 3], 0
mov dword [rbx + 0x20], edx
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005bc0d
mov r14, qword [rsp + 0x48]
movzx eax, byte [rbp - 0x50]
mov byte [rbx + 2], al
cmp dword [r14 + 8], r8d
jle 0x18005f0d0
cmp dword [rbp - 0x50], r8d
jne 0x18005eb76
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp case.0x1800592bb.89
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, r12
mov rdx, rbx
call fcn.180063b50
jmp 0x18005d328
mov r8, qword [rsp + 0x48]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r8 + 4]
mov edx, dword [r8 + 0xc]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rbx + 0x30]
call fcn.180044e40
jmp 0x18005d328
mov r8, qword [rsp + 0x48]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r8 + 4]
mov edx, dword [r8 + 0xc]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rbx + 0x30]
call fcn.180044c70
mov r8d, eax
mov dword [rsp + 0x44], eax
xor edx, edx
mov dword [rbx + 0x20], edx
test eax, eax
jne 0x18005d351
mov rax, qword [rsp + 0x48]
mov byte [rbx + 2], dl
movzx eax, word [rax + 2]
inc dword [r13 + rax*4 + 0xd4]
jmp case.0x1800592bb.9
cmp r8d, 0x65
jne 0x18005bc0d
mov r8d, edx
mov dword [rsp + 0x44], edx
mov byte [rbx + 2], 1
jmp 0x18005dc1c
mov r8, qword [rsp + 0x48]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r8 + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [r8 + 8]
imul rbx, rax, 0x38
add rbx, r11
test byte [r8 + 2], 1
je 0x18005d392
inc qword [r13 + 0x38]
mov eax, 0x400
test word [rbx + 0x14], ax
je 0x18005d3c0
mov rcx, rbx
call fcn.18004df80
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005bc0d
mov r8, qword [rsp + 0x48]
xor edx, edx
mov r11, qword [rsp + 0x58]
movsxd rax, dword [rbx + 0x10]
mov qword [rbp - 0x40], rax
mov rax, qword [rbx + 8]
mov qword [rbp - 0x48], rax
movsxd rax, dword [r8 + 0xc]
imul rcx, rax, 0x38
movzx eax, word [r8 + 0x10]
movzx r8d, word [r8 + 2]
add rcx, r11
mov qword [rbp - 0x30], rcx
mov word [rbp - 0x28], ax
test r8b, 0x10
je 0x18005d3f9
mov r9d, dword [rdi + 0x24]
jmp 0x18005d3fc
mov r9d, edx
mov rcx, qword [rdi + 0x30]
lea rdx, [rbp - 0x48]
and r8d, 0x8a
call fcn.180049490
xor edx, edx
mov dword [rsp + 0x44], eax
mov dword [rdi + 0x20], edx
mov r8d, eax
test eax, eax
jne 0x18005bc0d
jmp 0x1800594e1
mov r8, qword [rsp + 0x48]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r8 + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [r8 + 8]
imul rbx, rax, 0x38
mov eax, 0x400
add rbx, r11
test word [rbx + 0x14], ax
je 0x18005d467
mov rcx, rbx
call fcn.18004df80
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005bc0d
mov rdx, rbx
mov rcx, rdi
call fcn.1800629a0
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005bc0d
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov r8, qword [rsp + 0x48]
lea rdx, [rbp - 0x48]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r8 + 4]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x38]
mov rdi, qword [rbx + 0x30]
mov qword [rbp - 0x48], rax
movzx eax, word [r8 + 0xc]
mov word [rbp - 0x2c], ax
movsxd rax, dword [r8 + 8]
lea r8, [rbp + 0x10]
imul rcx, rax, 0x38
mov byte [rbp - 0x2a], 0
add rcx, r11
mov qword [rbp - 0x40], rcx
mov rcx, rdi
call fcn.180044540
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005bc0d
cmp dword [rbp + 0x10], eax
jne 0x18005d521
mov dl, 4
mov rcx, rdi
call fcn.180049fd0
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005bc0d
mov r14, qword [rsp + 0x48]
xor edx, edx
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov qword [rbx + 0x20], rdx
jmp case.0x1800592bb.89
mov r14, qword [rsp + 0x48]
cmp word [r14 + 2], 0
je 0x18005d543
mov rcx, r12
call fcn.18007f3c0
test eax, eax
je 0x18005f6c2
mov r8d, dword [rsp + 0x44]
mov r11, qword [rsp + 0x58]
xor edx, edx
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov qword [rbx + 0x20], rdx
jmp case.0x1800592bb.89
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, rbx
call fcn.180053c20
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005bc0d
cmp byte [rbx + 2], al
jne 0x18005d619
xor edi, edi
lea r8, [rbp + 0x28]
mov qword [rbp + 0x28], rdi
mov rcx, r12
mov rdx, qword [rbx + 0x30]
call fcn.180055160
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005bc0d
mov rax, qword [rsp + 0x48]
cmp byte [rax], 0x8d
jne 0x18005d5f8
movsxd rcx, dword [rax + 0xc]
mov rax, qword [r13 + 0x78]
mov r14, qword [rsp + 0x48]
mov rdx, qword [rax + rcx*8]
mov byte [rdx + 2], dil
mov rax, qword [rbp + 0x28]
mov qword [rdx + 0x50], rax
mov rax, qword [rsp + 0x48]
mov byte [rdx + 3], 1
mov dword [rdx + 0x20], edi
mov rax, qword [rax + 0x10]
mov qword [rdx + 0x10], rax
mov qword [rdx + 0x28], rbx
jmp 0x18005aad1
mov rdx, rax
mov rcx, r13
call fcn.180059090
mov rcx, qword [rbp + 0x28]
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
mov qword [rax], rcx
jmp 0x18005aad1
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x58]
call fcn.18004e960
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx + 3], 0
je 0x1800597f5
call fcn.180053b50
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005bc0d
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov r8, qword [rsp + 0x48]
cmp bl, 0x2a
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r8 + 4]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rdx + 0x38]
mov qword [rbp - 0x48], rax
movzx eax, word [r8 + 0x10]
mov word [rbp - 0x2c], ax
sbb al, al
mov byte [rbp - 0x2a], al
movsxd rax, dword [r8 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbp - 0x40], rcx
mov rdi, qword [rdx + 0x30]
mov rcx, rdi
call fcn.180043700
mov ebx, eax
test eax, eax
je 0x18005f6e4
cmp rbx, 0x7fffffff
ja 0x18005f6e4
xor r8d, r8d
lea rcx, [rbp + 0x138]
mov rdx, r12
call fcn.18004e940
lea r8, [rbp + 0x138]
mov edx, ebx
mov rcx, rdi
call fcn.18004f1d0
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005bc0d
mov rdx, qword [rbp + 0x140]
lea r8, [rbp - 0x48]
mov ecx, dword [rbp + 0x148]
xor r9d, r9d
call fcn.180054510
lea rcx, [rbp + 0x138]
mov ebx, eax
call fcn.18004e490
mov rcx, qword [rsp + 0x48]
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
movzx edx, byte [rcx]
lea ecx, [rbx + 1]
neg ebx
and dl, 1
cmovne ebx, ecx
xor edx, edx
test ebx, ebx
jg 0x18005eb76
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp case.0x1800592bb.89
mov rdx, qword [rsp + 0x48]
mov rcx, r13
call fcn.180059090
mov rbx, rax
mov eax, 1
mov word [rbx + 0x14], ax
mov ecx, dword [r12 + 0xe8]
inc ecx
cmp dword [r12 + 0xdc], ecx
jg 0x18005f6fa
mov rax, qword [rsp + 0x48]
xor r8d, r8d
mov rcx, qword [r12 + 0x20]
mov dword [rbp - 0x10], r8d
lea r8, [rbp - 0x10]
movsxd rdi, dword [rax + 0xc]
mov edx, dword [rax + 4]
mov r9, rdi
shl r9, 5
mov rcx, qword [r9 + rcx + 8]
call fcn.18004b390
mov r8d, eax
mov dword [rsp + 0x44], eax
mov eax, 4
mov word [rbx + 0x14], ax
movsxd rax, dword [rbp - 0x10]
mov qword [rbx], rax
test r8d, r8d
jne 0x18005bc0d
mov r8d, dword [rbp - 0x10]
test r8d, r8d
je 0x18005f07c
mov rax, qword [rsp + 0x48]
mov edx, edi
mov rcx, r12
mov r9d, dword [rax + 4]
call fcn.180083a50
mov r8d, dword [rsp + 0x44]
lea eax, [rdi + 1]
mov r14, qword [rsp + 0x48]
mov byte [rbp - 0x64], al
jmp 0x18005aad1
mov rcx, qword [r12 + 0x20]
lea r8, [rbp - 0x58]
mov rax, qword [rsp + 0x48]
mov r14, qword [rsp + 0x48]
mov qword [rbp - 0x58], rdx
movsxd rax, dword [rax + 8]
mov edx, dword [r14 + 4]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.18004ae40
cmp dword [r14 + 0xc], 0
mov r8d, eax
mov r11, qword [rsp + 0x58]
mov dword [rsp + 0x44], eax
je 0x18005d874
mov rdx, qword [rbp - 0x58]
add qword [r13 + 0x38], rdx
movsxd rax, dword [r14 + 0xc]
test eax, eax
jle 0x18005d874
imul rcx, rax, 0x38
add qword [rcx + r11], rdx
test r8d, r8d
jne 0x18005bc0d
jmp 0x18005aad6
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx], 1
jne 0x18005d8b3
mov rdx, qword [rcx + 0x30]
mov rcx, r12
call fcn.180061c00
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov rcx, qword [rcx + 0x30]
call fcn.18004af20
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005bc0d
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov rdx, qword [rsp + 0x48]
mov rcx, r13
call fcn.180059090
mov rbx, rax
lea rdx, [rbp + 4]
xor eax, eax
mov dword [rbp + 4], eax
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov r8d, dword [rax + 0xc]
shl rcx, 5
add rcx, qword [r12 + 0x20]
mov rcx, qword [rcx + 8]
call fcn.18004aaf0
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005bc0d
mov eax, dword [rbp + 4]
mov r14, qword [rsp + 0x48]
mov qword [rbx], rax
jmp 0x18005aad1
mov rax, qword [rsp + 0x48]
xor r9d, r9d
inc byte [r12 + 0x70]
xor r8d, r8d
mov qword [rsp + 0x20], rdx
mov rcx, r12
mov rdx, qword [rax + 0x10]
call fcn.18009c740
dec byte [r12 + 0x70]
mov r8d, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x18005bc0d
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov rax, qword [rsp + 0x48]
mov rcx, qword [r12 + 0x20]
cmp qword [rax + 0x10], 0
movsxd rbx, dword [rax + 4]
jne 0x18005d9cc
mov rax, rbx
shl rax, 5
mov rcx, qword [rax + rcx + 0x18]
call fcn.180089e90
mov rax, qword [rsp + 0x48]
lea r8, [r13 + 0xa8]
and dword [r12 + 0x2c], 0xffffffef
mov edx, ebx
mov rcx, r12
movzx r9d, word [rax + 2]
call fcn.1800a52b0
or dword [r12 + 0x2c], 1
mov r8d, eax
and dword [r13 + 0xc8], 0xfffffffc
mov dword [rsp + 0x44], eax
jmp 0x18005da9f
mov dword [rbp - 0x38], ebx
lea rax, [r13 + 0xa8]
mov qword [rbp - 0x48], r12
mov qword [rbp - 0x40], rax
mov dword [rbp - 0x30], edx
shl rbx, 5
mov rcx, qword [rbx + rcx + 8]
call fcn.180040490
mov r8, qword [r12 + 0x20]
lea r9, str.sqlite_master
mov dword [rbp - 0x28], eax
lea rdx, str.SELECTFROM__w_._s_WHERE__s_ORDER_BY_rowid
mov rax, qword [rsp + 0x48]
mov rcx, r12
mov r8, qword [rbx + r8]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x20], rax
call fcn.18002b680
mov rbx, rax
mov rcx, r12
test rax, rax
je 0x18005f71f
xor eax, eax
mov byte [r12 + 0xc5], 1
lea r9, [rbp - 0x48]
mov dword [rbp - 0x34], eax
lea r8, [fcn.1800a5060]
mov dword [rbp - 0x2c], eax
mov rdx, rbx
mov qword [rsp + 0x20], rax
call fcn.18009c740
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x18005da81
mov r12d, dword [rbp - 0x34]
mov dword [rsp + 0x44], r12d
test r12d, r12d
jne 0x18005da81
cmp dword [rbp - 0x2c], r12d
jne 0x18005da81
mov ecx, 0x17b44
call fcn.1800e5430
mov dword [rsp + 0x44], eax
mov r12, qword [rsp + 0x60]
mov rdx, rbx
mov rcx, r12
call fcn.180028930
mov r8d, dword [rsp + 0x44]
mov byte [r12 + 0xc5], 0
test r8d, r8d
je 0x180059a74
mov rcx, r12
call fcn.18007e710
mov r8d, dword [rsp + 0x44]
mov rdi, qword [rsp + 0x70]
cmp r8d, 7
je 0x18005b697
jmp 0x18005f7f9
mov rax, qword [rsp + 0x48]
mov rcx, r12
mov edx, dword [rax + 4]
call fcn.18007ba80
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005bc0d
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov rax, qword [rsp + 0x48]
mov rcx, r12
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.18007f070
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov rax, qword [rsp + 0x48]
mov rcx, r12
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.18007e380
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov rax, qword [rsp + 0x48]
mov rcx, r12
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.1800b8530
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov rcx, qword [rsp + 0x48]
lea r10, [rbp + 0x40]
mov r9, qword [rsp + 0x48]
mov rdx, qword [r12 + 0x20]
mov qword [rsp + 0x30], r10
lea r10, [rbp + 0x30]
movsxd rax, dword [rcx + 0xc]
mov r8, qword [rcx + 0x10]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 4]
add r8, 4
imul rbx, rax, 0x38
movzx eax, word [r9 + 2]
add rdi, r11
mov r9d, dword [r9 + 8]
add rbx, r11
shl rax, 5
mov qword [rsp + 0x28], r10
mov ecx, dword [rdi]
inc ecx
mov rdx, qword [rax + rdx + 8]
mov dword [rsp + 0x20], ecx
mov rcx, r12
call fcn.18004c3b0
mov rcx, rbx
mov dword [rsp + 0x44], eax
mov r12d, eax
call fcn.18004e960
mov eax, dword [rbp + 0x30]
test eax, eax
je 0x18005dc05
test r12d, r12d
jne 0x18005f729
dec eax
mov r9b, 1
movsxd rcx, eax
mov r8, 0xffffffffffffffff
sub qword [rdi], rcx
lea rax, [fcn.180028850]
mov rdx, qword [rbp + 0x40]
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.18004ed30
movzx edx, byte [rsp + 0x40]
mov rcx, rbx
call fcn.18004dcb0
mov r12, qword [rsp + 0x60]
mov r8d, dword [rsp + 0x44]
mov eax, dword [r12 + 0x198]
mov rsi, qword [rsp + 0x78]
test eax, eax
jne 0x18005fa01
mov rbx, qword [rsp + 0x70]
cmp rsi, rbx
jb 0x18005f081
nop
mov rdx, qword [r12 + 0x210]
test rdx, rdx
je 0x18005f07c
mov eax, dword [r12 + 0x220]
mov rcx, qword [r12 + 0x218]
add rbx, rax
mov qword [rsp + 0x70], rbx
call rdx
test eax, eax
jne 0x18005f7ec
cmp rsi, rbx
jae 0x18005dc40
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rdi, rax, 0x38
add rbx, r11
add rdi, r11
test byte [rbx + 0x14], 0x10
jne 0x18005dcb8
mov rcx, rbx
call fcn.18004eaa0
test eax, eax
jne 0x18005b692
mov rdx, qword [rdi]
mov rcx, qword [rbx + 8]
call fcn.1800352d0
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, r11
test byte [rbx + 0x14], 0x10
je 0x18005dd1a
mov rcx, qword [rbx + 8]
lea rdx, [rbp + 0x50]
call fcn.180035720
test eax, eax
je 0x18005dd1a
mov rax, qword [rsp + 0x48]
mov rdx, qword [rbp + 0x50]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x58]
call fcn.18004ea10
jmp 0x18005dc17
mov rcx, rbx
call fcn.18004e960
jmp 0x18005ed28
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
mov edi, dword [rcx + 0x10]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul rsi, rax, 0x38
add rbx, r11
add rsi, r11
test byte [rbx + 0x14], 0x10
jne 0x18005dd5b
mov rcx, rbx
call fcn.18004eaa0
test eax, eax
jne 0x18005b68d
test edi, edi
je 0x18005dd7d
mov r8, qword [rsi]
mov edx, edi
mov rcx, qword [rbx + 8]
call fcn.1800357a0
test eax, eax
jne 0x18005eb6a
test edi, edi
js 0x18005f07c
mov rdx, qword [rsi]
mov rcx, qword [rbx + 8]
call fcn.1800352d0
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 0xc]
mov r15, qword [rcx + 0x10]
imul r14, rax, 0x38
add r14, r11
cmp word [rcx + 2], 0
je 0x18005ddd6
mov rax, qword [r13 + 0x108]
mov rcx, qword [r15 + 0x20]
test rax, rax
je 0x18005ddd6
cmp qword [rax + 0x30], rcx
je 0x180059b70
mov rax, qword [rax + 8]
test rax, rax
jne 0x18005ddc3
mov eax, dword [r13 + 0x118]
cmp eax, dword [r12 + 0xb0]
jge 0x18005f73c
test byte [r14 + 0x14], 0x10
jne 0x18005df0a
mov edx, dword [r15 + 0x10]
mov ecx, dword [r15 + 0xc]
add ecx, edx
test edx, edx
lea edi, [rcx + 1]
cmovne edi, ecx
lea eax, [rdi + 2]
imul ecx, eax, 7
mov eax, dword [r15 + 8]
add ecx, edx
add eax, 7
jns 0x18005de1c
add eax, 7
sar eax, 3
lea ebx, [rax + rcx*8]
mov rcx, r12
movsxd rdx, ebx
call fcn.180028c50
mov rsi, rax
test rax, rax
je 0x18005b68d
mov rcx, r14
call fcn.18004e470
mov qword [r14 + 8], rsi
mov eax, 0x1010
mov word [r14 + 0x14], ax
lea rax, [0x1800515c0]
mov qword [r14 + 0x30], rax
movabs rax, 0x2aaaaaaaaaaaaaab
mov dword [r14 + 0x10], ebx
mov qword [rsi], r13
mov dword [rsi + 0x58], edi
mov ecx, dword [r15 + 0x10]
mov dword [rsi + 0x5c], ecx
mov rcx, qword [rsp + 0x48]
sub rcx, qword [rsp + 0x68]
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rsi + 0x4c], edx
xor edx, edx
mov rax, qword [r13 + 0x68]
mov qword [rsi + 0x18], rax
mov eax, dword [r13 + 0x24]
mov dword [rsi + 0x54], eax
mov rax, qword [r13 + 0x78]
mov qword [rsi + 0x20], rax
mov eax, dword [r13 + 0x28]
mov dword [rsi + 0x48], eax
mov rax, qword [r13 + 0x88]
mov qword [rsi + 0x10], rax
mov eax, dword [r13 + 0x90]
mov dword [rsi + 0x50], eax
mov rax, qword [r15 + 0x20]
mov qword [rsi + 0x30], rax
movsxd rax, edi
add rax, 2
imul rcx, rax, 0x38
lea rax, [rsi + 0x70]
add rcx, rsi
cmp rax, rcx
je 0x18005df01
nop word [rax + rax]
mov word [rax + 0x14], dx
mov qword [rax + 0x18], r12
add rax, 0x38
cmp rax, rcx
jne 0x18005def0
mov eax, dword [r13 + 0x118]
jmp 0x18005df0e
mov rsi, qword [r14 + 8]
inc eax
mov dword [r13 + 0x118], eax
mov rax, qword [r13 + 0x108]
mov qword [rsi + 8], rax
mov rax, qword [r12 + 0x38]
mov qword [rsi + 0x38], rax
mov rax, qword [r13 + 0x38]
mov qword [rsi + 0x60], rax
mov rax, qword [r13]
mov rcx, qword [rax + 0x78]
mov qword [rsi + 0x68], rcx
mov rax, qword [r13 + 0x128]
mov qword [rsi + 0x40], rax
mov qword [r13 + 0x128], rdx
mov qword [r13 + 0x38], rdx
lea rdx, [rsi + 0x70]
mov qword [r13 + 0x68], rdx
mov qword [r13 + 0x108], rsi
movsxd rcx, dword [rsi + 0x58]
mov dword [r13 + 0x24], ecx
movzx eax, word [rsi + 0x5c]
mov dword [r13 + 0x28], eax
mov qword [rsp + 0x58], rdx
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 + 0x28], 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 fcn.180131080
mov r14, qword [r15]
mov qword [r13 + 0x88], r14
mov eax, dword [r15 + 8]
mov r15, r14
mov dword [r13 + 0x90], eax
lea rax, [r14 - 0x18]
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x48], rax
jmp 0x18005dc17
mov rdx, qword [rsp + 0x48]
mov rcx, r13
call fcn.180059090
mov r9, qword [r13 + 0x108]
movsxd rcx, dword [r9 + 0x4c]
lea rdx, [rcx + rcx*2]
mov rcx, qword [r9 + 0x10]
mov r8d, dword [rcx + rdx*8 + 4]
mov rcx, qword [rsp + 0x48]
add r8d, dword [rcx + 4]
movsxd rcx, r8d
imul rdx, rcx, 0x38
mov rcx, rax
add rdx, qword [r9 + 0x18]
jmp 0x180059a64
mov eax, dword [r12 + 0x30]
bt rax, 0x13
mov rax, qword [rsp + 0x48]
mov r14, rax
jae 0x18005e03b
movsxd rax, dword [rax + 8]
add qword [r12 + 0x300], rax
jmp case.0x1800592bb.89
cmp dword [rax + 4], 0
lea rcx, [0x180000000]
movsxd rax, dword [rax + 8]
je 0x18005e066
add qword [r12 + 0x2f8], rax
mov r13, qword [rbp - 0x80]
add r14, 0x18
mov rsi, qword [rsp + 0x78]
jmp 0x180059285
add qword [r13 + 0x50], rax
mov r13, qword [rbp - 0x80]
add r14, 0x18
mov rsi, qword [rsp + 0x78]
jmp 0x180059285
cmp dword [r14 + 4], 0
je 0x18005e0a6
cmp qword [r12 + 0x2f8], 0
jne case.0x1800592bb.89
cmp qword [r12 + 0x300], 0
je 0x18005aba4
jmp case.0x1800592bb.89
cmp qword [r13 + 0x50], 0
jmp 0x18005e08c
mov rcx, qword [r13 + 0x108]
test rcx, rcx
je 0x18005e0e1
mov rax, qword [rcx + 8]
test rax, rax
je 0x18005e0ce
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x18005e0c2
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, qword [rcx + 0x18]
jmp 0x18005e0f1
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, r11
mov rcx, rdi
call fcn.18004e600
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x58]
mov rcx, rbx
call fcn.18004e600
mov rax, qword [rbx]
xor edx, edx
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
cmp qword [rdi], rax
jge 0x18005f092
movzx r9d, byte [rsp + 0x40]
mov qword [rdi], rax
jmp case.0x1800592bb.89
mov rax, qword [rsp + 0x48]
mov r14, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rdx, qword [rcx + r11]
test rdx, rdx
jle 0x18005aae1
mov rax, r14
movsxd rax, dword [rax + 0xc]
sub rdx, rax
mov qword [rcx + r11], rdx
jmp 0x18005aba2
mov rcx, qword [rsp + 0x48]
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, r11
add rdi, r11
call fcn.180059090
mov rcx, qword [rbx]
mov rsi, rax
mov qword [rbp + 0x48], rcx
test rcx, rcx
jle 0x18005e1dc
mov rdx, qword [rdi]
lea rcx, [rbp + 0x48]
test rdx, rdx
mov eax, 0
cmovle rdx, rax
call fcn.18002d900
test eax, eax
jne 0x18005e1dc
mov rax, qword [rbp + 0x48]
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
mov qword [rsi], rax
jmp 0x18005aad1
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
mov qword [rsi], 0xffffffffffffffff
jmp 0x18005aad1
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r11]
test rax, rax
je 0x1800597f5
mov r14, qword [rsp + 0x48]
jle 0x18005aba4
dec rax
mov qword [rcx + r11], rax
jmp 0x18005aba4
mov rax, qword [rsp + 0x48]
movabs rbx, 0x8000000000000000
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r11]
cmp rax, rbx
jle 0x18005e24a
dec rax
mov qword [rcx + r11], rax
mov r14, qword [rsp + 0x48]
test rax, rax
je 0x18005aba4
jmp case.0x1800592bb.89
mov rax, qword [rsp + 0x48]
mov rcx, r12
movzx edi, word [rax + 2]
mov esi, edi
lea rdx, [rdi*8 + 0x68]
call fcn.180028ce0
mov rbx, rax
test rax, rax
je 0x18005b68d
xor r14d, r14d
add rsi, 6
mov rdx, r12
mov qword [rax + 0x10], r14
lea rcx, [rax + rsi*8]
lea r8d, [r14 + 1]
mov qword [rax], rcx
call fcn.18004e940
mov r8, qword [rsp + 0x48]
movabs rax, 0x2aaaaaaaaaaaaaab
mov rsi, qword [rsp + 0x78]
mov rcx, qword [r8 + 0x10]
mov qword [rbx + 8], rcx
mov rcx, r8
sub rcx, r15
mov qword [rbx + 0x18], r13
imul rcx
mov byte [rbx + 0x29], r14b
sar rdx, 2
mov rax, rdx
mov dword [rbx + 0x24], r14d
shr rax, 0x3f
add rdx, rax
mov byte [rbx + 0x2a], dil
movzx eax, byte [rsp + 0x40]
mov byte [rbx + 0x28], al
mov dword [rbx + 0x20], edx
mov word [r8], 0xf1a3
mov qword [r8 + 0x10], rbx
jmp 0x18005e301
mov r8, qword [rsp + 0x48]
movsxd rax, dword [r8 + 0xc]
mov rbx, qword [r8 + 0x10]
mov rdi, qword [rsp + 0x58]
imul r10, rax, 0x38
add r10, rdi
cmp qword [rbx + 0x10], r10
je 0x18005e367
movzx eax, byte [rbx + 0x2a]
mov edx, eax
mov qword [rbx + 0x10], r10
sub rdx, 1
lea r9d, [rax - 1]
js 0x18005e367
mov r12, qword [rsp + 0x48]
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, rdi
sub rdx, 1
mov qword [r8 + 8], rcx
jns 0x18005e340
mov r12, qword [rsp + 0x60]
inc dword [r10 + 0x10]
lea r8, [rbx + 0x30]
mov rcx, qword [rsp + 0x48]
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x2a]
cmp dword [rcx + 4], 0
mov rcx, rbx
je 0x18005e38a
call qword [rax + 0x30]
jmp 0x18005e38d
call qword [rax + 0x18]
mov eax, dword [rbx + 0x24]
test eax, eax
je 0x18005f0a2
jle 0x18005e3c2
mov rcx, qword [rbx]
call fcn.180055be0
mov r8, rax
lea rdx, [0x1801639c8]
mov rcx, r13
call fcn.18004fa90
mov r12d, dword [rbx + 0x24]
mov dword [rsp + 0x44], r12d
mov r12, qword [rsp + 0x60]
cmp byte [rbx + 0x29], 0
je 0x18005e3ea
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax - 0x14]
test eax, eax
je 0x18005e3e6
imul rcx, rax, 0x38
mov edx, 1
add rcx, rdi
call fcn.18004ea10
mov byte [rbx + 0x29], 0
mov rcx, qword [rbx]
call fcn.18004e470
mov rax, qword [rbx]
xor edx, edx
mov r8d, dword [rsp + 0x44]
mov ecx, 1
mov word [rax + 0x14], cx
mov dword [rbx + 0x24], edx
test r8d, r8d
jne 0x18005fa14
mov r14, qword [rsp + 0x48]
mov r11, rdi
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp case.0x1800592bb.89
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
mov rcx, qword [rcx + 0x10]
add rbx, r11
test eax, eax
je 0x18005e472
imul rdx, rax, 0x38
mov r8, rcx
mov rcx, rbx
add rdx, r11
call fcn.18004e2d0
mov r12d, eax
mov dword [rsp + 0x44], eax
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x58]
jmp 0x18005e484
mov rdx, rcx
mov rcx, rbx
call fcn.18004e1c0
mov r12d, eax
mov dword [rsp + 0x44], eax
mov rcx, rbx
test r12d, r12d
jne 0x18005f768
movzx edx, byte [rsp + 0x40]
call fcn.18004dcb0
mov r8d, dword [rsp + 0x44]
mov r12, qword [rsp + 0x60]
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov rbx, qword [rsp + 0x48]
lea rax, [rbp + 0x178]
mov dword [rbp + 0x170], edx
lea r9, [rbp + 0x174]
mov rcx, r12
mov qword [rbp + 0x174], 0xffffffffffffffff
mov qword [rsp + 0x20], rax
mov r8d, dword [rbx + 8]
mov edx, dword [rbx + 4]
call fcn.1800e3890
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
je 0x18005e510
cmp eax, 5
jne 0x18005bc0d
mov r12, qword [rsp + 0x60]
xor eax, eax
mov dword [rsp + 0x44], eax
mov eax, 1
mov dword [rbp + 0x170], eax
movsxd rax, dword [rbx + 0xc]
imul rdi, rax, 0x38
add rdi, qword [rsp + 0x58]
xor eax, eax
mov ebx, eax
nop dword [rax]
nop word [rax + rax]
movsxd rdx, dword [rbp + rbx*4 + 0x170]
mov rcx, rdi
call fcn.18004ea10
inc rbx
add rdi, 0x38
cmp rbx, 3
jl 0x18005e530
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov rdx, qword [rsp + 0x48]
mov rcx, r13
call fcn.180059090
mov rcx, qword [r12 + 0x20]
mov r15, rax
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 4]
mov ebx, dword [rax + 0xc]
shl rdx, 5
mov r14, qword [rdx + rcx + 8]
mov rcx, r14
call fcn.18004b680
mov rcx, rax
mov rsi, rax
call fcn.18003b0b0
cmp ebx, 0xffffffff
mov rcx, rsi
mov edi, eax
cmove ebx, eax
call fcn.18003b0c0
test eax, eax
mov edx, 1
mov rcx, rsi
cmove ebx, edi
call fcn.18003ac20
cmp ebx, 5
jne 0x18005e63b
mov rcx, rax
call fcn.18002c4d0
test eax, eax
je 0x18005e5d8
mov rcx, rsi
call fcn.18003b0e0
test eax, eax
jne 0x18005e63b
mov ebx, edi
mov r12d, dword [rsp + 0x44]
test r12d, r12d
je 0x18005e5e6
mov ebx, edi
mov edx, ebx
mov rcx, rsi
call fcn.18003af20
mov ecx, 0x2202
mov word [r15 + 0x14], cx
mov ecx, eax
call fcn.18009d9b0
mov rcx, rax
mov qword [r15 + 8], rax
call fcn.18002c4d0
movzx edx, byte [rsp + 0x40]
mov rcx, r15
mov dword [r15 + 0x10], eax
mov byte [r15 + 0x16], 1
call fcn.18004dcb0
mov r8d, dword [rsp + 0x44]
test r8d, r8d
jne 0x18005f560
mov r12, qword [rsp + 0x60]
jmp 0x180059b4d
cmp ebx, edi
je 0x18005e5da
cmp edi, 5
je 0x18005e649
cmp ebx, 5
jne 0x18005e5da
cmp byte [r12 + 0x65], 0
je 0x18005f789
cmp dword [r12 + 0xdc], 1
jg 0x18005f789
cmp edi, 5
jne 0x18005e68c
mov rdx, r12
mov rcx, rsi
call fcn.18003b430
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x18005e5e4
mov edx, ebx
mov rcx, rsi
call fcn.18003af20
jmp 0x18005e6a7
cmp edi, 4
jne 0x18005e69c
lea edx, [rdi - 2]
mov rcx, rsi
call fcn.18003af20
cmp dword [rsp + 0x44], 0
jne 0x18005e5e4
xor eax, eax
mov rcx, r14
mov edx, eax
cmp ebx, 5
sete dl
inc edx
call fcn.18004cbe0
mov r12d, eax
mov dword [rsp + 0x44], eax
jmp 0x18005e5df
mov r8, qword [rsp + 0x48]
movsxd rax, dword [r8 + 8]
test eax, eax
je 0x18005e6dd
imul r9, rax, 0x38
add r9, r11
jmp 0x18005e6e0
mov r9, rdx
mov r8d, dword [r8 + 4]
lea rcx, [r13 + 0xa8]
mov rdx, r12
call fcn.1800be680
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005bc0d
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 8]
call fcn.180042940
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
je 0x18005f081
cmp eax, 0x65
jne 0x18005bc0d
mov r14, qword [rsp + 0x48]
xor edx, edx
mov r8d, edx
mov dword [rsp + 0x44], edx
jmp 0x18005aba4
mov rax, qword [rsp + 0x48]
cmp dword [rax + 4], 0
jne 0x18005e778
mov edx, dword [rax + 8]
mov rcx, r12
call fcn.1800554c0
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov eax, dword [rax + 8]
mov r14, qword [rsp + 0x48]
inc eax
xor eax, dword [r13 + 0xc8]
and eax, 3
xor dword [r13 + 0xc8], eax
jmp case.0x1800592bb.89
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rcx, qword [rcx + 0x30]
call fcn.1800436e0
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rcx, qword [rcx + 0x30]
call fcn.1800436f0
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov rax, qword [rsp + 0x48]
movzx r8d, byte [rax + 0xc]
test r8b, r8b
jne 0x18005e80e
mov eax, dword [r12 + 0x30]
bt rax, 0xa
jb 0x180059ad2
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
mov rcx, qword [r12 + 0x20]
mov r14, qword [rsp + 0x48]
shl rax, 5
mov edx, dword [r14 + 8]
mov rcx, qword [rax + rcx + 8]
call fcn.18004c9f0
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
je 0x18005aad1
cmp al, 6
jne 0x18005bc0d
mov r8, qword [r14 + 0x10]
lea rdx, str.database_table_is_locked:__s
mov rcx, r13
call fcn.18004fa90
mov r8d, dword [rsp + 0x44]
jmp 0x18005bc0d
mov rax, qword [rsp + 0x48]
mov rcx, r12
mov rbx, qword [rax + 0x10]
mov rdx, rbx
call fcn.1800c0800
mov dword [rsp + 0x44], eax
mov r8d, eax
test rbx, rbx
je 0x18005e893
mov rdx, qword [rbx + 0x10]
mov rcx, r13
call fcn.180055650
mov r8d, dword [rsp + 0x44]
test r8d, r8d
jne 0x18005bc0d
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov rax, qword [rsp + 0x48]
lea rcx, [rbp + 0xc8]
mov qword [rbp + 0xc8], rdx
xorps xmm0, xmm0
mov qword [rbp + 0xf8], rdx
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xd0], xmm0
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
movdqu xmmword [rbp + 0xe8], xmm1
mov qword [rbp + 0xe0], r12
add rdx, r11
call fcn.18004ec60
lea rcx, [rbp + 0xc8]
mov dword [rsp + 0x44], eax
call fcn.180055be0
test rax, rax
je 0x18005e922
mov rcx, qword [rsp + 0x60]
lea r9, [r13 + 0xa8]
mov r8, rax
mov rax, qword [rsp + 0x48]
mov edx, dword [rax + 4]
call fcn.1800c00f0
mov dword [rsp + 0x44], eax
lea rcx, [rbp + 0xc8]
call fcn.18004e470
mov r8d, dword [rsp + 0x44]
test r8d, r8d
jne 0x18005bc0d
mov r12, qword [rsp + 0x60]
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov rax, qword [rsp + 0x48]
mov rcx, r12
inc dword [r12 + 0xe8]
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.1800c05b0
dec dword [r12 + 0xe8]
mov r8d, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x18005bc0d
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov rax, qword [rsp + 0x48]
mov qword [rbp - 0x70], rdx
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x18005f7dc
mov rdi, qword [rbx]
test rdi, rdi
je 0x18005f7dc
lea rdx, [rbp - 0x70]
mov rcx, rbx
call qword [rdi + 0x30]
mov rdx, rbx
mov rcx, r13
mov dword [rsp + 0x44], eax
call fcn.180055650
mov r8d, dword [rsp + 0x44]
test r8d, r8d
jne 0x18005bc0d
mov rax, qword [rbp - 0x70]
mov r9b, 2
mov rcx, r13
mov qword [rax], rbx
mov rax, qword [rsp + 0x48]
mov edx, dword [rax + 4]
call fcn.180058b70
mov rcx, qword [rbp - 0x70]
test rax, rax
je 0x18005f7cf
mov r12, qword [rsp + 0x60]
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
mov qword [rax + 0x30], rcx
inc dword [rbx + 8]
jmp 0x18005aad1
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
mov ecx, 0x10
call fcn.180028800
mov rbx, rax
test rax, rax
je 0x18005b692
mov rcx, qword [rdi + 0x30]
mov qword [rax], rcx
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 0xc]
imul rdx, rcx, 0x38
mov rcx, r13
add rdx, qword [rsp + 0x58]
mov qword [rbx + 8], rdx
mov rdx, rax
call fcn.180059090
mov ecx, 1
lea r9, [0x180056cb0]
lea r8, str.ValueList
mov rdx, rbx
mov word [rax + 0x14], cx
mov rcx, rax
call fcn.18004ea30
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov r12, qword [rsp + 0x48]
movsxd rax, dword [r12 + 0xc]
movsxd rcx, dword [r12 + 4]
imul rdx, rax, 0x38
mov rax, qword [r13 + 0x78]
add rdx, r11
movsxd r9, dword [rdx + 0x38]
lea r11, [rdx + 0x38]
mov r13, qword [rax + rcx*8]
mov rax, qword [rbp - 0x80]
mov edx, dword [rdx]
mov rsi, qword [r13 + 0x30]
mov rdi, qword [rax + 0x70]
xor eax, eax
mov r8d, eax
mov r15, qword [rsi]
mov r14, qword [r15]
test r9d, r9d
jle 0x18005eafa
mov r10d, 1
movsxd rax, r10d
inc r10d
imul rcx, rax, 0x38
add rcx, r11
mov qword [rdi + r8*8], rcx
inc r8
cmp r8, r9
jl 0x18005eae1
mov r8, qword [r12 + 0x10]
mov rcx, rsi
mov qword [rsp + 0x20], rdi
call qword [r14 + 0x40]
mov rcx, qword [rbp - 0x80]
mov rdx, r15
mov dword [rsp + 0x44], eax
call fcn.180055650
mov r8d, dword [rsp + 0x44]
test r8d, r8d
jne 0x18005bc04
mov rcx, rsi
call qword [r14 + 0x50]
mov byte [r13 + 2], 0
test eax, eax
je 0x18005f3a0
mov r8d, dword [rsp + 0x44]
mov r14, r12
mov r12, qword [rsp + 0x60]
xor edx, edx
mov r15, qword [rsp + 0x68]
jmp 0x18005aba4
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
mov r12, qword [rsp + 0x60]
jmp 0x18005aba4
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
xor edx, edx
mov r12, qword [rsp + 0x60]
jmp 0x18005aba4
mov r8d, dword [rsp + 0x44]
xor edx, edx
mov r15, qword [rsp + 0x68]
mov r14, qword [rsp + 0x48]
mov r12, qword [rsp + 0x60]
jmp 0x18005aba4
mov r14, qword [rsp + 0x48]
mov r15, qword [rsp + 0x68]
mov r12, qword [rsp + 0x60]
jmp 0x18005aba4
mov r8, qword [rsp + 0x48]
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, r11
cmp byte [rdi + 2], 0
je 0x18005ebe8
mov rcx, rbx
call fcn.18004e960
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov rax, qword [rdi + 0x30]
xorps xmm0, xmm0
mov rsi, qword [rax]
xor eax, eax
test byte [r8 + 2], 1
mov r14, qword [rsi]
movups xmmword [rbp + 0x90], xmm0
mov qword [rbp + 0x90], rbx
movups xmmword [rbp + 0xb0], xmm0
mov byte [rbp + 0xb8], r9b
movups xmmword [rbp + 0xa0], xmm0
mov qword [rbp + 0xc0], rax
je 0x18005ec40
mov rcx, rbx
call fcn.18004e960
mov r8, qword [rsp + 0x48]
xor eax, eax
mov dword [rbx], eax
mov eax, 0x401
jmp 0x18005ec50
movzx eax, word [rbx + 0x14]
mov ecx, 0xf241
and ax, cx
or ax, 1
mov word [rbx + 0x14], ax
lea rdx, [rbp + 0x90]
mov r8d, dword [r8 + 8]
mov rcx, qword [rdi + 0x30]
call qword [r14 + 0x58]
mov rdx, rsi
mov rcx, r13
mov dword [rsp + 0x44], eax
call fcn.180055650
cmp dword [rbp + 0xb4], 0
jle 0x18005eca5
mov rcx, rbx
call fcn.180055be0
mov r8, rax
lea rdx, [0x1801639c8]
mov rcx, r13
call fcn.18004fa90
mov r12d, dword [rbp + 0xb4]
mov dword [rsp + 0x44], r12d
movzx edx, byte [rsp + 0x40]
mov rcx, rbx
call fcn.18004dcb0
mov r8d, dword [rsp + 0x44]
test r8d, r8d
jne 0x18005f560
mov r12, qword [rsp + 0x60]
mov r14, qword [rsp + 0x48]
jmp 0x18005aad1
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
cmp byte [rdi + 2], 0
jne 0x1800597f5
mov rcx, qword [rdi + 0x30]
mov rbx, qword [rcx]
mov rsi, qword [rbx]
call qword [rsi + 0x48]
mov rdx, rbx
mov rcx, r13
mov dword [rsp + 0x44], eax
call fcn.180055650
mov r8d, dword [rsp + 0x44]
test r8d, r8d
jne 0x18005f560
mov rcx, qword [rdi + 0x30]
call qword [rsi + 0x50]
test eax, eax
jne 0x18005dc12
mov r12, qword [rsp + 0x60]
mov r8d, dword [rsp + 0x44]
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea rax, [r15 + rcx*8]
mov qword [rsp + 0x48], rax
jmp 0x18005dc1c
mov rcx, qword [rsp + 0x48]
mov edx, 1
mov edi, dword [r12 + 0x30]
or qword [r12 + 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, r11
mov rcx, rbx
call fcn.18004dcb0
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18005f560
mov rax, qword [rsi]
mov rcx, rsi
mov rdx, qword [rbx + 8]
call qword [rax + 0x98]
mov dword [rsp + 0x44], eax
test edi, edi
jne 0x18005edb8
mov rax, qword [rsp + 0x60]
and qword [rax + 0x30], 0xfffffffffbffffff
mov rdx, rsi
mov rcx, r13
call fcn.180055650
and dword [r13 + 0xc8], 0xfffffffc
jmp 0x18005ecb2
cmp byte [r12 + 0x67], 0
mov qword [rbp - 0x58], rdx
jne 0x18005b692
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x18005f7dc
mov r10, qword [rbx]
test r10, r10
je 0x18005f7dc
cmp qword [r10 + 0x68], 0
mov r14, qword [rsp + 0x48]
movsxd rdx, dword [r14 + 8]
je 0x18005aadc
movsxd rax, dword [r14 + 0xc]
movzx edi, byte [r12 + 0x6c]
mov r8, qword [r13 + 0x70]
imul rcx, rax, 0x38
xor eax, eax
add rcx, r11
test edx, edx
jle 0x18005ee50
nop dword [rax]
nop word [rax + rax]
mov qword [r8 + rax*8], rcx
add rcx, 0x38
inc rax
cmp rax, rdx
jl 0x18005ee40
movzx eax, byte [r14 + 2]
lea r9, [rbp - 0x58]
mov rcx, rbx
mov byte [r12 + 0x6c], al
call qword [r10 + 0x68]
mov r12, qword [rsp + 0x60]
mov rdx, rbx
mov rcx, r13
mov dword [rsp + 0x44], eax
mov byte [r12 + 0x6c], dil
call fcn.180055650
mov r8d, dword [rsp + 0x44]
test r8d, r8d
jne 0x18005eea9
cmp dword [r14 + 4], r8d
je 0x18005ee97
mov rax, qword [rbp - 0x58]
mov qword [r12 + 0x38], rax
inc qword [r13 + 0x38]
test r8d, r8d
jne 0x18005f828
jmp 0x18005aad1
cmp r8b, 0x13
jne 0x18005ee97
mov rax, qword [r14 + 0x10]
cmp byte [rax + 0x1c], 0
je 0x18005ee97
movzx ecx, word [r14 + 2]
cmp ecx, 4
jne 0x18005f813
mov r11, qword [rsp + 0x58]
xor edx, edx
movzx r9d, byte [rsp + 0x40]
mov r8d, edx
mov r10d, dword [rsp + 0x50]
mov dword [rsp + 0x44], edx
jmp case.0x1800592bb.89
mov rdx, qword [rsp + 0x48]
mov rcx, r13
call fcn.180059090
mov rcx, qword [r12 + 0x20]
mov rbx, rax
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 4]
shl rdx, 5
mov rcx, qword [rdx + rcx + 8]
call fcn.180040490
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
mov ecx, eax
mov qword [rbx], rcx
jmp 0x18005aad1
mov rdx, qword [rsp + 0x48]
mov rcx, r13
call fcn.180059090
mov r8, qword [rsp + 0x48]
mov rdi, rax
mov rcx, qword [r12 + 0x20]
xor eax, eax
movsxd rdx, dword [r8 + 4]
shl rdx, 5
mov rbx, qword [rdx + rcx + 8]
cmp dword [r8 + 0xc], eax
je 0x18005ef69
mov rcx, rbx
call fcn.180040490
mov rcx, qword [rsp + 0x48]
mov ecx, dword [rcx + 0xc]
cmp eax, ecx
cmovb eax, ecx
mov edx, eax
mov rcx, rbx
call fcn.180041510
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
mov eax, eax
mov qword [rdi], rax
jmp 0x18005aad1
mov rax, qword [rsp + 0x48]
mov rbx, qword [rax + 0x10]
movsxd rax, dword [rax + 0xc]
imul rdi, rax, 0x38
add rdi, r11
cmp qword [rbx], rdi
je 0x18005eff7
movzx eax, byte [rbx + 0x2a]
mov edx, eax
mov byte [rbx + 0x28], r9b
sub rdx, 1
mov qword [rbx + 0x18], r13
mov qword [rbx], rdi
lea r9d, [rax - 1]
js 0x18005eff7
mov r12, qword [rsp + 0x48]
lea r8, [rbx + 0x30]
lea r8, [r8 + rdx*8]
nop dword [rax + rax]
mov eax, dword [r12 + 8]
lea r8, [r8 - 8]
add eax, r9d
dec r9d
cdqe
imul rcx, rax, 0x38
add rcx, r11
sub rdx, 1
mov qword [r8 + 8], rcx
jns 0x18005efd0
mov r12, qword [rsp + 0x60]
mov eax, 0xf241
lea r8, [rbx + 0x30]
and word [rdi + 0x14], ax
mov rcx, rbx
or word [rdi + 0x14], 1
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x2a]
call qword [rax + 0x18]
mov eax, dword [rbx + 0x24]
test eax, eax
je 0x18005f07c
jle 0x18005f048
mov rcx, rdi
call fcn.180055be0
mov r8, rax
lea rdx, [0x1801639c8]
mov rcx, r13
call fcn.18004fa90
mov r12d, dword [rbx + 0x24]
mov dword [rsp + 0x44], r12d
mov r12, qword [rsp + 0x60]
mov rax, qword [rsp + 0x48]
lea rdx, [r13 + 0x128]
mov r8d, dword [rbx + 0x20]
mov rcx, r12
mov r9d, dword [rax + 4]
call fcn.1800536b0
mov r8d, dword [rsp + 0x44]
xor edx, edx
mov dword [rbx + 0x24], edx
test r8d, r8d
jne 0x18005bc0d
jmp 0x1800594e1
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
xor edx, edx
mov r10d, dword [rsp + 0x50]
movzx r9d, byte [rsp + 0x40]
mov r15, qword [rsp + 0x68]
jmp case.0x1800592bb.89
mov r8d, dword [rsp + 0x44]
mov r11, rdi
mov r14, qword [rsp + 0x48]
xor edx, edx
mov r10d, dword [rsp + 0x50]
movzx r9d, byte [rsp + 0x40]
mov r15, qword [rsp + 0x68]
jmp case.0x1800592bb.89
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
movzx r9d, byte [rsp + 0x40]
mov r15, qword [rsp + 0x68]
jmp case.0x1800592bb.89
mov r8d, dword [rsp + 0x44]
mov r12, qword [rsp + 0x60]
jmp 0x18005f081
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
mov r10d, dword [rsp + 0x50]
movzx r9d, byte [rsp + 0x40]
mov r15, qword [rsp + 0x68]
jmp case.0x1800592bb.89
movzx r9d, byte [rsp + 0x40]
xor edx, edx
mov r15, qword [rsp + 0x68]
jmp case.0x1800592bb.89
mov r8d, dword [rsp + 0x44]
jmp 0x18005f086
mov r8d, dword [rsp + 0x44]
xor edx, edx
mov r10d, dword [rsp + 0x50]
movzx r9d, byte [rsp + 0x40]
mov r15, qword [rsp + 0x68]
jmp case.0x1800592bb.89
mov r14, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r15, qword [rsp + 0x68]
jmp case.0x1800592bb.89
mov rax, qword [rsp + 0x48]
mov r14, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov eax, 0xf7ff
and word [rcx + r11 + 0x14], ax
jmp case.0x1800592bb.89
mov rcx, qword [rsp + 0x48]
mov rdx, rcx
movsxd rax, dword [rcx + 4]
mov rcx, r11
imul rbx, rax, 0x38
add rbx, r11
call fcn.1800590c0
movsxd rcx, dword [rbx + 0x10]
xor edx, edx
mov r14, qword [rsp + 0x48]
div rcx
mov rcx, qword [rbx + 8]
mov r8, rdx
and edx, 7
shr r8, 3
movsx eax, byte [r8 + rcx]
bts eax, edx
mov byte [r8 + rcx], al
mov r8d, dword [rsp + 0x44]
jmp 0x18005aad1
mov rcx, qword [rsp + 0x48]
mov rdx, rcx
movsxd rax, dword [rcx + 4]
mov rcx, r11
imul rbx, rax, 0x38
add rbx, r11
call fcn.1800590c0
movsxd rcx, dword [rbx + 0x10]
xor edx, edx
mov r14, qword [rsp + 0x48]
div rcx
mov rax, qword [rbx + 8]
mov rcx, rdx
shr rcx, 3
movsx r8d, byte [rcx + rax]
movzx eax, dl
and al, 7
movzx eax, al
bt r8d, eax
mov r8d, dword [rsp + 0x44]
jb 0x18005f229
inc dword [r13 + 0xf4]
jmp 0x18005aba2
inc dword [r13 + 0xf0]
jmp 0x18005aad1
movzx eax, byte [r12 + 0x6e]
test al, 0x41
je 0x18005f296
cmp byte [r13 + 0xc3], 0xfe
je 0x18005f296
mov rcx, qword [rsp + 0x48]
mov r9, qword [rcx + 0x10]
test r9, r9
jne 0x18005f263
mov r9, qword [r13 + 0xf8]
test r9, r9
je 0x18005f296
test al, 0x40
je 0x18005f30c
mov rdx, r9
mov rcx, r13
call fcn.180058630
mov rcx, qword [r12 + 0x100]
mov rdx, rax
mov rbx, rax
call qword [r12 + 0xf8]
mov rcx, rbx
call fcn.180028850
xor edx, edx
mov edi, 1
mov rax, qword [rsp + 0x48]
mov r14, qword [rsp + 0x48]
mov eax, dword [rax + 4]
cmp eax, dword [0x180182ef8]
jl 0x18005f2f5
cmp byte [r14], 0xb5
je 0x18005ce6b
cmp dword [r13 + 0x90], 1
mov edx, edi
jle 0x18005f2f1
mov eax, 0x18
xor r8d, r8d
nop
mov rcx, qword [r13 + 0x88]
cmp byte [rax + rcx], 0xf
jne 0x18005f2e2
mov dword [rax + rcx + 4], r8d
inc edx
add rax, 0x18
cmp edx, dword [r13 + 0x90]
jl 0x18005f2d0
xor edx, edx
mov eax, edx
mov r8d, dword [rsp + 0x44]
inc eax
mov dword [r14 + 4], eax
inc dword [r13 + 0xec]
jmp 0x18005aba4
cmp dword [r12 + 0xe4], 1
jle 0x18005f35b
mov r8, r9
lea rdx, str.____s
mov rcx, r12
call fcn.18002b680
mov rdx, qword [r12 + 0x100]
mov edi, 1
mov ecx, edi
mov r9, rax
mov r8, r13
mov rbx, rax
call qword [r12 + 0xf8]
mov rdx, rbx
mov rcx, r12
call fcn.180028990
xor edx, edx
jmp 0x18005f29b
mov rdx, qword [r12 + 0x100]
mov edi, 1
mov ecx, edi
mov r8, r13
call qword [r12 + 0xf8]
xor edx, edx
jmp 0x18005f29b
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
jmp 0x18005aba4
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
jmp 0x18005aae1
mov r12, qword [rsp + 0x60]
jmp 0x180059b48
mov ecx, dword [r8 + 4]
mov dword [r13 + 0x34], ecx
movzx eax, byte [r8 + 8]
mov byte [r13 + 0xc2], al
test ecx, ecx
je 0x18005f476
movzx eax, word [r8 + 2]
mov rcx, r13
test ax, ax
je 0x18005f41e
mov r8d, eax
lea rdx, str._s_constraint_failed
lea rax, [0x180000000]
mov r8, qword [rax + r8*8 + 0x158e40]
call fcn.18004fa90
mov rbx, qword [rsp + 0x48]
mov r9, qword [rbx + 0x10]
test r9, r9
je 0x18005f433
mov r8, qword [r13 + 0xa8]
lea rdx, str._z:__s
mov rcx, r12
call fcn.18002b680
mov qword [r13 + 0xa8], rax
jmp 0x18005f433
mov r8, qword [r8 + 0x10]
lea rdx, [0x1801639c8]
call fcn.18004fa90
mov rbx, qword [rsp + 0x48]
mov r9, qword [r13 + 0xf8]
mov rcx, rbx
sub rcx, r15
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov rax, qword [r13 + 0xa8]
mov ecx, dword [rbx + 4]
sar rdx, 2
mov r8, rdx
mov qword [rsp + 0x20], rax
shr r8, 0x3f
add r8, rdx
lea rdx, str.abort_at__d_in___s_:__s
call fcn.18002b870
mov rcx, r13
call fcn.180052fb0
mov rbx, qword [rsp + 0x60]
mov r12d, eax
mov rdi, qword [rsp + 0x70]
mov r15d, 1
mov r14, qword [rsp + 0x68]
cmp eax, 5
jne 0x18005f4a4
mov dword [r13 + 0x34], eax
jmp 0x18005fb40
cmp dword [r13 + 0x34], 0
mov r12d, 0x65
cmovne r12d, r15d
jmp 0x18005fb40
mov r12d, 0xb
lea rax, [0x180161dd4]
mov ecx, r12d
mov qword [rsp + 0x20], rax
mov r9d, 0x16c85
mov dword [rsp + 0x44], r12d
lea r8, str.database_corruption
lea rdx, str._s_at_line__d_of___.10s_
call fcn.18002b870
mov rsi, qword [rsp + 0x78]
mov r8d, r12d
mov r14, r15
jmp 0x18005bc12
lea r10, [0x180000000]
movsxd rax, esi
and edx, 0x3f
lea rcx, [rax + rax*2]
mov r9d, dword [r15 + rcx*8 + 8]
mov rax, qword [r15 + rcx*8]
mov rcx, r13
movzx r8d, byte [rdx + r10 + 0x160190]
lea rdx, str.cannot_store__s_value_in__s_column__s._s
shr r9d, 4
and r9d, 0xf
mov qword [rsp + 0x28], rax
mov rax, qword [r14]
dec r9d
mov r8, qword [r10 + r8*8 + 0x15ee10]
mov qword [rsp + 0x20], rax
mov r9, qword [r10 + r9*8 + 0x1851d0]
call fcn.18004fa90
mov r8d, 0xc13
mov dword [rsp + 0x44], r8d
mov rsi, qword [rsp + 0x78]
jmp 0x18005bc0d
lea rdx, str.cannot_open_savepoint___SQL_statements_in_progress
mov rcx, r13
call fcn.18004fa90
mov r8d, 5
mov dword [rsp + 0x44], r8d
jmp 0x18005bc0d
lea rdx, str.cannot_release_savepoint___SQL_statements_in_progress
mov rcx, r13
call fcn.18004fa90
mov rsi, qword [rsp + 0x78]
mov r8d, 5
mov dword [rsp + 0x44], r8d
jmp 0x18005bc0d
mov rsi, qword [rsp + 0x78]
mov rbx, r12
mov r14, qword [rsp + 0x68]
mov r13, rdi
mov byte [r12 + 0x65], 0
jmp 0x18005bc17
mov r14, qword [rsp + 0x68]
mov rcx, rbx
mov rsi, qword [rsp + 0x78]
sub rcx, r14
movabs rax, 0x2aaaaaaaaaaaaaab
mov r13, rdi
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rdi + 0x30], edx
mov byte [r12 + 0x65], 0
mov r12d, 5
mov dword [rdi + 0x34], r12d
jmp 0x18005fb2a
mov r8d, 0xb
bt rax, 0x14
cmovae edi, r8d
mov r8d, edi
mov dword [rsp + 0x44], edi
jmp 0x18005bc0d
mov rbx, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x70]
mov r14, qword [rsp + 0x68]
cmp r8b, 5
jne 0x18005f808
mov rcx, qword [rsp + 0x48]
movabs rax, 0x2aaaaaaaaaaaaaab
mov r12d, dword [rsp + 0x44]
sub rcx, r15
imul rcx
mov dword [r13 + 0x34], r8d
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [r13 + 0x30], edx
jmp 0x18005fb34
mov r8d, 0x204
mov dword [rsp + 0x44], r8d
jmp 0x18005bc0d
mov rcx, qword [rbx + 0x10]
call fcn.180041080
mov r8d, dword [rsp + 0x44]
jmp 0x18005bc0d
mov r13, qword [rbp - 0x80]
mov rsi, qword [rsp + 0x78]
lea rdx, str.string_or_blob_too_big
mov rcx, r13
call fcn.18004fa90
mov r8d, 0x12
mov dword [rsp + 0x44], r8d
jmp 0x18005bc0d
lea r8, str.index_corruption
mov edx, 0x1797b
mov ecx, 0x30b
call fcn.1800e5400
mov r8d, eax
mov dword [rsp + 0x44], eax
jmp 0x18005bc0d
mov ecx, 0x17a48
call fcn.1800e5430
mov r8d, eax
mov dword [rsp + 0x44], eax
jmp 0x18005bc0d
mov rbx, qword [rsp + 0x60]
mov r8d, 6
mov r14, qword [rsp + 0x68]
mov r15, rax
mov dword [rsp + 0x44], r8d
mov byte [r13 + 0xc2], 2
jmp 0x18005bc1d
call fcn.18007e710
jmp 0x18005b692
mov rcx, qword [rbp + 0x40]
call fcn.180028850
mov r8d, dword [rsp + 0x44]
jmp 0x18005bc0d
mov r15d, 1
lea rdx, str.too_many_levels_of_trigger_recursion
mov rcx, r13
mov dword [rsp + 0x44], r15d
call fcn.18004fa90
mov rbx, qword [rsp + 0x60]
mov r8d, r15d
mov r14, qword [rsp + 0x68]
jmp 0x18005bc1d
call fcn.180055be0
mov r8, rax
lea rdx, [0x1801639c8]
mov rcx, r13
call fcn.18004fa90
mov r8d, dword [rsp + 0x44]
jmp 0x18005bc0d
cmp ebx, 5
lea rax, str.into
lea r8, str.out_of
mov r15d, 1
cmove r8, rax
mov dword [rsp + 0x44], r15d
lea rdx, str.cannot_change__s_wal_mode_from_within_a_transaction
mov rcx, r13
call fcn.18004fa90
mov rbx, qword [rsp + 0x60]
mov r8d, r15d
mov rsi, qword [rsp + 0x78]
mov r14, qword [rsp + 0x68]
jmp 0x18005bc1d
call qword [rdi + 0x38]
mov r12, qword [rsp + 0x60]
jmp 0x18005b692
mov r8d, 6
mov dword [rsp + 0x44], r8d
jmp 0x18005bc0d
mov rdi, 0xffffffffffffffff
mov r8d, 9
mov rbx, qword [rsp + 0x60]
mov r14, qword [rsp + 0x68]
mov dword [rsp + 0x44], r8d
mov r15d, 1
jmp 0x18005bc22
movzx eax, cl
cmp ecx, 5
mov ecx, 2
cmove eax, ecx
mov byte [r13 + 0xc2], al
mov r14, qword [rsp + 0x68]
mov rbx, r12
jmp 0x18005bc17
mov eax, dword [r13 + 0x2c]
mov rbx, qword [rsp + 0x48]
add eax, 2
or eax, 1
mov dword [r13 + 0x2c], eax
movsxd rax, dword [rbx + 4]
imul rcx, rax, 0x38
add rcx, r11
mov qword [r13 + 0xa0], rcx
cmp byte [r12 + 0x67], 0
jne 0x18005b692
test byte [r12 + 0x6e], 4
je 0x18005f888
mov rdx, qword [r12 + 0x100]
xor r9d, r9d
mov r8, r13
lea ecx, [r9 + 4]
call qword [r12 + 0xf8]
mov rcx, rbx
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, r15
mov r12d, 0x64
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
inc edx
mov dword [r13 + 0x30], edx
jmp 0x18005fb25
mov rax, qword [rsp + 0x48]
mov ebx, dword [rax + 4]
mov ecx, dword [rax + 8]
movzx eax, byte [r12 + 0x65]
cmp ebx, eax
je 0x18005f9bb
test ecx, ecx
je 0x18005f8e8
mov edx, 0x204
mov rcx, r12
call fcn.1800e24a0
mov al, 1
jmp 0x18005f923
test ebx, ebx
je 0x18005f903
cmp dword [r12 + 0xe0], 0
jle 0x18005f903
lea rdx, str.cannot_commit_transaction___SQL_statements_in_progress
jmp 0x18005f571
mov edx, 1
mov rcx, r13
call fcn.180052f40
mov r12d, eax
test eax, eax
jne 0x18005fb25
mov r12, qword [rsp + 0x60]
movzx eax, bl
mov rcx, r13
mov byte [r12 + 0x65], al
call fcn.180052fb0
cmp eax, 5
jne 0x18005f98a
mov rcx, qword [rsp + 0x48]
movabs rax, 0x2aaaaaaaaaaaaaab
mov rdi, qword [rsp + 0x70]
sub rcx, r15
mov r14, qword [rsp + 0x68]
mov r15d, 1
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov eax, r15d
sub al, bl
mov dword [r13 + 0x30], edx
mov rbx, qword [rsp + 0x60]
mov byte [r12 + 0x65], al
mov r12d, 5
mov dword [r13 + 0x34], r12d
jmp 0x18005fb40
mov rcx, r12
call fcn.1800e1a90
cmp dword [r13 + 0x34], 0
mov r12d, 0x65
mov rbx, qword [rsp + 0x60]
mov r15d, 1
mov rdi, qword [rsp + 0x70]
cmovne r12d, r15d
mov r14, qword [rsp + 0x68]
jmp 0x18005fb40
test ebx, ebx
jne 0x18005f9c8
lea rdx, str.cannot_start_a_transaction_within_a_transaction
jmp 0x18005f9dc
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.18004fa90
mov rbx, qword [rsp + 0x60]
mov r15d, 1
mov r14, qword [rsp + 0x68]
mov r8d, r15d
mov dword [rsp + 0x44], r15d
jmp 0x18005bc1d
mov rdi, qword [rsp + 0x70]
jmp 0x18005f7f3
mov r13, qword [rbp - 0x80]
jmp 0x18005b692
mov rbx, qword [rsp + 0x60]
mov r15, rcx
mov r14, qword [rsp + 0x68]
jmp 0x18005bc1d
cmp r8d, 0x210a
jne 0x18005fa40
mov ecx, 0x182d7
call fcn.1800e5430
mov r8d, eax
mov dword [rsp + 0x44], eax
cmp qword [r13 + 0xa8], 0
jne 0x18005fa6d
cmp r8d, 0xc0a
je 0x18005fa6d
mov ecx, r8d
call fcn.1800e2600
mov r8, rax
lea rdx, [0x1801639c8]
mov rcx, r13
call fcn.18004fa90
mov r12d, dword [rsp + 0x44]
mov rcx, rbx
mov edx, r12d
mov dword [r13 + 0x34], r12d
call fcn.18002c580
mov rcx, qword [rsp + 0x48]
movabs rax, 0x2aaaaaaaaaaaaaab
mov r9, qword [r13 + 0xf8]
sub rcx, r14
imul rcx
mov rax, qword [r13 + 0xa8]
mov ecx, r12d
sar rdx, 2
mov r8, rdx
mov qword [rsp + 0x20], rax
shr r8, 0x3f
add r8, rdx
lea rdx, str.statement_aborts_at__d:___s___s
call fcn.18002b870
cmp byte [r13 + 0xc5], 2
jne 0x18005fad8
mov rcx, r13
call fcn.180052fb0
cmp r12d, 0xc0a
jne 0x18005faeb
mov rcx, rbx
call fcn.1800292b0
jmp 0x18005fb05
cmp r12d, 0xb
jne 0x18005fb05
cmp byte [rbx + 0x65], 0
jne 0x18005fb05
movabs rax, 0x200000000
or qword [rbx + 0x30], rax
movzx eax, byte [rbp - 0x64]
mov r12d, r15d
test al, al
je 0x18005fb40
lea edx, [rax - 1]
mov rcx, rbx
call fcn.18007e690
jmp 0x18005fb40
mov r13, rdi
mov rsi, qword [rsp + 0x78]
mov r14, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x70]
mov r15d, 1
nop word [rax + rax]
cmp rsi, rdi
jb 0x18005fb7e
mov rdx, qword [rbx + 0x210]
test rdx, rdx
je 0x18005fb7e
mov eax, dword [rbx + 0x220]
mov rcx, qword [rbx + 0x218]
add rdi, rax
call rdx
test eax, eax
je 0x18005fb40
mov r8d, 9
mov rdi, 0xffffffffffffffff
mov dword [rsp + 0x44], r8d
jmp 0x18005bc22
add dword [r13 + 0xe4], esi
cmp dword [r13 + 0xd0], 0
movaps xmm7, xmmword [rsp + 0x290]
movaps xmm6, xmmword [rsp + 0x2a0]
mov r15, qword [rsp + 0x2b0]
mov r14, qword [rsp + 0x2b8]
mov rdi, qword [rsp + 0x2f8]
mov rsi, qword [rsp + 0x2f0]
mov rbx, qword [rsp + 0x2e8]
je 0x18005fbcf
mov rcx, r13
call fcn.180051410
mov eax, r12d
mov rcx, qword [rbp + 0x180]
xor rcx, rsp
call fcn.18012f130
add rsp, 0x2c0
pop r13
pop r12
pop rbp
ret