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

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x168]
sub rsp, 0x240
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
mov rax, qword [0x140165030]
xor rax, rsp
mov qword [rbp + 0x110], rax
mov rdi, qword [rcx + 0x88]
mov r15, rcx
mov qword [rsp + 0x58], rcx
xor ecx, ecx
mov esi, ecx
mov dword [rsp + 0x34], ecx
mov byte [rbp - 0x7f], cl
mov r13d, ecx
mov r12, qword [r15]
mov r14, qword [r15 + 0x68]
mov dword [rbp - 0x6c], ecx
mov rcx, r15
mov qword [rsp + 0x48], rdi
mov al, byte [r12 + 0x5e]
mov byte [rsp + 0x3c], al
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x60], r14
call fcn.14002b17c
xor r10d, r10d
cmp qword [r12 + 0x1c0], r10
je 0x1400303f9
mov r8d, dword [r12 + 0x1d0]
xor edx, edx
mov eax, dword [r15 + 0xe4]
div r8d
sub r8d, edx
mov dword [rsp + 0x38], r8d
mov ebx, r8d
jmp 0x140030400
or ebx, 0xffffffff
mov dword [rsp + 0x38], ebx
mov eax, 7
lea r11d, [rax - 6]
cmp dword [r15 + 0x38], eax
je 0x1400361e0
mov qword [r15 + 0x48], r10
mov qword [r15 + 0xa0], r10
mov eax, dword [r12 + 0x170]
mov dword [r12 + 0x248], r10d
test eax, eax
jne 0x14003619d
movsxd rax, dword [r15 + 0x34]
lea edx, [r11 + 3]
lea r8d, [r11 + 1]
mov dword [rbp + 0x20], 0x3e40
lea r9d, [r11 + 7]
xorps xmm7, xmm7
mov ebx, esi
lea rcx, [rax + rax*2]
lea r13, [rdi + rcx*8]
mov ecx, 0x2400
add ebx, r11d
mov qword [rsp + 0x40], r13
mov dword [rsp + 0x30], ebx
mov eax, 5
movzx ebx, byte [r13]
cmp ebx, 0x53
ja 0x140032990
je 0x140032971
cmp ebx, 0x29
ja 0x140031ab2
je 0x1400319f3
cmp ebx, 0x14
ja 0x1400312da
je 0x1400312ac
cmp ebx, 0xa
ja 0x140030fc2
je 0x140030eb6
cmp ebx, eax
ja 0x140030b5c
je 0x1400304df
test ebx, ebx
je 0x140030683
sub ebx, 1
je 0x140035c21
sub ebx, 1
je 0x14003053f
sub ebx, 1
je 0x140030526
cmp ebx, 1
jne 0x140033c8c
movsxd rcx, dword [r13 + 4]
mov rax, qword [r15 + 0x78]
mov edx, dword [r13 + 0xc]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rbx + 0x38]
call qword [r13 + 0x10]
mov dword [rsp + 0x34], eax
mov esi, eax
xor r10d, r10d
mov dword [rbx + 0x28], r10d
test eax, eax
jne 0x140030b3c
mov byte [rbx + 2], r10b
lea r11d, [rsi + 1]
movzx eax, word [r13 + 2]
add dword [r15 + rax*4 + 0xd4], r11d
jmp 0x14003205c
movsxd rcx, dword [r13 + 4]
mov rax, qword [r15 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, r12
mov rdx, rbx
call fcn.140038fec
jmp 0x1400304f7
mov edx, dword [r13 + 8]
mov dword [rbp - 0x78], r10d
test edx, edx
je 0x14003055b
mov eax, dword [r12 + 0x30]
bt rax, 0x14
jb 0x140035b57
movsxd rcx, dword [r13 + 4]
mov rax, qword [r12 + 0x20]
shl rcx, 5
mov rbx, qword [rcx + rax + 8]
test rbx, rbx
je 0x14003063f
lea r8, [rbp - 0x78]
mov rcx, rbx
call fcn.1400205ec
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov esi, eax
test eax, eax
jne 0x140035b61
lea r11d, [rax + 1]
cmp dword [r13 + 8], r10d
je 0x140030635
lea eax, [r11 + 0x7f]
test byte [r15 + 0xc8], al
je 0x140030635
cmp byte [r12 + 0x5f], r10b
je 0x1400305c3
cmp dword [r12 + 0xcc], r11d
jle 0x140030635
mov r8d, dword [r15 + 0x40]
test r8d, r8d
jne 0x1400305e8
add dword [r12 + 0x2a0], r11d
mov r8d, dword [r12 + 0x29c]
add r8d, dword [r12 + 0x2a0]
mov dword [r15 + 0x40], r8d
dec r8d
xor edx, edx
mov rcx, r12
call fcn.1400686b4
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov esi, eax
test eax, eax
jne 0x140030617
mov edx, dword [r15 + 0x40]
mov rcx, rbx
call fcn.140021848
mov esi, eax
mov dword [rsp + 0x34], eax
xor r10d, r10d
mov rax, qword [r12 + 0x2a8]
mov r11d, 1
mov qword [r15 + 0x58], rax
mov rax, qword [r12 + 0x2b0]
mov qword [r15 + 0x60], rax
mov r9d, 8
lea r8d, [r9 - 6]
cmp word [r13 + 2], r10w
je 0x140030672
mov eax, dword [r13 + 0xc]
cmp dword [rbp - 0x78], eax
jne 0x140035ba6
mov rax, qword [r12 + 0x20]
movsxd rcx, dword [r13 + 4]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov eax, dword [r13 + 0x10]
cmp dword [rcx + 4], eax
jne 0x140035ba6
test esi, esi
jne 0x140030a26
mov ebx, dword [rsp + 0x30]
jmp 0x140030786
mov r12d, dword [r13 + 4]
mov rsi, qword [r13 + 0x10]
test r12d, r12d
jne 0x140030799
mov r12, qword [rsp + 0x50]
cmp dword [r12 + 0xd0], r10d
jg 0x140035d52
test rsi, rsi
jne 0x1400306b1
mov ebx, r10d
jmp 0x1400306c4
or rbx, 0xffffffffffffffff
inc rbx
cmp byte [rsi + rbx], r10b
jne 0x1400306b5
and ebx, 0x3fffffff
mov r8d, dword [r12 + 0x2a0]
xor edx, edx
add r8d, dword [r12 + 0x29c]
mov rcx, r12
call fcn.1400686b4
xor r10d, r10d
mov dword [rsp + 0x34], eax
test eax, eax
jne 0x140030a2a
mov edx, ebx
mov rcx, r12
add rdx, 0x21
call fcn.14000edf4
xor r10d, r10d
mov rdi, rax
test rax, rax
je 0x140030767
lea rcx, [rax + 0x20]
mov rdx, rsi
lea r8d, [rbx + 1]
mov qword [rax], rcx
call fcn.140082960
xor r10d, r10d
lea r11d, [r10 + 1]
cmp byte [r12 + 0x5f], r10b
je 0x140030733
mov byte [r12 + 0x5f], r10b
mov byte [r12 + 0x67], r11b
jmp 0x14003073b
add dword [r12 + 0x29c], r11d
mov rax, qword [r12 + 0x290]
mov qword [rdi + 0x18], rax
mov rax, qword [r12 + 0x2a8]
mov qword [r12 + 0x290], rdi
mov qword [rdi + 8], rax
mov rax, qword [r12 + 0x2b0]
mov qword [rdi + 0x10], rax
mov esi, dword [rsp + 0x34]
mov rdi, qword [rsp + 0x48]
mov ebx, dword [rsp + 0x30]
mov r11d, 1
mov r9d, 8
mov r8d, 2
mov edx, 4
mov ecx, 0x2400
add r13, 0x18
jmp 0x14003045f
mov rcx, qword [rsp + 0x50]
mov r14d, r10d
mov rdi, qword [rcx + 0x290]
test rdi, rdi
je 0x140035dc9
mov rcx, qword [rdi]
mov rdx, rsi
call fcn.140011570
xor r10d, r10d
test eax, eax
je 0x1400307cc
mov rdi, qword [rdi + 0x18]
inc r14d
jmp 0x1400307a8
mov r8, qword [rsp + 0x50]
mov ecx, 1
cmp dword [r8 + 0xd0], r10d
jle 0x1400307e8
cmp r12d, ecx
je 0x140035d5e
lea rbx, [rdi + 0x18]
mov qword [rsp + 0x68], rbx
cmp qword [rbx], r10
jne 0x140030859
cmp byte [r8 + 0x67], r10b
je 0x140030859
mov r13d, ecx
cmp r12d, ecx
jne 0x14003085c
mov edx, ecx
mov rcx, r15
call fcn.14002c4ec
mov r15d, eax
test eax, eax
jne 0x140036215
mov rcx, qword [rsp + 0x50]
lea eax, [r15 + 1]
mov r15, qword [rsp + 0x58]
mov byte [rcx + 0x5f], al
mov rcx, r15
call fcn.14002c53c
mov r8d, 5
cmp eax, r8d
je 0x140035d77
mov r8, qword [rsp + 0x50]
xor eax, eax
mov byte [r8 + 0x67], al
mov esi, dword [r15 + 0x38]
mov dword [rsp + 0x34], esi
jmp 0x140030967
mov r13d, r10d
mov eax, dword [r8 + 0x29c]
mov edx, 2
sub eax, r14d
mov r14d, eax
mov eax, dword [r8 + 0x28]
sub r14d, ecx
mov dword [rbp - 0x78], r14d
cmp r12d, edx
jne 0x1400308d7
mov r15d, dword [r8 + 0x2c]
mov r14d, r10d
and r15d, ecx
test eax, eax
jle 0x1400308d1
mov esi, r15d
mov rbx, r10
xor esi, ecx
mov rcx, qword [r8 + 0x20]
mov edx, 0x204
mov r8d, esi
mov rcx, qword [rbx + rcx + 8]
call fcn.140021654
xor r10d, r10d
mov dword [rsp + 0x34], eax
test eax, eax
jne 0x14003620b
mov r8, qword [rsp + 0x50]
lea ecx, [rax + 1]
add r14d, ecx
add rbx, 0x20
mov eax, dword [r8 + 0x28]
cmp r14d, eax
jl 0x140030894
mov r14d, dword [rbp - 0x78]
jmp 0x1400308da
mov r15d, r10d
mov esi, r10d
test eax, eax
jle 0x14003091b
mov rbx, r10
mov rcx, qword [r8 + 0x20]
mov edx, r12d
mov r8d, r14d
mov rcx, qword [rbx + rcx + 8]
call fcn.1400218b8
xor r10d, r10d
mov dword [rsp + 0x34], eax
test eax, eax
jne 0x14003620b
mov r8, qword [rsp + 0x50]
lea ecx, [rax + 1]
add esi, ecx
add rbx, 0x20
cmp esi, dword [r8 + 0x28]
jl 0x1400308e4
test r15d, r15d
je 0x14003095e
mov rax, qword [r8 + 8]
jmp 0x140030937
and dword [rax + 0xc8], 0xfffffffd
or dword [rax + 0xc8], ecx
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x140030926
mov rcx, r8
call fcn.1400471bc
mov r8, qword [rsp + 0x50]
mov r15d, 1
mov rbx, qword [rsp + 0x68]
mov esi, dword [rsp + 0x34]
or dword [r8 + 0x2c], r15d
jmp 0x14003096d
mov rbx, qword [rsp + 0x68]
mov esi, dword [rsp + 0x34]
mov r15d, 1
mov rcx, qword [r8 + 0x290]
jmp 0x14003099f
mov rax, qword [rcx + 0x18]
mov rdx, rcx
mov rcx, r8
mov qword [r8 + 0x290], rax
call fcn.14000eb28
mov r8, qword [rsp + 0x50]
mov rcx, qword [r8 + 0x290]
dec dword [r8 + 0x29c]
cmp rcx, rdi
jne 0x140030976
cmp r12d, r15d
jne 0x1400309d7
mov rax, qword [rbx]
mov rdx, rdi
mov rcx, r8
mov qword [r8 + 0x290], rax
call fcn.14000eb28
xor r10d, r10d
test r13d, r13d
jne 0x140030b1b
mov rcx, qword [rsp + 0x50]
dec dword [rcx + 0x29c]
jmp 0x140030a02
mov rax, qword [rdi + 8]
xor r10d, r10d
mov qword [r8 + 0x2a8], rax
mov rax, qword [rdi + 0x10]
mov qword [r8 + 0x2b0], rax
test r13d, r13d
je 0x140030a02
lea eax, [r10 + 2]
cmp r12d, eax
jne 0x140030b1b
mov edx, r12d
mov r8d, r14d
mov r12, qword [rsp + 0x50]
mov rcx, r12
call fcn.1400686b4
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov esi, eax
test eax, eax
je 0x140030b20
mov eax, dword [rsp + 0x34]
mov rsi, qword [rsp + 0x40]
mov edi, 1
mov ebx, dword [rsp + 0x38]
mov r13d, dword [rsp + 0x30]
cmp byte [r12 + 0x61], r10b
mov ecx, 7
cmovne eax, ecx
mov rcx, qword [rsp + 0x58]
mov dword [rsp + 0x34], eax
cmp qword [rcx + 0xa8], r10
jne 0x140030a87
cmp eax, 0xc0a
je 0x140030a87
mov ecx, eax
call fcn.14007c588
mov rcx, qword [rsp + 0x58]
lea rdx, [0x140156560]
mov r8, rax
call fcn.14002a0c8
mov eax, dword [rsp + 0x34]
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0x38], eax
mov edx, eax
mov rcx, r12
call fcn.1400113a8
mov rcx, rsi
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x48]
imul rcx
mov rcx, qword [rsp + 0x58]
sar rdx, 2
mov r8, rdx
shr r8, 0x3f
mov rax, qword [rcx + 0xa8]
add r8, rdx
mov r9, qword [rcx + 0xf0]
lea rdx, str.statement_aborts_at__d:___s___s
mov ecx, dword [rsp + 0x34]
mov qword [rsp + 0x20], rax
call fcn.140010a60
mov rcx, qword [rsp + 0x58]
call fcn.14002c53c
cmp dword [rsp + 0x34], 0xc0a
jne 0x140030afb
mov rcx, r12
call fcn.14000f0c0
movzx eax, byte [rbp - 0x7f]
mov r15d, edi
test al, al
je 0x14003622d
mov edx, eax
mov rcx, r12
sub edx, edi
call fcn.140047140
jmp 0x14003622d
mov r12, qword [rsp + 0x50]
test esi, esi
jne 0x140030a26
mov r13, qword [rsp + 0x40]
mov r15, qword [rsp + 0x58]
mov r14, qword [rsp + 0x60]
jmp 0x14003076b
cmp esi, 0x65
jne 0x140030a26
mov r11d, 1
mov dword [rsp + 0x34], r10d
mov byte [rbx + 2], r11b
mov esi, r10d
jmp 0x140031a3e
sub ebx, 6
je 0x140030e12
sub ebx, 1
je 0x140030c8a
sub ebx, 1
je 0x140030c4b
cmp ebx, 1
jne 0x140033c8c
movsxd rax, dword [r13 + 0xc]
mov r8, r10
movsxd rcx, dword [r13 + 4]
imul rdx, rax, 0x38
mov rax, qword [r15 + 0x78]
add rdx, r14
mov r13, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x58]
lea r11, [rdx + 0x38]
movsxd r9, dword [r11]
mov edx, dword [rdx]
mov rdi, qword [r13 + 0x38]
mov rsi, qword [rcx + 0x70]
mov r15, qword [rdi]
mov r14, qword [r15]
test r9d, r9d
jle 0x140030bdf
mov r12d, ebx
mov r10d, r12d
movsxd rax, r10d
add r10d, r12d
imul rcx, rax, 0x38
add rcx, r11
mov qword [rsi + r8*8], rcx
add r8, r12
cmp r8, r9
jl 0x140030bc1
mov r12, qword [rsp + 0x50]
mov qword [rsp + 0x20], rsi
mov rcx, rdi
mov rsi, qword [rsp + 0x40]
mov r8, qword [rsi + 0x10]
call qword [r14 + 0x40]
mov rdx, r15
mov r15, qword [rsp + 0x58]
mov rcx, r15
mov dword [rsp + 0x34], eax
call fcn.14002df24
mov eax, dword [rsp + 0x34]
xor r10d, r10d
test eax, eax
jne 0x140030a2f
mov rcx, rdi
call qword [r14 + 0x50]
mov rdi, qword [rsp + 0x48]
xor r10d, r10d
mov byte [r13 + 2], r10b
test eax, eax
mov r13, rsi
mov esi, dword [rsp + 0x34]
lea r11d, [r10 + 1]
jne 0x140031835
mov r14, qword [rsp + 0x60]
mov ebx, dword [rsp + 0x30]
jmp 0x14003077a
cmp dword [r13 + 8], r10d
je 0x140030c5e
movsxd rax, dword [r13 + 8]
imul r9, rax, 0x38
add r9, r14
jmp 0x140030c61
mov r9, r10
mov r8d, dword [r13 + 4]
lea rcx, [r15 + 0xa8]
mov rdx, r12
call fcn.140067120
xor r10d, r10d
mov dword [rsp + 0x34], eax
test eax, eax
mov esi, eax
jne 0x140030a26
jmp 0x140030770
mov rdx, r13
mov rcx, r15
call fcn.140030314
movsxd rcx, dword [r13 + 4]
mov r14, rax
mov rax, qword [r12 + 0x20]
mov ebx, dword [r13 + 0xc]
shl rcx, 5
mov r15, qword [rcx + rax + 8]
mov rcx, r15
call fcn.140026fc8
mov rcx, rax
mov rsi, rax
call fcn.14001b098
cmp ebx, 0xffffffff
mov rcx, rsi
mov edi, eax
cmove ebx, eax
call fcn.14001b0a0
test eax, eax
mov edx, 1
mov rcx, rsi
cmove ebx, edi
call fcn.14001af68
mov edx, 5
cmp ebx, edx
jne 0x140030d74
mov rcx, rax
call fcn.14001133c
test eax, eax
je 0x140030d0a
mov rcx, rsi
call fcn.14001b0c0
xor ecx, ecx
test eax, eax
jne 0x140030d78
mov ebx, edi
mov eax, dword [rsp + 0x34]
test eax, eax
je 0x140030d16
mov ebx, edi
mov edx, ebx
mov rcx, rsi
call fcn.14001af84
mov ecx, 0xa02
mov word [r14 + 8], cx
mov ecx, eax
call fcn.140057118
mov rcx, rax
mov qword [r14 + 0x10], rax
call fcn.14001133c
movzx edx, byte [rsp + 0x3c]
mov edi, 1
mov rcx, r14
mov byte [r14 + 0xa], dil
mov dword [r14 + 0xc], eax
call fcn.140028a80
mov esi, dword [rsp + 0x34]
xor r10d, r10d
test esi, esi
je 0x140030b2d
mov rsi, qword [rsp + 0x40]
mov eax, dword [rsp + 0x34]
jmp 0x140030a34
xor ecx, ecx
jmp 0x140030d7d
mov edx, 5
cmp ebx, edi
je 0x140030d0c
cmp edi, edx
je 0x140030d89
cmp ebx, edx
jne 0x140030d0c
cmp byte [r12 + 0x5f], cl
je 0x140035dee
mov eax, 1
cmp dword [r12 + 0xcc], eax
jg 0x140035dee
cmp edi, edx
jne 0x140030dd0
mov rdx, r12
mov rcx, rsi
call fcn.14001b1e0
mov dword [rsp + 0x34], eax
test eax, eax
jne 0x140030d14
mov edx, ebx
mov rcx, rsi
call fcn.14001af84
xor ecx, ecx
jmp 0x140030df0
mov eax, 4
cmp edi, eax
jne 0x140030de6
lea edx, [rax - 2]
mov rcx, rsi
call fcn.14001af84
xor ecx, ecx
cmp dword [rsp + 0x34], ecx
jne 0x140030d14
mov edx, ecx
mov ecx, 5
cmp ebx, ecx
sete dl
lea eax, [rcx - 4]
mov rcx, r15
add edx, eax
call fcn.140027e64
mov dword [rsp + 0x34], eax
jmp 0x140030d10
mov r8d, dword [r13 + 8]
lea rax, [rbp + 0x108]
mov edx, dword [r13 + 4]
lea r9, [rbp + 0x104]
or dword [rbp + 0x108], 0xffffffff
mov rcx, r12
or dword [rbp + 0x104], 0xffffffff
mov qword [rsp + 0x20], rax
mov dword [rbp + 0x100], r10d
call fcn.14007d3a0
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov esi, eax
test eax, eax
je 0x140030e74
lea ecx, [r10 + 5]
cmp eax, ecx
jne 0x140030a26
lea eax, [rcx - 4]
mov dword [rsp + 0x34], r10d
mov dword [rbp + 0x100], eax
mov esi, r10d
movsxd rax, dword [r13 + 0xc]
mov rdi, r10
imul rbx, rax, 0x38
add rbx, r14
movsxd rdx, dword [rbp + rdi*4 + 0x100]
mov rcx, rbx
call fcn.140029420
mov r11d, 1
add rbx, 0x38
add rdi, r11
cmp rdi, 3
jl 0x140030e82
mov rdi, qword [rsp + 0x48]
mov ebx, dword [rsp + 0x30]
xor r10d, r10d
jmp 0x14003077a
cmp byte [r12 + 0x61], r10b
jne 0x1400361d7
mov rax, qword [r13 + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x140035e42
mov r10, qword [rbx]
xor r11d, r11d
test r10, r10
je 0x140035e42
movsxd rdx, dword [r13 + 8]
cmp qword [r10 + 0x68], r11
je 0x140035b43
movsxd rax, dword [r13 + 0xc]
mov dil, byte [r12 + 0x66]
mov r8, qword [r15 + 0x70]
imul rcx, rax, 0x38
mov eax, r11d
add rcx, r14
test edx, edx
jle 0x140030f1e
lea r11d, [rax + 1]
mov qword [r8 + rax*8], rcx
add rcx, 0x38
add rax, r11
cmp rax, rdx
jl 0x140030f0e
mov al, byte [r13 + 2]
lea r9, [rbp + 0x48]
mov rcx, rbx
mov byte [r12 + 0x66], al
call qword [r10 + 0x68]
mov rdx, rbx
mov byte [r12 + 0x66], dil
mov rcx, r15
mov dword [rsp + 0x34], eax
mov esi, eax
call fcn.14002df24
xor r10d, r10d
test esi, esi
jne 0x140030f7a
cmp dword [r13 + 4], r10d
je 0x140030f5e
mov rax, qword [rbp + 0x48]
mov qword [r12 + 0x38], rax
mov r11d, 1
add dword [r15 + 0x3c], r11d
test esi, esi
jne 0x1400354fe
mov rdi, qword [rsp + 0x48]
jmp 0x140030c42
cmp sil, 0x13
jne 0x140030f5e
mov rax, qword [r13 + 0x10]
cmp byte [rax + 0x1c], r10b
je 0x140030f5e
mov edx, 4
cmp word [r13 + 2], dx
jne 0x140035e21
mov esi, r10d
mov dword [rsp + 0x34], r10d
mov rdi, qword [rsp + 0x48]
mov r11d, 1
mov ebx, dword [rsp + 0x30]
mov r8d, 2
mov r9d, 8
jmp 0x14003078b
sub ebx, 0xb
je 0x14003205c
sub ebx, 1
je 0x140031272
sub ebx, 1
je 0x140031244
sub ebx, 1
je 0x1400311fd
sub ebx, 1
je 0x140031193
sub ebx, 1
je 0x14003114c
sub ebx, 1
je 0x1400310bd
sub ebx, 1
je 0x140031093
cmp ebx, 1
jne 0x140033c8c
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
movsxd rax, dword [r13 + 8]
imul rbx, rax, 0x38
add rcx, r14
add rbx, r14
test byte [rcx + 8], r11b
jne 0x140031074
xor edx, edx
call fcn.1400290c8
xor r10d, r10d
mov edx, 0x2400
test eax, eax
mov ecx, r10d
sete cl
test word [rbx + 8], dx
je 0x140031063
mov rdx, rcx
mov rcx, rbx
call fcn.1400293e8
mov ebx, dword [rsp + 0x30]
xor r10d, r10d
jmp 0x140030774
mov edx, 4
mov qword [rbx], rcx
mov word [rbx + 8], dx
jmp 0x140030fa7
mov ecx, 0x2400
test word [rbx + 8], cx
je 0x140031089
mov rcx, rbx
call fcn.140028f48
jmp 0x140031057
mov word [rbx + 8], r11w
jmp 0x140033c8c
movsxd rax, dword [r13 + 4]
mov edx, dword [r13 + 0xc]
imul rcx, rax, 0x38
add rcx, r14
call fcn.1400290c8
xor r10d, r10d
mov r11d, 1
test eax, eax
jne 0x140031835
jmp 0x140030c42
mov r8, qword [r15 + 0x100]
test r8, r8
je 0x140031122
mov r9, qword [r8 + 0x30]
mov rcx, r13
sub rcx, qword [r15 + 0x88]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov ecx, edx
and edx, 7
shr rcx, 3
movzx eax, byte [rcx + r9]
bt eax, edx
jb 0x140031835
bts eax, edx
mov edx, 4
mov byte [rcx + r9], al
mov rcx, qword [r15 + 0x88]
lea r9d, [rdx + 4]
jmp 0x140031136
mov rcx, qword [r15 + 0x88]
mov eax, dword [r13 + 4]
cmp dword [rcx + 4], eax
je 0x140031835
mov eax, dword [rcx + 4]
mov dword [r13 + 4], eax
mov ebx, dword [rsp + 0x30]
mov r8d, 2
jmp 0x14003078b
mov r9d, dword [rbp - 0x6c]
mov ebx, dword [rsp + 0x30]
test r9d, r9d
jns 0x14003116f
mov eax, dword [r13 + 4]
sub eax, r11d
cdqe
lea rcx, [rax + rax*2]
lea r13, [rdi + rcx*8]
jmp 0x140030fb7
mov r9d, 8
jne 0x14003118d
mov eax, dword [r13 + 8]
sub eax, r11d
cdqe
lea rcx, [rax + rax*2]
lea r13, [rdi + rcx*8]
jmp 0x14003078b
mov eax, dword [r13 + 0xc]
jmp 0x14003117b
movsxd rax, dword [r13 + 4]
imul rbx, rax, 0x38
add rbx, r14
movzx eax, word [rbx + 8]
test dl, al
jne 0x1400311ed
mov r8b, byte [rsp + 0x3c]
mov dl, 0x43
mov rcx, rbx
call fcn.14003018c
movzx eax, word [rbx + 8]
mov edx, 4
xor r10d, r10d
test dl, al
jne 0x1400311da
cmp dword [r13 + 8], r10d
je 0x140035e4f
mov r11d, 1
jmp 0x140031835
mov r11d, 1
mov ecx, 0x2400
lea r8d, [r11 + 1]
lea r9d, [r11 + 7]
and ax, word [rbp + 0x20]
or ax, dx
mov word [rbx + 8], ax
jmp 0x140033c8c
movsxd rax, dword [r13 + 4]
sub r13, rdi
imul r8, rax, 0x38
movabs rax, 0x2aaaaaaaaaaaaaab
movsxd rcx, dword [r8 + r14]
mov word [r8 + r14 + 8], dx
imul r13
lea rcx, [rcx + rcx*2]
sar rdx, 2
lea r13, [rdi + rcx*8]
mov rax, rdx
shr rax, 0x3f
add rax, rdx
cdqe
mov qword [r8 + r14], rax
mov ebx, dword [rsp + 0x30]
jmp 0x140030780
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
mov eax, dword [r13 + 0xc]
sub eax, r11d
cdqe
mov qword [rcx + r14], rax
mov word [rcx + r14 + 8], dx
cmp dword [r13 + 8], r10d
jne 0x140031835
mov ebx, dword [rsp + 0x30]
jmp 0x14003078b
movsxd rax, dword [r13 + 4]
mov rcx, r13
imul r8, rax, 0x38
sub rcx, rdi
movabs rax, 0x2aaaaaaaaaaaaaab
mov word [r8 + r14 + 8], dx
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rax, rdx
cdqe
mov qword [r8 + r14], rax
jmp 0x140031835
cmp dword [r13 + 0xc], r10d
mov edx, r10d
movsxd rax, dword [r13 + 4]
sete dl
imul rcx, rax, 0x38
add rcx, r14
call fcn.1400290c8
xor r10d, r10d
lea r11d, [r10 + 1]
test eax, eax
je 0x140031835
jmp 0x140030c42
cmp ebx, 0x1f
ja 0x140031858
je 0x1400317c8
cmp ebx, 0x1a
ja 0x14003162b
je 0x1400315d3
mov ecx, ebx
sub ecx, 0x15
je 0x140031590
sub ecx, 1
je 0x14003131b
sub ecx, 1
je 0x14003131b
sub ecx, 1
je 0x14003131b
cmp ecx, 1
jne 0x140031269
movsxd rcx, dword [r13 + 4]
mov r12d, r10d
mov rax, qword [r15 + 0x78]
mov r14, qword [rax + rcx*8]
and word [r14 + 2], 0
mov dword [r14 + 0x28], r10d
cmp byte [r14 + 4], r10b
je 0x140031482
movsxd rax, dword [r13 + 0xc]
imul rdi, rax, 0x38
add rdi, qword [rsp + 0x60]
movzx esi, word [rdi + 8]
mov al, sil
and al, 0x2e
cmp al, r8b
jne 0x140031363
xor edx, edx
mov rcx, rdi
call fcn.1400300f0
mov rcx, rdi
call fcn.140029044
movzx ecx, word [rdi + 8]
mov r15, rax
mov word [rdi + 8], si
test cl, 0x24
jne 0x14003143f
mov edx, 8
test dl, cl
jne 0x140031410
lea r11d, [rdx - 7]
test r11b, cl
jne 0x140034c58
cmp ebx, 0x18
jae 0x140034c58
mov rcx, qword [r14 + 0x38]
lea rdx, [rbp - 0x7c]
call fcn.14002239c
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov esi, eax
test eax, eax
jne 0x140036207
mov r11d, 1
cmp dword [rbp - 0x7c], r10d
jne 0x140034c77
mov r15, qword [rsp + 0x58]
mov edx, 4
mov r14, qword [rsp + 0x60]
test r12d, r12d
mov rdi, qword [rsp + 0x48]
mov ecx, 0x2400
mov ebx, dword [rsp + 0x30]
mov r12, qword [rsp + 0x50]
lea r11d, [rdx - 3]
lea r8d, [rdx - 2]
lea r9d, [rdx + 4]
je 0x140030790
add r13, 0x18
jmp 0x140030790
movsd xmm1, qword [rdi]
xorps xmm0, xmm0
cvtsi2sd xmm0, r15
mov edi, 1
comisd xmm0, xmm1
jbe 0x140031430
test dil, bl
je 0x140031444
sub ebx, edi
jmp 0x140031444
comisd xmm1, xmm0
jbe 0x140031444
test dil, bl
jne 0x140031444
add ebx, edi
jmp 0x140031444
mov edi, 1
mov rcx, qword [r14 + 0x38]
lea rax, [rbp - 0x7c]
xor r9d, r9d
mov qword [rsp + 0x20], rax
mov r8, r15
xor edx, edx
call fcn.140022404
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov qword [r14 + 0x58], r15
mov esi, eax
test eax, eax
je 0x140031505
mov rsi, qword [rsp + 0x40]
mov r12, qword [rsp + 0x50]
jmp 0x140030a34
mov rax, qword [r14 + 0x38]
lea rdx, [rbp - 0x40]
mov dil, byte [rax + 3]
mov rax, qword [r14 + 0x40]
and dil, r8b
mov qword [rbp - 0x40], rax
movzx eax, word [r13 + 0x10]
setne r12b
mov word [rbp - 0x30], ax
mov eax, ebx
and al, r11b
mov byte [rbp - 0x2a], r10b
neg al
movsxd rax, dword [r13 + 0xc]
sbb cl, cl
xor r9d, r9d
and cl, 0xfe
xor r8d, r8d
add cl, r11b
mov byte [rbp - 0x2e], cl
imul rcx, rax, 0x38
lea rax, [rbp - 0x7c]
add rcx, qword [rsp + 0x60]
mov qword [rbp - 0x38], rcx
mov rcx, qword [r14 + 0x38]
mov qword [rsp + 0x20], rax
call fcn.140022404
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov esi, eax
test eax, eax
jne 0x140036207
test dil, dil
je 0x140031505
cmp byte [rbp - 0x2a], r10b
je 0x1400313c0
mov eax, dword [rbp - 0x7c]
cmp ebx, 0x18
jl 0x14003155f
test eax, eax
js 0x140031521
jne 0x140031518
cmp ebx, 0x19
je 0x140031521
mov dword [rbp - 0x7c], r10d
jmp 0x1400313d0
mov dword [rbp - 0x7c], r10d
xor edx, edx
mov rcx, qword [r14 + 0x38]
call fcn.1400229ac
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov esi, eax
test eax, eax
je 0x1400313c0
cmp eax, 0x65
jne 0x140036207
lea r11d, [r10 + 1]
mov dword [rsp + 0x34], r10d
mov dword [rbp - 0x7c], r11d
mov esi, r10d
jmp 0x1400313c6
test eax, eax
jg 0x14003157f
jne 0x14003156a
cmp ebx, 0x16
je 0x14003157f
mov rax, qword [r14 + 0x38]
mov ecx, r10d
cmp byte [rax], r10b
setne cl
mov dword [rbp - 0x7c], ecx
jmp 0x1400313c0
mov dword [rbp - 0x7c], r10d
xor edx, edx
mov rcx, qword [r14 + 0x38]
call fcn.140022ae0
jmp 0x140031530
movsxd rcx, dword [r13 + 4]
mov rax, qword [r15 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx + 2], r10b
je 0x140031269
movsxd rax, dword [r13 + 0xc]
mov edx, 0x2400
imul rcx, rax, 0x38
add rcx, r14
test word [rcx + 8], dx
je 0x1400315c9
call fcn.140028f48
xor r10d, r10d
jmp 0x1400311cf
mov word [rcx + 8], r11w
jmp 0x140031835
movsxd rcx, dword [r13 + 4]
mov rax, qword [r15 + 0x78]
mov rcx, qword [rax + rcx*8]
test byte [rcx + 8], r9b
jne 0x140031269
mov rax, qword [r15 + 0x78]
movsxd rcx, dword [r13 + 4]
mov rsi, qword [rax + rcx*8]
movsxd rax, dword [r13 + 0xc]
imul rbx, rax, 0x38
add rbx, r14
cmp dword [r13 + 0x10], r10d
jle 0x1400316b6
mov rax, qword [rsi + 0x40]
lea rdi, [rbp - 0x40]
mov qword [rbp - 0x40], rax
mov r14, r10
movzx eax, word [r13 + 0x10]
mov word [rbp - 0x30], ax
mov qword [rbp - 0x38], rbx
jmp 0x140031707
sub ebx, 0x1b
je 0x1400315e9
sub ebx, 1
je 0x1400315e9
sub ebx, 1
je 0x1400315e9
cmp ebx, 1
jne 0x140033c8c
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
add rcx, r14
test byte [rcx + 8], 0x24
jne 0x1400317c8
movups xmm0, xmmword [rcx]
mov r8b, byte [rsp + 0x3c]
mov dl, 0x43
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rbp + 0xc8], xmm0
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rbp + 0xd8], xmm1
movsd xmm1, qword [rcx + 0x30]
lea rcx, [rbp + 0xc8]
movups xmmword [rbp + 0xe8], xmm0
movsd qword [rbp + 0xf8], xmm1
call fcn.14003018c
lea eax, [rbx + 3]
xor r10d, r10d
test byte [rbp + 0xd0], al
je 0x1400311cf
mov rdi, qword [rbp + 0xc8]
jmp 0x1400317d4
mov eax, 0x4000
test word [rbx + 8], ax
je 0x1400316d1
mov rcx, rbx
call fcn.140028cac
test eax, eax
jne 0x1400361d7
mov rcx, qword [rsi + 0x40]
call fcn.14002cf94
mov rdi, rax
mov r14, rax
test rax, rax
je 0x1400361d7
mov r8, qword [rbx + 0x10]
mov r9, rax
mov edx, dword [rbx + 0xc]
mov rcx, qword [rsi + 0x40]
call fcn.14002cfec
xor r10d, r10d
lea r11d, [r10 + 1]
lea r9d, [r10 + 8]
mov byte [rdi + 0x12], r10b
mov ebx, r10d
cmp byte [r13], 0x1b
jne 0x14003173c
movzx edx, word [rdi + 0x10]
mov ecx, r10d
test edx, edx
je 0x14003173c
mov rax, qword [rdi + 8]
add rax, r9
test byte [rax], r11b
jne 0x140031739
add ecx, r11d
add rax, 0x38
cmp ecx, edx
jl 0x140031727
jmp 0x14003173c
mov ebx, r11d
mov rcx, qword [rsi + 0x38]
lea rax, [rbp - 8]
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, rdi
call fcn.140022404
xor r10d, r10d
mov dword [rsp + 0x34], eax
test r14, r14
je 0x140031775
mov rdx, r14
mov rcx, r12
call fcn.14000eb28
mov eax, dword [rsp + 0x34]
xor r10d, r10d
test eax, eax
jne 0x140030a2a
mov eax, dword [rbp - 8]
mov ecx, r10d
mov rdi, qword [rsp + 0x48]
mov r11d, 1
mov dword [rsi + 0x2c], eax
mov eax, dword [rbp - 8]
test eax, eax
mov byte [rsi + 3], r10b
sete cl
mov dword [rsi + 0x28], r10d
test eax, eax
setne al
mov byte [rsi + 2], al
cmp byte [r13], 0x1d
mov esi, dword [rsp + 0x34]
jne 0x1400317bb
test ecx, ecx
jmp 0x140030c37
test ebx, ebx
jne 0x140031835
test ecx, ecx
je 0x140031835
jmp 0x140030c3d
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
mov rdi, qword [rcx + r14]
movsxd rcx, dword [r13 + 4]
xor r9d, r9d
mov rax, qword [r15 + 0x78]
mov r8, rdi
xor edx, edx
mov rbx, qword [rax + rcx*8]
lea rax, [rbp - 0x54]
mov qword [rsp + 0x20], rax
mov rcx, qword [rbx + 0x38]
mov dword [rbp - 0x54], r10d
call fcn.140022404
xor r10d, r10d
mov qword [rbx + 0x58], rdi
mov word [rbx + 2], r10w
mov esi, eax
mov dword [rbx + 0x28], r10d
mov dword [rsp + 0x34], eax
mov eax, dword [rbp - 0x54]
mov dword [rbx + 0x2c], eax
cmp dword [rbp - 0x54], r10d
je 0x14003184b
cmp dword [r13 + 8], r10d
je 0x140035e5c
mov r11d, 1
mov rdi, qword [rsp + 0x48]
mov eax, dword [r13 + 8]
sub eax, r11d
cdqe
lea rcx, [rax + rax*2]
lea r13, [rdi + rcx*8]
jmp 0x140030c3d
test esi, esi
jne 0x140030a26
jmp 0x14003076b
mov ecx, ebx
sub ecx, 0x20
je 0x140034bf1
sub ecx, 1
je 0x14003197f
sub ecx, 1
je 0x14003191d
sub ecx, 1
je 0x14003191d
sub ecx, 1
je 0x140031924
sub ecx, 1
je 0x14003189f
sub ecx, 1
je 0x14003189f
sub ecx, 1
je 0x14003189f
cmp ecx, 1
jne 0x140031269
movsxd rcx, dword [r13 + 4]
lea r9, [rbp - 0x60]
mov rax, qword [r15 + 0x78]
lea r8, [rbp - 0x40]
cmp bl, 0x27
mov rdx, qword [rax + rcx*8]
mov rax, qword [rdx + 0x40]
mov qword [rbp - 0x40], rax
movzx eax, word [r13 + 0x10]
mov word [rbp - 0x30], ax
sbb al, al
mov byte [rbp - 0x2e], al
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
mov dword [rbp - 0x60], r10d
add rcx, r14
mov qword [rbp - 0x38], rcx
mov rcx, r12
call fcn.14002dd88
mov r11d, 1
mov dword [rsp + 0x34], eax
mov esi, eax
mov eax, dword [rbp - 0x60]
test byte [r13], r11b
je 0x140031900
neg eax
jmp 0x140031902
inc eax
xor r10d, r10d
mov dword [rbp - 0x60], eax
test esi, esi
jne 0x1400354fe
test eax, eax
jg 0x140031835
jmp 0x140030c42
add dword [r15 + 0xdc], r11d
movsxd rcx, dword [r13 + 4]
lea rdx, [rbp - 0x5c]
mov rax, qword [r15 + 0x78]
mov rbx, qword [rax + rcx*8]
mov dword [rbp - 0x5c], r11d
cmp byte [rbx], r11b
jne 0x14003194a
mov rcx, rbx
call fcn.140038f7c
xor r10d, r10d
jmp 0x14003195e
mov rcx, qword [rbx + 0x38]
call fcn.14002235c
xor r10d, r10d
mov byte [rbx + 3], r10b
mov dword [rbx + 0x28], r10d
mov dword [rsp + 0x34], eax
mov esi, eax
test eax, eax
jne 0x140030a26
mov al, byte [rbp - 0x5c]
lea r11d, [rsi + 1]
mov byte [rbx + 2], al
cmp dword [rbp - 0x5c], r10d
jmp 0x1400310b2
movsxd rcx, dword [r13 + 4]
lea rdx, [rbp - 0x58]
mov rax, qword [r15 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rbx, qword [rcx + 0x38]
mov rcx, rbx
call fcn.14002235c
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov esi, eax
test eax, eax
jne 0x140030a26
cmp dword [rbp - 0x58], r10d
jne 0x1400311cf
mov rcx, rbx
call fcn.14002287c
xor r10d, r10d
test rax, rax
js 0x1400319eb
mov rcx, rax
call fcn.14001249c
movsx ecx, ax
lea r11d, [rsi + 1]
cmp ecx, dword [r13 + 0xc]
mov eax, dword [rbp - 0x58]
cmovl eax, r11d
xor r10d, r10d
mov dword [rbp - 0x58], eax
jmp 0x1400310b0
mov eax, dword [rbp - 0x58]
jmp 0x1400310aa
movsxd rax, dword [r13 + 4]
imul rbx, rax, 0x38
mov eax, 0x10
add rbx, r14
test byte [rbx + 8], al
je 0x140031aa2
mov rcx, qword [rbx + 0x10]
lea rdx, [rbp + 0x50]
call fcn.140017004
test eax, eax
je 0x140031aa2
movsxd rax, dword [r13 + 0xc]
mov rdx, qword [rbp + 0x50]
imul rcx, rax, 0x38
add rcx, r14
call fcn.140029420
xor r10d, r10d
mov r11d, 1
mov eax, dword [r12 + 0x170]
test eax, eax
jne 0x140036194
mov r8d, dword [rsp + 0x38]
mov ebx, dword [rsp + 0x30]
cmp ebx, r8d
jb 0x14003077a
mov rax, qword [r12 + 0x1c0]
test rax, rax
je 0x140030774
add r8d, dword [r12 + 0x1d0]
mov rcx, qword [r12 + 0x1c8]
mov dword [rsp + 0x38], r8d
call rax
xor r10d, r10d
test eax, eax
jne 0x140035eaa
mov r8d, dword [rsp + 0x38]
cmp ebx, r8d
jae 0x140031a60
jmp 0x140030774
mov rcx, rbx
call fcn.14002937c
xor r10d, r10d
jmp 0x140032056
cmp ebx, 0x3e
ja 0x140032342
je 0x1400323de
cmp ebx, 0x34
ja 0x140031f38
je 0x1400320c4
cmp ebx, 0x2f
ja 0x140031ea8
je 0x140031e83
sub ebx, 0x2a
je 0x140031e11
sub ebx, 1
je 0x140031d7e
sub ebx, 1
je 0x140031d7e
sub ebx, 1
je 0x140031b35
cmp ebx, 1
jne 0x140033c8c
cmp dword [r13 + 4], r10d
je 0x140031b18
cmp qword [r12 + 0x2a8], r10
jmp 0x140031b1c
cmp qword [r15 + 0x50], r10
jne 0x140033c8c
cmp qword [r12 + 0x2b0], r10
je 0x140031835
jmp 0x140033c8c
movsxd rax, dword [r13 + 0xc]
mov r15, qword [r13 + 0x10]
mov r8, qword [rsp + 0x58]
imul rdi, rax, 0x38
add rdi, r14
cmp word [r13 + 2], r10w
je 0x140031b70
mov rcx, qword [r15 + 0x20]
mov rax, qword [r8 + 0x100]
jmp 0x140031b6b
cmp qword [rax + 0x38], rcx
je 0x140035b2c
mov rax, qword [rax + 8]
test rax, rax
jne 0x140031b5d
mov eax, dword [r8 + 0x110]
cmp eax, dword [r12 + 0xa4]
jge 0x140035e91
mov ecx, 0x10
test byte [rdi + 8], cl
jne 0x140031cad
mov edx, dword [r15 + 0x10]
mov ecx, dword [r15 + 0xc]
add ecx, edx
test edx, edx
lea r14d, [rcx + 1]
cmovne r14d, ecx
lea eax, [r14 + 2]
imul ecx, eax, 7
mov eax, dword [r15 + 8]
add ecx, edx
mov edx, 7
add eax, edx
jns 0x140031bbf
add eax, edx
sar eax, 3
lea esi, [rax + rcx*8]
mov rcx, r12
movsxd rdx, esi
call fcn.14000ed84
mov rbx, rax
test rax, rax
je 0x1400361d7
mov rcx, rdi
call fcn.140028fc4
mov r8, qword [rsp + 0x58]
mov eax, 0x410
sub r13, qword [rsp + 0x48]
mov word [rdi + 8], ax
lea rax, [0x14002b34c]
mov qword [rdi + 0x30], rax
mov qword [rdi + 0x10], rbx
mov dword [rdi + 0xc], esi
mov qword [rbx], r8
mov dword [rbx + 0x60], r14d
mov eax, dword [r15 + 0x10]
mov dword [rbx + 0x64], eax
movabs rax, 0x2aaaaaaaaaaaaaab
imul r13
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rbx + 0x54], edx
mov rax, qword [r8 + 0x68]
mov qword [rbx + 0x20], rax
mov eax, dword [r8 + 0x28]
mov dword [rbx + 0x5c], eax
mov rax, qword [r8 + 0x78]
mov qword [rbx + 0x28], rax
mov eax, dword [r8 + 0x2c]
mov dword [rbx + 0x50], eax
mov rax, qword [r8 + 0x88]
mov qword [rbx + 0x10], rax
mov eax, dword [r8 + 0x90]
mov dword [rbx + 0x58], eax
mov rax, qword [r15 + 0x20]
mov qword [rbx + 0x38], rax
movsxd rax, r14d
add rax, 2
imul rcx, rax, 0x38
lea rax, [rbx + 0x70]
add rcx, rbx
cmp rax, rcx
je 0x140031c9d
mov edx, 0x80
mov word [rax + 8], dx
mov qword [rax + 0x28], r12
add rax, 0x38
cmp rax, rcx
jne 0x140031c8c
mov eax, dword [r8 + 0x110]
xor r10d, r10d
mov esi, dword [rsp + 0x34]
jmp 0x140031cb1
mov rbx, qword [rdi + 0x10]
inc eax
lea r14, [rbx + 0x70]
mov dword [r8 + 0x110], eax
mov rax, qword [r8 + 0x100]
mov qword [rbx + 8], rax
mov rax, qword [r12 + 0x38]
mov qword [rbx + 0x40], rax
mov eax, dword [r8 + 0x3c]
mov dword [rbx + 0x68], eax
mov rax, qword [r8]
mov qword [rsp + 0x60], r14
mov ecx, dword [rax + 0x74]
mov dword [rbx + 0x6c], ecx
mov rax, qword [r8 + 0x120]
mov qword [rbx + 0x48], rax
mov qword [r8 + 0x120], r10
mov dword [r8 + 0x3c], r10d
mov qword [r8 + 0x100], rbx
mov qword [r8 + 0x68], r14
movsxd rcx, dword [rbx + 0x60]
mov dword [r8 + 0x28], ecx
movzx eax, word [rbx + 0x64]
mov dword [r8 + 0x2c], eax
imul rdx, rcx, 0x38
add rdx, r14
mov qword [r8 + 0x78], rdx
mov r8d, 7
movsxd rax, dword [r15 + 0x10]
lea rcx, [rdx + rax*8]
mov qword [rbx + 0x30], rcx
mov eax, dword [r15 + 8]
add eax, r8d
cdq
and edx, r8d
add eax, edx
xor edx, edx
sar eax, 3
movsxd r8, eax
call fcn.140083010
mov rdi, qword [r15]
mov rcx, qword [rsp + 0x58]
mov qword [rsp + 0x48], rdi
lea r13, [rdi - 0x18]
mov qword [rcx + 0x88], rdi
mov eax, dword [r15 + 8]
mov r15, rcx
mov dword [rcx + 0x90], eax
mov qword [rsp + 0x40], r13
jmp 0x140031a35
movsxd rax, dword [r13 + 4]
mov edx, r8d
imul rcx, rax, 0x38
add rcx, r14
call fcn.1400290c8
mov ebx, eax
mov edx, 2
movsxd rax, dword [r13 + 8]
imul rcx, rax, 0x38
add rcx, r14
call fcn.1400290c8
lea eax, [rax + rbx*2]
add eax, ebx
cmp byte [r13], 0x2c
movsxd rcx, eax
lea rax, [0x140000000]
jne 0x140031dc8
mov r8b, byte [rcx + rax + 0x14e5b0]
jmp 0x140031dd0
mov r8b, byte [rcx + rax + 0x14e528]
movsxd rax, dword [r13 + 0xc]
imul rdx, rax, 0x38
mov eax, 0x3e40
movzx ecx, word [rdx + r14 + 8]
and cx, ax
mov eax, 2
lea r11d, [rax - 1]
cmp r8b, al
jne 0x140031dfa
or cx, r11w
jmp 0x140031e06
movzx eax, r8b
or cx, 4
mov qword [rdx + r14], rax
mov word [rdx + r14 + 8], cx
jmp 0x140030eaa
movsxd rax, dword [r13 + 4]
mov edi, dword [r13 + 0x10]
imul rbx, rax, 0x38
movsxd rax, dword [r13 + 0xc]
imul rsi, rax, 0x38
add rbx, r14
mov eax, 0x10
test byte [rbx + 8], al
jne 0x140031e42
mov rcx, rbx
call fcn.1400294b4
test eax, eax
jne 0x1400361d7
test edi, edi
je 0x140031e68
mov r8, qword [rsi + r14]
mov edx, edi
mov rcx, qword [rbx + 0x10]
call fcn.140017074
xor r10d, r10d
test eax, eax
jne 0x140034c6e
test edi, edi
js 0x140030767
mov rdx, qword [rsi + r14]
mov rcx, qword [rbx + 0x10]
call fcn.140016d70
mov esi, dword [rsp + 0x34]
mov rdi, qword [rsp + 0x48]
jmp 0x140031057
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
mov rdx, qword [rcx + r14]
test rdx, rdx
jle 0x14003067a
movsxd rax, dword [r13 + 0xc]
sub rdx, rax
mov qword [rcx + r14], rdx
jmp 0x140031835
sub ebx, 0x30
je 0x140031f11
sub ebx, 1
je 0x140031eea
sub ebx, 1
je 0x140031ed8
cmp ebx, 1
jne 0x140033c8c
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
test byte [rcx + r14 + 8], r11b
je 0x140031835
jmp 0x140031269
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
test byte [rcx + r14 + 8], r11b
jmp 0x140031263
movsxd rax, dword [r13 + 4]
movabs rbx, 0x8000000000000000
imul rcx, rax, 0x38
mov rax, qword [rcx + r14]
cmp rax, rbx
jle 0x140031f0c
dec rax
mov qword [rcx + r14], rax
test rax, rax
jmp 0x140031ecd
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r14]
test rax, rax
je 0x140031269
jle 0x140031835
dec rax
mov qword [rcx + r14], rax
jmp 0x140031835
sub ebx, 0x35
je 0x1400320c4
sub ebx, 1
je 0x1400320c4
sub ebx, 1
je 0x1400320c4
sub ebx, 1
je 0x1400320c4
sub ebx, 1
je 0x1400320c4
sub ebx, 1
je 0x1400320b5
sub ebx, 1
je 0x140032077
sub ebx, 1
je 0x140031ffa
cmp ebx, 1
jne 0x140033c8c
mov al, byte [r12 + 0x68]
test al, 0x41
je 0x14003579e
mov ebx, 0x10
test byte [r15 + 0xc8], bl
jne 0x14003579e
mov r9, qword [r13 + 0x10]
test r9, r9
jne 0x140031fbd
mov r9, qword [r15 + 0xf0]
test r9, r9
je 0x140035798
test al, 0x40
je 0x140035725
mov rdi, qword [r12 + 0xe8]
mov rdx, r9
mov rcx, r15
call fcn.14002fc4c
mov rcx, qword [r12 + 0xf0]
mov rdx, rax
mov rbx, rax
call rdi
mov rcx, rbx
call fcn.14000eaa0
mov rdi, qword [rsp + 0x48]
jmp 0x140035782
movsxd rcx, dword [r13 + 4]
mov rax, qword [r15 + 0x78]
mov rdi, qword [rax + rcx*8]
cmp byte [rdi + 2], r10b
jne 0x140033aaf
mov rcx, qword [rdi + 0x38]
mov rbx, qword [rcx]
mov rsi, qword [rbx]
call qword [rsi + 0x48]
mov rdx, rbx
mov rcx, r15
mov dword [rsp + 0x34], eax
call fcn.14002df24
mov eax, dword [rsp + 0x34]
xor r10d, r10d
test eax, eax
jne 0x140030a2a
mov rcx, qword [rdi + 0x38]
call qword [rsi + 0x50]
mov esi, dword [rsp + 0x34]
xor r10d, r10d
mov rdi, qword [rsp + 0x48]
test eax, eax
jne 0x140031a38
mov r11d, 1
mov eax, dword [r13 + 8]
sub eax, r11d
cdqe
lea rcx, [rax + rax*2]
lea r13, [rdi + rcx*8]
mov qword [rsp + 0x40], r13
jmp 0x140031a3e
movsxd rcx, dword [r13 + 4]
mov rax, qword [r12 + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 8]
call fcn.140021108
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov esi, eax
test eax, eax
je 0x140030770
cmp eax, 0x65
jne 0x140030a26
mov esi, r10d
mov dword [rsp + 0x34], r10d
jmp 0x1400311cf
cmp dword [rbp - 0x6c], r10d
jne 0x140031835
jmp 0x140033c8c
movsxd rax, dword [r13 + 4]
imul rdi, rax, 0x38
movsxd rax, dword [r13 + 0xc]
add rdi, r14
imul rcx, rax, 0x38
movzx esi, word [rdi + 8]
add r14, rcx
movzx ebx, word [r14 + 8]
movzx edx, bx
or dx, si
test r11b, dl
je 0x14003217f
mov eax, 0x80
test byte [r13 + 2], al
je 0x14003212e
mov al, bl
and al, sil
test r11b, al
je 0x140032119
mov eax, pe_nt_image_headers64
test ax, bx
jne 0x140032119
mov ecx, r10d
jmp 0x140032289
movzx eax, bx
not ax
and eax, r11d
lea ecx, [rax*2 - 1]
jmp 0x140032289
mov esi, dword [rsp + 0x34]
mov eax, 0x20
test byte [r13 + 2], al
je 0x140032169
movsxd rax, dword [r13 + 8]
mov r14, qword [rsp + 0x60]
imul rcx, rax, 0x38
mov eax, 0x3e40
mov dword [rbp - 0x6c], r11d
add rcx, r14
and word [rcx + 8], ax
or word [rcx + 8], r11w
mov rdi, qword [rsp + 0x48]
jmp 0x14003067a
mov eax, 0x10
test byte [r13 + 2], al
jne 0x140031830
mov r14, qword [rsp + 0x60]
jmp 0x14003215f
mov al, byte [r13 + 2]
and al, 0x47
cmp al, 0x43
jb 0x140032207
movzx ecx, bx
test r8b, dl
je 0x1400321cb
mov al, sil
and al, 0x2e
cmp al, r8b
jne 0x1400321b0
xor edx, edx
mov rcx, rdi
call fcn.1400300f0
movzx ebx, word [r14 + 8]
mov r8d, 2
mov al, bl
movzx ecx, bx
and al, 0x2e
cmp al, r8b
jne 0x1400321cb
xor edx, edx
mov rcx, r14
call fcn.1400300f0
movzx ecx, word [r14 + 8]
and cl, byte [rdi + 8]
mov edx, 4
test dl, cl
je 0x14003226d
mov rax, qword [rdi]
lea r11d, [rdx - 3]
xor r10d, r10d
lea r9d, [rdx + 4]
cmp qword [r14], rax
jle 0x1400321f6
mov ecx, r11d
jmp 0x14003228e
cmp qword [r14], rax
mov ecx, r10d
setge cl
sub ecx, r11d
jmp 0x14003228e
cmp al, 0x42
jne 0x14003226d
test r8b, sil
jne 0x140032241
test sil, 0x2c
je 0x140032241
mov dl, byte [rsp + 0x3c]
mov r8b, r11b
mov rcx, rdi
call fcn.140028d08
movzx eax, si
mov r11d, 1
xor ax, word [rdi + 8]
mov ecx, 0x3e40
and ax, cx
xor si, ax
lea r8d, [r11 + 1]
test r8b, bl
jne 0x14003226d
test bl, 0x2c
je 0x14003226d
mov dl, byte [rsp + 0x3c]
mov r8b, r11b
mov rcx, r14
call fcn.140028d08
movzx eax, bx
mov ecx, 0x3e40
xor ax, word [r14 + 8]
and ax, cx
xor bx, ax
mov r8, qword [r13 + 0x10]
mov rdx, rdi
mov rcx, r14
call fcn.14002d334
xor r10d, r10d
mov ecx, eax
lea r11d, [r10 + 1]
lea r9d, [r10 + 8]
mov edx, 4
movzx eax, byte [r13]
lea r8, [0x140000000]
test ecx, ecx
jns 0x1400322a8
mov al, byte [rax + r8 + 0x153264]
jmp 0x1400322bc
jne 0x1400322b4
mov al, byte [rax + r8 + 0x14f264]
jmp 0x1400322bc
mov al, byte [rax + r8 + 0x14e464]
mov word [rdi + 8], si
movzx r8d, al
mov eax, 0x20
mov word [r14 + 8], bx
test byte [r13 + 2], al
je 0x140032326
movsxd rax, dword [r13 + 8]
mov r14, qword [rsp + 0x60]
imul rdx, rax, 0x38
mov dword [rbp - 0x6c], ecx
add rdx, r14
test byte [r13 + 2], r9b
je 0x140032301
cmp byte [r13], 0x35
mov eax, r10d
sete al
cmp eax, r8d
je 0x1400330eb
mov esi, dword [rsp + 0x34]
mov eax, 0x3e40
and word [rdx + 8], ax
mov eax, 4
or word [rdx + 8], ax
mov rdi, qword [rsp + 0x48]
mov qword [rdx], r8
mov edx, eax
jmp 0x14003113d
mov esi, dword [rsp + 0x34]
mov rdi, qword [rsp + 0x48]
test r8d, r8d
jne 0x140031835
mov r14, qword [rsp + 0x60]
jmp 0x14003113d
cmp ebx, 0x49
ja 0x1400326f7
je 0x140032663
cmp ebx, 0x44
ja 0x14003260b
je 0x14003254d
sub ebx, 0x3f
je 0x1400323de
sub ebx, 1
je 0x140032453
sub ebx, 1
je 0x140032453
sub ebx, 1
je 0x1400323ba
cmp ebx, 1
mov ebx, dword [rsp + 0x30]
jne 0x140030790
movsxd rax, dword [r13 + 4]
imul rdx, rax, 0x38
mov rax, qword [rdx + r14]
lea rcx, [rax + rax*2]
mov eax, dword [rdi + rcx*8 + 8]
sub eax, r11d
cdqe
lea rcx, [rax + rax*2]
mov eax, 0x80
mov word [rdx + r14 + 8], ax
lea r13, [rdi + rcx*8]
jmp 0x140030786
movsxd rax, dword [r13 + 4]
imul rdx, rax, 0x38
mov rax, qword [rdx + r14]
lea rcx, [rax + rax*2]
mov eax, 0x80
mov word [rdx + r14 + 8], ax
lea r13, [rdi + rcx*8]
jmp 0x14003067a
movzx ebx, word [r13 + 2]
mov rcx, r12
lea rdx, [rbx*8 + 0x30]
call fcn.14000edf4
xor r10d, r10d
mov r8, rax
test rax, rax
je 0x1400361d7
mov qword [rax], r10
lea r11d, [r10 + 1]
mov rax, qword [r13 + 0x10]
mov rcx, r13
mov qword [r8 + 8], rax
sub rcx, rdi
mov qword [r8 + 0x18], r15
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov dword [r8 + 0x24], r10d
sar rdx, 2
mov byte [r8 + 0x29], bl
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea eax, [r10 + 2]
mov dword [r8 + 0x20], edx
add byte [r13], al
mov byte [r13 + 1], 0xf0
mov qword [r13 + 0x10], r8
movsxd rax, dword [r13 + 0xc]
mov rbx, qword [r13 + 0x10]
imul rdi, rax, 0x38
add rdi, r14
cmp qword [rbx], rdi
je 0x1400324ab
movzx eax, byte [rbx + 0x29]
mov edx, eax
mov qword [rbx], rdi
sub rdx, 1
lea r9d, [rax - 1]
js 0x1400324ab
lea r8, [rdx + 6]
mov r12d, 8
lea r8, [rbx + r8*8]
mov eax, dword [r13 + 8]
add eax, r9d
sub r9d, r11d
cdqe
imul rcx, rax, 0x38
add rcx, r14
mov qword [r8], rcx
sub r8, r12
sub rdx, r11
jns 0x140032488
mov r12, qword [rsp + 0x50]
mov eax, 0x3e40
lea r8, [rbx + 0x30]
and word [rdi + 8], ax
mov rcx, rbx
or word [rdi + 8], r11w
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x29]
call qword [rax + 0x18]
mov eax, dword [rbx + 0x24]
xor r10d, r10d
test eax, eax
je 0x14003251e
jle 0x1400324f8
mov rcx, rdi
call fcn.14002e398
mov r8, rax
lea rdx, [0x140156560]
mov rcx, r15
call fcn.14002a0c8
mov esi, dword [rbx + 0x24]
mov dword [rsp + 0x34], esi
mov r9d, dword [r13 + 4]
lea rdx, [r15 + 0x120]
mov r8d, dword [rbx + 0x20]
mov rcx, r12
call fcn.14002ca28
xor r10d, r10d
mov dword [rbx + 0x24], r10d
test esi, esi
jne 0x140030a26
test byte [rdi + 8], 0x12
je 0x14003076b
movzx edx, byte [rsp + 0x3c]
mov rcx, rdi
call fcn.140028a80
mov rcx, rdi
call fcn.14002957c
xor r10d, r10d
test eax, eax
jne 0x140036173
jmp 0x14003076b
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
test byte [rcx + r14 + 8], r11b
je 0x140031269
mov rcx, r13
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, rdi
imul rcx
mov ecx, dword [r13 + 4]
mov rbx, rdx
sar rbx, 2
mov rax, rbx
shr rax, 0x3f
add rbx, rax
test ecx, ecx
jne 0x140035ec8
mov rdx, qword [r15 + 0x100]
test rdx, rdx
je 0x140035ec8
mov rax, qword [rdx + 8]
mov rcx, rdx
dec dword [r15 + 0x110]
mov qword [r15 + 0x100], rax
mov eax, dword [r15 + 0x3c]
add dword [r12 + 0x78], eax
mov dword [r12 + 0x74], eax
call fcn.14002bc0c
mov rdi, qword [r15 + 0x88]
mov edx, 4
mov qword [rsp + 0x48], rdi
lea r11d, [rdx - 3]
cmp dword [r13 + 8], edx
jne 0x1400325f0
cdqe
lea rcx, [rax + rax*2]
mov eax, dword [rdi + rcx*8 + 8]
sub eax, r11d
mov r14, qword [r15 + 0x68]
xor r10d, r10d
cdqe
mov qword [rsp + 0x60], r14
lea rcx, [rax + rax*2]
lea r13, [rdi + rcx*8]
jmp 0x140030fad
sub ebx, 0x45
je 0x140032560
sub ebx, 1
je 0x140032649
sub ebx, 1
je 0x14003262c
cmp ebx, 1
je 0x14003433f
jmp 0x140033c8c
mov rdx, r13
mov rcx, r15
call fcn.140030314
mov rdx, rax
mov rax, qword [r13 + 0x10]
mov rcx, qword [rax]
mov qword [rdx], rcx
jmp 0x140031057
mov rdx, r13
mov rcx, r15
call fcn.140030314
mov rcx, rax
movsxd rax, dword [r13 + 4]
mov qword [rcx], rax
jmp 0x140031057
mov rdx, r13
mov rcx, r15
call fcn.140030314
mov edi, dword [r13 + 0xc]
mov rcx, rax
mov eax, dword [r13 + 4]
mov r11d, 1
mov edx, dword [r13 + 8]
neg eax
mov eax, pe_nt_image_headers64
sbb si, si
lea rbx, [rcx + 8]
and si, ax
xor r10d, r10d
add si, r11w
mov dword [rcx + 0xc], r10d
sub edi, edx
mov ecx, 0x2400
jmp 0x1400326cd
lea rbx, [rbx + 0x38]
test word [rbx], cx
je 0x1400326c6
lea rcx, [rbx - 8]
call fcn.140028f48
xor r10d, r10d
mov ecx, 0x2400
lea r11d, [r10 + 1]
mov dword [rbx + 4], r10d
sub edi, r11d
mov word [rbx], si
test edi, edi
jg 0x1400326a8
mov rdi, qword [rsp + 0x48]
mov edx, 4
mov esi, dword [rsp + 0x34]
mov ebx, dword [rsp + 0x30]
mov r8d, 2
mov r9d, 8
jmp 0x140030790
sub ebx, 0x4a
je 0x140032953
sub ebx, 1
je 0x14003291f
sub ebx, 1
je 0x1400328ad
sub ebx, 1
je 0x140032849
sub ebx, 1
je 0x1400327e2
sub ebx, 1
je 0x1400327bc
sub ebx, 1
je 0x14003277d
sub ebx, 1
je 0x140035fb2
cmp ebx, 1
jne 0x140033c8c
cmp dword [r13 + 4], r10d
je 0x140033c8c
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
mov eax, 0x2400
add rcx, r14
test word [rcx + 8], ax
je 0x14003276b
xor edx, edx
jmp 0x140031052
mov ebx, dword [rsp + 0x30]
mov qword [rcx], r10
mov word [rcx + 8], dx
mov ecx, eax
jmp 0x140030790
movsxd rax, dword [r13 + 8]
imul r8, rax, 0x38
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
add r8, r14
mov rax, qword [rcx + r14]
mov ecx, 0x2400
test word [r8 + 8], cx
je 0x1400327ab
mov rdx, rax
mov rcx, r8
jmp 0x140031052
mov qword [r8], rax
mov word [r8 + 8], dx
mov ebx, dword [rsp + 0x30]
jmp 0x1400343ae
movsxd rax, dword [r13 + 4]
imul rdx, rax, 0x38
movsxd rax, dword [r13 + 8]
imul rcx, rax, 0x38
add rdx, r14
add rcx, r14
mov r8d, 0x1000
call fcn.1400295e0
jmp 0x140031057
movsxd rax, dword [r13 + 4]
mov esi, dword [r13 + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [r13 + 8]
imul rbx, rax, 0x38
add rdi, r14
add rbx, r14
mov r8d, 0x1000
mov rdx, rdi
mov rcx, rbx
call fcn.1400295e0
mov eax, 0x1000
test word [rbx + 8], ax
je 0x14003282d
mov rcx, rbx
call fcn.140028c54
xor r10d, r10d
test eax, eax
jne 0x1400361d7
jmp 0x140032830
xor r10d, r10d
mov eax, esi
mov r11d, 1
sub esi, r11d
test eax, eax
je 0x1400328a4
add rbx, 0x38
add rdi, 0x38
jmp 0x1400327fc
movsxd rax, dword [r13 + 4]
mov esi, dword [r13 + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [r13 + 8]
imul rbx, rax, 0x38
add rdi, r14
add rbx, r14
mov rdx, rdi
mov rcx, rbx
call fcn.1400296a4
mov eax, 0x1000
test word [rbx + 8], ax
je 0x14003288e
mov rcx, rbx
call fcn.140028c54
xor r10d, r10d
test eax, eax
jne 0x1400361d7
jmp 0x140032891
xor r10d, r10d
add rdi, 0x38
add rbx, 0x38
mov r11d, 1
sub esi, r11d
jne 0x140032863
mov esi, dword [rsp + 0x34]
jmp 0x140030f70
movsxd rax, dword [r13 + 4]
imul rdi, rax, 0x38
add rdi, qword [r15 + 0x80]
lea rcx, [rdi - 0x38]
call fcn.14002957c
xor r10d, r10d
test eax, eax
jne 0x140036173
movsxd rax, dword [r13 + 8]
imul rbx, rax, 0x38
mov eax, 0x2400
add rbx, r14
test word [rbx + 8], ax
je 0x1400328f1
mov rcx, rbx
call fcn.140028f48
xor r10d, r10d
movups xmm0, xmmword [rdi - 0x38]
mov ecx, 0xebff
movups xmmword [rbx], xmm0
movsd xmm1, qword [rdi - 0x28]
movsd qword [rbx + 0x10], xmm1
movzx eax, word [rbx + 8]
and ax, cx
mov ecx, 0x840
or ax, cx
mov word [rbx + 8], ax
jmp 0x14003076b
mov rdx, r13
mov rcx, r15
call fcn.140030314
mov r8d, dword [r13 + 4]
mov rbx, rax
mov rdx, qword [r13 + 0x10]
xor eax, eax
mov rcx, rbx
mov qword [rsp + 0x20], rax
xor r9d, r9d
call fcn.140029704
mov al, byte [rsp + 0x3c]
mov byte [rbx + 0xa], al
jmp 0x140031057
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
mov eax, 0xff41
add rcx, r14
and word [rcx + 8], ax
or word [rcx + 8], r11w
jmp 0x140031269
movsxd rax, dword [r13 + 4]
imul rbx, rax, 0x38
add rbx, r14
mov rcx, rbx
call fcn.140029150
movsxd rax, dword [r13 + 8]
add qword [rbx], rax
jmp 0x140031057
mov eax, 0x80
cmp ebx, eax
ja 0x140034a3d
je 0x14003495e
cmp ebx, 0x6a
ja 0x140033ab9
je 0x14003380c
cmp ebx, 0x60
ja 0x1400337c9
je 0x14003373d
cmp ebx, 0x5b
ja 0x14003326a
je 0x1400331d0
sub ebx, 0x54
je 0x1400331b1
sub ebx, 1
je 0x140033168
sub ebx, r8d
je 0x140033025
sub ebx, 1
je 0x140032fd3
cmp ebx, r8d
jne 0x140033c8c
movsxd rcx, dword [r13 + 4]
lea rdx, [rbp - 0x70]
mov rax, qword [r15 + 0x78]
mov rcx, qword [rax + rcx*8]
mov qword [rsp + 0x78], rcx
lea rcx, [rsp + 0x78]
mov eax, dword [r13 + 8]
mov dword [rbp - 0x70], eax
call fcn.14002ccc0
xor r10d, r10d
mov dword [rsp + 0x34], eax
test eax, eax
jne 0x140030a26
movsxd rax, dword [r13 + 0xc]
mov r10, qword [rsp + 0x78]
imul rsi, rax, 0x38
mov rbx, qword [r10 + 0x60]
mov eax, dword [r15 + 0x30]
add rsi, r14
mov qword [rbp - 0x78], rsi
mov qword [rsp + 0x68], rbx
cmp dword [r10 + 0x28], eax
je 0x140032bb8
xor eax, eax
cmp byte [r10 + 2], al
je 0x140032ac8
cmp byte [r10], 3
jne 0x140032a99
movsxd rax, dword [r10 + 0x2c]
imul rdx, rax, 0x38
mov ecx, dword [rdx + r14 + 0xc]
mov dword [r10 + 0x74], ecx
mov rax, qword [rsp + 0x78]
mov dword [rax + 0x70], ecx
mov rcx, qword [rdx + r14 + 0x10]
mov rax, qword [rsp + 0x78]
mov qword [rax + 0x68], rcx
mov rcx, qword [rsp + 0x78]
jmp 0x140032b14
mov ecx, 0x2400
test word [rsi + 8], cx
je 0x140032ab5
mov rcx, rsi
call fcn.140028f48
mov esi, dword [rsp + 0x34]
jmp 0x140031057
mov r11d, 1
mov word [rsi + 8], r11w
xor r10d, r10d
jmp 0x1400326d9
mov rbx, qword [r10 + 0x38]
mov rcx, rbx
call fcn.140021b98
mov ecx, dword [rbx + 0x40]
mov rax, qword [rsp + 0x78]
mov dword [rax + 0x70], ecx
mov rcx, rbx
mov rdx, qword [rsp + 0x78]
add rdx, 0x74
call fcn.140022060
mov rcx, rax
mov rax, qword [rsp + 0x78]
mov qword [rax + 0x68], rcx
mov rcx, qword [rsp + 0x78]
mov eax, dword [r12 + 0x7c]
cmp dword [rcx + 0x70], eax
ja 0x140036173
mov rbx, qword [rsp + 0x68]
mov eax, dword [r15 + 0x30]
mov dword [rcx + 0x28], eax
mov rax, qword [rsp + 0x78]
mov rcx, qword [rax + 0x68]
mov eax, 0x80
cmp byte [rcx], al
jae 0x140032b39
movzx eax, byte [rcx]
mov dword [rbx], eax
mov eax, 1
jmp 0x140032b41
mov rdx, rbx
call fcn.140012158
movzx ecx, al
mov rax, qword [rsp + 0x78]
mov dword [rax + 0x48], ecx
xor ecx, ecx
mov rax, qword [rsp + 0x78]
mov word [rax + 0x52], cx
mov r10, qword [rsp + 0x78]
mov eax, dword [rbx]
cmp dword [r10 + 0x74], eax
jae 0x140032bb2
mov qword [r10 + 0x68], rcx
xor r10d, r10d
mov rax, qword [rsp + 0x78]
mov dword [rax + 0x74], r10d
mov eax, dword [rbx]
cmp eax, 0x18003
ja 0x140032b8b
mov r10, qword [rsp + 0x78]
cmp eax, dword [r10 + 0x70]
jbe 0x140032bb8
xor r10d, r10d
mov r11d, 1
mov eax, dword [rdi + 0xc]
test eax, eax
jle 0x1400360cd
mov esi, dword [rsp + 0x34]
dec eax
movsxd rcx, eax
lea rax, [rcx + rcx*2]
lea r13, [rdi + rax*8]
jmp 0x140030c42
mov r13, qword [r10 + 0x68]
jmp 0x140032c27
movzx eax, word [r10 + 0x52]
movsxd r8, dword [rbp - 0x70]
cmp eax, r8d
jg 0x140032e47
mov eax, dword [rbx]
cmp dword [r10 + 0x48], eax
jae 0x140032dfd
mov r13, qword [r10 + 0x68]
mov qword [rbp - 0x68], r13
test r13, r13
jne 0x140032c2b
xorps xmm0, xmm0
lea r9, [rbp + 0x58]
movups xmmword [rbp + 0x58], xmm0
xor eax, eax
xor edx, edx
movups xmmword [rbp + 0x68], xmm0
mov qword [rbp + 0x88], rax
movups xmmword [rbp + 0x78], xmm0
mov r8d, dword [rbx]
mov rcx, qword [r10 + 0x38]
call fcn.140029a54
xor r10d, r10d
mov dword [rsp + 0x34], eax
test eax, eax
jne 0x140030a2a
mov r13, qword [rbp + 0x68]
mov eax, dword [rbx]
mov r10, qword [rsp + 0x78]
mov qword [rbp - 0x68], r13
movzx r15d, word [r10 + 0x52]
mov esi, 0x80
mov rdx, qword [rsp + 0x68]
mov edi, r15d
mov r12d, eax
mov r14d, dword [rbx + r15*4]
lea r11d, [rsi - 0x7f]
mov ebx, dword [r10 + 0x48]
add rbx, r13
add r12, r13
lea r13, [0x140000000]
movzx eax, byte [rbx]
mov dword [rsp + 0x70], eax
mov dword [r10 + rdi*4 + 0x78], eax
cmp dword [rsp + 0x70], esi
jae 0x140032c7e
movzx eax, byte [rsp + 0x70]
add rbx, r11
movzx eax, byte [rax + r13 + 0x14fe60]
jmp 0x140032cc1
lea rdx, [rsp + 0x70]
mov rcx, rbx
call fcn.140012158
mov rcx, qword [rsp + 0x78]
movzx eax, al
add rbx, rax
mov eax, dword [rsp + 0x70]
mov dword [rcx + rdi*4 + 0x78], eax
mov eax, dword [rsp + 0x70]
cmp eax, esi
jb 0x140032cad
add eax, 0xfffffff4
shr eax, 1
jmp 0x140032cb6
movzx eax, byte [rax + r13 + 0x14fe60]
mov rdx, qword [rsp + 0x68]
mov r11d, 1
add r15d, r11d
add r14, rax
movsxd rdi, r15d
mov dword [rdx + rdi*4], r14d
cmp r15d, dword [rbp - 0x70]
jg 0x140032ce3
cmp rbx, r12
jae 0x140032ce3
mov r10, qword [rsp + 0x78]
jmp 0x140032c59
mov rcx, qword [rsp + 0x78]
mov rsi, qword [rbp - 0x78]
mov r13, qword [rbp - 0x68]
cmp rbx, r12
jb 0x140032cff
ja 0x140032d07
mov eax, dword [rcx + 0x70]
cmp r14, rax
jne 0x140032d07
mov eax, dword [rcx + 0x70]
cmp r14, rax
jbe 0x140032d15
xor r10d, r10d
cmp dword [rdx], r10d
jne 0x140032d83
mov r15d, r10d
mov rbx, r12
mov word [rcx + 0x52], r15w
sub ebx, r13d
mov rax, qword [rsp + 0x78]
mov dword [rax + 0x48], ebx
xor eax, eax
mov r10, qword [rsp + 0x78]
cmp qword [r10 + 0x68], rax
jne 0x140032dd5
mov edx, 0x2400
test word [rbp + 0x60], dx
jne 0x140032d4a
cmp dword [rbp + 0x78], eax
je 0x140032dd5
lea rcx, [rbp + 0x58]
call fcn.140028f88
mov r10, qword [rsp + 0x78]
mov r8d, dword [rbp - 0x70]
mov edx, dword [rsp + 0x70]
mov rbx, qword [rsp + 0x68]
mov r13, qword [rsp + 0x40]
mov r15, qword [rsp + 0x58]
mov r12, qword [rsp + 0x50]
mov r14, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x48]
jmp 0x140032e05
cmp qword [rcx + 0x68], r10
jne 0x140032dbc
mov eax, 0x2400
test word [rbp + 0x60], ax
jne 0x140032d9a
cmp dword [rbp + 0x78], r10d
je 0x140032dbc
lea rcx, [rbp + 0x58]
call fcn.140028f88
mov r15, qword [rsp + 0x58]
mov r12, qword [rsp + 0x50]
mov r14, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x48]
jmp 0x140032b88
mov r15, qword [rsp + 0x58]
mov r12, qword [rsp + 0x50]
mov r14, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x48]
jmp 0x140032b91
mov r8d, dword [rbp - 0x70]
mov edx, dword [rsp + 0x70]
mov rbx, qword [rsp + 0x68]
mov r13, qword [rsp + 0x40]
mov r15, qword [rsp + 0x58]
mov r12, qword [rsp + 0x50]
mov r14, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x48]
jmp 0x140032e0b
xor eax, eax
mov edx, eax
mov dword [rsp + 0x70], eax
mov r11d, 1
movzx eax, word [r10 + 0x52]
cmp eax, r8d
jg 0x140032e50
cmp byte [r13 + 1], 0xf5
jne 0x140032e33
mov rdx, qword [r13 + 0x10]
mov r8d, 0x800
mov rcx, rsi
call fcn.1400295e0
jmp 0x140032aac
mov ecx, 0x2400
test word [rsi + 8], cx
je 0x140032abb
jmp 0x140032aa4
mov edx, dword [r10 + r8*4 + 0x78]
mov dword [rsp + 0x70], edx
mov eax, 0x2400
test word [rsi + 8], ax
je 0x140032e70
mov rcx, rsi
call fcn.140028f48
mov r10, qword [rsp + 0x78]
mov r8d, dword [rbp - 0x70]
mov edx, dword [rsp + 0x70]
lea eax, [r8 + 1]
movsxd rcx, eax
mov eax, dword [rbx + rcx*4]
cmp dword [r10 + 0x74], eax
jb 0x140032f26
movsxd rax, r8d
mov edi, dword [rbx + rax*4]
add rdi, qword [r10 + 0x68]
cmp edx, 0xc
jae 0x140032ea3
mov r8, rsi
mov rcx, rdi
call fcn.14002cd68
jmp 0x140031e75
mov al, byte [rsp + 0x3c]
lea ebx, [rdx - 0xc]
shr ebx, 1
mov dword [rsi + 0xc], ebx
mov byte [rsi + 0xa], al
lea edx, [rbx + 2]
cmp dword [rsi + 0x20], edx
jge 0x140032edc
mov eax, 1
xor r8d, r8d
mov rcx, rsi
mov word [rsi + 8], ax
call fcn.140028a98
test eax, eax
jne 0x1400361d7
mov rcx, qword [rsi + 0x10]
jmp 0x140032ee4
mov rcx, qword [rsi + 0x18]
mov qword [rsi + 0x10], rcx
mov r8d, ebx
mov rdx, rdi
call fcn.140082960
mov rax, qword [rsi + 0x10]
lea rcx, [0x140000000]
xor r10d, r10d
mov byte [rbx + rax], r10b
mov rax, qword [rsi + 0x10]
lea r11d, [r10 + 1]
mov byte [rbx + rax + 1], r10b
mov eax, dword [rsp + 0x70]
and rax, r11
movzx eax, word [rcx + rax*2 + 0x14e5c4]
mov word [rsi + 8], ax
jmp 0x1400328a4
mov al, byte [rsp + 0x3c]
mov byte [rsi + 0xa], al
test byte [r13 + 2], 0xc0
mov edx, dword [rsp + 0x70]
je 0x140032f53
cmp edx, 0xc
jb 0x140032f46
mov eax, 1
test al, dl
je 0x140032f7a
mov eax, 0x80
test byte [r13 + 2], al
jne 0x140032f7a
jmp 0x140032f58
mov eax, 0x80
cmp edx, eax
jb 0x140032f65
lea r8d, [rdx - 0xc]
shr r8d, 1
jmp 0x140032f75
lea rcx, [0x140000000]
movzx r8d, byte [rdx + rcx + 0x14fe60]
test r8d, r8d
jne 0x140032f8e
mov r8, rsi
lea rcx, [0x14016b160]
call fcn.14002cd68
jmp 0x140032aac
movsxd rax, dword [rbp - 0x70]
mov r9, rsi
mov rcx, qword [rsp + 0x78]
mov edx, dword [rbx + rax*4]
mov rcx, qword [rcx + 0x38]
call fcn.140029a54
xor r10d, r10d
mov dword [rsp + 0x34], eax
test eax, eax
jne 0x140030a2a
mov edx, dword [rsp + 0x70]
mov r8, rsi
mov rcx, qword [rsi + 0x10]
call fcn.14002cd68
mov eax, 0xefff
and word [rsi + 8], ax
jmp 0x140032aac
movsxd rax, dword [r13 + 4]
mov edx, dword [r13 + 0xc]
imul rcx, rax, 0x38
add rcx, r14
call fcn.1400290c8
movsxd rdx, dword [r13 + 0x10]
movsxd rcx, eax
movsxd rax, dword [r13 + 8]
xor rdx, rcx
imul rcx, rax, 0x38
mov eax, 0x2400
add rcx, r14
test word [rcx + 8], ax
jne 0x140031052
mov qword [rcx], rdx
xor r10d, r10d
mov edx, 4
mov word [rcx + 8], dx
mov ecx, eax
lea r11d, [rdx - 3]
jmp 0x1400326e2
test byte [r13 + 2], r11b
jne 0x140033030
mov rdi, r10
jmp 0x140033037
mov rdi, qword [r13 - 8]
add rdi, rdx
mov rsi, qword [rsp + 0x40]
mov r14d, r10d
mov r13, qword [r13 + 0x10]
mov rbx, r10
movsxd rax, dword [rsi + 0xc]
mov edx, dword [rsi + 4]
mov r8d, dword [rsi + 8]
mov dword [rbp - 0x78], edx
mov dword [rbp - 0x68], r8d
mov qword [rbp + 8], rax
test rax, rax
jle 0x140035aff
lea r15, [r13 + 0x20]
test rdi, rdi
je 0x140033073
mov ecx, dword [rdi + rbx*4]
jmp 0x140033076
mov ecx, r14d
mov rax, qword [r13 + 0x18]
movzx eax, byte [rbx + rax]
and eax, r11d
mov dword [rsp + 0x68], eax
lea eax, [rcx + r8]
mov r8, qword [r15]
movsxd r12, eax
lea eax, [rcx + rdx]
movsxd rsi, eax
imul rcx, rsi, 0x38
imul rdx, r12, 0x38
add rcx, qword [rsp + 0x60]
add rdx, qword [rsp + 0x60]
call fcn.14002d334
xor r10d, r10d
mov dword [rbp - 0x6c], eax
mov r9d, eax
lea r11d, [r10 + 1]
test eax, eax
jne 0x1400330f9
mov edx, dword [rbp - 0x78]
lea r9d, [rax + 8]
mov r8d, dword [rbp - 0x68]
add r15, r9
add r14d, r11d
add rbx, r11
cmp rbx, qword [rbp + 8]
jl 0x140033069
mov r13, qword [rsp + 0x40]
mov r15, qword [rsp + 0x58]
mov r12, qword [rsp + 0x50]
mov r14, qword [rsp + 0x60]
mov esi, dword [rsp + 0x34]
mov rdi, qword [rsp + 0x48]
jmp 0x14003123b
mov rax, qword [r13 + 0x18]
mov r8d, 2
mov r14, qword [rsp + 0x60]
test byte [rbx + rax], r8b
je 0x14003312b
imul rax, rsi, 0x38
test byte [rax + r14 + 8], r11b
jne 0x140033124
imul rax, r12, 0x38
test byte [rax + r14 + 8], r11b
je 0x14003312b
neg r9d
mov dword [rbp - 0x6c], r9d
mov edx, 4
mov r13, qword [rsp + 0x40]
mov ecx, 0x2400
mov esi, dword [rsp + 0x34]
mov r15, qword [rsp + 0x58]
mov r12, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x48]
mov ebx, dword [rsp + 0x30]
cmp dword [rsp + 0x68], r10d
je 0x1400326ec
neg r9d
mov dword [rbp - 0x6c], r9d
jmp 0x1400326ec
movsxd rax, dword [r13 + 4]
imul rbx, rax, 0x38
mov eax, 0x4000
add rbx, r14
test word [rbx + 8], ax
je 0x14003318e
mov rcx, rbx
call fcn.140028cac
mov esi, eax
mov dword [rsp + 0x34], eax
jmp 0x140033196
mov esi, r10d
mov dword [rsp + 0x34], r10d
mov r8b, byte [rsp + 0x3c]
mov rcx, rbx
mov dl, byte [r13 + 8]
call fcn.14002928c
xor r10d, r10d
test esi, esi
jmp 0x140030c7f
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
add rcx, r14
test byte [rcx + 8], 0x24
je 0x140031269
call fcn.140029178
jmp 0x140031057
movsxd rax, dword [r13 + 4]
mov rdi, qword [r13 + 0x10]
imul rbx, rax, 0x38
mov al, byte [rdi]
add rbx, r14
mov r8b, byte [rsp + 0x3c]
mov dl, al
mov rcx, rbx
call fcn.14003018c
cmp byte [rdi], 0x45
mov edx, 4
jne 0x14003324b
movzx ecx, word [rbx + 8]
test dl, cl
je 0x14003324b
mov rdx, qword [rbx]
movabs rax, 0x800000000000
add rax, rdx
movabs r8, 0xffffffffffff
cmp rax, r8
mov eax, 0xfffb
ja 0x14003322f
and cx, ax
or cx, 0x20
jmp 0x140033242
xorps xmm0, xmm0
and cx, ax
cvtsi2sd xmm0, rdx
or cx, 8
movsd qword [rbx], xmm0
mov edx, 4
mov word [rbx + 8], cx
mov r11d, 1
xor r10d, r10d
add rdi, r11
mov al, byte [rdi]
test al, al
je 0x140035b39
add rbx, 0x38
jmp 0x1400331e1
sub ebx, 0x5c
je 0x14003339f
sub ebx, 1
je 0x140033360
sub ebx, 1
je 0x14003332a
cmp ebx, 1
jne 0x140033c8c
movsxd rbx, dword [r13 + 4]
mov r8d, dword [r13 + 0xc]
mov edx, dword [r13 + 8]
shl rbx, 5
add rbx, qword [r12 + 0x20]
mov rcx, qword [rbx + 8]
call fcn.140026e48
mov r11d, 1
mov dword [rsp + 0x34], eax
mov esi, eax
lea r8d, [r11 + 1]
cmp dword [r13 + 8], r11d
jne 0x1400332d3
mov rcx, qword [rbx + 0x18]
mov eax, dword [r13 + 0xc]
mov dword [rcx], eax
or dword [r12 + 0x2c], r11d
jmp 0x1400332e4
cmp dword [r13 + 8], r8d
jne 0x1400332e4
mov rcx, qword [rbx + 0x18]
mov al, byte [r13 + 0xc]
mov byte [rcx + 0x70], al
xor r10d, r10d
cmp dword [r13 + 4], r11d
jne 0x140033313
mov rax, qword [r12 + 8]
jmp 0x140033306
and dword [rax + 0xc8], 0xfffffffd
or dword [rax + 0xc8], r11d
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x1400332f4
and dword [r15 + 0xc8], 0xfffffffc
test esi, esi
jne 0x1400354fe
mov ebx, dword [rsp + 0x30]
mov r9d, 8
jmp 0x140030786
movsxd rax, dword [r13 + 4]
lea r8, [rbp + 0x30]
mov rcx, qword [r12 + 0x20]
mov edx, dword [r13 + 0xc]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.140026db8
mov rdx, r13
mov rcx, r15
call fcn.140030314
movsxd rcx, dword [rbp + 0x30]
mov qword [rax], rcx
jmp 0x140031057
movsxd rcx, dword [r13 + 4]
lea rdx, [rbp + 0x38]
mov rax, qword [r15 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rcx, qword [rcx + 0x38]
mov qword [rbp + 0x38], r10
call fcn.140026ee8
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov esi, eax
test eax, eax
jne 0x140030a26
mov rdx, r13
mov rcx, r15
call fcn.140030314
mov rcx, qword [rbp + 0x38]
jmp 0x140033358
movsxd rax, dword [r13 + 4]
mov rdx, r10
mov rcx, qword [rsp + 0x58]
mov r12, r10
mov rdi, qword [r13 + 0x10]
mov r15d, r10d
imul r8, rax, 0x38
mov r9b, byte [rcx + 0xc3]
mov eax, dword [r13 + 8]
add r8, r14
sub eax, r11d
mov qword [rsp + 0x68], rdx
cdqe
imul rsi, rax, 0x38
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
add rsi, r8
mov qword [rbp - 0x68], r8
add rcx, r14
mov qword [rbp - 0x78], rsi
mov byte [rbp - 0x80], r9b
mov qword [rbp + 8], rcx
test rdi, rdi
je 0x140033460
mov al, byte [rdi]
lea rbx, [r8 + 8]
mov sil, byte [rsp + 0x3c]
mov r14d, 0x20
mov r13d, 0xfffb
lea rcx, [rbx - 8]
mov r8b, sil
mov dl, al
call fcn.14003018c
cmp byte [rdi], 0x45
jne 0x140033434
movzx eax, word [rbx]
test al, 4
je 0x140033434
and ax, r13w
or ax, r14w
mov word [rbx], ax
mov r11d, 1
add rbx, 0x38
add rdi, r11
xor r10d, r10d
mov al, byte [rdi]
test al, al
jne 0x14003340f
mov r13, qword [rsp + 0x40]
mov r9b, byte [rbp - 0x80]
mov rdx, qword [rsp + 0x68]
mov r8, qword [rbp - 0x68]
mov rsi, qword [rbp - 0x78]
lea r14, [rsi + 0x24]
movzx ecx, word [r14 - 0x1c]
test r11b, cl
je 0x140033489
mov eax, 0x4000
and cx, ax
neg cx
sbb eax, eax
and eax, 0xa
mov dword [r14], eax
add r15d, r11d
jmp 0x1400335e7
test cl, 0x24
je 0x140033562
mov r8, qword [r14 - 0x24]
mov rdx, r8
test r8, r8
jns 0x1400334a1
not rdx
add r15d, r11d
cmp rdx, 0x7f
ja 0x1400334d2
mov rax, r8
and rax, r11
cmp rax, r8
jne 0x1400334c7
mov eax, 4
cmp r9b, al
jb 0x1400334c7
lea eax, [rdx + 8]
jmp 0x14003355a
add r12, r11
mov eax, r11d
jmp 0x14003355a
cmp rdx, 0x7fff
ja 0x1400334e2
mov eax, 2
jmp 0x140033504
cmp rdx, 0x7fffff
ja 0x1400334f6
add r12, 3
mov eax, 3
jmp 0x14003355a
cmp rdx, 0x7fffffff
ja 0x140033509
mov eax, 4
add r12, rax
jmp 0x14003355a
movabs rax, 0x7fffffffffff
cmp rdx, rax
ja 0x140033523
add r12, 6
mov eax, 5
jmp 0x14003355a
mov edx, 8
add r12, rdx
lea eax, [rdx + 0x18]
test al, cl
je 0x140033555
mov eax, 0xffdf
xorps xmm0, xmm0
and cx, ax
lea eax, [rdx - 1]
cvtsi2sd xmm0, r8
or cx, dx
mov word [r14 - 0x1c], cx
movsd qword [r14 - 0x24], xmm0
jmp 0x14003355a
mov eax, 6
mov dword [r14], eax
jmp 0x1400335e3
mov eax, 8
test al, cl
je 0x14003357b
add r15d, r11d
add r12, rax
mov eax, 7
mov dword [r14], eax
jmp 0x1400335e7
mov edi, dword [r14 - 0x18]
mov eax, ecx
shr eax, 1
and eax, r11d
bt cx, 0xe
lea esi, [rdi + 6]
lea esi, [rax + rsi*2]
jae 0x1400335c5
lea rbx, [r14 - 0x24]
movsxd rax, dword [rbx]
lea esi, [rsi + rax*2]
test r12, r12
je 0x1400335bd
mov rcx, rbx
call fcn.140028cac
xor r10d, r10d
test eax, eax
jne 0x1400361d2
add edi, dword [rbx]
lea r11d, [r10 + 1]
jmp 0x1400335c5
add rdx, rax
mov qword [rsp + 0x68], rdx
mov eax, edi
mov ecx, r11d
add r12, rax
mov eax, esi
jmp 0x1400335d4
add ecx, r11d
shr rax, 7
test rax, rax
jne 0x1400335d1
add r15d, ecx
mov dword [r14], esi
mov r8, qword [rbp - 0x68]
lea rax, [r14 - 0x24]
cmp rax, r8
je 0x140033602
mov r9b, byte [rbp - 0x80]
sub r14, 0x38
mov rdx, qword [rsp + 0x68]
jmp 0x140033464
cmp r15d, 0x7e
jle 0x140033637
mov edx, r11d
movsxd rax, r15d
jmp 0x140033613
add edx, r11d
shr rax, 7
test rax, rax
jne 0x140033610
add r15d, edx
mov ecx, r11d
movsxd rax, r15d
jmp 0x14003362a
add ecx, r11d
shr rax, 7
test rax, rax
jne 0x140033627
cmp edx, ecx
jge 0x14003363a
add r15d, r11d
mov r14, qword [rsp + 0x68]
mov rsi, qword [rbp + 8]
movsxd rdi, r15d
movsxd rax, dword [rsi + 0x20]
lea rbx, [rdi + r12]
lea rcx, [rbx + r14]
cmp rcx, rax
jg 0x140033661
mov rax, qword [rsi + 0x18]
mov qword [rsi + 0x10], rax
jmp 0x14003368a
mov r12, qword [rsp + 0x50]
movsxd rax, dword [r12 + 0x7c]
cmp rcx, rax
jg 0x14003616e
mov edx, ebx
mov rcx, rsi
call fcn.140028bd4
test eax, eax
jne 0x1400361d7
lea r11d, [rax + 1]
mov dword [rsi + 0xc], ebx
mov eax, 0x10
mov word [rsi + 8], ax
test r14, r14
je 0x1400336a7
mov eax, 0x4010
mov dword [rsi], r14d
mov word [rsi + 8], ax
mov rbx, qword [rsi + 0x10]
mov r12d, 0x80
lea rsi, [rbx + rdi]
cmp r15d, r12d
jae 0x1400336c2
mov byte [rbx], r15b
mov eax, r11d
jmp 0x1400336d3
mov rdx, rdi
mov rcx, rbx
call fcn.140011f64
mov r11d, 1
mov r14, qword [rbp - 0x68]
mov r15, qword [rbp - 0x78]
movzx eax, al
add rbx, rax
mov edi, dword [r14 + 0x24]
cmp edi, r12d
jae 0x1400336f2
mov byte [rbx], dil
mov eax, r11d
jmp 0x1400336fd
mov rdx, rdi
mov rcx, rbx
call fcn.140011f64
movzx eax, al
mov r8d, edi
mov rdx, r14
mov rcx, rsi
add rbx, rax
call fcn.14002cd08
mov eax, eax
add r14, 0x38
add rsi, rax
mov r11d, 1
cmp r14, r15
jbe 0x1400336e1
mov r15, qword [rsp + 0x58]
mov r12, qword [rsp + 0x50]
mov esi, dword [rsp + 0x34]
mov r14, qword [rsp + 0x60]
jmp 0x140030ea5
movsxd rcx, dword [r13 + 4]
mov rax, qword [r15 + 0x78]
mov rdi, qword [rax + rcx*8]
test rdi, rdi
je 0x14003375b
mov eax, dword [r13 + 8]
cmp dword [rdi + 0x4c], eax
je 0x140033a99
mov eax, dword [r15 + 0xc8]
and al, 3
cmp al, r11b
je 0x1400360d8
movsxd r12, dword [r13 + 0xc]
mov edi, r10d
mov rcx, qword [rsp + 0x50]
mov rax, r12
movsxd r15, dword [r13 + 8]
mov r14, r10
shl rax, 5
add rax, qword [rcx + 0x20]
cmp bl, 0x62
mov rbx, qword [rsp + 0x40]
mov r13, qword [rax + 8]
jne 0x1400339c9
mov rax, qword [rax + 0x18]
movzx esi, word [rbx + 2]
and esi, r9d
or esi, edx
mov cl, byte [rax + 0x70]
mov rax, qword [rsp + 0x58]
cmp cl, byte [rax + 0xc3]
jae 0x1400339cc
mov byte [rax + 0xc3], cl
jmp 0x1400339cc
mov ecx, ebx
sub ecx, 0x61
je 0x14003375b
sub ecx, 1
je 0x14003375b
sub ecx, 1
je 0x1400338b3
sub ecx, 1
je 0x1400338b3
sub ecx, 1
je 0x1400338b3
sub ecx, 1
je 0x1400338b3
sub ecx, 1
je 0x14003380c
sub ecx, 1
je 0x14003380c
cmp ecx, 1
jne 0x140031269
movsxd rax, dword [r13 + 4]
imul rdi, rax, 0x38
add rdi, r14
mov rcx, rdi
call fcn.1400302d0
movsxd rcx, dword [r13 + 8]
movzx ebx, ax
imul rsi, rcx, 0x38
add rsi, r14
mov rcx, rsi
call fcn.1400302d0
movsxd rcx, dword [r13 + 0xc]
and al, bl
imul rdx, rcx, 0x38
movzx ecx, word [rsi + 8]
or cx, word [rdi + 8]
add r14, rdx
mov edx, 4
test dl, al
je 0x140033ecf
movzx ecx, byte [r13]
mov rdx, qword [rsi]
mov r8, qword [rdi]
mov qword [rbp - 0x48], rdx
sub ecx, 0x67
je 0x140033e6d
sub ecx, 1
je 0x140033e5b
sub ecx, 1
je 0x140033e4d
xor r10d, r10d
cmp ecx, 1
je 0x140033e21
test r8, r8
je 0x140033fd7
cmp r8, 0xffffffffffffffff
lea eax, [r10 + 1]
cmove r8, rax
mov rax, rdx
cqo
idiv r8
mov qword [rbp - 0x48], rdx
jmp 0x140033eae
movsxd rax, dword [r13 + 4]
imul rdi, rax, 0x38
movsxd rax, dword [r13 + 8]
imul rcx, rax, 0x38
movsxd rax, dword [r13 + 0xc]
add rdi, r14
imul rsi, rax, 0x38
add rcx, r14
add rsi, r14
mov al, byte [rcx + 8]
or al, byte [rdi + 8]
test r11b, al
je 0x140033905
mov ecx, 0x2400
test word [rsi + 8], cx
je 0x1400338f7
mov rcx, rsi
call fcn.140028f48
jmp 0x140031e75
mov word [rsi + 8], r11w
mov esi, dword [rsp + 0x34]
jmp 0x140033c87
call fcn.140029044
mov rcx, rdi
mov rbx, rax
call fcn.140029044
mov r8b, byte [r13]
mov rdx, rax
cmp r8b, 0x63
jne 0x140033927
and rbx, rax
jmp 0x140033930
cmp r8b, 0x64
jne 0x140033935
or rbx, rdx
xor r10d, r10d
jmp 0x1400339ab
xor r10d, r10d
test rdx, rdx
je 0x1400339ab
jns 0x14003395f
mov rcx, rdx
mov eax, 0xcb
sub al, r8b
neg rcx
mov r8b, al
mov rax, rdx
cmp rax, 0xffffffffffffffc0
lea edx, [r10 + 0x40]
cmovg rdx, rcx
cmp rdx, 0x40
jl 0x14003397b
test rbx, rbx
jns 0x140033976
cmp r8b, 0x65
je 0x140033976
or rbx, 0xffffffffffffffff
jmp 0x1400339ab
mov rbx, r10
jmp 0x1400339ab
mov rcx, rdx
cmp r8b, 0x65
jne 0x14003398c
shl rbx, cl
mov r8, rbx
jmp 0x1400339a8
mov r8, rbx
shr r8, cl
test rbx, rbx
jns 0x1400339a8
mov ecx, 0x40
sub cl, dl
or rdx, 0xffffffffffffffff
shl rdx, cl
or r8, rdx
mov rbx, r8
mov eax, 0x3e40
mov qword [rsi], rbx
and word [rsi + 8], ax
mov edx, 4
or word [rsi + 8], dx
mov esi, dword [rsp + 0x34]
jmp 0x140030fa2
mov esi, r10d
mov eax, 0x10
test byte [rbx + 2], al
je 0x1400339f2
imul rbx, r15, 0x38
add rbx, qword [rsp + 0x60]
mov rcx, rbx
call fcn.140029150
mov r15d, dword [rbx]
xor r10d, r10d
mov rbx, qword [rsp + 0x40]
mov al, byte [rbx + 1]
cmp al, 0xf7
jne 0x140033a04
mov r14, qword [rbx + 0x10]
movzx edi, word [r14 + 8]
jmp 0x140033a0b
cmp al, 0xfd
jne 0x140033a0b
mov edi, dword [rbx + 0x10]
mov edx, dword [rbx + 4]
mov r9d, r12d
mov rcx, qword [rsp + 0x58]
mov r8d, edi
mov byte [rsp + 0x20], r10b
call fcn.14002ffcc
mov rdi, rax
test rax, rax
je 0x1400361d2
mov rcx, qword [rdi + 0x38]
mov eax, 1
mov byte [rdi + 2], al
mov r9, r14
mov eax, 4
mov qword [rsp + 0x20], rcx
or dword [rdi + 8], eax
mov r8d, esi
mov edx, r15d
mov dword [rdi + 0x4c], r15d
mov rcx, r13
call fcn.14002199c
mov r13, qword [rsp + 0x40]
mov esi, eax
mov r15, qword [rsp + 0x58]
mov r12, qword [rsp + 0x50]
mov qword [rdi + 0x40], r14
cmp byte [r13 + 1], 0xf7
mov r14, qword [rsp + 0x60]
mov dword [rsp + 0x34], eax
setne al
xor r10d, r10d
mov byte [rdi + 4], al
lea edx, [r10 + 4]
lea r11d, [r10 + 1]
lea r8d, [r10 + 2]
lea r9d, [r10 + 8]
mov cl, byte [r13 + 2]
mov rax, qword [rdi + 0x38]
and cl, 3
mov byte [rax + 3], cl
test esi, esi
jne 0x140030a26
mov rdi, qword [rsp + 0x48]
jmp 0x140031269
cmp ebx, 0x75
ja 0x1400343e1
je 0x1400343b9
cmp ebx, 0x70
ja 0x1400341a1
je 0x140033afc
sub ebx, 0x6b
je 0x14003380c
sub ebx, 1
je 0x140033c2a
sub ebx, 1
je 0x140033bad
sub ebx, 1
je 0x140033b49
cmp ebx, 1
jne 0x140033c8c
movsxd rdx, dword [r13 + 4]
mov rax, qword [r15 + 0x78]
mov rsi, qword [rax + rdx*8]
test rsi, rsi
je 0x140034018
mov rcx, qword [rsi + 0x10]
mov qword [rsi + 0x18], r10
mov dword [rsi + 0x28], r10d
test rcx, rcx
je 0x140034183
mov edx, dword [rsi + 0x4c]
xor r8d, r8d
call fcn.140026a88
xor r10d, r10d
mov dword [rsp + 0x34], eax
lea r11d, [r10 + 1]
lea r8d, [r10 + 2]
lea r9d, [r10 + 8]
jmp 0x140034187
movsxd rax, dword [r13 + 4]
imul rdi, rax, 0x38
movsxd rax, dword [r13 + 8]
imul rbx, rax, 0x38
add rdi, r14
add rbx, r14
test word [rbx + 8], cx
je 0x140033b87
mov rcx, rbx
call fcn.140028f48
xor r10d, r10d
mov ecx, 0x2400
lea edx, [r10 + 4]
lea r11d, [r10 + 1]
lea r8d, [r10 + 2]
lea r9d, [r10 + 8]
jmp 0x140033b8c
mov word [rbx + 8], r11w
test byte [rdi + 8], r11b
jne 0x140033c87
mov rcx, rdi
mov word [rbx + 8], dx
call fcn.140029044
not rax
mov qword [rbx], rax
jmp 0x140031e79
movsxd rcx, dword [r13 + 8]
or r9d, 0xffffffff
mov rax, qword [r15 + 0x78]
mov edx, dword [r13 + 4]
mov byte [rsp + 0x20], r10b
mov rbx, qword [rax + rcx*8]
mov rcx, r15
movsx r8d, word [rbx + 0x50]
call fcn.14002ffcc
test rax, rax
je 0x1400361d7
mov ecx, 1
mov r8d, 4
or dword [rax + 8], ecx
mov byte [rax + 2], cl
mov r9, qword [rbx + 0x40]
mov qword [rax + 0x40], r9
mov cl, byte [rbx + 4]
mov byte [rax + 4], cl
mov ecx, dword [rax + 8]
mov edx, dword [rbx + 0x4c]
mov dword [rax + 0x4c], edx
xor ecx, dword [rbx + 8]
and ecx, r8d
xor dword [rax + 8], ecx
mov rax, qword [rax + 0x38]
mov rcx, qword [rbx + 0x10]
mov qword [rsp + 0x20], rax
call fcn.14002199c
mov esi, eax
mov dword [rsp + 0x34], eax
jmp 0x140031057
movsxd rax, dword [r13 + 4]
imul r15, rax, 0x38
movsxd rax, dword [r13 + 8]
imul rdi, rax, 0x38
movsxd rax, dword [r13 + 0xc]
add r15, r14
imul rbx, rax, 0x38
add rdi, r14
add rbx, r14
movzx r14d, word [r15 + 8]
mov al, r14b
or al, byte [rdi + 8]
test r11b, al
je 0x140033c95
test word [rbx + 8], cx
je 0x140033c78
mov rcx, rbx
call fcn.140028f48
mov r15, qword [rsp + 0x58]
mov r14, qword [rsp + 0x60]
jmp 0x140031e79
mov r15, qword [rsp + 0x58]
mov r14, qword [rsp + 0x60]
mov word [rbx + 8], r11w
mov rdi, qword [rsp + 0x48]
mov ebx, dword [rsp + 0x30]
jmp 0x140030790
test r14b, 0x12
jne 0x140033ccb
mov r13b, byte [rsp + 0x3c]
xor r8d, r8d
mov dl, r13b
mov rcx, r15
call fcn.140028d08
test eax, eax
jne 0x1400361d7
movzx r14d, word [r15 + 8]
mov eax, 0xfffd
and r14w, ax
mov eax, 0x4000
jmp 0x140033cfe
mov eax, 0x4000
test ax, r14w
je 0x140033cf9
mov rcx, r15
call fcn.140028cac
test eax, eax
jne 0x1400361d7
movzx r14d, word [r15 + 8]
mov eax, 0xfffd
and r14w, ax
mov eax, 0x4000
mov r13b, byte [rsp + 0x3c]
movzx esi, word [rdi + 8]
test sil, 0x12
jne 0x140033d2e
xor r8d, r8d
mov dl, r13b
mov rcx, rdi
call fcn.140028d08
xor edx, edx
test eax, eax
jne 0x1400361d7
movzx esi, word [rdi + 8]
mov eax, 0xfffd
and si, ax
jmp 0x140033d3f
test ax, si
je 0x140033d3d
mov rcx, rdi
call fcn.140028cac
jmp 0x140033d16
xor edx, edx
mov rcx, qword [rsp + 0x50]
mov r13d, dword [r15 + 0xc]
add r13d, dword [rdi + 0xc]
movsxd r12, r13d
movsxd rax, dword [rcx + 0x7c]
cmp r12, rax
jg 0x14003616b
mov r8d, edx
cmp rbx, rdi
lea edx, [r13 + 3]
mov rcx, rbx
sete r8b
call fcn.140028a98
test eax, eax
jne 0x1400361d2
mov eax, 0x3e40
and word [rbx + 8], ax
mov eax, 2
or word [rbx + 8], ax
cmp rbx, rdi
je 0x140033da6
movsxd r8, dword [rdi + 0xc]
mov rdx, qword [rdi + 0x10]
mov rcx, qword [rbx + 0x10]
call fcn.140082960
mov word [rdi + 8], si
movsxd rcx, dword [rdi + 0xc]
add rcx, qword [rbx + 0x10]
movsxd r8, dword [r15 + 0xc]
mov rdx, qword [r15 + 0x10]
call fcn.140082960
xor r10d, r10d
mov word [r15 + 8], r14w
mov rax, qword [rbx + 0x10]
mov edx, r10d
lea r11d, [r10 + 1]
mov byte [r12 + rax], r10b
lea r8d, [r10 + 2]
mov rax, qword [rbx + 0x10]
lea rcx, [rdx + r12]
add rdx, r11
mov byte [rcx + rax + 1], r10b
cmp rdx, r8
jl 0x140033dd6
mov esi, dword [rsp + 0x34]
mov eax, 0x200
or word [rbx + 8], ax
mov al, byte [rsp + 0x3c]
mov r15, qword [rsp + 0x58]
mov r12, qword [rsp + 0x50]
mov r14, qword [rsp + 0x60]
mov dword [rbx + 0xc], r13d
mov r13, qword [rsp + 0x40]
mov byte [rbx + 0xa], al
mov rdi, qword [rsp + 0x48]
jmp 0x14003331b
test r8, r8
je 0x140033fd7
cmp r8, 0xffffffffffffffff
jne 0x140033e43
movabs rax, 0x8000000000000000
cmp rdx, rax
je 0x140033ede
mov rax, rdx
cqo
idiv r8
jmp 0x140033eaa
mov rdx, r8
lea rcx, [rbp - 0x48]
call fcn.140012390
jmp 0x140033e67
mov rdx, r8
lea rcx, [rbp - 0x48]
call fcn.140012360
test eax, eax
jne 0x140033ede
jmp 0x140033eae
test r8, r8
js 0x140033e8b
test rdx, rdx
jle 0x140033ea6
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, r8
jge 0x140033ea6
jmp 0x140033ede
test rdx, rdx
jns 0x140033ea6
movabs rcx, 0x8000000000000001
lea rax, [r8 + 1]
sub rcx, rdx
cmp rcx, rax
jg 0x140033ede
lea rax, [rdx + r8]
mov qword [rbp - 0x48], rax
mov rax, qword [rbp - 0x48]
mov ecx, 0x3e40
mov qword [r14], rax
mov edx, 4
movzx eax, word [r14 + 8]
and ax, cx
or ax, dx
jmp 0x140033fbe
mov r11d, 1
test r11b, cl
jne 0x140033fff
mov rcx, rdi
call fcn.14002909c
mov rcx, rsi
movaps xmm6, xmm0
call fcn.14002909c
movzx ecx, byte [r13]
sub ecx, 0x67
je 0x140033f66
sub ecx, 1
je 0x140033f60
sub ecx, 1
je 0x140033f5a
cmp ecx, 1
je 0x140033f48
mov rcx, rdi
call fcn.140029044
mov rcx, rsi
mov rbx, rax
call fcn.140029044
xor r10d, r10d
mov qword [rbp - 0x48], rax
lea r11d, [r10 + 1]
test rbx, rbx
je 0x140033fdd
cmp rbx, 0xffffffffffffffff
cqo
xorps xmm0, xmm0
cmove rbx, r11
idiv rbx
cvtsi2sd xmm0, rdx
jmp 0x140033f73
ucomisd xmm6, xmm7
jp 0x140033f54
je 0x140033fd4
divsd xmm0, xmm6
jmp 0x140033f6a
mulsd xmm0, xmm6
jmp 0x140033f6a
subsd xmm0, xmm6
jmp 0x140033f6a
addsd xmm0, xmm6
mov r11d, 1
xor r10d, r10d
movabs rdx, 0x7ff0000000000000
movsd qword [rbp + 8], xmm0
mov rax, qword [rbp + 8]
movabs rcx, 0xfffffffffffff
test rcx, rax
setne cl
and rax, rdx
cmp rax, rdx
mov edx, 4
sete al
test al, cl
jne 0x140033fe2
movzx eax, word [r14 + 8]
mov ecx, 0x3e40
and ax, cx
movsd qword [r14], xmm0
or ax, 8
mov esi, dword [rsp + 0x34]
xor r10d, r10d
mov word [r14 + 8], ax
mov r14, qword [rsp + 0x60]
jmp 0x140030fa2
xor r10d, r10d
mov r11d, 1
mov edx, 4
mov ecx, 0x2400
test word [r14 + 8], cx
je 0x140034004
mov rcx, r14
call fcn.140028f48
mov esi, dword [rsp + 0x34]
jmp 0x140033c6e
xor r10d, r10d
jmp 0x140033fe2
mov rdi, qword [rsp + 0x48]
mov word [r14 + 8], r11w
mov r14, qword [rsp + 0x60]
jmp 0x1400326de
mov r8d, dword [r13 + 8]
or r9d, 0xffffffff
mov rcx, r15
mov byte [rsp + 0x20], r10b
call fcn.14002ffcc
mov rsi, rax
test rax, rax
je 0x1400361d7
lea r14, [rax + 0x10]
mov dword [rsp + 0x28], 0x41e
mov ebx, 1
mov r9, r14
or dword [rax + 8], ebx
mov r8, r12
movzx ecx, word [r13 + 2]
xor edx, edx
or ecx, 5
mov dword [rsp + 0x20], ecx
mov rcx, qword [r12]
call fcn.14001f5b0
xor r10d, r10d
mov dword [rsp + 0x34], eax
test eax, eax
jne 0x14003414c
mov rcx, qword [r14]
xor r8d, r8d
mov edx, ebx
call fcn.1400205ec
xor r10d, r10d
mov dword [rsp + 0x34], eax
test eax, eax
jne 0x14003414c
mov r15, qword [r13 + 0x10]
lea r12, [rsi + 0x4c]
mov qword [rsi + 0x40], r15
test r15, r15
je 0x14003411a
mov rdi, qword [r14]
movzx ebx, word [r13 + 2]
mov rcx, rdi
or ebx, 2
call fcn.14001dccc
mov r8d, ebx
mov rdx, r12
mov rcx, rdi
call fcn.140026618
mov rcx, rdi
mov dword [rsp + 0x34], eax
mov ebx, eax
call fcn.14001dd7c
xor r10d, r10d
test ebx, ebx
jne 0x1400340ff
mov rax, qword [rsi + 0x38]
lea r8d, [rbx + 4]
mov edx, dword [r12]
mov r9, r15
mov rcx, qword [r14]
mov qword [rsp + 0x20], rax
call fcn.14002199c
mov dword [rsp + 0x34], eax
xor r10d, r10d
mov r15, qword [rsp + 0x58]
mov r11d, 1
mov r12, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x48]
mov byte [rsi + 4], r10b
jmp 0x14003414f
mov rax, qword [rsi + 0x38]
xor r9d, r9d
mov rcx, qword [r14]
mov edx, ebx
mov dword [r12], ebx
mov qword [rsp + 0x20], rax
lea r8d, [r9 + 4]
call fcn.14002199c
mov r15, qword [rsp + 0x58]
xor r10d, r10d
mov r12, qword [rsp + 0x50]
mov dword [rsp + 0x34], eax
mov byte [rsi + 4], bl
mov r11, rbx
movzx eax, word [r13 + 2]
mov r9d, 8
mov r14, qword [rsp + 0x60]
sub ax, r9w
neg ax
mov eax, dword [rsi + 8]
sbb ecx, ecx
lea edx, [r9 - 4]
and eax, 0xfffffffb
lea r8d, [r9 - 6]
and ecx, edx
or ecx, eax
mov eax, dword [rsp + 0x34]
mov dword [rsi + 8], ecx
jmp 0x14003418c
mov eax, dword [rsp + 0x34]
mov edx, 4
test eax, eax
jne 0x140030a2a
mov byte [rsi + 2], r11b
mov esi, dword [rsp + 0x34]
jmp 0x140031269
sub ebx, 0x71
je 0x140034268
sub ebx, 1
je 0x14003422a
sub ebx, 1
je 0x140034204
cmp ebx, 1
jne 0x140033c8c
mov r8d, dword [r13 + 0xc]
or r9d, 0xffffffff
mov edx, dword [r13 + 4]
mov rcx, r15
mov byte [rsp + 0x20], 3
call fcn.14002ffcc
xor r10d, r10d
test rax, rax
je 0x1400361d7
mov r11d, ebx
mov byte [rax + 2], r11b
mov ecx, dword [r13 + 8]
mov dword [rax + 0x2c], ecx
lea rcx, [0x14016aedc]
mov qword [rax + 0x38], rcx
mov byte [rax + 4], r11b
jmp 0x140030c42
movsxd rcx, dword [r13 + 4]
mov rax, qword [r15 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rcx, qword [rdx + 0x18]
lea rax, [rcx + 1]
mov qword [rdx + 0x18], rax
test rcx, rcx
je 0x140031835
jmp 0x14003067a
mov r8d, dword [r13 + 8]
or r9d, 0xffffffff
mov edx, dword [r13 + 4]
mov rcx, r15
mov byte [rsp + 0x20], r11b
call fcn.14002ffcc
test rax, rax
je 0x1400361d7
mov rcx, qword [r13 + 0x10]
mov r8, rax
mov qword [rax + 0x40], rcx
mov rcx, r12
mov edx, dword [r13 + 0xc]
call fcn.140037424
jmp 0x140030c74
mov rdx, r13
mov rcx, r15
call fcn.140030314
mov rdx, qword [r13 + 0x10]
mov rbx, rax
xor eax, eax
test rdx, rdx
jne 0x140034285
mov ecx, eax
jmp 0x140034297
or rcx, 0xffffffffffffffff
inc rcx
cmp byte [rdx + rcx], al
jne 0x140034289
and ecx, 0x3fffffff
mov r8d, 1
mov dword [r13 + 4], ecx
cmp byte [rsp + 0x3c], r8b
je 0x14003432f
mov r9b, r8b
mov qword [rsp + 0x20], rax
or r8d, 0xffffffff
mov rcx, rbx
call fcn.140029704
xor ecx, ecx
mov dword [rsp + 0x34], eax
mov esi, eax
test eax, eax
jne 0x140036173
lea eax, [rsi + 2]
test byte [rbx + 8], al
je 0x1400342f5
mov al, byte [rsp + 0x3c]
cmp byte [rbx + 0xa], al
je 0x1400342f5
mov dl, al
mov rcx, rbx
call fcn.140010d80
xor ecx, ecx
test eax, eax
jne 0x1400361d7
mov eax, 0x800
mov dword [rbx + 0x20], ecx
or word [rbx + 8], ax
cmp byte [r13 + 1], 0xf9
jne 0x140034319
mov rdx, qword [r13 + 0x10]
test rdx, rdx
je 0x140034319
mov rcx, r12
call fcn.14000eb28
mov byte [r13 + 1], 0xf9
mov rax, qword [rbx + 0x10]
mov qword [r13 + 0x10], rax
mov eax, dword [rbx + 0xc]
mov ecx, eax
mov dword [r13 + 4], eax
cmp ecx, dword [r12 + 0x7c]
jg 0x140036173
mov byte [r13], 0x48
mov rdx, r13
mov rcx, r15
call fcn.140030314
mov r8, rax
xor r10d, r10d
mov eax, 0xa02
mov word [r8 + 8], ax
mov rcx, qword [r13 + 0x10]
mov al, byte [rsp + 0x3c]
mov qword [r8 + 0x10], rcx
mov ecx, dword [r13 + 4]
mov dword [r8 + 0xc], ecx
mov byte [r8 + 0xa], al
cmp dword [r13 + 0xc], r10d
jle 0x140030770
movsxd rcx, dword [r13 + 0xc]
lea r11d, [r10 + 1]
movzx eax, word [r13 + 2]
lea r9d, [r10 + 8]
mov ebx, dword [rsp + 0x30]
imul rdx, rcx, 0x38
mov ecx, 0x2400
cmp qword [rdx + r14], rax
lea edx, [r10 + 4]
jne 0x1400343ae
mov eax, 0xa10
mov word [r8 + 8], ax
mov r8d, 2
jmp 0x140030790
movsxd rax, dword [r13 + 4]
mov rcx, r15
mov rdx, qword [r15 + 0x78]
mov rdx, qword [rdx + rax*8]
call fcn.14002bb10
movsxd rcx, dword [r13 + 4]
xor r10d, r10d
mov rax, qword [r15 + 0x78]
mov qword [rax + rcx*8], r10
jmp 0x140030770
sub ebx, 0x77
je 0x14003493d
sub ebx, 1
je 0x140034904
sub ebx, 1
je 0x14003474f
sub ebx, 1
je 0x140034630
sub ebx, 1
je 0x140034555
sub ebx, 1
je 0x14003453e
sub ebx, 1
je 0x1400344f8
sub ebx, 1
je 0x1400344b6
cmp ebx, 1
jne 0x140033c8c
mov rdx, r13
mov rcx, r15
call fcn.140030314
mov rcx, qword [r15 + 0x78]
mov rdi, rax
movsxd rdx, dword [r13 + 4]
mov rdx, qword [rcx + rdx*8]
mov rbx, qword [rdx + 0x38]
mov rcx, rbx
call fcn.140021b98
mov r8d, dword [rbx + 0x40]
cmp r8d, dword [r12 + 0x7c]
ja 0x140036173
mov r9, rdi
xor edx, edx
mov rcx, rbx
call fcn.140029a54
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov esi, eax
test eax, eax
jne 0x140030a26
cmp dword [r13 + 0xc], r10d
jne 0x14003076b
mov eax, 0x1000
test word [rdi + 8], ax
je 0x14003076b
mov rcx, rdi
call fcn.140028c54
xor r10d, r10d
test eax, eax
jne 0x1400361d7
jmp 0x14003076b
movsxd rax, dword [r13 + 8]
movsxd rcx, dword [r13 + 4]
imul rdx, rax, 0x38
mov rax, qword [r15 + 0x78]
add rdx, r14
mov rcx, qword [rax + rcx*8]
call fcn.14003909c
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov esi, eax
test eax, eax
jne 0x140030a26
movsxd rcx, dword [r13 + 0xc]
mov rax, qword [r15 + 0x78]
mov rcx, qword [rax + rcx*8]
mov dword [rcx + 0x28], r10d
jmp 0x140030770
mov rax, qword [r15 + 0x78]
lea r9, [rbp]
movsxd rcx, dword [r13 + 4]
mov r8d, dword [r13 + 0x10]
mov rcx, qword [rax + rcx*8]
movsxd rax, dword [r13 + 0xc]
imul rdx, rax, 0x38
mov dword [rbp], r10d
add rdx, r14
call fcn.140039150
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov esi, eax
test eax, eax
jne 0x140030a26
cmp dword [rbp], r10d
lea r11d, [rax + 1]
jmp 0x1400310b2
mov eax, dword [r15 + 0x3c]
add dword [r12 + 0x78], eax
mov dword [r12 + 0x74], eax
mov dword [r15 + 0x3c], r10d
jmp 0x140033c8c
cmp byte [r13 + 1], 0xfa
mov rax, qword [rsp + 0x58]
movsxd rcx, dword [r13 + 4]
mov r15d, dword [r13 + 8]
mov rax, qword [rax + 0x78]
mov rdi, qword [rax + rcx*8]
jne 0x1400345b3
cmp qword [r12 + 0x130], r10
je 0x1400345b3
movsx rcx, byte [rdi + 1]
mov rax, qword [r12 + 0x20]
mov rsi, qword [r13 + 0x10]
shl rcx, 5
mov r14, qword [rcx + rax]
test byte [r13 + 2], r8b
je 0x1400345b9
cmp byte [rdi + 4], r10b
je 0x1400345b9
mov rbx, qword [rdi + 0x38]
mov rcx, rbx
call fcn.140021b98
mov rax, qword [rbx + 0x30]
mov qword [rdi + 0x58], rax
jmp 0x1400345b9
mov r14, r10
mov rsi, r10
mov dl, byte [r13 + 2]
mov rcx, qword [rdi + 0x38]
call fcn.140026238
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov qword [rdi + 0x28], r10
test eax, eax
jne 0x140030a2a
lea r11d, [rax + 1]
test r11b, r15b
mov r15, qword [rsp + 0x58]
je 0x140035b1e
add dword [r15 + 0x3c], r11d
mov r10, qword [r12 + 0x130]
test r10, r10
je 0x14003372f
lea eax, [r11 + 0x1f]
test byte [rsi + 0x40], al
jne 0x14003372f
mov rax, qword [rdi + 0x58]
lea edx, [r11 + 8]
mov r9, qword [rsi]
mov r8, r14
mov rcx, qword [r12 + 0x128]
mov qword [rsp + 0x20], rax
call r10
jmp 0x140033ff6
movsxd rax, dword [r13 + 8]
movsxd rcx, dword [r13 + 4]
imul rdx, rax, 0x38
mov rax, qword [r15 + 0x78]
add rdx, r14
mov rbx, qword [rax + rcx*8]
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
cmp byte [r13 + 1], 0xfa
mov r8, qword [rcx + r14]
mov qword [rbp - 0x38], r8
jne 0x140034680
cmp qword [r12 + 0x130], r10
je 0x140034680
movsx rcx, byte [rbx + 1]
mov rax, qword [r12 + 0x20]
mov rdi, qword [r13 + 0x10]
shl rcx, 5
mov rsi, qword [rcx + rax]
jmp 0x140034686
mov rdi, r10
mov rsi, r10
movzx ecx, word [r13 + 2]
test r11b, cl
je 0x140034699
add dword [r15 + 0x3c], r11d
movzx ecx, word [r13 + 2]
mov eax, 0x20
test al, cl
je 0x1400346ac
mov qword [r12 + 0x38], r8
movzx ecx, word [r13 + 2]
mov rax, qword [rdx + 0x10]
mov qword [rbp - 0x30], rax
mov eax, dword [rdx + 0xc]
mov dword [rbp - 0x1c], eax
mov eax, 0x10
test al, cl
je 0x1400346c9
mov r9d, dword [rbx + 0x2c]
jmp 0x1400346cc
mov r9d, r10d
mov eax, 0x4000
test word [rdx + 8], ax
je 0x1400346de
mov eax, dword [rdx]
mov dword [rbp - 0x18], eax
jmp 0x1400346e2
mov dword [rbp - 0x18], r10d
movzx r8d, cx
lea rdx, [rbp - 0x40]
mov qword [rbp - 0x40], r10
and r8d, 0xa
mov rcx, qword [rbx + 0x38]
call fcn.140025e38
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov byte [rbx + 3], r10b
mov dword [rbx + 0x28], r10d
test eax, eax
jne 0x140030a2a
test rdi, rdi
je 0x140030767
mov al, byte [r13 + 2]
mov r8, rsi
mov r9, qword [rdi]
and al, 4
mov rcx, qword [r12 + 0x128]
neg al
mov rax, qword [rbp - 0x38]
sbb edx, edx
mov qword [rsp + 0x20], rax
and edx, 5
add edx, 0x12
call qword [r12 + 0x130]
jmp 0x140031e75
mov rdx, r13
mov qword [rsp + 0x68], r10
mov rcx, r15
mov dword [rbp - 0x78], r10d
call fcn.140030314
movsxd rdx, dword [r13 + 4]
mov r8d, 2
mov rcx, qword [r15 + 0x78]
mov rsi, rax
mov rdi, qword [rcx + rdx*8]
test byte [rdi + 8], r8b
jne 0x1400347e7
mov rcx, qword [rdi + 0x38]
lea rdx, [rbp - 0x78]
call fcn.14002239c
xor r10d, r10d
mov dword [rsp + 0x34], eax
test eax, eax
jne 0x140030a2a
cmp dword [rbp - 0x78], r10d
je 0x1400347af
lea eax, [r10 + 1]
mov qword [rsp + 0x68], rax
lea r8d, [r10 + 2]
jmp 0x1400347ea
mov rbx, qword [rdi + 0x38]
mov rcx, rbx
call fcn.140021b98
mov rax, qword [rbx + 0x30]
movabs rcx, 0x7fffffffffffffff
mov qword [rsp + 0x68], rax
mov r8d, 2
cmp rax, rcx
jl 0x1400347df
or dword [rdi + 8], r8d
jmp 0x1400347e7
inc rax
mov qword [rsp + 0x68], rax
xor r10d, r10d
movsxd rdx, dword [r13 + 0xc]
test edx, edx
je 0x140034869
mov rcx, qword [r15 + 0x100]
test rcx, rcx
je 0x14003481a
mov rax, qword [rcx + 8]
jmp 0x14003480b
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x140034804
imul rbx, rdx, 0x38
add rbx, qword [rcx + 0x20]
jmp 0x140034821
imul rbx, rdx, 0x38
add rbx, r14
mov rcx, rbx
call fcn.140029150
mov rax, qword [rbx]
movabs rcx, 0x7fffffffffffffff
cmp rax, rcx
je 0x1400360e5
mov r8d, 2
test byte [rdi + 8], r8b
jne 0x1400360e5
mov rcx, qword [rsp + 0x68]
inc rax
cmp rcx, rax
cmovl rcx, rax
xor r10d, r10d
mov qword [rsp + 0x68], rcx
mov qword [rbx], rcx
test byte [rdi + 8], r8b
je 0x1400348e0
mov ebx, r10d
lea rdx, [rsp + 0x68]
mov ecx, 8
call fcn.140010b1c
mov r8, qword [rsp + 0x68]
movabs rax, 0x3fffffffffffffff
and r8, rax
xor r9d, r9d
inc r8
lea rax, [rbp - 0x78]
mov qword [rsp + 0x68], r8
xor edx, edx
mov rcx, qword [rdi + 0x38]
mov qword [rsp + 0x20], rax
call fcn.140022404
xor r10d, r10d
mov dword [rsp + 0x34], eax
test eax, eax
jne 0x140030a2a
cmp dword [rbp - 0x78], r10d
jne 0x1400348da
inc ebx
cmp ebx, 0x64
jl 0x140034872
lea esi, [rax + 0xd]
mov dword [rsp + 0x34], esi
jmp 0x140030a26
mov r8d, 2
mov byte [rdi + 3], r10b
mov r11d, 1
mov dword [rdi + 0x28], r10d
mov rax, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x48]
mov qword [rsi], rax
mov esi, dword [rsp + 0x34]
jmp 0x14003331b
mov rdx, r13
mov rcx, r15
call fcn.140030314
mov rcx, qword [r15 + 0x78]
mov r11d, 1
movsxd rdx, dword [r13 + 4]
mov rdx, qword [rcx + rdx*8]
mov rcx, qword [rdx + 0x18]
mov qword [rax], rcx
movsxd rcx, dword [r13 + 4]
mov rax, qword [r15 + 0x78]
mov rdx, qword [rax + rcx*8]
add qword [rdx + 0x18], r11
jmp 0x140030eaa
mov rax, qword [r15 + 0x78]
movsxd rcx, dword [r13 + 4]
mov rdx, qword [rax + rcx*8]
mov eax, dword [r13 + 8]
shl eax, 3
xor eax, dword [rdx + 8]
and eax, r9d
xor dword [rdx + 8], eax
jmp 0x14003067a
mov rdx, r13
mov rcx, r15
call fcn.140030314
movsxd rdx, dword [r13 + 4]
xor r10d, r10d
mov rcx, qword [r15 + 0x78]
mov rdi, rax
mov rbx, qword [rcx + rdx*8]
cmp byte [rbx + 2], r10b
je 0x14003498f
lea r11d, [r10 + 1]
mov word [rax + 8], r11w
jmp 0x140030f70
cmp byte [rbx + 3], r10b
je 0x14003499e
mov rax, qword [rbx + 0x58]
jmp 0x140034a31
mov rcx, qword [rbx + 0x38]
mov r8d, 2
cmp byte [rbx], r8b
jne 0x1400349dc
mov rbx, qword [rcx]
lea rdx, [rbp + 0x18]
mov rax, qword [rbx]
call qword [rax + 0x60]
mov rdx, rbx
mov rcx, r15
mov esi, eax
mov dword [rsp + 0x34], eax
call fcn.14002df24
xor r10d, r10d
test esi, esi
jne 0x140030a26
mov rax, qword [rbp + 0x18]
jmp 0x140034a35
cmp byte [rcx], r10b
je 0x140034a00
mov rcx, rbx
call fcn.14002cc64
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov esi, eax
test eax, eax
jne 0x1400360ef
lea r8d, [rax + 2]
jmp 0x140034a08
mov esi, r10d
mov dword [rsp + 0x34], r10d
cmp byte [rbx + 2], r10b
je 0x140034a1e
mov r11d, 1
mov word [rdi + 8], r11w
jmp 0x140033e17
mov rbx, qword [rbx + 0x38]
mov rcx, rbx
call fcn.140021b98
mov rax, qword [rbx + 0x30]
xor r10d, r10d
mov qword [rbp + 0x18], rax
mov qword [rdi], rax
jmp 0x14003076b
mov eax, 0x95
cmp ebx, eax
ja 0x140035253
je 0x140035219
mov eax, 0x8b
cmp ebx, eax
ja 0x140034f1c
je 0x140034ece
mov eax, 0x86
cmp ebx, eax
ja 0x140034cc3
je 0x140034e1d
mov ecx, ebx
sub ecx, 0x81
je 0x140034c86
sub ecx, 1
je 0x140034bf1
sub ecx, 1
je 0x140034b34
sub ecx, 1
je 0x140034b34
cmp ecx, 1
jne 0x140031269
movsxd rcx, dword [r13 + 4]
lea rdx, [rbp - 0x40]
mov rax, qword [r15 + 0x78]
xor r9d, r9d
xor r8d, r8d
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x40]
mov rdi, qword [rbx + 0x38]
mov qword [rbp - 0x40], rax
movzx eax, word [r13 + 0xc]
mov word [rbp - 0x30], ax
movsxd rax, dword [r13 + 8]
imul rcx, rax, 0x38
lea rax, [rbp + 0x14]
mov byte [rbp - 0x2e], r10b
add rcx, r14
mov qword [rsp + 0x20], rax
mov qword [rbp - 0x38], rcx
mov rcx, rdi
call fcn.140022404
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov esi, eax
test eax, eax
jne 0x140030a26
cmp dword [rbp + 0x14], r10d
jne 0x140034b2a
lea edx, [rax + 4]
mov rcx, rdi
call fcn.140026238
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov esi, eax
test eax, eax
jne 0x140030a26
and qword [rbx + 0x28], 0
jmp 0x14003076b
mov rax, qword [r15 + 0x78]
movsxd rcx, dword [r13 + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [r13 + 8]
imul rbx, rax, 0x38
add rbx, r14
test byte [r13 + 2], r11b
je 0x140034b55
add dword [r15 + 0x3c], r11d
mov eax, 0x4000
test word [rbx + 8], ax
je 0x140034b77
mov rcx, rbx
call fcn.140028cac
xor r10d, r10d
mov dword [rsp + 0x34], eax
test eax, eax
jne 0x140030a26
cmp byte [r13], 0x83
jne 0x140034b8e
mov rdx, rbx
mov rcx, rdi
call fcn.1400383d4
xor r10d, r10d
jmp 0x140034be6
movsxd rax, dword [rbx + 0xc]
movzx r8d, word [r13 + 2]
mov qword [rbp - 0x38], rax
mov rax, qword [rbx + 0x10]
mov qword [rbp - 0x40], rax
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
movzx eax, word [r13 + 0x10]
add rcx, r14
mov word [rbp - 0x20], ax
mov eax, 0x10
mov qword [rbp - 0x28], rcx
test al, r8b
je 0x140034bcb
mov r9d, dword [rdi + 0x2c]
jmp 0x140034bce
mov r9d, r10d
mov rcx, qword [rdi + 0x38]
lea rdx, [rbp - 0x40]
and r8d, 0xa
call fcn.140025e38
xor r10d, r10d
mov dword [rdi + 0x28], r10d
mov dword [rsp + 0x34], eax
mov esi, eax
jmp 0x14003184b
movsxd rcx, dword [r13 + 4]
mov rax, qword [r15 + 0x78]
mov rdi, qword [rax + rcx*8]
mov rcx, qword [rdi + 0x38]
mov dword [rbp - 0x50], r10d
cmp bl, 0x82
jne 0x140034c17
or dword [rdi + 0x2c], 0xffffffff
cmp byte [rcx], r10b
je 0x140033aaf
lea rdx, [rbp - 0x50]
call fcn.14002239c
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov esi, eax
mov al, byte [rbp - 0x50]
mov byte [rdi + 2], al
mov byte [rdi + 3], r10b
mov dword [rdi + 0x28], r10d
test esi, esi
jne 0x140030a26
cmp dword [r13 + 8], r10d
jle 0x14003076b
cmp dword [rbp - 0x50], r10d
je 0x14003076b
jmp 0x14003182a
mov esi, dword [rsp + 0x34]
xor r10d, r10d
mov r15, qword [rsp + 0x58]
mov r12, qword [rsp + 0x50]
jmp 0x140031830
mov esi, dword [rsp + 0x34]
jmp 0x14003182a
mov r15, qword [rsp + 0x58]
mov r12, qword [rsp + 0x50]
jmp 0x140031830
movsxd rcx, dword [r13 + 4]
mov rax, qword [r15 + 0x78]
mov rbx, qword [rax + rcx*8]
mov byte [rbx + 2], r11b
mov dword [rbx + 0x28], r10d
cmp byte [rbx], r10b
jne 0x140031269
mov rbx, qword [rbx + 0x38]
mov rcx, qword [rbx + 0x18]
call fcn.14000eaa0
xor r10d, r10d
mov qword [rbx + 0x18], r10
lea r11d, [r10 + 1]
mov byte [rbx], r11b
jmp 0x140030c42
sub ebx, 0x87
je 0x140034e1d
sub ebx, 1
je 0x140034d7b
sub ebx, 1
je 0x140034d16
cmp ebx, 1
jne 0x140033c8c
movsxd rcx, dword [r13 + 4]
mov rax, qword [r15 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx], r11b
jne 0x140034d08
mov rdx, qword [rcx + 0x38]
mov rcx, r12
call fcn.1400378b8
jmp 0x140031057
mov rcx, qword [rcx + 0x38]
call fcn.140026b44
jmp 0x140030c74
mov eax, dword [r13 + 0xc]
mov rcx, qword [r12 + 0x20]
neg eax
mov edx, dword [r13 + 4]
lea rax, [rbp - 0x78]
sbb r8, r8
mov dword [rbp - 0x78], r10d
and r8, rax
movsxd rax, dword [r13 + 8]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.140026a88
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov esi, eax
cmp dword [r13 + 0xc], r10d
je 0x1400331aa
movsxd rdx, dword [rbp - 0x78]
add dword [r15 + 0x3c], edx
cmp dword [r13 + 0xc], r10d
jle 0x1400331aa
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
add qword [rcx + r14], rdx
jmp 0x1400331aa
mov rdx, r13
mov rcx, r15
call fcn.140030314
mov edi, 1
mov rbx, rax
mov word [rax + 8], di
mov ecx, dword [r12 + 0xd8]
add ecx, edi
cmp dword [r12 + 0xcc], ecx
jg 0x1400360f8
movsxd rdi, dword [r13 + 0xc]
lea r8, [rbp - 0x4c]
mov rcx, qword [r12 + 0x20]
xor eax, eax
mov edx, dword [r13 + 4]
mov r9, rdi
shl r9, 5
mov dword [rbp - 0x4c], eax
mov rcx, qword [r9 + rcx + 8]
call fcn.140026d58
mov esi, eax
mov dword [rsp + 0x34], eax
mov edx, 4
xor r10d, r10d
mov word [rbx + 8], dx
movsxd rax, dword [rbp - 0x4c]
mov qword [rbx], rax
test esi, esi
jne 0x140030a26
mov r8d, dword [rbp - 0x4c]
test r8d, r8d
je 0x140030fa2
mov r9d, dword [r13 + 4]
mov edx, edi
mov rcx, r12
call fcn.1400499c4
lea r11d, [rsi + 1]
lea eax, [r11 + rdi]
mov byte [rbp - 0x7f], al
jmp 0x140030ea5
movsxd rcx, dword [r13 + 4]
mov rax, qword [r15 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, rbx
call fcn.14002ccb0
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov esi, eax
test eax, eax
jne 0x140030a26
cmp byte [rbx + 2], r10b
jne 0x140034eb9
mov qword [rbp + 0x28], r10
lea r8, [rbp + 0x28]
mov rdx, qword [rbx + 0x38]
mov rcx, r12
call fcn.14002dc50
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov esi, eax
test eax, eax
jne 0x140030a26
cmp byte [r13], 0x86
jne 0x140034ea5
mov rax, qword [r15 + 0x78]
lea r11d, [rsi + 1]
movsxd rcx, dword [r13 + 0xc]
mov rdx, qword [rax + rcx*8]
mov byte [rdx + 2], r10b
mov rax, qword [rbp + 0x28]
mov qword [rdx + 0x58], rax
mov byte [rdx + 3], r11b
mov rax, qword [r13 + 0x10]
mov qword [rdx + 0x20], rax
mov qword [rdx + 0x30], rbx
jmp 0x140030c42
mov rdx, r13
mov rcx, r15
call fcn.140030314
mov rcx, qword [rbp + 0x28]
jmp 0x140033358
movsxd rax, dword [r13 + 8]
imul rcx, rax, 0x38
add rcx, r14
call fcn.14002937c
jmp 0x140031057
mov rdx, r13
mov rcx, r15
call fcn.140030314
movsxd rcx, dword [r13 + 4]
lea rdx, [rbp - 4]
mov r8d, dword [r13 + 0xc]
mov rbx, rax
shl rcx, 5
xor eax, eax
add rcx, qword [r12 + 0x20]
mov dword [rbp - 4], eax
mov rcx, qword [rcx + 8]
call fcn.140026884
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov esi, eax
test eax, eax
jne 0x140030a26
movsxd rax, dword [rbp - 4]
mov qword [rbx], rax
jmp 0x140030770
sub ebx, 0x8c
je 0x1400351f3
sub ebx, 1
je 0x1400350c3
sub ebx, 1
je 0x1400350b2
sub ebx, 1
je 0x14003509d
sub ebx, 1
je 0x140035088
sub ebx, 1
je 0x140035073
sub ebx, 1
je 0x140034fd5
sub ebx, 1
je 0x140034f96
cmp ebx, 1
jne 0x140033c8c
mov rdx, r13
mov rcx, r15
call fcn.140030314
lea r9d, [rbx + 7]
xor r10d, r10d
mov ebx, dword [rsp + 0x30]
mov word [rax + 8], r9w
lea r11d, [r9 - 7]
mov rcx, qword [r13 + 0x10]
mov rdx, qword [rcx]
mov qword [rax], rdx
jmp 0x140030780
movsxd rax, dword [r13 + 4]
imul rbx, rax, 0x38
movsxd rax, dword [r13 + 8]
imul rdi, rax, 0x38
add rbx, r14
mov eax, 0x10
test byte [rbx + 8], al
jne 0x140034fc3
mov rcx, rbx
call fcn.1400294b4
test eax, eax
jne 0x1400361d7
mov rdx, qword [rdi + r14]
mov rcx, qword [rbx + 0x10]
call fcn.140016d70
jmp 0x140031e79
movsxd rax, dword [r13 + 0xc]
lea r8, [rbp + 0x10]
mov rcx, qword [r12 + 0x20]
mov rdx, qword [r13 + 0x10]
imul rdi, rax, 0x38
movsxd rax, dword [r13 + 4]
add rdx, 4
imul rbx, rax, 0x38
movzx eax, word [r13 + 2]
mov r9d, dword [rdi + r14]
add rbx, r14
shl rax, 5
add r9d, r11d
mov qword [rsp + 0x20], r8
mov r8d, dword [r13 + 8]
mov rcx, qword [rax + rcx + 8]
call fcn.140027918
mov rcx, rbx
mov rsi, rax
call fcn.14002937c
mov ecx, dword [rbp + 0x10]
test ecx, ecx
je 0x140035061
test rsi, rsi
je 0x1400361d7
dec ecx
lea rax, [fcn.14000eaa0]
movsxd rdx, ecx
mov r9d, 1
sub qword [rdi + r14], rdx
or r8d, 0xffffffff
mov rdx, rsi
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.140029704
movzx edx, byte [rsp + 0x3c]
mov rcx, rbx
call fcn.140028a80
jmp 0x140031e75
mov r8, qword [r13 + 0x10]
mov rcx, r12
mov edx, dword [r13 + 4]
call fcn.140064610
jmp 0x140031057
mov r8, qword [r13 + 0x10]
mov rcx, r12
mov edx, dword [r13 + 4]
call fcn.140046fc4
jmp 0x140031057
mov r8, qword [r13 + 0x10]
mov rcx, r12
mov edx, dword [r13 + 4]
call fcn.1400474d0
jmp 0x140031057
mov edx, dword [r13 + 4]
mov rcx, r12
call fcn.140045870
jmp 0x140030c74
mov rcx, qword [r13 + 0x10]
movsxd rbx, dword [r13 + 4]
test rcx, rcx
jne 0x140035124
mov rcx, qword [r12 + 0x20]
mov rax, rbx
shl rax, 5
mov rcx, qword [rax + rcx + 0x18]
call fcn.14004d420
and dword [r12 + 0x2c], 0xffffffef
lea r8, [r15 + 0xa8]
mov r9d, 1
mov edx, ebx
mov rcx, r12
call fcn.14005a6dc
mov r11d, 1
mov dword [rsp + 0x34], eax
or dword [r12 + 0x2c], r11d
mov esi, eax
and dword [r15 + 0xc8], 0xfffffffc
xor r10d, r10d
jmp 0x1400351e6
mov r8, qword [r12 + 0x20]
lea rax, [r15 + 0xa8]
mov qword [rbp - 0x38], rax
lea r9, str.sqlite_master
mov qword [rbp - 0x40], r12
lea rdx, str.SELECTFROM__w_._s_WHERE__s_ORDER_BY_rowid
mov dword [rbp - 0x30], ebx
mov rax, rbx
shl rax, 5
mov dword [rbp - 0x28], r10d
mov qword [rsp + 0x20], rcx
mov rcx, r12
mov r8, qword [rax + r8]
call fcn.140010900
mov rbx, rax
xor eax, eax
test rbx, rbx
je 0x140036111
lea r11d, [rax + 1]
mov dword [rbp - 0x2c], eax
lea r9, [rbp - 0x40]
mov byte [r12 + 0xb5], r11b
lea r8, [fcn.14005a4ec]
mov dword [rbp - 0x24], eax
mov rdx, rbx
mov qword [rsp + 0x20], rax
mov rcx, r12
call fcn.1400563d4
mov esi, eax
mov dword [rsp + 0x34], eax
xor eax, eax
test esi, esi
jne 0x1400351cc
mov esi, dword [rbp - 0x2c]
mov dword [rsp + 0x34], esi
test esi, esi
jne 0x1400351cc
cmp dword [rbp - 0x24], eax
jne 0x1400351cc
mov ecx, 0x15f51
call fcn.14007e65c
mov esi, eax
mov dword [rsp + 0x34], eax
mov rdx, rbx
mov rcx, r12
call fcn.14000eb28
xor r10d, r10d
mov byte [r12 + 0xb5], r10b
lea r11d, [r10 + 1]
test esi, esi
jne 0x14003611c
jmp 0x140030c42
add byte [r12 + 0x6a], r11b
xor r9d, r9d
mov rdx, qword [r13 + 0x10]
xor r8d, r8d
mov rcx, r12
mov qword [rsp + 0x20], r10
call fcn.1400563d4
dec byte [r12 + 0x6a]
jmp 0x140030c74
mov rdx, r13
mov rcx, r15
call fcn.140030314
mov r9, qword [r15 + 0x100]
movsxd rcx, dword [r9 + 0x54]
lea rdx, [rcx + rcx*2]
mov rcx, qword [r9 + 0x10]
mov r8d, dword [rcx + rdx*8 + 4]
add r8d, dword [r13 + 4]
movsxd rcx, r8d
imul rdx, rcx, 0x38
mov rcx, rax
add rdx, qword [r9 + 0x20]
jmp 0x1400327d2
mov eax, 0x9f
cmp ebx, eax
ja 0x14003568a
je 0x14003562d
sub ebx, 0x96
je 0x1400355f0
sub ebx, 1
je 0x14003556d
sub ebx, 1
je 0x14003550f
sub ebx, 1
je 0x14003535d
sub ebx, 1
je 0x14003535d
sub ebx, 1
je 0x1400353f2
sub ebx, 1
je 0x1400352e6
sub ebx, 1
je 0x1400352e6
cmp ebx, 1
jne 0x140033c8c
cmp dword [r13 + 4], r10d
jne 0x1400352c9
mov edx, dword [r13 + 8]
mov rcx, r12
call fcn.14002de48
jmp 0x140031057
mov eax, dword [r13 + 8]
add eax, r11d
xor eax, dword [r15 + 0xc8]
and eax, 3
xor dword [r15 + 0xc8], eax
jmp 0x140033c8c
movsxd rax, dword [r13 + 4]
imul rbx, rax, 0x38
add rbx, r14
mov rcx, rbx
cmp dword [r13 + 0xc], r10d
je 0x140035321
movsxd rax, dword [r13 + 0xc]
mov r8, qword [r13 + 0x10]
imul rdx, rax, 0x38
add rdx, r14
call fcn.140028ed4
mov esi, eax
mov dword [rsp + 0x34], eax
movsxd rax, dword [r13 + 0xc]
imul rbx, rax, 0x38
add rbx, r14
jmp 0x140035330
mov rdx, qword [r13 + 0x10]
call fcn.140028e2c
mov esi, eax
mov dword [rsp + 0x34], eax
mov rcx, rbx
test esi, esi
jne 0x14003614f
movzx edx, byte [rsp + 0x3c]
call fcn.140028a80
mov rcx, rbx
call fcn.14002957c
xor r10d, r10d
test eax, eax
jne 0x140036173
jmp 0x140030770
movzx edi, word [r13 + 2]
mov rcx, r12
lea rdx, [rdi*8 + 0x68]
call fcn.14000edf4
mov rbx, rax
xor eax, eax
test rbx, rbx
je 0x1400361d7
lea rcx, [rdi + 6]
mov qword [rbx + 0x10], rax
lea rcx, [rbx + rcx*8]
mov rdx, r12
lea r8d, [rax + 1]
mov qword [rbx], rcx
call fcn.14002936c
mov rcx, qword [r13 + 0x10]
movabs rax, 0x2aaaaaaaaaaaaaab
mov esi, dword [rsp + 0x34]
mov qword [rbx + 8], rcx
mov rcx, r13
sub rcx, qword [rsp + 0x48]
imul rcx
mov byte [rbx + 0x29], dil
mov rdi, qword [rsp + 0x48]
sar rdx, 2
mov rax, rdx
mov qword [rbx + 0x18], r15
shr rax, 0x3f
add rdx, rax
xor r11d, r11d
mov dword [rbx + 0x20], edx
mov byte [rbx + 0x28], r11b
mov dword [rbx + 0x24], r11d
mov word [r13], 0xf09b
mov qword [r13 + 0x10], rbx
jmp 0x1400353f5
xor r11d, r11d
movsxd rax, dword [r13 + 0xc]
mov rbx, qword [r13 + 0x10]
imul rdx, rax, 0x38
add rdx, r14
cmp qword [rbx + 0x10], rdx
je 0x140035458
movzx eax, byte [rbx + 0x29]
mov r8d, eax
mov qword [rbx + 0x10], rdx
sub r8, 1
lea r10d, [rax - 1]
js 0x140035458
mov edi, 8
lea r9, [r8 + 6]
lea r9, [rbx + r9*8]
lea r12d, [rdi - 7]
mov eax, dword [r13 + 8]
add eax, r10d
sub r10d, r12d
cdqe
imul rcx, rax, 0x38
add rcx, r14
mov qword [r9], rcx
sub r9, rdi
sub r8, r12
jns 0x140035430
mov r12, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x48]
mov eax, 1
lea r8, [rbx + 0x30]
add dword [rdx + 0xc], eax
mov rcx, rbx
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x29]
cmp dword [r13 + 4], r11d
je 0x14003547a
call qword [rax + 0x30]
jmp 0x14003547d
call qword [rax + 0x18]
mov eax, dword [rbx + 0x24]
xor r10d, r10d
test eax, eax
je 0x140030770
jle 0x1400354b1
mov rcx, qword [rbx]
call fcn.14002e398
mov r8, rax
lea rdx, [0x140156560]
mov rcx, r15
call fcn.14002a0c8
mov esi, dword [rbx + 0x24]
xor r10d, r10d
mov dword [rsp + 0x34], esi
cmp byte [rbx + 0x28], r10b
je 0x1400354d9
cmp dword [r13 - 0x14], r10d
je 0x1400354d5
movsxd rax, dword [r13 - 0x14]
mov edx, 1
imul rcx, rax, 0x38
add rcx, r14
call fcn.140029420
xor r10d, r10d
mov byte [rbx + 0x28], r10b
mov rcx, qword [rbx]
call fcn.140028fc4
mov rax, qword [rbx]
xor r10d, r10d
mov r11d, 1
mov word [rax + 8], r11w
mov dword [rbx + 0x24], r10d
test esi, esi
je 0x140030c42
mov rsi, qword [rsp + 0x40]
mov rdi, r11
mov eax, dword [rsp + 0x34]
jmp 0x140030a34
movsxd rax, dword [r13 + 4]
mov rdx, r13
imul rbx, rax, 0x38
movsxd rax, dword [r13 + 0xc]
mov rcx, r15
imul rdi, rax, 0x38
call fcn.140030314
mov rcx, qword [rbx + r14]
xor r10d, r10d
mov qword [rbp + 0x40], rcx
mov rsi, rax
test rcx, rcx
jle 0x140035564
mov rdx, qword [rdi + r14]
lea rcx, [rbp + 0x40]
test rdx, rdx
cmovle rdx, r10
call fcn.140012310
xor r10d, r10d
test eax, eax
jne 0x140035564
mov rax, qword [rbp + 0x40]
mov qword [rsi], rax
jmp 0x140030767
or qword [rsi], 0xffffffffffffffff
jmp 0x140030767
mov rcx, qword [r15 + 0x100]
test rcx, rcx
je 0x140035599
mov rax, qword [rcx + 8]
jmp 0x140035586
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x14003557f
movsxd rax, dword [r13 + 4]
imul rdi, rax, 0x38
add rdi, qword [rcx + 0x20]
jmp 0x1400355a4
movsxd rax, dword [r13 + 4]
imul rdi, rax, 0x38
add rdi, r14
mov rcx, rdi
call fcn.140029150
movsxd rax, dword [r13 + 8]
imul rbx, rax, 0x38
add rbx, r14
mov rcx, rbx
call fcn.140029150
mov rax, qword [rbx]
xor r10d, r10d
mov ecx, 0x2400
mov ebx, dword [rsp + 0x30]
lea edx, [r10 + 4]
lea r11d, [r10 + 1]
lea r8d, [r10 + 2]
lea r9d, [r10 + 8]
cmp qword [rdi], rax
jge 0x1400355e6
mov qword [rdi], rax
mov rdi, qword [rsp + 0x48]
jmp 0x140030790
mov eax, dword [r12 + 0x30]
bt rax, 0x13
movsxd rax, dword [r13 + 8]
jae 0x14003560d
add qword [r12 + 0x2b0], rax
jmp 0x140033c8c
mov ebx, dword [rsp + 0x30]
cmp dword [r13 + 4], r10d
je 0x140035624
add qword [r12 + 0x2a8], rax
jmp 0x140030790
add qword [r15 + 0x50], rax
jmp 0x140030790
mov r8b, byte [r13 + 0xc]
test r8b, r8b
jne 0x140035646
mov eax, dword [r12 + 0x30]
bt rax, 0xa
jb 0x1400327b3
movsxd rax, dword [r13 + 4]
mov rcx, qword [r12 + 0x20]
mov edx, dword [r13 + 8]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.140027d14
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov esi, eax
test eax, eax
je 0x140030770
cmp al, 6
jne 0x140030a26
mov r8, qword [r13 + 0x10]
lea rdx, str.database_table_is_locked:__s
jmp 0x14003615e
sub ebx, 0xa0
je 0x140035acd
sub ebx, 1
je 0x140035a4a
sub ebx, 1
je 0x140035a25
sub ebx, 1
je 0x140035998
sub ebx, 1
je 0x1400358a4
sub ebx, 1
je 0x14003582c
sub ebx, 1
je 0x1400357fd
sub ebx, 1
jne 0x140031f7c
mov rdx, r13
mov rcx, r15
call fcn.140030314
mov rcx, qword [r12 + 0x20]
mov rdi, rax
movsxd rdx, dword [r13 + 4]
shl rdx, 5
mov rbx, qword [rdx + rcx + 8]
xor ecx, ecx
mov eax, ecx
cmp dword [r13 + 0xc], ecx
je 0x140035710
mov rcx, rbx
call fcn.14001f394
cmp eax, dword [r13 + 0xc]
cmovb eax, dword [r13 + 0xc]
mov edx, eax
mov rcx, rbx
call fcn.1400200f8
movsxd rcx, eax
mov qword [rdi], rcx
jmp 0x140031e79
cmp dword [r12 + 0xd4], r11d
jle 0x14003576c
mov r8, r9
lea rdx, str.____s
mov rcx, r12
call fcn.140010900
mov rdx, qword [r12 + 0xf0]
mov r9, rax
mov r8, r15
mov ecx, 1
mov rbx, rax
call qword [r12 + 0xe8]
mov rdx, rbx
mov rcx, r12
call fcn.14000eb68
jmp 0x140035782
mov rdx, qword [r12 + 0xf0]
mov r8, r15
mov ecx, r11d
call qword [r12 + 0xe8]
mov r8d, 2
mov ecx, 0x2400
xor r10d, r10d
lea r11d, [r8 - 1]
lea edx, [r8 + 2]
mov r9d, 8
mov eax, dword [r13 + 4]
cmp eax, dword [0x140165e18]
jl 0x1400357eb
cmp byte [r13], 0xa8
je 0x140033c8c
mov edx, r11d
cmp dword [r15 + 0x90], r11d
jle 0x1400357e8
mov eax, 0x18
mov rcx, qword [r15 + 0x88]
cmp byte [rax + rcx], 0x11
jne 0x1400357d8
mov dword [rax + rcx + 4], r10d
add edx, r11d
add rax, 0x18
cmp edx, dword [r15 + 0x90]
jl 0x1400357c6
mov eax, r10d
inc eax
mov dword [r13 + 4], eax
add dword [r15 + 0xec], r11d
jmp 0x140031835
mov rdx, r13
mov rcx, r15
call fcn.140030314
movsxd rdx, dword [r13 + 4]
mov rbx, rax
mov rcx, qword [r12 + 0x20]
shl rdx, 5
mov rcx, qword [rdx + rcx + 8]
call fcn.14001f394
mov ecx, eax
mov qword [rbx], rcx
jmp 0x140031057
mov edi, dword [r12 + 0x30]
mov eax, 0x4000000
or qword [r12 + 0x30], rax
and edi, eax
mov rax, qword [r13 + 0x10]
mov edx, r11d
mov rsi, qword [rax + 0x10]
movsxd rax, dword [r13 + 4]
imul rbx, rax, 0x38
add rbx, r14
mov rcx, rbx
call fcn.140028a80
xor r10d, r10d
test eax, eax
jne 0x140030a2a
mov rax, qword [rsi]
mov rcx, rsi
mov rdx, qword [rbx + 0x10]
call qword [rax + 0x98]
mov dword [rsp + 0x34], eax
test edi, edi
jne 0x140035885
btr qword [r12 + 0x30], 0x1a
mov rdx, rsi
mov rcx, r15
call fcn.14002df24
and dword [r15 + 0xc8], 0xfffffffc
mov esi, dword [rsp + 0x34]
xor r10d, r10d
jmp 0x14003184b
mov rax, qword [r15 + 0x78]
movsxd rcx, dword [r13 + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [r13 + 0xc]
imul rbx, rax, 0x38
add rbx, r14
cmp byte [rdi + 2], r10b
je 0x1400358ce
mov rcx, rbx
call fcn.14002937c
jmp 0x140031e79
mov rax, qword [rdi + 0x38]
xorps xmm0, xmm0
mov rsi, qword [rax]
xor eax, eax
mov r14, qword [rsi]
movups xmmword [rbp - 0x40], xmm0
mov qword [rbp - 0x40], rbx
movups xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x10], rax
movups xmmword [rbp - 0x20], xmm0
test byte [r13 + 2], r11b
je 0x14003590a
mov rcx, rbx
call fcn.14002937c
xor eax, eax
mov dword [rbx], eax
mov eax, 0x4001
jmp 0x14003591a
movzx eax, word [rbx + 8]
mov ecx, 0x3e40
and ax, cx
or ax, r11w
mov word [rbx + 8], ax
lea rdx, [rbp - 0x40]
mov r8d, dword [r13 + 8]
mov rcx, qword [rdi + 0x38]
call qword [r14 + 0x58]
mov rdx, rsi
mov rcx, r15
mov dword [rsp + 0x34], eax
call fcn.14002df24
xor eax, eax
cmp dword [rbp - 0x1c], eax
jle 0x140035967
mov rcx, rbx
call fcn.14002e398
mov r8, rax
lea rdx, [0x140156560]
mov rcx, r15
call fcn.14002a0c8
mov esi, dword [rbp - 0x1c]
mov dword [rsp + 0x34], esi
jmp 0x14003596b
mov esi, dword [rsp + 0x34]
movzx edx, byte [rsp + 0x3c]
mov rcx, rbx
call fcn.140028a80
mov rcx, rbx
call fcn.14002957c
xor r10d, r10d
test eax, eax
jne 0x140036173
test esi, esi
jne 0x140030a26
jmp 0x140030b32
mov rax, qword [r13 + 0x10]
mov qword [rsp + 0x68], r10
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x140035e42
mov rdi, qword [rbx]
test rdi, rdi
je 0x140035e42
lea rdx, [rsp + 0x68]
mov rcx, rbx
call qword [rdi + 0x30]
mov rdx, rbx
mov rcx, r15
mov esi, eax
mov dword [rsp + 0x34], eax
call fcn.14002df24
xor r10d, r10d
test esi, esi
jne 0x140030a26
mov rax, qword [rsp + 0x68]
or r9d, 0xffffffff
xor r8d, r8d
mov rcx, r15
mov qword [rax], rbx
lea eax, [rsi + 2]
mov edx, dword [r13 + 4]
mov byte [rsp + 0x20], al
call fcn.14002ffcc
mov rcx, qword [rsp + 0x68]
xor r10d, r10d
test rax, rax
je 0x14003618f
lea r11d, [rsi + 1]
mov qword [rax + 0x38], rcx
add dword [rbx + 8], r11d
jmp 0x140030f70
add dword [r12 + 0xd8], r11d
mov rcx, r12
mov r8, qword [r13 + 0x10]
mov edx, dword [r13 + 4]
call fcn.140068428
dec dword [r12 + 0xd8]
jmp 0x140030c74
xorps xmm0, xmm0
lea rcx, [rbp + 0x90]
xor eax, eax
mov qword [rbp + 0xc0], rax
movsxd rax, dword [r13 + 8]
imul rdx, rax, 0x38
movups xmmword [rbp + 0xb0], xmm0
movups xmmword [rbp + 0x90], xmm0
movups xmmword [rbp + 0xa0], xmm0
add rdx, r14
mov qword [rbp + 0xb8], r12
call fcn.14002961c
lea rcx, [rbp + 0x90]
mov dword [rsp + 0x34], eax
mov esi, eax
call fcn.14002e398
test rax, rax
je 0x140035abc
mov edx, dword [r13 + 4]
lea r9, [r15 + 0xa8]
mov r8, rax
mov rcx, r12
call fcn.1400680d4
mov esi, eax
mov dword [rsp + 0x34], eax
lea rcx, [rbp + 0x90]
call fcn.140028fc4
jmp 0x1400331a7
mov rbx, qword [r13 + 0x10]
mov rcx, r12
mov rdx, rbx
call fcn.1400685d0
xor r10d, r10d
mov dword [rsp + 0x34], eax
mov esi, eax
test rbx, rbx
je 0x1400331aa
mov rdx, qword [rbx + 0x10]
mov rcx, r15
call fcn.14002df24
jmp 0x1400331a7
mov r14, qword [rsp + 0x60]
mov r13, rsi
mov esi, dword [rsp + 0x34]
mov edx, 4
mov rdi, qword [rsp + 0x48]
mov ebx, dword [rsp + 0x30]
jmp 0x1400343ae
mov esi, dword [rsp + 0x34]
mov r14, qword [rsp + 0x60]
jmp 0x140030f70
mov rdi, qword [rsp + 0x48]
mov r15, r8
jmp 0x14003113d
mov rdi, qword [rsp + 0x48]
jmp 0x140030fad
mov ebx, dword [rsp + 0x30]
xor r10d, r10d
lea edx, [r10 + 4]
lea r11d, [r10 + 1]
jmp 0x140030790
mov dword [rsp + 0x34], r9d
jmp 0x140030a26
mov ebx, dword [rsp + 0x38]
mov eax, 5
cmp sil, al
jne 0x140035eb5
mov rcx, r13
mov dword [r15 + 0x38], esi
sub rcx, rdi
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [r15 + 0x34], edx
mov r15d, dword [rsp + 0x34]
jmp 0x14003621e
mov rdx, qword [r15 + 0xa8]
test rdx, rdx
je 0x140035bba
mov rcx, r12
call fcn.14000eb28
lea rdx, str.database_schema_has_changed
mov rcx, r12
call fcn.14000ef70
mov qword [r15 + 0xa8], rax
mov rax, qword [r12 + 0x20]
movsxd rdx, dword [r13 + 4]
mov rcx, rdx
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov eax, dword [rbp - 0x78]
cmp dword [rcx], eax
je 0x140035bf4
mov rcx, r12
call fcn.140047140
and dword [r15 + 0xc8], 0xfffffffd
mov edi, 1
or dword [r15 + 0xc8], edi
mov dword [rsp + 0x34], 0x11
mov eax, dword [rsp + 0x34]
xor r10d, r10d
mov rsi, qword [rsp + 0x40]
jmp 0x140030a34
movzx eax, byte [r12 + 0x5f]
mov ebx, dword [r13 + 4]
mov ecx, dword [r13 + 8]
cmp ebx, eax
je 0x140035d1b
test ecx, ecx
je 0x140035c4f
mov edx, 0x204
mov rcx, r12
call fcn.14007c448
mov eax, 1
jmp 0x140035c9e
test ebx, ebx
je 0x140035c81
cmp dword [r12 + 0xd0], r10d
jle 0x140035c81
lea rdx, str.cannot_commit_transaction___SQL_statements_in_progress
mov rcx, r15
call fcn.14002a0c8
mov eax, 5
mov dword [rsp + 0x34], eax
mov eax, dword [rsp + 0x34]
xor r10d, r10d
jmp 0x140030a2a
mov edx, r11d
mov rcx, r15
call fcn.14002c4ec
mov r15d, eax
test eax, eax
jne 0x14003621a
mov r15, qword [rsp + 0x58]
mov al, bl
mov rcx, r15
mov byte [r12 + 0x5f], al
call fcn.14002c53c
mov r8d, 5
cmp eax, r8d
jne 0x140035cfd
mov rcx, r13
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, rdi
lea edi, [r8 - 4]
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov eax, edi
sub al, bl
mov dword [r15 + 0x34], edx
mov byte [r12 + 0x5f], al
mov r15d, r8d
mov rax, qword [rsp + 0x58]
mov dword [rax + 0x38], r8d
mov ebx, dword [rsp + 0x38]
jmp 0x140036223
mov rcx, r12
call fcn.14007bf58
mov eax, dword [r15 + 0x38]
neg eax
sbb r15d, r15d
and r15d, 0xffffff9c
add r15d, 0x65
jmp 0x14003621a
test ecx, ecx
lea rax, str.cannot_rollback___no_transaction_is_active
lea rdx, str.cannot_commit___no_transaction_is_active
mov rcx, r15
cmovne rdx, rax
test ebx, ebx
lea rax, str.cannot_start_a_transaction_within_a_transaction
cmove rdx, rax
call fcn.14002a0c8
mov edi, 1
mov dword [rsp + 0x34], edi
jmp 0x140035c10
lea rdx, str.cannot_open_savepoint___SQL_statements_in_progress
jmp 0x140035c64
lea rdx, str.cannot_release_savepoint___SQL_statements_in_progress
mov rcx, r15
call fcn.14002a0c8
mov r12, qword [rsp + 0x50]
jmp 0x140035c6c
mov rsi, qword [rsp + 0x40]
movabs rax, 0x2aaaaaaaaaaaaaab
mov r12, qword [rsp + 0x50]
mov rcx, rsi
sub rcx, qword [rsp + 0x48]
mov ebx, dword [rsp + 0x38]
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov rax, qword [rsp + 0x58]
xor r10d, r10d
mov dword [r15 + 0x34], edx
mov byte [r12 + 0x5f], r10b
mov r15d, r8d
mov dword [rax + 0x38], r8d
lea edi, [r10 + 1]
jmp 0x140036228
mov r8, rsi
lea rdx, str.no_such_savepoint:__s
mov rcx, r15
call fcn.14002a0c8
mov r12, qword [rsp + 0x50]
mov edi, 1
mov dword [rsp + 0x34], edi
jmp 0x140035c10
mov rcx, qword [rsp + 0x58]
lea rax, str.into
cmp ebx, edx
lea r8, str.out_of
mov edi, 1
lea rdx, str.cannot_change__s_wal_mode_from_within_a_transaction
cmove r8, rax
mov dword [rsp + 0x34], edi
call fcn.14002a0c8
jmp 0x140035c10
movzx eax, byte [r13 + 2]
mov ecx, 5
cmp word [r13 + 2], cx
lea edx, [rcx - 3]
cmove eax, edx
mov byte [r15 + 0xc2], al
jmp 0x140030a26
mov dword [rsp + 0x34], 6
jmp 0x140030a26
mov dword [rsp + 0x34], 0x14
jmp 0x140030a26
mov r9d, 0x159cf
lea rax, [0x14015b6c4]
mov ebx, 0xb
mov ecx, ebx
mov qword [rsp + 0x20], rax
lea r8, str.database_corruption
lea rdx, str._s_at_line__d_of___.10s_
call fcn.140010a60
mov dword [rsp + 0x34], ebx
jmp 0x140035c75
lea rdx, str.too_many_levels_of_trigger_recursion
mov dword [rsp + 0x34], r11d
mov rcx, r8
call fcn.14002a0c8
jmp 0x140035c75
or ebx, 0xffffffff
mov dword [rsp + 0x34], 9
mov rsi, qword [rsp + 0x40]
mov edi, 1
mov eax, dword [rsp + 0x34]
jmp 0x140030a38
mov dword [r15 + 0x38], ecx
mov al, byte [r13 + 8]
mov byte [r15 + 0xc2], al
mov dword [r15 + 0x34], ebx
test ecx, ecx
je 0x140035f6b
mov rcx, r15
cmp word [r13 + 2], r10w
je 0x140035f35
movzx r8d, word [r13 + 2]
lea rax, [0x140000000]
lea rdx, str._s_constraint_failed
mov r8, qword [rax + r8*8 + 0x14ee00]
call fcn.14002a0c8
mov r9, qword [r13 + 0x10]
test r9, r9
je 0x140035f45
mov r8, qword [r15 + 0xa8]
lea rdx, str._z:__s
mov rcx, r12
call fcn.140010900
mov qword [r15 + 0xa8], rax
jmp 0x140035f45
mov r8, qword [r13 + 0x10]
lea rdx, [0x140156560]
call fcn.14002a0c8
mov rax, qword [r15 + 0xa8]
lea rdx, str.abort_at__d_in___s_:__s
mov r9, qword [r15 + 0xf0]
mov r8d, ebx
mov ecx, dword [r13 + 4]
mov qword [rsp + 0x20], rax
call fcn.140010a60
mov rcx, r15
call fcn.14002c53c
mov rsi, qword [rsp + 0x40]
mov ecx, 5
mov ebx, dword [rsp + 0x38]
mov r15d, eax
mov r13d, dword [rsp + 0x30]
cmp eax, ecx
mov rax, qword [rsp + 0x58]
lea edi, [rcx - 4]
jne 0x140035f9d
mov dword [rax + 0x38], ecx
jmp 0x14003622d
mov eax, dword [rax + 0x38]
neg eax
sbb r15d, r15d
and r15d, 0xffffff9c
add r15d, 0x65
jmp 0x14003622d
xor edx, edx
mov rcx, r15
call fcn.14002c4ec
xor r10d, r10d
mov dword [rsp + 0x34], eax
test eax, eax
jne 0x140030a26
mov rax, qword [r15]
cmp dword [rax + 0x2a0], r10d
je 0x140035fec
cmp dword [r15 + 0x40], r10d
je 0x140035fec
lea edx, [r10 + 1]
mov rcx, r15
call fcn.14002c3f8
xor r10d, r10d
mov eax, dword [r15 + 0x30]
mov edi, r10d
add eax, 2
or eax, 1
mov dword [r15 + 0x30], eax
movsxd rax, dword [r13 + 4]
imul rsi, rax, 0x38
add rsi, r14
mov qword [r15 + 0xa0], rsi
cmp dword [r13 + 8], r10d
jle 0x140036067
lea rbx, [rsi + 8]
mov eax, 0x1000
test word [rbx], ax
je 0x14003603a
movsxd rax, edi
imul rcx, rax, 0x38
add rcx, rsi
call fcn.140028c54
test eax, eax
jne 0x1400361d7
movzx eax, word [rbx]
mov ecx, 0x202
and ax, cx
mov ecx, 2
cmp ax, cx
jne 0x140036058
lea rcx, [rbx - 8]
call fcn.140028bf4
inc edi
add rbx, 0x38
cmp edi, dword [r13 + 8]
jl 0x140036019
xor r10d, r10d
cmp byte [r12 + 0x61], r10b
jne 0x1400361d7
mov eax, 4
test byte [r12 + 0x68], al
je 0x140036096
mov rdx, qword [r12 + 0xf0]
xor r9d, r9d
mov r8, r15
mov ecx, eax
call qword [r12 + 0xe8]
mov edi, 1
mov rcx, r13
sub rcx, qword [rsp + 0x48]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
add edx, edi
mov dword [r15 + 0x34], edx
lea r15d, [rdi + 0x63]
jmp 0x140035cf4
mov r9d, 0x152d5
jmp 0x140035e62
mov dword [rsp + 0x34], 0x204
jmp 0x140030a26
mov eax, 0xd
jmp 0x140035c79
mov dword [rsp + 0x34], eax
jmp 0x140030a26
mov eax, 2
mov dword [rsp + 0x34], 6
mov byte [r15 + 0xc2], al
jmp 0x140035c10
mov eax, 7
mov esi, eax
mov dword [rsp + 0x34], eax
mov rcx, r12
call fcn.1400471bc
mov ebx, dword [rsp + 0x38]
mov eax, 7
mov r13d, dword [rsp + 0x30]
cmp esi, eax
je 0x1400361e0
mov rsi, qword [rsp + 0x40]
xor r10d, r10d
mov eax, dword [rsp + 0x34]
lea edi, [r10 + 1]
jmp 0x140030a3d
call fcn.14002e398
mov r8, rax
lea rdx, [0x140156560]
mov rcx, r15
call fcn.14002a0c8
jmp 0x140035c75
mov r12, rcx
mov r15, qword [rsp + 0x58]
lea rdx, str.string_or_blob_too_big
mov rcx, r15
call fcn.14002a0c8
mov dword [rsp + 0x34], 0x12
jmp 0x140035c75
call qword [rdi + 0x38]
jmp 0x1400361d7
mov ebx, dword [rsp + 0x38]
mov r13d, dword [rsp + 0x30]
mov al, byte [r12 + 0x61]
neg al
sbb eax, eax
and eax, 0xfffffffe
add eax, 9
mov ecx, eax
mov dword [rsp + 0x34], eax
mov dword [r15 + 0x38], eax
call fcn.14007c588
mov r8, rax
lea rdx, [0x140156560]
mov rcx, r15
call fcn.14002a0c8
jmp 0x14003613a
mov r12, qword [rsp + 0x50]
mov ebx, dword [rsp + 0x38]
mov r13d, dword [rsp + 0x30]
mov rcx, r12
call fcn.14000f0c0
mov rcx, qword [rsp + 0x58]
lea rdx, str.out_of_memory
call fcn.14002a0c8
mov eax, 7
mov dword [rsp + 0x34], eax
jmp 0x14003613a
mov eax, dword [rsp + 0x34]
mov r12, qword [rsp + 0x50]
jmp 0x140030a2a
mov r12, qword [rsp + 0x50]
mov ebx, dword [rsp + 0x38]
mov edi, 1
mov rsi, qword [rsp + 0x40]
mov r13d, dword [rsp + 0x30]
cmp r13d, ebx
jb 0x140036264
mov rax, qword [r12 + 0x1c0]
test rax, rax
je 0x140036264
mov rcx, qword [r12 + 0x1c8]
add ebx, dword [r12 + 0x1d0]
call rax
xor r10d, r10d
test eax, eax
je 0x14003622d
or ebx, 0xffffffff
lea eax, [r10 + 9]
jmp 0x140030a3d
mov rcx, qword [rsp + 0x58]
add dword [rcx + 0xe4], r13d
call fcn.14002b27c
mov eax, r15d
mov rcx, qword [rbp + 0x110]
xor rcx, rsp
call fcn.140080600
lea r11, [rsp + 0x240]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret