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

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x338]
sub rsp, 0x410
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
mov rax, qword [0x1403cdfa8]
xor rax, rsp
mov qword [rbp + 0x2e0], rax
xor edx, edx
mov qword [rsp + 0x50], rcx
mov rax, rcx
mov dword [rsp + 0x34], edx
mov rcx, qword [rcx + 0x88]
mov r14d, edx
mov qword [rsp + 0x40], rcx
mov r12, rcx
mov rcx, rax
mov byte [rbp - 0x80], dl
mov r15, qword [rax]
mov ebx, edx
mov rsi, qword [rax + 0x68]
mov qword [rsp + 0x60], r15
mov dword [rsp + 0x70], edx
mov dil, byte [r15 + 0x64]
mov byte [rsp + 0x30], dil
mov qword [rbp - 0x10], rdx
mov qword [rsp + 0x58], rsi
call fcn.14027c838
xor r10d, r10d
cmp qword [r15 + 0x208], r10
je 0x14027c9c3
mov ecx, dword [r15 + 0x218]
xor edx, edx
mov rax, qword [rsp + 0x50]
mov eax, dword [rax + 0xe4]
div ecx
sub ecx, edx
mov r13d, ecx
jmp 0x14027c9c7
or r13, 0xffffffffffffffff
mov rax, qword [rsp + 0x50]
mov r11d, 1
mov qword [rsp + 0x48], r13
cmp dword [rax + 0x34], 7
lea r8d, [r11 + 1]
je 0x14028349d
mov dword [rax + 0x34], r10d
mov qword [rax + 0x48], r10
mov qword [rax + 0xa0], r10
mov eax, dword [r15 + 0x198]
mov dword [r15 + 0x290], r10d
test eax, eax
jne 0x14028344f
mov r12, qword [rsp + 0x50]
xorps xmm7, xmm7
mov r9, qword [rsp + 0x40]
mov qword [rbp - 0x48], 0x20
mov qword [rbp - 0x70], 8
movsxd rax, dword [r12 + 0x30]
mov qword [rbp - 0x68], 0x400
mov qword [rbp - 0x58], 0x10
mov dword [rbp - 0x60], 0x4000
lea rcx, [rax + rax*2]
lea eax, [r11 + 4]
lea r13, [r9 + rcx*8]
mov ecx, 0x9000
lea edx, [rax - 1]
add rbx, r11
mov qword [rsp + 0x38], r13
mov qword [rbp - 0x10], rbx
movzx ebx, byte [r13]
cmp ebx, 0x5a
ja 0x14027f36d
je 0x14027f256
cmp ebx, 0x2c
ja 0x14027e258
je 0x14027e0cc
cmp ebx, 0x16
ja 0x14027d9d8
je 0x14027d81f
cmp ebx, 0xb
ja 0x14027d628
je 0x14027d5e5
cmp ebx, eax
ja 0x14027d3ab
je 0x14027d36a
test ebx, ebx
je 0x14027cf9f
sub ebx, 1
je 0x140282f40
sub ebx, 1
je 0x14027cdfb
sub ebx, 1
je 0x14027cd17
cmp ebx, 1
jne 0x14027f012
mov rdx, r13
mov rcx, r12
call fcn.140237d54
movsxd rcx, dword [r13 + 4]
mov r14, rax
mov rax, qword [r15 + 0x20]
shl rcx, 5
cmp dword [r13 + 0xc], 0xffffffff
mov r15, qword [rcx + rax + 8]
mov rax, qword [r15 + 8]
mov rdi, qword [rax]
lea eax, [rbx + 2]
movzx esi, byte [rdi + 9]
mov ecx, esi
cmovne ecx, dword [r13 + 0xc]
xor edx, edx
cmp byte [rdi + 0x15], al
jb 0x14027cb22
mov eax, edx
jmp 0x14027cb36
mov rax, qword [rdi + 0x50]
cmp qword [rax], rdx
je 0x14027cb31
cmp qword [rdi + 0x60], rdx
jg 0x14027cb1e
mov eax, 1
test eax, eax
mov ebx, esi
cmovne ebx, ecx
lea rcx, [0x1403aa80c]
cmp byte [rdi + 0x13], dl
jne 0x14027cb50
mov rcx, qword [rdi + 0xd8]
mov r8d, 5
cmp ebx, r8d
jne 0x14027cbca
test rcx, rcx
je 0x14027cb95
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
test eax, 0x3fffffff
je 0x14027cb95
mov rax, qword [rdi + 0x48]
xor edx, edx
mov rcx, qword [rax]
cmp byte [rdi + 0x11], dl
jne 0x14027cb95
cmp byte [rdi + 8], dl
jne 0x14027cb8c
lea eax, [rdx + 2]
cmp dword [rcx], eax
jl 0x14027cb95
cmp qword [rcx + 0x68], rdx
je 0x14027cb95
mov ecx, 5
mov ebx, ecx
jmp 0x14027cbcf
mov ebx, esi
mov r12d, dword [rsp + 0x34]
xor r15d, r15d
mov rcx, rdi
test r12d, r12d
cmove esi, ebx
mov edx, esi
call fcn.14026da34
mov ecx, 0x2202
mov word [r14 + 0x14], cx
cmp eax, 6
jne 0x14027cc6e
mov ecx, r15d
jmp 0x14027cc7f
mov ecx, 5
cmp ebx, esi
je 0x14027cb97
cmp esi, ecx
je 0x14027cbdb
cmp ebx, ecx
jne 0x14027cb97
mov rax, qword [rsp + 0x60]
cmp byte [rax + 0x65], dl
je 0x140282ea5
mov r11d, 1
cmp dword [rax + 0xdc], r11d
jg 0x140282ea5
cmp esi, ecx
jne 0x14027cc24
mov rdx, rax
mov rcx, rdi
call fcn.14026cc30
mov dword [rsp + 0x34], eax
mov r12d, eax
test eax, eax
jne 0x14027cb9c
mov edx, ebx
mov rcx, rdi
call fcn.14026da34
xor edx, edx
jmp 0x14027cc48
mov eax, 4
cmp esi, eax
jne 0x14027cc3a
lea edx, [rax - 2]
mov rcx, rdi
call fcn.14026da34
xor edx, edx
mov r12d, dword [rsp + 0x34]
test r12d, r12d
jne 0x14027cb9c
mov r8d, 5
mov rcx, r15
cmp ebx, r8d
sete dl
lea eax, [r8 - 4]
add edx, eax
call fcn.14024d3a8
mov r12d, eax
mov dword [rsp + 0x34], eax
jmp 0x14027cb9c
cdqe
lea rcx, [0x140000000]
mov rcx, qword [rcx + rax*8 + 0x3adb88]
mov qword [r14 + 8], rcx
test rcx, rcx
jne 0x14027cc8d
mov eax, r15d
jmp 0x14027cc97
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
and eax, 0x3fffffff
mov ecx, 1
mov dword [r14 + 0x10], eax
mov al, byte [rsp + 0x30]
mov byte [r14 + 0x16], cl
lea edi, [rcx + 1]
test byte [r14 + 0x14], dil
jne 0x14027ccb7
mov byte [r14 + 0x16], al
jmp 0x14027ccc5
cmp al, cl
je 0x14027ccc5
mov dl, al
mov rcx, r14
call fcn.140285650
mov r14d, dword [rsp + 0x34]
xor r10d, r10d
test r14d, r14d
jne 0x14028315e
mov r15, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x58]
mov dil, byte [rsp + 0x30]
mov r9, qword [rsp + 0x40]
mov r11d, 1
mov eax, 5
mov ecx, 0x9000
mov edx, 4
mov r12, qword [rsp + 0x50]
add r13, 0x18
mov rbx, qword [rbp - 0x10]
mov r8d, 2
jmp 0x14027ca57
mov r8d, dword [r13 + 8]
lea rax, [rbp + 0x2d8]
mov edx, dword [r13 + 4]
lea r9, [rbp + 0x2d4]
or dword [rbp + 0x2d8], 0xffffffff
mov rcx, r15
or dword [rbp + 0x2d4], 0xffffffff
mov qword [rsp + 0x20], rax
mov dword [rbp + 0x2d0], r10d
call fcn.14024dd10
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r14d, eax
test eax, eax
je 0x14027cd7f
lea r8d, [r10 + 5]
cmp eax, r8d
jne 0x140282eee
lea r11d, [r10 + 1]
mov dword [rsp + 0x34], r10d
mov dword [rbp + 0x2d0], r11d
mov r14d, r10d
jmp 0x14027cd85
mov r11d, 1
movsxd rax, dword [r13 + 0xc]
mov rdi, r10
imul rbx, rax, 0x38
mov r12d, 0x9000
add rbx, rsi
mov esi, 3
lea r15d, [rsi + 1]
movsxd rax, dword [rbp + rdi*4 + 0x2d0]
test word [rbx + 0x14], r12w
je 0x14027cdc4
mov rdx, rax
mov rcx, rbx
call fcn.140295154
mov r11d, 1
jmp 0x14027cdcc
mov qword [rbx], rax
mov word [rbx + 0x14], r15w
add rdi, r11
add rbx, 0x38
cmp rdi, rsi
jl 0x14027cda2
mov r15, qword [rsp + 0x60]
xor r10d, r10d
mov rsi, qword [rsp + 0x58]
mov ecx, r12d
mov dil, byte [rsp + 0x30]
mov r9, qword [rsp + 0x40]
lea eax, [r10 + 5]
jmp 0x14027ccfa
mov edx, dword [r13 + 8]
mov ebx, r10d
mov dword [rsp + 0x6c], ebx
test edx, edx
je 0x14027ce21
mov rax, qword [r15 + 0x30]
movabs rcx, 0x200100000
test rcx, rax
jne 0x140282edb
movsxd rsi, dword [r13 + 4]
shl rsi, 5
add rsi, qword [r15 + 0x20]
mov rdi, qword [rsi + 8]
test rdi, rdi
je 0x14027cefe
lea r8, [rsp + 0x6c]
mov rcx, rdi
call fcn.14024a634
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r14d, eax
test eax, eax
jne 0x140282ef8
mov rax, qword [rbp - 0x48]
test byte [r12 + 0xc8], al
je 0x14027cf96
cmp dword [r13 + 8], r10d
je 0x14027cf96
lea eax, [r14 + 1]
cmp byte [r15 + 0x65], r10b
je 0x14027ce8c
cmp dword [r15 + 0xdc], eax
jle 0x14027cf96
mov r8d, dword [r12 + 0x40]
test r8d, r8d
jne 0x14027ceb0
add dword [r15 + 0x2ec], eax
mov r8d, dword [r15 + 0x2ec]
add r8d, dword [r15 + 0x2e8]
mov dword [r12 + 0x40], r8d
dec r8d
xor edx, edx
mov rcx, r15
call fcn.14028803c
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r14d, eax
test eax, eax
jne 0x14027cee2
mov edx, dword [r12 + 0x40]
mov rcx, rdi
call fcn.14024a5c4
mov r14d, eax
mov dword [rsp + 0x34], eax
xor r10d, r10d
mov rax, qword [r15 + 0x2f0]
mov ebx, dword [rsp + 0x6c]
mov qword [r12 + 0x58], rax
mov rax, qword [r15 + 0x2f8]
mov qword [r12 + 0x60], rax
test r14d, r14d
jne 0x140282eee
cmp word [r13 + 2], r10w
je 0x14027ccdb
cmp ebx, dword [r13 + 0xc]
jne 0x14027cf29
mov rcx, qword [rsi + 0x18]
mov eax, dword [r13 + 0x10]
cmp dword [rcx + 4], eax
je 0x14027ccdb
mov rdx, qword [r12 + 0xa8]
test rdx, rdx
je 0x14027cf3e
mov rcx, r15
call fcn.1402514c0
lea rdx, str.database_schema_has_changed
mov rcx, r15
call fcn.140251770
mov qword [r12 + 0xa8], rax
movsxd rdx, dword [r13 + 4]
mov rax, qword [r15 + 0x20]
mov rcx, rdx
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
cmp dword [rcx], ebx
je 0x14027cf75
mov rcx, r15
call fcn.140273af4
mov eax, dword [r12 + 0xc8]
mov r14d, 0x11
and eax, 0xffffffed
or eax, 1
mov dword [r12 + 0xc8], eax
jmp 0x140282ece
mov ebx, dword [rsp + 0x6c]
jmp 0x14027cf07
mov edi, dword [r13 + 4]
mov rsi, qword [r13 + 0x10]
mov dword [rsp + 0x68], edi
test edi, edi
jne 0x14027d083
cmp dword [r15 + 0xe0], r10d
jg 0x1402830b9
test rsi, rsi
jne 0x14027cfca
mov edi, r10d
jmp 0x14027cfdb
mov rcx, rsi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
mov rdi, rax
and edi, 0x3fffffff
mov r8d, dword [r15 + 0x2ec]
xor edx, edx
add r8d, dword [r15 + 0x2e8]
mov rcx, r15
call fcn.14028803c
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r14d, eax
test eax, eax
jne 0x140282eee
mov edx, edi
mov rcx, r15
add rdx, 0x21
call fcn.140251578
xor r10d, r10d
mov rbx, rax
test rax, rax
je 0x14027d331
lea r9, [rax + 0x20]
mov rdx, rsi
mov rcx, r9
mov qword [rax], r9
lea r8d, [rdi + 1]
call sub.VCRUNTIME140.dll_memcpy
xor r10d, r10d
lea eax, [r14 + 1]
cmp byte [r15 + 0x65], r10b
je 0x14027d04f
mov byte [r15 + 0x65], r10b
mov byte [r15 + 0x6d], al
jmp 0x14027d056
add dword [r15 + 0x2e8], eax
mov rax, qword [r15 + 0x2d8]
mov qword [rbx + 0x18], rax
mov rax, qword [r15 + 0x2f0]
mov qword [r15 + 0x2d8], rbx
mov qword [rbx + 8], rax
mov rax, qword [r15 + 0x2f8]
mov qword [rbx + 0x10], rax
jmp 0x14027d331
mov r15, qword [r15 + 0x2d8]
mov ebx, r10d
test r15, r15
je 0x140283128
mov rcx, qword [r15]
mov rdx, rsi
call fcn.140278688
xor r10d, r10d
test eax, eax
je 0x14027d0b1
mov r15, qword [r15 + 0x18]
add ebx, r11d
jmp 0x14027d08d
mov r8, qword [rsp + 0x60]
cmp dword [r8 + 0xe0], r10d
jle 0x14027d0c8
cmp edi, r11d
je 0x1402830c5
lea rsi, [r15 + 0x18]
mov qword [rsp + 0x78], rsi
cmp qword [rsi], r10
jne 0x14027d154
cmp byte [r8 + 0x6d], r10b
je 0x14027d154
mov r13d, r11d
cmp edi, r11d
jne 0x14027d157
mov edx, r11d
mov rcx, r12
call fcn.14027c220
mov rcx, qword [rsp + 0x60]
xor r10d, r10d
mov r14d, eax
test eax, eax
jne 0x140283607
lea eax, [r14 + 1]
mov byte [rcx + 0x65], al
mov rcx, r12
call fcn.140283cc0
lea r8d, [r14 + 5]
cmp eax, r8d
je 0x1402830d1
mov r14d, dword [r12 + 0x34]
xor r10d, r10d
mov r8, qword [rsp + 0x60]
mov dword [rsp + 0x34], r14d
test r14d, r14d
je 0x14027d13b
mov byte [r8 + 0x65], r10b
jmp 0x14027d13f
mov byte [r8 + 0x6d], r10b
mov r11d, 1
lea r12, [r8 + 0x2e8]
mov r13d, r11d
jmp 0x14027d26b
mov r13d, r10d
lea r12, [r8 + 0x2e8]
mov eax, dword [r12]
sub eax, ebx
sub eax, r11d
mov dword [rsp + 0x6c], eax
cmp edi, 2
jne 0x14027d1ca
mov r14d, dword [r8 + 0x2c]
mov esi, r10d
and r14d, r11d
cmp dword [r8 + 0x28], r10d
jle 0x14027d1cd
mov edi, r14d
mov rbx, r10
xor edi, r11d
mov rcx, qword [r8 + 0x20]
mov edx, 0x204
mov r8d, edi
mov rcx, qword [rcx + rbx + 8]
call fcn.14024d9b4
xor r10d, r10d
mov dword [rsp + 0x34], eax
test eax, eax
jne 0x1402834be
mov r8, qword [rsp + 0x60]
lea r11d, [rax + 1]
add rbx, qword [rbp - 0x48]
add esi, r11d
cmp esi, dword [r8 + 0x28]
jl 0x14027d189
mov eax, dword [rsp + 0x6c]
jmp 0x14027d1cd
mov r14d, r10d
mov edi, r10d
cmp dword [r8 + 0x28], r10d
jle 0x14027d219
mov esi, dword [rsp + 0x68]
mov rbx, r10
mov rcx, qword [r8 + 0x20]
mov edx, esi
mov r8d, eax
mov rcx, qword [rcx + rbx + 8]
call fcn.14024ce2c
xor r10d, r10d
mov dword [rsp + 0x34], eax
test eax, eax
jne 0x1402834be
mov r8, qword [rsp + 0x60]
lea r11d, [rax + 1]
add rbx, qword [rbp - 0x48]
add edi, r11d
mov eax, dword [rsp + 0x6c]
cmp edi, dword [r8 + 0x28]
jl 0x14027d1dd
test r14d, r14d
je 0x14027d259
mov rcx, qword [r8 + 8]
jmp 0x14027d23a
mov eax, dword [rcx + 0xc8]
and eax, 0xfffffffd
or eax, r11d
mov dword [rcx + 0xc8], eax
mov rcx, qword [rcx + 0x10]
test rcx, rcx
jne 0x14027d224
mov rcx, r8
call fcn.140273a68
mov r8, qword [rsp + 0x60]
mov r11d, 1
or dword [r8 + 0x2c], r11d
xor r10d, r10d
mov r14d, dword [rsp + 0x34]
mov rsi, qword [rsp + 0x78]
mov edi, dword [rsp + 0x68]
mov ebx, dword [rsp + 0x6c]
test r14d, r14d
jne 0x140282eee
mov rcx, qword [r8 + 0x2d8]
cmp rcx, r15
je 0x14027d2b2
mov rax, qword [rcx + 0x18]
mov rdx, rcx
mov rcx, r8
mov qword [r8 + 0x2d8], rax
call fcn.1402514c0
dec dword [r12]
mov r8, qword [rsp + 0x60]
mov rcx, qword [r8 + 0x2d8]
cmp rcx, r15
jne 0x14027d280
xor r10d, r10d
lea r11d, [r10 + 1]
cmp edi, r11d
jne 0x14027d2df
mov rax, qword [rsi]
mov rdx, r15
mov r15, qword [rsp + 0x60]
mov rcx, r15
mov qword [r8 + 0x2d8], rax
call fcn.1402514c0
xor r10d, r10d
test r13d, r13d
jne 0x14027d327
dec dword [r12]
jmp 0x14027d308
mov rax, qword [r15 + 8]
mov qword [r8 + 0x2f0], rax
mov rax, qword [r15 + 0x10]
mov r15, qword [rsp + 0x60]
mov qword [r15 + 0x2f8], rax
test r13d, r13d
je 0x14027d308
mov eax, 2
cmp edi, eax
jne 0x14027d35e
mov r8d, ebx
mov edx, edi
mov rcx, r15
call fcn.14028803c
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r14d, eax
test eax, eax
jne 0x140282eee
mov r12, qword [rsp + 0x50]
mov r13, qword [rsp + 0x38]
mov r11d, 1
mov eax, 3
cmp byte [r12 + 0xc5], al
je 0x14028311d
mov rsi, qword [rsp + 0x58]
mov dil, byte [rsp + 0x30]
mov r9, qword [rsp + 0x40]
jmp 0x14027ccf0
mov r13, qword [rsp + 0x38]
mov r12, qword [rsp + 0x50]
jmp 0x14027d337
cmp dword [r13 + 8], r10d
je 0x14027d37d
movsxd rax, dword [r13 + 8]
imul r9, rax, 0x38
add r9, rsi
jmp 0x14027d380
mov r9, r10
mov r8d, dword [r13 + 4]
lea rcx, [r12 + 0xa8]
mov rdx, r15
call fcn.1402747bc
xor r10d, r10d
mov dword [rsp + 0x34], eax
test eax, eax
mov r14d, eax
jne 0x140282eee
jmp 0x14027cce5
sub ebx, 6
je 0x14027d528
sub ebx, 1
je 0x14027d433
sub ebx, 1
je 0x14027ea57
sub ebx, 1
je 0x14027d3f9
cmp ebx, 1
jne 0x14027f012
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
mov eax, dword [r13 + 0xc]
sub eax, r11d
cdqe
mov qword [rcx + rsi], rax
mov word [rcx + rsi + 0x14], dx
cmp dword [r13 + 8], r10d
je 0x14027ec96
jmp 0x14027d9ac
movsxd rax, dword [r13 + 4]
mov rcx, r13
imul r8, rax, 0x38
sub rcx, r9
movabs rax, 0x2aaaaaaaaaaaaaab
mov word [r8 + rsi + 0x14], dx
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rax, rdx
cdqe
mov qword [r8 + rsi], rax
jmp 0x14027ea57
mov qword [rbp + 0x10], r10
cmp byte [r15 + 0x67], r10b
jne 0x140283480
mov rax, qword [r13 + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x140283168
mov r10, qword [rbx]
xor r11d, r11d
test r10, r10
je 0x140283168
movsxd rdx, dword [r13 + 8]
cmp qword [r10 + 0x68], r11
je 0x140282e9d
movsxd rax, dword [r13 + 0xc]
mov dil, byte [r15 + 0x6c]
mov r8, qword [r12 + 0x70]
imul rcx, rax, 0x38
mov eax, r11d
add rcx, rsi
test edx, edx
jle 0x14027d49e
lea r11d, [rax + 1]
mov qword [r8 + rax*8], rcx
add rcx, 0x38
add rax, r11
cmp rax, rdx
jl 0x14027d48e
mov al, byte [r13 + 2]
lea r9, [rbp + 0x10]
mov rcx, rbx
mov byte [r15 + 0x6c], al
call qword [r10 + 0x68]
mov rdx, rbx
mov byte [r15 + 0x6c], dil
mov rcx, r12
mov dword [rsp + 0x34], eax
mov r14d, eax
call fcn.140287db4
xor r10d, r10d
test r14d, r14d
jne 0x14027d4f6
cmp dword [r13 + 4], r10d
je 0x14027d4dd
mov rax, qword [rbp + 0x10]
mov qword [r15 + 0x38], rax
mov r11d, 1
add qword [r12 + 0x38], r11
test r14d, r14d
jne 0x140282eee
jmp 0x14027d34f
cmp r14b, 0x13
jne 0x14027d4dd
mov rax, qword [r13 + 0x10]
cmp byte [rax + 0x1c], r10b
je 0x14027d4dd
mov edx, 4
cmp word [r13 + 2], dx
jne 0x14028313f
mov r14d, r10d
mov dword [rsp + 0x34], r10d
mov dil, byte [rsp + 0x30]
jmp 0x14028098e
movsxd rax, dword [r13 + 0xc]
mov r8, r10
movsxd rcx, dword [r13 + 4]
imul rdx, rax, 0x38
mov rax, qword [r12 + 0x78]
mov r13, qword [rax + rcx*8]
lea r11, [rdx + 0x38]
mov edx, dword [rdx + rsi]
add r11, rsi
mov rsi, qword [r12 + 0x70]
mov rbx, qword [r13 + 0x30]
movsxd r9, dword [r11]
mov r15, qword [rbx]
mov r14, qword [r15]
test r9d, r9d
jle 0x14027d583
mov r12d, 1
mov r10d, r12d
movsxd rax, r10d
add r10d, r12d
imul rcx, rax, 0x38
add rcx, r11
mov qword [rsi + r8*8], rcx
add r8, r12
cmp r8, r9
jl 0x14027d56a
mov r12, qword [rsp + 0x38]
mov rcx, rbx
mov qword [rsp + 0x20], rsi
mov r8, qword [r12 + 0x10]
call qword [r14 + 0x40]
mov rcx, qword [rsp + 0x50]
mov rdx, r15
mov edi, eax
mov dword [rsp + 0x34], eax
call fcn.140287db4
xor r10d, r10d
test edi, edi
jne 0x1402834c3
mov rcx, rbx
call qword [r14 + 0x50]
xor r10d, r10d
lea edx, [rdi + 4]
mov byte [r13 + 2], r10b
mov r13, r12
mov r14d, edi
test eax, eax
jne 0x14027d79b
mov r15, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x58]
jmp 0x14027d51e
movsxd rax, dword [r13 + 4]
sub r13, r9
imul r8, rax, 0x38
movabs rax, 0x2aaaaaaaaaaaaaab
movsxd rcx, dword [r8 + rsi]
mov word [r8 + rsi + 0x14], dx
imul r13
lea rcx, [rcx + rcx*2]
sar rdx, 2
lea r13, [r9 + rcx*8]
mov rax, rdx
shr rax, 0x3f
add rax, rdx
cdqe
mov qword [r8 + rsi], rax
jmp 0x14027ccf0
cmp ebx, 0x11
ja 0x14027d7fd
je 0x14027d7cc
sub ebx, 0xc
je 0x14027d761
sub ebx, 1
je 0x14027d73b
sub ebx, 1
je 0x14027d6b1
sub ebx, 1
je 0x14027d689
cmp ebx, 1
jne 0x14027f012
cmp dword [r13 + 0xc], r10d
mov edx, r10d
movsxd rax, dword [r13 + 4]
sete dl
imul rcx, rax, 0x38
add rcx, rsi
call fcn.14027c104
xor r10d, r10d
lea edx, [rbx + 3]
test eax, eax
je 0x14027d79b
jmp 0x14028098e
movsxd rax, dword [r13 + 4]
mov edx, dword [r13 + 0xc]
imul rcx, rax, 0x38
add rcx, rsi
call fcn.14027c104
xor r10d, r10d
lea edx, [r10 + 4]
test eax, eax
jne 0x14027d79b
jmp 0x14028098e
mov r8, qword [r12 + 0x108]
test r8, r8
je 0x14027d712
mov r9, qword [r8 + 0x30]
mov rcx, r13
sub rcx, qword [r12 + 0x88]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov ecx, edx
and edx, 7
shr rcx, 3
movzx eax, byte [rcx + r9]
bt eax, edx
jb 0x14027d9a2
bts eax, edx
mov edx, 4
mov byte [rcx + r9], al
mov r9, qword [rsp + 0x40]
jmp 0x14027d727
mov rcx, qword [r12 + 0x88]
mov eax, dword [r13 + 4]
cmp dword [rcx + 4], eax
je 0x14027d9ac
mov rax, qword [r12 + 0x88]
mov ecx, dword [rax + 4]
mov dword [r13 + 4], ecx
jmp 0x14027ec96
mov r8d, dword [rsp + 0x70]
test r8d, r8d
jns 0x14027d74b
mov eax, dword [r13 + 4]
jmp 0x14027d757
jne 0x14027d753
mov eax, dword [r13 + 8]
jmp 0x14027d757
mov eax, dword [r13 + 0xc]
sub eax, r11d
cdqe
jmp 0x14027ec8e
movsxd rax, dword [r13 + 4]
imul rbx, rax, 0x38
add rbx, rsi
movzx eax, word [rbx + 0x14]
test dl, al
jne 0x14027d7b6
mov r8b, dil
mov dl, 0x43
mov rcx, rbx
call fcn.1401f6ef4
movzx eax, word [rbx + 0x14]
mov edx, 4
xor r10d, r10d
test dl, al
jne 0x14027d7a6
cmp dword [r13 + 8], r10d
je 0x140283173
mov r11d, 1
jmp 0x14027d9a7
mov r9, qword [rsp + 0x40]
mov ecx, 0x9000
mov r11d, 1
mov r8d, 0xf244
and ax, r8w
or ax, dx
mov word [rbx + 0x14], ax
jmp 0x14027f012
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
movzx eax, word [rcx + rsi + 0x14]
test r11b, al
jne 0x14027d9ac
and eax, 0x3f
lea rcx, [0x140000000]
movzx eax, byte [rax + rcx + 0x3abcb0]
cmp eax, dword [r13 + 0xc]
jmp 0x14027e7fe
mov ecx, ebx
sub ecx, 0x12
je 0x14027d965
sub ecx, 1
je 0x14027d8cd
sub ecx, 1
je 0x14027d81f
cmp ecx, 1
jne 0x14027ec96
mov rax, qword [r12 + 0x78]
mov r12d, r10d
movsxd rcx, dword [r13 + 4]
mov rsi, qword [rax + rcx*8]
and word [rsi + 2], 0
mov dword [rsi + 0x20], r10d
cmp byte [rsi + 4], r10b
je 0x14027db08
movsxd rax, dword [r13 + 0xc]
imul rdi, rax, 0x38
add rdi, qword [rsp + 0x58]
movzx r14d, word [rdi + 0x14]
mov al, r14b
and al, 0x2e
cmp al, r8b
jne 0x14027d868
xor edx, edx
mov rcx, rdi
call fcn.1401f6f5c
mov rcx, rdi
call fcn.140284270
movzx ecx, word [rdi + 0x14]
mov r15, rax
mov word [rdi + 0x14], r14w
test cl, 0x24
jne 0x14027dad7
mov rax, qword [rbp - 0x70]
test al, cl
jne 0x14027daad
mov r11d, 1
test r11b, cl
jne 0x140281878
cmp ebx, 0x16
jae 0x140281878
mov rcx, qword [rsi + 0x30]
lea rdx, [rbp - 0x7c]
call fcn.14024c428
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r14d, eax
test eax, eax
jne 0x140282eee
jmp 0x14027dc47
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
movsxd rax, dword [r13 + 8]
imul rbx, rax, 0x38
add rcx, rsi
add rbx, rsi
test byte [rcx + 0x14], r11b
jne 0x14027d940
xor edx, edx
call fcn.14027c104
xor r10d, r10d
mov r12d, 0x9000
test eax, eax
mov ecx, r10d
sete cl
test word [rbx + 0x14], r12w
je 0x14027d92c
mov rdx, rcx
mov rcx, rbx
call fcn.140295154
xor r10d, r10d
mov ecx, r12d
mov r9, qword [rsp + 0x40]
mov eax, 5
lea r11d, [rax - 4]
jmp 0x14027ccfa
mov edx, 4
mov qword [rbx], rcx
mov word [rbx + 0x14], dx
mov ecx, r12d
jmp 0x140280993
mov ecx, 0x9000
test word [rbx + 0x14], cx
je 0x14027d95b
mov rcx, rbx
call fcn.1402940b4
xor r10d, r10d
jmp 0x14027cce5
mov word [rbx + 0x14], r11w
jmp 0x14027f012
movsxd rcx, dword [r13 + 4]
mov rax, qword [r12 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx + 2], r10b
je 0x14027ec96
movsxd rax, dword [r13 + 0xc]
mov r12d, 0x9000
imul rcx, rax, 0x38
add rcx, rsi
test word [rcx + 0x14], r12w
je 0x14027d9d1
call fcn.1402940b4
xor r10d, r10d
mov r11d, 1
mov edx, 4
mov r9, qword [rsp + 0x40]
mov eax, dword [r13 + 8]
sub eax, r11d
cdqe
lea rcx, [rax + rax*2]
lea r13, [r9 + rcx*8]
mov r15, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x58]
mov dil, byte [rsp + 0x30]
jmp 0x14027ec96
mov word [rcx + 0x14], r11w
jmp 0x14027d9ac
cmp ebx, 0x21
ja 0x14027df1b
je 0x14027dfea
cmp ebx, 0x1c
ja 0x14027dd90
je 0x14027da19
mov ecx, ebx
sub ecx, 0x17
je 0x14027d81f
sub ecx, 1
je 0x14027da95
sub ecx, 1
je 0x14027da79
sub ecx, 1
je 0x14027da19
cmp ecx, 1
jne 0x14027ec96
movsxd rcx, dword [r13 + 4]
mov rax, qword [r12 + 0x78]
mov rbx, qword [rax + rcx*8]
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
movzx eax, word [r13 + 0x10]
add rcx, rsi
mov word [rbp + 0x8c], ax
mov qword [rbp + 0x78], rcx
test ax, ax
je 0x14027dc73
mov rax, qword [rbx + 0x38]
lea rsi, [rbx + 0x24]
mov qword [rbp + 0x70], rax
lea rdx, [rbp + 0x70]
mov byte [rbp + 0x8e], r10b
mov r8, rsi
mov rcx, qword [rbx + 0x30]
call fcn.14024b7d0
mov r14d, eax
mov dword [rsp + 0x34], eax
jmp 0x14027dcea
mov rax, qword [r12 + 0x78]
movsxd rcx, dword [r13 + 4]
mov rcx, qword [rax + rcx*8]
movzx eax, word [rcx + 0xc]
cmp eax, dword [r13 + 0x10]
jl 0x14027da19
jmp 0x14027ec96
movsxd rcx, dword [r13 + 4]
mov rax, qword [r12 + 0x78]
cmp qword [rax + rcx*8], r10
je 0x14027ea57
jmp 0x14027ec96
movsd xmm1, qword [rdi]
mov rcx, r15
call fcn.14026a760
test eax, eax
jle 0x14027daca
mov eax, 1
test al, bl
je 0x14027dad7
sub ebx, eax
jmp 0x14027dad7
jns 0x14027dad7
mov eax, 1
test al, bl
jne 0x14027dad7
add ebx, eax
lea rdi, [rsi + 0x30]
xor r8d, r8d
mov rcx, qword [rdi]
lea r9, [rbp - 0x7c]
mov rdx, r15
call fcn.14024d458
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov qword [rsi + 0x50], r15
mov r14d, eax
test eax, eax
jne 0x140282eee
jmp 0x14027db9a
lea rdi, [rsi + 0x30]
mov rax, qword [rdi]
lea rdx, [rbp + 0x98]
mov r14b, byte [rax + 3]
mov rax, qword [rsi + 0x38]
and r14b, r8b
mov qword [rbp + 0x98], rax
lea r8, [rbp - 0x7c]
movzx eax, word [r13 + 0x10]
setne r12b
mov word [rbp + 0xb4], ax
mov eax, ebx
and al, r11b
mov byte [rbp + 0xba], r10b
neg al
movsxd rax, dword [r13 + 0xc]
sbb cl, cl
and cl, 0xfe
add cl, r11b
mov byte [rbp + 0xb6], cl
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x58]
mov qword [rbp + 0xa0], rcx
mov rcx, qword [rdi]
call fcn.14024b7d0
xor r10d, r10d
mov dword [rsp + 0x34], eax
test eax, eax
jne 0x1402834be
test r14b, r14b
je 0x14027db95
cmp byte [rbp + 0xba], r10b
je 0x14027dc42
mov r14d, dword [rsp + 0x34]
mov eax, dword [rbp - 0x7c]
cmp ebx, 0x16
jl 0x14027dbf0
test eax, eax
js 0x14027dbb6
jne 0x14027dbad
cmp ebx, 0x17
je 0x14027dbb6
mov dword [rbp - 0x7c], r10d
jmp 0x14027dc51
mov rcx, qword [rdi]
xor edx, edx
mov dword [rbp - 0x7c], r10d
call fcn.14024c55c
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r14d, eax
test eax, eax
je 0x14027dc51
cmp eax, 0x65
jne 0x140282eee
lea r11d, [rax - 0x64]
mov dword [rsp + 0x34], r10d
mov dword [rbp - 0x7c], r11d
mov r14d, r10d
jmp 0x14027d9a2
test eax, eax
jg 0x14027dc0c
jne 0x14027dbfb
cmp ebx, 0x14
je 0x14027dc0c
mov rax, qword [rdi]
mov ecx, r10d
cmp byte [rax], r10b
setne cl
mov dword [rbp - 0x7c], ecx
jmp 0x14027dc47
mov rcx, qword [rdi]
xor edx, edx
mov dword [rbp - 0x7c], r10d
call fcn.14024cc18
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r14d, eax
test eax, eax
je 0x14027dc51
cmp eax, 0x65
jne 0x140282eee
lea eax, [r10 + 1]
mov dword [rsp + 0x34], r10d
mov dword [rbp - 0x7c], eax
mov r14d, r10d
jmp 0x14027dc47
mov r14d, dword [rsp + 0x34]
cmp dword [rbp - 0x7c], r10d
jne 0x14027de91
mov r15, qword [rsp + 0x60]
mov r11d, 1
mov rsi, qword [rsp + 0x58]
test r12d, r12d
je 0x14027d34f
add r13, 0x18
jmp 0x14027d34f
mov rax, qword [rbp - 0x68]
test word [rcx + 0x14], ax
je 0x14027dc8e
call fcn.140284b7c
xor esi, esi
test eax, eax
jne 0x140283480
jmp 0x14027dc90
xor esi, esi
mov rcx, qword [rbx + 0x38]
call fcn.14027c074
mov rdi, rax
test rax, rax
je 0x140283480
mov rcx, qword [rbp + 0x78]
mov r9, rax
mov r8, qword [rcx + 8]
mov edx, dword [rcx + 0x10]
mov rcx, qword [rbx + 0x38]
call fcn.1402862e8
mov byte [rdi + 0x1e], sil
mov rdx, rdi
mov rcx, qword [rbx + 0x30]
lea rsi, [rbx + 0x24]
mov r8, rsi
call fcn.14024b7d0
mov rdx, rdi
mov dword [rsp + 0x34], eax
mov rcx, r15
mov r14d, eax
call fcn.1402514c0
mov dil, byte [rsp + 0x30]
xor r10d, r10d
test r14d, r14d
jne 0x140282eee
mov ecx, dword [rsi]
test ecx, ecx
mov byte [rbx + 3], r10b
setne al
mov dword [rbx + 0x20], r10d
mov byte [rbx + 2], al
cmp byte [r13], 0x1c
jne 0x14027dd25
lea edx, [r10 + 4]
test ecx, ecx
je 0x14027d79b
mov rsi, qword [rsp + 0x58]
jmp 0x14028098e
test ecx, ecx
jne 0x14027de91
cmp byte [r13], 0x1a
lea r11d, [rcx + 1]
jne 0x14027dd72
movzx edx, word [rbp + 0x8c]
mov rcx, r10
test rdx, rdx
je 0x14027d34a
mov rax, qword [rbp + 0x78]
add rax, 0x14
test byte [rax], r11b
jne 0x14027d9a2
add rcx, r11
add rax, 0x38
cmp rcx, rdx
jl 0x14027dd53
mov rsi, qword [rsp + 0x58]
jmp 0x14027d354
cmp byte [r13], 0x19
mov rsi, qword [rsp + 0x58]
jne 0x14027d34f
movzx eax, word [r13 + 0x10]
mov word [rbx + 0xc], ax
jmp 0x14027d354
mov ecx, ebx
sub ecx, 0x1d
je 0x14027de25
sub ecx, 1
je 0x14027de9b
sub ecx, 1
je 0x14028180d
cmp ecx, 1
jne 0x14027ec96
movsxd rcx, dword [r13 + 4]
lea rdx, [rbp - 0x30]
mov rax, qword [r12 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rbx, qword [rcx + 0x30]
mov rcx, rbx
call fcn.14024b520
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r14d, eax
test eax, eax
jne 0x140282eee
cmp dword [rbp - 0x30], r10d
jne 0x14027d99c
mov rcx, rbx
call fcn.14024cde0
xor r10d, r10d
test rax, rax
js 0x14028002b
mov rcx, rax
call fcn.14026b880
movsx ecx, ax
lea r11d, [r14 + 1]
cmp ecx, dword [r13 + 0xc]
jge 0x14027d34f
mov dword [rbp - 0x30], r11d
jmp 0x14027d9a2
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
add rcx, rsi
test byte [rcx + 0x14], 0x24
jne 0x14027de9b
movups xmm0, xmmword [rcx]
mov r8b, dil
mov dl, 0x43
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rbp + 0x1c0], xmm0
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rbp + 0x1d0], xmm1
movsd xmm1, qword [rcx + 0x30]
lea rcx, [rbp + 0x1c0]
movups xmmword [rbp + 0x1e0], xmm0
movsd qword [rbp + 0x1f0], xmm1
call fcn.1401f6ef4
mov edx, 4
xor r10d, r10d
test byte [rbp + 0x1d4], dl
je 0x14027d79b
mov rdi, qword [rbp + 0x1c0]
jmp 0x14027dea7
mov edx, 4
jmp 0x14027d79b
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
mov rdi, qword [rcx + rsi]
movsxd rcx, dword [r13 + 4]
lea r9, [rsp + 0x68]
mov rax, qword [r12 + 0x78]
xor r8d, r8d
mov rdx, rdi
mov dword [rsp + 0x68], r10d
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rbx + 0x30]
call fcn.14024d458
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r14d, eax
mov qword [rbx + 0x50], rdi
mov eax, dword [rsp + 0x68]
mov word [rbx + 2], r10w
mov dword [rbx + 0x20], r10d
mov dword [rbx + 0x24], eax
test eax, eax
je 0x14027df0d
cmp dword [r13 + 8], r10d
jne 0x14027d99c
mov ecx, 0x16d38
call fcn.14024fc48
mov r14d, eax
mov dword [rsp + 0x34], eax
xor r10d, r10d
test r14d, r14d
jne 0x140282eee
jmp 0x14027cce0
cmp ebx, 0x27
ja 0x14027e0b2
je 0x14027e125
sub ebx, 0x22
je 0x14027dfea
sub ebx, 1
je 0x14027dff2
sub ebx, 1
je 0x14027df87
sub ebx, 1
je 0x14027df6b
cmp ebx, 1
jne 0x14027f012
movsxd rcx, dword [r13 + 4]
mov rax, qword [r12 + 0x78]
mov edx, dword [r13 + 0xc]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rbx + 0x30]
call fcn.14024c55c
jmp 0x14027df9f
movsxd rcx, dword [r13 + 4]
mov rax, qword [r12 + 0x78]
mov edx, dword [r13 + 0xc]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rbx + 0x30]
call fcn.14024cc18
jmp 0x14027df9f
movsxd rcx, dword [r13 + 4]
mov rax, qword [r12 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, r15
mov rdx, rbx
call fcn.140286a40
mov r14d, eax
mov dword [rsp + 0x34], eax
xor r10d, r10d
mov dword [rbx + 0x20], r10d
test eax, eax
jne 0x14027dfcb
mov byte [rbx + 2], r10b
lea r11d, [r14 + 1]
movzx eax, word [r13 + 2]
add dword [r12 + rax*4 + 0xd4], r11d
jmp 0x14027ea57
cmp r14d, 0x65
jne 0x140282eee
mov eax, 1
mov dword [rsp + 0x34], r10d
mov byte [rbx + 2], al
mov r14d, r10d
jmp 0x1402821c5
add dword [r12 + 0xdc], r11d
movsxd rcx, dword [r13 + 4]
mov edi, r11d
mov rax, qword [r12 + 0x78]
mov dword [rsp + 0x68], r11d
mov rsi, qword [rax + rcx*8]
mov rbx, qword [rsi + 0x30]
cmp byte [rsi], r11b
jne 0x14027e068
mov r14d, r10d
mov dword [rsp + 0x34], r10d
cmp byte [rbx + 0x58], r10b
jne 0x14027e038
lea rdx, [rbx + 0x38]
cmp qword [rdx], r10
je 0x14027e08b
lea rcx, [rbx + 0x60]
mov edi, r10d
call fcn.140296040
xor r10d, r10d
jmp 0x14027e084
mov rcx, rbx
call fcn.140295688
mov edx, eax
mov rcx, rbx
call fcn.1402957e0
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r14d, eax
test eax, eax
jne 0x14027e08b
mov rcx, rbx
call fcn.140295dc8
xor r10d, r10d
mov edi, r10d
jmp 0x14027e084
lea rdx, [rsp + 0x68]
mov rcx, rbx
call fcn.14024b520
mov edi, dword [rsp + 0x68]
xor r10d, r10d
mov byte [rsi + 3], r10b
mov dword [rsi + 0x20], r10d
mov r14d, eax
mov dword [rsp + 0x34], eax
test r14d, r14d
jne 0x140282eee
mov r9, qword [rsp + 0x40]
lea edx, [r14 + 4]
mov byte [rsi + 2], dil
lea r11d, [r14 + 1]
test edi, edi
je 0x14027d9c2
jmp 0x14027d9ac
mov ecx, ebx
sub ecx, 0x28
je 0x14027e125
sub ecx, 1
je 0x14027e125
sub ecx, 1
je 0x14027e125
cmp ecx, 1
jne 0x14027ec96
movsxd rax, dword [r13 + 4]
mov edx, r8d
imul rcx, rax, 0x38
add rcx, rsi
call fcn.14027c104
movsxd rcx, dword [r13 + 8]
mov r12d, 2
imul rcx, rcx, 0x38
mov edx, r12d
mov ebx, eax
add rcx, rsi
call fcn.14027c104
lea eax, [rax + rbx*2]
add eax, ebx
movsxd rcx, eax
lea eax, [r12 + 0x2a]
cmp byte [r13], al
lea rax, [0x140000000]
jne 0x14027e204
mov r8b, byte [rcx + rax + 0x3ac558]
jmp 0x14027e20c
movsxd rcx, dword [r13 + 4]
cmp bl, 0x29
mov rax, qword [r12 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rdx + 0x38]
mov rbx, qword [rdx + 0x30]
mov qword [rbp + 0x48], rax
movzx eax, word [r13 + 0x10]
mov word [rbp + 0x64], ax
sbb al, al
mov byte [rbp + 0x66], al
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
add rcx, rsi
mov qword [rbp + 0x50], rcx
mov rcx, rbx
call fcn.14022dfd8
mov edx, dword [rbx + 0x40]
lea eax, [rdx - 1]
cmp eax, 0x7ffffffe
ja 0x14028317e
xor eax, eax
mov qword [rbp + 0x140], r15
lea r8, [rbp + 0x128]
mov word [rbp + 0x13c], ax
mov rcx, rbx
mov dword [rbp + 0x148], eax
call fcn.140284d68
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r14d, eax
test eax, eax
jne 0x140282eee
mov rdx, qword [rbp + 0x130]
lea r8, [rbp + 0x48]
mov ecx, dword [rbp + 0x138]
xor r9d, r9d
call fcn.140285e48
xor r10d, r10d
mov ebx, eax
cmp dword [rbp + 0x148], r10d
je 0x14027e1e4
lea rcx, [rbp + 0x128]
call fcn.140294078
xor r10d, r10d
mov r11d, 1
test byte [r13], r11b
je 0x14027e1f4
neg ebx
jmp 0x14027e1f7
add ebx, r11d
test ebx, ebx
jg 0x14027d9a2
jmp 0x14027d354
mov r8b, byte [rcx + rax + 0x3ac568]
movsxd rax, dword [r13 + 0xc]
mov r11d, 1
imul rdx, rax, 0x38
movzx ecx, word [rdx + rsi + 0x14]
cmp r8b, r12b
jne 0x14027e232
mov eax, 0xf241
and cx, ax
or cx, r11w
jmp 0x14027e246
movzx eax, r8b
mov qword [rdx + rsi], rax
mov eax, 0xf244
and cx, ax
or cx, 4
mov word [rdx + rsi + 0x14], cx
mov r9, qword [rsp + 0x40]
xor r10d, r10d
jmp 0x14027ccf0
cmp ebx, 0x43
ja 0x14027eca5
je 0x14027ec78
cmp ebx, 0x38
ja 0x14027e73b
je 0x14027e6da
cmp ebx, 0x32
ja 0x14027e6bb
je 0x14027e6a3
sub ebx, 0x2d
je 0x14027e5dc
sub ebx, 1
je 0x14027e564
sub ebx, 1
je 0x14027e300
sub ebx, 1
je 0x14027e2d4
cmp ebx, 1
jne 0x14027f012
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
mov rdx, qword [rcx + rsi]
test rdx, rdx
jle 0x14027ccf0
movsxd rax, dword [r13 + 0xc]
sub rdx, rax
mov qword [rcx + rsi], rdx
mov edx, 4
jmp 0x14027d9ac
cmp dword [r13 + 4], r10d
je 0x14027e2e3
cmp qword [r15 + 0x2f0], r10
jmp 0x14027e2e8
cmp qword [r12 + 0x50], r10
jne 0x14027f012
cmp qword [r15 + 0x2f8], r10
je 0x14027d9ac
jmp 0x14027f012
movsxd rax, dword [r13 + 0xc]
mov r15, qword [r13 + 0x10]
imul rbx, rax, 0x38
add rbx, rsi
cmp word [r13 + 2], r10w
je 0x14027e337
mov rcx, qword [r15 + 0x20]
mov rax, qword [r12 + 0x108]
jmp 0x14027e332
cmp qword [rax + 0x38], rcx
je 0x140282e93
mov rax, qword [rax + 8]
test rax, rax
jne 0x14027e324
mov r8, qword [rsp + 0x60]
mov eax, dword [r8 + 0xb0]
cmp dword [r12 + 0x118], eax
jge 0x140283190
mov rax, qword [rbp - 0x58]
test byte [rbx + 0x14], al
jne 0x14027e488
mov edx, dword [r15 + 0x10]
mov ecx, dword [r15 + 0xc]
mov eax, dword [r15 + 8]
add ecx, edx
test edx, edx
lea r14d, [rcx + 1]
cmovne r14d, ecx
imul ecx, r14d, 7
add ecx, 0xf
add eax, 7
jns 0x14027e385
add eax, 7
add ecx, edx
sar eax, 3
lea esi, [rax + rcx*8]
mov rcx, r8
movsxd rdx, esi
call fcn.140251654
xor r10d, r10d
mov rdi, rax
test rax, rax
je 0x14028348e
mov eax, 0x9000
test word [rbx + 0x14], ax
jne 0x14027e3b8
cmp dword [rbx + 0x20], r10d
je 0x14027e3c3
mov rcx, rbx
call fcn.140294078
xor r10d, r10d
sub r13, qword [rsp + 0x40]
mov eax, 0x1010
mov r8, qword [rsp + 0x60]
mov word [rbx + 0x14], ax
lea rax, [0x140283ae0]
mov qword [rbx + 0x30], rax
mov qword [rbx + 8], rdi
mov dword [rbx + 0x10], esi
mov qword [rdi], r12
mov dword [rdi + 0x60], r14d
mov eax, dword [r15 + 0x10]
mov dword [rdi + 0x64], eax
movabs rax, 0x2aaaaaaaaaaaaaab
imul r13
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rdi + 0x54], edx
mov rax, qword [r12 + 0x68]
mov qword [rdi + 0x20], rax
mov eax, dword [r12 + 0x24]
mov dword [rdi + 0x5c], eax
mov rax, qword [r12 + 0x78]
mov qword [rdi + 0x28], rax
mov eax, dword [r12 + 0x28]
mov dword [rdi + 0x50], eax
mov rax, qword [r12 + 0x88]
mov qword [rdi + 0x10], rax
mov eax, dword [r12 + 0x90]
mov dword [rdi + 0x58], eax
mov rax, qword [r15 + 0x20]
mov qword [rdi + 0x38], rax
movsxd rax, r14d
imul rdx, rax, 0x38
lea rax, [rdi + 0x78]
add rdx, 0x78
add rdx, rdi
cmp rax, rdx
je 0x14027e47b
mov word [rax + 0x14], r10w
mov qword [rax + 0x18], r8
add rax, 0x38
jmp 0x14027e467
mov r14d, dword [rsp + 0x34]
mov r11d, 1
jmp 0x14027e48c
mov rdi, qword [rbx + 8]
add dword [r12 + 0x118], r11d
lea rsi, [rdi + 0x78]
mov rax, qword [r12 + 0x108]
mov qword [rdi + 8], rax
mov rax, qword [r8 + 0x38]
mov qword [rdi + 0x40], rax
mov rax, qword [r12 + 0x38]
mov qword [rdi + 0x68], rax
mov rax, qword [r12]
mov qword [rsp + 0x58], rsi
mov rcx, qword [rax + 0x78]
mov qword [rdi + 0x70], rcx
mov rax, qword [r12 + 0x128]
mov qword [rdi + 0x48], rax
mov qword [r12 + 0x128], r10
mov qword [r12 + 0x38], r10
mov qword [r12 + 0x108], rdi
mov qword [r12 + 0x68], rsi
movsxd rcx, dword [rdi + 0x60]
mov dword [r12 + 0x24], ecx
movzx eax, word [rdi + 0x64]
mov dword [r12 + 0x28], eax
imul rcx, rcx, 0x38
add rcx, rsi
mov qword [r12 + 0x78], rcx
movsxd rax, dword [r15 + 0x10]
lea rcx, [rcx + rax*8]
mov qword [rdi + 0x30], rcx
mov eax, dword [r15 + 8]
add eax, 7
cdq
and edx, 7
add eax, edx
xor edx, edx
sar eax, 3
movsxd r8, eax
call sub.VCRUNTIME140.dll_memset
mov rbx, qword [r15]
mov qword [r12 + 0x88], rbx
mov eax, dword [r15 + 8]
mov r15, qword [rsp + 0x60]
lea r13, [rbx - 0x18]
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x38], r13
mov dword [r12 + 0x90], eax
mov dil, byte [rsp + 0x30]
jmp 0x1402821c2
movsxd rax, dword [r13 + 4]
mov edi, dword [r13 + 0x10]
imul rbx, rax, 0x38
movsxd rax, dword [r13 + 0xc]
add rbx, rsi
imul rsi, rax, 0x38
mov rax, qword [rbp - 0x58]
add rsi, qword [rsp + 0x58]
test byte [rbx + 0x14], al
jne 0x14027e59c
mov rcx, rbx
call fcn.1402850cc
xor r10d, r10d
test eax, eax
jne 0x140283480
test edi, edi
je 0x14027e5bb
mov r8, qword [rsi]
mov edx, edi
mov rcx, qword [rbx + 8]
call fcn.1402742dc
xor r10d, r10d
test eax, eax
jne 0x14027d99c
test edi, edi
js 0x14027ccdb
mov rdx, qword [rsi]
mov rcx, qword [rbx + 8]
call fcn.140274288
mov rsi, qword [rsp + 0x58]
mov dil, byte [rsp + 0x30]
jmp 0x14027d953
movsxd rax, dword [r13 + 4]
imul rdi, rax, 0x38
mov rax, qword [rbp - 0x58]
add rdi, rsi
test byte [rdi + 0x14], al
je 0x14027e683
mov rbx, qword [rdi + 8]
test byte [rbx + 0x32], r8b
jne 0x14027e626
test byte [rbx + 0x32], r11b
jne 0x14027e61d
mov rcx, qword [rbx + 0x10]
call fcn.140241190
xor r10d, r10d
mov qword [rbx + 0x10], rax
mov ecx, 0x9000
lea r11d, [r10 + 1]
mov eax, 3
or word [rbx + 0x32], ax
mov rax, qword [rbx + 0x10]
test rax, rax
je 0x14027e683
mov rdi, qword [rax]
mov rax, qword [rax + 8]
mov qword [rbx + 0x10], rax
test rax, rax
jne 0x14027e64a
mov rcx, rbx
call fcn.140274208
xor r10d, r10d
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, rsi
test word [rcx + 0x14], ax
je 0x14027e66d
mov rdx, rdi
call fcn.140295154
jmp 0x14027e55a
mov eax, 4
mov qword [rcx], rdi
mov word [rcx + 0x14], ax
mov dil, byte [rsp + 0x30]
jmp 0x1402821c5
test word [rdi + 0x14], cx
je 0x14027e699
mov rcx, rdi
call fcn.1402940b4
xor r10d, r10d
jmp 0x14027ea4c
mov word [rdi + 0x14], r11w
jmp 0x14027ea52
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
test byte [rcx + rsi + 0x14], r11b
jne 0x14027d9ac
jmp 0x14027ec96
mov ecx, ebx
sub ecx, 0x33
je 0x14027e729
sub ecx, 1
je 0x14027e6da
sub ecx, 1
je 0x14027e6da
sub ecx, 1
je 0x14027e6da
cmp ecx, 1
jne 0x14027ec96
movsxd rax, dword [r13 + 4]
imul r15, rax, 0x38
movsxd rax, dword [r13 + 0xc]
imul r14, rax, 0x38
add r15, rsi
add r14, rsi
movzx esi, word [r15 + 0x14]
movzx edi, word [r14 + 0x14]
movzx eax, di
and ax, si
test dl, al
je 0x14027e841
mov rax, qword [r15]
cmp qword [r14], rax
mov r14d, dword [rsp + 0x34]
jle 0x14027e809
mov rax, qword [0x1403c90c8]
cmp byte [rbx + rax], r10b
jmp 0x14027e8dc
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
test byte [rcx + rsi + 0x14], r11b
jmp 0x14027e7fe
cmp ebx, 0x3e
ja 0x14027ea77
je 0x14027e9f3
mov ecx, ebx
sub ecx, 0x39
je 0x14027e6da
sub ecx, 1
je 0x14027e7f9
sub ecx, 1
je 0x14027e7d2
sub ecx, 1
je 0x14027e7ab
cmp ecx, 1
jne 0x14027ec96
movsxd rcx, dword [r13 + 4]
mov rax, qword [r15 + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 8]
call fcn.14024b6ac
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r14d, eax
test eax, eax
je 0x14028002b
cmp eax, 0x65
jne 0x140282eee
mov r14d, r10d
mov dword [rsp + 0x34], r10d
jmp 0x14027d99c
movsxd rax, dword [r13 + 4]
movabs r8, 0x8000000000000000
imul rcx, rax, 0x38
mov rax, qword [rcx + rsi]
cmp rax, r8
jle 0x14027e7cd
dec rax
mov qword [rcx + rsi], rax
test rax, rax
jmp 0x14027e7fe
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + rsi]
test rax, rax
je 0x14027ec96
jle 0x14027d9ac
dec rax
mov qword [rcx + rsi], rax
jmp 0x14027d9ac
cmp dword [rsp + 0x70], r10d
je 0x14027d9ac
jmp 0x14027ec96
jge 0x14027e826
mov rax, qword [0x1403c90b8]
cmp byte [rbx + rax], r10b
jne 0x14027d9ac
or dword [rsp + 0x70], 0xffffffff
jmp 0x14027d9bd
mov rax, qword [0x1403c90c0]
cmp byte [rbx + rax], r10b
jne 0x14027d9ac
mov dword [rsp + 0x70], r10d
jmp 0x14027d9bd
movzx ecx, di
or cx, si
test r11b, cl
je 0x14027e8ec
test byte [r13 + 2], 0x80
je 0x14027e8cf
test r11b, al
je 0x14027e8b4
mov eax, 0x100
test ax, di
jne 0x14027e8b4
mov r8d, r10d
mov dword [rsp + 0x70], r10d
movzx ecx, byte [r13]
mov rax, qword [0x1403c90c0]
test r8d, r8d
je 0x14027e886
mov rax, qword [0x1403c90c8]
mov dl, byte [rcx + rax]
mov word [r14 + 0x14], di
mov r14d, dword [rsp + 0x34]
mov word [r15 + 0x14], si
test dl, dl
jne 0x14027e2ca
mov r15, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x58]
mov dil, byte [rsp + 0x30]
jmp 0x14027ccf0
movzx eax, di
not ax
and eax, r11d
lea r8d, [rax*2 - 1]
mov dword [rsp + 0x70], r8d
jmp 0x14027e9d9
mov rax, qword [rbp - 0x58]
test byte [r13 + 2], al
mov r14d, dword [rsp + 0x34]
jne 0x14027d9ac
mov dword [rsp + 0x70], r11d
jmp 0x14027d9bd
mov al, byte [r13 + 2]
and al, 0x47
cmp al, 0x43
jb 0x14027e938
test r8b, cl
je 0x14027e9b7
mov al, sil
and al, 0x2e
cmp al, r8b
jne 0x14027e91e
xor edx, edx
mov rcx, r15
call fcn.1401f6f5c
movzx edi, word [r14 + 0x14]
mov r8d, 2
mov al, dil
and al, 0x2e
cmp al, r8b
jne 0x14027e9b7
xor edx, edx
mov rcx, r14
call fcn.1401f6f5c
jmp 0x14027e9b7
cmp al, 0x42
jne 0x14027e9b7
mov bl, byte [rsp + 0x30]
mov eax, 0x2c
test r8b, sil
jne 0x14027e98c
test al, sil
je 0x14027e98c
mov r8b, r11b
mov dl, bl
mov rcx, r15
call fcn.140285528
xor si, word [r15 + 0x14]
mov r8d, 2
mov r12d, 0xdbf
and si, r12w
xor si, word [r15 + 0x14]
lea eax, [r8 + 0x2a]
lea r11d, [r8 - 1]
cmp r15, r14
jne 0x14027e992
movzx edi, si
or di, r8w
jmp 0x14027e992
mov r12d, 0xdbf
test r8b, dil
jne 0x14027e9b7
test al, dil
je 0x14027e9b7
mov r8b, r11b
mov dl, bl
mov rcx, r14
call fcn.140285528
xor di, word [r14 + 0x14]
and di, r12w
xor di, word [r14 + 0x14]
mov r8, qword [r13 + 0x10]
mov rdx, r15
mov rcx, r14
call fcn.14026bf50
mov r9, qword [rsp + 0x40]
xor r10d, r10d
mov r8d, eax
mov dword [rsp + 0x70], eax
lea r11d, [r10 + 1]
test r8d, r8d
jns 0x14027e86e
movzx ecx, byte [r13]
mov rax, qword [0x1403c90b8]
jmp 0x14027e886
movsxd rcx, dword [r13 + 4]
mov rax, qword [r12 + 0x78]
mov rdi, qword [rax + rcx*8]
cmp byte [rdi + 2], r10b
jne 0x14027d9c7
mov rcx, qword [rdi + 0x30]
mov rbx, qword [rcx]
mov rsi, qword [rbx]
call qword [rsi + 0x48]
mov rdx, rbx
mov rcx, r12
mov r14d, eax
mov dword [rsp + 0x34], eax
call fcn.140287db4
xor r10d, r10d
test r14d, r14d
jne 0x140282eee
mov rcx, qword [rdi + 0x30]
call qword [rsi + 0x50]
mov rsi, qword [rsp + 0x58]
xor r10d, r10d
test eax, eax
jne 0x14027e679
mov r11d, 1
mov dil, byte [rsp + 0x30]
mov eax, dword [r13 + 8]
sub eax, r11d
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rsp + 0x40]
lea r13, [rax + rcx*8]
mov qword [rsp + 0x38], r13
jmp 0x1402821c5
sub ebx, 0x3f
je 0x14027ec11
sub ebx, 1
je 0x140282c59
sub ebx, 1
je 0x14027ea97
cmp ebx, 1
jne 0x14027f012
mov rdi, qword [r13 + 0x10]
movsxd rax, dword [r13 + 0xc]
imul rbx, rax, 0x38
mov qword [rsp + 0x78], rdi
add rbx, rsi
cmp qword [rdi], rbx
je 0x14027eafd
mov al, byte [rsp + 0x30]
mov byte [rdi + 0x28], al
movzx eax, byte [rdi + 0x2a]
mov edx, eax
mov qword [rdi + 0x18], r12
sub rdx, 1
mov qword [rdi], rbx
lea r9d, [rax - 1]
js 0x14027eafd
mov r15, qword [rbp - 0x70]
lea r8, [rdx + 6]
lea r8, [rdi + r8*8]
mov eax, dword [r13 + 8]
add eax, r9d
sub r9d, r11d
cdqe
imul rcx, rax, 0x38
add rcx, rsi
mov qword [r8], rcx
sub r8, r15
sub rdx, r11
jns 0x14027eada
mov r15, qword [rsp + 0x60]
movzx eax, word [rbx + 0x14]
lea r8, [rdi + 0x30]
mov ecx, 0xf241
and ax, cx
mov rcx, rdi
or ax, r11w
mov word [rbx + 0x14], ax
mov rax, qword [rdi + 8]
movzx edx, byte [rdi + 0x2a]
call qword [rax + 0x18]
mov eax, dword [rdi + 0x24]
xor r10d, r10d
test eax, eax
je 0x14028002b
jle 0x14027eb8a
movzx eax, word [rbx + 0x14]
mov ecx, 0x202
and ax, cx
cmp ax, cx
lea eax, [r10 + 1]
jne 0x14027eb53
cmp byte [rbx + 0x16], al
jne 0x14027eb53
mov rax, qword [rbx + 8]
jmp 0x14027eb67
test byte [rbx + 0x14], al
je 0x14027eb5d
mov rax, r10
jmp 0x14027eb67
mov dl, al
mov rcx, rbx
call fcn.1402932c0
mov r8, rax
lea rdx, [0x1403b1d80]
mov rcx, r12
call fcn.14027c8bc
mov r12d, dword [rdi + 0x24]
xor r10d, r10d
mov dword [rsp + 0x34], r12d
mov r12, qword [rsp + 0x50]
mov r15d, dword [r13 + 4]
lea rsi, [r12 + 0x128]
mov rbx, qword [rsi]
mov r14d, dword [rdi + 0x20]
test rbx, rbx
je 0x14027ebfa
mov rdi, qword [rsp + 0x60]
test r14d, r14d
js 0x14027ebc9
cmp dword [rbx], r14d
jne 0x14027ebc3
mov eax, dword [rbx + 4]
test eax, eax
js 0x14027ebc3
cmp eax, 0x1f
jg 0x14027ebc9
bt r15d, eax
jae 0x14027ebc9
lea rsi, [rbx + 0x18]
jmp 0x14027ebed
mov rax, qword [rbx + 0x10]
test rax, rax
je 0x14027ebd8
mov rcx, qword [rbx + 8]
call rax
mov rax, qword [rbx + 0x18]
mov rdx, rbx
mov rcx, rdi
mov qword [rsi], rax
call fcn.1402514c0
xor r10d, r10d
mov rbx, qword [rsi]
test rbx, rbx
jne 0x14027eba7
mov rdi, qword [rsp + 0x78]
mov r14d, dword [rsp + 0x34]
mov dword [rdi + 0x24], r10d
test r14d, r14d
jne 0x140282eee
jmp 0x14027ccd6
movsxd rax, dword [r13 + 4]
mov rdx, r13
mov rcx, rsi
imul rbx, rax, 0x38
call fcn.140204834
movsxd rcx, dword [rbx + rsi + 0x10]
xor edx, edx
mov r9, qword [rsp + 0x40]
mov r11d, 1
div rcx
mov rax, qword [rbx + rsi + 8]
mov rcx, rdx
shr rcx, 3
movsx r8d, byte [rcx + rax]
mov al, dl
and al, 7
lea edx, [r11 + 3]
movzx eax, al
bt r8d, eax
jb 0x14027ec6b
add dword [r12 + 0xf4], r11d
xor r10d, r10d
jmp 0x14027d9ac
add dword [r12 + 0xf0], r11d
jmp 0x14027edb1
movsxd rax, dword [r13 + 4]
imul rax, rax, 0x38
test byte [rax + rsi + 0x14], dl
je 0x14027f012
mov rax, qword [rax + rsi]
lea rcx, [rax + rax*2]
lea r13, [r9 + rcx*8]
mov eax, 5
mov ecx, 0x9000
jmp 0x14027ccff
cmp ebx, 0x4e
ja 0x14027ef98
je 0x14027ef10
cmp ebx, 0x49
ja 0x14027ede6
je 0x140280bb6
sub ebx, 0x44
je 0x14027edb9
sub ebx, 1
je 0x14027ed15
sub ebx, 1
je 0x14027ed28
sub ebx, 1
je 0x14027ecfe
cmp ebx, 1
jne 0x14027f012
mov rdx, r13
mov rcx, r12
call fcn.140237d54
mov rcx, qword [r13 + 0x10]
mov rdx, qword [rcx]
mov qword [rax], rdx
jmp 0x14027d953
mov rdx, r13
mov rcx, r12
call fcn.140237d54
movsxd rcx, dword [r13 + 4]
mov qword [rax], rcx
jmp 0x14027d953
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
test byte [rcx + rsi + 0x14], r11b
je 0x14027ec96
mov rcx, qword [r12 + 0x108]
test rcx, rcx
je 0x1402831a7
cmp dword [r13 + 4], r10d
jne 0x1402831a7
mov rax, qword [rcx + 8]
dec dword [r12 + 0x118]
mov qword [r12 + 0x108], rax
mov rax, qword [r12 + 0x38]
add qword [r15 + 0x80], rax
mov qword [r15 + 0x78], rax
call fcn.140283af8
mov edx, 4
lea r11d, [rdx - 3]
cmp dword [r13 + 8], edx
jne 0x14027ed90
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [r12 + 0x88]
mov eax, dword [rax + rcx*8 + 8]
sub eax, r11d
mov r9, qword [r12 + 0x88]
mov rsi, qword [r12 + 0x68]
cdqe
mov qword [rsp + 0x40], r9
mov qword [rsp + 0x58], rsi
lea rcx, [rax + rax*2]
lea r13, [r9 + rcx*8]
xor r10d, r10d
jmp 0x14027ec96
movsxd rax, dword [r13 + 4]
imul rdx, rax, 0x38
mov rax, qword [rdx + rsi]
lea rcx, [rax + rax*2]
mov eax, dword [r9 + rcx*8 + 8]
sub eax, r11d
mov word [rdx + rsi + 0x14], r10w
cdqe
lea rcx, [rax + rax*2]
lea r13, [r9 + rcx*8]
jmp 0x14027ccf0
sub ebx, 0x4a
je 0x14027ee80
sub ebx, 1
je 0x14027ee80
sub ebx, 1
je 0x14027ee5d
cmp ebx, 1
jne 0x14027f012
mov rdx, r13
mov rcx, r12
call fcn.140237d54
mov rdx, qword [r13 + 0x10]
mov rbx, rax
xor eax, eax
mov rcx, rbx
test rdx, rdx
jne 0x14027ee40
mov edx, dword [r13 + 4]
call fcn.140285478
mov rcx, rbx
call fcn.140284b7c
xor r10d, r10d
test eax, eax
jne 0x140283480
jmp 0x14027ee54
movsxd r8, dword [r13 + 4]
xor r9d, r9d
mov qword [rsp + 0x20], rax
call fcn.140285194
xor r10d, r10d
mov byte [rbx + 0x16], dil
jmp 0x14027cce5
movsxd rax, dword [r13 + 4]
mov edx, 0xffc1
imul rcx, rax, 0x38
movzx eax, word [rcx + rsi + 0x14]
and ax, dx
or ax, r11w
mov word [rcx + rsi + 0x14], ax
jmp 0x14027ccf0
mov rdx, r13
mov rcx, r12
call fcn.140237d54
mov ecx, dword [r13 + 4]
mov r11d, 1
mov edi, dword [r13 + 0xc]
neg ecx
mov edx, dword [r13 + 8]
mov ecx, 0x100
sbb si, si
lea rbx, [rax + 0x14]
and si, cx
xor r10d, r10d
add si, r11w
mov dword [rax + 0x10], r10d
sub edi, edx
mov word [rbx], si
test edi, edi
jle 0x14027d34a
mov ecx, 0x9000
lea rbx, [rbx + 0x38]
test word [rbx], cx
je 0x14027eee9
lea rcx, [rbx - 0x14]
call fcn.1402940b4
xor r10d, r10d
mov ecx, 0x9000
lea r11d, [r10 + 1]
sub edi, r11d
mov word [rbx], si
mov dword [rbx - 4], r10d
test edi, edi
jg 0x14027eecb
mov rsi, qword [rsp + 0x58]
mov dil, byte [rsp + 0x30]
mov r9, qword [rsp + 0x40]
mov eax, 5
jmp 0x14027ccfa
movsxd rax, dword [r13 + 4]
mov rdi, qword [r12 + 0x80]
imul rcx, rax, 0x38
add rdi, 0xffffffffffffffc8
add rdi, rcx
test byte [rdi + 0x14], 0x12
je 0x14027ef4c
mov rax, qword [rbp - 0x68]
mov ecx, dword [rdi + 0x10]
test word [rdi + 0x14], ax
je 0x14027ef3c
add ecx, dword [rdi]
mov rax, qword [rdi + 0x18]
cmp ecx, dword [rax + 0x88]
jg 0x1402833da
movsxd rax, dword [r13 + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, rsi
test word [rbx + 0x14], ax
je 0x14027ef6a
mov rcx, rbx
call fcn.1402940b4
mov r8d, 0x18
mov rdx, rdi
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcpy
movzx eax, word [rbx + 0x14]
mov ecx, 0xafff
and ax, cx
mov ecx, 0x2040
or ax, cx
mov word [rbx + 0x14], ax
jmp 0x14027e5d2
cmp ebx, 0x54
ja 0x14027f15c
je 0x1402832bd
sub ebx, 0x4f
je 0x14027f0ce
sub ebx, 1
je 0x14027f040
sub ebx, 1
je 0x14027f01c
sub ebx, 1
je 0x14027efd7
cmp ebx, 1
jne 0x14027f012
xor edx, edx
mov rcx, r12
call fcn.14027c220
jmp 0x14027d394
movsxd rax, dword [r13 + 8]
imul r8, rax, 0x38
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
add r8, rsi
mov rax, qword [rcx + rsi]
mov ecx, 0x9000
test word [r8 + 0x14], cx
je 0x14027f00a
mov rdx, rax
mov rcx, r8
call fcn.140295154
jmp 0x14027d953
mov qword [r8], rax
mov word [r8 + 0x14], dx
mov eax, 5
jmp 0x14027ccff
movsxd rax, dword [r13 + 4]
imul rdx, rax, 0x38
movsxd rax, dword [r13 + 8]
imul rcx, rax, 0x38
add rdx, rsi
add rcx, rsi
mov r8d, dword [rbp - 0x60]
call fcn.1402854c8
jmp 0x14027d953
movsxd rax, dword [r13 + 4]
mov esi, dword [r13 + 0xc]
mov r12d, dword [rbp - 0x60]
imul rdi, rax, 0x38
movsxd rax, dword [r13 + 8]
add rdi, qword [rsp + 0x58]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x58]
mov r8d, r12d
mov rdx, rdi
mov rcx, rbx
call fcn.1402854c8
test word [rbx + 0x14], r12w
je 0x14027f08c
mov rcx, rbx
call fcn.140284f2c
xor r10d, r10d
test eax, eax
jne 0x140283480
jmp 0x14027f08f
xor r10d, r10d
movzx eax, word [rbx + 0x14]
bt ax, 0xb
jae 0x14027f0b1
mov ecx, 2
test byte [r13 + 2], cl
je 0x14027f0b1
mov ecx, 0xf7ff
and ax, cx
mov word [rbx + 0x14], ax
mov eax, esi
mov r11d, 1
sub esi, r11d
test eax, eax
je 0x14027d34a
add rbx, 0x38
add rdi, 0x38
jmp 0x14027f062
movsxd rax, dword [r13 + 4]
mov esi, dword [r13 + 0xc]
mov r12d, dword [rbp - 0x60]
imul rdi, rax, 0x38
movsxd rax, dword [r13 + 8]
add rdi, qword [rsp + 0x58]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x58]
mov eax, 0x9000
test word [rbx + 0x14], ax
jne 0x14027f101
cmp dword [rbx + 0x20], r10d
je 0x14027f109
mov rcx, rbx
call fcn.140294078
mov r8d, 0x38
mov rdx, rdi
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcpy
xor r10d, r10d
mov r11d, 1
mov word [rdi + 0x14], r11w
mov dword [rdi + 0x20], r10d
test word [rbx + 0x14], r12w
je 0x14027f14a
mov rcx, rbx
call fcn.140284f2c
xor r10d, r10d
test eax, eax
jne 0x140283480
lea r11d, [r10 + 1]
add rdi, 0x38
add rbx, 0x38
sub esi, r11d
jne 0x14027f0f0
jmp 0x14027d34a
sub ebx, 0x55
je 0x14027f223
sub ebx, 1
je 0x14027f204
sub ebx, 1
je 0x14027f1bb
cmp ebx, 1
jne 0x14027f012
movsxd rax, dword [r13 + 4]
imul rbx, rax, 0x38
mov rax, qword [rbp - 0x68]
add rbx, rsi
test word [rbx + 0x14], ax
je 0x14027f1a7
mov rcx, rbx
call fcn.140284b7c
xor r10d, r10d
mov r14d, eax
test eax, eax
jne 0x140282eee
mov dl, byte [r13 + 8]
mov r8b, dil
mov rcx, rbx
call fcn.1402849c0
jmp 0x14027d394
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
add rcx, rsi
movzx eax, word [rcx + 0x14]
test al, 0x24
je 0x14027ec96
mov r12, qword [rbp - 0x70]
test r12b, al
je 0x14027f1e1
movsd xmm0, qword [rcx]
jmp 0x14027f1e9
xorps xmm0, xmm0
cvtsi2sd xmm0, qword [rcx]
mov r8d, 0xf248
movsd qword [rcx], xmm0
and ax, r8w
or ax, r12w
mov word [rcx + 0x14], ax
jmp 0x14027ec96
movsxd rax, dword [r13 + 4]
imul rbx, rax, 0x38
add rbx, rsi
mov rcx, rbx
call fcn.140284efc
movsxd rax, dword [r13 + 8]
add qword [rbx], rax
jmp 0x14027d953
cmp dword [r13 + 4], r10d
je 0x14027f012
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, rsi
test word [rcx + 0x14], ax
je 0x14027f24a
xor edx, edx
jmp 0x14027f000
mov qword [rcx], r10
mov word [rcx + 0x14], dx
jmp 0x14027ec96
test byte [r13 + 2], r11b
jne 0x14027f261
mov rdi, r10
jmp 0x14027f268
mov rdi, qword [r13 - 8]
add rdi, rdx
mov rdx, qword [rsp + 0x38]
mov r14d, r10d
mov r13, qword [r13 + 0x10]
mov rbx, r10
movsxd rax, dword [rdx + 0xc]
mov r8d, dword [rdx + 4]
mov ecx, dword [rdx + 8]
mov dword [rsp + 0x68], r8d
mov dword [rsp + 0x6c], ecx
mov qword [rsp + 0x78], rax
test rax, rax
jle 0x140282e77
lea r15, [r13 + 0x20]
test rdi, rdi
je 0x14027f2a7
mov edx, dword [rdi + rbx*4]
jmp 0x14027f2aa
mov edx, r14d
mov rax, qword [r13 + 0x18]
add ecx, edx
imul r12, rcx, 0x38
movzx eax, byte [rbx + rax]
lea ecx, [rdx + r8]
mov r8, qword [r15]
and eax, r11d
mov dword [rbp - 0x78], eax
add r12, rsi
imul rax, rcx, 0x38
mov rdx, r12
add rsi, rax
mov rcx, rsi
call fcn.14026bf50
xor r10d, r10d
mov dword [rsp + 0x70], eax
mov r8d, eax
lea r11d, [r10 + 1]
test eax, eax
jne 0x14027f31f
add r15, qword [rbp - 0x70]
add r14d, r11d
mov r8d, dword [rsp + 0x68]
add rbx, r11
mov ecx, dword [rsp + 0x6c]
mov rsi, qword [rsp + 0x58]
cmp rbx, qword [rsp + 0x78]
jl 0x14027f29d
mov r13, qword [rsp + 0x38]
mov r14d, dword [rsp + 0x34]
mov r15, qword [rsp + 0x60]
jmp 0x14027d34f
mov rax, qword [r13 + 0x18]
mov ecx, 2
test byte [rbx + rax], cl
je 0x14027f342
test byte [rsi + 0x14], r11b
jne 0x14027f33a
test byte [r12 + 0x14], r11b
je 0x14027f342
neg r8d
mov dword [rsp + 0x70], r8d
mov r13, qword [rsp + 0x38]
mov r14d, dword [rsp + 0x34]
mov r15, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x58]
cmp dword [rbp - 0x78], r10d
je 0x14027d34f
neg r8d
mov dword [rsp + 0x70], r8d
jmp 0x14027d34f
cmp ebx, 0x89
ja 0x140281885
je 0x14028180d
cmp ebx, 0x72
ja 0x140280a5f
je 0x1402809fe
cmp ebx, 0x67
ja 0x140280222
je 0x140280061
cmp ebx, 0x61
ja 0x140280036
je 0x14027fbfc
sub ebx, 0x5b
je 0x14027fbb3
sub ebx, 1
je 0x14027fb7a
sub ebx, r8d
je 0x14027f594
sub ebx, 1
je 0x14027f46e
cmp ebx, 1
jne 0x14027f012
movsxd rax, dword [r13 + 4]
mov rdi, qword [r13 + 0x10]
imul rbx, rax, 0x38
mov al, byte [rdi]
add rbx, rsi
mov r8b, byte [rsp + 0x30]
mov dl, al
mov rcx, rbx
call fcn.1401f6ef4
cmp byte [rdi], 0x45
jne 0x14027f44f
movzx ecx, word [rbx + 0x14]
mov eax, 4
test al, cl
je 0x14027f44f
mov rdx, qword [rbx]
movabs rax, 0x800000000000
add rax, rdx
movabs r8, 0xffffffffffff
cmp rax, r8
mov eax, 0xfffb
ja 0x14027f438
and cx, ax
or cx, word [rbp - 0x48]
jmp 0x14027f44b
xorps xmm0, xmm0
and cx, ax
or cx, word [rbp - 0x70]
cvtsi2sd xmm0, rdx
movsd qword [rbx], xmm0
mov word [rbx + 0x14], cx
mov r11d, 1
xor r10d, r10d
add rdi, r11
mov al, byte [rdi]
test al, al
je 0x14027d34f
add rbx, 0x38
jmp 0x14027f3ea
mov r15, qword [r13 + 0x10]
mov r14d, r10d
movsxd rax, dword [r13 + 4]
imul rbx, rax, 0x38
mov rdi, qword [r15 + 8]
add rbx, rsi
cmp r10w, word [r15 + 0x36]
jge 0x140282e84
lea rsi, [rdi + 0xc]
test byte [rsi + 6], 0x60
je 0x14027f4b5
mov rax, qword [rbp - 0x48]
test byte [rsi + 6], al
jne 0x14027f570
cmp dword [r13 + 0xc], r10d
je 0x14027f4b5
add rbx, 0x38
jmp 0x14027f570
mov r8b, byte [rsp + 0x30]
mov rcx, rbx
mov dl, byte [rsi]
call fcn.1401f6ef4
movzx ecx, word [rbx + 0x14]
mov r11d, 1
movzx edx, cx
test r11b, cl
jne 0x14027f569
mov eax, dword [rsi - 4]
lea r8d, [r11 + 1]
shr eax, 4
and eax, 0xf
sub eax, r8d
je 0x14027f55d
sub eax, r11d
je 0x14027f556
sub eax, r11d
je 0x14027f556
sub eax, r11d
je 0x14027f505
cmp eax, r11d
jne 0x14027f569
test r8b, cl
jmp 0x14027f563
mov eax, 4
test al, cl
je 0x14027f551
mov rdx, qword [rbx]
movabs rax, 0x800000000000
add rax, rdx
movabs r8, 0xffffffffffff
cmp rax, r8
ja 0x14027f533
or cx, word [rbp - 0x48]
jmp 0x14027f543
or cx, word [rbp - 0x70]
xorps xmm0, xmm0
cvtsi2sd xmm0, rdx
movsd qword [rbx], xmm0
mov eax, 0xfffb
and cx, ax
mov word [rbx + 0x14], cx
jmp 0x14027f569
test cl, 0x28
jmp 0x14027f563
mov eax, 4
jmp 0x14027f561
mov rax, qword [rbp - 0x58]
test al, cl
je 0x140283348
add rbx, 0x38
xor r10d, r10d
movsx eax, word [r15 + 0x36]
add r14d, r11d
add rsi, 0x18
cmp r14d, eax
jl 0x14027f493
mov r14d, dword [rsp + 0x34]
mov r15, qword [rsp + 0x60]
jmp 0x14027d34a
movsxd rcx, dword [r13 + 4]
mov rax, qword [r12 + 0x78]
mov r15d, dword [r13 + 8]
mov rbx, qword [rax + rcx*8]
mov dword [rsp + 0x68], r15d
mov r13, qword [rbx + 0x58]
mov eax, dword [r12 + 0x2c]
mov qword [rsp + 0x78], r13
cmp dword [rbx + 0x20], eax
je 0x14027f5f6
cmp byte [rbx + 2], r10b
jne 0x14027f670
mov rdi, qword [rbx + 0x30]
cmp byte [rbx + 3], r10b
je 0x14027f5ef
mov rdx, qword [rbx + 0x10]
test rdx, rdx
je 0x14027f61f
lea eax, [r15 + 1]
mov eax, dword [rdx + rax*4]
test eax, eax
je 0x14027f61f
mov rbx, qword [rbx + 0x28]
lea r15d, [rax - 1]
jmp 0x14027f5a5
cmp byte [rdi], r10b
je 0x14027f639
jmp 0x14027f603
mov rax, qword [rbx + 0x30]
cmp byte [rax], r10b
je 0x14027f761
mov rcx, rbx
call fcn.1402840f8
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r14d, eax
test eax, eax
jne 0x140282eee
jmp 0x14027f5aa
mov rcx, rbx
call fcn.140283a98
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r14d, eax
test eax, eax
jne 0x140282eee
mov rcx, rdi
call fcn.14022dfd8
mov eax, dword [rdi + 0x40]
xor r10d, r10d
mov dword [rbx + 0x68], eax
mov rax, qword [rdi + 0x88]
movzx ecx, word [rdi + 0x44]
mov edx, dword [rax + 0x58]
sub edx, dword [rdi + 0x38]
cmp ecx, edx
jle 0x14027f667
test edx, edx
mov ecx, edx
cmovs ecx, r10d
mov dword [rbx + 0x6c], ecx
mov rcx, qword [rdi + 0x38]
jmp 0x14027f69e
mov eax, 3
cmp byte [rbx], al
jne 0x14027f727
cmp dword [rbx + 0x24], r10d
jle 0x14027f727
movsxd rax, dword [rbx + 0x24]
imul rcx, rax, 0x38
mov eax, dword [rcx + rsi + 0x10]
mov dword [rbx + 0x6c], eax
mov dword [rbx + 0x68], eax
mov rcx, qword [rcx + rsi + 8]
mov qword [rbx + 0x60], rcx
lea rsi, [rbx + 0x40]
mov eax, dword [r12 + 0x2c]
mov dword [rbx + 0x20], eax
movzx eax, byte [rcx]
mov dword [r13], eax
mov qword [rbp - 0x40], rsi
cmp eax, 0x80
jae 0x14027f6cb
mov r11d, 1
mov eax, r11d
jmp 0x14027f6e1
mov rcx, qword [rbx + 0x60]
mov rdx, r13
call fcn.140268558
xor r10d, r10d
movzx eax, al
lea r11d, [r10 + 1]
mov dword [rsi], eax
lea rdi, [rbx + 0x4a]
mov word [rdi], r10w
mov eax, dword [r13]
mov qword [rbp - 0x78], rdi
cmp dword [rbx + 0x6c], eax
jae 0x14027f71a
mov qword [rbx + 0x60], r10
mov dword [rbx + 0x6c], r10d
mov eax, dword [r13]
cmp eax, 0x18003
ja 0x14027f934
cmp eax, dword [rbx + 0x68]
ja 0x14027f934
jmp 0x14027f765
mov rax, qword [rbx + 0x60]
mov qword [rbp - 0x28], rax
jmp 0x14027f7e0
mov r13, qword [rsp + 0x38]
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, rsi
test word [rcx + 0x14], ax
je 0x14027f751
call fcn.1402940b4
mov r15, qword [rsp + 0x60]
jmp 0x14027e5d2
mov r11d, 1
mov word [rcx + 0x14], r11w
jmp 0x14027f315
lea rdi, [rbx + 0x4a]
movzx r14d, word [rdi]
cmp r14d, r15d
ja 0x14027f9c4
mov eax, dword [r13]
lea rsi, [rbx + 0x40]
mov qword [rbp - 0x40], rsi
cmp dword [rsi], eax
jae 0x14027f95c
mov rax, qword [rbx + 0x60]
mov qword [rbp - 0x28], rax
test rax, rax
jne 0x14027f7d8
xor edx, edx
lea r8d, [rax + 0x38]
lea rcx, [rbp + 0xf0]
call sub.VCRUNTIME140.dll_memset
mov edx, dword [r13]
lea r8, [rbp + 0xf0]
mov rcx, qword [rbx + 0x30]
call fcn.140284d68
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r14d, eax
test eax, eax
jne 0x140282eee
mov rax, qword [rbp + 0xf8]
mov qword [rbp - 0x28], rax
jmp 0x14027f7dc
mov qword [rbp - 0x40], rsi
mov qword [rbp - 0x78], rdi
movzx r14d, word [rdi]
mov r11d, 1
mov edi, dword [rsi]
mov r15d, r14d
mov rcx, qword [rsp + 0x78]
add rdi, rax
mov r12d, dword [r13 + r14*4]
mov r13d, dword [r13]
add r13, rax
movzx esi, byte [rdi]
mov dword [rsp + 0x6c], esi
mov dword [rbx + r15*4 + 0x70], esi
cmp esi, 0x80
jae 0x14027f82b
lea rdx, [0x140000000]
add rdi, r11
movzx eax, byte [rsi + rdx + 0x3ab880]
jmp 0x14027f870
lea rdx, [rsp + 0x6c]
mov rcx, rdi
call fcn.140268558
mov esi, dword [rsp + 0x6c]
movzx eax, al
add rdi, rax
mov dword [rbx + r15*4 + 0x70], esi
cmp esi, 0x80
jb 0x14027f856
lea eax, [rsi - 0xc]
shr eax, 1
jmp 0x14027f865
lea rcx, [0x140000000]
movzx eax, byte [rsi + rcx + 0x3ab880]
mov rcx, qword [rsp + 0x78]
mov r11d, 1
add r14d, r11d
add r12, rax
movsxd r15, r14d
mov dword [rcx + r15*4], r12d
cmp r14d, dword [rsp + 0x68]
ja 0x14027f88d
cmp rdi, r13
jb 0x14027f803
cmp rdi, r13
jb 0x14027f8ec
ja 0x14027f8f4
mov eax, dword [rbx + 0x68]
cmp r12, rax
jne 0x14027f8f4
xor r10d, r10d
sub edi, dword [rbp - 0x28]
mov r15, qword [rbp - 0x78]
mov rax, qword [rbp - 0x40]
mov word [r15], r14w
mov dword [rax], edi
cmp qword [rbx + 0x60], r10
jne 0x14027f8e0
mov eax, 0x9000
test word [rbp + 0x104], ax
jne 0x14027f8cd
cmp dword [rbp + 0x110], r10d
je 0x14027f8e0
lea rcx, [rbp + 0xf0]
call fcn.140294078
movzx r14d, word [r15]
xor r10d, r10d
mov r13, qword [rsp + 0x78]
mov r15d, dword [rsp + 0x68]
jmp 0x14027f95f
mov eax, dword [rbx + 0x68]
cmp r12, rax
jbe 0x14027f89c
xor r10d, r10d
cmp dword [rcx], r10d
jne 0x14027f904
mov r14d, r10d
mov rdi, r13
jmp 0x14027f89f
cmp qword [rbx + 0x60], r10
jne 0x14027f934
mov eax, 0x9000
test word [rbp + 0x104], ax
jne 0x14027f921
cmp dword [rbp + 0x110], r10d
je 0x14027f934
lea rcx, [rbp + 0xf0]
call fcn.140294078
xor r10d, r10d
lea r11d, [r10 + 1]
mov r9, qword [rsp + 0x40]
mov eax, dword [r9 + 0xc]
test eax, eax
jle 0x1402833ad
mov r14d, dword [rsp + 0x34]
dec eax
movsxd rcx, eax
lea rax, [rcx + rcx*2]
lea r13, [r9 + rax*8]
jmp 0x14027e8a0
mov esi, r10d
movzx eax, r14w
cmp eax, r15d
ja 0x14027f9bf
mov r13, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x58]
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
add rcx, rsi
cmp byte [r13 + 1], 0xf6
jne 0x14027f99d
mov rdx, qword [r13 + 0x10]
mov r8d, 0x2000
call fcn.1402854c8
mov r14d, dword [rsp + 0x34]
jmp 0x14027f747
mov eax, 0x9000
test word [rcx + 0x14], ax
je 0x14027f9af
call fcn.1402940b4
jmp 0x14027f993
mov r11d, 1
mov word [rcx + 0x14], r11w
jmp 0x14027f310
mov r14d, r15d
jmp 0x14027f9cc
mov r14d, r15d
mov esi, dword [rbx + r14*4 + 0x70]
mov r12, qword [rsp + 0x38]
movsxd rax, dword [r12 + 0xc]
imul rdi, rax, 0x38
mov eax, 0x9000
add rdi, qword [rsp + 0x58]
test word [rdi + 0x14], ax
je 0x14027f9f2
mov rcx, rdi
call fcn.1402940b4
lea eax, [r15 + 1]
mov eax, dword [r13 + rax*4]
cmp dword [rbx + 0x6c], eax
jb 0x14027facc
mov r14d, dword [r13 + r14*4]
add r14, qword [rbx + 0x60]
cmp esi, 0xc
jae 0x14027fa31
mov rcx, r14
mov edx, esi
mov r8, rdi
call fcn.1402864f0
mov r14d, dword [rsp + 0x34]
mov r13, r12
mov r15, qword [rsp + 0x60]
jmp 0x14027e5cd
mov al, byte [rsp + 0x30]
lea ebx, [rsi - 0xc]
mov r15, qword [rsp + 0x60]
shr ebx, 1
mov dword [rdi + 0x10], ebx
mov byte [rdi + 0x16], al
lea edx, [rbx + 2]
cmp dword [rdi + 0x20], edx
jge 0x14027fa78
cmp ebx, dword [r15 + 0x88]
jg 0x1402833df
mov eax, 1
xor r8d, r8d
mov rcx, rdi
mov word [rdi + 0x14], ax
call fcn.140284dc8
test eax, eax
jne 0x140283498
jmp 0x14027fa80
mov rax, qword [rdi + 0x28]
mov qword [rdi + 8], rax
mov rcx, qword [rdi + 8]
mov r8, rbx
mov rdx, r14
call sub.VCRUNTIME140.dll_memcpy
mov rax, qword [rdi + 8]
lea rcx, [0x140000000]
mov r14d, dword [rsp + 0x34]
xor r10d, r10d
mov r13, r12
mov byte [rbx + rax], r10b
mov rax, qword [rdi + 8]
lea r11d, [r10 + 1]
mov byte [rbx + rax + 1], r10b
mov eax, esi
and rax, r11
movzx eax, word [rcx + rax*2 + 0x3abc7c]
mov word [rdi + 0x14], ax
jmp 0x14027d34a
mov al, byte [rsp + 0x30]
mov byte [rdi + 0x16], al
test byte [r12 + 2], 0xc0
je 0x14027faf2
cmp esi, 0xc
jb 0x14027faea
mov eax, 1
test al, sil
je 0x14027fb1a
test byte [r12 + 2], 0x80
jne 0x14027fb1a
cmp esi, 0x80
jb 0x14027fb03
lea r8d, [rsi - 0xc]
shr r8d, 1
jmp 0x14027fb15
mov eax, esi
lea rcx, [0x140000000]
movzx r8d, byte [rax + rcx + 0x3ab880]
test r8d, r8d
jne 0x14027fb26
lea rcx, [0x1403af0a0]
jmp 0x14027fa15
mov r15, qword [rsp + 0x60]
cmp r8d, dword [r15 + 0x88]
jg 0x1402833df
mov edx, dword [r13 + r14*4]
mov r9, rdi
mov rcx, qword [rbx + 0x30]
call fcn.140284c8c
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r14d, eax
test eax, eax
jne 0x1402834c8
mov rcx, qword [rdi + 8]
mov r8, rdi
mov edx, esi
call fcn.1402864f0
mov eax, 0xbfff
mov r13, r12
and word [rdi + 0x14], ax
jmp 0x14027e5cd
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
test byte [rcx + rsi + 0x14], r11b
jne 0x1402819ae
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
test byte [rcx + rsi + 0x14], r11b
jne 0x1402819ae
movsxd rax, dword [r13 + 8]
jmp 0x14027f231
mov word [rcx + 0x14], r11w
jmp 0x14027ec96
movsxd rax, dword [r13 + 4]
mov edx, dword [r13 + 0xc]
imul rcx, rax, 0x38
add rcx, rsi
call fcn.14027c104
movsxd rdx, dword [r13 + 0x10]
movsxd rcx, eax
movsxd rax, dword [r13 + 8]
xor rdx, rcx
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, rsi
test word [rcx + 0x14], ax
jne 0x14027f000
mov qword [rcx], rdx
mov edx, 4
mov word [rcx + 0x14], dx
jmp 0x14028098b
movsxd rax, dword [r13 + 4]
mov r9d, 1
mov rdi, qword [r13 + 0x10]
mov rdx, r10
imul r11, rax, 0x38
mov eax, dword [r13 + 8]
mov r15, r10
add r11, rsi
mov qword [rbp - 0x78], rdx
sub eax, r9d
mov qword [rsp + 0x78], r11
cdqe
mov r12d, r10d
imul rsi, rax, 0x38
movsxd rax, dword [r13 + 0xc]
imul r13, rax, 0x38
add rsi, r11
add r13, qword [rsp + 0x58]
mov qword [rbp - 0x40], rsi
mov qword [rbp - 0x28], r13
test rdi, rdi
je 0x14027fcad
mov al, byte [rdi]
lea rbx, [r11 + 0x14]
mov r14b, byte [rsp + 0x30]
mov r13d, 0xfffb
mov rsi, qword [rbp - 0x48]
lea rcx, [rbx - 0x14]
mov r8b, r14b
mov dl, al
call fcn.1401f6ef4
cmp byte [rdi], 0x45
jne 0x14027fc86
movzx eax, word [rbx]
test al, 4
je 0x14027fc86
and ax, r13w
or ax, si
mov word [rbx], ax
mov r9d, 1
add rbx, 0x38
add rdi, r9
xor r10d, r10d
mov al, byte [rdi]
test al, al
jne 0x14027fc62
mov r13, qword [rbp - 0x28]
mov rdx, qword [rbp - 0x78]
mov r11, qword [rsp + 0x78]
mov rsi, qword [rbp - 0x40]
lea r14, [rsi + 0x24]
movzx ecx, word [r14 - 0x10]
test r9b, cl
je 0x14027fcd2
and cx, word [rbp - 0x68]
neg cx
sbb eax, eax
and eax, 0xa
mov dword [r14], eax
add r12d, r9d
jmp 0x14027fe32
test cl, 0x24
je 0x14027fdad
mov r8, qword [r14 - 0x24]
mov rdx, r8
test r8, r8
jns 0x14027fcea
not rdx
add r12d, r9d
cmp rdx, 0x7f
ja 0x14027fd1f
mov rax, r8
and rax, r9
cmp rax, r8
jne 0x14027fd14
mov rax, qword [rsp + 0x50]
cmp byte [rax + 0xc3], 4
jb 0x14027fd14
lea eax, [rdx + 8]
jmp 0x14027fda5
add r15, r9
mov eax, r9d
jmp 0x14027fda5
cmp rdx, 0x7fff
ja 0x14027fd2f
mov eax, 2
jmp 0x14027fd4d
cmp rdx, 0x7fffff
ja 0x14027fd3f
mov eax, 3
jmp 0x14027fd4d
cmp rdx, 0x7fffffff
ja 0x14027fd52
mov eax, 4
add r15, rax
jmp 0x14027fda5
movabs rax, 0x7fffffffffff
cmp rdx, rax
ja 0x14027fd6c
add r15, 6
mov eax, 5
jmp 0x14027fda5
mov rdx, qword [rbp - 0x70]
mov rax, qword [rbp - 0x48]
add r15, rdx
test al, cl
je 0x14027fda0
mov eax, 0xffdf
xorps xmm0, xmm0
and cx, ax
mov eax, 7
cvtsi2sd xmm0, r8
or cx, dx
mov word [r14 - 0x10], cx
movsd qword [r14 - 0x24], xmm0
jmp 0x14027fda5
mov eax, 6
mov dword [r14], eax
jmp 0x14027fe32
mov rax, qword [rbp - 0x70]
test al, cl
je 0x14027fdc4
add r12d, r9d
mov dword [r14], 7
add r15, rax
jmp 0x14027fe32
mov edi, dword [r14 - 0x14]
mov esi, ecx
mov rax, qword [rbp - 0x68]
shr esi, 1
and esi, r9d
add esi, 0xc
lea esi, [rsi + rdi*2]
test ax, cx
je 0x14027fe0f
lea rbx, [r14 - 0x24]
movsxd rax, dword [rbx]
lea esi, [rsi + rax*2]
test r15, r15
je 0x14027fe08
mov rcx, rbx
call fcn.140284b7c
xor r10d, r10d
test eax, eax
jne 0x14028348e
add edi, dword [rbx]
lea r9d, [r10 + 1]
jmp 0x14027fe0f
add rdx, rax
mov qword [rbp - 0x78], rdx
mov eax, edi
mov ecx, r9d
add r15, rax
mov eax, esi
jmp 0x14027fe1e
add ecx, r9d
shr rax, 7
test rax, rax
jne 0x14027fe1b
mov r11, qword [rsp + 0x78]
add r12d, ecx
mov dword [r14], esi
lea rax, [r14 - 0x24]
cmp rax, r11
je 0x14027fe48
mov rdx, qword [rbp - 0x78]
sub r14, 0x38
jmp 0x14027fcb1
cmp r12d, 0x7e
jle 0x14027fe7d
mov edx, r9d
movsxd rax, r12d
jmp 0x14027fe59
add edx, r9d
shr rax, 7
test rax, rax
jne 0x14027fe56
add r12d, edx
mov ecx, r9d
movsxd rax, r12d
jmp 0x14027fe70
add ecx, r9d
shr rax, 7
test rax, rax
jne 0x14027fe6d
cmp edx, ecx
jge 0x14027fe80
add r12d, r9d
mov rdi, qword [rbp - 0x78]
movsxd rax, dword [r13 + 0x20]
movsxd rsi, r12d
lea rbx, [rsi + r15]
lea rcx, [rdi + rbx]
cmp rcx, rax
jle 0x14027fed6
mov r15, qword [rsp + 0x60]
movsxd rax, dword [r15 + 0x88]
cmp rcx, rax
jg 0x1402833da
cmp dword [r13 + 0x20], ebx
jge 0x14027fed6
xor r8d, r8d
mov edx, ebx
mov rcx, r13
call fcn.140284dc8
xor r10d, r10d
test eax, eax
jne 0x140283480
mov r11, qword [rsp + 0x78]
lea r9d, [r10 + 1]
jmp 0x14027fede
mov rax, qword [r13 + 0x28]
mov qword [r13 + 8], rax
mov rax, qword [rbp - 0x58]
mov word [r13 + 0x14], ax
mov dword [r13 + 0x10], ebx
test rdi, rdi
je 0x14027fefe
mov eax, 0x410
mov dword [r13], edi
mov word [r13 + 0x14], ax
mov rdi, qword [r13 + 8]
lea r14, [rsi + rdi]
cmp r12d, 0x80
jge 0x14027ff17
mov byte [rdi], r12b
add rdi, r9
jmp 0x14027ff2f
mov rdx, rsi
mov rcx, rdi
call fcn.140262898
movsxd rcx, eax
add rdi, rcx
xor r10d, r10d
lea r9d, [r10 + 1]
mov r15, qword [rbp - 0x40]
lea rsi, [r11 + 0x10]
mov ebx, dword [rsi + 0x14]
cmp ebx, 7
ja 0x14027ffb3
mov byte [rdi], bl
add rdi, r9
test ebx, ebx
je 0x140280003
lea rdx, [rsi - 0x10]
cmp ebx, 7
jne 0x14027ff6b
mov r8, qword [rbp - 0x70]
lea rcx, [rbp - 0x20]
call sub.VCRUNTIME140.dll_memcpy
mov rdx, qword [rbp - 0x20]
xor r10d, r10d
jmp 0x14027ff72
mov rdx, qword [rdx]
mov qword [rbp - 0x20], rdx
lea rcx, [0x140000000]
movzx ecx, byte [rbx + rcx + 0x3ab880]
or ebx, 0xffffffff
mov r9d, ecx
add ecx, ebx
lea r8, [rcx + r14]
mov byte [r8], dl
je 0x14027ffae
mov r11d, 1
mov rax, qword [rbp - 0x20]
sub r8, r11
shr rax, 8
mov qword [rbp - 0x20], rax
mov byte [r8], al
add ecx, ebx
jne 0x14027ff98
add r14, r9
jmp 0x140280003
cmp ebx, 0x80
jae 0x14027ffd2
mov r11d, 1
mov byte [rdi], bl
add rdi, r11
cmp ebx, 0xe
jb 0x140280009
cmp dword [rsi], r10d
jle 0x140280009
jmp 0x14027ffeb
mov rdx, rbx
mov rcx, rdi
call fcn.140262898
movsxd rcx, eax
xor r10d, r10d
add rdi, rcx
cmp dword [rsi], r10d
je 0x140280003
movsxd r8, dword [rsi]
mov rcx, r14
mov rdx, qword [rsi - 8]
call sub.VCRUNTIME140.dll_memcpy
movsxd rax, dword [rsi]
add r14, rax
xor r10d, r10d
mov r11d, 1
lea rax, [rsi - 0x10]
cmp rax, r15
je 0x140280021
add rsi, 0x38
mov r9d, 1
jmp 0x14027ff37
mov r13, qword [rsp + 0x38]
jmp 0x14027f585
mov r11d, 1
jmp 0x14027d34f
mov ecx, ebx
sub ecx, 0x62
je 0x1402801c2
sub ecx, 1
je 0x140280190
sub ecx, 1
je 0x1402800f7
sub ecx, 1
je 0x1402800b4
cmp ecx, 1
jne 0x14027ec96
movsxd rax, dword [r13 + 4]
imul rbx, rax, 0x38
movsxd rax, dword [r13 + 8]
imul rcx, rax, 0x38
movsxd rax, dword [r13 + 0xc]
add rbx, rsi
add rcx, rsi
imul rsi, rax, 0x38
mov al, byte [rcx + 0x14]
add rsi, qword [rsp + 0x58]
or al, byte [rbx + 0x14]
test r11b, al
je 0x14028029f
mov ecx, 0x9000
test word [rsi + 0x14], cx
je 0x140280290
mov rcx, rsi
call fcn.1402940b4
mov rsi, qword [rsp + 0x58]
jmp 0x14027d953
movsxd rcx, dword [r13 + 4]
mov rax, qword [r12 + 0x78]
mov rdi, qword [rax + rcx*8]
test rdi, rdi
je 0x1402803c8
mov eax, dword [r13 + 8]
cmp dword [rdi + 0x44], eax
jne 0x1402803c8
mov rbx, qword [rdi + 0x30]
mov rcx, qword [rbx + 0x18]
call fcn.1401f1d34
xor r10d, r10d
mov qword [rbx + 0x18], r10
lea r11d, [r10 + 1]
mov byte [rbx], r11b
jmp 0x1402804ef
movsxd rbx, dword [r13 + 4]
mov r8d, dword [r13 + 0xc]
mov edx, dword [r13 + 8]
shl rbx, 5
add rbx, qword [r15 + 0x20]
mov rcx, qword [rbx + 8]
call fcn.14024dab0
mov r11d, 1
mov dword [rsp + 0x34], eax
mov r14d, eax
cmp dword [r13 + 8], r11d
jne 0x140280150
movzx eax, word [r13 + 2]
mov ecx, dword [r13 + 0xc]
sub ecx, eax
mov rax, qword [rbx + 0x18]
mov dword [rax], ecx
mov rcx, r15
or dword [r15 + 0x2c], r11d
mov edx, dword [r13 + 4]
call fcn.140259588
mov r11d, 1
jmp 0x140280166
mov eax, 2
cmp dword [r13 + 8], eax
jne 0x140280166
mov rcx, qword [rbx + 0x18]
mov al, byte [r13 + 0xc]
mov byte [rcx + 0x70], al
cmp dword [r13 + 4], r11d
jne 0x14028017f
xor edx, edx
mov rcx, r15
call fcn.140253950
and dword [r12 + 0xc8], 0xfffffffc
xor r10d, r10d
test r14d, r14d
jne 0x140282eee
jmp 0x14027d354
movsxd rax, dword [r13 + 4]
lea r8, [rbp - 8]
mov rcx, qword [r15 + 0x20]
mov edx, dword [r13 + 0xc]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.14024b5c0
mov rdx, r13
mov rcx, r12
call fcn.140237d54
movsxd rcx, dword [rbp - 8]
jmp 0x14027ed0d
movsxd rcx, dword [r13 + 4]
mov rax, qword [r12 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rdx, qword [rcx + 0x30]
cmp dword [r13 + 0xc], r10d
je 0x1402801e6
mov rcx, rdx
call fcn.14024cde0
mov rbx, rax
jmp 0x14028020f
lea r8, [rsp + 0x78]
mov qword [rsp + 0x78], r10
mov rcx, r15
call fcn.14024aef4
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r14d, eax
test eax, eax
jne 0x140282eee
mov rbx, qword [rsp + 0x78]
mov rdx, r13
mov rcx, r12
call fcn.140237d54
mov qword [rax], rbx
jmp 0x1402821c2
cmp ebx, 0x6d
ja 0x1402803a6
je 0x140280252
sub ebx, 0x68
je 0x140280061
sub ebx, 1
je 0x140280061
sub ebx, 1
je 0x140280252
sub ebx, 1
je 0x140280252
cmp ebx, 1
jne 0x14027f012
movsxd rax, dword [r13 + 4]
mov r14d, 0x2c
imul rdi, rax, 0x38
add rdi, rsi
movzx ebx, word [rdi + 0x14]
test r14b, bl
jne 0x1402806c7
test bl, 0x12
je 0x1402806c4
mov rcx, rdi
call fcn.1401fe52c
movzx ebx, ax
lea edx, [r14 - 0x28]
xor r10d, r10d
jmp 0x1402806c7
mov word [rsi + 0x14], r11w
mov rsi, qword [rsp + 0x58]
jmp 0x14027f012
call fcn.140284270
mov rcx, rbx
mov qword [rbp - 0x50], rax
call fcn.140284270
mov dil, byte [r13]
mov rbx, rax
cmp dil, 0x66
jne 0x1402802c6
and qword [rbp - 0x50], rax
jmp 0x14028037f
cmp dil, 0x67
jne 0x1402802d5
or qword [rbp - 0x50], rbx
jmp 0x14028037f
xor r10d, r10d
test rbx, rbx
je 0x140280382
jns 0x140280303
mov rcx, rbx
mov eax, 0xd1
sub al, dil
neg rcx
mov dil, al
mov rax, rbx
cmp rax, 0xffffffffffffffc0
lea ebx, [r10 + 0x40]
cmovg rbx, rcx
cmp rbx, 0x40
jl 0x140280324
cmp qword [rbp - 0x50], r10
jge 0x14028031b
cmp dil, 0x68
je 0x14028031b
or rax, 0xffffffffffffffff
jmp 0x14028031e
mov rax, r10
mov qword [rbp - 0x50], rax
jmp 0x140280382
mov r12, qword [rbp - 0x70]
lea rdx, [rbp - 0x50]
mov r8, r12
lea rcx, [rbp - 0x38]
call sub.VCRUNTIME140.dll_memcpy
mov rcx, rbx
cmp dil, 0x68
jne 0x140280347
shl qword [rbp - 0x38], cl
jmp 0x14028036f
mov r8, qword [rbp - 0x38]
shr r8, cl
xor ecx, ecx
mov qword [rbp - 0x38], r8
cmp qword [rbp - 0x50], rcx
jge 0x14028036f
or rdx, 0xffffffffffffffff
mov ecx, 0x40
sub cl, bl
shl rdx, cl
or rdx, r8
mov qword [rbp - 0x38], rdx
mov r8, r12
lea rdx, [rbp - 0x38]
lea rcx, [rbp - 0x50]
call sub.VCRUNTIME140.dll_memcpy
xor r10d, r10d
mov rax, qword [rbp - 0x50]
mov ecx, 0xf244
mov qword [rsi], rax
mov edx, 4
movzx eax, word [rsi + 0x14]
and ax, cx
or ax, dx
mov word [rsi + 0x14], ax
jmp 0x14027d5db
mov ecx, ebx
sub ecx, 0x6e
je 0x140280252
sub ecx, 1
je 0x140280502
sub ecx, 1
je 0x1402803c8
cmp ecx, 1
jne 0x14027ec96
mov eax, dword [r12 + 0xc8]
and al, 3
cmp al, r11b
je 0x1402833b7
movsxd r12, dword [r13 + 0xc]
mov edi, r10d
mov rcx, qword [rsp + 0x60]
mov rax, r12
mov r15d, dword [r13 + 8]
mov r14, r10
shl rax, 5
add rax, qword [rcx + 0x20]
mov r13, qword [rax + 8]
cmp bl, 0x71
jne 0x14028042d
mov rax, qword [rax + 0x18]
mov rdx, qword [rsp + 0x38]
mov cl, byte [rax + 0x70]
movzx esi, word [rdx + 2]
and esi, dword [rbp - 0x70]
mov rax, qword [rsp + 0x50]
or esi, 4
cmp cl, byte [rax + 0xc3]
jae 0x140280430
mov byte [rax + 0xc3], cl
jmp 0x140280430
mov esi, r10d
mov rcx, qword [rsp + 0x38]
mov rax, qword [rbp - 0x58]
test byte [rcx + 2], al
je 0x140280457
imul rbx, r15, 0x38
add rbx, qword [rsp + 0x58]
mov rcx, rbx
call fcn.140284efc
mov rcx, qword [rsp + 0x38]
mov r15d, dword [rbx]
mov al, byte [rcx + 1]
cmp al, 0xf8
jne 0x140280469
mov r14, qword [rcx + 0x10]
movzx edi, word [r14 + 8]
jmp 0x140280470
cmp al, 0xfd
jne 0x140280470
mov edi, dword [rcx + 0x10]
mov edx, dword [rcx + 4]
xor r9d, r9d
mov rcx, qword [rsp + 0x50]
mov r8d, edi
call fcn.1401f55f8
mov rdi, rax
test rax, rax
je 0x14028348e
mov rcx, qword [rdi + 0x30]
mov r9, r14
mov byte [rax + 1], r12b
mov r8d, esi
mov eax, 1
mov qword [rsp + 0x20], rcx
mov byte [rdi + 2], al
mov edx, r15d
mov eax, 4
mov dword [rdi + 0x44], r15d
or dword [rdi + 8], eax
mov rcx, r13
call fcn.14024b060
mov r13, qword [rsp + 0x38]
mov r15, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x58]
mov qword [rdi + 0x38], r14
cmp byte [r13 + 1], 0xf8
mov dword [rsp + 0x34], eax
mov r14d, dword [rsp + 0x34]
setne al
xor r10d, r10d
mov byte [rdi + 4], al
lea r11d, [r10 + 1]
mov cl, byte [r13 + 2]
mov rax, qword [rdi + 0x30]
and cl, 3
mov byte [rax + 3], cl
jmp 0x14027d4e8
movsxd rax, dword [r13 + 4]
mov r12, qword [rsp + 0x38]
imul r13, rax, 0x38
movsxd rax, dword [r12 + 8]
imul rdi, rax, 0x38
movsxd rax, dword [r12 + 0xc]
add r13, rsi
imul rbx, rax, 0x38
movzx r14d, word [r13 + 0x14]
add rdi, rsi
mov al, r14b
add rbx, rsi
or al, byte [rdi + 0x14]
test r11b, al
je 0x140280571
mov ecx, 0x9000
test word [rbx + 0x14], cx
je 0x14028055a
mov rcx, rbx
call fcn.1402940b4
mov r14d, dword [rsp + 0x34]
mov r13, r12
jmp 0x14027e5d2
mov r14d, dword [rsp + 0x34]
mov r13, r12
mov word [rbx + 0x14], r11w
mov dil, byte [rsp + 0x30]
jmp 0x14027f012
test r14b, 0x12
jne 0x140280588
mov dl, byte [rsp + 0x30]
xor r8d, r8d
mov rcx, r13
call fcn.140285528
jmp 0x14028059a
mov rax, qword [rbp - 0x68]
test ax, r14w
je 0x1402805b4
mov rcx, r13
call fcn.140284b7c
test eax, eax
jne 0x140283498
movzx r14d, word [r13 + 0x14]
mov eax, 0xfffd
and r14w, ax
mov rax, qword [rbp - 0x68]
movzx esi, word [rdi + 0x14]
test sil, 0x12
jne 0x1402805e6
mov dl, byte [rsp + 0x30]
xor r8d, r8d
mov rcx, rdi
call fcn.140285528
xor r8d, r8d
test eax, eax
jne 0x140283498
movzx esi, word [rdi + 0x14]
mov eax, 0xfffd
and si, ax
jmp 0x1402805f8
test ax, si
je 0x1402805f5
mov rcx, rdi
call fcn.140284b7c
jmp 0x1402805cd
xor r8d, r8d
mov rax, qword [rsp + 0x60]
mov edx, dword [r13 + 0x10]
add edx, dword [rdi + 0x10]
movsxd r15, edx
movsxd rax, dword [rax + 0x88]
cmp r15, rax
jg 0x1402833df
cmp rbx, rdi
mov rcx, rbx
sete r8b
add edx, 2
call fcn.140284dc8
test eax, eax
jne 0x140283493
movzx eax, word [rbx + 0x14]
mov ecx, 0xf242
and ax, cx
or ax, 2
mov word [rbx + 0x14], ax
cmp rbx, rdi
je 0x14028065f
movsxd r8, dword [rdi + 0x10]
mov rdx, qword [rdi + 8]
mov rcx, qword [rbx + 8]
call sub.VCRUNTIME140.dll_memcpy
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 sub.VCRUNTIME140.dll_memcpy
mov dil, byte [rsp + 0x30]
mov r11d, 1
mov word [r13 + 0x14], r14w
cmp dil, r11b
jbe 0x14028068d
and r15, 0xfffffffffffffffe
mov rax, qword [rbx + 8]
xor r10d, r10d
mov r14d, dword [rsp + 0x34]
mov r13, r12
mov byte [r15 + rax], r10b
mov rax, qword [rbx + 8]
mov byte [rax + r15 + 1], r10b
mov eax, 0x200
or word [rbx + 0x14], ax
mov dword [rbx + 0x10], r15d
mov r15, qword [rsp + 0x60]
mov byte [rbx + 0x16], dil
jmp 0x14027dd68
mov ebx, r10d
movsxd rax, dword [r13 + 8]
mov r12, qword [rsp + 0x58]
imul rsi, rax, 0x38
add rsi, r12
movzx ecx, word [rsi + 0x14]
and cx, r14w
jne 0x1402806fc
test byte [rsi + 0x14], 0x12
je 0x1402806f9
mov rcx, rsi
call fcn.1401fe52c
movzx ecx, ax
mov edx, 4
jmp 0x1402806fc
mov ecx, r10d
movsxd rax, dword [r13 + 0xc]
and cl, bl
movzx r10d, word [rdi + 0x14]
imul r14, rax, 0x38
movzx eax, r10w
or ax, word [rsi + 0x14]
add r14, r12
test dl, cl
je 0x140280887
movzx ecx, byte [r13]
mov r9, qword [rsi]
mov r8, qword [rdi]
mov qword [rsp + 0x38], r9
sub ecx, 0x6a
je 0x140280854
sub ecx, 1
je 0x140280838
sub ecx, 1
je 0x1402807a4
cmp ecx, 1
je 0x140280772
xor r10d, r10d
test r8, r8
je 0x1402809ae
cmp r8, 0xffffffffffffffff
lea eax, [r10 + 1]
cmove r8, rax
mov rax, r9
cqo
idiv r8
mov r9, rdx
jmp 0x14028086a
test r8, r8
je 0x1402809ab
cmp r8, 0xffffffffffffffff
jne 0x140280794
movabs rax, 0x8000000000000000
cmp r9, rax
je 0x140280896
mov rax, r9
cqo
idiv r8
mov r9, rax
jmp 0x14028086a
test r8, r8
jle 0x1402807da
movabs rax, 0x7fffffffffffffff
cqo
idiv r8
cmp r9, rax
jg 0x140280896
movabs rax, 0x8000000000000000
cqo
idiv r8
cmp r9, rax
jge 0x14028082d
jmp 0x140280896
jns 0x140280832
test r9, r9
jle 0x1402807f5
movabs rax, 0x8000000000000000
cqo
idiv r9
cmp r8, rax
jmp 0x1402807d3
jns 0x140280832
movabs rax, 0x8000000000000000
cmp r8, rax
je 0x140280896
cmp r9, rax
je 0x140280896
movabs rax, 0x8000000000000001
mov rcx, r9
cqo
neg rcx
idiv r8
cmp rcx, rax
jg 0x140280896
mov edx, 4
imul r9, r8
jmp 0x14028086f
movabs rax, 0x8000000000000000
cmp r8, rax
jne 0x140280851
test r9, r9
jns 0x140280896
sub r9, r8
jmp 0x14028086f
neg r8
mov rdx, r8
lea rcx, [rsp + 0x38]
call fcn.140247168
test eax, eax
jne 0x140280896
mov r9, qword [rsp + 0x38]
mov edx, 4
movzx eax, word [r14 + 0x14]
mov ecx, 0xf244
and ax, cx
mov qword [r14], r9
or ax, dx
jmp 0x140280977
mov r11d, 1
test r11b, al
jne 0x1402809a6
mov r12, qword [rbp - 0x70]
test r12b, r10b
je 0x1402808a5
movsd xmm2, qword [rdi]
jmp 0x1402808cb
test r10b, 0x24
je 0x1402808b5
xorps xmm2, xmm2
cvtsi2sd xmm2, qword [rdi]
jmp 0x1402808cb
test r10b, 0x12
je 0x1402808c8
mov rcx, rdi
call fcn.140234d08
movaps xmm2, xmm0
jmp 0x1402808cb
movaps xmm2, xmm7
mov rcx, rsi
call fcn.140285e14
movzx ecx, byte [r13]
movaps xmm6, xmm0
sub ecx, 0x6a
je 0x140280947
sub ecx, 1
je 0x140280941
sub ecx, 1
je 0x14028093b
cmp ecx, 1
je 0x140280929
mov rcx, rdi
call fcn.140284270
mov rcx, rsi
mov rbx, rax
call fcn.140284270
xor r10d, r10d
lea r11d, [r10 + 1]
test rbx, rbx
je 0x1402809bd
cmp rbx, 0xffffffffffffffff
cqo
xorps xmm6, xmm6
cmove rbx, r11
idiv rbx
cvtsi2sd xmm6, rdx
jmp 0x14028094b
ucomisd xmm2, xmm7
jp 0x140280935
je 0x1402809b6
divsd xmm6, xmm2
jmp 0x14028094b
mulsd xmm6, xmm2
jmp 0x14028094b
subsd xmm6, xmm2
jmp 0x14028094b
addsd xmm6, xmm2
movaps xmm0, xmm6
call qword [sym.imp.api_ms_win_crt_math_l1_1_0.dll__dclass]
mov ecx, 2
lea edx, [rcx + 2]
cmp ax, cx
je 0x1402809ab
movzx eax, word [r14 + 0x14]
mov ecx, 0xf248
and ax, cx
movsd qword [r14], xmm6
or ax, r12w
mov rsi, qword [rsp + 0x58]
mov dil, byte [rsp + 0x30]
mov word [r14 + 0x14], ax
mov r14d, dword [rsp + 0x34]
xor r10d, r10d
mov ecx, 0x9000
mov r9, qword [rsp + 0x40]
mov eax, 5
lea r11d, [rax - 4]
jmp 0x14027ccff
xor r10d, r10d
jmp 0x1402809c2
xor r10d, r10d
mov r11d, 1
jmp 0x1402809c2
xor r10d, r10d
lea r11d, [r10 + 1]
mov edx, 4
mov ecx, 0x9000
test word [r14 + 0x14], cx
je 0x1402809e0
mov rcx, r14
call fcn.1402940b4
mov r14d, dword [rsp + 0x34]
jmp 0x14027e5cd
mov rsi, qword [rsp + 0x58]
mov dil, byte [rsp + 0x30]
mov r9, qword [rsp + 0x40]
mov word [r14 + 0x14], r11w
mov r14d, dword [rsp + 0x34]
jmp 0x14027f012
movsxd rax, dword [r13 + 4]
imul rdi, rax, 0x38
movsxd rax, dword [r13 + 8]
imul rbx, rax, 0x38
add rdi, rsi
add rbx, rsi
test word [rbx + 0x14], cx
je 0x140280a39
mov rcx, rbx
call fcn.1402940b4
mov r9, qword [rsp + 0x40]
xor r10d, r10d
mov ecx, 0x9000
lea edx, [r10 + 4]
lea r11d, [r10 + 1]
jmp 0x140280a3e
mov word [rbx + 0x14], r11w
test byte [rdi + 0x14], r11b
jne 0x140280567
mov rcx, rdi
mov word [rbx + 0x14], dx
call fcn.140284270
not rax
mov qword [rbx], rax
jmp 0x14027e5d2
cmp ebx, 0x7e
ja 0x14028110c
je 0x1402810d1
cmp ebx, 0x78
ja 0x140280eb1
je 0x140280e8a
sub ebx, 0x73
je 0x140280de3
sub ebx, 1
je 0x140280c19
sub ebx, 1
je 0x140280ade
sub ebx, 1
je 0x140280c19
cmp ebx, 1
jne 0x14027f012
mov r8d, dword [r13 + 8]
mov r9b, r11b
mov edx, dword [r13 + 4]
mov rcx, r12
call fcn.1401f55f8
test rax, rax
je 0x140283480
mov rcx, qword [r13 + 0x10]
mov r8, rax
mov qword [rax + 0x38], rcx
mov rcx, r15
mov edx, dword [r13 + 0xc]
call fcn.140286860
jmp 0x14027d394
mov rdx, r13
mov rcx, r12
call fcn.140237d54
mov rcx, qword [r13 + 0x10]
xor edx, edx
mov rbx, rax
test rcx, rcx
jne 0x140280afb
mov eax, edx
jmp 0x140280b07
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
and eax, 0x3fffffff
xor edx, edx
mov ecx, 1
mov dword [r13 + 4], eax
cmp dil, cl
je 0x140280ba4
mov qword [rsp + 0x20], rdx
mov r9b, cl
mov rdx, qword [r13 + 0x10]
mov rcx, rbx
or r8, 0xffffffffffffffff
call fcn.140285194
mov r14d, eax
mov dword [rsp + 0x34], eax
xor eax, eax
test r14d, r14d
jne 0x1402833da
lea ecx, [rax + 2]
test byte [rbx + 0x14], cl
jne 0x140280b51
mov byte [rbx + 0x16], dil
jmp 0x140280b6c
cmp byte [rbx + 0x16], dil
je 0x140280b6c
mov dl, dil
mov rcx, rbx
call fcn.140285650
test eax, eax
jne 0x140283480
xor eax, eax
mov ecx, 0x2000
mov dword [rbx + 0x20], eax
or word [rbx + 0x14], cx
cmp byte [r13 + 1], 0xfa
jne 0x140280b90
mov rdx, qword [r13 + 0x10]
test rdx, rdx
je 0x140280b90
mov rcx, r15
call fcn.1402514c0
mov byte [r13 + 1], 0xfa
mov rax, qword [rbx + 8]
mov qword [r13 + 0x10], rax
mov eax, dword [rbx + 0x10]
mov dword [r13 + 4], eax
cmp eax, dword [r15 + 0x88]
jg 0x1402833da
mov byte [r13], 0x49
mov rdx, r13
mov rcx, r12
call fcn.140237d54
mov r8, rax
xor r10d, r10d
mov eax, 0x2202
mov word [r8 + 0x14], ax
mov rcx, qword [r13 + 0x10]
mov qword [r8 + 8], rcx
mov ecx, dword [r13 + 4]
mov dword [r8 + 0x10], ecx
mov byte [r8 + 0x16], dil
cmp dword [r13 + 0xc], r10d
jle 0x1402813c7
movsxd rcx, dword [r13 + 0xc]
lea r11d, [r10 + 1]
movzx eax, word [r13 + 2]
imul rdx, rcx, 0x38
cmp qword [rdx + rsi], rax
jne 0x14027d354
mov eax, 0x2210
mov word [r8 + 0x14], ax
jmp 0x14027d354
cmp dword [r13 + 0xc], r10d
jle 0x140280c40
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
mov dword [rcx + rsi + 0x10], r10d
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
lea rax, [0x1403af5f2]
mov qword [rcx + rsi + 8], rax
movsxd rdx, dword [r13 + 4]
mov rax, qword [r12 + 0x78]
mov rbx, qword [rax + rdx*8]
test rbx, rbx
je 0x140280c96
mov rax, qword [rbp - 0x70]
test byte [rbx + 8], al
jne 0x140280c96
movsx eax, word [rbx + 0x48]
cmp dword [r13 + 8], eax
jg 0x140280c96
mov edx, dword [rbx + 0x44]
xor r8d, r8d
mov rcx, qword [rbx + 0x10]
mov qword [rbx + 0x18], r10
mov dword [rbx + 0x20], r10d
call fcn.14024a938
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r14d, eax
test eax, eax
jne 0x140282eee
lea edx, [rax + 4]
jmp 0x140280dcf
mov r8d, dword [r13 + 8]
xor r9d, r9d
mov rcx, r12
call fcn.1401f55f8
mov rbx, rax
test rax, rax
je 0x140283480
lea rdi, [rax + 0x10]
mov dword [rsp + 0x28], 0x41e
mov r12d, 1
mov r9, rdi
or dword [rax + 8], r12d
mov r8, r15
movzx ecx, word [r13 + 2]
xor edx, edx
or ecx, 5
mov dword [rsp + 0x20], ecx
mov rcx, qword [r15]
call fcn.14024c5a4
xor r10d, r10d
mov r14d, eax
test eax, eax
jne 0x140282eee
mov rcx, qword [rdi]
xor r8d, r8d
mov edx, r12d
call fcn.14024a634
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r14d, eax
test eax, eax
jne 0x140280da1
mov r14, qword [r13 + 0x10]
lea rsi, [rbx + 0x44]
mov rcx, qword [rdi]
mov qword [rbx + 0x38], r14
test r14, r14
je 0x140280d73
movzx r8d, word [r13 + 2]
mov rdx, rsi
or r8d, 2
call fcn.14024affc
xor r10d, r10d
mov dword [rsp + 0x34], eax
test eax, eax
jne 0x140280d68
mov rax, qword [rbx + 0x30]
lea r8d, [r12 + 3]
mov edx, dword [rsi]
mov r9, r14
mov rcx, qword [rdi]
mov qword [rsp + 0x20], rax
call fcn.14024b060
mov r14d, eax
mov dword [rsp + 0x34], eax
xor r10d, r10d
jmp 0x140280d6d
mov r14d, dword [rsp + 0x34]
mov byte [rbx + 4], r10b
jmp 0x140280d9c
mov rax, qword [rbx + 0x30]
xor r9d, r9d
mov edx, r12d
mov dword [rsi], r12d
mov qword [rsp + 0x20], rax
lea r8d, [r9 + 4]
call fcn.14024b060
mov r14d, eax
mov dword [rsp + 0x34], eax
xor r10d, r10d
mov byte [rbx + 4], r12b
mov rsi, qword [rsp + 0x58]
movzx eax, word [r13 + 2]
mov edx, 4
sub ax, word [rbp - 0x70]
neg ax
mov eax, dword [rbx + 8]
sbb ecx, ecx
and eax, 0xfffffffb
and ecx, edx
or ecx, eax
mov dword [rbx + 8], ecx
test r14d, r14d
jne 0x1402833c2
mov dil, byte [rsp + 0x30]
mov r9, qword [rsp + 0x40]
mov r11d, 1
mov byte [rbx + 2], r11b
jmp 0x14027ec96
movsxd rcx, dword [r13 + 8]
xor r9d, r9d
mov rax, qword [r12 + 0x78]
mov edx, dword [r13 + 4]
mov rbx, qword [rax + rcx*8]
mov rcx, r12
movsx r8d, word [rbx + 0x48]
call fcn.1401f55f8
mov r10, rax
test rax, rax
je 0x140283480
mov edx, dword [r10 + 8]
mov eax, 1
mov r12, qword [rbp - 0x70]
or edx, eax
mov dword [r10 + 8], edx
mov r8d, 4
mov byte [r10 + 2], al
mov rcx, qword [rbx + 0x38]
mov qword [r10 + 0x38], rcx
mov cl, byte [rbx + 4]
mov byte [r10 + 4], cl
mov ecx, edx
mov eax, dword [rbx + 0x44]
mov dword [r10 + 0x44], eax
xor ecx, dword [rbx + 8]
and ecx, r8d
xor ecx, edx
mov dword [r10 + 8], ecx
or ecx, r12d
mov rax, qword [rbx + 0x10]
mov qword [r10 + 0x10], rax
mov dword [r10 + 8], ecx
or dword [rbx + 8], r12d
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.14024b060
mov r14d, eax
mov dword [rsp + 0x34], eax
jmp 0x14027d953
movsxd rcx, dword [r13 + 4]
mov rax, qword [r12 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rcx, qword [rdx + 0x18]
lea rax, [rcx + 1]
mov qword [rdx + 0x18], rax
test rcx, rcx
jne 0x14027ccf0
jmp 0x14027e2ca
sub ebx, 0x79
je 0x14028108c
sub ebx, 1
je 0x140281054
sub ebx, r8d
je 0x140280f13
cmp ebx, 1
jne 0x14027f012
mov rax, qword [r12 + 0x78]
movsxd rcx, dword [r13 + 4]
mov rdx, qword [rax + rcx*8]
movzx eax, word [rdx + 0xc]
cmp eax, dword [r13 + 8]
jge 0x140280ef6
movzx eax, word [r13 + 8]
mov word [rdx + 0xc], ax
jmp 0x14027ccf0
mov ecx, 0x9000
cmp eax, dword [r13 + 0xc]
jle 0x14027ef06
movzx eax, word [r13 + 0xc]
mov word [rdx + 0xc], ax
jmp 0x14027ef06
mov rax, qword [r12 + 0x78]
movsxd rcx, dword [r13 + 0x1c]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rdi + 0x30]
cmp byte [rax], r10b
jne 0x14027d9c7
mov rax, qword [rdi + 0x38]
mov r12d, 1
mov esi, dword [r13 + 4]
mov qword [rbp + 0x48], rax
movzx eax, word [r13 + 0x28]
mov word [rbp + 0x64], ax
movsxd rax, dword [r13 + 0x24]
imul rcx, rax, 0x38
mov byte [rbp + 0x66], r10b
add rcx, qword [rsp + 0x58]
mov qword [rbp + 0x50], rcx
mov rbx, qword [rdi + 0x30]
mov rcx, rbx
call fcn.14022dfd8
mov ecx, dword [rbx + 0x40]
mov eax, ecx
sub rax, r12
cmp rax, 0x7ffffffe
ja 0x140280fee
xor eax, eax
mov qword [rbp + 0x178], r15
mov edx, ecx
mov word [rbp + 0x174], ax
mov rcx, rbx
mov dword [rbp + 0x180], eax
lea r8, [rbp + 0x160]
call fcn.140284d68
xor r10d, r10d
mov r14d, eax
test eax, eax
jne 0x140282eee
mov rdx, qword [rbp + 0x168]
lea r8, [rbp + 0x48]
mov ecx, dword [rbp + 0x170]
xor r9d, r9d
call fcn.140285e48
xor r10d, r10d
mov ebx, eax
cmp dword [rbp + 0x180], r10d
je 0x140280fe4
lea rcx, [rbp + 0x160]
call fcn.140294078
xor r10d, r10d
mov r14d, r10d
mov dword [rsp + 0x34], r10d
jmp 0x14028100d
mov ecx, 0x14eb8
call fcn.14024fc48
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r14d, eax
mov ebx, r10d
test eax, eax
jne 0x140282eee
test ebx, ebx
jg 0x140281048
je 0x14028104c
test esi, esi
jle 0x1402813d2
mov rcx, qword [rdi + 0x30]
xor edx, edx
sub esi, r12d
call fcn.14024c55c
xor r10d, r10d
mov r14d, eax
test eax, eax
je 0x140280f5d
cmp eax, 0x65
jne 0x140282eee
mov r14d, r10d
mov dword [rsp + 0x34], r10d
add r13, 0x18
mov r11, r12
jmp 0x14027d9a2
movsxd rcx, dword [r13 + 4]
mov rax, qword [r12 + 0x78]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je 0x14028107a
mov rcx, r12
call fcn.140283b9c
mov r9, qword [rsp + 0x40]
xor r10d, r10d
lea r11d, [r10 + 1]
movsxd rcx, dword [r13 + 4]
mov rax, qword [r12 + 0x78]
mov qword [rax + rcx*8], r10
jmp 0x14027ccf0
mov r8d, dword [r13 + 0xc]
mov r9d, 3
mov edx, dword [r13 + 4]
mov rcx, r12
call fcn.1401f55f8
xor r10d, r10d
test rax, rax
je 0x140283480
lea r11d, [r10 + 1]
mov byte [rax + 2], r11b
mov ecx, dword [r13 + 8]
mov dword [rax + 0x24], ecx
lea rcx, [0x1403ce503]
mov qword [rax + 0x30], rcx
mov byte [rax + 4], r11b
jmp 0x14027d354
mov rdx, r13
mov rcx, r12
call fcn.140237d54
mov rcx, qword [r12 + 0x78]
mov r11d, 1
movsxd rdx, dword [r13 + 4]
mov rdx, qword [rcx + rdx*8]
mov rcx, qword [rdx + 0x18]
mov qword [rax], rcx
movsxd rcx, dword [r13 + 4]
mov rax, qword [r12 + 0x78]
mov rdx, qword [rax + rcx*8]
add qword [rdx + 0x18], r11
jmp 0x14027e24b
mov eax, 0x84
cmp ebx, eax
ja 0x1402815bd
je 0x14028156c
sub ebx, 0x7f
je 0x1402813da
sub ebx, 1
je 0x140281282
sub ebx, 1
je 0x140281244
sub ebx, 1
je 0x140281162
cmp ebx, 1
jne 0x14027f012
mov rax, qword [r12 + 0x38]
add qword [r15 + 0x80], rax
mov qword [r15 + 0x78], rax
mov qword [r12 + 0x38], r10
jmp 0x14027f012
cmp byte [r13 + 1], 0xfb
lea rsi, [r15 + 0x140]
mov rbx, qword [rsp + 0x50]
movsxd rcx, dword [r13 + 4]
mov r12d, dword [r13 + 8]
mov rax, qword [rbx + 0x78]
mov rdi, qword [rax + rcx*8]
jne 0x1402811c6
cmp qword [rsi], r10
je 0x1402811c6
movsx rcx, byte [rdi + 1]
mov rax, qword [r15 + 0x20]
mov r14, qword [r13 + 0x10]
shl rcx, 5
mov r15, qword [rcx + rax]
test byte [r13 + 2], r8b
je 0x1402811cc
cmp byte [rdi + 4], r10b
je 0x1402811cc
mov rbx, qword [rdi + 0x30]
mov rcx, rbx
call fcn.14022dfd8
mov rax, qword [rbx + 0x30]
mov rbx, qword [rsp + 0x50]
mov qword [rdi + 0x50], rax
jmp 0x1402811cc
mov r15, r10
mov r14, r10
mov dl, byte [r13 + 2]
mov rcx, qword [rdi + 0x30]
call fcn.14024b0ec
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov qword [rdi + 0x20], r10
test eax, eax
jne 0x1402834be
lea r11d, [rax + 1]
test r11b, r12b
je 0x14027f585
add qword [rbx + 0x38], r11
mov r10, qword [rsi]
test r10, r10
je 0x1402813ab
test r14, r14
je 0x1402813ab
test byte [r14 + 0x30], 0x80
jne 0x1402813ab
mov rax, qword [rdi + 0x50]
lea edx, [r11 + 8]
mov r9, qword [r14]
mov r8, r15
mov r15, qword [rsp + 0x60]
mov qword [rsp + 0x20], rax
mov rcx, qword [r15 + 0x138]
call r10
jmp 0x1402809d6
mov rcx, qword [r12 + 0x78]
movsxd rax, dword [r13 + 4]
mov r9, qword [rcx + rax*8]
movsxd rax, dword [r13 + 8]
mov rdx, qword [rcx + rax*8]
cmp dword [r13 + 0xc], r10d
je 0x14028126d
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
mov r8, qword [rcx + rsi]
jmp 0x140281270
mov r8, r10
mov rdx, qword [rdx + 0x30]
mov rcx, qword [r9 + 0x30]
call fcn.14024d648
jmp 0x14027d394
movsxd rax, dword [r13 + 8]
movsxd rcx, dword [r13 + 4]
imul rdx, rax, 0x38
mov rax, qword [r12 + 0x78]
add rdx, rsi
mov rbx, qword [rax + rcx*8]
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
cmp byte [r13 + 1], 0xfb
mov r8, qword [rcx + rsi]
mov qword [rbp + 0xc8], r8
jne 0x1402812d4
cmp qword [r15 + 0x140], r10
je 0x1402812d4
movsx rcx, byte [rbx + 1]
mov rax, qword [r15 + 0x20]
mov rdi, qword [r13 + 0x10]
shl rcx, 5
mov rsi, qword [rcx + rax]
jmp 0x1402812da
mov rdi, r10
mov rsi, r10
test byte [r13 + 2], r11b
je 0x1402812e5
add qword [r12 + 0x38], r11
mov rax, qword [rbp - 0x48]
test byte [r13 + 2], al
je 0x1402812f3
mov qword [r15 + 0x38], r8
mov rax, qword [rdx + 8]
movzx r8d, word [r13 + 2]
mov qword [rbp + 0xd0], rax
mov eax, dword [rdx + 0x10]
mov dword [rbp + 0xe4], eax
mov rax, qword [rbp - 0x58]
test al, r8b
je 0x14028131b
mov r9d, dword [rbx + 0x24]
jmp 0x14028131e
mov r9d, r10d
mov rax, qword [rbp - 0x68]
test word [rdx + 0x14], ax
je 0x140281332
mov eax, dword [rdx]
mov dword [rbp + 0xe8], eax
jmp 0x140281339
mov dword [rbp + 0xe8], r10d
mov qword [rbp + 0xc0], r10
lea rdx, [rbp + 0xc0]
mov rcx, qword [rbx + 0x30]
and r8d, 0x8a
call fcn.14024bb7c
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov byte [rbx + 3], r10b
mov r14d, eax
mov dword [rbx + 0x20], r10d
test eax, eax
jne 0x140282eee
test rdi, rdi
je 0x1402813bd
mov al, byte [r13 + 2]
mov r8, rsi
mov r9, qword [rdi]
and al, 4
mov rcx, qword [r15 + 0x138]
neg al
mov rax, qword [rbp + 0xc8]
sbb edx, edx
mov qword [rsp + 0x20], rax
and edx, 5
add edx, 0x12
call qword [r15 + 0x140]
jmp 0x14027e5cd
mov r14d, dword [rsp + 0x34]
xor r10d, r10d
mov r15, qword [rsp + 0x60]
jmp 0x14027d34a
mov rsi, qword [rsp + 0x58]
mov dil, byte [rsp + 0x30]
mov r11d, 1
jmp 0x14027d354
mov r11, r12
jmp 0x14027d34a
mov rbx, r10
mov dword [rsp + 0x6c], r10d
mov rdx, r13
mov qword [rbp - 0x78], rbx
mov rcx, r12
call fcn.140237d54
movsxd rdx, dword [r13 + 4]
mov edi, 2
mov rcx, qword [r12 + 0x78]
mov r14, rax
mov rsi, qword [rcx + rdx*8]
test byte [rsi + 8], dil
jne 0x14028146a
mov rcx, qword [rsi + 0x30]
lea rdx, [rsp + 0x6c]
call fcn.14024c428
xor r10d, r10d
mov dword [rsp + 0x34], eax
test eax, eax
jne 0x1402834ea
cmp dword [rsp + 0x6c], r10d
je 0x14028143b
lea eax, [rdi - 1]
mov ebx, eax
mov qword [rbp - 0x78], rax
jmp 0x14028146d
mov rbx, qword [rsi + 0x30]
mov rcx, rbx
call fcn.14022dfd8
mov rbx, qword [rbx + 0x30]
movabs rax, 0x7fffffffffffffff
mov qword [rbp - 0x78], rbx
cmp rbx, rax
jl 0x140281463
or dword [rsi + 8], edi
jmp 0x14028146a
inc rbx
mov qword [rbp - 0x78], rbx
xor r10d, r10d
movsxd rdx, dword [r13 + 0xc]
test edx, edx
je 0x1402814e9
mov rcx, qword [r12 + 0x108]
test rcx, rcx
je 0x14028149e
mov rax, qword [rcx + 8]
jmp 0x14028148f
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x140281488
imul rdi, rdx, 0x38
add rdi, qword [rcx + 0x20]
jmp 0x1402814a7
imul rdi, rdx, 0x38
add rdi, qword [rsp + 0x58]
mov rcx, rdi
call fcn.140284efc
mov rax, qword [rdi]
movabs rcx, 0x7fffffffffffffff
cmp rax, rcx
je 0x1402833cf
mov ecx, 2
test byte [rsi + 8], cl
jne 0x1402833cf
inc rax
cmp rbx, rax
cmovl rbx, rax
xor r10d, r10d
mov qword [rdi], rbx
mov edi, ecx
mov qword [rbp - 0x78], rbx
test byte [rsi + 8], dil
je 0x140281557
mov edi, r10d
mov r12d, 1
mov ecx, dword [rbp - 0x70]
lea rdx, [rbp - 0x78]
call fcn.1401f1e64
mov rbx, qword [rbp - 0x78]
lea r9, [rsp + 0x6c]
mov rcx, qword [rsi + 0x30]
movabs rax, 0x3fffffffffffffff
and rbx, rax
xor r8d, r8d
add rbx, r12
mov rdx, rbx
mov qword [rbp - 0x78], rbx
call fcn.14024d458
xor r10d, r10d
mov dword [rsp + 0x34], eax
test eax, eax
jne 0x1402834be
cmp dword [rsp + 0x6c], r10d
jne 0x140281557
add edi, r12d
cmp edi, 0x64
jl 0x1402814f8
lea r14d, [rax + 0xd]
jmp 0x140282eee
mov byte [rsi + 3], r10b
mov dword [rsi + 0x20], r10d
mov qword [r14], rbx
mov r14d, dword [rsp + 0x34]
jmp 0x14027ccdb
mov rax, qword [r12 + 0x78]
lea r9, [rsp + 0x68]
movsxd rcx, dword [r13 + 4]
mov r8d, dword [r13 + 0x10]
mov dword [rsp + 0x68], r10d
mov rcx, qword [rax + rcx*8]
movsxd rax, dword [r13 + 0xc]
imul rdx, rax, 0x38
add rdx, rsi
call fcn.140286768
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r14d, eax
test eax, eax
jne 0x140282eee
lea r11d, [rax + 1]
cmp dword [rsp + 0x68], r10d
jne 0x14027d9a2
jmp 0x14027d354
sub ebx, 0x85
je 0x1402817c8
sub ebx, 1
je 0x140281745
sub ebx, 1
je 0x140281664
cmp ebx, 1
jne 0x14027f012
movsxd rdx, dword [r13 + 4]
mov rax, qword [r12 + 0x78]
mov rax, qword [rax + rdx*8]
test rax, rax
jne 0x140281633
lea r9d, [rbx + 2]
mov r8d, r11d
mov rcx, r12
call fcn.1401f55f8
xor r10d, r10d
test rax, rax
je 0x140283480
mov rcx, qword [rbp - 0x70]
mov r11d, ebx
or dword [rax + 8], ecx
lea rcx, [0x1403ce503]
mov r9, qword [rsp + 0x40]
mov qword [rax + 0x30], rcx
mov dword [rax + 0x24], r10d
mov byte [rax + 4], r11b
mov byte [rax + 2], r11b
mov dword [rax + 0x20], r10d
cmp byte [rax], r10b
jne 0x14027ccf0
mov rbx, qword [rax + 0x30]
mov rcx, qword [rbx + 0x18]
call fcn.1401f1d34
xor r10d, r10d
mov qword [rbx + 0x18], r10
lea r11d, [r10 + 1]
mov byte [rbx], r11b
jmp 0x14027d354
mov rdx, r13
mov rcx, r12
call fcn.140237d54
movsxd rdx, dword [r13 + 4]
xor r10d, r10d
mov rcx, qword [r12 + 0x78]
mov rdi, rax
mov rbx, qword [rcx + rdx*8]
cmp byte [rbx + 2], r10b
je 0x140281696
lea r11d, [r10 + 1]
mov word [rax + 0x14], r11w
jmp 0x14027d34f
cmp byte [rbx + 3], r10b
je 0x1402816a5
mov rax, qword [rbx + 0x50]
jmp 0x140281739
mov eax, 2
cmp byte [rbx], al
jne 0x1402816e3
mov rcx, qword [rbx + 0x30]
lea rdx, [rbp + 8]
mov rbx, qword [rcx]
mov rax, qword [rbx]
call qword [rax + 0x60]
mov rdx, rbx
mov rcx, r12
mov r14d, eax
mov dword [rsp + 0x34], eax
call fcn.140287db4
xor r10d, r10d
test r14d, r14d
jne 0x140282eee
mov rax, qword [rbp + 8]
jmp 0x14028173d
mov rax, qword [rbx + 0x30]
cmp byte [rax], r10b
je 0x140281708
mov rcx, rbx
call fcn.1402840f8
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r14d, eax
test eax, eax
jne 0x140282eee
jmp 0x140281710
mov r14d, r10d
mov dword [rsp + 0x34], r10d
cmp byte [rbx + 2], r10b
je 0x140281726
mov r11d, 1
mov word [rdi + 0x14], r11w
jmp 0x14027d34f
mov rbx, qword [rbx + 0x30]
mov rcx, rbx
call fcn.14022dfd8
mov rax, qword [rbx + 0x30]
xor r10d, r10d
mov qword [rbp + 8], rax
mov qword [rdi], rax
jmp 0x14027cce0
mov rdx, r13
mov rcx, r12
call fcn.140237d54
mov rcx, qword [r12 + 0x78]
mov rdi, rax
movsxd rdx, dword [r13 + 4]
mov rdx, qword [rcx + rdx*8]
mov rbx, qword [rdx + 0x30]
mov rcx, rbx
call fcn.14022dfd8
mov edx, dword [rbx + 0x40]
cmp edx, dword [r15 + 0x88]
ja 0x1402833da
mov r8, rdi
mov rcx, rbx
call fcn.140284d68
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r14d, eax
test eax, eax
jne 0x140282eee
cmp dword [r13 + 0xc], r10d
jne 0x14027cce0
mov eax, dword [rbp - 0x60]
test word [rdi + 0x14], ax
je 0x14027cce0
mov rcx, rdi
call fcn.140284f2c
xor r10d, r10d
test eax, eax
jne 0x140283480
jmp 0x14027cce0
movsxd rax, dword [r13 + 8]
movsxd rcx, dword [r13 + 4]
imul rdx, rax, 0x38
mov rax, qword [r12 + 0x78]
add rdx, rsi
mov rcx, qword [rax + rcx*8]
call fcn.140286c68
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r14d, eax
test eax, eax
jne 0x140282eee
movsxd rcx, dword [r13 + 0xc]
mov rax, qword [r12 + 0x78]
mov rcx, qword [rax + rcx*8]
mov dword [rcx + 0x20], r10d
jmp 0x14027cce5
movsxd rcx, dword [r13 + 4]
mov rax, qword [r12 + 0x78]
mov dword [rsp + 0x68], r10d
mov rdi, qword [rax + rcx*8]
mov rcx, qword [rdi + 0x30]
cmp bl, 0x89
jne 0x140281835
or dword [rdi + 0x24], 0xffffffff
cmp byte [rcx], r10b
je 0x14027d9c7
lea rdx, [rsp + 0x68]
call fcn.14024c428
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r14d, eax
mov byte [rdi + 3], r10b
mov eax, dword [rsp + 0x68]
mov byte [rdi + 2], al
mov dword [rdi + 0x20], r10d
test r14d, r14d
jne 0x140282eee
cmp dword [r13 + 8], r10d
jle 0x14027cce0
test eax, eax
je 0x14027cce0
jmp 0x14027d99c
mov r14d, dword [rsp + 0x34]
xor r10d, r10d
jmp 0x14027d9a2
cmp ebx, 0xa0
ja 0x1402823bf
je 0x14028235f
mov eax, 0x95
cmp ebx, eax
ja 0x140281f36
je 0x140281e0a
mov eax, 0x8f
cmp ebx, eax
ja 0x140281bc2
je 0x140281ba1
sub ebx, 0x8a
je 0x140281af0
sub ebx, 1
je 0x140281a9c
sub ebx, 1
je 0x1402819cd
sub ebx, 1
je 0x1402818e9
cmp ebx, 1
jne 0x14027f012
mov rax, qword [r12 + 0x78]
movsxd rcx, dword [r13 + 4]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x30]
cmp byte [rax], r10b
je 0x140281927
mov rcx, rbx
call fcn.1402840f8
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r14d, eax
test eax, eax
jne 0x140282eee
mov r9, qword [rsp + 0x40]
lea edx, [rax + 4]
lea r11d, [rax + 1]
jmp 0x14028192f
mov r14d, r10d
mov dword [rsp + 0x34], r10d
cmp byte [rbx + 2], r10b
jne 0x1402819ae
mov rdx, qword [rbx + 0x30]
lea r8, [rsp + 0x78]
mov rcx, r15
mov qword [rsp + 0x78], r10
call fcn.140284148
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r14d, eax
test eax, eax
jne 0x140282eee
cmp byte [r13], 0x8d
jne 0x140281999
mov rax, qword [r12 + 0x78]
lea r11d, [r14 + 1]
movsxd rcx, dword [r13 + 0xc]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rsp + 0x78]
mov word [rdx + 2], 0x100
mov qword [rdx + 0x50], rax
mov dword [rdx + 0x20], r10d
mov rax, qword [r13 + 0x10]
mov qword [rdx + 0x10], rax
mov qword [rdx + 0x28], rbx
jmp 0x14027d354
mov rdx, r13
mov rcx, r12
call fcn.140237d54
mov rcx, qword [rsp + 0x78]
jmp 0x14027ed0d
movsxd rax, dword [r13 + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, rsi
test word [rcx + 0x14], ax
je 0x14027fba9
jmp 0x14027d94e
movsxd rcx, dword [r13 + 4]
lea r8, [rbp - 4]
mov rax, qword [r12 + 0x78]
lea rdx, [rbp + 0x198]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x38]
mov rdi, qword [rbx + 0x30]
mov qword [rbp + 0x198], rax
movzx eax, word [r13 + 0xc]
mov word [rbp + 0x1b4], ax
movsxd rax, dword [r13 + 8]
imul rcx, rax, 0x38
mov byte [rbp + 0x1b6], r10b
add rcx, rsi
mov qword [rbp + 0x1a0], rcx
mov rcx, rdi
call fcn.14024b7d0
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r14d, eax
test eax, eax
jne 0x140282eee
cmp dword [rbp - 4], r10d
jne 0x140281a66
lea edx, [rax + 4]
mov rcx, rdi
call fcn.14024b0ec
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r14d, eax
test eax, eax
jne 0x140282eee
mov r11d, 1
and qword [rbx + 0x20], 0
jmp 0x14027d34f
cmp word [r13 + 2], r10w
je 0x140281a56
mov eax, dword [r15 + 0x30]
mov r11d, 1
and eax, 0x10000001
cmp rax, r11
je 0x140281a5c
lea r8, str.index_corruption
mov edx, 0x1715d
mov ecx, 0x30b
call fcn.140273a3c
jmp 0x140283188
mov rax, qword [r12 + 0x78]
movsxd rcx, dword [r13 + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [r13 + 8]
imul rbx, rax, 0x38
mov rax, qword [rbp - 0x68]
add rbx, rsi
test word [rbx + 0x14], ax
je 0x140281ad4
mov rcx, rbx
call fcn.140284b7c
xor r10d, r10d
mov r14d, eax
test eax, eax
jne 0x140282eee
mov rdx, rbx
mov rcx, rdi
call fcn.140286d28
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r14d, eax
test eax, eax
jmp 0x14027df10
mov rax, qword [r12 + 0x78]
movsxd rcx, dword [r13 + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [r13 + 8]
imul rbx, rax, 0x38
add rbx, rsi
test byte [r13 + 2], r11b
je 0x140281b13
add qword [r12 + 0x38], r11
mov rax, qword [rbp - 0x68]
test word [rbx + 0x14], ax
je 0x140281b33
mov rcx, rbx
call fcn.140284b7c
xor r10d, r10d
mov r14d, eax
test eax, eax
jne 0x140282eee
movsxd rax, dword [rbx + 0x10]
movzx r8d, word [r13 + 2]
mov qword [rbp + 0x2a8], rax
mov rax, qword [rbx + 8]
mov qword [rbp + 0x2a0], rax
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
movzx eax, word [r13 + 0x10]
add rcx, rsi
mov word [rbp + 0x2c0], ax
mov rax, qword [rbp - 0x58]
mov qword [rbp + 0x2b8], rcx
test al, r8b
je 0x140281b7b
mov r9d, dword [rdi + 0x24]
jmp 0x140281b7e
mov r9d, r10d
mov rcx, qword [rdi + 0x30]
lea rdx, [rbp + 0x2a0]
and r8d, 0x8a
call fcn.14024bb7c
xor r10d, r10d
mov dword [rdi + 0x20], r10d
jmp 0x140281ae2
movsxd rcx, dword [r13 + 4]
mov rax, qword [r12 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx + 3], r10b
je 0x14027ec96
call fcn.140283a98
jmp 0x14027d394
sub ebx, 0x90
je 0x140281cf2
sub ebx, 1
je 0x140281c9d
sub ebx, 1
je 0x140281c62
sub ebx, 1
je 0x140281c12
cmp ebx, 1
jne 0x14027f012
add byte [r15 + 0x70], r11b
xor r9d, r9d
mov rdx, qword [r13 + 0x10]
xor r8d, r8d
mov rcx, r15
mov qword [rsp + 0x20], r10
call fcn.1401eff74
dec byte [r15 + 0x70]
jmp 0x14027d394
mov rdx, r13
mov rcx, r12
call fcn.140237d54
mov r8d, dword [r13 + 0xc]
lea rdx, [rsp + 0x68]
xor ecx, ecx
mov rbx, rax
mov dword [rsp + 0x68], ecx
movsxd rcx, dword [r13 + 4]
shl rcx, 5
add rcx, qword [r15 + 0x20]
mov rcx, qword [rcx + 8]
call fcn.14024affc
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r14d, eax
test eax, eax
jne 0x140282eee
mov eax, dword [rsp + 0x68]
mov qword [rbx], rax
jmp 0x14027cce5
movsxd rcx, dword [r13 + 4]
mov rax, qword [r12 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx], r11b
jne 0x140281c85
mov rdx, qword [rcx + 0x30]
mov rcx, r15
call fcn.140286af0
jmp 0x14027d953
mov rcx, qword [rcx + 0x30]
xor r8d, r8d
mov edx, dword [rcx + 0x50]
mov rcx, qword [rcx + 8]
call fcn.14024a938
jmp 0x14027d394
movsxd rax, dword [r13 + 8]
lea r8, [rbp + 0x18]
mov rcx, qword [r15 + 0x20]
mov edx, dword [r13 + 4]
shl rax, 5
mov qword [rbp + 0x18], r10
mov rcx, qword [rax + rcx + 8]
call fcn.14024a938
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r14d, eax
cmp dword [r13 + 0xc], r10d
je 0x140281cea
mov rdx, qword [rbp + 0x18]
add qword [r12 + 0x38], rdx
cmp dword [r13 + 0xc], r10d
jle 0x140281cea
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
add qword [rcx + rsi], rdx
test r14d, r14d
jmp 0x14027d3a0
mov rdx, r13
mov rcx, r12
call fcn.140237d54
mov r11d, 1
mov rdi, rax
mov word [rax + 0x14], r11w
mov ecx, dword [r15 + 0xe8]
add ecx, r11d
cmp dword [r15 + 0xdc], ecx
jg 0x140283405
mov rax, qword [rsp + 0x60]
xor ecx, ecx
movsxd r15, dword [r13 + 0xc]
mov esi, dword [r13 + 4]
mov r14, r15
shl r14, 5
mov rax, qword [rax + 0x20]
mov dword [rsp + 0x68], ecx
mov rbx, qword [rax + r14 + 8]
cmp byte [rbx + 0x11], cl
je 0x140281d5b
add dword [rbx + 0x14], r11d
cmp byte [rbx + 0x12], cl
jne 0x140281d5b
mov rcx, rbx
call fcn.1401fa148
lea r8, [rsp + 0x68]
mov edx, esi
mov rcx, rbx
call fcn.1401f9b90
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r12d, eax
cmp byte [rbx + 0x11], r10b
je 0x140281d8b
sub dword [rbx + 0x14], 1
jne 0x140281d8b
mov rcx, rbx
call fcn.140291a9c
xor r10d, r10d
movsxd rdx, dword [rsp + 0x68]
mov eax, 4
mov word [rdi + 0x14], ax
mov qword [rdi], rdx
test r12d, r12d
jne 0x1402834be
test edx, edx
je 0x1402826d6
mov rax, qword [rsp + 0x60]
mov r9d, dword [r13 + 4]
mov r8, qword [rax + 0x20]
mov rax, qword [r14 + r8 + 0x18]
mov rcx, qword [rax + 0x10]
jmp 0x140281dd5
mov rax, qword [rcx + 0x10]
cmp dword [rax + 0x28], edx
jne 0x140281dd2
mov dword [rax + 0x28], r9d
mov rcx, qword [rcx]
test rcx, rcx
jne 0x140281dc5
mov rax, qword [r14 + r8 + 0x18]
mov rcx, qword [rax + 0x28]
jmp 0x140281df5
mov rax, qword [rcx + 0x10]
cmp dword [rax + 0x58], edx
jne 0x140281df2
mov dword [rax + 0x58], r9d
mov rcx, qword [rcx]
test rcx, rcx
jne 0x140281de5
lea r11d, [rcx + 1]
lea eax, [r11 + r15]
mov byte [rbp - 0x80], al
jmp 0x14027f585
movsxd rbx, dword [r13 + 4]
lea rdi, [r12 + 0xa8]
mov rdx, qword [r13 + 0x10]
mov r8, rbx
shl r8, 5
add r8, qword [r15 + 0x20]
test rdx, rdx
jne 0x140281e6c
mov rcx, qword [r8 + 0x18]
call fcn.140274da0
and dword [r15 + 0x2c], 0xffffffef
mov r8, rdi
movzx r9d, word [r13 + 2]
mov edx, ebx
mov rcx, r15
call fcn.1402690e0
mov r11d, 1
mov dword [rsp + 0x34], eax
or dword [r15 + 0x2c], r11d
mov r14d, eax
and dword [r12 + 0xc8], 0xfffffffc
xor r10d, r10d
jmp 0x140281f28
mov qword [rbp + 0x20], r15
lea r9, str.sqlite_master
mov dword [rbp + 0x30], ebx
mov qword [rbp + 0x28], rdi
mov dword [rbp + 0x38], r10d
mov rax, qword [r8 + 8]
mov qword [rsp + 0x20], rdx
lea rdx, str.SELECTFROM__w_._s_WHERE__s_ORDER_BY_rowid
mov rcx, qword [rax + 8]
mov eax, dword [rcx + 0x40]
mov rcx, r15
mov dword [rbp + 0x40], eax
mov r8, qword [r8]
call fcn.14026baf0
xor edi, edi
mov rbx, rax
test rax, rax
je 0x140283423
lea eax, [rdi + 1]
mov dword [rbp + 0x34], edi
lea r9, [rbp + 0x20]
mov byte [r15 + 0xc5], al
lea r8, [fcn.140268e44]
mov dword [rbp + 0x3c], edi
mov rdx, rbx
mov qword [rsp + 0x20], rdi
mov rcx, r15
call fcn.1401eff74
mov dword [rsp + 0x34], eax
mov r14d, eax
test eax, eax
jne 0x140281f0f
mov r14d, dword [rbp + 0x34]
mov dword [rsp + 0x34], r14d
test r14d, r14d
jne 0x140281f0f
cmp dword [rbp + 0x3c], edi
jne 0x140281f0f
mov ecx, 0x17326
call fcn.14024fc48
mov r14d, eax
mov dword [rsp + 0x34], eax
mov rdx, rbx
mov rcx, r15
call fcn.1402514c0
xor r10d, r10d
mov byte [r15 + 0xc5], r10b
lea r11d, [r10 + 1]
test r14d, r14d
jne 0x140283429
jmp 0x14027d34f
mov eax, 0x9b
cmp ebx, eax
ja 0x140282223
je 0x1402820ed
sub ebx, 0x96
je 0x1402820dc
sub ebx, 1
je 0x140282098
sub ebx, 1
je 0x140282020
sub ebx, 1
je 0x140282008
cmp ebx, 1
jne 0x14027f012
movsxd rcx, dword [r13 + 4]
xor r8d, r8d
mov rax, qword [r15 + 0x20]
mov rdx, qword [r13 + 0x10]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
add rcx, 0x38
call fcn.14026876c
xor r10d, r10d
mov rbx, rax
test rax, rax
je 0x14027cce0
mov rcx, qword [rax + 0x30]
cmp qword [rax + 0x28], rcx
jne 0x140281fee
mov rdx, qword [rax + 8]
add rcx, 8
xor r8d, r8d
call fcn.140204db0
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x140281fee
add rcx, 0x58
mov rax, qword [rcx]
jmp 0x140281fe4
lea rdx, [rax + 0x40]
cmp rax, rbx
mov rax, qword [rdx]
je 0x140281feb
mov rcx, rdx
test rax, rax
jne 0x140281fd5
jmp 0x140281fee
mov qword [rcx], rax
mov rdx, rbx
mov rcx, r15
call fcn.140252654
mov r11d, 1
or dword [r15 + 0x2c], r11d
jmp 0x14027e24b
mov rdx, r13
mov rcx, r12
call fcn.140237d54
mov rcx, qword [rbp - 0x70]
mov word [rax + 0x14], cx
jmp 0x14027ecef
movsxd rcx, dword [r13 + 4]
xor r8d, r8d
mov rax, qword [r15 + 0x20]
mov rdx, qword [r13 + 0x10]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
add rcx, qword [rbp - 0x48]
call fcn.14026876c
xor r10d, r10d
mov rdx, rax
test rax, rax
je 0x140282089
mov rax, qword [rax + 0x18]
mov rcx, qword [rax + 0x10]
cmp rcx, rdx
jne 0x14028206f
mov rcx, qword [rdx + 0x28]
mov qword [rax + 0x10], rcx
jmp 0x14028207e
lea r8, [rcx]
mov rcx, qword [rcx + 0x28]
cmp rcx, rdx
je 0x140282076
test rcx, rcx
jne 0x140282063
jmp 0x14028207e
mov rax, qword [rdx + 0x28]
mov qword [r8 + 0x28], rax
mov rcx, r15
call fcn.140259c48
xor r10d, r10d
mov r11d, 1
or dword [r15 + 0x2c], r11d
jmp 0x14027d354
movsxd rcx, dword [r13 + 4]
xor r8d, r8d
mov rdx, qword [r13 + 0x10]
shl rcx, 5
add rcx, qword [r15 + 0x20]
mov rcx, qword [rcx + 0x18]
add rcx, qword [rbp - 0x70]
call fcn.14026876c
xor r10d, r10d
test rax, rax
je 0x140282089
cmp qword [r15 + 0x300], r10
jne 0x1402820cf
add dword [rax + 0x2c], 0xffffffff
jne 0x140282089
mov rdx, rax
mov rcx, r15
call fcn.14020095c
jmp 0x140282086
mov edx, dword [r13 + 4]
mov rcx, r15
call fcn.14024893c
jmp 0x14027d394
movsxd rax, dword [r13 + 0xc]
lea r9, [rbp]
mov rdx, qword [r15 + 0x20]
mov r8, qword [r13 + 0x10]
imul rdi, rax, 0x38
movsxd rax, dword [r13 + 4]
add r8, 4
imul rbx, rax, 0x38
movzx eax, word [r13 + 2]
add rdi, rsi
mov qword [rsp + 0x28], r9
add rbx, rsi
mov r9d, dword [r13 + 8]
shl rax, 5
mov ecx, dword [rdi]
add ecx, r11d
mov dword [rsp + 0x20], ecx
mov rcx, r15
mov rdx, qword [rax + rdx + 8]
call fcn.14024c048
mov rsi, rax
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x140282158
mov rcx, rbx
call fcn.1402940b4
mov edx, 1
jmp 0x140282161
mov edx, 1
mov word [rbx + 0x14], dx
mov eax, dword [rbp]
test eax, eax
je 0x140282197
test rsi, rsi
je 0x140283480
dec eax
mov r9b, dl
movsxd rcx, eax
or r8, 0xffffffffffffffff
sub qword [rdi], rcx
lea rax, [fcn.1401f1d34]
mov rcx, rbx
mov qword [rsp + 0x20], rax
mov rdx, rsi
call fcn.140285194
mov dil, byte [rsp + 0x30]
mov eax, 2
test byte [rbx + 0x14], al
jne 0x1402821ac
mov byte [rbx + 0x16], dil
jmp 0x1402821bd
cmp byte [rbx + 0x16], dil
je 0x1402821bd
mov dl, dil
mov rcx, rbx
call fcn.140285650
mov rsi, qword [rsp + 0x58]
xor r10d, r10d
mov eax, dword [r15 + 0x198]
test eax, eax
jne 0x140283487
mov rbx, qword [rsp + 0x48]
mov r12, qword [rbp - 0x10]
cmp r12, rbx
jb 0x14027cce0
mov rdx, qword [r15 + 0x208]
test rdx, rdx
je 0x14027cce0
mov eax, dword [r15 + 0x218]
mov rcx, qword [r15 + 0x210]
add rbx, rax
mov qword [rsp + 0x48], rbx
call rdx
xor r10d, r10d
test eax, eax
jne 0x140283446
cmp r12, rbx
jae 0x1402821e6
jmp 0x14027cce5
sub ebx, 0x9c
je 0x14028231f
sub ebx, 1
je 0x1402822e4
sub ebx, 1
je 0x1402822ad
cmp ebx, 1
jne 0x14027f012
mov rcx, qword [r12 + 0x108]
test rcx, rcx
je 0x140282273
mov rax, qword [rcx + 8]
jmp 0x140282260
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x140282259
movsxd rax, dword [r13 + 4]
imul rdi, rax, 0x38
add rdi, qword [rcx + 0x20]
jmp 0x14028227e
movsxd rax, dword [r13 + 4]
imul rdi, rax, 0x38
add rdi, rsi
mov rcx, rdi
call fcn.140284efc
movsxd rax, dword [r13 + 8]
imul rbx, rax, 0x38
add rbx, rsi
mov rcx, rbx
call fcn.140284efc
mov rax, qword [rbx]
xor r10d, r10d
cmp qword [rdi], rax
jge 0x14027cce0
jmp 0x14028173d
mov eax, dword [r15 + 0x30]
bt rax, 0x13
movsxd rax, dword [r13 + 8]
jae 0x1402822c8
add qword [r15 + 0x2f8], rax
jmp 0x14027f012
cmp dword [r13 + 4], r10d
je 0x1402822da
add qword [r15 + 0x2f0], rax
jmp 0x14027f012
add qword [r12 + 0x50], rax
jmp 0x14027f012
mov rdx, r13
mov rcx, r12
call fcn.140237d54
mov r9, qword [r12 + 0x108]
movsxd rcx, dword [r9 + 0x54]
lea rdx, [rcx + rcx*2]
mov rcx, qword [r9 + 0x10]
mov r8d, dword [rcx + rdx*8 + 4]
add r8d, dword [r13 + 4]
movsxd rcx, r8d
imul rdx, rcx, 0x38
mov rcx, rax
add rdx, qword [r9 + 0x20]
jmp 0x14027f032
movsxd rax, dword [r13 + 4]
imul rbx, rax, 0x38
movsxd rax, dword [r13 + 8]
imul rdi, rax, 0x38
mov rax, qword [rbp - 0x58]
add rbx, rsi
add rdi, rsi
test byte [rbx + 0x14], al
jne 0x14028234e
mov rcx, rbx
call fcn.1402850cc
test eax, eax
jne 0x140283480
mov rdx, qword [rdi]
mov rcx, qword [rbx + 8]
call fcn.140274288
jmp 0x14027e5d2
movsxd rax, dword [r13 + 4]
mov rdx, r13
imul rbx, rax, 0x38
movsxd rax, dword [r13 + 0xc]
mov rcx, r12
imul rdi, rax, 0x38
add rdi, rsi
call fcn.140237d54
mov rcx, qword [rbx + rsi]
xor r11d, r11d
mov qword [rsp + 0x78], rcx
mov r10, rax
test rcx, rcx
jle 0x1402823b6
mov rdx, qword [rdi]
lea rcx, [rsp + 0x78]
test rdx, rdx
cmovle rdx, r11
call fcn.140247168
test eax, eax
jne 0x1402823b6
mov rax, qword [rsp + 0x78]
mov qword [r10], rax
jmp 0x14027e5d2
or qword [r10], 0xffffffffffffffff
jmp 0x14027e5d2
cmp ebx, 0xab
ja 0x1402828cc
je 0x140282822
mov r8d, 0xa6
cmp ebx, r8d
ja 0x14028273a
je 0x1402826e0
sub ebx, 0xa1
je 0x140282501
sub ebx, 1
je 0x140282501
sub ebx, 1
je 0x140282599
sub ebx, 1
je 0x140282412
cmp ebx, 1
jne 0x14027f012
movsxd rax, dword [r13 + 4]
imul rbx, rax, 0x38
add rbx, rsi
mov rsi, qword [r13 + 0x10]
cmp dword [r13 + 0xc], r10d
je 0x1402824b7
movsxd rax, dword [r13 + 0xc]
lea rcx, [rbp + 0x1f8]
imul rdi, rax, 0x38
xor edx, edx
add rdi, qword [rsp + 0x58]
lea r8d, [rdx + 0x38]
call sub.VCRUNTIME140.dll_memset
mov eax, 0x9000
test word [rdi + 0x14], ax
je 0x14028245f
mov rcx, rdi
call fcn.1402940b4
jmp 0x140282468
mov eax, 1
mov word [rdi + 0x14], ax
mov rax, qword [rbx + 0x18]
mov qword [rbp + 0x1f8], rdi
mov qword [rbp + 0x208], rbx
mov qword [rbp + 0x200], rsi
mov cl, byte [rax + 0x64]
mov byte [rbp + 0x220], cl
lea rcx, [rbp + 0x1f8]
call qword [rsi + 0x28]
movsxd rax, dword [r13 + 0xc]
mov rsi, qword [rsp + 0x58]
mov r14d, dword [rbp + 0x21c]
mov dil, byte [rsp + 0x30]
imul rbx, rax, 0x38
mov dword [rsp + 0x34], r14d
add rbx, rsi
jmp 0x1402824ce
mov rdx, rsi
mov rcx, rbx
call fcn.140284be0
mov rsi, qword [rsp + 0x58]
mov r14d, eax
mov dword [rsp + 0x34], eax
xor r10d, r10d
test r14d, r14d
jne 0x140283461
lea eax, [r10 + 2]
test byte [rbx + 0x14], al
je 0x14027ee54
cmp byte [rbx + 0x16], dil
je 0x14027cce0
mov dl, dil
mov rcx, rbx
call fcn.140285650
jmp 0x14027d953
movzx ebx, word [r13 + 2]
mov rcx, r15
mov edi, ebx
lea rdx, [rbx*8 + 0x68]
call fcn.140251578
xor r10d, r10d
mov r8, rax
test rax, rax
je 0x140283480
mov dil, byte [rsp + 0x30]
lea rcx, [rbx + 6]
lea rcx, [rax + rcx*8]
mov qword [rax + 0x10], r10
mov qword [rax], rcx
lea eax, [r10 + 1]
mov word [rcx + 0x14], ax
movabs rax, 0x2aaaaaaaaaaaaaab
mov qword [rcx + 0x18], r15
mov dword [rcx + 0x20], r10d
mov rcx, qword [r13 + 0x10]
mov qword [r8 + 8], rcx
mov rcx, r13
sub rcx, qword [rsp + 0x40]
imul rcx
mov qword [r8 + 0x18], r12
sar rdx, 2
mov rax, rdx
mov byte [r8 + 0x29], r10b
mov dword [r8 + 0x24], r10d
mov byte [r8 + 0x28], dil
mov byte [r8 + 0x2a], bl
shr rax, 0x3f
add rdx, rax
mov dword [r8 + 0x20], edx
mov word [r13], 0xf1a3
mov qword [r13 + 0x10], r8
movsxd rax, dword [r13 + 0xc]
xor r11d, r11d
mov rbx, qword [r13 + 0x10]
imul r8, rax, 0x38
add r8, rsi
cmp qword [rbx + 0x10], r8
je 0x1402825fd
movzx eax, byte [rbx + 0x2a]
mov edx, eax
mov qword [rbx + 0x10], r8
sub rdx, 1
lea r10d, [rax - 1]
js 0x1402825fd
mov rdi, qword [rbp - 0x70]
lea r9, [rdx + 6]
lea r9, [rbx + r9*8]
lea r15d, [r11 + 1]
mov eax, dword [r13 + 8]
add eax, r10d
sub r10d, r15d
cdqe
imul rcx, rax, 0x38
add rcx, rsi
mov qword [r9], rcx
sub r9, rdi
sub rdx, r15
jns 0x1402825d5
mov r15, qword [rsp + 0x60]
mov dil, byte [rsp + 0x30]
mov eax, 1
mov rcx, rbx
add dword [r8 + 0x10], eax
lea r8, [rbx + 0x30]
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x2a]
cmp dword [r13 + 4], r11d
je 0x140282620
call qword [rax + 0x30]
jmp 0x140282623
call qword [rax + 0x18]
mov eax, dword [rbx + 0x24]
xor r10d, r10d
test eax, eax
je 0x14027cce0
jle 0x14028265d
mov rcx, qword [rbx]
lea edx, [r10 + 1]
call fcn.14027bc68
mov r8, rax
lea rdx, [0x1403b1d80]
mov rcx, r12
call fcn.14027c8bc
mov r14d, dword [rbx + 0x24]
xor r10d, r10d
mov dword [rsp + 0x34], r14d
cmp byte [rbx + 0x29], r10b
je 0x1402826a3
cmp dword [r13 - 0x14], r10d
je 0x14028269f
movsxd rax, dword [r13 - 0x14]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, rsi
test word [rcx + 0x14], ax
je 0x14028268e
mov edx, 1
call fcn.140295154
xor r10d, r10d
jmp 0x14028269f
mov eax, 1
mov qword [rcx], rax
mov eax, 4
mov word [rcx + 0x14], ax
mov byte [rbx + 0x29], r10b
mov rcx, qword [rbx]
mov eax, 0x9000
test word [rcx + 0x14], ax
jne 0x1402826b7
cmp dword [rcx + 0x20], r10d
je 0x1402826bf
call fcn.140294078
xor r10d, r10d
mov rax, qword [rbx]
mov r11d, 1
mov word [rax + 0x14], r11w
mov dword [rbx + 0x24], r10d
jmp 0x140280182
mov r14d, dword [rsp + 0x34]
jmp 0x14027ccd6
cmp dword [r13 + 4], r10d
jne 0x14028271b
mov rcx, qword [r15 + 8]
mov edx, dword [r13 + 8]
test rcx, rcx
je 0x14027ccf5
inc edx
and edx, 3
mov eax, dword [rcx + 0xc8]
and eax, 0xfffffffc
or eax, edx
mov dword [rcx + 0xc8], eax
mov rcx, qword [rcx + 0x10]
test rcx, rcx
jne 0x1402826fc
jmp 0x14027ccf0
mov eax, dword [r13 + 8]
add eax, r11d
xor eax, dword [r12 + 0xc8]
and eax, 3
xor dword [r12 + 0xc8], eax
jmp 0x14027f012
sub ebx, 0xa7
je 0x140282808
sub ebx, 1
je 0x1402827ee
sub ebx, 1
je 0x140282793
cmp ebx, 1
jne 0x14027f012
mov rbx, qword [r13 + 0x10]
mov rcx, r15
mov rdx, rbx
call fcn.140287468
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r14d, eax
test rbx, rbx
je 0x140281cea
mov rdx, qword [rbx + 0x10]
mov rcx, r12
call fcn.140287db4
xor r10d, r10d
jmp 0x140281cea
mov r8b, byte [r13 + 0xc]
test r8b, r8b
jne 0x1402827aa
mov eax, dword [r15 + 0x30]
test qword [rbp - 0x68], rax
jne 0x14027f012
movsxd rax, dword [r13 + 4]
mov rcx, qword [r15 + 0x20]
mov edx, dword [r13 + 8]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.14024c490
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov r14d, eax
test eax, eax
je 0x14027cce5
cmp al, 6
jne 0x140282eee
mov r8, qword [r13 + 0x10]
lea rdx, str.database_table_is_locked:__s
jmp 0x140282ec6
mov rax, qword [r12 + 0x78]
movsxd rcx, dword [r13 + 4]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x30]
and byte [rax + 1], 0xbf
jmp 0x14027ec96
mov rax, qword [r12 + 0x78]
movsxd rcx, dword [r13 + 4]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x30]
or byte [rax + 1], 0x40
jmp 0x14027ec96
xor edx, edx
lea rcx, [rbp + 0x230]
lea r8d, [rdx + 0x38]
call sub.VCRUNTIME140.dll_memset
movsxd rax, dword [r13 + 8]
lea rcx, [rbp + 0x230]
imul rdx, rax, 0x38
mov qword [rbp + 0x248], r15
add rdx, rsi
call fcn.140284af8
mov edx, 1
mov dword [rsp + 0x34], eax
lea rcx, [rbp + 0x230]
mov r14d, eax
call fcn.14027bc68
xor r10d, r10d
test rax, rax
je 0x140282893
mov edx, dword [r13 + 4]
lea r9, [r12 + 0xa8]
mov r8, rax
mov rcx, r15
call fcn.140287758
mov r14d, eax
mov dword [rsp + 0x34], eax
xor r10d, r10d
mov ecx, 0x9000
test word [rbp + 0x244], cx
jne 0x1402828aa
cmp dword [rbp + 0x250], r10d
je 0x1402828be
lea rcx, [rbp + 0x230]
call fcn.140294078
xor r10d, r10d
mov ecx, 0x9000
test r14d, r14d
jne 0x140282eee
jmp 0x14027d919
mov eax, 0xb1
cmp ebx, eax
ja 0x140282c32
je 0x140282c0a
sub ebx, 0xac
je 0x140282be7
sub ebx, 1
je 0x140282b63
sub ebx, 1
je 0x140282ae1
sub ebx, 1
je 0x1402829a4
cmp ebx, 1
jne 0x14027f012
mov edi, dword [r15 + 0x30]
mov eax, 0x4000000
or qword [r15 + 0x30], rax
and edi, eax
mov rax, qword [r13 + 0x10]
mov rsi, qword [rax + 0x10]
movsxd rax, dword [r13 + 4]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x58]
test byte [rbx + 0x14], r8b
jne 0x14028293f
mov byte [rbx + 0x16], r11b
jmp 0x14028295e
cmp byte [rbx + 0x16], r11b
je 0x14028295e
mov dl, r11b
mov rcx, rbx
call fcn.140285650
xor r10d, r10d
mov r14d, eax
test eax, eax
jne 0x140282eee
mov rax, qword [rsi]
mov rcx, rsi
mov rdx, qword [rbx + 8]
call qword [rax + 0x98]
mov dword [rsp + 0x34], eax
mov r14d, eax
test edi, edi
jne 0x14028297f
btr qword [r15 + 0x30], 0x1a
mov rdx, rsi
mov rcx, r12
call fcn.140287db4
and dword [r12 + 0xc8], 0xfffffffc
xor r10d, r10d
test r14d, r14d
jne 0x140282eee
jmp 0x14027ccdb
mov rax, qword [r12 + 0x78]
movsxd rcx, dword [r13 + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [r13 + 0xc]
imul rbx, rax, 0x38
add rbx, rsi
cmp byte [rdi + 2], r10b
je 0x1402829de
mov ecx, 0x9000
test word [rbx + 0x14], cx
je 0x140280562
mov rcx, rbx
call fcn.1402940b4
jmp 0x14027e5d2
mov rax, qword [rdi + 0x30]
lea rcx, [rbp + 0x268]
xor edx, edx
mov rsi, qword [rax]
lea r8d, [rdx + 0x38]
mov r14, qword [rsi]
call sub.VCRUNTIME140.dll_memset
mov al, byte [rsp + 0x30]
mov ecx, 1
mov qword [rbp + 0x268], rbx
mov byte [rbp + 0x290], al
test byte [r13 + 2], cl
je 0x140282a3a
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x140282a2b
mov rcx, rbx
call fcn.1402940b4
jmp 0x140282a2f
mov word [rbx + 0x14], cx
xor ecx, ecx
mov eax, 0x401
mov dword [rbx], ecx
jmp 0x140282a49
movzx eax, word [rbx + 0x14]
mov edx, 0xf241
and ax, dx
or ax, cx
mov word [rbx + 0x14], ax
lea rdx, [rbp + 0x268]
mov r8d, dword [r13 + 8]
mov rcx, qword [rdi + 0x30]
call qword [r14 + 0x58]
mov rdx, rsi
mov rcx, r12
mov r14d, eax
mov dword [rsp + 0x34], eax
call fcn.140287db4
xor eax, eax
cmp dword [rbp + 0x28c], eax
jle 0x140282aa5
lea edx, [rax + 1]
mov rcx, rbx
call fcn.14027bc68
mov r8, rax
lea rdx, [0x1403b1d80]
mov rcx, r12
call fcn.14027c8bc
mov r14d, dword [rbp + 0x28c]
mov dword [rsp + 0x34], r14d
mov dil, byte [rsp + 0x30]
mov eax, 2
test byte [rbx + 0x14], al
jne 0x140282aba
mov byte [rbx + 0x16], dil
jmp 0x140282acb
cmp byte [rbx + 0x16], dil
je 0x140282acb
mov dl, dil
mov rcx, rbx
call fcn.140285650
xor r10d, r10d
test r14d, r14d
jne 0x140282eee
mov rsi, qword [rsp + 0x58]
jmp 0x14027cce5
movsxd rcx, dword [r13 + 4]
mov rax, qword [r12 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rbp - 0x58]
call fcn.1401f1c2c
mov rdi, rax
test rax, rax
je 0x140283480
mov rcx, qword [rbx + 0x30]
mov qword [rax], rcx
movsxd rcx, dword [r13 + 0xc]
imul rdx, rcx, 0x38
mov rcx, r12
add rdx, rsi
mov qword [rax + 8], rdx
mov rdx, r13
call fcn.140237d54
mov rbx, rax
mov eax, 1
mov rcx, rbx
mov word [rbx + 0x14], ax
call fcn.140294078
lea rax, str.ValueList
mov qword [rbx + 8], rdi
mov qword [rbx], rax
mov eax, 0x1a01
mov word [rbx + 0x14], ax
lea rax, [fcn.1401f1d34]
mov qword [rbx + 0x30], rax
mov byte [rbx + 0x17], 0x70
jmp 0x14027e5d2
mov rax, qword [r13 + 0x10]
mov qword [rbp - 0x18], r10
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x140283168
mov rdi, qword [rbx]
test rdi, rdi
je 0x140283168
lea rdx, [rbp - 0x18]
mov rcx, rbx
call qword [rdi + 0x30]
mov rdx, rbx
mov rcx, r12
mov r14d, eax
mov dword [rsp + 0x34], eax
call fcn.140287db4
xor r10d, r10d
test r14d, r14d
jne 0x140282eee
mov rax, qword [rbp - 0x18]
lea r9d, [r14 + 2]
xor r8d, r8d
mov rcx, r12
mov qword [rax], rbx
mov edx, dword [r13 + 4]
call fcn.1401f55f8
mov rcx, qword [rbp - 0x18]
xor r10d, r10d
test rax, rax
je 0x14028347d
lea r11d, [r14 + 1]
mov qword [rax + 0x30], rcx
add dword [rbx + 8], r11d
jmp 0x14027d34f
add dword [r15 + 0xe8], r11d
mov rcx, r15
mov r8, qword [r13 + 0x10]
mov edx, dword [r13 + 4]
call fcn.140287868
dec dword [r15 + 0xe8]
jmp 0x14027d394
mov rdx, r13
mov rcx, r12
call fcn.140237d54
mov rcx, qword [r15 + 0x20]
movsxd rdx, dword [r13 + 4]
shl rdx, 5
mov rdx, qword [rdx + rcx + 8]
mov rcx, qword [rdx + 8]
mov edx, dword [rcx + 0x40]
jmp 0x14027ecf6
sub ebx, 0xb2
je 0x140282de9
sub ebx, 1
je 0x140282dd2
sub ebx, 1
je 0x140282d95
cmp ebx, 1
jne 0x14027f012
mov al, byte [r15 + 0x6e]
test al, 0x41
je 0x140282d32
cmp byte [r12 + 0xc3], 0xfe
je 0x140282d32
mov r9, qword [r13 + 0x10]
test r9, r9
jne 0x140282c8e
mov r9, qword [r12 + 0xf8]
test r9, r9
je 0x140282d2d
test al, 0x40
je 0x140282cbb
mov rdx, r9
mov rcx, r12
call fcn.14028366c
mov rcx, qword [r15 + 0x100]
mov rdx, rax
mov rbx, rax
call qword [r15 + pe_nt_image_headers64]
mov rcx, rbx
call fcn.1401f1d34
jmp 0x140282d1b
cmp dword [r15 + 0xe4], r11d
jle 0x140282d07
mov r8, r9
lea rdx, str.____s
mov rcx, r15
call fcn.14026baf0
mov rdx, qword [r15 + 0x100]
mov r9, rax
mov r8, r12
mov ecx, 1
mov rbx, rax
call qword [r15 + pe_nt_image_headers64]
xor r10d, r10d
test rbx, rbx
je 0x140282d1e
mov rdx, rbx
mov rcx, r15
call fcn.1402514c0
jmp 0x140282d1b
mov rdx, qword [r15 + 0x100]
mov r8, r12
mov ecx, r11d
call qword [r15 + pe_nt_image_headers64]
xor r10d, r10d
mov r11d, 1
mov ecx, 0x9000
lea edx, [r11 + 3]
mov r9, qword [rsp + 0x40]
mov eax, dword [r13 + 4]
cmp eax, dword [0x1403c90a8]
jl 0x140282d82
cmp byte [r13], 0xb5
je 0x14027f012
mov edx, r11d
cmp dword [r12 + 0x90], r11d
jle 0x140282d7f
mov eax, 0x18
mov rcx, qword [r12 + 0x88]
cmp byte [rax + rcx], 0xe
jne 0x140282d6e
mov dword [rax + rcx + 4], r10d
add edx, r11d
add rax, 0x18
cmp edx, dword [r12 + 0x90]
jl 0x140282d5b
mov eax, r10d
inc eax
mov dword [r13 + 4], eax
add dword [r12 + 0xec], r11d
jmp 0x14027e2ca
movsxd rax, dword [r13 + 4]
mov rdx, r13
mov rcx, rsi
imul rbx, rax, 0x38
call fcn.140204834
movsxd rcx, dword [rbx + rsi + 0x10]
xor edx, edx
div rcx
mov rcx, qword [rbx + rsi + 8]
mov r8, rdx
and edx, 7
shr r8, 3
movsx eax, byte [r8 + rcx]
bts eax, edx
mov byte [r8 + rcx], al
jmp 0x14027d953
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
mov eax, 0xf7ff
and word [rcx + rsi + 0x14], ax
jmp 0x14027ec96
mov rdx, r13
mov rcx, r12
call fcn.140237d54
movsxd rdx, dword [r13 + 4]
xor r10d, r10d
mov rcx, qword [r15 + 0x20]
mov rsi, rax
shl rdx, 5
mov edi, r10d
mov rbx, qword [rdx + rcx + 8]
mov edx, dword [r13 + 0xc]
test edx, edx
je 0x140282e22
mov rcx, qword [rbx + 8]
mov edi, dword [rcx + 0x40]
cmp edi, edx
cmovb edi, edx
cmp byte [rbx + 0x11], r10b
je 0x140282e41
mov eax, 1
add dword [rbx + 0x14], eax
cmp byte [rbx + 0x12], r10b
jne 0x140282e41
mov rcx, rbx
call fcn.1401fa148
xor r10d, r10d
mov rax, qword [rbx + 8]
mov rcx, qword [rax]
test edi, edi
je 0x140282e52
mov dword [rcx + 0xbc], edi
mov edi, dword [rcx + 0xbc]
cmp byte [rbx + 0x11], r10b
je 0x140282e6f
sub dword [rbx + 0x14], 1
jne 0x140282e6f
mov rcx, rbx
call fcn.140291a9c
xor r10d, r10d
mov qword [rsi], rdi
jmp 0x14027ccdb
mov r14d, dword [rsp + 0x34]
mov r13, rdx
jmp 0x14027e8aa
mov r14d, dword [rsp + 0x34]
mov r15, qword [rsp + 0x60]
jmp 0x140280567
mov r15, qword [rsp + 0x60]
jmp 0x14027ec96
xor r10d, r10d
jmp 0x14027d91e
cmp ebx, ecx
lea rax, str.into
lea r8, str.out_of
mov r14d, 1
cmove r8, rax
lea rdx, str.cannot_change__s_wal_mode_from_within_a_transaction
mov rcx, r12
call fcn.14027c8bc
mov r12, qword [rsp + 0x38]
xor r10d, r10d
jmp 0x1402834c8
and eax, 0x100000
neg rax
sbb r14d, r14d
and r14d, 0xfffffffd
add r14d, 0xb
mov r12, qword [rsp + 0x38]
jmp 0x1402834c8
mov rbx, qword [rsp + 0x50]
mov eax, 5
lea edi, [rax - 3]
cmp r14b, al
jne 0x1402834f6
mov rcx, r13
mov dword [r12 + 0x34], r14d
sub rcx, qword [rsp + 0x40]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [r12 + 0x30], edx
jmp 0x140283012
movzx eax, byte [r15 + 0x65]
mov ebx, dword [r13 + 4]
mov ecx, dword [r13 + 8]
cmp ebx, eax
je 0x140283085
test ecx, ecx
je 0x140282f70
mov edx, 0x204
mov rcx, r15
call fcn.1402740bc
mov edi, 1
mov al, dil
jmp 0x140282fb2
test ebx, ebx
je 0x140282f97
cmp dword [r15 + 0xe0], r10d
jle 0x140282f97
lea rdx, str.cannot_commit_transaction___SQL_statements_in_progress
mov rcx, r12
call fcn.14027c8bc
mov r14d, 5
jmp 0x140282ece
mov edx, r11d
mov rcx, r12
call fcn.14027c220
xor r10d, r10d
mov r14d, eax
test eax, eax
jne 0x140283008
mov al, bl
lea edi, [r14 + 1]
mov rcx, r12
mov byte [r15 + 0x65], al
call fcn.140283cc0
mov r8d, 5
cmp eax, r8d
jne 0x140283069
mov rcx, r13
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x40]
mov r14d, r8d
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov eax, edi
sub al, bl
mov dword [r12 + 0x30], edx
mov byte [r15 + 0x65], al
mov dword [r12 + 0x34], r8d
xor r10d, r10d
mov rbx, qword [rsp + 0x50]
mov edi, 2
mov rcx, qword [rsp + 0x60]
mov r12, qword [rsp + 0x38]
mov r13, qword [rsp + 0x48]
mov rax, qword [rbp - 0x10]
cmp rax, r13
jb 0x140283616
mov rdx, qword [rcx + 0x208]
cmp rdx, r10
je 0x140283616
mov eax, dword [rcx + 0x218]
mov rcx, qword [rcx + 0x210]
add r13, rax
call rdx
mov rcx, qword [rsp + 0x60]
xor r10d, r10d
test eax, eax
je 0x140283021
or r13, 0xffffffffffffffff
lea r14d, [r10 + 9]
jmp 0x1402834d7
mov rcx, r15
call fcn.14024dfdc
mov eax, dword [r12 + 0x34]
neg eax
sbb r14d, r14d
and r14d, 0xffffff9c
add r14d, 0x65
jmp 0x140283005
test ecx, ecx
lea rax, str.cannot_rollback___no_transaction_is_active
lea rdx, str.cannot_commit___no_transaction_is_active
mov rcx, r12
cmovne rdx, rax
test ebx, ebx
lea rax, str.cannot_start_a_transaction_within_a_transaction
cmove rdx, rax
call fcn.14027c8bc
mov r14d, 1
jmp 0x140282ece
lea rdx, str.cannot_open_savepoint___SQL_statements_in_progress
jmp 0x140282f84
lea rdx, str.cannot_release_savepoint___SQL_statements_in_progress
jmp 0x140282f84
mov rbx, qword [rsp + 0x50]
movabs rax, 0x2aaaaaaaaaaaaaab
mov r12, qword [rsp + 0x38]
mov r14d, r8d
mov rcx, r12
sub rcx, qword [rsp + 0x40]
imul rcx
mov rcx, qword [rsp + 0x60]
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
xor r10d, r10d
mov dword [rbx + 0x30], edx
mov byte [rcx + 0x65], r10b
mov dword [rbx + 0x34], r8d
lea edi, [r10 + 2]
jmp 0x14028301c
mov r14d, 0x65
jmp 0x140283008
mov r8, rsi
lea rdx, str.no_such_savepoint:__s
mov rcx, r12
call fcn.14027c8bc
jmp 0x1402830ae
movzx eax, byte [r13 + 2]
mov r8d, 5
cmp word [r13 + 2], r8w
lea edi, [r8 - 3]
cmove eax, edi
mov byte [r12 + 0xc2], al
mov r12, qword [rsp + 0x38]
jmp 0x1402834cd
mov r14d, 6
jmp 0x140282eee
mov r14d, 0x14
jmp 0x140282eee
mov ecx, 0x1722a
call fcn.14024fc48
mov r14d, eax
jmp 0x140282ece
lea rdx, str.too_many_levels_of_trigger_recursion
mov rcx, r12
mov r14d, r11d
call fcn.14027c8bc
jmp 0x140282ece
mov ecx, dword [r13 + 4]
mov dword [r12 + 0x34], ecx
mov al, byte [r13 + 8]
mov byte [r12 + 0xc2], al
test ecx, ecx
je 0x140283270
mov rcx, r12
cmp word [r13 + 2], r10w
je 0x140283218
movzx r8d, word [r13 + 2]
lea rax, [0x140000000]
lea rdx, str._s_constraint_failed
mov r8, qword [rax + r8*8 + 0x3ac530]
call fcn.14027c8bc
mov r9, qword [r13 + 0x10]
test r9, r9
je 0x140283228
mov r8, qword [r12 + 0xa8]
lea rdx, str._z:__s
mov rcx, r15
call fcn.14026baf0
mov qword [r12 + 0xa8], rax
jmp 0x140283228
mov r8, qword [r13 + 0x10]
lea rdx, [0x1403b1d80]
call fcn.14027c8bc
mov r9, qword [r12 + 0xf8]
mov rcx, r13
sub rcx, qword [rsp + 0x40]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov rax, qword [r12 + 0xa8]
mov ecx, dword [r13 + 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.1401e0be4
mov rcx, r12
call fcn.140283cc0
mov rbx, qword [rsp + 0x50]
mov r14d, eax
mov rcx, qword [rsp + 0x60]
mov eax, 5
mov r13, qword [rsp + 0x48]
lea edi, [rax - 3]
cmp r14d, eax
jne 0x14028329e
mov dword [r12 + 0x34], eax
jmp 0x1402832b0
mov eax, dword [r12 + 0x34]
neg eax
sbb r14d, r14d
and r14d, 0xffffff9c
add r14d, 0x65
mov r12, qword [rsp + 0x38]
xor r10d, r10d
jmp 0x140283021
mov eax, dword [r12 + 0x2c]
add eax, r8d
or eax, r11d
mov dword [r12 + 0x2c], eax
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
add rcx, rsi
mov qword [r12 + 0xa0], rcx
cmp byte [r15 + 0x67], r10b
jne 0x140283480
test byte [r15 + 0x6e], dl
je 0x140283314
mov rdx, qword [r15 + 0x100]
xor r9d, r9d
mov r8, r12
lea ecx, [r9 + 4]
call qword [r15 + pe_nt_image_headers64]
mov r9, qword [rsp + 0x40]
xor r10d, r10d
lea r11d, [r10 + 1]
mov rcx, r13
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, r9
mov r14d, 0x64
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
add edx, r11d
mov dword [r12 + 0x30], edx
jmp 0x140283008
lea r10, [0x140000000]
movsxd rax, r14d
and edx, 0x3f
lea rcx, [rax + rax*2]
mov r9d, dword [rdi + rcx*8 + 8]
mov rax, qword [rdi + rcx*8]
mov rcx, r12
movzx r8d, byte [rdx + r10 + 0x3abcb0]
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 [r15]
sub r9d, r11d
mov r8, qword [r10 + r8*8 + 0x3c9390]
mov qword [rsp + 0x20], rax
mov r9, qword [r10 + r9*8 + 0x3c90d8]
call fcn.14027c8bc
mov r14d, 0xc13
jmp 0x140282ece
mov ecx, 0x164a2
jmp 0x140283183
mov r14d, 0x204
jmp 0x140282eee
mov rcx, qword [rdi]
call fcn.14024a9f4
jmp 0x140282ece
mov r14d, 0xd
jmp 0x140282ece
mov r12, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x50]
lea rdx, str.string_or_blob_too_big
mov rcx, rbx
call fcn.14027c8bc
mov r14d, 0x12
xor r10d, r10d
lea edi, [r14 - 0x10]
jmp 0x1402834d2
mov edi, 2
xor r10d, r10d
mov byte [r12 + 0xc2], dil
mov r12, qword [rsp + 0x38]
lea r14d, [rdi + 4]
jmp 0x1402834cd
mov r14d, 7
mov rcx, r15
call fcn.140273a68
mov r12, qword [rsp + 0x38]
mov r13, qword [rsp + 0x48]
cmp r14d, 7
je 0x14028349d
xor r10d, r10d
jmp 0x140283455
or r13, 0xffffffffffffffff
mov r12, qword [rsp + 0x38]
mov r14d, 9
mov rbx, qword [rsp + 0x50]
mov edi, 2
jmp 0x1402834d7
mov edx, 1
mov rcx, rbx
call fcn.14027bc68
mov r8, rax
lea rdx, [0x1403b1d80]
jmp 0x140282ec6
call qword [rdi + 0x38]
mov r12, qword [rsp + 0x38]
jmp 0x140283498
mov r13, qword [rsp + 0x48]
jmp 0x14028344a
mov r12, qword [rsp + 0x38]
mov r15, qword [rsp + 0x60]
mov r13, qword [rsp + 0x48]
mov rcx, r15
call fcn.14026c324
mov rcx, qword [rsp + 0x50]
lea rdx, str.out_of_memory
call fcn.14027c8bc
mov r14d, 7
jmp 0x140283441
mov r12, qword [rsp + 0x38]
mov r14d, dword [rsp + 0x34]
mov edi, 2
mov rbx, qword [rsp + 0x50]
mov r13, qword [rsp + 0x48]
mov r15, qword [rsp + 0x60]
cmp byte [r15 + 0x67], r10b
je 0x1402834fd
mov r14d, 7
jmp 0x140283516
mov r12, qword [rsp + 0x38]
mov r14d, dword [rsp + 0x34]
jmp 0x1402834cd
mov r12, qword [rsp + 0x38]
jmp 0x1402834d2
cmp r14d, 0x210a
jne 0x140283516
mov ecx, 0x17abe
call fcn.14024fc48
mov r14d, eax
xor r10d, r10d
cmp qword [rbx + 0xa8], r10
jne 0x140283542
cmp r14d, 0xc0a
je 0x140283542
mov ecx, r14d
call fcn.140253694
mov r8, rax
lea rdx, [0x1403b1d80]
mov rcx, rbx
call fcn.14027c8bc
mov edx, r14d
mov dword [rbx + 0x34], r14d
mov rcx, r15
call fcn.1402786c0
mov r9, qword [rbx + 0xf8]
mov rcx, r12
sub rcx, qword [rsp + 0x40]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov rax, qword [rbx + 0xa8]
mov ecx, r14d
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.1401e0be4
cmp byte [rbx + 0xc5], dil
jne 0x1402835a7
mov rcx, rbx
call fcn.140283cc0
cmp r14d, 0xc0a
jne 0x1402835e5
mov rcx, r15
call fcn.14026c324
xor r10d, r10d
mov rcx, r15
movzx eax, byte [rbp - 0x80]
mov r11d, 1
mov r14d, r11d
test al, al
je 0x140283021
mov edx, eax
sub edx, r11d
call fcn.140273af4
mov rcx, r15
jmp 0x1402832b5
cmp r14d, 0xb
jne 0x1402835b8
xor r10d, r10d
mov rcx, r15
cmp byte [r15 + 0x65], r10b
jne 0x1402835be
movabs rax, 0x200000000
or qword [r15 + 0x30], rax
jmp 0x1402835be
mov rbx, qword [rsp + 0x50]
mov edi, 2
jmp 0x140283017
add dword [rbx + 0xe4], eax
cmp dword [rbx + 0xd0], r10d
je 0x14028362d
mov rcx, rbx
call fcn.140293fa0
mov eax, r14d
mov rcx, qword [rbp + 0x2e0]
xor rcx, rsp
call fcn.1402a4c80
lea r11, [rsp + 0x410]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret