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

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rbp
mov qword [rax + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x1e0
movaps xmmword [rax - 0x38], xmm6
mov rax, qword [0x14025a030]
xor rax, rsp
mov qword [rsp + 0x1c0], rax
mov rsi, qword [rcx]
mov rbp, qword [rcx + 0x20]
mov rbx, qword [rcx + 0x80]
mov rax, qword [rsi + 0x10]
xor r15d, r15d
mov rdi, rcx
mov rdx, qword [rax + 0x18]
mov r13d, r15d
mov qword [rsp + 0x58], rcx
movzx eax, byte [rdx + 0x71]
mov dword [rsp + 0x40], r15d
mov qword [rsp + 0x78], rbp
mov dword [rsp + 0x44], r15d
mov qword [rsp + 0x68], rsi
mov byte [rsp + 0x60], r13b
mov byte [rsp + 0x48], al
mov dword [rsp + 0x80], r15d
mov qword [rsp + 0x50], rbx
mov r14, r15
mov dword [rsp + 0x70], r15d
mov qword [rsp + 0x88], r15
call fcn.1400fc800
cmp dword [rdi + 0x90], 7
je 0x1401013ed
mov dword [rdi + 0x90], r15d
mov qword [rdi + 0x48], r15
mov eax, dword [rsi + 0x148]
mov dword [rsi + 0x2b8], r15d
test eax, eax
jne 0x140107370
mov ecx, dword [rdi + 0x8c]
xorpd xmm6, xmm6
mov eax, r15d
cmp qword [rsi + 0x188], rax
mov dword [rsp + 0x40], ecx
lea r8d, [r15 + 4]
setne al
cdqe
mov qword [rsp + 0xa0], rax
cmp byte [rsi + 0x2a], 0
jne 0x1401013ed
movsxd rbx, ecx
lea r12, [rbx + rbx*2]
mov qword [rsp + 0x98], r12
test rax, rax
je 0x140100c76
mov eax, dword [rsp + 0x80]
cmp dword [rsi + 0x198], eax
jne 0x140100c6d
mov rcx, qword [rsi + 0x190]
call qword [rsi + 0x188]
test eax, eax
jne 0x140106f76
mov eax, r15d
mov r8d, 4
inc eax
mov dword [rsp + 0x80], eax
test byte [rbp + r12*8 + 2], 2
je 0x140100c9f
movsxd r14, dword [rbp + r12*8 + 8]
imul r14, r14, 0x38
add r14, qword [rsp + 0x50]
mov rcx, r14
call fcn.1400f9170
mov r8d, 4
mov word [r14 + 0x24], r8w
movzx eax, byte [rbp + r12*8]
dec eax
cmp eax, 0x90
ja case.0x140100cc5.17
lea rdx, [0x140000000]
cdqe
mov ecx, dword [rdx + rax*4 + 0x1073a0]
add rcx, rdx
jmp rcx
mov eax, dword [rsi + 0x148]
test eax, eax
jne 0x140107370
mov ecx, dword [rbp + r12*8 + 8]
dec ecx
jmp 0x140106f5a
movsxd rax, dword [rbp + r12*8 + 4]
imul rax, rax, 0x38
add rax, qword [rsp + 0x50]
mov word [rax + 0x24], r8w
mov qword [rax], rbx
mov ecx, dword [rbp + r12*8 + 8]
dec ecx
jmp 0x140106f5a
movsxd rax, dword [rbp + r12*8 + 4]
mov rcx, qword [rsp + 0x50]
imul rax, rax, 0x38
mov ecx, dword [rax + rcx]
jmp 0x140106f5a
movsxd rcx, dword [rbp + r12*8 + 4]
imul rcx, rcx, 0x38
add rcx, qword [rsp + 0x50]
mov eax, dword [rcx]
mov word [rcx + 0x24], r8w
mov dword [rsp + 0xb0], eax
mov qword [rcx], rbx
mov ecx, dword [rsp + 0xb0]
jmp 0x140106f5a
movsxd rax, dword [rbp + r12*8 + 0xc]
mov rcx, qword [rsp + 0x50]
imul rax, rax, 0x38
test byte [rax + rcx + 0x24], 1
je case.0x140100cc5.17
cmp dword [rbp + r12*8 + 4], 0
jne 0x140106f81
mov r8, qword [rdi + 0x158]
test r8, r8
je 0x140106f81
mov rax, qword [r8 + 0x60]
dec dword [rdi + 0x160]
mov qword [rdi + 0x158], rax
mov eax, dword [rdi + 0xac]
add dword [rsi + 0x50], eax
mov dword [rsi + 0x4c], eax
mov rax, qword [r8 + 0x10]
mov rdx, qword [r8]
mov rcx, qword [rdx]
mov qword [rdx + 0x20], rax
mov eax, dword [r8 + 0x18]
mov dword [rdx + 0x18], eax
mov rax, qword [r8 + 0x20]
mov qword [rdx + 0x80], rax
mov eax, dword [r8 + 0x28]
mov dword [rdx + 0x7c], eax
mov rax, qword [r8 + 0x30]
mov qword [rdx + 0x58], rax
movzx eax, word [r8 + 0x38]
mov word [rdx + 0x52], ax
mov rax, qword [r8 + 0x50]
mov qword [rcx + 0x40], rax
mov eax, dword [r8 + 0x58]
mov dword [rdx + 0xac], eax
cmp dword [rbp + r12*8 + 8], 4
mov ecx, dword [r8 + 8]
jne 0x140100dff
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 0x20]
mov ebp, dword [rax + rcx*8 + 8]
dec ebp
mov ecx, ebp
mov rbp, qword [rdi + 0x20]
mov rax, qword [rdi + 0x80]
mov r8d, 4
mov qword [rsp + 0x78], rbp
mov qword [rsp + 0x50], rax
jmp 0x140106f5a
movsxd rax, dword [rbp + r12*8 + 4]
mov qword [r14], rax
jmp case.0x140100cc5.17
mov rax, qword [rbp + r12*8 + 0x10]
mov rcx, qword [rax]
mov qword [r14], rcx
jmp case.0x140100cc5.17
mov eax, 8
mov word [r14 + 0x24], ax
mov rax, qword [rbp + r12*8 + 0x10]
mov rcx, qword [rax]
mov qword [r14 + 8], rcx
jmp case.0x140100cc5.17
mov rsi, qword [rbp + r12*8 + 0x10]
mov byte [rbp + r12*8], 9
mov rax, rsi
test rsi, rsi
jne 0x140100e6f
mov eax, r15d
jmp 0x140100e83
cmp byte [rsi], 0
je 0x140100e7c
inc rax
cmp byte [rax], 0
jne 0x140100e74
sub eax, esi
and eax, 0x3fffffff
cmp byte [rsp + 0x48], 1
mov dword [rbp + r12*8 + 4], eax
je 0x140100fcc
test rsi, rsi
jne 0x140100ea5
mov rcx, r14
call fcn.1400f9480
jmp 0x140100f49
mov rax, qword [r14 + 0x10]
test rax, rax
je 0x140100eb3
mov ebp, dword [rax + 0x60]
jmp 0x140100eb8
mov ebp, 0x3b9aca00
mov ebx, r15d
mov rax, r15
test ebp, ebp
js 0x140100ed5
movsxd rcx, ebp
cmp byte [rsi + rax], 0
je 0x140100ed5
inc rax
inc ebx
cmp rax, rcx
jle 0x140100ec5
lea rax, [fcn.1400da6b0]
mov edi, 0x202
mov rcx, r14
test rax, rax
jne 0x140100f01
call fcn.1400f9170
mov rdx, qword [r14 + 0x30]
mov rcx, qword [r14 + 0x10]
call fcn.1400da6b0
mov qword [r14 + 0x30], rsi
jmp 0x140100f1c
call fcn.1400f9170
mov rdx, qword [r14 + 0x30]
mov rcx, qword [r14 + 0x10]
call fcn.1400da6b0
mov qword [r14 + 0x30], r15
mov edi, 0xa02
cmp ebx, ebp
mov word [r14 + 0x24], di
mov rdi, qword [rsp + 0x58]
mov qword [r14 + 0x28], r15
mov qword [r14 + 0x18], rsi
mov dword [r14 + 0x20], ebx
mov byte [r14 + 0x27], 1
mov byte [r14 + 0x26], 3
jg 0x140107343
mov rbp, qword [rsp + 0x78]
test byte [r14 + 0x24], 2
movzx ecx, byte [rsp + 0x48]
mov dword [rsp + 0x44], r15d
mov r13d, r15d
je 0x140100f79
movzx eax, byte [r14 + 0x27]
cmp eax, ecx
je 0x140100f79
movzx edx, cl
mov rcx, r14
call fcn.1400dc7a0
test eax, eax
jne 0x140107394
movzx eax, word [r14 + 0x24]
mov ecx, 0xfbff
mov qword [r14 + 0x30], r15
and ax, cx
mov ecx, 0x800
or ax, cx
mov word [r14 + 0x24], ax
cmp byte [rbp + r12*8 + 1], 0xff
jne 0x140100fae
mov rdx, qword [rbp + r12*8 + 0x10]
mov rcx, qword [rsp + 0x68]
call fcn.1400da6b0
mov byte [rbp + r12*8 + 1], 0xff
mov rax, qword [r14 + 0x18]
mov r8d, 4
mov qword [rbp + r12*8 + 0x10], rax
mov eax, dword [r14 + 0x20]
mov dword [rbp + r12*8 + 4], eax
mov rsi, qword [rsp + 0x68]
mov eax, dword [rsi + 0x60]
cmp dword [rbp + r12*8 + 4], eax
jg 0x14010734f
mov eax, 0xa02
mov word [r14 + 0x24], ax
mov rax, qword [rbp + r12*8 + 0x10]
mov qword [r14 + 0x18], rax
mov eax, dword [rbp + r12*8 + 4]
mov dword [r14 + 0x20], eax
mov al, byte [rsp + 0x48]
mov byte [r14 + 0x27], al
jmp case.0x140100cc5.17
mov eax, 1
mov word [r14 + 0x24], ax
jmp case.0x140100cc5.17
mov rdi, qword [rbp + r12*8 + 0x10]
mov ebx, dword [rbp + r12*8 + 4]
test rdi, rdi
jne 0x140101040
mov rcx, r14
call fcn.1400f9480
mov al, byte [rsp + 0x48]
mov rdi, qword [rsp + 0x58]
mov byte [r14 + 0x27], al
jmp 0x140106f50
mov rax, qword [r14 + 0x10]
test rax, rax
je 0x14010104e
mov eax, dword [rax + 0x60]
jmp 0x140101053
mov eax, 0x3b9aca00
mov esi, 0x10
test ebx, ebx
jns 0x14010108b
mov ebx, r15d
mov rcx, r15
test eax, eax
js 0x140101086
movsxd rdx, eax
nop dword [rax]
movzx eax, byte [rcx + rdi + 1]
or al, byte [rcx + rdi]
je 0x140101086
add rcx, 2
add ebx, 2
cmp rcx, rdx
jle 0x140101070
mov esi, 0x210
lea rax, [fcn.1400da6b0]
mov rcx, r14
test rax, rax
jne 0x1401010b2
call fcn.1400f9170
mov rdx, qword [r14 + 0x30]
mov rcx, qword [r14 + 0x10]
call fcn.1400da6b0
mov qword [r14 + 0x30], rdi
jmp 0x1401010d0
call fcn.1400f9170
mov rdx, qword [r14 + 0x30]
mov rcx, qword [r14 + 0x10]
call fcn.1400da6b0
mov eax, 0x800
mov qword [r14 + 0x30], r15
or si, ax
mov al, byte [rsp + 0x48]
mov word [r14 + 0x24], si
mov rsi, qword [rsp + 0x68]
mov byte [r14 + 0x27], 1
mov qword [r14 + 0x28], r15
mov qword [r14 + 0x18], rdi
mov byte [r14 + 0x27], al
mov dword [r14 + 0x20], ebx
mov byte [r14 + 0x26], 4
mov rdi, qword [rsp + 0x58]
jmp 0x140106f50
mov eax, dword [rbp + r12*8 + 4]
dec eax
movsxd rdx, eax
imul rdx, rdx, 0x38
add rdx, qword [rdi + 0x68]
mov qword [rsp + 0xb0], rdx
movzx eax, word [rdx + 0x24]
test al, 0x12
je 0x14010114b
mov r8d, dword [rdx + 0x20]
mov ecx, 0x4000
test cx, ax
je 0x140101135
add r8d, dword [rdx]
mov rax, qword [rdx + 0x10]
mov ecx, r15d
cmp r8d, dword [rax + 0x60]
setg cl
test ecx, ecx
jne 0x14010734f
mov r8d, 0x800
mov rcx, r14
call fcn.1400f9700
jmp 0x140106f50
mov edx, dword [rbp + r12*8 + 0xc]
mov r11, qword [rsp + 0x50]
mov dword [rsp + 0xb8], edx
movsxd rax, dword [rbp + r12*8 + 4]
mov dword [rsp + 0xbc], eax
movsxd rcx, dword [rbp + r12*8 + 8]
mov rbx, rax
imul rbx, rbx, 0x38
mov r14, rcx
add rbx, r11
mov dword [rsp + 0xc0], ecx
imul r14, r14, 0x38
add r14, r11
test edx, edx
je 0x1401011e7
nop
dec edx
mov rcx, r14
mov dword [rsp + 0xb8], edx
mov rax, qword [r14 + 0x30]
mov rdx, rbx
mov qword [rsp + 0xb0], rax
mov qword [r14 + 0x30], r15
call fcn.1400f9830
mov r11, qword [rsp + 0xb0]
add rbx, 0x38
add r14, 0x38
mov qword [rbx - 8], r11
mov edx, dword [rsp + 0xb8]
test edx, edx
jne 0x1401011a0
lea r8d, [rdx + 4]
dec edx
mov dword [rsp + 0xb8], edx
jmp case.0x140100cc5.17
mov rbx, qword [rsp + 0x50]
movsxd r14, dword [rbp + r12*8 + 8]
movsxd rdx, dword [rbp + r12*8 + 4]
imul rdx, rdx, 0x38
imul r14, r14, 0x38
add r14, rbx
add rdx, rbx
mov ebx, 0x1000
mov r8d, ebx
mov rcx, r14
call fcn.1400f9700
test word [r14 + 0x24], bx
je 0x140106f50
mov rcx, r14
call fcn.1400f8e50
test eax, eax
jne 0x1401013ed
jmp 0x140106f50
movsxd r14, dword [rbp + r12*8 + 8]
movsxd rdx, dword [rbp + r12*8 + 4]
mov rbx, qword [rsp + 0x50]
imul r14, r14, 0x38
imul rdx, rdx, 0x38
add r14, rbx
add rdx, rbx
mov r8d, 0x1000
mov rcx, r14
call fcn.1400f9700
jmp 0x140106f50
cmp qword [rdi + 0x140], 0
jle 0x1401012b0
mov rdx, qword [rdi]
lea rcx, [rdi + 0x98]
lea r8, str.foreign_key_constraint_failed
mov dword [rdi + 0x90], 0x13
mov byte [rdi + 0x60], 2
call fcn.1400dabc0
mov r13d, 1
mov dword [rsp + 0x44], r13d
jmp 0x140106f50
mov rsi, qword [rdi]
mov r13d, r15d
mov dword [rsp + 0x44], r15d
cmp dword [rsi + 0x314], 0
je 0x14010133e
mov eax, dword [rdi + 0x150]
test eax, eax
je 0x14010133e
cmp dword [rsi + 8], 0
lea ebp, [rax - 1]
mov edi, r15d
jle 0x140101327
mov rbx, r15
mov r15d, 1
nop word [rax + rax]
mov rax, qword [rsi + 0x10]
mov rcx, qword [rbx + rax + 8]
test rcx, rcx
je 0x140101310
mov r8d, ebp
mov edx, r15d
call fcn.1400ef330
test r13d, r13d
cmove r13d, eax
inc edi
add rbx, 0x20
cmp edi, dword [rsi + 8]
jl 0x1401012f0
xor r15d, r15d
mov dword [rsp + 0x44], r13d
lea r8d, [r15 + 4]
mov rdi, qword [rsp + 0x58]
dec dword [rsi + 0x314]
mov rbp, qword [rsp + 0x78]
mov dword [rdi + 0x150], r15d
test r13d, r13d
je 0x140107034
mov rsi, qword [rsp + 0x68]
jmp case.0x140100cc5.17
mov rax, qword [rsp + 0x50]
movsxd rdi, dword [rbp + r12*8 + 4]
movsxd rbx, dword [rbp + r12*8 + 8]
imul rdi, rdi, 0x38
imul rbx, rbx, 0x38
movsxd r14, dword [rbp + r12*8 + 0xc]
add rdi, rax
add rbx, rax
movzx ecx, word [rdi + 0x24]
imul r14, r14, 0x38
add r14, rax
movzx eax, cl
or al, byte [rbx + 0x24]
test al, 1
je 0x14010139a
mov rcx, r14
call fcn.1400f9480
mov rdi, qword [rsp + 0x58]
jmp 0x140106f50
mov r12d, 0x4000
test r12w, cx
je 0x1401013b2
mov rcx, rdi
call fcn.1400f8ed0
test eax, eax
jne 0x1401013e8
test word [rbx + 0x24], r12w
je 0x1401013c5
mov rcx, rbx
call fcn.1400f8ed0
test eax, eax
jne 0x1401013e8
test byte [rdi + 0x24], 0x12
jne 0x1401014aa
movzx r12d, byte [rsp + 0x48]
mov rcx, rdi
mov edx, r12d
call fcn.1400f8fb0
test eax, eax
je 0x1401014af
mov rdi, qword [rsp + 0x58]
lea rcx, [rdi + 0x98]
lea r8, str.out_of_memory
mov rdx, rsi
mov byte [rsi + 0x2a], 1
call fcn.1400dabc0
mov r13d, 7
mov rax, qword [rdi + 0x98]
mov r9, qword [rdi + 0x130]
mov r8d, dword [rsp + 0x40]
lea rdx, str.statement_aborts_at__d:___s___s
mov ecx, r13d
mov qword [rsp + 0x20], rax
mov dword [rdi + 0x90], r13d
call fcn.1400dc4c0
mov rcx, rdi
call fcn.1400fc890
cmp r13d, 0xc0a
jne 0x140101450
mov byte [rsi + 0x2a], 1
cmp byte [rsp + 0x60], 0
mov ebx, 1
je 0x140101466
xor edx, edx
mov rcx, rsi
call fcn.140115650
lea rcx, [rdi + 0xc0]
call fcn.1400ea9a0
mov eax, ebx
mov rcx, qword [rsp + 0x1c0]
xor rcx, rsp
call fcn.140155650
lea r11, [rsp + 0x1e0]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov r12b, byte [rsp + 0x48]
test byte [rbx + 0x24], 0x12
jne 0x1401014c9
movzx edx, r12b
mov rcx, rbx
call fcn.1400f8fb0
test eax, eax
jne 0x1401013e8
mov eax, dword [rdi + 0x20]
add eax, dword [rbx + 0x20]
movsxd rcx, eax
mov qword [rsp + 0xb0], rcx
movsxd rax, dword [rsi + 0x60]
cmp rcx, rax
jg 0x14010734a
mov eax, 0xbf02
mov r8d, r15d
mov rcx, r14
and word [r14 + 0x24], ax
or word [r14 + 0x24], 2
mov edx, dword [rsp + 0xb0]
cmp r14, rbx
sete r8b
add edx, 2
call fcn.1400f8d00
test eax, eax
jne 0x1401013e8
cmp r14, rbx
je 0x140101531
movsxd r8, dword [rbx + 0x20]
mov rdx, qword [rbx + 0x18]
mov rcx, qword [r14 + 0x18]
call sub.MSVCR90.dll_memcpy
movsxd rcx, dword [rbx + 0x20]
movsxd r8, dword [rdi + 0x20]
mov rdx, qword [rdi + 0x18]
add rcx, qword [r14 + 0x18]
call sub.MSVCR90.dll_memcpy
mov rax, qword [rsp + 0xb0]
mov r11, qword [r14 + 0x18]
mov rdi, qword [rsp + 0x58]
mov byte [rax + r11], 0
mov rax, qword [rsp + 0xb0]
mov rcx, qword [r14 + 0x18]
mov byte [rcx + rax + 1], 0
mov eax, 0x200
or word [r14 + 0x24], ax
mov eax, dword [rsp + 0xb0]
mov byte [r14 + 0x27], r12b
mov dword [r14 + 0x20], eax
jmp 0x140106f50
movsxd rbx, dword [rbp + r12*8 + 4]
mov r14, qword [rsp + 0x50]
imul rbx, rbx, 0x38
add rbx, r14
mov rcx, rbx
call fcn.1401008b0
movsxd rdi, dword [rbp + r12*8 + 8]
imul rdi, rdi, 0x38
add rdi, r14
mov rcx, rdi
call fcn.1401008b0
movsxd r14, dword [rbp + r12*8 + 0xc]
movzx ecx, word [rdi + 0x24]
imul r14, r14, 0x38
movzx eax, word [rbx + 0x24]
add r14, qword [rsp + 0x50]
or ecx, eax
mov dword [rsp + 0xb0], ecx
test cl, 1
jne 0x140101388
movzx eax, byte [rdi + 0x24]
and al, byte [rbx + 0x24]
test al, 4
je 0x1401016c4
mov rcx, qword [rbx]
mov qword [rsp + 0xb8], rcx
mov rdx, qword [rdi]
mov qword [rsp + 0xc0], rdx
movzx r8d, byte [rbp + r12*8]
sub r8d, 0x56
je 0x14010169c
sub r8d, 1
je 0x140101697
sub r8d, 1
je 0x140101691
cmp r8d, 1
je 0x14010164f
test rcx, rcx
je 0x140101388
cmp rcx, 0xffffffffffffffff
mov eax, 1
cmove rcx, rax
mov rax, rdx
cqo
mov qword [rsp + 0xb8], rcx
idiv rcx
jmp 0x14010169f
test rcx, rcx
je 0x140101388
cmp rcx, 0xffffffffffffffff
jne 0x14010167c
movabs rax, 0x8000000000000000
cmp rdx, rax
mov eax, 1
cmove rcx, rax
mov qword [rsp + 0xb8], rcx
mov rax, rdx
cqo
idiv rcx
mov rdx, rax
mov qword [rsp + 0xc0], rax
jmp 0x1401016a7
imul rdx, rcx
jmp 0x14010169f
sub rdx, rcx
jmp 0x14010169f
add rdx, rcx
mov qword [rsp + 0xc0], rdx
mov rdi, qword [rsp + 0x58]
mov eax, 0xbf04
mov qword [r14], rdx
and word [r14 + 0x24], ax
or word [r14 + 0x24], 4
jmp 0x140106f50
mov rcx, rbx
call fcn.1400f92e0
mov rcx, rdi
movsd qword [rsp + 0xc8], xmm0
call fcn.1400f92e0
movsd qword [rsp + 0xd0], xmm0
movzx ecx, byte [rbp + r12*8]
movapd xmm5, xmm0
sub ecx, 0x56
je 0x14010178e
sub ecx, 1
je 0x14010177b
sub ecx, 1
je 0x140101770
cmp ecx, 1
je 0x140101755
cvttsd2si rcx, qword [rsp + 0xc8]
cvttsd2si rax, xmm0
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0xb8], rcx
test rcx, rcx
je 0x140101388
cmp rcx, 0xffffffffffffffff
mov edx, 1
pxor xmm5, xmm5
cmove rcx, rdx
cqo
mov qword [rsp + 0xb8], rcx
idiv rcx
cvtsi2sd xmm5, rdx
jmp 0x140101797
movsd xmm0, qword [rsp + 0xc8]
ucomisd xmm0, xmm6
jp 0x14010176a
je 0x140101388
divsd xmm5, xmm0
jmp 0x140101797
mulsd xmm5, qword [rsp + 0xc8]
jmp 0x140101797
movapd xmm0, xmm6
subsd xmm0, qword [rsp + 0xc8]
addsd xmm5, xmm0
jmp 0x140101797
addsd xmm5, qword [rsp + 0xc8]
movapd xmm0, xmm5
movsd qword [rsp + 0xd0], xmm5
call fcn.1400dcf10
test eax, eax
jne 0x140101388
movsd xmm0, qword [rsp + 0xd0]
mov eax, 0xbf08
and word [r14 + 0x24], ax
or word [r14 + 0x24], 8
movsd qword [r14 + 8], xmm0
test byte [rsp + 0xb0], 8
jne 0x1401010f8
mov rcx, r14
call fcn.1400f9390
mov rdi, qword [rsp + 0x58]
jmp 0x140106f50
movzx eax, byte [rbp + r12*8 + 3]
mov r8, qword [rdi + 0x38]
mov r9, qword [rsp + 0x50]
mov dword [rsp + 0x128], eax
mov qword [rsp + 0x120], r8
movsxd rdx, dword [rbp + r12*8 + 8]
mov ecx, r15d
imul rdx, rdx, 0x38
add rdx, r9
mov dword [rsp + 0xb0], ecx
mov qword [rsp + 0xb8], rdx
test eax, eax
jle 0x14010187b
movsxd rax, ecx
mov qword [r8 + rax*8], rdx
mov rcx, qword [rsp + 0xb8]
call fcn.140100730
mov ecx, dword [rsp + 0xb0]
mov rdx, qword [rsp + 0xb8]
inc ecx
add rdx, 0x38
cmp ecx, dword [rsp + 0x128]
mov dword [rsp + 0xb0], ecx
mov qword [rsp + 0xb8], rdx
jge 0x14010187b
mov r8, qword [rsp + 0x120]
jmp 0x140101830
cmp byte [rbp + r12*8 + 1], 0xfb
mov rax, qword [rbp + r12*8 + 0x10]
jne 0x140101892
mov qword [rsp + 0xc8], r15
jmp 0x14010189d
mov qword [rsp + 0xc8], rax
mov rax, qword [rax]
mov qword [rsp + 0xc0], rax
movsxd r14, dword [rbp + r12*8 + 0xc]
lea rcx, [rsp + 0xd0]
mov ebx, 1
mov qword [rsp + 0xe0], rsi
mov qword [rsp + 0xf8], r15
imul r14, r14, 0x38
add r14, r9
mov qword [rsp + 0x100], r15
mov word [rsp + 0xf4], bx
mov rdx, r14
call fcn.1400f9830
movzx r11d, word [rsp + 0xf4]
mov r9, qword [rsp + 0xc0]
mov eax, 0xbf01
mov dword [rsp + 0x110], r15d
and r11w, ax
or r11w, bx
mov word [rsp + 0xf4], r11w
test byte [r9 + 3], 8
je 0x140101929
mov rax, qword [rbp + r12*8 - 8]
mov qword [rsp + 0x118], rax
mov r8, qword [rsp + 0x120]
mov edx, dword [rsp + 0x128]
lea rcx, [rsp + 0xc0]
call qword [r9 + 0x18]
cmp byte [rsi + 0x2a], 0
jne 0x1401070f1
mov rcx, qword [rsp + 0xc8]
test rcx, rcx
je 0x140101978
mov edx, dword [rbp + r12*8 + 4]
call fcn.1400fcec0
mov r11, qword [rsp + 0xc8]
mov byte [rbp + r12*8 + 1], 0xf9
mov qword [rbp + r12*8 + 0x10], r11
cmp dword [rsp + 0x110], 0
je 0x140101a43
test byte [rsp + 0xf4], bl
je 0x140101997
mov r9, r15
jmp 0x140101a20
movzx ecx, word [rsp + 0xf4]
movzx eax, cx
shr ax, 3
and ax, 2
or cx, ax
mov eax, 0x4000
mov word [rsp + 0xf4], cx
test ax, cx
je 0x1401019cc
lea rcx, [rsp + 0xd0]
call fcn.1400f8ed0
test byte [rsp + 0xf4], 2
je 0x1401019fe
cmp byte [rsp + 0xf7], bl
je 0x1401019ef
lea rcx, [rsp + 0xd0]
movzx edx, bl
call fcn.1400dc7a0
lea rcx, [rsp + 0xd0]
call fcn.1400f8f40
jmp 0x140101a0d
lea rcx, [rsp + 0xd0]
mov edx, ebx
call fcn.1400f8fb0
cmp byte [rsp + 0xf7], bl
mov r9, r15
cmove r9, qword [rsp + 0xe8]
lea rcx, [rdi + 0x98]
lea r8, [0x1401cdd70]
mov rdx, rsi
call fcn.1400dabc0
mov r13d, dword [rsp + 0x110]
mov dword [rsp + 0x44], r13d
test byte [rsp + 0xf4], 2
movzx ecx, byte [rsp + 0x48]
je 0x140101a6e
movzx eax, byte [rsp + 0xf7]
cmp eax, ecx
je 0x140101a6e
movzx edx, cl
lea rcx, [rsp + 0xd0]
call fcn.1400dc7a0
lea rdx, [rsp + 0xd0]
mov rcx, r14
call fcn.1400f9830
movzx r11d, word [r14 + 0x24]
test r11b, 0x12
je 0x140106f50
mov edx, dword [r14 + 0x20]
mov eax, 0x4000
test ax, r11w
je 0x140101a9f
add edx, dword [r14]
mov rax, qword [r14 + 0x10]
mov ecx, r15d
cmp edx, dword [rax + 0x60]
setg cl
test ecx, ecx
jne 0x14010734f
jmp 0x140106f50
mov rax, qword [rsp + 0x50]
movsxd rcx, dword [rbp + r12*8 + 8]
movsxd rbx, dword [rbp + r12*8 + 4]
imul rcx, rcx, 0x38
imul rbx, rbx, 0x38
movsxd r14, dword [rbp + r12*8 + 0xc]
add rcx, rax
add rbx, rax
imul r14, r14, 0x38
add r14, rax
movzx eax, byte [rcx + 0x24]
or al, byte [rbx + 0x24]
test al, 1
je 0x140101afa
mov rcx, r14
call fcn.1400f9480
jmp 0x140106f50
call fcn.1400f9230
mov rcx, rbx
mov qword [rsp + 0xb0], rax
call fcn.1400f9230
mov qword [rsp + 0xb8], rax
movzx ecx, byte [rbp + r12*8]
mov r11, rax
sub ecx, 0x52
je 0x140101b51
sub ecx, 1
je 0x140101b44
cmp ecx, 1
mov rcx, rax
mov rax, qword [rsp + 0xb0]
je 0x140101b3f
sar rax, cl
jmp 0x140101b5c
shl rax, cl
jmp 0x140101b5c
mov rax, qword [rsp + 0xb0]
or rax, r11
jmp 0x140101b5c
mov rax, qword [rsp + 0xb0]
and rax, r11
mov qword [rsp + 0xb0], rax
mov qword [r14], rax
mov eax, 0xbf04
and word [r14 + 0x24], ax
or word [r14 + 0x24], 4
jmp 0x140106f50
movsxd rbx, dword [rbp + r12*8 + 4]
imul rbx, rbx, 0x38
add rbx, qword [rsp + 0x50]
mov rcx, rbx
call fcn.1400f9230
mov ecx, 0xbf04
and word [rbx + 0x24], cx
or word [rbx + 0x24], 4
mov qword [rbx], rax
movsxd rcx, dword [rbp + r12*8 + 8]
add rcx, rax
mov qword [rbx], rcx
jmp 0x140106f50
movsxd rbx, dword [rbp + r12*8 + 4]
imul rbx, rbx, 0x38
add rbx, qword [rsp + 0x50]
mov rcx, rbx
call fcn.1401008b0
test byte [rbx + 0x24], 8
je 0x140101bd7
mov rcx, rbx
call fcn.1400f9390
movzx eax, word [rbx + 0x24]
test al, 4
jne 0x140101bfa
mov eax, dword [rbp + r12*8 + 8]
test eax, eax
je 0x1401071be
lea ecx, [rax - 1]
mov r8d, 4
jmp 0x140106f5a
mov ecx, 0xbf04
and ax, cx
or ax, 4
mov word [rbx + 0x24], ax
jmp 0x140106f50
movsxd rbx, dword [rbp + r12*8 + 4]
imul rbx, rbx, 0x38
add rbx, qword [rsp + 0x50]
test byte [rbx + 0x24], 4
je case.0x140100cc5.17
mov rcx, rbx
call fcn.1400f92e0
mov eax, 0xbf08
movsd qword [rbx + 8], xmm0
and word [rbx + 0x24], ax
or word [rbx + 0x24], 8
jmp 0x140106f50
movsxd rbx, dword [rbp + r12*8 + 4]
imul rbx, rbx, 0x38
add rbx, qword [rsp + 0x50]
movzx ecx, word [rbx + 0x24]
test cl, 1
jne case.0x140100cc5.17
movzx eax, cx
shr ax, 3
and ax, 2
or ax, cx
mov word [rbx + 0x24], ax
test al, 2
jne 0x140101c89
test al, 0xc
je 0x140101c89
movzx edx, byte [rsp + 0x48]
mov rcx, rbx
call fcn.1400f8fb0
mov eax, 0xfff3
and word [rbx + 0x24], ax
mov eax, 0x4000
test word [rbx + 0x24], ax
je 0x140101cba
mov rcx, rbx
call fcn.1400f8ed0
mov r13d, eax
mov dword [rsp + 0x44], eax
mov eax, 0xbfe3
and word [rbx + 0x24], ax
jmp 0x140106f50
mov eax, 0xbfe3
mov r13d, r15d
mov dword [rsp + 0x44], r15d
and word [rbx + 0x24], ax
jmp 0x140106f50
movsxd rbx, dword [rbp + r12*8 + 4]
imul rbx, rbx, 0x38
add rbx, qword [rsp + 0x50]
movzx eax, word [rbx + 0x24]
test al, 1
jne case.0x140100cc5.17
test al, 0x10
jne 0x140101d1c
test al, 2
jne 0x140101d09
test al, 0xc
je 0x140101d09
movzx edx, byte [rsp + 0x48]
mov rcx, rbx
call fcn.1400f8fb0
mov r8d, 4
mov eax, 0xbf10
and word [rbx + 0x24], ax
or word [rbx + 0x24], 0x10
jmp case.0x140100cc5.17
mov ecx, 0xff10
and ax, cx
mov word [rbx + 0x24], ax
jmp case.0x140100cc5.17
movsxd rcx, dword [rbp + r12*8 + 4]
imul rcx, rcx, 0x38
add rcx, qword [rsp + 0x50]
test byte [rcx + 0x24], 0xd
jne case.0x140100cc5.17
call fcn.1400f9400
jmp 0x140106f50
movsxd rbx, dword [rbp + r12*8 + 4]
imul rbx, rbx, 0x38
add rbx, qword [rsp + 0x50]
test byte [rbx + 0x24], 1
jne case.0x140100cc5.17
mov rcx, rbx
call fcn.1400f9230
mov qword [rbx], rax
mov eax, 0xbf04
and word [rbx + 0x24], ax
or word [rbx + 0x24], 4
jmp 0x140106f50
movsxd rbx, dword [rbp + r12*8 + 4]
imul rbx, rbx, 0x38
add rbx, qword [rsp + 0x50]
test byte [rbx + 0x24], 1
jne case.0x140100cc5.17
jmp 0x140101c27
movsxd rbx, dword [rbp + r12*8 + 4]
movsxd rdi, dword [rbp + r12*8 + 0xc]
mov r11, qword [rsp + 0x50]
imul rbx, rbx, 0x38
imul rdi, rdi, 0x38
add rbx, r11
add rdi, r11
movzx eax, word [rbx + 0x24]
mov word [rsp + 0xb6], ax
movzx eax, word [rdi + 0x24]
mov word [rsp + 0xb8], ax
movzx ecx, word [rdi + 0x24]
movzx edx, word [rbx + 0x24]
movzx eax, cl
or al, dl
test al, 1
je 0x140101e4e
movzx eax, byte [rbp + r12*8 + 3]
test al, al
jns 0x140101e0b
mov r8d, r15d
and cl, dl
test cl, 1
sete r8b
mov dword [rsp + 0xb0], r8d
jmp 0x140101ed3
test al, 0x10
je 0x140101e35
movsxd r14, dword [rbp + r12*8 + 8]
mov eax, 0xbf01
imul r14, r14, 0x38
add r14, r11
and word [r14 + 0x24], ax
or word [r14 + 0x24], 1
mov rdi, qword [rsp + 0x58]
jmp case.0x140100cc5.17
test al, 8
je 0x140101e2b
mov edi, dword [rbp + r12*8 + 8]
dec edi
mov dword [rsp + 0x40], edi
mov rdi, qword [rsp + 0x58]
jmp case.0x140100cc5.17
movzx edx, byte [rbp + r12*8 + 3]
and dl, 0x67
mov byte [rsp + 0xb4], dl
je 0x140101e8e
movzx r8d, byte [rsp + 0x48]
mov rcx, rbx
call fcn.1401009a0
movzx r8d, byte [rsp + 0x48]
movzx edx, byte [rsp + 0xb4]
mov rcx, rdi
call fcn.1401009a0
cmp byte [rsi + 0x2a], 0
jne 0x1401013e8
mov eax, 0x4000
test word [rbx + 0x24], ax
je 0x140101ea6
mov rcx, rbx
call fcn.1400f8ed0
mov eax, 0x4000
test word [rdi + 0x24], ax
je 0x140101eb4
mov rcx, rdi
call fcn.1400f8ed0
mov r8, qword [rbp + r12*8 + 0x10]
mov rdx, rbx
mov rcx, rdi
call fcn.1400f9ac0
mov r11, qword [rsp + 0x50]
mov r8d, eax
mov dword [rsp + 0xb0], eax
movzx edx, byte [rbp + r12*8]
mov eax, r15d
sub edx, 0x4b
je 0x140101f1d
sub edx, 1
je 0x140101f15
sub edx, 1
je 0x140101f0d
sub edx, 1
je 0x140101f05
cmp edx, 1
je 0x140101efd
test r8d, r8d
setns al
jmp 0x140101f23
test r8d, r8d
sets al
jmp 0x140101f23
test r8d, r8d
setle al
jmp 0x140101f23
test r8d, r8d
setg al
jmp 0x140101f23
test r8d, r8d
sete al
jmp 0x140101f23
test r8d, r8d
setne al
mov dword [rsp + 0xb0], eax
test byte [rbp + r12*8 + 3], 0x10
je 0x140101f5b
movsxd r14, dword [rbp + r12*8 + 8]
mov eax, 0xbf04
imul r14, r14, 0x38
add r14, r11
and word [r14 + 0x24], ax
or word [r14 + 0x24], 4
movsxd rax, dword [rsp + 0xb0]
mov qword [r14], rax
jmp 0x140101f6a
test eax, eax
je 0x140101f6a
mov eax, dword [rbp + r12*8 + 8]
dec eax
mov dword [rsp + 0x40], eax
movzx eax, byte [rsp + 0xb6]
mov byte [rbx + 0x24], al
movzx eax, byte [rsp + 0xb8]
mov byte [rdi + 0x24], al
mov rdi, qword [rsp + 0x58]
jmp 0x140106f50
mov rax, qword [rbp + r12*8 + 0x10]
mov qword [rsp + 0x88], rax
jmp case.0x140100cc5.17
mov eax, dword [rbp + r12*8 + 0xc]
mov ecx, r15d
mov dword [rsp + 0xb0], eax
mov rdx, qword [rbp + r12*8 + 0x10]
mov qword [rsp + 0xc0], rdx
mov r10d, dword [rbp + r12*8 + 4]
mov dword [rsp + 0xb8], r10d
mov r11d, dword [rbp + r12*8 + 8]
mov dword [rsp + 0xb4], ecx
mov dword [rsp + 0xbc], r11d
test eax, eax
jle 0x1401020ac
mov rbx, qword [rsp + 0x50]
nop word [rax + rax]
mov r8, qword [rsp + 0x88]
test r8, r8
je 0x14010200e
movsxd rax, ecx
mov r9d, dword [r8 + rax*4]
mov dword [rsp + 0xc8], r9d
jmp 0x140102018
mov r9d, ecx
mov dword [rsp + 0xc8], ecx
movsxd rcx, ecx
mov r8, qword [rdx + rcx*8 + 0x18]
mov qword [rsp + 0xd0], r8
mov rax, qword [rdx + 0x10]
movzx ecx, byte [rax + rcx]
lea eax, [r9 + r11]
mov dword [rsp + 0xd8], ecx
movsxd rdx, eax
lea eax, [r9 + r10]
movsxd rcx, eax
imul rdx, rdx, 0x38
add rdx, rbx
imul rcx, rcx, 0x38
add rcx, rbx
call fcn.1400f9ac0
mov dword [rsp + 0x70], eax
test eax, eax
jne 0x140102096
mov ecx, dword [rsp + 0xb4]
inc ecx
cmp ecx, dword [rsp + 0xb0]
mov dword [rsp + 0xb4], ecx
jge 0x1401020a6
mov rdx, qword [rsp + 0xc0]
mov r11d, dword [rsp + 0xbc]
mov r10d, dword [rsp + 0xb8]
jmp 0x140101ff0
cmp dword [rsp + 0xd8], 0
je 0x1401020a6
neg eax
mov dword [rsp + 0x70], eax
mov r8d, 4
mov qword [rsp + 0x88], r15
jmp case.0x140100cc5.17
mov ebx, dword [rsp + 0x70]
test ebx, ebx
jns 0x1401020cd
mov ecx, dword [rbp + r12*8 + 4]
dec ecx
jmp 0x140106f5a
jne 0x1401020db
mov ecx, dword [rbp + r12*8 + 8]
dec ecx
jmp 0x140106f5a
mov ecx, dword [rbp + r12*8 + 0xc]
dec ecx
jmp 0x140106f5a
movsxd rcx, dword [rbp + r12*8 + 4]
mov rbx, qword [rsp + 0x50]
imul rcx, rcx, 0x38
add rcx, rbx
test byte [rcx + 0x24], 1
je 0x140102106
mov r8d, 2
jmp 0x140102115
call fcn.1400f9230
mov r8d, r15d
test rax, rax
setne r8b
mov dword [rsp + 0xb0], r8d
movsxd rcx, dword [rbp + r12*8 + 8]
imul rcx, rcx, 0x38
add rcx, rbx
test byte [rcx + 0x24], 1
je 0x140102136
mov edx, 2
jmp 0x14010214c
call fcn.1400f9230
mov r8d, dword [rsp + 0xb0]
mov edx, r15d
test rax, rax
setne dl
movsxd rax, r8d
mov dword [rsp + 0xb4], edx
lea rcx, [rax + rax*2]
movsxd rax, edx
add rcx, rax
cmp byte [rbp + r12*8], 0x45
lea rax, [0x140000000]
jne 0x140102179
movzx eax, byte [rcx + rax + 0x1bf3a0]
jmp 0x140102181
movzx eax, byte [rcx + rax + 0x1bf3b0]
mov ecx, dword [rsp + 0x40]
mov dword [rsp + 0xb0], eax
movsxd r14, dword [rbp + r12*8 + 0xc]
imul r14, r14, 0x38
add r14, rbx
mov r8d, 4
cmp eax, 2
jne 0x1401021b8
mov eax, 0xbf01
and word [r14 + 0x24], ax
or word [r14 + 0x24], 1
jmp 0x140106f5a
cdqe
mov qword [r14], rax
mov eax, 0xbf04
and word [r14 + 0x24], ax
or word [r14 + 0x24], 4
jmp 0x140106f5a
mov rbx, qword [rsp + 0x50]
movsxd rcx, dword [rbp + r12*8 + 4]
movsxd r14, dword [rbp + r12*8 + 8]
imul rcx, rcx, 0x38
imul r14, r14, 0x38
add rcx, rbx
add r14, rbx
test byte [rcx + 0x24], 1
je 0x140102202
mov rcx, r14
call fcn.1400f9480
jmp 0x140106f50
call fcn.1400f9230
mov rdx, r15
mov rcx, r14
test rax, rax
sete dl
call fcn.1400f9510
jmp 0x140106f50
mov rbx, qword [rsp + 0x50]
movsxd rcx, dword [rbp + r12*8 + 4]
movsxd r14, dword [rbp + r12*8 + 8]
imul rcx, rcx, 0x38
imul r14, r14, 0x38
add rcx, rbx
add r14, rbx
test byte [rcx + 0x24], 1
je 0x14010224d
mov rcx, r14
call fcn.1400f9480
jmp 0x140106f50
call fcn.1400f9230
mov rcx, r14
not rax
mov rdx, rax
call fcn.1400f9510
jmp 0x140106f50
movsxd rcx, dword [rbp + r12*8 + 4]
imul rcx, rcx, 0x38
add rcx, qword [rsp + 0x50]
test byte [rcx + 0x24], 1
je 0x140102287
mov ecx, dword [rbp + r12*8 + 0xc]
mov dword [rsp + 0xb0], ecx
jmp 0x1401022c2
call fcn.1400f92e0
ucomisd xmm0, xmm6
jp 0x140102297
mov ecx, r15d
je 0x14010229c
mov ecx, 1
mov dword [rsp + 0xb0], ecx
cmp byte [rbp + r12*8], 0x1b
mov r8d, 4
jne 0x1401022c2
mov eax, r15d
test ecx, ecx
sete al
mov ecx, eax
mov dword [rsp + 0xb0], eax
test ecx, ecx
je case.0x140100cc5.17
mov ecx, dword [rbp + r12*8 + 8]
dec ecx
jmp 0x140106f5a
movsxd rax, dword [rbp + r12*8 + 4]
mov rcx, qword [rsp + 0x50]
imul rax, rax, 0x38
test byte [rax + rcx + 0x24], 1
je case.0x140100cc5.17
mov ecx, dword [rbp + r12*8 + 8]
dec ecx
jmp 0x140106f5a
movsxd rax, dword [rbp + r12*8 + 4]
mov rcx, qword [rsp + 0x50]
imul rax, rax, 0x38
test byte [rax + rcx + 0x24], 1
jne case.0x140100cc5.17
mov ecx, dword [rbp + r12*8 + 8]
dec ecx
jmp 0x140106f5a
mov eax, dword [rbp + r12*8 + 4]
mov rbx, qword [rsp + 0x50]
mov edx, 0xbf01
mov dword [rsp + 0xc0], eax
mov eax, dword [rbp + r12*8 + 8]
mov qword [rsp + 0xc8], r15
mov dword [rsp + 0xc4], eax
xor eax, eax
mov qword [rsp + 0x110], rax
mov qword [rsp + 0x118], rax
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x128], rax
mov qword [rsp + 0x130], rax
mov qword [rsp + 0x138], rax
mov qword [rsp + 0x140], rax
movsxd rcx, dword [rbp + r12*8 + 0xc]
imul rcx, rcx, 0x38
add rcx, rbx
mov qword [rsp + 0x108], rcx
movzx eax, word [rcx + 0x24]
and ax, dx
or ax, 1
mov word [rcx + 0x24], ax
mov rax, qword [rdi + 0x58]
movsxd rcx, dword [rsp + 0xc0]
mov qword [rsp + 0xd0], r15
mov rdx, qword [rax + rcx*8]
mov qword [rsp + 0xc8], rdx
mov rax, qword [rdx]
mov qword [rsp + 0xd8], rax
test rax, rax
je 0x1401024b5
mov rcx, rdx
call fcn.1400fd140
mov r13d, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140107302
mov rdx, qword [rsp + 0xc8]
cmp byte [rdx + 0x1c], al
je 0x14010240c
mov dword [rsp + 0xb0], r15d
jmp 0x140106f50
mov eax, dword [rdi + 0x88]
cmp dword [rdx + 0x64], eax
jne 0x14010243b
mov ecx, dword [rdx + 0x68]
mov r8d, 4
mov dword [rsp + 0xb0], ecx
mov rax, qword [rdx + 0x80]
mov qword [rsp + 0xd0], rax
jmp 0x14010250c
cmp byte [rdx + 0x1f], 0
mov rbx, qword [rsp + 0xd8]
je 0x140102493
cmp byte [rbx + 0x5b], 1
je 0x140102459
mov qword [rsp + 0xb8], r15
jmp 0x140102475
mov rcx, rbx
call fcn.1400ef640
mov r11, qword [rbx + 0x40]
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0xb8], r11
mov ecx, dword [rsp + 0xb8]
mov r13d, r15d
mov dword [rsp + 0x44], r15d
mov dword [rsp + 0xb0], ecx
mov r8d, 4
jmp 0x14010250c
mov rcx, rbx
call fcn.1400ef640
mov ecx, dword [rbx + 0x48]
mov r13d, r15d
mov dword [rsp + 0x44], r15d
mov r8d, 4
mov dword [rsp + 0xb0], ecx
jmp 0x140102504
movsxd rax, dword [rdx + 0x30]
test eax, eax
jle 0x140102c5b
mov rcx, rax
imul rcx, rcx, 0x38
add rcx, rbx
mov qword [rsp + 0x168], rcx
mov eax, dword [rcx + 0x20]
mov dword [rsp + 0xb0], eax
mov rax, qword [rcx + 0x18]
mov qword [rsp + 0xd0], rax
test byte [rbp + r12*8 + 3], 0x20
mov eax, r15d
jne 0x1401024fa
mov eax, dword [rdi + 0x88]
mov dword [rdx + 0x64], eax
mov ecx, dword [rsp + 0xb0]
mov rdx, qword [rsp + 0xc8]
test ecx, ecx
je case.0x140100cc5.17
cmp ecx, dword [rsi + 0x60]
ja 0x14010734f
movsxd r8, dword [rdx + 0x40]
mov eax, dword [rdi + 0x88]
mov dword [rsp + 0xf0], r8d
mov rcx, qword [rdx + 0x70]
mov qword [rsp + 0xe0], rcx
cmp dword [rdx + 0x64], eax
jne 0x140102558
mov rax, qword [rdx + 0x78]
lea r13, [0x140000000]
mov qword [rsp + 0xe8], rax
jmp 0x140102aa5
lea rcx, [rcx + r8*4]
mov dword [rsp + 0x164], r15d
mov qword [rsp + 0xe8], rcx
mov qword [rdx + 0x78], rcx
mov ecx, dword [rsp + 0xb0]
mov rax, qword [rsp + 0xc8]
mov dword [rax + 0x68], ecx
mov ecx, dword [rdi + 0x88]
mov rax, qword [rsp + 0xc8]
mov dword [rax + 0x64], ecx
mov rcx, qword [rsp + 0xd0]
test rcx, rcx
je 0x1401025ad
mov qword [rsp + 0x100], rcx
jmp 0x140102718
mov r8, qword [rsp + 0xc8]
mov rdi, qword [rsp + 0xd8]
mov rcx, r15
cmp byte [r8 + 0x1f], 0
je 0x14010263d
cmp byte [rdi + 0x5b], 1
jne 0x1401026db
cmp word [rdi + 0x56], 0
jne 0x14010262c
movsx rax, word [rdi + 0x80]
lea r8, [rdi + 0x38]
mov rbx, qword [rdi + rax*8 + 0x88]
movzx ecx, word [rdi + rax*2 + 0x128]
movzx eax, word [rbx + 0xc]
mov r11, qword [rbx + 0x70]
lea rdx, [r11 + rax]
movzx eax, byte [rdx + rcx*2]
movzx edx, byte [rdx + rcx*2 + 1]
mov rcx, rbx
shl eax, 8
movsxd r10, eax
movzx eax, word [rbx + 0x12]
or rdx, r10
and rdx, rax
add rdx, r11
call fcn.1400eb540
mov r8, qword [rsp + 0xc8]
movzx ecx, word [rdi + 0x50]
movzx eax, word [rdi + 0x52]
add rcx, qword [rdi + 0x38]
jmp 0x1401026d4
cmp byte [rdi + 0x5b], 1
jne 0x1401026db
cmp word [rdi + 0x56], 0
movsx rax, word [rdi + 0x80]
mov rsi, qword [rdi + rax*8 + 0x88]
jne 0x1401026b2
movsx rax, word [rdi + 0x80]
lea r8, [rdi + 0x38]
mov rbx, qword [rdi + rax*8 + 0x88]
movzx ecx, word [rdi + rax*2 + 0x128]
movzx eax, word [rbx + 0xc]
mov r11, qword [rbx + 0x70]
lea rdx, [r11 + rax]
movzx eax, byte [rdx + rcx*2]
movzx edx, byte [rdx + rcx*2 + 1]
mov rcx, rbx
shl eax, 8
movsxd r10, eax
movzx eax, word [rbx + 0x12]
or rdx, r10
and rdx, rax
add rdx, r11
call fcn.1400eb540
mov r8, qword [rsp + 0xc8]
movzx edx, word [rdi + 0x50]
mov ecx, r15d
add rdx, qword [rdi + 0x38]
cmp byte [rsi + 2], 0
jne 0x1401026c6
mov ecx, dword [rdi + 0x40]
movzx eax, word [rdi + 0x52]
mov rsi, qword [rsp + 0x68]
sub eax, ecx
add rcx, rdx
mov dword [rsp + 0x164], eax
mov eax, dword [rsp + 0x164]
mov rdi, qword [rsp + 0x58]
mov qword [rsp + 0x100], rcx
cmp dword [rsp + 0xb0], eax
ja 0x140102709
mov qword [rsp + 0xd0], rcx
mov qword [r8 + 0x80], rcx
jmp 0x140102710
mov qword [r8 + 0x80], r15
mov rcx, qword [rsp + 0x100]
movzx eax, byte [rcx]
cmp al, 0x80
jae 0x140102732
movzx edx, al
mov ebx, 1
mov dword [rsp + 0x158], edx
mov eax, ebx
jmp 0x140102756
lea rdx, [rsp + 0x158]
call fcn.1400ddc60
mov edx, dword [rsp + 0x158]
mov rcx, qword [rsp + 0x100]
movzx eax, al
mov ebx, 1
movzx r9d, al
mov dword [rsp + 0x160], r9d
cmp edx, 0x18003
jbe 0x140102798
mov r8d, 0xf0f2
lea r9, [0x1401ead24]
lea rdx, str.database_corruption_at_line__d_of___.10s_
mov ecx, ntohs
call fcn.1400dc4c0
mov r13d, ntohs
mov dword [rsp + 0x44], r13d
jmp 0x140106f50
mov r10d, dword [rsp + 0xf0]
lea r8d, [r10 + r10*4 + 3]
cmp r8d, edx
cmovg r8d, edx
cmp qword [rsp + 0xd0], 0
mov dword [rsp + 0xf4], r8d
jne 0x140102845
cmp dword [rsp + 0x164], r8d
jge 0x140102845
mov rax, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0xd8]
mov word [rsp + 0x134], r15w
mov qword [rsp + 0x120], r15
movzx r9d, byte [rax + 0x1f]
lea rax, [rsp + 0x110]
xor edx, edx
mov qword [rsp + 0x20], rax
call fcn.1400fa000
mov r13d, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140106f50
mov rcx, qword [rsp + 0x128]
mov r9d, dword [rsp + 0x160]
mov edx, dword [rsp + 0x158]
mov r8d, dword [rsp + 0xf4]
mov r10d, dword [rsp + 0xf0]
mov qword [rsp + 0x100], rcx
movsxd rax, r8d
movsxd r9, r9d
mov dword [rsp + 0xf8], r15d
add rax, rcx
add r9, rcx
mov r8d, r15d
mov qword [rsp + 0x150], rax
mov qword [rsp + 0x148], r9
lea r13, [0x140000000]
test r10d, r10d
jle 0x140102949
nop dword [rax]
cmp r9, rax
mov rax, qword [rsp + 0xe8]
movsxd rcx, r8d
jae 0x140102990
mov dword [rax + rcx*4], edx
mov rcx, qword [rsp + 0x148]
movzx eax, byte [rcx]
cmp al, 0x80
jae 0x1401028c0
movsxd rcx, dword [rsp + 0xf8]
movzx edx, al
mov rax, qword [rsp + 0xe0]
mov dword [rax + rcx*4], edx
mov eax, ebx
jmp 0x1401028dc
movsxd rdx, dword [rsp + 0xf8]
mov rax, qword [rsp + 0xe0]
lea rdx, [rax + rdx*4]
call fcn.1400ddc60
movzx eax, al
mov r9, qword [rsp + 0x148]
movsxd r8, dword [rsp + 0xf8]
movzx eax, al
add r9, rax
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0x148], r9
mov edx, dword [rax + r8*4]
cmp edx, 0xc
jb 0x140102912
lea eax, [rdx - 0xc]
shr eax, 1
jmp 0x14010291b
movzx eax, byte [rdx + r13 + 0x1bf358]
mov edx, dword [rsp + 0x158]
mov dword [rsp + 0x15c], eax
add edx, eax
mov dword [rsp + 0x158], edx
cmp edx, eax
jae 0x1401029ab
mov rax, qword [rsp + 0x150]
inc rax
mov qword [rsp + 0x148], rax
movzx eax, word [rsp + 0x134]
mov ecx, 0x2460
test cx, ax
je 0x140102a24
mov ecx, 0x2000
test cx, ax
je 0x1401029cd
mov rdx, qword [rsp + 0x110]
lea rcx, [rsp + 0x110]
call fcn.1400f9080
lea rcx, [rsp + 0x110]
call fcn.1400f9200
jmp 0x140102a24
mov dword [rax + rcx*4], r15d
mov edx, dword [rsp + 0x158]
mov r9, qword [rsp + 0x148]
mov r8d, dword [rsp + 0xf8]
inc r8d
cmp r8d, dword [rsp + 0xf0]
mov dword [rsp + 0xf8], r8d
jge 0x140102949
mov rax, qword [rsp + 0x150]
jmp 0x140102880
mov ecx, 0x400
test cx, ax
je 0x1401029f8
mov rax, qword [rsp + 0x138]
test rax, rax
je 0x1401029f8
mov rcx, qword [rsp + 0x128]
call rax
mov qword [rsp + 0x138], r15
jmp 0x140102a24
movzx eax, byte [rsp + 0x134]
test al, 0x20
je 0x140102a13
mov rcx, qword [rsp + 0x110]
call fcn.1400e27e0
jmp 0x140102a24
test al, 0x40
je 0x140102a24
lea rcx, [rsp + 0x110]
call fcn.1400f9480
mov rdx, qword [rsp + 0x140]
mov rcx, qword [rsp + 0x120]
call fcn.1400da6b0
mov rdx, qword [rsp + 0x148]
mov r8, qword [rsp + 0x150]
mov qword [rsp + 0x128], r15
mov qword [rsp + 0x140], r15
mov qword [rsp + 0x138], r15
mov word [rsp + 0x134], bx
cmp rdx, r8
ja 0x140102c50
mov eax, dword [rsp + 0x158]
mov ecx, dword [rsp + 0xb0]
cmp eax, ecx
ja 0x140102c50
cmp rdx, r8
jne 0x140102a95
cmp eax, ecx
jne 0x140102c50
mov rax, qword [rsp + 0xe8]
mov rcx, qword [rsp + 0xe0]
movsxd rdx, dword [rsp + 0xc4]
cmp dword [rax + rdx*4], 0
je 0x140102bc2
cmp qword [rsp + 0xd0], 0
je 0x140102afc
mov rcx, qword [rsp + 0x108]
call fcn.1400f9170
movsxd r11, dword [rsp + 0xc4]
mov rax, qword [rsp + 0xe8]
mov ecx, dword [rax + r11*4]
mov rax, qword [rsp + 0xe0]
mov edx, dword [rax + r11*4]
add rcx, qword [rsp + 0xd0]
jmp 0x140102ba4
mov eax, dword [rcx + rdx*4]
cmp eax, 0xc
jb 0x140102b0b
add eax, 0xfffffff4
shr eax, 1
jmp 0x140102b14
movzx eax, byte [rax + r13 + 0x1bf358]
mov rdx, qword [rsp + 0x108]
lea rcx, [rsp + 0x110]
mov dword [rsp + 0xf4], eax
call fcn.1400f9830
movsxd rcx, dword [rsp + 0xc4]
mov r11, qword [rsp + 0xc8]
movzx r9d, byte [r11 + 0x1f]
mov r8d, dword [rsp + 0xf4]
lea rax, [rsp + 0x110]
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0xe8]
mov edx, dword [rax + rcx*4]
mov rcx, qword [rsp + 0xd8]
call fcn.1400fa000
mov r13d, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140106f50
mov rcx, qword [rsp + 0x128]
movsxd rdx, dword [rsp + 0xc4]
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0x100], rcx
mov edx, dword [rax + rdx*4]
mov r8, qword [rsp + 0x108]
call fcn.1400fd390
mov rax, qword [rsp + 0x108]
mov cl, byte [rsp + 0x48]
mov byte [rax + 0x27], cl
jmp 0x140102be2
cmp byte [rbp + r12*8 + 1], 0xf8
jne 0x140102be2
mov rdx, qword [rbp + r12*8 + 0x10]
mov rcx, qword [rsp + 0x108]
mov r8d, 0x800
call fcn.1400f9700
cmp qword [rsp + 0x140], 0
je 0x140102c37
mov rax, qword [rsp + 0x108]
mov ecx, 0xe7ff
and word [rax + 0x24], cx
mov rax, qword [rsp + 0x108]
mov ecx, 0x200
or word [rax + 0x24], cx
mov rcx, qword [rsp + 0x108]
mov rax, qword [rsp + 0x128]
mov qword [rcx + 0x18], rax
mov rcx, qword [rsp + 0x108]
mov rax, qword [rsp + 0x140]
mov qword [rcx + 0x30], rax
mov rcx, qword [rsp + 0x108]
call fcn.1400f8e50
mov r13d, eax
mov dword [rsp + 0x44], eax
jmp 0x140106f50
mov r8d, 0xf13c
jmp 0x140102770
mov dword [rsp + 0xb0], r15d
jmp case.0x140100cc5.17
mov rax, qword [rbp + r12*8 + 0x10]
mov qword [rsp + 0xb0], rax
movsxd rbx, dword [rbp + r12*8 + 4]
movzx ecx, byte [rax]
imul rbx, rbx, 0x38
add rbx, qword [rsp + 0x50]
mov byte [rsp + 0xb8], cl
test cl, cl
je 0x140102cf3
mov r12b, byte [rsp + 0x48]
mov esi, 0x4000
nop dword [rax + rax]
inc rax
mov qword [rsp + 0xb0], rax
test word [rbx + 0x24], si
je 0x140102cc0
mov rcx, rbx
call fcn.1400f8ed0
mov cl, byte [rsp + 0xb8]
movzx edx, cl
movzx r8d, r12b
mov rcx, rbx
call fcn.1401009a0
mov rax, qword [rsp + 0xb0]
add rbx, 0x38
mov cl, byte [rax]
mov byte [rsp + 0xb8], cl
test cl, cl
jne 0x140102ca0
mov rsi, qword [rsp + 0x68]
mov r8d, 4
inc rax
mov qword [rsp + 0xb0], rax
jmp case.0x140100cc5.17
mov r8, qword [rsp + 0x50]
mov qword [rsp + 0xc0], r15
mov dword [rsp + 0xc8], r15d
mov qword [rsp + 0xd0], r15
mov dword [rsp + 0xd8], r15d
movsxd rax, dword [rbp + r12*8 + 4]
mov dword [rsp + 0xf8], eax
mov rbx, qword [rbp + r12*8 + 0x10]
mov rsi, rax
imul rsi, rsi, 0x38
add rsi, r8
mov qword [rsp + 0x100], rbx
mov qword [rsp + 0xe8], rsi
mov eax, dword [rbp + r12*8 + 8]
mov edi, r15d
mov dword [rsp + 0xf8], eax
dec eax
mov r11d, r15d
movsxd rcx, eax
mov rax, qword [rsp + 0x58]
mov r10, rsi
movzx eax, byte [rax + 0xa4]
mov qword [rsp + 0xb8], rsi
imul rcx, rcx, 0x38
add rcx, rsi
mov dword [rsp + 0x108], eax
mov qword [rsp + 0xf0], rcx
cmp rsi, rcx
ja 0x140102f04
mov bpl, byte [rsp + 0x48]
mov r14d, 0x4000
lea r12, [0x140000000]
movabs r13, 0x4924924924924925
nop dword [rax]
test rbx, rbx
je 0x140102e16
mov rdx, r10
mov rax, r13
movzx r8d, bpl
sub rdx, rsi
mov rcx, r10
imul rdx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
movzx edx, byte [rdx + rbx]
call fcn.1401009a0
mov rbx, qword [rsp + 0x100]
mov rsi, qword [rsp + 0xe8]
mov r11d, dword [rsp + 0xd8]
mov edi, dword [rsp + 0xc8]
mov r10, qword [rsp + 0xb8]
test word [r10 + 0x24], r14w
je 0x140102e53
cmp dword [r10 + 0x20], 0
jle 0x140102e53
mov rcx, r10
call fcn.1400f8ed0
mov rbx, qword [rsp + 0x100]
mov rsi, qword [rsp + 0xe8]
mov r11d, dword [rsp + 0xd8]
mov edi, dword [rsp + 0xc8]
mov r10, qword [rsp + 0xb8]
mov edx, dword [rsp + 0x108]
mov rcx, r10
call fcn.1400fd200
mov r9d, eax
mov dword [rsp + 0xe0], r9d
cmp eax, 0xc
jb 0x140102e7a
lea edx, [r9 - 0xc]
shr edx, 1
jmp 0x140102e83
movzx edx, byte [r9 + r12 + 0x1bf358]
movsxd rax, edx
mov dword [rsp + 0x110], edx
mov rcx, r9
add qword [rsp + 0xc0], rax
mov eax, r15d
nop dword [rax + rax]
shr rcx, 7
inc eax
test rcx, rcx
je 0x140102eb0
cmp eax, 9
jl 0x140102ea0
add edi, eax
mov dword [rsp + 0xc8], edi
test word [r10 + 0x24], r14w
je 0x140102ec5
add r11d, dword [r10]
jmp 0x140102ecb
test edx, edx
cmovne r11d, r15d
add r10, 0x38
mov dword [rsp + 0xd8], r11d
mov qword [rsp + 0xb8], r10
cmp r10, qword [rsp + 0xf0]
jbe 0x140102dc0
mov r12, qword [rsp + 0x98]
mov r13d, dword [rsp + 0x44]
mov rbp, qword [rsp + 0x78]
mov r8, qword [rsp + 0x50]
movsxd rax, edi
mov edx, r15d
nop word [rax + rax]
shr rax, 7
inc edx
test rax, rax
je 0x140102f20
cmp edx, 9
jl 0x140102f10
add edi, edx
mov dword [rsp + 0xdc], edx
mov eax, r15d
mov dword [rsp + 0xc8], edi
movsxd rcx, edi
nop word [rax + rax]
shr rcx, 7
inc eax
test rcx, rcx
je 0x140102f50
cmp eax, 9
jl 0x140102f40
cmp edx, eax
jge 0x140102f5d
inc edi
mov dword [rsp + 0xc8], edi
mov rsi, qword [rsp + 0x68]
movsxd rax, r11d
movsxd rcx, edi
sub rcx, rax
add rcx, qword [rsp + 0xc0]
mov qword [rsp + 0xd0], rcx
movsxd rax, dword [rsi + 0x60]
cmp rcx, rax
jg 0x14010734a
movsxd r14, dword [rbp + r12*8 + 0xc]
mov edx, ecx
imul r14, r14, 0x38
add r14, r8
xor r8d, r8d
mov rcx, r14
call fcn.1400f8d00
test eax, eax
jne 0x1401013e8
mov ecx, dword [rsp + 0xc8]
mov r8, qword [r14 + 0x18]
mov qword [rsp + 0xb0], r8
cmp ecx, 0x80
jae 0x140102fd8
movzx eax, byte [rsp + 0xc8]
mov ebx, 1
mov byte [r8], al
mov eax, ebx
jmp 0x140103008
test ecx, 0xffffc000
jne 0x140102ff8
mov eax, ecx
shr eax, 7
or al, 0x80
and cl, 0x7f
mov byte [r8], al
mov byte [r8 + 1], cl
mov eax, 2
jmp 0x140103003
mov rdx, rcx
mov rcx, r8
call fcn.1400dd9a0
mov ebx, 1
mov rcx, qword [rsp + 0xf0]
movzx r9d, al
mov rax, qword [rsp + 0xe8]
mov dword [rsp + 0x10c], r9d
mov qword [rsp + 0xb8], rax
cmp rax, rcx
ja 0x1401030ef
nop word [rax + rax]
mov edx, dword [rsp + 0x108]
mov rcx, rax
call fcn.1400fd200
mov r10d, eax
mov dword [rsp + 0xe0], r10d
cmp eax, 0x80
jae 0x140103077
mov rcx, qword [rsp + 0xb0]
movzx eax, r10b
movsxd rdx, r9d
mov byte [rdx + rcx], al
mov eax, ebx
jmp 0x1401030ac
movsxd rcx, r9d
add rcx, qword [rsp + 0xb0]
test r10d, 0xffffc000
jne 0x1401030a4
mov eax, r10d
shr eax, 7
or al, 0x80
and r10b, 0x7f
mov byte [rcx], al
mov byte [rcx + 1], r10b
mov eax, 2
jmp 0x1401030ac
mov rdx, r10
call fcn.1400dd9a0
mov r9d, dword [rsp + 0x10c]
mov rcx, qword [rsp + 0xf0]
movzx eax, al
add r9d, eax
mov rax, qword [rsp + 0xb8]
add rax, 0x38
mov dword [rsp + 0x10c], r9d
mov qword [rsp + 0xb8], rax
cmp rax, rcx
jbe 0x140103040
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0xb8], rax
cmp rax, rcx
ja 0x140103156
nop dword [rax]
mov edx, dword [rsp + 0xd0]
movsxd rcx, r9d
mov r8, rax
add rcx, qword [rsp + 0xb0]
sub edx, r9d
mov r9d, dword [rsp + 0x108]
call fcn.1400fd2a0
mov r9d, dword [rsp + 0x10c]
add r9d, eax
mov rax, qword [rsp + 0xb8]
add rax, 0x38
mov dword [rsp + 0x10c], r9d
mov qword [rsp + 0xb8], rax
cmp rax, qword [rsp + 0xf0]
jbe 0x140103100
mov eax, dword [rsp + 0xd0]
mov qword [r14 + 0x28], r15
mov dword [r14 + 0x20], eax
mov eax, 0x410
mov word [r14 + 0x24], ax
mov eax, dword [rsp + 0xd8]
test eax, eax
je 0x140103187
mov dword [r14], eax
mov eax, 0x4410
mov word [r14 + 0x24], ax
mov rdi, qword [rsp + 0x58]
mov byte [r14 + 0x27], 1
jmp 0x140106f50
movsxd rcx, dword [rbp + r12*8 + 4]
mov rax, qword [rdi + 0x58]
mov rcx, qword [rax + rcx*8]
mov rcx, qword [rcx]
mov qword [rsp + 0xb8], rcx
test rcx, rcx
je 0x1401031dd
lea rdx, [rsp + 0xb0]
call fcn.1400f5c60
mov r8d, 4
mov r13d, eax
mov dword [rsp + 0x44], eax
mov rax, qword [rsp + 0xb0]
mov qword [r14], rax
jmp case.0x140100cc5.17
mov rax, r15
mov qword [rsp + 0xb0], rax
mov qword [r14], rax
jmp case.0x140100cc5.17
mov edi, dword [rbp + r12*8 + 4]
mov dword [rsp + 0xb0], edi
mov r11, qword [rbp + r12*8 + 0x10]
mov qword [rsp + 0xb8], r11
test edi, edi
jne 0x1401032f5
cmp dword [rsi + 0xb4], edi
jle 0x14010322a
mov rdi, qword [rsp + 0x58]
lea r8, str.cannot_open_savepoint___SQL_statements_in_progress
jmp 0x140103604
test r11, r11
jne 0x140103234
mov r11d, r15d
jmp 0x140103258
cmp byte [r11], 0
je 0x140103249
nop word [rax + rax]
inc r11
cmp byte [r11], 0
jne 0x140103240
sub r11d, dword [rsp + 0xb8]
and r11d, 0x3fffffff
lea edx, [r11 + 0x19]
mov rcx, rsi
mov dword [rsp + 0xc0], r11d
call fcn.1400da990
mov qword [rsp + 0xc8], rax
test rax, rax
je 0x1401010f8
lea rcx, [rax + 0x18]
mov qword [rax], rcx
mov eax, dword [rsp + 0xc0]
mov rdx, qword [rsp + 0xb8]
inc eax
movsxd r8, eax
call sub.MSVCR90.dll_memcpy
cmp byte [rsi + 0x28], 0
je 0x1401032b0
mov byte [rsi + 0x28], 0
mov byte [rsi + 0x318], 1
jmp 0x1401032b6
inc dword [rsi + 0x310]
mov rax, qword [rsp + 0xc8]
mov rcx, qword [rsi + 0x308]
mov rdi, qword [rsp + 0x58]
mov qword [rax + 0x10], rcx
mov rax, qword [rsp + 0xc8]
mov rcx, qword [rsi + 0x320]
mov qword [rsi + 0x308], rax
mov rax, qword [rsp + 0xc8]
mov qword [rax + 8], rcx
jmp 0x140106f50
mov ebx, r15d
mov dword [rsp + 0xe0], ebx
mov r10, qword [rsi + 0x308]
mov qword [rsp + 0xd0], r10
test r10, r10
je 0x14010333c
mov rcx, qword [r10]
mov rdx, r11
call fcn.1400dd1d0
test eax, eax
je 0x14010336a
inc ebx
mov dword [rsp + 0xe0], ebx
mov r10, qword [r10 + 0x10]
mov qword [rsp + 0xd0], r10
test r10, r10
jne 0x140103313
mov rdi, qword [rsp + 0x58]
lea r8, str.no_such_savepoint:__s
mov r9, r11
lea rcx, [rdi + 0x98]
mov rdx, rsi
call fcn.1400dabc0
mov r13d, 1
mov dword [rsp + 0x44], r13d
jmp 0x140106f50
cmp dword [rsi + 0xb4], 0
jg 0x140103582
cmp edi, 2
jne 0x140103389
cmp dword [rsi + 0xb0], 1
jg 0x140103582
cmp qword [r10 + 0x10], 0
jne 0x1401033f2
cmp byte [rsi + 0x318], 0
je 0x1401033f2
mov r12d, 1
mov esi, r12d
cmp edi, r12d
jne 0x1401033f5
mov rdi, qword [rsp + 0x58]
mov rdx, qword [rdi]
cmp qword [rdx + 0x320], 0
jg 0x1401071eb
mov r12, qword [rsp + 0x68]
mov rcx, rdi
mov byte [r12 + 0x28], sil
call fcn.1400fc890
cmp eax, 5
je 0x1401071c9
mov byte [r12 + 0x318], 0
mov r13d, dword [rdi + 0x90]
mov dword [rsp + 0x44], r13d
jmp 0x1401034ba
mov esi, r15d
mov r12, qword [rsp + 0x68]
mov eax, r15d
mov r8d, dword [r12 + 0x310]
mov dword [rsp + 0xe4], eax
sub r8d, ebx
dec r8d
mov dword [rsp + 0xe0], r8d
cmp dword [r12 + 8], 0
jle 0x140103478
mov rcx, qword [r12 + 0x10]
cdqe
mov edx, edi
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.1400ef330
mov r13d, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x1401072fa
mov eax, dword [rsp + 0xe4]
mov edi, dword [rsp + 0xb0]
inc eax
mov dword [rsp + 0xe4], eax
cmp eax, dword [r12 + 8]
jge 0x140103470
mov r8d, dword [rsp + 0xe0]
jmp 0x140103422
mov r10, qword [rsp + 0xd0]
cmp edi, 2
jne 0x1401034c9
bt dword [r12 + 0x18], 9
jae 0x1401034c9
mov rax, qword [r12 + 0xa8]
test rax, rax
je 0x1401034b0
nop word [rax + rax]
mov byte [rax + 0xa2], 1
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x1401034a0
xor edx, edx
mov rcx, r12
call fcn.140115650
mov edi, dword [rsp + 0xb0]
mov r10, qword [rsp + 0xd0]
cmp qword [r12 + 0x308], r10
je 0x140103520
mov rax, qword [r12 + 0x308]
mov rcx, r12
mov qword [rsp + 0xd8], rax
mov rax, qword [rax + 0x10]
mov qword [r12 + 0x308], rax
mov rdx, qword [rsp + 0xd8]
call fcn.1400da6b0
dec dword [r12 + 0x310]
mov r10, qword [rsp + 0xd0]
cmp qword [r12 + 0x308], r10
jne 0x1401034d3
mov edi, dword [rsp + 0xb0]
cmp edi, 1
jne 0x140103568
mov rax, qword [r10 + 0x10]
mov rcx, r12
mov qword [r12 + 0x308], rax
mov rdx, qword [rsp + 0xd0]
call fcn.1400da6b0
mov rdi, qword [rsp + 0x58]
mov ecx, dword [rsp + 0x40]
test esi, esi
mov rsi, qword [rsp + 0x68]
mov r8d, 4
jne 0x140106f5a
dec dword [rsi + 0x310]
jmp 0x140106f5a
mov rsi, qword [rsp + 0x68]
mov rax, qword [r10 + 8]
mov rdi, qword [rsp + 0x58]
mov qword [rsi + 0x320], rax
jmp 0x140106f50
cmp edi, 2
mov rdi, qword [rsp + 0x58]
lea rax, str.rollback
lea r9, str.release
lea r8, str.cannot__s_savepoint___SQL_statements_in_progress
lea rcx, [rdi + 0x98]
cmove r9, rax
mov rdx, rsi
call fcn.1400dabc0
mov eax, 5
mov r13d, eax
mov dword [rsp + 0x44], eax
jmp 0x140106f50
mov edx, dword [rbp + r12*8 + 4]
mov dword [rsp + 0xb0], edx
mov ecx, dword [rbp + r12*8 + 8]
mov dword [rsp + 0xb4], ecx
test edx, edx
je 0x140103636
cmp byte [rsi + 0x28], 0
jne 0x140103636
mov ebx, 1
mov dword [rsp + 0xb8], ebx
test ecx, ecx
je 0x140103624
cmp dword [rsi + 0xb0], ebx
jle 0x140103643
lea r8, str.cannot_rollback_transaction___SQL_statements_in_progress
lea rcx, [rdi + 0x98]
mov rdx, rsi
call fcn.1400dabc0
mov eax, 5
mov r13d, eax
mov dword [rsp + 0x44], eax
jmp 0x140106f50
cmp dword [rsi + 0xb4], 0
jle 0x140103643
lea r8, str.cannot_commit_transaction___SQL_statements_in_progress
jmp 0x140103604
mov dword [rsp + 0xb8], r15d
mov ebx, 1
movzx eax, byte [rsi + 0x28]
cmp edx, eax
jne 0x140107214
test edx, edx
jne 0x14010365c
lea r8, str.cannot_start_a_transaction_within_a_transaction
jmp 0x140103670
lea r8, str.cannot_commit___no_transaction_is_active
lea rax, str.cannot_rollback___no_transaction_is_active
test ecx, ecx
cmovne r8, rax
lea rcx, [rdi + 0x98]
mov rdx, rsi
call fcn.1400dabc0
mov r13d, ebx
mov dword [rsp + 0x44], ebx
jmp 0x140106f50
movsxd rcx, dword [rbp + r12*8 + 4]
mov rax, qword [rsi + 0x10]
shl rcx, 5
mov rcx, qword [rcx + rax + 8]
mov qword [rsp + 0xb0], rcx
test rcx, rcx
je case.0x140100cc5.17
mov edx, dword [rbp + r12*8 + 8]
call fcn.1400ed830
mov r13d, eax
mov dword [rsp + 0x44], eax
cmp eax, 5
je 0x1401072b8
test eax, eax
jne 0x140107302
cmp dword [rbp + r12*8 + 8], eax
je 0x140106f50
cmp byte [rdi + 0xa6], al
je 0x140106f50
cmp byte [rsi + 0x28], al
je 0x1401036f9
cmp dword [rsi + 0xb0], 1
jle 0x140106f50
cmp dword [rdi + 0x150], 0
jne 0x14010371a
inc dword [rsi + 0x314]
mov ecx, dword [rsi + 0x314]
add ecx, dword [rsi + 0x310]
mov dword [rdi + 0x150], ecx
mov rsi, qword [rsp + 0xb0]
mov edi, dword [rdi + 0x150]
mov rbx, qword [rsi + 8]
mov rcx, rsi
call fcn.1400ea620
mov rcx, qword [rbx]
mov edx, edi
call fcn.1400e7410
cmp byte [rsi + 0x11], 0
mov r13d, eax
mov dword [rsp + 0x44], eax
je 0x140103768
add dword [rsi + 0x14], 0xffffffff
jne 0x140103768
mov rax, qword [rsi + 8]
mov rcx, qword [rax + 0x50]
test rcx, rcx
je 0x140103764
call qword [0x14025a298]
mov byte [rsi + 0x12], 0
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x58]
mov rax, qword [rsi + 0x320]
mov qword [rdi + 0x148], rax
jmp 0x140106f50
movsxd rax, dword [rbp + r12*8 + 4]
lea r8, [rsp + 0xb0]
mov dword [rsp + 0xb4], eax
mov edx, dword [rbp + r12*8 + 0xc]
shl rax, 5
mov dword [rsp + 0xb8], edx
mov rcx, qword [rsi + 0x10]
mov rcx, qword [rax + rcx + 8]
call fcn.1400f5b00
movsxd r11, dword [rsp + 0xb0]
mov qword [r14], r11
jmp 0x140106f50
movsxd rax, dword [rbp + r12*8 + 4]
shl rax, 5
add rax, qword [rsi + 0x10]
mov qword [rsp + 0xb0], rax
movsxd rbx, dword [rbp + r12*8 + 0xc]
imul rbx, rbx, 0x38
add rbx, qword [rsp + 0x50]
mov rcx, rbx
call fcn.1400f9230
mov qword [rbx], rax
mov r8d, dword [rbx]
mov eax, 0xbf04
and word [rbx + 0x24], ax
or word [rbx + 0x24], 4
mov rcx, qword [rsp + 0xb0]
mov rcx, qword [rcx + 8]
mov edx, dword [rbp + r12*8 + 8]
call fcn.1400f5ba0
mov r13d, eax
mov dword [rsp + 0x44], eax
mov eax, dword [rbp + r12*8 + 8]
cmp eax, 1
jne 0x140103847
mov rax, qword [rsp + 0xb0]
mov rcx, qword [rax + 0x18]
mov eax, dword [rbx]
mov dword [rcx], eax
mov eax, 0x200
or dword [rsi + 0x18], eax
jmp 0x14010385e
cmp eax, 2
jne 0x14010385e
mov rax, qword [rsp + 0xb0]
mov rcx, qword [rax + 0x18]
movzx eax, byte [rbx]
mov byte [rcx + 0x70], al
cmp dword [rbp + r12*8 + 4], 1
jne 0x140106f50
mov rax, qword [rsi + 0xa8]
test rax, rax
je 0x140103890
nop word [rax + rax]
mov byte [rax + 0xa2], 1
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x140103880
mov byte [rdi + 0xa2], 0
jmp 0x140106f50
movsxd rcx, dword [rbp + r12*8 + 4]
mov rax, qword [rsi + 0x10]
shl rcx, 5
mov rcx, qword [rcx + rax + 8]
mov qword [rsp + 0xb8], rcx
test rcx, rcx
je 0x1401038dd
lea r8, [rsp + 0xb0]
mov edx, 1
call fcn.1400f5b00
mov r11d, dword [rsp + 0xb0]
mov r8d, 4
jmp 0x1401038e8
mov r11d, r15d
mov dword [rsp + 0xb0], r15d
cmp r11d, dword [rbp + r12*8 + 8]
je case.0x140100cc5.17
mov rdx, qword [rdi + 0x98]
mov rcx, rsi
call fcn.1400da6b0
lea rdx, str.database_schema_has_changed
mov rcx, rsi
call fcn.1400daaf0
mov qword [rdi + 0x98], rax
mov rax, qword [rsi + 0x10]
movsxd rdx, dword [rbp + r12*8 + 4]
mov rcx, rdx
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov eax, dword [rsp + 0xb0]
cmp dword [rcx], eax
je 0x140103940
mov rcx, rsi
call fcn.140115650
mov rax, qword [rsi + 0xa8]
test rax, rax
je 0x140103960
nop dword [rax]
mov byte [rax + 0xa2], 1
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x140103950
mov r13d, 0x11
mov dword [rsp + 0x44], r13d
jmp 0x140106f50
cmp byte [rdi + 0xa2], 0
je 0x140103986
mov r13d, r8d
mov dword [rsp + 0x44], r8d
jmp case.0x140100cc5.17
mov dword [rsp + 0xb0], r15d
mov qword [rsp + 0xb8], r15
movsxd rdx, dword [rbp + r12*8 + 8]
mov dword [rsp + 0xc0], edx
movsxd r9, dword [rbp + r12*8 + 0xc]
mov r8d, r15d
mov dword [rsp + 0xc4], r9d
mov rcx, r9
shl rcx, 5
add rcx, qword [rsi + 0x10]
mov qword [rsp + 0xe0], rcx
mov rax, qword [rcx + 8]
mov qword [rsp + 0xd0], rax
cmp byte [rbp + r12*8], 0x27
jne 0x1401039fc
mov dword [rsp + 0xc8], 1
mov rax, qword [rcx + 0x18]
movzx ecx, byte [rax + 0x70]
cmp cl, byte [rdi + 0xa4]
jae 0x140103a04
mov byte [rdi + 0xa4], cl
jmp 0x140103a04
mov dword [rsp + 0xc8], r15d
cmp byte [rbp + r12*8 + 3], 0
je 0x140103a53
mov rbx, rdx
imul rbx, rbx, 0x38
add rbx, qword [rsp + 0x50]
mov rcx, rbx
call fcn.1400f9230
mov qword [rbx], rax
mov eax, 0xbf04
and word [rbx + 0x24], ax
mov eax, dword [rbx]
or word [rbx + 0x24], 4
cmp eax, 2
mov dword [rsp + 0xc0], eax
jl 0x1401072d4
mov r9d, dword [rsp + 0xc4]
mov r8d, dword [rsp + 0xb0]
movzx eax, byte [rbp + r12*8 + 1]
cmp al, 0xfa
jne 0x140103a96
mov rax, qword [rdi]
mov rdx, qword [rbp + r12*8 + 0x10]
mov qword [rsp + 0xb8], rdx
mov rcx, qword [rax + 0x10]
mov rax, qword [rcx + 0x18]
movzx ecx, byte [rax + 0x71]
mov byte [rdx + 8], cl
mov rax, qword [rsp + 0xb8]
mov r9d, dword [rsp + 0xc4]
movzx r8d, word [rax + 0xa]
inc r8d
jmp 0x140103a9f
cmp al, 0xf2
jne 0x140103aa7
mov r8d, dword [rbp + r12*8 + 0x10]
mov dword [rsp + 0xb0], r8d
mov edx, dword [rbp + r12*8 + 4]
mov rcx, rdi
mov dword [rsp + 0x20], 1
call fcn.140100760
mov qword [rsp + 0xd8], rax
test rax, rax
je 0x1401013ed
mov byte [rax + 0x1c], 1
mov rax, qword [rsp + 0xd8]
mov r9, qword [rsp + 0xb8]
mov rcx, qword [rax]
mov r8d, dword [rsp + 0xc8]
mov edx, dword [rsp + 0xc0]
mov qword [rsp + 0x20], rcx
mov rcx, qword [rsp + 0xd0]
call fcn.1400ef410
mov rcx, qword [rsp + 0xb8]
mov r13d, eax
mov dword [rsp + 0x44], eax
mov rax, qword [rsp + 0xd8]
mov qword [rax + 0x38], rcx
cmp r13d, 0x10
jne 0x140103b39
mov rax, qword [rsp + 0xd8]
mov r13d, r15d
mov dword [rsp + 0x44], r15d
mov qword [rax], r15
cmp byte [rbp + r12*8 + 1], 0xfa
mov rax, qword [rsp + 0xd8]
setne cl
mov byte [rax + 0x1e], cl
mov rax, qword [rsp + 0xd8]
test cl, cl
sete cl
mov byte [rax + 0x1f], cl
jmp 0x140106f50
mov r8d, dword [rbp + r12*8 + 8]
mov edx, dword [rbp + r12*8 + 4]
mov ebx, 1
or r9d, 0xffffffff
mov rcx, rdi
mov dword [rsp + 0x20], ebx
call fcn.140100760
mov qword [rsp + 0xb0], rax
test rax, rax
je 0x1401013ed
mov byte [rax + 0x1c], bl
bt dword [rsi + 0x18], 0x11
mov rdi, qword [rsp + 0xb0]
mov eax, 3
mov r9d, ebx
lea rcx, str.:memory:
cmovb r9d, eax
cmp byte [rsi + 0x29], 2
lea r8, [rdi + 0x28]
mov rdx, rsi
cmovne rcx, r15
mov dword [rsp + 0x20], 0x41e
call fcn.1400ec680
mov r13d, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140103c29
mov rbx, qword [rdi + 0x28]
mov rcx, rbx
mov rsi, qword [rbx + 8]
call fcn.1400ea620
cmp byte [rbx + 0x11], r13b
je 0x140103c0f
add dword [rbx + 0x14], 0xffffffff
jne 0x140103c0f
mov rax, qword [rbx + 8]
mov rcx, qword [rax + 0x50]
test rcx, rcx
je 0x140103c0b
call qword [0x14025a298]
mov byte [rbx + 0x12], 0
cmp qword [rsi + 0x40], 0
jne 0x140103c24
mov rcx, qword [rdi + 0x28]
mov edx, 0x1f4
call fcn.1400ecf20
mov ebx, 1
test r13d, r13d
jne 0x140103e5b
mov rcx, qword [rsp + 0xb0]
mov edx, ebx
mov rcx, qword [rcx + 0x28]
call fcn.1400ed830
mov r13d, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140103e5b
cmp qword [rbp + r12*8 + 0x10], 0
mov rax, qword [rsp + 0xb0]
je 0x140103dac
mov rbx, qword [rax + 0x28]
mov rcx, rbx
call fcn.1400ea620
lea r8d, [r13 + 2]
lea rdx, [rsp + 0x90]
mov rcx, rbx
call fcn.1400f4bd0
cmp byte [rbx + 0x11], 0
mov r13d, eax
mov dword [rsp + 0x44], eax
je 0x140103cb2
add dword [rbx + 0x14], 0xffffffff
jne 0x140103cb2
mov rax, qword [rbx + 8]
mov rcx, qword [rax + 0x50]
test rcx, rcx
je 0x140103cae
call qword [0x14025a298]
mov byte [rbx + 0x12], 0
test r13d, r13d
jne 0x140103d9b
mov rax, qword [rsp + 0xb0]
mov rsi, qword [rbp + r12*8 + 0x10]
mov rdi, qword [rax + 0x28]
mov rbx, qword [rax]
mov rcx, rdi
call fcn.1400ea620
mov rax, qword [rdi + 8]
cmp byte [rax + 0x20], r13b
je 0x140103cef
mov eax, 8
mov r13d, eax
mov dword [rsp + 0x44], eax
jmp 0x140103d50
mov ecx, dword [rsp + 0x90]
cmp ecx, 1
jne 0x140103d0f
cmp dword [rax + 0x3c], 0
jne 0x140103d0f
mov eax, 0x10
mov r13d, eax
mov dword [rsp + 0x44], eax
jmp 0x140103d50
mov dword [rbx + 0x28], ecx
or ecx, 0xffffffff
mov qword [rbx + 0x20], rsi
mov qword [rbx], rdi
mov qword [rbx + 8], rax
mov byte [rbx + 0x58], 1
mov word [rbx + 0x80], cx
mov rcx, qword [rax + 0x10]
mov qword [rbx + 0x10], rcx
test rcx, rcx
je 0x140103d3c
mov qword [rcx + 0x18], rbx
mov qword [rax + 0x10], rbx
mov r13d, r15d
mov dword [rsp + 0x44], r15d
mov byte [rbx + 0x5b], 0
mov qword [rbx + 0x30], r15
cmp byte [rdi + 0x11], 0
je 0x140103d73
add dword [rdi + 0x14], 0xffffffff
jne 0x140103d73
mov rax, qword [rdi + 8]
mov rcx, qword [rax + 0x50]
test rcx, rcx
je 0x140103d6f
call qword [0x14025a298]
mov byte [rdi + 0x12], 0
mov rax, qword [rsp + 0xb0]
mov rdx, qword [rbp + r12*8 + 0x10]
mov qword [rax + 0x38], rdx
mov rax, qword [rsp + 0x58]
mov rax, qword [rax]
mov rcx, qword [rax + 0x10]
mov rax, qword [rcx + 0x18]
movzx eax, byte [rax + 0x71]
mov byte [rdx + 8], al
mov rax, qword [rsp + 0xb0]
mov byte [rax + 0x1e], 0
jmp 0x140103e5b
mov rdi, qword [rax + 0x28]
mov rbx, qword [rax]
mov rcx, rdi
call fcn.1400ea620
mov rax, qword [rdi + 8]
cmp byte [rax + 0x20], 0
je 0x140103dd3
mov eax, 8
mov r13d, eax
mov dword [rsp + 0x44], eax
jmp 0x140103e2c
cmp dword [rax + 0x3c], 0
jne 0x140103de7
mov eax, 0x10
mov r13d, eax
mov dword [rsp + 0x44], eax
jmp 0x140103e2c
or ecx, 0xffffffff
mov dword [rbx + 0x28], 1
mov qword [rbx + 0x20], r15
mov qword [rbx], rdi
mov qword [rbx + 8], rax
mov byte [rbx + 0x58], 1
mov word [rbx + 0x80], cx
mov rcx, qword [rax + 0x10]
mov qword [rbx + 0x10], rcx
test rcx, rcx
je 0x140103e18
mov qword [rcx + 0x18], rbx
mov qword [rax + 0x10], rbx
mov r13d, r15d
mov dword [rsp + 0x44], r15d
mov byte [rbx + 0x5b], 0
mov qword [rbx + 0x30], r15
cmp byte [rdi + 0x11], 0
je 0x140103e4f
add dword [rdi + 0x14], 0xffffffff
jne 0x140103e4f
mov rax, qword [rdi + 8]
mov rcx, qword [rax + 0x50]
test rcx, rcx
je 0x140103e4b
call qword [0x14025a298]
mov byte [rdi + 0x12], 0
mov rax, qword [rsp + 0xb0]
mov byte [rax + 0x1e], 1
mov rcx, qword [rsp + 0xb0]
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x58]
cmp byte [rcx + 0x1e], 0
sete al
mov byte [rcx + 0x1f], al
jmp 0x140106f50
mov r8d, dword [rbp + r12*8 + 0xc]
mov edx, dword [rbp + r12*8 + 4]
or r9d, 0xffffffff
mov rcx, rdi
mov dword [rsp + 0x20], r15d
call fcn.140100760
mov qword [rsp + 0xb0], rax
test rax, rax
je 0x1401013ed
mov byte [rax + 0x1c], 1
mov rax, qword [rsp + 0xb0]
mov ecx, dword [rbp + r12*8 + 8]
mov dword [rax + 0x30], ecx
mov rax, qword [rsp + 0xb0]
mov byte [rax + 0x1e], 1
mov rax, qword [rsp + 0xb0]
mov byte [rax + 0x1f], 0
jmp 0x140106f50
movsxd rax, dword [rbp + r12*8 + 4]
mov rdx, qword [rdi + 0x58]
mov rcx, rdi
mov rdx, qword [rdx + rax*8]
call fcn.1400fbec0
movsxd r11, dword [rbp + r12*8 + 4]
mov rax, qword [rdi + 0x58]
mov qword [rax + r11*8], r15
jmp 0x140106f50
movsxd rcx, dword [rbp + r12*8 + 4]
mov rax, qword [rdi + 0x58]
mov rdx, qword [rax + rcx*8]
mov qword [rsp + 0xb8], rdx
cmp qword [rdx], 0
je 0x140100cd5
movzx eax, byte [rbp + r12*8]
mov dword [rsp + 0xb4], eax
mov byte [rdx + 0x1c], 0
mov r10, qword [rsp + 0xb8]
cmp byte [r10 + 0x1e], 0
je 0x1401041a9
movsxd rbx, dword [rbp + r12*8 + 0xc]
imul rbx, rbx, 0x38
add rbx, qword [rsp + 0x50]
mov rcx, rbx
call fcn.1401008b0
mov rcx, rbx
call fcn.1400f9230
mov qword [rsp + 0xe8], rax
mov rax, qword [rsp + 0xb8]
mov byte [rax + 0x19], 0
movzx eax, word [rbx + 0x24]
test al, 4
jne 0x14010413e
test al, 8
jne 0x140103f97
mov ecx, dword [rbp + r12*8 + 8]
mov r8d, 4
dec ecx
jmp 0x140106f5a
mov r8, qword [rsp + 0xe8]
movabs rax, 0x8000000000000000
cmp r8, rax
jne 0x1401040ef
movsd xmm1, qword [rbx + 8]
pxor xmm0, xmm0
cvtsi2sd xmm0, rax
comisd xmm0, xmm1
ja 0x140103fd0
comisd xmm1, xmm6
jbe 0x1401040ef
mov dword [rsp + 0xb0], 1
comisd xmm6, xmmword [rbx + 8]
jbe 0x140104043
cmp dword [rsp + 0xb4], 0x2e
jl 0x1401040dd
mov rax, qword [rsp + 0xb8]
mov rbx, qword [rax]
mov rcx, rbx
call fcn.1400f0030
mov r13d, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x1401040c6
cmp byte [rbx + 0x5b], al
jne 0x140104027
mov dword [rsp + 0xb0], 1
jmp 0x1401040c6
mov rcx, rbx
mov dword [rsp + 0xb0], r15d
call fcn.1400f0210
mov r13d, eax
mov dword [rsp + 0x44], eax
jmp 0x1401040c6
cmp dword [rsp + 0xb4], 0x2d
jg 0x1401040dd
mov rax, qword [rsp + 0xb8]
mov rbx, qword [rax]
cmp byte [rbx + 0x5b], 1
jne 0x140104082
cmp byte [rbx + 0x59], 0
je 0x140104082
mov ecx, dword [rbp + r12*8 + 8]
mov r13d, r15d
mov dword [rsp + 0x44], r15d
dec ecx
mov r8d, 4
jmp 0x140106f5a
mov rcx, rbx
call fcn.1400f0030
mov r13d, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x1401040c6
cmp byte [rbx + 0x5b], al
jne 0x1401040a7
mov dword [rsp + 0xb0], 1
jmp 0x1401040c6
mov rcx, rbx
mov dword [rsp + 0xb0], r15d
call fcn.1400f02c0
test eax, eax
mov r13d, eax
mov dword [rsp + 0x44], eax
sete al
mov byte [rbx + 0x59], al
test r13d, r13d
jne 0x140107302
cmp dword [rsp + 0xb0], r13d
je 0x140106f50
mov ecx, dword [rbp + r12*8 + 8]
mov r8d, 4
dec ecx
jmp 0x140106f5a
mov eax, dword [rsp + 0xb4]
cmp eax, 0x2c
je 0x14010411d
cmp eax, 0x2e
je 0x14010411d
pxor xmm0, xmm0
cvtsi2sd xmm0, r8
comisd xmm0, xmmword [rbx + 8]
jbe 0x140104146
dec r8
mov qword [rsp + 0xe8], r8
jmp 0x140104146
movsd xmm0, qword [rbx + 8]
pxor xmm1, xmm1
cvtsi2sd xmm1, r8
comisd xmm0, xmm1
jbe 0x140104146
inc r8
mov qword [rsp + 0xe8], r8
jmp 0x140104146
mov r8, qword [rsp + 0xe8]
mov rcx, qword [rsp + 0xb8]
lea rax, [rsp + 0xb0]
xor r9d, r9d
mov rcx, qword [rcx]
xor edx, edx
mov qword [rsp + 0x20], rax
call fcn.1400f0380
mov r13d, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140107302
cmp dword [rsp + 0xb0], eax
jne 0x140104255
mov rax, qword [rsp + 0xb8]
mov byte [rax + 0x19], 1
mov rcx, qword [rsp + 0xb8]
mov rax, qword [rsp + 0xe8]
mov qword [rcx + 0x10], rax
jmp 0x140104255
mov eax, dword [rbp + r12*8 + 0x10]
mov dword [rsp + 0xe0], eax
mov rax, qword [r10 + 0x38]
mov qword [rsp + 0xc0], rax
movzx eax, word [rsp + 0xe0]
mov word [rsp + 0xc8], ax
movzx eax, word [rsp + 0xb4]
and ax, 1
shl ax, 3
mov word [rsp + 0xca], ax
movsxd rcx, dword [rbp + r12*8 + 0xc]
mov eax, 0x4000
imul rcx, rcx, 0x38
add rcx, qword [rsp + 0x50]
mov qword [rsp + 0xd8], rcx
test word [rcx + 0x24], ax
je 0x140104217
call fcn.1400f8ed0
mov r10, qword [rsp + 0xb8]
mov rcx, qword [r10]
lea rax, [rsp + 0xb0]
lea rdx, [rsp + 0xc0]
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x20], rax
call fcn.1400f0380
mov r13d, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140107302
mov rax, qword [rsp + 0xb8]
mov byte [rax + 0x19], r13b
mov rax, qword [rsp + 0xb8]
mov byte [rax + 0x1d], 0
mov rax, qword [rsp + 0xb8]
mov dword [rax + 0x64], r15d
mov ecx, dword [rsp + 0xb4]
mov eax, dword [rsp + 0xb0]
cmp ecx, 0x2e
jl 0x1401042b2
test eax, eax
js 0x140104298
jne 0x14010428b
cmp ecx, 0x2f
je 0x140104298
mov dword [rsp + 0xb0], r15d
jmp 0x140106f50
mov rcx, qword [rsp + 0xb8]
lea rdx, [rsp + 0xb0]
mov rcx, qword [rcx]
call fcn.1400f0820
jmp 0x1401042f3
test eax, eax
jg 0x1401042db
jne 0x1401042bd
cmp ecx, 0x2c
je 0x1401042db
mov rax, qword [rsp + 0xb8]
mov rcx, qword [rax]
mov eax, r15d
cmp byte [rcx + 0x5b], 1
setne al
mov dword [rsp + 0xb0], eax
jmp 0x14010430e
mov rcx, qword [rsp + 0xb8]
lea rdx, [rsp + 0xb0]
mov rcx, qword [rcx]
call fcn.1400f09b0
mov dword [rsp + 0x44], eax
mov r13d, eax
test eax, eax
jne 0x140107302
mov rax, qword [rsp + 0xb8]
mov byte [rax + 0x19], 0
cmp dword [rsp + 0xb0], 0
mov r8d, 4
je case.0x140100cc5.17
mov ecx, dword [rbp + r12*8 + 8]
dec ecx
jmp 0x140106f5a
movsxd rcx, dword [rbp + r12*8 + 4]
mov rax, qword [rdi + 0x58]
mov rdx, qword [rax + rcx*8]
mov qword [rsp + 0xb0], rdx
cmp qword [rdx], 0
je case.0x140100cc5.17
mov byte [rdx + 0x1c], 0
movsxd rcx, dword [rbp + r12*8 + 8]
imul rcx, rcx, 0x38
add rcx, qword [rsp + 0x50]
call fcn.1400f9230
mov rcx, qword [rsp + 0xb0]
mov qword [rcx + 0x20], rax
mov rax, qword [rsp + 0xb0]
mov byte [rax + 0x19], 0
mov rax, qword [rsp + 0xb0]
mov byte [rax + 0x1d], 1
jmp 0x140106f50
mov rax, qword [rdi + 0x58]
mov edx, r15d
mov dword [rsp + 0xb0], edx
movsxd rcx, dword [rbp + r12*8 + 4]
mov rcx, qword [rax + rcx*8]
mov qword [rsp + 0xb8], rcx
movsxd rbx, dword [rbp + r12*8 + 0xc]
imul rbx, rbx, 0x38
add rbx, qword [rsp + 0x50]
cmp qword [rcx], 0
je 0x1401044e8
cmp dword [rbp + r12*8 + 0x10], 0
jle 0x14010440d
mov rax, qword [rcx + 0x38]
lea rdx, [rsp + 0xd0]
mov qword [rsp + 0xd0], rax
movzx eax, word [rbp + r12*8 + 0x10]
mov qword [rsp + 0xe8], rbx
mov word [rsp + 0xd8], ax
mov eax, 0x10
mov qword [rsp + 0xc8], rdx
mov word [rsp + 0xda], ax
jmp 0x14010446e
mov eax, 0x4000
test word [rbx + 0x24], ax
je 0x140104428
mov rcx, rbx
call fcn.1400f8ed0
mov rcx, qword [rsp + 0xb8]
mov r8, qword [rbx + 0x18]
mov edx, dword [rbx + 0x20]
mov rcx, qword [rcx + 0x38]
lea r9, [rsp + 0xf0]
mov dword [rsp + 0x20], 0xcf
call fcn.1400fd5e0
mov qword [rsp + 0xc8], rax
test rax, rax
je 0x1401013ed
or word [rax + 0xa], 0x10
mov rdx, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0xb8]
mov rcx, qword [rcx]
lea rax, [rsp + 0xc0]
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x20], rax
call fcn.1400f0380
cmp dword [rbp + r12*8 + 0x10], 0
mov r13d, eax
mov dword [rsp + 0x44], eax
jne 0x1401044a5
mov rcx, qword [rsp + 0xc8]
call fcn.1400fd830
mov r8d, 4
test r13d, r13d
jne case.0x140100cc5.17
cmp dword [rsp + 0xc0], r13d
mov eax, r15d
sete al
mov dword [rsp + 0xb0], eax
mov rax, qword [rsp + 0xb8]
mov byte [rax + 0x1d], r13b
mov rax, qword [rsp + 0xb8]
mov dword [rax + 0x64], r15d
mov edx, dword [rsp + 0xb0]
cmp byte [rbp + r12*8], 0x32
jne 0x140104504
test edx, edx
je case.0x140100cc5.17
mov ecx, dword [rbp + r12*8 + 8]
dec ecx
jmp 0x140106f5a
test edx, edx
jne case.0x140100cc5.17
mov ecx, dword [rbp + r12*8 + 8]
dec ecx
jmp 0x140106f5a
movsxd rax, dword [rbp + r12*8 + 0x10]
movsxd rbx, dword [rbp + r12*8 + 0xc]
mov r11, qword [rsp + 0x50]
imul rax, rax, 0x38
imul rbx, rbx, 0x38
add rax, r11
add rbx, r11
mov qword [rsp + 0xd0], rax
movsxd rcx, dword [rbp + r12*8 + 4]
mov rax, qword [rdi + 0x58]
mov rdx, qword [rax + rcx*8]
movzx ecx, r15w
mov qword [rsp + 0xb8], rdx
mov dword [rdx + 0x60], r15d
mov rax, qword [rsp + 0xb8]
mov dword [rax + 0x64], r15d
mov r10, qword [rsp + 0xb8]
mov r8, qword [rsp + 0xd0]
mov r9, qword [r10]
mov qword [rsp + 0xc0], r9
mov rax, qword [r10 + 0x38]
movzx edx, word [rax + 0xa]
mov word [rsp + 0xb0], cx
mov word [rsp + 0xc8], dx
cmp r15w, dx
jae 0x1401045c3
nop
movzx eax, cx
imul rax, rax, 0x38
test byte [rax + r8 + 0x24], 1
jne 0x140104678
inc cx
mov word [rsp + 0xb0], cx
cmp cx, dx
jb 0x1401045a0
test r9, r9
je 0x140106f50
mov rax, qword [r10 + 0x38]
inc dx
mov rcx, rbx
mov qword [rsp + 0xd8], rax
mov eax, 0x20
mov word [rsp + 0xe0], dx
mov word [rsp + 0xe2], ax
mov qword [rsp + 0xf0], r8
call fcn.1400f9230
mov qword [rbx], rax
mov ecx, 0xbf04
lea rdx, [rsp + 0xd8]
and word [rbx + 0x24], cx
or word [rbx + 0x24], 4
mov rcx, qword [rsp + 0xc0]
mov qword [rsp + 0xf8], rax
mov rax, qword [rsp + 0xb8]
xor r9d, r9d
add rax, 0x60
xor r8d, r8d
mov qword [rsp + 0x20], rax
call fcn.1400f0380
test byte [rsp + 0xe2], 0x20
mov r13d, eax
mov dword [rsp + 0x44], eax
jne 0x140103f85
mov rax, qword [rsp + 0xe8]
cmp rax, qword [rsp + 0xf8]
je 0x140103f85
mov qword [rbx], rax
jmp 0x140106f50
mov ecx, dword [rbp + r12*8 + 8]
mov r8d, 4
mov qword [rsp + 0xc0], r15
dec ecx
jmp 0x140106f5a
movsxd rcx, dword [rbp + r12*8 + 4]
movsxd rbx, dword [rbp + r12*8 + 0xc]
mov rax, qword [rdi + 0x58]
imul rbx, rbx, 0x38
mov rdx, qword [rax + rcx*8]
add rbx, qword [rsp + 0x50]
mov qword [rsp + 0xb0], rdx
mov rcx, qword [rdx]
mov qword [rsp + 0xb8], rcx
test rcx, rcx
je 0x140104769
mov dword [rsp + 0xc0], r15d
mov r8, qword [rbx]
lea rax, [rsp + 0xc0]
xor r9d, r9d
xor edx, edx
mov qword [rsp + 0x20], rax
mov qword [rsp + 0xc8], r8
call fcn.1400f0380
mov rcx, qword [rbx]
mov r13d, eax
mov dword [rsp + 0x44], eax
mov rax, qword [rsp + 0xb0]
mov qword [rax + 0x10], rcx
cmp dword [rsp + 0xc0], 0
mov rax, qword [rsp + 0xb0]
sete cl
mov byte [rax + 0x19], cl
mov rax, qword [rsp + 0xb0]
mov byte [rax + 0x1c], 0
mov rax, qword [rsp + 0xb0]
mov dword [rax + 0x64], r15d
mov rax, qword [rsp + 0xb0]
mov byte [rax + 0x1d], 0
mov ecx, dword [rsp + 0xc0]
test ecx, ecx
je 0x140104759
mov eax, dword [rbp + r12*8 + 8]
dec eax
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0xb0]
mov dword [rax + 0x60], ecx
jmp 0x140106f50
mov ecx, dword [rbp + r12*8 + 8]
mov dword [rdx + 0x60], r15d
dec ecx
jmp 0x140106f5a
mov rax, qword [rdi + 0x58]
movsxd rcx, dword [rbp + r12*8 + 4]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x48]
mov qword [r14], rax
movsxd rcx, dword [rbp + r12*8 + 4]
mov rax, qword [rdi + 0x58]
mov rdx, qword [rax + rcx*8]
inc qword [rdx + 0x48]
jmp case.0x140100cc5.17
mov rax, qword [rdi + 0x58]
mov dword [rsp + 0xc0], r15d
mov rdx, r15
mov qword [rsp + 0xb0], rdx
movsxd rcx, dword [rbp + r12*8 + 4]
mov rbx, qword [rax + rcx*8]
mov qword [rsp + 0xb8], rbx
cmp qword [rbx], 0
je 0x140104b64
mov dword [rsp + 0xc4], r15d
cmp byte [rbx + 0x1b], 0
jne 0x1401049fa
mov rax, qword [rbx]
mov rcx, qword [rax + 0x30]
mov qword [rsp + 0xb0], rcx
test rcx, rcx
jne 0x140104871
mov rbx, qword [rbx]
cmp byte [rbx + 0x5b], 1
jne 0x14010480d
cmp byte [rbx + 0x59], cl
jne 0x1401048d3
mov rcx, rbx
call fcn.1400f0030
mov r13d, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140104851
cmp byte [rbx + 0x5b], al
jne 0x140104832
mov dword [rsp + 0xc0], 1
jmp 0x140104851
mov rcx, rbx
mov dword [rsp + 0xc0], r15d
call fcn.1400f02c0
test eax, eax
mov r13d, eax
mov dword [rsp + 0x44], eax
sete al
mov byte [rbx + 0x59], al
test r13d, r13d
jne 0x140107302
cmp dword [rsp + 0xc0], r13d
je 0x1401048d3
mov ecx, 1
mov qword [rsp + 0xb0], rcx
movabs r8, 0x7fffffffffffffff
movsxd rdx, dword [rbp + r12*8 + 0xc]
test edx, edx
je 0x1401049c0
mov rax, qword [rdi + 0x158]
test rax, rax
je 0x14010493d
mov qword [rsp + 0xd0], rax
mov rcx, qword [rax + 0x60]
test rcx, rcx
je 0x1401048c4
nop dword [rax]
mov rax, rcx
mov qword [rsp + 0xd0], rcx
mov rcx, qword [rcx + 0x60]
test rcx, rcx
jne 0x1401048b0
movsxd rbx, dword [rbp + r12*8 + 0xc]
imul rbx, rbx, 0x38
add rbx, qword [rax + 0x20]
jmp 0x140104949
mov rax, qword [rsp + 0xb8]
mov rbx, qword [rax]
cmp byte [rbx + 0x5b], 1
je 0x1401048e9
mov rcx, r15
jmp 0x1401048f5
mov rcx, rbx
call fcn.1400ef640
mov rcx, qword [rbx + 0x40]
movabs r8, 0x7fffffffffffffff
mov qword [rsp + 0xb0], rcx
mov r13d, r15d
mov dword [rsp + 0x44], r15d
cmp rcx, r8
jne 0x14010492d
mov rax, qword [rsp + 0xb8]
mov byte [rax + 0x1b], 1
mov rcx, qword [rsp + 0xb0]
jmp 0x14010487b
inc rcx
mov qword [rsp + 0xb0], rcx
jmp 0x14010487b
mov rbx, rdx
imul rbx, rbx, 0x38
add rbx, qword [rsp + 0x50]
mov rcx, rbx
mov qword [rsp + 0xc8], rbx
call fcn.1400f9230
movabs r8, 0x7fffffffffffffff
mov qword [rbx], rax
mov eax, 0xbf04
and word [rbx + 0x24], ax
or word [rbx + 0x24], 4
mov rdx, qword [rsp + 0xc8]
mov rcx, qword [rdx]
cmp rcx, r8
je 0x140104b1d
mov rax, qword [rsp + 0xb8]
cmp byte [rax + 0x1b], 0
jne 0x140104b1d
lea rax, [rcx + 1]
mov rcx, qword [rsp + 0xb0]
cmp rcx, rax
cmovl rcx, rax
mov qword [rsp + 0xb0], rcx
mov qword [rdx], rcx
mov rcx, qword [rsp + 0xb0]
cmp rcx, r8
lea rdx, [rcx + 1]
jl 0x1401049cc
mov rdx, r15
mov rax, qword [rsp + 0xb8]
mov r8, qword [rax]
mov rax, qword [r8 + 8]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x1401049fa
mov eax, dword [r8 + 0x28]
cmp dword [rcx + 0x28], eax
jne 0x1401049f1
mov qword [rcx + 0x30], rdx
mov rcx, qword [rcx + 0x10]
test rcx, rcx
jne 0x1401049e4
mov rax, qword [rsp + 0xb8]
cmp byte [rax + 0x1b], 0
je 0x140104b32
mov r8, qword [rsi + 0x40]
mov eax, r15d
mov qword [rsp + 0xb0], r8
mov dword [rsp + 0xc4], eax
test eax, eax
jne 0x140104a38
mov rax, r8
and eax, 0xffffff
cmp rax, r8
jne 0x140104a38
inc r8
jmp 0x140104aa7
cmp dword [0x14025a214], 0
mov ebx, 8
lea rdi, [rsp + 0xb0]
jne 0x140104a53
mov rsi, r15
jmp 0x140104a70
mov ecx, 5
call qword [0x14025a278]
mov rsi, rax
test rax, rax
je 0x140104a70
mov rcx, rax
call qword [0x14025a288]
nop
call fcn.1400dc520
inc rdi
sub ebx, 1
mov byte [rdi - 1], al
jne 0x140104a70
test rsi, rsi
je 0x140104a8e
mov rcx, rsi
call qword [0x14025a298]
cmp dword [rsp + 0xc4], 5
mov r8, qword [rsp + 0xb0]
jge 0x140104aaf
and r8d, 0xffffff
mov qword [rsp + 0xb0], r8
mov rcx, qword [rsp + 0xb8]
lea rax, [rsp + 0xc0]
xor r9d, r9d
mov rcx, qword [rcx]
xor edx, edx
mov qword [rsp + 0x20], rax
call fcn.1400f0380
mov ecx, dword [rsp + 0xc0]
mov r13d, eax
mov dword [rsp + 0x44], eax
mov eax, dword [rsp + 0xc4]
inc eax
cmp eax, 0x64
mov dword [rsp + 0xc4], eax
jge 0x140104b0a
test r13d, r13d
jne 0x140104b28
test ecx, ecx
jne 0x140104b0a
mov r8, qword [rsp + 0xb0]
jmp 0x140104a22
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x58]
test r13d, r13d
jne 0x140104b32
test ecx, ecx
jne 0x140104b32
mov r13d, ntohs
jmp 0x140107302
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x58]
mov rax, qword [rsp + 0xb8]
mov r8d, 4
mov byte [rax + 0x19], 0
mov rax, qword [rsp + 0xb8]
mov byte [rax + 0x1d], 0
mov rax, qword [rsp + 0xb8]
mov dword [rax + 0x64], r15d
mov rdx, qword [rsp + 0xb0]
mov qword [r14], rdx
jmp case.0x140100cc5.17
movsxd r9, dword [rbp + r12*8 + 8]
mov rax, qword [rdi + 0x58]
mov rbx, qword [rsp + 0x50]
imul r9, r9, 0x38
add r9, rbx
mov qword [rsp + 0xb0], r9
movsxd rcx, dword [rbp + r12*8 + 4]
mov r10, qword [rax + rcx*8]
mov qword [rsp + 0xc8], r10
cmp byte [rbp + r12*8], 0x37
movsxd rax, dword [rbp + r12*8 + 0xc]
jne 0x140104bb9
imul rax, rax, 0x38
add rax, rbx
mov qword [rsp + 0xb8], rax
mov rax, qword [rax]
mov qword [rsp + 0xc0], rax
test byte [rbp + r12*8 + 3], 1
je 0x140104bcf
inc dword [rdi + 0xac]
test byte [rbp + r12*8 + 3], 2
je 0x140104bf3
mov rax, qword [rsp + 0xc0]
mov qword [rsi + 0x40], rax
mov r10, qword [rsp + 0xc8]
mov r9, qword [rsp + 0xb0]
test byte [r9 + 0x24], 1
je 0x140104c1a
mov qword [r9 + 0x18], r15
mov rax, qword [rsp + 0xb0]
mov dword [rax + 0x20], r15d
mov r10, qword [rsp + 0xc8]
mov r9, qword [rsp + 0xb0]
test byte [rbp + r12*8 + 3], 0x10
je 0x140104c30
mov r8d, dword [r10 + 0x60]
mov dword [rsp + 0xd4], r8d
jmp 0x140104c3b
mov r8d, r15d
mov dword [rsp + 0xd4], r15d
mov eax, 0x4000
test word [r9 + 0x24], ax
je 0x140104c4c
mov edx, dword [r9]
jmp 0x140104c4f
mov edx, r15d
mov dword [rsp + 0xd0], edx
mov r11, qword [r10]
mov rax, qword [r11 + 8]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x140104c9b
mov eax, dword [r11 + 0x28]
cmp dword [rcx + 0x28], eax
jne 0x140104c73
mov qword [rcx + 0x30], r15
mov rcx, qword [rcx + 0x10]
test rcx, rcx
jne 0x140104c66
mov r8d, dword [rsp + 0xd4]
mov edx, dword [rsp + 0xd0]
mov r10, qword [rsp + 0xc8]
mov r9, qword [rsp + 0xb0]
movzx eax, byte [rbp + r12*8 + 3]
mov rcx, qword [r10]
mov dword [rsp + 0x38], r8d
mov r8, qword [rsp + 0xc0]
and eax, 8
mov dword [rsp + 0x30], eax
mov eax, dword [r9 + 0x20]
mov r9, qword [r9 + 0x18]
mov dword [rsp + 0x28], edx
xor edx, edx
mov dword [rsp + 0x20], eax
call fcn.1400f45f0
mov r13d, eax
mov dword [rsp + 0x44], eax
mov rax, qword [rsp + 0xc8]
mov byte [rax + 0x19], 0
mov rax, qword [rsp + 0xc8]
mov byte [rax + 0x1d], 0
mov rax, qword [rsp + 0xc8]
mov dword [rax + 0x64], r15d
test r13d, r13d
jne 0x140106f50
cmp qword [rsi + 0x100], 0
je 0x140106f50
cmp qword [rbp + r12*8 + 0x10], 0
je 0x140106f50
mov rax, qword [rsp + 0xc8]
mov edx, 0x12
movsxd rcx, dword [rax + 8]
mov rax, qword [rsi + 0x10]
shl rcx, 5
mov r8, qword [rcx + rax]
mov eax, 0x17
mov qword [rsp + 0xd8], r8
mov r9, qword [rbp + r12*8 + 0x10]
mov qword [rsp + 0xe0], r9
test byte [rbp + r12*8 + 3], 4
cmovne edx, eax
mov rax, qword [rsp + 0xc0]
mov dword [rsp + 0xe8], edx
mov rcx, qword [rsi + 0xf8]
mov qword [rsp + 0x20], rax
call qword [rsi + 0x100]
jmp 0x140106f50
mov rax, qword [rdi + 0x58]
mov qword [rsp + 0xb0], r15
movsxd rcx, dword [rbp + r12*8 + 4]
mov rcx, qword [rax + rcx*8]
mov qword [rsp + 0xb8], rcx
cmp qword [rsi + 0x100], 0
je 0x140104dbe
cmp qword [rbp + r12*8 + 0x10], 0
je 0x140104dbe
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0xb0], rax
call fcn.1400fd140
mov r13d, eax
test eax, eax
jne 0x140107302
mov rdx, qword [rsp + 0xb8]
mov r8, qword [rdx]
mov rax, qword [r8 + 8]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x140104e04
mov eax, dword [r8 + 0x28]
cmp dword [rcx + 0x28], eax
jne 0x140104df3
mov qword [rcx + 0x30], r15
mov rcx, qword [rcx + 0x10]
test rcx, rcx
jne 0x140104de6
mov rdx, qword [rsp + 0xb8]
mov rcx, qword [rdx]
call fcn.1400f48d0
mov r13d, eax
mov dword [rsp + 0x44], eax
mov rax, qword [rsp + 0xb8]
mov dword [rax + 0x64], r15d
test r13d, r13d
jne 0x140104e6d
mov r10, qword [rsi + 0x100]
test r10, r10
je 0x140104e6d
mov r9, qword [rbp + r12*8 + 0x10]
test r9, r9
je 0x140104e6d
mov rax, qword [rsp + 0xb8]
mov r8, qword [rsi + 0x10]
lea edx, [r13 + 9]
movsxd rcx, dword [rax + 8]
mov rax, qword [rsp + 0xb0]
shl rcx, 5
mov qword [rsp + 0x20], rax
mov r8, qword [rcx + r8]
mov rcx, qword [rsi + 0xf8]
call r10
test byte [rbp + r12*8 + 8], 1
mov ecx, dword [rsp + 0x40]
mov r8d, 4
je 0x140106f5a
inc dword [rdi + 0xac]
jmp 0x140106f5a
mov eax, dword [rdi + 0xac]
add dword [rsi + 0x50], eax
mov dword [rsi + 0x4c], eax
mov dword [rdi + 0xac], r15d
jmp case.0x140100cc5.17
movsxd rcx, dword [rbp + r12*8 + 4]
movsxd r14, dword [rbp + r12*8 + 8]
mov rax, qword [rdi + 0x58]
imul r14, r14, 0x38
mov rcx, qword [rax + rcx*8]
add r14, qword [rsp + 0x50]
mov qword [rsp + 0xb0], rcx
mov rax, qword [rcx]
mov qword [rsp + 0xb8], rax
call fcn.1400fd140
mov r13d, eax
test eax, eax
jne 0x140107302
mov rax, qword [rsp + 0xb0]
mov rbx, qword [rsp + 0xb8]
cmp byte [rax + 0x1f], r13b
je 0x140104f31
cmp byte [rbx + 0x5b], 1
je 0x140104f05
mov rcx, r15
jmp 0x140104f11
mov rcx, rbx
call fcn.1400ef640
mov rcx, qword [rbx + 0x40]
mov qword [rsp + 0xc8], rcx
movsxd rax, dword [rsi + 0x60]
cmp rcx, rax
jg 0x14010734f
mov edx, ecx
mov dword [rsp + 0xc0], ecx
jmp 0x140104f4c
mov rcx, rbx
call fcn.1400ef640
mov edx, dword [rbx + 0x48]
mov dword [rsp + 0xc0], edx
cmp edx, dword [rsi + 0x60]
ja 0x14010734f
xor r8d, r8d
mov rcx, r14
call fcn.1400f8d00
test eax, eax
jne 0x1401013ed
mov eax, dword [rsp + 0xc0]
mov r9, qword [r14 + 0x18]
xor edx, edx
mov dword [r14 + 0x20], eax
mov eax, 0xbf10
and word [r14 + 0x24], ax
or word [r14 + 0x24], 0x10
mov rax, qword [rsp + 0xb0]
mov r8d, dword [rsp + 0xc0]
mov rcx, qword [rsp + 0xb8]
cmp byte [rax + 0x1f], dl
je 0x140104fb8
mov dword [rsp + 0x20], r15d
call fcn.1400efa10
mov byte [r14 + 0x27], 1
mov dword [rsp + 0x44], eax
mov r13d, eax
jmp 0x140106f50
call fcn.1400efea0
mov byte [r14 + 0x27], 1
mov dword [rsp + 0x44], eax
mov r13d, eax
jmp 0x140106f50
movsxd rcx, dword [rbp + r12*8 + 4]
mov rax, qword [rdi + 0x58]
mov r8, qword [rax + rcx*8]
mov qword [rsp + 0xb0], r8
cmp byte [r8 + 0x1c], 0
je 0x140104ff9
mov eax, 1
mov word [r14 + 0x24], ax
jmp 0x140106f50
cmp byte [r8 + 0x1d], 0
je 0x140105014
mov rax, qword [r8 + 0x20]
mov qword [rsp + 0xb8], rax
mov qword [r14], rax
jmp 0x140106f50
cmp qword [r8 + 0x50], 0
je 0x14010506b
mov rax, qword [r8 + 0x50]
lea rdx, [rsp + 0xb8]
mov rcx, qword [rax]
mov qword [rsp + 0xc0], rcx
mov rax, qword [rcx]
mov qword [rsp + 0xc8], rax
mov rcx, qword [r8 + 0x50]
call qword [rax + 0x60]
mov rdx, qword [rsp + 0xc0]
mov rcx, rdi
mov r13d, eax
mov dword [rsp + 0x44], eax
call fcn.140100ad0
mov rax, qword [rsp + 0xb8]
mov qword [r14], rax
jmp 0x140106f50
mov rcx, r8
call fcn.1400fd140
mov r13d, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140107302
mov rax, qword [rsp + 0xb0]
cmp byte [rax + 0x19], r13b
je 0x1401050a4
mov rax, qword [rax + 0x10]
mov qword [rsp + 0xb8], rax
mov qword [r14], rax
jmp 0x140106f50
mov rbx, qword [rax]
cmp byte [rbx + 0x5b], 1
je 0x1401050c8
mov rax, r15
mov r13d, r15d
mov dword [rsp + 0x44], r15d
mov qword [rsp + 0xb8], rax
mov qword [r14], rax
jmp 0x140106f50
mov rcx, rbx
call fcn.1400ef640
mov rax, qword [rbx + 0x40]
mov r13d, r15d
mov qword [rsp + 0xb8], rax
mov qword [r14], rax
mov dword [rsp + 0x44], r15d
jmp 0x140106f50
movsxd rcx, dword [rbp + r12*8 + 4]
mov rax, qword [rdi + 0x58]
mov rdx, qword [rax + rcx*8]
mov qword [rsp + 0xb0], rdx
mov byte [rdx + 0x1c], 1
mov rax, qword [rsp + 0xb0]
mov byte [rax + 0x19], 0
mov rax, qword [rsp + 0xb0]
mov rbx, qword [rax]
test rbx, rbx
je case.0x140100cc5.17
mov rcx, qword [rbx + 0x60]
call fcn.1400da600
mov qword [rbx + 0x60], r15
mov byte [rbx + 0x5b], 0
jmp 0x140106f50
movsxd rcx, dword [rbp + r12*8 + 4]
mov rax, qword [rdi + 0x58]
mov rdx, qword [rax + rcx*8]
mov qword [rsp + 0xb0], rdx
mov rbx, qword [rdx]
mov qword [rsp + 0xb8], rbx
test rbx, rbx
jne 0x14010516d
mov dword [rsp + 0xc0], 1
jmp 0x1401051d5
cmp byte [rbx + 0x5b], 1
jne 0x140105183
cmp byte [rbx + 0x59], 0
je 0x140105183
mov r13d, r15d
mov dword [rsp + 0x44], r15d
jmp 0x1401051d5
mov rcx, rbx
call fcn.1400f0030
mov r13d, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x1401051c7
cmp byte [rbx + 0x5b], al
jne 0x1401051a8
mov dword [rsp + 0xc0], 1
jmp 0x1401051c7
mov rcx, rbx
mov dword [rsp + 0xc0], r15d
call fcn.1400f02c0
test eax, eax
mov r13d, eax
mov dword [rsp + 0x44], eax
sete al
mov byte [rbx + 0x59], al
mov rdx, qword [rsp + 0xb0]
mov r8d, 4
movzx eax, byte [rsp + 0xc0]
mov byte [rdx + 0x1c], al
mov rax, qword [rsp + 0xb0]
mov byte [rax + 0x1d], 0
mov rax, qword [rsp + 0xb0]
mov byte [rax + 0x19], 0
mov rax, qword [rsp + 0xb0]
mov dword [rax + 0x64], r15d
mov eax, dword [rbp + r12*8 + 8]
test eax, eax
jle case.0x140100cc5.17
cmp dword [rsp + 0xc0], 0
je case.0x140100cc5.17
lea ecx, [rax - 1]
jmp 0x140106f5a
inc dword [rdi + 0x124]
movsxd rcx, dword [rbp + r12*8 + 4]
mov rax, qword [rdi + 0x58]
mov rdx, qword [rax + rcx*8]
mov dword [rsp + 0xc0], 1
mov qword [rsp + 0xb0], rdx
mov rbx, qword [rdx]
mov qword [rsp + 0xb8], rbx
test rbx, rbx
je 0x1401052e5
mov rcx, rbx
call fcn.1400f0030
mov r13d, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x14010529d
cmp byte [rbx + 0x5b], al
jne 0x140105286
mov dword [rsp + 0xc0], 1
jmp 0x14010529d
mov rcx, rbx
mov dword [rsp + 0xc0], r15d
call fcn.1400f0210
mov r13d, eax
mov dword [rsp + 0x44], eax
cmp dword [rsp + 0xc0], 0
mov rax, qword [rsp + 0xb0]
mov r8d, 4
sete cl
mov byte [rax + 0x1a], cl
mov rax, qword [rsp + 0xb0]
mov byte [rax + 0x1d], 0
mov rax, qword [rsp + 0xb0]
mov dword [rax + 0x64], r15d
mov rax, qword [rsp + 0xb0]
mov byte [rax + 0x19], 0
mov rdx, qword [rsp + 0xb0]
movzx eax, byte [rsp + 0xc0]
mov byte [rdx + 0x1c], al
cmp dword [rsp + 0xc0], 0
je case.0x140100cc5.17
mov ecx, dword [rbp + r12*8 + 8]
dec ecx
jmp 0x140106f5a
mov eax, dword [rsi + 0x148]
test eax, eax
jne 0x140107370
movsxd rcx, dword [rbp + r12*8 + 4]
mov rax, qword [rdi + 0x58]
mov rdx, qword [rax + rcx*8]
mov qword [rsp + 0xb0], rdx
test rdx, rdx
je case.0x140100cc5.17
mov rcx, qword [rdx]
mov qword [rsp + 0xb8], rcx
test rcx, rcx
jne 0x14010534f
mov byte [rdx + 0x1c], 1
jmp case.0x140100cc5.17
mov dword [rsp + 0xc0], 1
cmp byte [rbp + r12*8], 0x43
lea rdx, [rsp + 0xc0]
jne 0x140105371
call fcn.1400f0820
jmp 0x140105376
call fcn.1400f09b0
mov rcx, qword [rsp + 0xb0]
mov dword [rsp + 0x44], eax
mov r13d, eax
movzx eax, byte [rsp + 0xc0]
mov byte [rcx + 0x1c], al
mov rax, qword [rsp + 0xb0]
mov dword [rax + 0x64], r15d
cmp dword [rsp + 0xc0], 0
jne 0x1401053c5
mov eax, dword [rbp + r12*8 + 8]
dec eax
mov dword [rsp + 0x40], eax
movzx eax, byte [rbp + r12*8 + 3]
test al, al
je 0x1401053c5
movzx eax, al
inc dword [rdi + rax*4 + 0x11c]
mov rax, qword [rsp + 0xb0]
mov byte [rax + 0x19], 0
jmp 0x140106f50
movsxd rcx, dword [rbp + r12*8 + 4]
mov rax, qword [rdi + 0x58]
mov rdx, qword [rax + rcx*8]
mov qword [rsp + 0xb0], rdx
movsxd rbx, dword [rbp + r12*8 + 8]
mov rcx, qword [rdx]
imul rbx, rbx, 0x38
add rbx, qword [rsp + 0x50]
mov qword [rsp + 0xb8], rcx
test rcx, rcx
je case.0x140100cc5.17
mov eax, 0x4000
test word [rbx + 0x24], ax
je 0x14010543f
mov rcx, rbx
call fcn.1400f8ed0
mov r13d, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140106f50
mov rcx, qword [rsp + 0xb8]
mov rdx, qword [rsp + 0xb0]
movsxd r8, dword [rbx + 0x20]
mov dword [rsp + 0xc0], r8d
mov r10, qword [rbx + 0x18]
mov qword [rsp + 0xc8], r10
test byte [rbp + r12*8 + 3], 0x10
je 0x140105464
mov eax, dword [rdx + 0x60]
jmp 0x140105467
mov eax, r15d
mov dword [rsp + 0x38], eax
mov eax, dword [rbp + r12*8 + 0xc]
lea r9, [0x1401b846a]
mov dword [rsp + 0x30], eax
mov rdx, r10
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], r15d
call fcn.1400f45f0
mov r13d, eax
mov dword [rsp + 0x44], eax
mov rax, qword [rsp + 0xb0]
mov dword [rax + 0x64], r15d
jmp 0x140106f50
movsxd rcx, dword [rbp + r12*8 + 4]
mov rax, qword [rdi + 0x58]
mov rax, qword [rax + rcx*8]
mov qword [rsp + 0xb0], rax
mov rcx, qword [rax]
mov qword [rsp + 0xb8], rcx
test rcx, rcx
je case.0x140100cc5.17
mov rax, qword [rax + 0x38]
lea rdx, [rsp + 0xc8]
xor r9d, r9d
mov qword [rsp + 0xc8], rax
movzx eax, word [rbp + r12*8 + 0xc]
mov word [rsp + 0xd2], r15w
mov word [rsp + 0xd0], ax
movsxd rax, dword [rbp + r12*8 + 8]
xor r8d, r8d
imul rax, rax, 0x38
add rax, qword [rsp + 0x50]
mov qword [rsp + 0xe0], rax
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x20], rax
call fcn.1400f0380
mov r13d, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x14010554f
cmp dword [rsp + 0xc0], eax
jne 0x14010554f
mov rcx, qword [rsp + 0xb8]
call fcn.1400f48d0
mov r13d, eax
mov dword [rsp + 0x44], eax
mov rax, qword [rsp + 0xb0]
mov dword [rax + 0x64], r15d
jmp 0x140106f50
movsxd rcx, dword [rbp + r12*8 + 4]
mov rax, qword [rdi + 0x58]
mov rax, qword [rax + rcx*8]
mov qword [rsp + 0xb8], rax
mov rax, qword [rax]
mov qword [rsp + 0xb0], rax
mov eax, 1
mov word [r14 + 0x24], ax
cmp qword [rsp + 0xb0], 0
je case.0x140100cc5.17
mov rcx, qword [rsp + 0xb8]
call fcn.1400fd140
mov r13d, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140107302
mov rax, qword [rsp + 0xb8]
cmp byte [rax + 0x1c], r13b
jne 0x140106f50
mov rdx, qword [rsp + 0xb0]
lea r8, [rsp + 0xc0]
mov rcx, rsi
call fcn.1400fdb90
mov r13d, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x140107302
mov rax, qword [rsp + 0xc0]
mov r8d, 4
mov qword [r14], rax
mov word [r14 + 0x24], r8w
jmp case.0x140100cc5.17
movsxd rcx, dword [rbp + r12*8 + 4]
mov rax, qword [rdi + 0x58]
mov rcx, qword [rax + rcx*8]
mov qword [rsp + 0xb0], rcx
cmp qword [rcx], 0
je case.0x140100cc5.17
mov rax, qword [rcx + 0x38]
mov qword [rsp + 0xc0], rax
movzx eax, word [rbp + r12*8 + 0x10]
mov word [rsp + 0xc8], ax
cmp byte [rbp + r12*8 + 3], 0
je 0x140105659
mov eax, ntohs
mov word [rsp + 0xca], ax
jmp 0x140105662
mov word [rsp + 0xca], r8w
movsxd rax, dword [rbp + r12*8 + 0xc]
lea r8, [rsp + 0xb8]
lea rdx, [rsp + 0xc0]
imul rax, rax, 0x38
add rax, qword [rsp + 0x50]
mov qword [rsp + 0xd8], rax
call fcn.1400fde90
cmp byte [rbp + r12*8], 0x51
mov r13d, eax
mov dword [rsp + 0x44], eax
mov eax, dword [rsp + 0xb8]
jne 0x1401056a7
neg eax
jmp 0x1401056a9
inc eax
mov dword [rsp + 0xb8], eax
mov r8d, 4
test eax, eax
jle case.0x140100cc5.17
mov ecx, dword [rbp + r12*8 + 8]
dec ecx
jmp 0x140106f5a
mov ecx, r15d
mov dword [rsp + 0xb4], ecx
mov rax, qword [rsi + 0xa8]
mov qword [rsp + 0xb8], rax
test rax, rax
je 0x140105725
nop dword [rax + rax]
cmp dword [rax + 0x78], 0xbdf20da3
jne 0x140105714
cmp byte [rax + 0xa5], 2
jae 0x140105714
cmp dword [rax + 0x8c], 0
jl 0x140105714
inc ecx
mov dword [rsp + 0xb4], ecx
mov rax, qword [rax + 0x10]
mov qword [rsp + 0xb8], rax
test rax, rax
jne 0x1401056f0
mov eax, 1
mov word [r14 + 0x24], ax
cmp dword [rsp + 0xb4], eax
jle 0x14010574c
mov r13d, 6
mov byte [rdi + 0x60], 2
mov dword [rsp + 0x44], r13d
jmp case.0x140100cc5.17
movsxd rax, dword [rbp + r12*8 + 0xc]
mov dword [rsp + 0xc0], eax
mov ebx, dword [rbp + r12*8 + 4]
mov rcx, rax
mov rax, qword [rsi + 0x10]
shl rcx, 5
mov rdi, qword [rcx + rax + 8]
mov rcx, rdi
call fcn.1400ea620
lea r8, [rsp + 0xb0]
mov edx, ebx
mov rcx, rdi
call fcn.1400f54d0
cmp byte [rdi + 0x11], 0
mov r13d, eax
mov dword [rsp + 0x44], eax
je 0x1401057b1
add dword [rdi + 0x14], 0xffffffff
jne 0x1401057b1
mov rax, qword [rdi + 8]
mov rcx, qword [rax + 0x50]
test rcx, rcx
je 0x1401057ad
call qword [0x14025a298]
mov byte [rdi + 0x12], 0
mov r8d, 4
mov word [r14 + 0x24], r8w
movsxd rax, dword [rsp + 0xb0]
mov qword [r14], rax
test r13d, r13d
jne 0x140101e2b
mov r8d, dword [rsp + 0xb0]
test r8d, r8d
je 0x1401010f8
movsxd r9, dword [rsp + 0xc0]
mov edx, dword [rbp + r12*8 + 4]
shl r9, 5
add r9, qword [rsi + 0x10]
mov rax, qword [r9 + 0x18]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x140105818
mov rax, qword [rcx + 0x10]
cmp dword [rax + 0x20], r8d
jne 0x140105810
mov dword [rax + 0x20], edx
mov rcx, qword [rcx]
test rcx, rcx
jne 0x140105803
mov rax, qword [r9 + 0x18]
mov rcx, qword [rax + 0x28]
test rcx, rcx
je 0x14010583a
mov rax, qword [rcx + 0x10]
cmp dword [rax + 0x28], r8d
jne 0x140105832
mov dword [rax + 0x28], edx
mov rcx, qword [rcx]
test rcx, rcx
jne 0x140105825
mov rdi, qword [rsp + 0x58]
mov byte [rsp + 0x60], 1
jmp 0x140106f50
mov dword [rsp + 0xb0], r15d
cmp dword [rbp + r12*8 + 0xc], 0
movsxd rax, dword [rbp + r12*8 + 8]
mov rcx, qword [rsi + 0x10]
mov edx, dword [rbp + r12*8 + 4]
lea r8, [rsp + 0xb0]
cmove r8, r15
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.1400f53e0
cmp dword [rbp + r12*8 + 0xc], 0
mov r13d, eax
mov dword [rsp + 0x44], eax
je 0x140106f50
movsxd rax, dword [rsp + 0xb0]
mov r8d, 4
add dword [rdi + 0xac], eax
movsxd rcx, dword [rbp + r12*8 + 0xc]
test ecx, ecx
jle case.0x140100cc5.17
mov rbx, qword [rsp + 0x50]
imul rcx, rcx, 0x38
add qword [rcx + rbx], rax
jmp case.0x140100cc5.17
mov dword [rsp + 0xb0], r15d
movsxd rax, dword [rbp + r12*8 + 4]
mov ecx, 5
shl rax, 5
mov ebx, 2
add rax, qword [rsi + 0x10]
mov qword [rsp + 0xb8], rax
cmp byte [rbp + r12*8], 0x62
cmove ebx, ecx
mov dword [rsp + 0xb4], ebx
mov rdi, qword [rax + 8]
mov rcx, rdi
call fcn.1400ea620
lea rdx, [rsp + 0xb0]
mov r8d, ebx
mov rcx, rdi
call fcn.1400f4bd0
cmp byte [rdi + 0x11], 0
mov r13d, eax
mov dword [rsp + 0x44], eax
je 0x140105945
add dword [rdi + 0x14], 0xffffffff
jne 0x140105945
mov rax, qword [rdi + 8]
mov rcx, qword [rax + 0x50]
test rcx, rcx
je 0x140105941
call qword [0x14025a298]
mov byte [rdi + 0x12], 0
movsxd rax, dword [rsp + 0xb0]
mov rdi, qword [rsp + 0x58]
mov qword [r14], rax
jmp 0x140106f50
mov eax, dword [rbp + r12*8 + 4]
mov rcx, rsi
mov dword [rsp + 0xb0], eax
call fcn.1400ea760
cmp dword [rbp + r12*8 + 8], 0
movsxd r11, dword [rsp + 0xb0]
jne 0x140105998
mov rax, qword [rsi + 0x10]
mov rcx, r11
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
test byte [rcx + 0x72], 1
je 0x140105a78
mov qword [rsp + 0xc8], rsi
lea rax, str.sqlite_master
cmp r11d, 1
mov rcx, r11
lea r9, str.sqlite_temp_master
lea rdx, str.SELECT_name__rootpage__sql_FROM__q._s_WHERE__s_ORDER_BY_rowid
cmovne r9, rax
shl rcx, 5
mov qword [rsp + 0xb8], r9
mov eax, dword [rbp + r12*8 + 4]
mov dword [rsp + 0xd0], eax
lea rax, [rdi + 0x98]
mov qword [rsp + 0xd8], rax
mov r8, qword [rsi + 0x10]
mov rax, qword [rbp + r12*8 + 0x10]
mov r8, qword [rcx + r8]
mov rcx, rsi
mov qword [rsp + 0x20], rax
call fcn.1400dc0e0
mov qword [rsp + 0xc0], rax
test rax, rax
jne 0x140105a1b
mov r13d, 7
mov dword [rsp + 0x44], r13d
jmp 0x140105a78
mov byte [rsi + 0x94], 1
mov rdx, qword [rsp + 0xc0]
lea r9, [rsp + 0xc8]
lea r8, [fcn.14012c360]
mov rcx, rsi
mov dword [rsp + 0xe0], r15d
mov qword [rsp + 0x20], r15
call fcn.140127e80
mov rdx, qword [rsp + 0xc0]
mov r13d, eax
test eax, eax
mov rcx, rsi
cmove r13d, dword [rsp + 0xe0]
mov dword [rsp + 0x44], r13d
call fcn.1400da6b0
mov byte [rsi + 0x94], 0
mov rcx, rsi
call fcn.1400ea880
cmp r13d, 7
je 0x1401013ed
jmp 0x140106f50
mov edx, dword [rbp + r12*8 + 4]
mov rcx, rsi
call fcn.140113970
mov r13d, eax
mov dword [rsp + 0x44], eax
jmp 0x140106f50
mov rdx, qword [rbp + r12*8 + 0x10]
movsxd rcx, dword [rbp + r12*8 + 4]
shl rcx, 5
mov rax, rdx
add rcx, qword [rsi + 0x10]
test rdx, rdx
jne 0x140105ac7
mov eax, r15d
jmp 0x140105adf
cmp byte [rdx], 0
je 0x140105ad8
nop dword [rax]
inc rax
cmp byte [rax], 0
jne 0x140105ad0
sub eax, edx
and eax, 0x3fffffff
mov rcx, qword [rcx + 0x18]
xor r9d, r9d
mov r8d, eax
add rcx, 8
call fcn.1400de160
mov rcx, rsi
mov rdx, rax
call fcn.1401158e0
mov eax, 0x200
or dword [rsi + 0x18], eax
jmp 0x140106f50
mov r8, qword [rbp + r12*8 + 0x10]
mov edx, dword [rbp + r12*8 + 4]
mov rcx, rsi
call fcn.140115590
jmp 0x140106f50
mov r8, qword [rbp + r12*8 + 0x10]
mov edx, dword [rbp + r12*8 + 4]
mov rcx, rsi
call fcn.14013a530
jmp 0x140106f50
mov edx, dword [rbp + r12*8 + 8]
mov rcx, rsi
mov dword [rsp + 0xb0], edx
lea edx, [rdx*4 + 4]
call fcn.1400da990
mov r11, rax
mov qword [rsp + 0xb8], rax
test rax, rax
je 0x1401013ed
movsxd rcx, dword [rbp + r12*8 + 0xc]
mov rax, qword [rsp + 0x50]
imul rcx, rcx, 0x38
add rcx, rax
mov qword [rsp + 0xd0], rcx
movsxd rbx, dword [rbp + r12*8 + 4]
imul rbx, rbx, 0x38
add rbx, rax
cmp dword [rsp + 0xb0], 0
mov eax, r15d
mov dword [rsp + 0xc0], eax
jle 0x140105be3
movsxd rcx, eax
imul rcx, rcx, 0x38
add rcx, rbx
call fcn.1400f9230
movsxd rdx, dword [rsp + 0xc0]
mov rcx, qword [rsp + 0xb8]
mov dword [rcx + rdx*4], eax
mov eax, dword [rsp + 0xc0]
inc eax
cmp eax, dword [rsp + 0xb0]
mov dword [rsp + 0xc0], eax
jl 0x140105ba0
mov r11, qword [rsp + 0xb8]
cdqe
mov dword [r11 + rax*4], r15d
movzx r10d, byte [rbp + r12*8 + 3]
mov rcx, qword [rsi + 0x10]
mov r8d, dword [rsp + 0xb0]
mov rdx, qword [rsp + 0xb8]
lea rax, [rsp + 0xc4]
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0xd0]
shl r10, 5
mov r9d, dword [rax]
mov rcx, qword [r10 + rcx + 8]
call fcn.1400f7010
mov rdx, qword [rsp + 0xb8]
mov rcx, rsi
mov qword [rsp + 0xc8], rax
call fcn.1400da6b0
mov rax, qword [rsp + 0xd0]
movsxd r11, dword [rsp + 0xc4]
mov rcx, rbx
sub qword [rax], r11
call fcn.1400f9480
cmp dword [rsp + 0xc4], 0
je 0x140105c92
mov rdx, qword [rsp + 0xc8]
test rdx, rdx
je 0x1401013ed
lea rax, [fcn.1400da600]
mov r9b, 1
or r8d, 0xffffffff
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.1400f98c0
test byte [rbx + 0x24], 2
movzx ecx, byte [rsp + 0x48]
je 0x140106f50
movzx eax, byte [rbx + 0x27]
cmp eax, ecx
je 0x140106f50
movzx edx, cl
mov rcx, rbx
call fcn.1400dc7a0
jmp 0x140106f50
mov rax, qword [rsp + 0x50]
movsxd rbx, dword [rbp + r12*8 + 4]
movsxd rdi, dword [rbp + r12*8 + 8]
imul rbx, rbx, 0x38
imul rdi, rdi, 0x38
add rbx, rax
add rdi, rax
test byte [rbx + 0x24], 0x20
jne 0x140105cf2
mov rcx, rbx
call fcn.1400f95f0
test byte [rbx + 0x24], 0x20
je 0x1401013e8
mov rdx, qword [rdi]
mov rcx, qword [rbx]
call fcn.1400e2840
mov rdi, qword [rsp + 0x58]
jmp 0x140106f50
mov eax, dword [rsi + 0x148]
test eax, eax
jne 0x140107370
movsxd rbx, dword [rbp + r12*8 + 4]
imul rbx, rbx, 0x38
add rbx, qword [rsp + 0x50]
test byte [rbx + 0x24], 0x20
je 0x140105d8b
mov rdi, qword [rbx]
mov rcx, rdi
call fcn.1400e2c90
mov rax, qword [rdi + 0x10]
test rax, rax
je 0x140105d86
mov rax, qword [rax]
mov qword [rsp + 0xb0], rax
mov rax, qword [rdi + 0x10]
mov rdx, qword [rax + 8]
mov qword [rdi + 0x10], rdx
test rdx, rdx
jne 0x140105d61
mov rcx, rdi
call fcn.1400e27e0
movsxd rcx, dword [rbp + r12*8 + 0xc]
mov rdx, qword [rsp + 0xb0]
imul rcx, rcx, 0x38
add rcx, qword [rsp + 0x50]
call fcn.1400f9510
mov rdi, qword [rsp + 0x58]
jmp 0x140106f50
mov rdi, qword [rsp + 0x58]
mov rcx, rbx
call fcn.1400f9480
mov ecx, dword [rbp + r12*8 + 8]
mov r8d, 4
dec ecx
jmp 0x140106f5a
mov rax, qword [rsp + 0x50]
movsxd rbx, dword [rbp + r12*8 + 4]
movsxd rdi, dword [rbp + r12*8 + 0xc]
imul rbx, rbx, 0x38
imul rdi, rdi, 0x38
add rbx, rax
add rdi, rax
mov eax, dword [rbp + r12*8 + 0x10]
mov dword [rsp + 0xb0], eax
test byte [rbx + 0x24], 0x20
jne 0x140105ded
mov rcx, rbx
call fcn.1400f95f0
test byte [rbx + 0x24], 0x20
je 0x1401013e8
mov eax, dword [rsp + 0xb0]
test eax, eax
je 0x140105e34
js 0x140105df8
and eax, 0xf
jmp 0x140105dfd
mov eax, 0xff
mov r8, qword [rdi]
mov rcx, qword [rbx]
movzx edx, al
call fcn.1400e2d20
mov dword [rsp + 0xb4], eax
test eax, eax
je 0x140105e2b
mov edi, dword [rbp + r12*8 + 8]
dec edi
mov dword [rsp + 0x40], edi
mov rdi, qword [rsp + 0x58]
jmp 0x140106f50
mov eax, dword [rsp + 0xb0]
test eax, eax
js 0x1401010f8
mov rdx, qword [rdi]
mov rcx, qword [rbx]
call fcn.1400e2840
mov rdi, qword [rsp + 0x58]
jmp 0x140106f50
mov r8, qword [rbp + r12*8 + 0x10]
mov qword [rsp + 0xd8], r8
movsxd rdx, dword [rbp + r12*8 + 0xc]
imul rdx, rdx, 0x38
add rdx, qword [rsp + 0x50]
mov qword [rsp + 0xb8], rdx
cmp byte [rbp + r12*8 + 3], 0
je 0x140105ebb
mov rax, qword [rdi + 0x158]
mov rcx, qword [r8 + 0x18]
mov qword [rsp + 0xe0], rcx
mov qword [rsp + 0xd0], rax
test rax, rax
je 0x140105ebb
nop word [rax + rax]
cmp qword [rax + 0x40], rcx
je 0x140106f50
mov rax, qword [rax + 0x60]
mov qword [rsp + 0xd0], rax
test rax, rax
jne 0x140105ea0
mov eax, dword [rsi + 0x88]
cmp dword [rdi + 0x160], eax
jl 0x140105eef
lea rcx, [rdi + 0x98]
lea r8, str.too_many_levels_of_trigger_recursion
mov r13d, 1
mov rdx, rsi
mov dword [rsp + 0x44], r13d
call fcn.1400dabc0
jmp 0x140106f50
test byte [rdx + 0x24], 0x40
jne 0x140106098
mov edx, dword [r8 + 0xc]
mov rcx, rsi
add edx, dword [r8 + 0x10]
mov dword [rsp + 0xb0], edx
imul edx, edx, 7
add edx, dword [r8 + 0x10]
lea edx, [rdx*8 + 0x68]
mov dword [rsp + 0xb4], edx
call fcn.1400da950
mov qword [rsp + 0xd0], rax
test rax, rax
je 0x1401013ed
mov rcx, qword [rsp + 0xb8]
call fcn.1400f9200
mov rax, qword [rsp + 0xb8]
mov ecx, 0x40
mov word [rax + 0x24], cx
mov rcx, qword [rsp + 0xb8]
mov rax, qword [rsp + 0xd0]
mov qword [rcx], rax
mov rax, qword [rsp + 0xd0]
mov qword [rax], rdi
mov ecx, dword [rsp + 0xb0]
mov rax, qword [rsp + 0xd0]
mov dword [rax + 0x48], ecx
mov rax, qword [rsp + 0xd8]
mov ecx, dword [rax + 0x10]
mov rax, qword [rsp + 0xd0]
mov dword [rax + 0x4c], ecx
mov rax, qword [rsp + 0xd0]
mov ecx, dword [rsp + 0x40]
mov dword [rax + 8], ecx
mov rcx, qword [rdi + 0x80]
mov rax, qword [rsp + 0xd0]
mov qword [rax + 0x20], rcx
mov rax, qword [rsp + 0xd0]
mov ecx, dword [rdi + 0x7c]
mov dword [rax + 0x28], ecx
mov rcx, qword [rdi + 0x58]
mov rax, qword [rsp + 0xd0]
mov qword [rax + 0x30], rcx
mov rax, qword [rsp + 0xd0]
movzx ecx, word [rdi + 0x52]
mov word [rax + 0x38], cx
mov rcx, qword [rdi + 0x20]
mov rax, qword [rsp + 0xd0]
mov qword [rax + 0x10], rcx
mov rax, qword [rsp + 0xd0]
mov ecx, dword [rdi + 0x18]
mov dword [rax + 0x18], ecx
mov rax, qword [rsp + 0xd8]
mov rcx, qword [rax + 0x18]
mov rax, qword [rsp + 0xd0]
mov qword [rax + 0x40], rcx
mov rdx, qword [rsp + 0xd0]
movsxd rax, dword [rdx + 0x48]
imul rax, rax, 0x38
lea rcx, [rax + rdx + 0x68]
lea rax, [rdx + 0x68]
mov qword [rsp + 0xc8], rcx
mov qword [rsp + 0xc0], rax
cmp rax, rcx
je 0x1401060a3
mov ebx, 1
nop word [rax + rax]
mov word [rax + 0x24], bx
mov rax, qword [rsp + 0xc0]
mov qword [rax + 0x10], rsi
mov rax, qword [rsp + 0xc0]
add rax, 0x38
mov qword [rsp + 0xc0], rax
cmp rax, qword [rsp + 0xc8]
jne 0x140106060
mov rdx, qword [rsp + 0xd0]
jmp 0x1401060a3
mov rdx, qword [rdx]
mov qword [rsp + 0xd0], rdx
inc dword [rdi + 0x160]
mov rax, qword [rdi + 0x158]
mov qword [rdx + 0x60], rax
mov rcx, qword [rsi + 0x40]
mov rax, qword [rsp + 0xd0]
mov qword [rax + 0x50], rcx
mov ecx, dword [rdi + 0xac]
mov rax, qword [rsp + 0xd0]
mov dword [rax + 0x58], ecx
mov rax, qword [rsp + 0xd0]
mov dword [rdi + 0xac], r15d
lea r11, [rax + 0x30]
mov qword [rdi + 0x158], rax
mov qword [rdi + 0x80], r11
mov ecx, dword [rax + 0x48]
mov qword [rsp + 0x50], r11
mov dword [rdi + 0x7c], ecx
movzx eax, word [rax + 0x4c]
mov word [rdi + 0x52], ax
lea eax, [rcx + 1]
cdqe
imul rax, rax, 0x38
add rax, r11
or ecx, 0xffffffff
mov qword [rdi + 0x58], rax
mov rax, qword [rsp + 0xd8]
lea r8d, [rcx + 5]
mov rbp, qword [rax]
mov qword [rdi + 0x20], rbp
mov eax, dword [rax + 8]
mov qword [rsp + 0x78], rbp
mov dword [rdi + 0x18], eax
jmp 0x140106f5a
mov r8, qword [rdi + 0x158]
mov qword [rsp + 0xb0], r8
movsxd rax, dword [r8 + 8]
lea rcx, [rax + rax*2]
mov rax, qword [r8 + 0x10]
mov edx, dword [rax + rcx*8 + 4]
mov rcx, r14
add edx, dword [rbp + r12*8 + 4]
movsxd rdx, edx
imul rdx, rdx, 0x38
add rdx, qword [r8 + 0x20]
mov r8d, 0x1000
mov qword [rsp + 0xb8], rdx
call fcn.1400f9700
jmp 0x140106f50
cmp dword [rbp + r12*8 + 4], 0
movsxd rax, dword [rbp + r12*8 + 8]
mov ecx, dword [rsp + 0x40]
je 0x1401061a6
add qword [rsi + 0x320], rax
jmp 0x140106f5a
add qword [rdi + 0x140], rax
jmp 0x140106f5a
cmp dword [rbp + r12*8 + 4], 0
je 0x1401061d4
cmp qword [rsi + 0x320], 0
jne case.0x140100cc5.17
mov ecx, dword [rbp + r12*8 + 8]
dec ecx
jmp 0x140106f5a
cmp qword [rdi + 0x140], 0
jne case.0x140100cc5.17
mov ecx, dword [rbp + r12*8 + 8]
dec ecx
jmp 0x140106f5a
mov rax, qword [rdi + 0x158]
test rax, rax
je 0x140106233
mov qword [rsp + 0xb8], rax
mov rcx, qword [rax + 0x60]
test rcx, rcx
je 0x140106224
nop dword [rax + rax]
mov rax, rcx
mov qword [rsp + 0xb8], rcx
mov rcx, qword [rcx + 0x60]
test rcx, rcx
jne 0x140106210
movsxd rbx, dword [rbp + r12*8 + 4]
imul rbx, rbx, 0x38
add rbx, qword [rax + 0x20]
jmp 0x140106241
movsxd rbx, dword [rbp + r12*8 + 4]
imul rbx, rbx, 0x38
add rbx, qword [rsp + 0x50]
mov rcx, rbx
mov qword [rsp + 0xb0], rbx
call fcn.1400f9230
mov qword [rbx], rax
mov eax, 0xbf04
and word [rbx + 0x24], ax
or word [rbx + 0x24], 4
movsxd rbx, dword [rbp + r12*8 + 8]
imul rbx, rbx, 0x38
add rbx, qword [rsp + 0x50]
mov rcx, rbx
call fcn.1400f9230
mov ecx, 0xbf04
mov r8d, 4
and word [rbx + 0x24], cx
or word [rbx + 0x24], 4
mov qword [rbx], rax
mov rcx, qword [rsp + 0xb0]
cmp qword [rcx], rax
jge case.0x140100cc5.17
mov qword [rcx], rax
jmp case.0x140100cc5.17
movsxd rax, dword [rbp + r12*8 + 4]
mov rcx, qword [rsp + 0x50]
imul rax, rax, 0x38
cmp qword [rax + rcx], 0
jle case.0x140100cc5.17
mov ecx, dword [rbp + r12*8 + 8]
dec ecx
jmp 0x140106f5a
movsxd rax, dword [rbp + r12*8 + 4]
mov rcx, qword [rsp + 0x50]
imul rax, rax, 0x38
cmp qword [rax + rcx], 0
jge case.0x140100cc5.17
mov ecx, dword [rbp + r12*8 + 8]
dec ecx
jmp 0x140106f5a
movsxd rcx, dword [rbp + r12*8 + 4]
movsxd rax, dword [rbp + r12*8 + 0xc]
imul rcx, rcx, 0x38
add rcx, qword [rsp + 0x50]
add qword [rcx], rax
jne case.0x140100cc5.17
mov ecx, dword [rbp + r12*8 + 8]
dec ecx
jmp 0x140106f5a
movzx eax, byte [rbp + r12*8 + 3]
mov rbx, qword [rsp + 0x50]
mov r8, qword [rdi + 0x38]
mov dword [rsp + 0xb0], eax
movsxd rdx, dword [rbp + r12*8 + 8]
mov ecx, r15d
mov qword [rsp + 0x128], r8
mov dword [rsp + 0xb4], ecx
imul rdx, rdx, 0x38
add rdx, rbx
mov qword [rsp + 0xc0], rdx
test eax, eax
jle 0x1401063ab
nop word [rax + rax]
movsxd rax, ecx
mov qword [r8 + rax*8], rdx
mov rcx, qword [rsp + 0xc0]
call fcn.140100730
mov ecx, dword [rsp + 0xb4]
mov rdx, qword [rsp + 0xc0]
inc ecx
add rdx, 0x38
cmp ecx, dword [rsp + 0xb0]
mov dword [rsp + 0xb4], ecx
mov qword [rsp + 0xc0], rdx
jge 0x1401063ab
mov r8, qword [rsp + 0x128]
jmp 0x140106360
mov rax, qword [rbp + r12*8 + 0x10]
mov qword [rsp + 0xc8], rax
movsxd rax, dword [rbp + r12*8 + 0xc]
imul rax, rax, 0x38
add rax, rbx
mov qword [rsp + 0xb8], rax
mov qword [rsp + 0x110], rax
inc dword [rax + 0x20]
mov r9, qword [rsp + 0xc8]
mov eax, 1
mov word [rsp + 0xfc], ax
mov qword [rsp + 0xf0], r15
mov qword [rsp + 0x108], r15
mov qword [rsp + 0x100], r15
mov qword [rsp + 0xe8], rsi
mov dword [rsp + 0x118], r15d
mov qword [rsp + 0x120], r15
test byte [r9 + 3], 8
je 0x140106430
mov rax, qword [rbp + r12*8 - 8]
mov qword [rsp + 0x120], rax
mov r8, qword [rsp + 0x128]
mov edx, dword [rsp + 0xb0]
lea rcx, [rsp + 0xc8]
call qword [r9 + 0x20]
cmp dword [rsp + 0x118], 0
je 0x14010648a
lea rcx, [rsp + 0xd8]
mov dl, 1
call fcn.1400fa230
lea rcx, [rdi + 0x98]
lea r8, [0x1401cdd70]
mov r9, rax
mov rdx, rsi
call fcn.1400dabc0
mov r13d, dword [rsp + 0x118]
mov dword [rsp + 0x44], r13d
lea rcx, [rsp + 0xd8]
call fcn.1400f9170
mov rdx, qword [rsp + 0x108]
mov rcx, qword [rsp + 0xe8]
call fcn.1400da6b0
mov qword [rsp + 0xf0], r15
mov qword [rsp + 0x108], r15
mov qword [rsp + 0x100], r15
jmp 0x140106f50
movsxd rcx, dword [rbp + r12*8 + 4]
imul rcx, rcx, 0x38
add rcx, qword [rsp + 0x50]
mov qword [rsp + 0xb0], rcx
mov rdx, qword [rbp + r12*8 + 0x10]
call fcn.1400f9080
mov r13d, eax
mov dword [rsp + 0x44], eax
test eax, eax
je 0x14010651c
mov rcx, qword [rsp + 0xb0]
mov dl, 1
call fcn.1400fa230
lea rcx, [rdi + 0x98]
lea r8, [0x1401cdd70]
mov r9, rax
mov rdx, rsi
call fcn.1400dabc0
mov rcx, qword [rsp + 0xb0]
movzx edx, byte [rsp + 0x48]
test byte [rcx + 0x24], 2
je 0x140106544
movzx eax, byte [rcx + 0x27]
cmp eax, edx
je 0x140106544
call fcn.1400dc7a0
mov rcx, qword [rsp + 0xb0]
call fcn.1400f96d0
test eax, eax
jne 0x14010734f
jmp 0x140106f50
mov edx, dword [rbp + r12*8 + 4]
mov rcx, rsi
call fcn.14014bed0
mov r13d, eax
mov dword [rsp + 0x44], eax
jmp 0x140106f50
cmp dword [rdi + 0xc0], 0
mov r8d, dword [rbp + r12*8 + 0xc]
mov dword [rsp + 0xc0], r8d
jne 0x1401065a2
mov edx, dword [rbp + r12*8 + 4]
mov rcx, rdi
call fcn.1400fb500
mov rcx, rdi
call fcn.1400fc800
mov r8d, dword [rsp + 0xc0]
mov rax, qword [rsi + 0x10]
movsxd rcx, dword [rbp + r12*8 + 4]
shl rcx, 5
cmp r8d, 0xffffffff
mov r10, qword [rcx + rax + 8]
mov qword [rsp + 0xb0], r10
mov rax, qword [r10 + 8]
mov rcx, qword [rax]
mov qword [rsp + 0xb8], rcx
movzx edx, byte [rcx + 9]
cmove r8d, edx
mov dword [rsp + 0xc4], edx
mov dword [rsp + 0xc0], r8d
cmp byte [rcx + 0x12], 3
jae 0x1401065fd
mov rax, qword [rcx + 0x50]
cmp qword [rax], 0
je 0x140106607
cmp qword [rcx + 0x60], 0
jle 0x140106607
mov r8d, edx
mov dword [rsp + 0xc0], edx
mov rax, qword [rcx + 0xb0]
mov qword [rsp + 0xc8], rax
cmp r8d, 5
jne 0x140106644
cmp byte [rax], 0
je 0x140106635
mov rax, qword [rcx + 0x48]
mov r9, qword [rax]
cmp dword [r9], 2
jl 0x140106635
cmp qword [r9 + 0x68], 0
jne 0x140106644
mov r8d, edx
mov dword [rsp + 0xc0], edx
jmp 0x1401066ef
cmp r8d, edx
je 0x1401066ef
cmp edx, 5
je 0x14010665c
cmp r8d, 5
jne 0x1401066ef
cmp byte [rsi + 0x28], 0
je 0x140106732
cmp dword [rsi + 0xb0], 1
jg 0x140106732
cmp edx, 5
jne 0x140106699
call fcn.1400e7be0
mov r13d, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x1401066d7
mov edx, dword [rsp + 0xc0]
mov rcx, qword [rsp + 0xb8]
jmp 0x1401066a3
cmp edx, 4
jne 0x1401066b8
mov edx, 2
call fcn.1400e7a00
mov r10, qword [rsp + 0xb0]
mov r8d, dword [rsp + 0xc0]
mov edx, r15d
cmp r8d, 5
mov rcx, r10
sete dl
inc edx
call fcn.1400f7770
mov r13d, eax
mov dword [rsp + 0x44], eax
test eax, eax
je 0x140106728
mov r8d, dword [rsp + 0xc4]
mov dword [rsp + 0xc0], r8d
mov rcx, qword [rsp + 0xb8]
mov edx, r8d
call fcn.1400e7a00
mov dword [rsp + 0xc0], eax
movsxd r14, dword [rbp + r12*8 + 8]
mov eax, 0xa02
imul r14, r14, 0x38
add r14, qword [rsp + 0x50]
mov word [r14 + 0x24], ax
movsxd rax, dword [rsp + 0xc0]
cmp eax, 6
jne 0x14010676e
mov rcx, r15
jmp 0x14010677d
mov r8d, dword [rsp + 0xc0]
jmp 0x1401066e7
cmp r8d, 5
lea rax, str.into
lea r9, str.out_of
lea rcx, [rdi + 0x98]
lea r8, str.cannot_change__s_wal_mode_from_within_a_transaction
mov r13d, 1
cmove r9, rax
mov rdx, rsi
mov dword [rsp + 0x44], r13d
call fcn.1400dabc0
jmp 0x140106f50
lea rcx, [0x140000000]
mov rcx, qword [rcx + rax*8 + 0x1bfb60]
mov qword [r14 + 0x18], rcx
mov rax, rcx
test rcx, rcx
jne 0x14010678e
mov eax, r15d
jmp 0x1401067a2
cmp byte [rcx], 0
je 0x14010679b
inc rax
cmp byte [rax], 0
jne 0x140106793
sub eax, ecx
and eax, 0x3fffffff
mov dword [r14 + 0x20], eax
movzx eax, byte [rsp + 0x48]
mov byte [r14 + 0x27], 1
cmp eax, 1
je 0x140106f50
movzx edx, al
mov rcx, r14
call fcn.1400dc7a0
jmp 0x140106f50
lea rcx, [rdi + 0x98]
mov rdx, rsi
call fcn.14013da10
mov r13d, eax
mov dword [rsp + 0x44], eax
jmp 0x140106f50
movsxd rcx, dword [rbp + r12*8 + 4]
mov rax, qword [rsi + 0x10]
shl rcx, 5
mov rcx, qword [rcx + rax + 8]
mov qword [rsp + 0xb0], rcx
call fcn.1400ee880
mov r8d, 4
mov r13d, eax
mov dword [rsp + 0x44], eax
cmp eax, 0x65
jne case.0x140100cc5.17
mov r13d, dword [rbp + r12*8 + 8]
mov dword [rsp + 0x44], r15d
dec r13d
mov dword [rsp + 0x40], r13d
mov r13d, r15d
jmp case.0x140100cc5.17
cmp dword [rbp + r12*8 + 4], 0
jne 0x140106848
mov rcx, rsi
call fcn.1400fe000
jmp case.0x140100cc5.17
mov byte [rdi + 0xa2], 1
jmp case.0x140100cc5.17
movzx r8d, byte [rbp + r12*8 + 0xc]
test r8b, r8b
jne 0x14010686a
bt dword [rsi + 0x18], 0x13
jb 0x140106f50
movsxd rax, dword [rbp + r12*8 + 4]
mov rcx, qword [rsi + 0x10]
mov edx, dword [rbp + r12*8 + 8]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.1400f7610
mov r13d, eax
mov dword [rsp + 0x44], eax
cmp al, 6
jne 0x140106f50
mov r9, qword [rbp + r12*8 + 0x10]
lea rcx, [rdi + 0x98]
lea r8, str.database_table_is_locked:__s
mov rdx, rsi
call fcn.1400dabc0
jmp 0x140106f50
mov rdx, qword [rbp + r12*8 + 0x10]
mov rcx, rsi
mov qword [rsp + 0xb0], rdx
call fcn.14013f170
mov rdx, qword [rsp + 0xb0]
mov r13d, eax
mov dword [rsp + 0x44], eax
test rdx, rdx
je 0x140106f50
mov rdx, qword [rdx + 0x10]
mov rcx, rdi
call fcn.140100ad0
jmp 0x140106f50
mov r8, qword [rbp + r12*8 + 0x10]
mov edx, dword [rbp + r12*8 + 4]
lea r9, [rdi + 0x98]
mov rcx, rsi
call fcn.14013ec50
mov r13d, eax
mov dword [rsp + 0x44], eax
jmp 0x140106f50
mov byte [rdi + 0xa5], 2
mov r8, qword [rbp + r12*8 + 0x10]
mov edx, dword [rbp + r12*8 + 4]
mov rcx, rsi
call fcn.14013ef30
mov byte [rdi + 0xa5], 0
mov r13d, eax
mov dword [rsp + 0x44], eax
jmp 0x140106f50
mov qword [rsp + 0xb0], r15
mov qword [rsp + 0xb8], r15
mov rax, qword [rbp + r12*8 + 0x10]
mov rcx, qword [rax + 0x10]
lea rdx, [rsp + 0xb8]
mov qword [rsp + 0xc0], rcx
mov rax, qword [rcx]
mov qword [rsp + 0xc8], rax
call qword [rax + 0x30]
mov rdx, qword [rsp + 0xc0]
mov rcx, rdi
mov r13d, eax
mov dword [rsp + 0x44], eax
call fcn.140100ad0
test r13d, r13d
jne 0x140106f50
mov rcx, qword [rsp + 0xb8]
mov rax, qword [rsp + 0xc0]
or r9d, 0xffffffff
mov qword [rcx], rax
mov edx, dword [rbp + r12*8 + 4]
xor r8d, r8d
mov rcx, rdi
mov dword [rsp + 0x20], r15d
call fcn.140100760
mov qword [rsp + 0xb0], rax
test rax, rax
je 0x1401069ff
mov rcx, qword [rsp + 0xb8]
mov qword [rax + 0x50], rcx
mov rax, qword [rsp + 0xb8]
mov rcx, qword [rax]
mov rax, qword [rsp + 0xb0]
mov rdx, qword [rcx]
mov qword [rax + 0x58], rdx
jmp 0x140106f50
mov byte [rsi + 0x2a], 1
mov rax, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0xb8]
call qword [rax + 0x38]
jmp 0x140106f50
movsxd r8, dword [rbp + r12*8 + 0xc]
mov rax, qword [rdi + 0x58]
imul r8, r8, 0x38
add r8, qword [rsp + 0x50]
mov qword [rsp + 0xc0], r8
lea r9, [r8 + 0x38]
mov qword [rsp + 0xc8], r9
movsxd rcx, dword [rbp + r12*8 + 4]
mov rdx, qword [rax + rcx*8]
mov qword [rsp + 0xe0], rdx
mov rcx, qword [rdx + 0x50]
mov edx, r15d
mov qword [rsp + 0xd0], rcx
mov rax, qword [rcx]
mov qword [rsp + 0xd8], rax
mov r10, qword [rax]
mov qword [rsp + 0xb8], r10
mov eax, dword [r9]
mov dword [rsp + 0xb0], eax
mov r11d, dword [r8]
mov r8, qword [rdi + 0x38]
mov qword [rsp + 0xf0], r8
mov dword [rsp + 0xb4], r11d
mov dword [rsp + 0xe8], r15d
mov dword [rsp + 0xec], edx
test eax, eax
jle 0x140106b22
nop dword [rax + rax]
lea eax, [rdx + 1]
movsxd rcx, eax
movsxd rax, edx
imul rcx, rcx, 0x38
add rcx, r9
mov qword [r8 + rax*8], rcx
movsxd rax, dword [rsp + 0xec]
mov rcx, qword [rsp + 0xf0]
mov rcx, qword [rcx + rax*8]
call fcn.140100730
mov edx, dword [rsp + 0xec]
mov eax, dword [rsp + 0xb0]
mov r8, qword [rsp + 0xf0]
inc edx
cmp edx, eax
mov dword [rsp + 0xec], edx
jge 0x140106b0a
mov r9, qword [rsp + 0xc8]
jmp 0x140106ab0
mov rcx, qword [rsp + 0xd0]
mov r10, qword [rsp + 0xb8]
mov r11d, dword [rsp + 0xb4]
mov byte [rdi + 0xa5], 1
mov qword [rsp + 0x20], r8
mov r8, qword [rbp + r12*8 + 0x10]
mov r9d, eax
mov edx, r11d
call qword [r10 + 0x40]
mov rdx, qword [rsp + 0xd8]
mov rcx, rdi
mov r13d, eax
mov dword [rsp + 0x44], eax
mov byte [rdi + 0xa5], 0
call fcn.140100ad0
test r13d, r13d
jne 0x140106b7c
mov rax, qword [rsp + 0xb8]
mov rcx, qword [rsp + 0xd0]
call qword [rax + 0x50]
mov dword [rsp + 0xe8], eax
jmp 0x140106b83
mov eax, dword [rsp + 0xe8]
test eax, eax
je 0x140106b92
mov eax, dword [rbp + r12*8 + 8]
dec eax
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0xe0]
mov byte [rax + 0x1c], 0
jmp 0x140106f50
movsxd rcx, dword [rbp + r12*8 + 4]
mov rax, qword [rdi + 0x58]
mov rbx, qword [rax + rcx*8]
movsxd rcx, dword [rbp + r12*8 + 0xc]
imul rcx, rcx, 0x38
add rcx, qword [rsp + 0x50]
mov qword [rsp + 0xc0], rcx
cmp byte [rbx + 0x1c], 0
je 0x140106bd6
call fcn.1400f9480
jmp 0x140106f50
mov rax, qword [rbx + 0x50]
xor edx, edx
lea rcx, [rsp + 0xc8]
mov rax, qword [rax]
lea r8d, [rdx + 0x60]
mov qword [rsp + 0xb0], rax
mov rax, qword [rax]
mov qword [rsp + 0xb8], rax
call sub.MSVCR90.dll_memset
mov rdx, qword [rsp + 0xc0]
lea rcx, [rsp + 0xd8]
call fcn.1400f9830
movzx r11d, word [rsp + 0xfc]
mov eax, 0xbf01
and r11w, ax
mov rax, qword [rsp + 0xb8]
lea rdx, [rsp + 0xc8]
or r11w, 1
mov word [rsp + 0xfc], r11w
mov r8d, dword [rbp + r12*8 + 8]
mov rcx, qword [rbx + 0x50]
call qword [rax + 0x58]
mov rdx, qword [rsp + 0xb0]
mov rcx, rdi
mov r13d, eax
call fcn.140100ad0
mov eax, dword [rsp + 0x118]
movzx ecx, byte [rsp + 0x48]
test eax, eax
cmovne r13d, eax
test byte [rsp + 0xfc], 2
mov dword [rsp + 0x44], r13d
je 0x140106ca4
movzx eax, byte [rsp + 0xff]
cmp eax, ecx
je 0x140106ca4
movzx edx, cl
lea rcx, [rsp + 0xd8]
call fcn.1400dc7a0
mov rcx, qword [rsp + 0xc0]
lea rdx, [rsp + 0xd8]
call fcn.1400f9830
mov rcx, qword [rsp + 0xc0]
call fcn.1400f96d0
test eax, eax
jne 0x14010734f
jmp 0x140106f50
mov rax, qword [rdi + 0x58]
mov dword [rsp + 0xc0], r15d
movsxd rcx, dword [rbp + r12*8 + 4]
mov rdx, qword [rax + rcx*8]
mov qword [rsp + 0xc8], rdx
cmp byte [rdx + 0x1c], 0
jne case.0x140100cc5.17
mov rax, qword [rdx + 0x50]
mov rcx, qword [rax]
mov qword [rsp + 0xb0], rcx
mov rax, qword [rcx]
mov byte [rdi + 0xa5], 1
mov qword [rsp + 0xb8], rax
mov rcx, qword [rdx + 0x50]
call qword [rax + 0x48]
mov rdx, qword [rsp + 0xb0]
mov rcx, rdi
mov r13d, eax
mov dword [rsp + 0x44], eax
mov byte [rdi + 0xa5], 0
call fcn.140100ad0
test r13d, r13d
jne 0x140106d65
mov rcx, qword [rsp + 0xc8]
mov rax, qword [rsp + 0xb8]
mov rcx, qword [rcx + 0x50]
call qword [rax + 0x50]
mov dword [rsp + 0xc0], eax
jmp 0x140106d6c
mov eax, dword [rsp + 0xc0]
mov r8d, 4
test eax, eax
jne case.0x140100cc5.17
mov ecx, dword [rbp + r12*8 + 8]
dec ecx
jmp 0x140106f5a
mov rax, qword [rbp + r12*8 + 0x10]
mov rcx, qword [rax + 0x10]
mov qword [rsp + 0xb0], rcx
movsxd rdx, dword [rbp + r12*8 + 4]
imul rdx, rdx, 0x38
add rdx, qword [rsp + 0x50]
mov qword [rsp + 0xb8], rdx
mov rax, qword [rcx]
mov rdx, qword [rdx + 0x18]
call qword [rax + 0x98]
mov rdx, qword [rsp + 0xb0]
mov rcx, rdi
mov r13d, eax
mov dword [rsp + 0x44], eax
call fcn.140100ad0
jmp 0x140106f50
mov rax, qword [rbp + r12*8 + 0x10]
mov r10, qword [rax + 0x10]
mov qword [rsp + 0xb0], r10
mov rax, qword [r10]
mov qword [rsp + 0xb8], rax
mov edx, dword [rbp + r12*8 + 8]
mov dword [rsp + 0xc0], edx
cmp qword [rax + 0x68], 0
je case.0x140100cc5.17
mov r8, qword [rdi + 0x38]
mov qword [rsp + 0xd0], r8
movsxd rcx, dword [rbp + r12*8 + 0xc]
mov dword [rsp + 0xc4], r15d
imul rcx, rcx, 0x38
add rcx, qword [rsp + 0x50]
mov qword [rsp + 0xd8], rcx
test edx, edx
jle 0x140106e9f
call fcn.140100730
movsxd rdx, dword [rsp + 0xc4]
mov rax, qword [rsp + 0xd8]
mov rcx, qword [rsp + 0xd0]
mov qword [rcx + rdx*8], rax
mov eax, dword [rsp + 0xc4]
mov rcx, qword [rsp + 0xd8]
mov edx, dword [rsp + 0xc0]
inc eax
add rcx, 0x38
cmp eax, edx
mov qword [rsp + 0xd8], rcx
mov dword [rsp + 0xc4], eax
jl 0x140106e37
mov r8, qword [rsp + 0xd0]
mov rax, qword [rsp + 0xb8]
mov r10, qword [rsp + 0xb0]
lea r9, [rsp + 0xc8]
mov rcx, r10
call qword [rax + 0x68]
mov rdx, qword [rsp + 0xb0]
mov rcx, rdi
mov r13d, eax
mov dword [rsp + 0x44], eax
call fcn.140100ad0
test r13d, r13d
jne 0x140106edc
cmp dword [rbp + r12*8 + 4], r13d
je 0x140106edc
mov rax, qword [rsp + 0xc8]
mov qword [rsi + 0x40], rax
inc dword [rdi + 0xac]
jmp 0x140106f50
mov rax, qword [rsi + 0x10]
movsxd rcx, dword [rbp + r12*8 + 4]
shl rcx, 5
mov rcx, qword [rcx + rax + 8]
mov rax, qword [rcx + 8]
mov ecx, dword [rax + 0x3c]
mov qword [r14], rcx
jmp case.0x140100cc5.17
mov rdx, qword [rbp + r12*8 + 0x10]
test rdx, rdx
jne 0x140106f13
mov rdx, qword [rdi + 0x130]
mov qword [rsp + 0xb0], rdx
test rdx, rdx
je case.0x140100cc5.17
cmp qword [rsi + 0xb8], 0
je case.0x140100cc5.17
mov rcx, rdi
call fcn.140100210
mov rcx, qword [rsi + 0xc0]
mov rdx, rax
mov rbx, rax
call qword [rsi + 0xb8]
mov rdx, rbx
mov rcx, rsi
call fcn.1400da6b0
mov r8d, 4
mov ecx, dword [rsp + 0x40]
inc ecx
mov dword [rsp + 0x40], ecx
test r13d, r13d
jne 0x14010140d
mov rax, qword [rsp + 0xa0]
jmp 0x140100c22
mov r13d, 9
jmp 0x14010140d
mov eax, dword [rbp + r12*8 + 4]
mov ebx, dword [rsp + 0x40]
mov dword [rdi + 0x90], eax
movzx eax, byte [rbp + r12*8 + 8]
mov dword [rdi + 0x8c], ebx
mov byte [rdi + 0x60], al
mov r9, qword [rbp + r12*8 + 0x10]
test r9, r9
je 0x140106fe6
lea rcx, [rdi + 0x98]
lea r8, [0x1401cdd70]
mov rdx, rsi
call fcn.1400dabc0
mov r11, qword [rbp + r12*8 + 0x10]
mov r9, qword [rdi + 0x130]
mov ecx, dword [rbp + r12*8 + 4]
lea rdx, str.abort_at__d_in___s_:__s
mov r8d, ebx
mov qword [rsp + 0x20], r11
call fcn.1400dc4c0
jmp 0x14010700a
cmp dword [rdi + 0x90], 0
je 0x14010700a
mov r9, qword [rdi + 0x130]
mov ecx, dword [rbp + r12*8 + 4]
lea rdx, str.constraint_failed_at__d_in___s_
mov r8d, ebx
call fcn.1400dc4c0
mov rcx, rdi
call fcn.1400fc890
cmp eax, 5
je 0x1401071d9
cmp dword [rdi + 0x90], 0
mov ebx, 0x65
mov eax, 1
cmovne ebx, eax
jmp 0x140101466
mov eax, dword [rdi + 0x88]
mov rcx, qword [rsp + 0x50]
add eax, 2
or eax, 1
mov dword [rdi + 0x88], eax
movsxd rdx, dword [rbp + r12*8 + 4]
mov dword [rsp + 0xb8], r15d
imul rdx, rdx, 0x38
add rdx, rcx
mov qword [rdi + 0x48], rdx
mov qword [rsp + 0xb0], rdx
cmp dword [rbp + r12*8 + 8], 0
jle 0x1401070cc
nop word [rax + rax]
movsxd rcx, r15d
imul rcx, rcx, 0x38
add rcx, rdx
call fcn.1400f8f40
movsxd rcx, dword [rsp + 0xb8]
imul rcx, rcx, 0x38
add rcx, qword [rsp + 0xb0]
call fcn.140100730
mov r15d, dword [rsp + 0xb8]
inc r15d
mov dword [rsp + 0xb8], r15d
cmp r15d, dword [rbp + r12*8 + 8]
jge 0x1401070cc
mov rdx, qword [rsp + 0xb0]
jmp 0x140107080
mov rsi, qword [rsp + 0x68]
cmp byte [rsi + 0x2a], 0
jne 0x1401013ed
mov eax, dword [rsp + 0x40]
mov ebx, 0x64
inc eax
mov dword [rdi + 0x8c], eax
jmp 0x140101466
movzx eax, word [rsp + 0xf4]
mov ecx, 0x2460
test cx, ax
je 0x14010718c
mov ecx, 0x2000
test cx, ax
je 0x140107135
mov rdx, qword [rsp + 0xd0]
lea rcx, [rsp + 0xd0]
call fcn.1400f9080
lea rcx, [rsp + 0xd0]
call fcn.1400f9200
jmp 0x14010718c
mov ecx, 0x400
test cx, ax
je 0x140107160
mov rax, qword [rsp + 0xf8]
test rax, rax
je 0x140107160
mov rcx, qword [rsp + 0xe8]
call rax
mov qword [rsp + 0xf8], r15
jmp 0x14010718c
movzx eax, byte [rsp + 0xf4]
test al, 0x20
je 0x14010717b
mov rcx, qword [rsp + 0xd0]
call fcn.1400e27e0
jmp 0x14010718c
test al, 0x40
je 0x14010718c
lea rcx, [rsp + 0xd0]
call fcn.1400f9480
mov rdx, qword [rsp + 0x100]
mov rcx, qword [rsp + 0xe0]
call fcn.1400da6b0
mov qword [rsp + 0xe8], r15
mov qword [rsp + 0x100], r15
mov qword [rsp + 0xf8], r15
jmp 0x1401013ed
mov r13d, 0x14
jmp 0x140107302
mov eax, dword [rsp + 0x40]
mov dword [rdi + 0x8c], eax
mov byte [r12 + 0x28], 0
mov eax, 5
mov ebx, eax
mov dword [rdi + 0x90], eax
jmp 0x140101466
lea rcx, [rdi + 0x98]
lea r8, str.foreign_key_constraint_failed
mov dword [rdi + 0x90], 0x13
mov byte [rdi + 0x60], 2
call fcn.1400dabc0
mov ebx, r12d
jmp 0x140101466
test ecx, ecx
je 0x140107247
mov rcx, rsi
call fcn.14014b1b0
mov byte [rsi + 0x28], 1
mov rcx, rsi
call fcn.14014ac50
cmp dword [rdi + 0x90], 0
mov ebx, 0x65
mov eax, 1
cmove eax, ebx
mov ebx, eax
jmp 0x140101466
mov rdx, qword [rdi]
cmp qword [rdx + 0x320], 0
jle 0x14010727a
lea rcx, [rdi + 0x98]
lea r8, str.foreign_key_constraint_failed
mov dword [rdi + 0x90], 0x13
mov byte [rdi + 0x60], 2
call fcn.1400dabc0
jmp 0x140101466
movzx eax, byte [rsp + 0xb0]
mov rcx, rdi
mov byte [rsi + 0x28], al
call fcn.1400fc890
cmp eax, 5
jne 0x140107224
mov eax, dword [rsp + 0x40]
sub bl, byte [rsp + 0xb0]
mov dword [rdi + 0x8c], eax
mov eax, 5
mov byte [rsi + 0x28], bl
mov ebx, eax
mov dword [rdi + 0x90], eax
jmp 0x140101466
mov eax, dword [rsp + 0x40]
mov dword [rdi + 0x8c], eax
mov eax, 5
mov ebx, eax
mov dword [rdi + 0x90], eax
jmp 0x140101466
lea r9, [0x1401ead24]
lea rdx, str.database_corruption_at_line__d_of___.10s_
mov r8d, 0xf432
mov ecx, ntohs
call fcn.1400dc4c0
mov r13d, ntohs
jmp 0x140107302
mov rdi, qword [rsp + 0x58]
mov rsi, r12
cmp byte [rsi + 0x2a], 0
je 0x140107310
mov r13d, 7
jmp 0x14010731d
cmp r13d, 0xc0a
je 0x14010140d
mov ecx, r13d
call fcn.14014b2b0
mov r9, rax
lea rcx, [rdi + 0x98]
lea r8, [0x1401cdd70]
mov rdx, rsi
call fcn.1400dabc0
jmp 0x14010140d
mov rsi, qword [rsp + 0x68]
jmp 0x14010734f
mov rdi, qword [rsp + 0x58]
lea rcx, [rdi + 0x98]
lea r8, str.string_or_blob_too_big
mov rdx, rsi
call fcn.1400dabc0
mov r13d, 0x12
jmp 0x14010140d
mov r13d, 9
lea r9, str.unknown_error
mov dword [rdi + 0x90], r13d
mov rax, qword [str.interrupted]
test rax, rax
cmovne r9, rax
jmp 0x140107328
mov rsi, qword [rsp + 0x68]
jmp 0x1401013ed