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

Disassembly:
mov r11, rsp
push rbp
push rdi
push r13
lea rbp, [r11 - 0x2f8]
sub rsp, 0x3e0
mov rax, qword [0x14030aae8]
xor rax, rsp
mov qword [rbp + 0x2b8], rax
mov rax, qword [rcx + 0x88]
mov r13, rcx
mov qword [r11 + 0x10], rbx
mov qword [r11 + 0x18], rsi
mov qword [rsp + 0x50], rax
mov rsi, qword [r13]
mov qword [rsp + 0x38], rax
xor al, al
mov qword [rsp + 0x68], rcx
xor ecx, ecx
mov qword [r11 - 0x20], r14
mov edi, ecx
mov r14, qword [r13 + 0x68]
mov qword [r11 - 0x28], r15
mov r15d, ecx
mov byte [rsp + 0x70], al
movzx eax, byte [rsi + 0x60]
mov dword [rsp + 0x30], ecx
mov dword [rsp + 0x78], ecx
mov qword [rbp - 0x18], rcx
mov rcx, r13
mov byte [rsp + 0x48], al
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x60], r14
call fcn.140096f10
cmp qword [rsi + 0x1e8], rdi
je 0x14009710a
mov ecx, dword [rsi + 0x1f8]
xor edx, edx
mov eax, dword [r13 + 0xe4]
div ecx
sub ecx, edx
mov ebx, ecx
jmp 0x140097111
mov rbx, 0xffffffffffffffff
cmp dword [r13 + 0x38], 7
mov r10d, 1
mov qword [rsp + 0x418], r12
movaps xmmword [rsp + 0x3c0], xmm6
mov qword [rsp + 0x58], rbx
je 0x14009f179
xor r11d, r11d
mov dword [r13 + 0x38], r11d
mov qword [r13 + 0x48], r11
mov qword [r13 + 0xa0], r11
mov dword [rsi + 0x270], r11d
mov eax, dword [rsi + 0x178]
test eax, eax
jne 0x14009eb81
movsxd rax, dword [r13 + 0x34]
lea rdx, [0x140000000]
mov rbx, qword [rsp + 0x50]
mov r9d, 0x2400
mov r8d, 0x1000
xorps xmm6, xmm6
lea rcx, [rax + rax*2]
mov eax, dword [rbp - 0x28]
lea r12, [rbx + rcx*8]
mov dword [rbp - 0x60], eax
inc rdi
mov qword [rsp + 0x38], r12
mov qword [rbp - 0x18], rdi
movzx edi, byte [r12]
cmp edi, 0xae
ja case.0x1400971b5.86
movsxd rax, edi
mov ecx, dword [rdx + rax*4 + 0x9f3c0]
add rcx, rdx
jmp rcx
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
sub rcx, rbx
imul r8, rax, 0x38
mov eax, 4
mov word [r8 + r14 + 8], ax
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rax, rdx
cdqe
mov qword [r8 + r14], rax
mov r12, qword [rsp + 0x38]
jmp 0x14009ad1e
movsxd rax, dword [r12 + 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 r12, [rbx + rcx*8]
jmp 0x140097ea8
movsxd rax, dword [r12 + 4]
imul rcx, rax, 0x38
mov eax, dword [r12 + 0xc]
dec eax
cdqe
mov qword [rcx + r14], rax
mov eax, 4
mov word [rcx + r14 + 8], ax
cmp dword [r12 + 8], 0
jne 0x14009ad1e
jmp case.0x1400971b5.86
movsxd rax, dword [r12 + 4]
imul rdx, rax, 0x38
mov rax, qword [rdx + r14]
lea rcx, [rax + rax*2]
mov eax, dword [rbx + rcx*8 + 8]
dec eax
cdqe
jmp 0x14009720a
mov rdi, qword [rsp + 0x38]
movsxd rax, dword [rdi + 4]
sub rdi, rbx
imul r8, rax, 0x38
mov eax, 4
mov word [r8 + r14 + 8], ax
movabs rax, 0x2aaaaaaaaaaaaaab
movsxd rcx, dword [r8 + r14]
imul rdi
lea rcx, [rcx + rcx*2]
sar rdx, 2
lea r12, [rbx + rcx*8]
mov rax, rdx
shr rax, 0x3f
add rax, rdx
cdqe
mov qword [r8 + r14], rax
jmp 0x140097ea2
movsxd rax, dword [r12 + 0xc]
imul rcx, rax, 0x38
test byte [rcx + r14 + 8], 1
je case.0x1400971b5.86
mov rcx, r12
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, rbx
imul rcx
mov rbx, rdx
mov rdx, qword [rsp + 0x38]
sar rbx, 2
mov rax, rbx
shr rax, 0x3f
mov ecx, dword [rdx + 4]
add rbx, rax
test ecx, ecx
jne 0x14009e985
mov rdx, qword [r13 + 0x100]
test rdx, rdx
je 0x14009e980
mov rax, qword [rdx + 8]
mov rcx, rdx
mov qword [r13 + 0x100], rax
dec dword [r13 + 0x110]
mov eax, dword [r13 + 0x3c]
mov dword [rsi + 0x78], eax
add dword [rsi + 0x7c], eax
call fcn.1400a0180
mov r12, qword [rsp + 0x38]
mov rbx, qword [r13 + 0x88]
mov qword [rsp + 0x50], rbx
cmp dword [r12 + 8], 4
jne 0x14009735e
cdqe
lea rcx, [rax + rax*2]
mov eax, dword [rbx + rcx*8 + 8]
dec eax
mov r14, qword [r13 + 0x68]
cdqe
mov qword [rsp + 0x60], r14
lea rcx, [rax + rax*2]
lea r12, [rbx + rcx*8]
jmp 0x140097e93
movsxd rax, dword [r12 + 8]
imul rcx, rax, 0x38
add rcx, qword [r13 + 0x68]
test word [rcx + 8], r9w
je 0x1400973b9
call fcn.140049180
mov rcx, rax
lea rdx, [0x140000000]
movsxd rax, dword [r12 + 4]
xor r11d, r11d
mov r9d, 0x2400
mov r8d, 0x1000
mov qword [rcx], rax
lea r10d, [r11 + 1]
jmp case.0x1400971b5.86
mov eax, 4
mov word [rcx + 8], ax
movsxd rax, dword [r12 + 4]
mov qword [rcx], rax
jmp case.0x1400971b5.86
movsxd rax, dword [r12 + 8]
imul rdx, rax, 0x38
add rdx, qword [r13 + 0x68]
test word [rdx + 8], r9w
je 0x140097411
mov rcx, rdx
call fcn.140049180
mov rdx, rax
xor r11d, r11d
mov rax, qword [r12 + 0x10]
mov r9d, 0x2400
mov r8d, 0x1000
lea r10d, [r11 + 1]
mov rcx, qword [rax]
mov qword [rdx], rcx
jmp 0x140097ea8
mov eax, 4
mov word [rdx + 8], ax
mov rax, qword [r12 + 0x10]
mov rcx, qword [rax]
mov qword [rdx], rcx
jmp 0x140097ea8
movsxd rax, dword [r12 + 8]
imul rdx, rax, 0x38
add rdx, qword [r13 + 0x68]
test word [rdx + 8], r9w
je 0x14009745c
mov rcx, rdx
call fcn.140049180
xor r11d, r11d
mov rdx, rax
mov r9d, 0x2400
mov r8d, 0x1000
lea r10d, [r11 + 1]
mov eax, 8
mov word [rdx + 8], ax
mov rax, qword [r12 + 0x10]
mov rcx, qword [rax]
mov qword [rdx], rcx
jmp 0x140097ea8
mov rdi, qword [rsp + 0x38]
movsxd rax, dword [rdi + 8]
imul rsi, rax, 0x38
add rsi, qword [r13 + 0x68]
test word [rsi + 8], r9w
je 0x1400974a7
mov rcx, rsi
call fcn.140049180
xor r11d, r11d
mov rsi, rax
mov r9d, 0x2400
lea r10d, [r11 + 1]
jmp 0x1400974b0
mov eax, 4
mov word [rsi + 8], ax
mov rdi, qword [rdi + 0x10]
test rdi, rdi
jne 0x1400974be
mov eax, r11d
jmp 0x1400974d3
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rdi + rax], 0
jne 0x1400974c5
and eax, 0x3fffffff
mov r12, qword [rsp + 0x38]
movzx r15d, byte [rsp + 0x48]
mov dword [r12 + 4], eax
cmp r15b, 1
je 0x140097643
test rdi, rdi
jne 0x140097514
test word [rsi + 8], r9w
je 0x140097503
mov rcx, rsi
call fcn.1400b6f90
jmp 0x140097508
mov word [rsi + 8], r10w
test byte [rsi + 8], 2
je 0x1400975a1
jmp 0x140097587
mov rax, qword [rsi + 0x28]
test rax, rax
je 0x140097526
mov r14d, dword [rax + 0x80]
jmp 0x14009752c
mov r14d, 0x3b9aca00
mov rbx, 0xffffffffffffffff
inc rbx
cmp byte [rdi + rbx], 0
jne 0x140097533
test word [rsi + 8], r9w
jne 0x140097549
cmp dword [rsi + 0x20], 0
je 0x140097551
mov rcx, rsi
call fcn.1400b6ec0
xor eax, eax
mov qword [rsi + 0x10], rdi
mov qword [rsi + 0x30], rax
mov eax, ebx
btr eax, 0x1f
mov dword [rsi + 0xc], eax
mov eax, 0xa02
mov word [rsi + 8], ax
movsxd rax, r14d
mov byte [rsi + 0xa], 1
cmp rbx, rax
jg 0x14009ea65
mov r14, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x50]
cmp byte [rsi + 0xa], r15b
je 0x1400975a1
movzx edx, r15b
mov rcx, rsi
call fcn.1400a25a0
test eax, eax
jne 0x14009f12a
xor r11d, r11d
mov eax, 0x800
mov dword [rsi + 0x20], r11d
or word [rsi + 8], ax
cmp byte [r12 + 1], 0xf9
jne 0x140097627
mov rcx, qword [r12 + 0x10]
test rcx, rcx
je 0x140097627
mov r8, qword [rsp + 0x40]
cmp qword [r8 + 0x2e0], r11
je 0x1400975de
mov rdx, rcx
mov rcx, r8
call fcn.140045520
jmp 0x140097624
cmp rcx, qword [r8 + 0x1d0]
jae 0x14009761f
cmp rcx, qword [r8 + 0x1c0]
jb 0x140097603
mov rax, qword [r8 + 0x1b8]
mov qword [rcx], rax
mov qword [r8 + 0x1b8], rcx
jmp 0x140097627
cmp rcx, qword [r8 + 0x1c8]
jb 0x14009761f
mov rax, qword [r8 + 0x1a8]
mov qword [rcx], rax
mov qword [r8 + 0x1a8], rcx
jmp 0x140097627
call fcn.140015cb0
xor r11d, r11d
mov byte [r12 + 1], 0xf9
mov rax, qword [rsi + 0x10]
mov qword [r12 + 0x10], rax
mov eax, dword [rsi + 0xc]
mov dword [r12 + 4], eax
mov dword [rsp + 0x30], r11d
mov rsi, qword [rsp + 0x40]
cmp eax, dword [rsi + 0x80]
jg 0x14009eedd
mov byte [r12], 0x47
mov r9d, 0x2400
jmp 0x140097667
movzx r15d, byte [rsp + 0x48]
movsxd rax, dword [r12 + 8]
imul rdx, rax, 0x38
add rdx, qword [r13 + 0x68]
test word [rdx + 8], r9w
je 0x14009768c
mov rcx, rdx
call fcn.140049180
mov rdx, rax
mov r9d, 0x2400
mov eax, 0xa02
mov r10d, 1
mov word [rdx + 8], ax
mov rax, qword [r12 + 0x10]
mov qword [rdx + 0x10], rax
mov eax, dword [r12 + 4]
mov dword [rdx + 0xc], eax
mov byte [rdx + 0xa], r15b
movsxd rax, dword [r12 + 0xc]
test eax, eax
jle 0x14009bb35
imul rcx, rax, 0x38
movzx eax, word [r12 + 2]
cmp qword [rcx + r14], rax
jne 0x14009bb35
mov eax, 0xa10
mov word [rdx + 8], ax
jmp 0x140097e9f
mov rsi, qword [rsp + 0x38]
movsxd rax, dword [rsi + 8]
imul rcx, rax, 0x38
add rcx, qword [r13 + 0x68]
test word [rcx + 8], r9w
je 0x14009770d
call fcn.140049180
mov rcx, rax
mov r10d, 1
mov r9d, 0x2400
jmp 0x140097716
mov eax, 4
mov word [rcx + 8], ax
mov edi, dword [rsi + 0xc]
lea rbx, [rcx + 8]
mov eax, dword [rsi + 8]
mov edx, 0x101
mov r12, qword [rsp + 0x38]
mov esi, r10d
cmp dword [r12 + 4], 0
cmovne si, dx
xor r15d, r15d
sub edi, eax
mov word [rbx], si
mov dword [rcx + 0xc], r15d
test edi, edi
jle 0x14009bb35
nop dword [rax + rax]
test word [rbx + 0x38], r9w
lea rbx, [rbx + 0x38]
je 0x14009776a
lea rcx, [rbx - 8]
call fcn.1400b6f90
mov r9d, 0x2400
dec edi
mov word [rbx], si
mov dword [rbx + 4], r15d
test edi, edi
jg 0x140097750
mov rsi, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x50]
jmp 0x140097e99
movsxd rax, dword [r12 + 4]
imul rcx, rax, 0x38
mov eax, 0xff41
add rcx, r14
and word [rcx + 8], ax
or word [rcx + 8], 1
jmp case.0x1400971b5.86
mov rdi, qword [rsp + 0x38]
movsxd rax, dword [rdi + 8]
imul r14, rax, 0x38
add r14, qword [r13 + 0x68]
test word [r14 + 8], r9w
je 0x1400977d7
mov rcx, r14
call fcn.140049180
xor r11d, r11d
mov r14, rax
mov r9d, 0x2400
lea r10d, [r11 + 1]
jmp 0x1400977e1
mov eax, 4
mov word [r14 + 8], ax
mov r12, qword [rsp + 0x38]
mov rdi, qword [rdi + 0x10]
movsxd rbx, dword [r12 + 4]
test rdi, rdi
jne 0x140097812
test word [r14 + 8], r9w
je 0x140097808
mov rcx, r14
call fcn.1400b6f90
jmp 0x1400978d0
mov word [r14 + 8], r10w
jmp 0x1400978d6
mov rax, qword [r14 + 0x28]
test rax, rax
je 0x140097824
mov r15d, dword [rax + 0x80]
jmp 0x14009782a
mov r15d, 0x3b9aca00
mov esi, reloc.WS2_32.dll_recv
test rbx, rbx
jns 0x140097858
movsxd rcx, r15d
mov rbx, r11
test r15d, r15d
js 0x140097853
nop
movzx eax, byte [rbx + rdi + 1]
or al, byte [rbx + rdi]
je 0x140097853
add rbx, 2
cmp rbx, rcx
jle 0x140097840
mov esi, 0x210
test word [r14 + 8], r9w
jne 0x140097866
cmp dword [r14 + 0x20], 0
je 0x14009786e
mov rcx, r14
call fcn.1400b6ec0
xor eax, eax
mov qword [r14 + 0x10], rdi
mov qword [r14 + 0x30], rax
mov eax, 0x800
or si, ax
mov eax, ebx
btr eax, 0x1f
mov dword [r14 + 0xc], eax
mov word [r14 + 8], si
mov rcx, qword [r14 + 0x28]
movzx eax, byte [rcx + 0x60]
mov byte [r14 + 0xa], al
movsxd rax, r15d
cmp rbx, rax
jle 0x1400978cb
test rcx, rcx
je 0x1400978cb
mov rax, qword [rcx + 0x140]
mov r10d, 1
mov rsi, qword [rsp + 0x40]
test rax, rax
je 0x1400978d6
mov dword [rax + 0x18], send
inc dword [rax + 0x30]
jmp 0x1400978d6
mov rsi, qword [rsp + 0x40]
mov r10d, 1
movzx edi, byte [rsp + 0x48]
mov r9d, 0x2400
mov rbx, qword [rsp + 0x50]
mov byte [r14 + 0xa], dil
mov r14, qword [rsp + 0x60]
jmp 0x140097e9f
movsxd rax, dword [r12 + 4]
mov rsi, qword [r13 + 0x80]
imul rdi, rax, 0x38
movzx eax, word [rdi + rsi - 0x30]
test al, 0x12
je 0x14009792d
bt ax, 0xe
mov ecx, dword [rdi + rsi - 0x2c]
jae 0x14009791c
add ecx, dword [rdi + rsi - 0x38]
mov rax, qword [rdi + rsi - 0x10]
cmp ecx, dword [rax + 0x80]
jg 0x14009eec9
movsxd rax, dword [r12 + 8]
imul rbx, rax, 0x38
add rbx, r14
test word [rbx + 8], r9w
je 0x140097962
mov rcx, rbx
call fcn.1400b6f90
xor r11d, r11d
lea rdx, [0x140000000]
mov r9d, 0x2400
mov r8d, 0x1000
lea r10d, [r11 + 1]
movups xmm0, xmmword [rdi + rsi - 0x38]
mov ecx, 0xebff
movups xmmword [rbx], xmm0
movsd xmm1, qword [rdi + rsi - 0x28]
mov rsi, qword [rsp + 0x40]
movsd qword [rbx + 0x10], xmm1
movzx eax, word [rbx + 8]
and ax, cx
mov ecx, 0x840
or ax, cx
mov word [rbx + 8], ax
mov rbx, qword [rsp + 0x50]
jmp case.0x1400971b5.86
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
mov esi, dword [rcx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rdi, r14
add rbx, r14
xor r15d, r15d
nop dword [rax]
test word [rbx + 8], r9w
jne 0x1400979cd
cmp dword [rbx + 0x20], r15d
je 0x1400979e1
mov rcx, rbx
call fcn.1400b6ec0
mov r10d, 1
mov r8d, 0x1000
movups xmm0, xmmword [rdi]
movups xmmword [rbx], xmm0
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rbx + 0x10], xmm1
movups xmm0, xmmword [rdi + 0x20]
movups xmmword [rbx + 0x20], xmm0
movsd xmm1, qword [rdi + 0x30]
movsd qword [rbx + 0x30], xmm1
mov word [rdi + 8], r10w
mov dword [rdi + 0x20], r15d
movzx eax, word [rbx + 8]
test r8w, ax
je 0x140097a9b
test al, 0x12
je 0x140097a86
bt ax, 0xe
jae 0x140097a66
mov edx, dword [rbx]
add edx, dword [rbx + 0xc]
test edx, edx
jg 0x140097a33
test al, 0x10
je 0x140097a66
mov edx, r10d
mov r8d, r10d
mov rcx, rbx
call fcn.1400a1b70
test eax, eax
jne 0x14009f167
movsxd rcx, dword [rbx + 0xc]
xor edx, edx
add rcx, qword [rbx + 0x10]
movsxd r8, dword [rbx]
call fcn.1400d1e20
mov eax, dword [rbx]
add dword [rbx + 0xc], eax
mov eax, 0xbdff
and word [rbx + 8], ax
cmp dword [rbx + 0x20], r15d
je 0x140097a76
mov rax, qword [rbx + 0x18]
cmp qword [rbx + 0x10], rax
je 0x140097a86
mov rcx, rbx
call fcn.1400b6e60
test eax, eax
jne 0x14009f167
mov eax, 0xefff
mov r10d, 1
and word [rbx + 8], ax
mov r8d, 0x1000
add rdi, 0x38
add rbx, 0x38
mov r9d, 0x2400
sub esi, 1
jne 0x1400979c0
mov rsi, qword [rsp + 0x40]
xor r11d, r11d
mov r12, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x50]
jmp 0x140097ea8
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
mov esi, dword [rcx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rdi, r14
add rbx, r14
test word [rbx + 8], r9w
je 0x140097b01
mov rdx, rdi
mov rcx, rbx
call fcn.1400b5bc0
mov r8d, 0x1000
jmp 0x140097b2a
movups xmm0, xmmword [rdi]
mov eax, 0x800
movups xmmword [rbx], xmm0
movsd xmm1, qword [rdi + 0x10]
movsd qword [rbx + 0x10], xmm1
test word [rdi + 8], ax
jne 0x140097b2a
mov eax, 0xf3ff
and word [rbx + 8], ax
or word [rbx + 8], r8w
movzx eax, word [rbx + 8]
test r8w, ax
je 0x140097b7e
test al, 0x12
je 0x140097b6f
bt ax, 0xe
jae 0x140097b4f
mov rcx, rbx
call fcn.1400a1890
test eax, eax
jne 0x14009f12a
cmp dword [rbx + 0x20], 0
je 0x140097b5f
mov rax, qword [rbx + 0x18]
cmp qword [rbx + 0x10], rax
je 0x140097b6f
mov rcx, rbx
call fcn.1400b6e60
test eax, eax
jne 0x14009f12a
mov eax, 0xefff
mov r8d, 0x1000
and word [rbx + 8], ax
mov eax, esi
mov r9d, 0x2400
dec esi
test eax, eax
je 0x140097b99
add rbx, 0x38
add rdi, 0x38
jmp 0x140097ae7
mov rsi, qword [rsp + 0x40]
mov r12, qword [rsp + 0x38]
xor r11d, r11d
mov rbx, qword [rsp + 0x50]
mov r10d, 1
jmp 0x140097ea8
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
imul rdx, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
add rdx, r14
add rcx, r14
test word [rcx + 8], r9w
je 0x140097be7
call fcn.1400b5bc0
mov r12, qword [rsp + 0x38]
jmp 0x140097e93
movups xmm0, xmmword [rdx]
mov r12, qword [rsp + 0x38]
mov eax, 0x800
movups xmmword [rcx], xmm0
movsd xmm1, qword [rdx + 0x10]
movsd qword [rcx + 0x10], xmm1
test word [rdx + 8], ax
lea rdx, [0x140000000]
jne case.0x1400971b5.86
mov eax, 0xf3ff
and word [rcx + 8], ax
or word [rcx + 8], r8w
jmp case.0x1400971b5.86
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 8]
imul r8, rax, 0x38
movsxd rax, dword [rcx + 4]
imul rcx, rax, 0x38
add r8, r14
mov rax, qword [rcx + r14]
test word [r8 + 8], r9w
je 0x140097c5d
mov rdx, rax
mov rcx, r8
call fcn.1400b81e0
mov r12, qword [rsp + 0x38]
jmp 0x140097e93
mov r12, qword [rsp + 0x38]
mov qword [r8], rax
mov eax, 4
mov word [r8 + 8], ax
mov r8d, 0x1000
jmp case.0x1400971b5.86
mov rsi, qword [rsp + 0x38]
movsxd rax, dword [rsi + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rsi + 8]
imul r15, rax, 0x38
movsxd rax, dword [rsi + 0xc]
add rdi, r14
add r15, r14
imul r14, rax, 0x38
movzx esi, word [rdi + 8]
add r14, qword [rsp + 0x60]
movzx eax, sil
or al, byte [r15 + 8]
test al, 1
je 0x140097cee
test word [r14 + 8], r9w
je 0x140097cd5
mov rcx, r14
call fcn.1400b6f90
mov rsi, qword [rsp + 0x40]
mov r12, qword [rsp + 0x38]
mov r14, qword [rsp + 0x60]
jmp 0x140097e93
mov rsi, qword [rsp + 0x40]
mov r12, qword [rsp + 0x38]
mov word [r14 + 8], r10w
mov r14, qword [rsp + 0x60]
jmp 0x140097ea8
test sil, 0x12
jne 0x140097d24
movzx r12d, byte [rsp + 0x48]
xor r8d, r8d
movzx edx, r12b
mov rcx, rdi
call fcn.1400a2470
test eax, eax
jne 0x14009f12a
movzx esi, word [rdi + 8]
mov eax, 0xfffd
and si, ax
mov edx, 0x4000
jmp 0x140097d8a
mov edx, 0x4000
test dx, si
je 0x140097d84
mov edx, dword [rdi]
add edx, dword [rdi + 0xc]
test edx, edx
jg 0x140097d40
test sil, 0x10
je 0x140097d77
mov edx, r10d
mov r8d, r10d
mov rcx, rdi
call fcn.1400a1b70
test eax, eax
jne 0x14009f12a
movsxd rcx, dword [rdi + 0xc]
xor edx, edx
add rcx, qword [rdi + 0x10]
movsxd r8, dword [rdi]
call fcn.1400d1e20
mov eax, dword [rdi]
add dword [rdi + 0xc], eax
mov eax, 0xbdff
and word [rdi + 8], ax
movzx esi, word [rdi + 8]
mov eax, 0xfffd
mov edx, 0x4000
and si, ax
movzx r12d, byte [rsp + 0x48]
movzx ebx, word [r15 + 8]
test bl, 0x12
jne 0x140097da5
xor r8d, r8d
movzx edx, r12b
mov rcx, r15
call fcn.1400a2470
jmp 0x140097db2
test dx, bx
je 0x140097dc7
mov rcx, r15
call fcn.1400a1890
test eax, eax
jne 0x14009f12a
movzx ebx, word [r15 + 8]
mov eax, 0xfffd
and bx, ax
mov r9, qword [rsp + 0x40]
mov r13d, dword [r15 + 0xc]
add r13d, dword [rdi + 0xc]
movsxd r12, r13d
movsxd rax, dword [r9 + 0x80]
cmp r12, rax
jg 0x14009eed0
xor eax, eax
lea edx, [r13 + 3]
mov r8d, eax
cmp r14, r15
mov rcx, r14
sete r8b
call fcn.1400a1b70
test eax, eax
jne 0x14009f14c
mov eax, 0x3e40
and word [r14 + 8], ax
or word [r14 + 8], 2
cmp r14, r15
je 0x140097e32
movsxd r8, dword [r15 + 0xc]
mov rdx, qword [r15 + 0x10]
mov rcx, qword [r14 + 0x10]
call fcn.1400d1770
mov word [r15 + 8], bx
movsxd rcx, dword [r15 + 0xc]
add rcx, qword [r14 + 0x10]
movsxd r8, dword [rdi + 0xc]
mov rdx, qword [rdi + 0x10]
call fcn.1400d1770
mov word [rdi + 8], si
mov rax, qword [r14 + 0x10]
mov byte [r12 + rax], 0
mov rax, qword [r14 + 0x10]
mov byte [r12 + rax + 1], 0
mov rax, qword [r14 + 0x10]
mov byte [r12 + rax + 2], 0
mov eax, 0x200
or word [r14 + 8], ax
movzx eax, byte [rsp + 0x48]
mov dword [r14 + 0xc], r13d
mov byte [r14 + 0xa], al
mov rsi, qword [rsp + 0x40]
mov r12, qword [rsp + 0x38]
mov r14, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x50]
mov r9d, 0x2400
mov r10d, 1
xor r11d, r11d
mov r8d, 0x1000
lea rdx, [0x140000000]
mov r13, qword [rsp + 0x68]
add r12, 0x18
mov r15d, dword [rsp + 0x78]
mov rdi, qword [rbp - 0x18]
jmp 0x14009718b
mov rsi, qword [rsp + 0x38]
movsxd rax, dword [rsi + 4]
imul rdi, rax, 0x38
add rdi, r14
movzx ebx, word [rdi + 8]
test bl, 0x2c
je 0x140097ee4
xor r15d, r15d
jmp 0x140097eff
test bl, 0x12
je 0x140097ef9
mov rcx, rdi
call fcn.1400318e0
movzx ebx, ax
xor r15d, r15d
jmp 0x140097eff
xor r15d, r15d
mov ebx, r15d
movsxd rax, dword [rsi + 8]
imul rsi, rax, 0x38
add rsi, r14
movzx r8d, word [rsi + 8]
movzx edx, r8w
and dx, 0x2c
jne 0x140097f34
test r8b, 0x12
je 0x140097f31
mov rcx, rsi
call fcn.1400318e0
movzx r8d, word [rsi + 8]
movzx edx, ax
jmp 0x140097f34
mov edx, r15d
mov r12, qword [rsp + 0x38]
and dl, bl
movzx r10d, word [rdi + 8]
movsxd rax, dword [r12 + 0xc]
imul rcx, rax, 0x38
movzx eax, r10w
add r14, rcx
or ax, r8w
test dl, 4
je 0x140098114
movzx ecx, byte [r12]
mov r9, qword [rdi]
mov r8, qword [rsi]
sub ecx, 0x6a
je 0x1400980b5
sub ecx, 1
je 0x140098078
sub ecx, 1
je 0x140097fdd
cmp ecx, 1
je 0x140097fab
test r9, r9
je 0x1400982ab
cmp r9, 0xffffffffffffffff
mov rax, r8
mov r13d, 1
cqo
cmove r9, r13
idiv r9
mov r8, rdx
jmp 0x1400980f1
test r9, r9
je 0x1400982ab
cmp r9, 0xffffffffffffffff
jne 0x140097fcd
movabs rax, 0x8000000000000000
cmp r8, rax
je 0x14009811c
mov rax, r8
cqo
idiv r9
mov r8, rax
jmp 0x1400980f1
test r9, r9
jle 0x140098013
movabs rax, 0x7fffffffffffffff
cqo
idiv r9
cmp r8, rax
jg 0x14009811c
movabs rax, 0x8000000000000000
cqo
idiv r9
cmp r8, rax
jge 0x140098072
jmp 0x14009811c
jns 0x140098072
test r8, r8
jle 0x140098033
movabs rax, 0x8000000000000000
cqo
idiv r8
cmp r9, rax
jge 0x140098072
jmp 0x14009811c
jns 0x140098072
movabs rax, 0x8000000000000000
cmp r9, rax
je 0x14009811c
cmp r8, rax
je 0x14009811c
movabs rax, 0x8000000000000001
cqo
idiv r9
mov rcx, rax
mov rax, r8
neg rax
cmp rax, rcx
jg 0x14009811c
imul r8, r9
jmp 0x1400980f1
movabs rax, 0x8000000000000000
cmp r9, rax
jne 0x140098095
test r8, r8
jns 0x14009811c
sub r8, rax
jmp 0x1400980f1
neg r9
jns 0x1400980ba
test r8, r8
jns 0x1400980ee
movabs rcx, 0x8000000000000001
lea rax, [r9 + 1]
sub rcx, r8
cmp rcx, rax
jmp 0x1400980ec
test r9, r9
js 0x1400980d3
test r8, r8
jle 0x1400980ee
movabs rax, 0x7fffffffffffffff
sub rax, r8
cmp rax, r9
jge 0x1400980ee
jmp 0x14009811c
test r8, r8
jns 0x1400980ee
movabs rax, 0x8000000000000001
lea rcx, [r9 + 1]
sub rax, r8
cmp rax, rcx
jg 0x14009811c
add r8, r9
mov rsi, qword [rsp + 0x40]
mov ecx, 0x3e40
mov qword [r14], r8
movzx eax, word [r14 + 8]
and ax, cx
or ax, 4
mov word [r14 + 8], ax
jmp 0x140097e89
test al, 1
jne 0x1400982ab
test r10b, 8
je 0x140098128
movsd xmm2, qword [rdi]
jmp 0x14009814e
test r10b, 0x24
je 0x140098138
xorps xmm2, xmm2
cvtsi2sd xmm2, qword [rdi]
jmp 0x14009814e
test r10b, 0x12
je 0x14009814b
mov rcx, rdi
call fcn.1400455c0
movaps xmm2, xmm0
jmp 0x14009814e
movaps xmm2, xmm6
movzx eax, word [rsi + 8]
test al, 8
je 0x14009815c
movsd xmm0, qword [rsi]
jmp 0x14009817b
test al, 0x24
je 0x14009816a
xorps xmm0, xmm0
cvtsi2sd xmm0, qword [rsi]
jmp 0x14009817b
test al, 0x12
je 0x140098178
mov rcx, rsi
call fcn.1400455c0
jmp 0x14009817b
movaps xmm0, xmm6
movzx ecx, byte [r12]
sub ecx, 0x6a
je 0x140098252
sub ecx, 1
je 0x14009824c
sub ecx, 1
je 0x140098246
cmp ecx, 1
je 0x140098238
movzx eax, word [rdi + 8]
test al, 0x24
je 0x1400981b1
mov rbx, qword [rdi]
jmp 0x1400981de
test al, 8
je 0x1400981c3
movsd xmm0, qword [rdi]
call fcn.140035270
mov rbx, rax
jmp 0x1400981de
test al, 0x12
je 0x1400981db
cmp qword [rdi + 0x10], 0
je 0x1400981db
mov rcx, rdi
call fcn.140045590
mov rbx, rax
jmp 0x1400981de
mov rbx, r15
movzx eax, word [rsi + 8]
test al, 0x24
je 0x1400981eb
mov rax, qword [rsi]
jmp 0x140098212
test al, 8
je 0x1400981fa
movsd xmm0, qword [rsi]
call fcn.140035270
jmp 0x140098212
test al, 0x12
je 0x14009820f
cmp qword [rsi + 0x10], 0
je 0x14009820f
mov rcx, rsi
call fcn.140045590
jmp 0x140098212
mov rax, r15
test rbx, rbx
je 0x1400982ab
cmp rbx, 0xffffffffffffffff
mov r13d, 1
cqo
xorps xmm0, xmm0
cmove rbx, r13
idiv rbx
cvtsi2sd xmm0, rdx
jmp 0x140098256
ucomisd xmm2, xmm6
jp 0x140098240
je 0x1400982ab
divsd xmm0, xmm2
jmp 0x140098256
mulsd xmm0, xmm2
jmp 0x140098256
subsd xmm0, xmm2
jmp 0x140098256
addsd xmm0, xmm2
movabs rcx, 0xfffffffffffff
movsd qword [rbp - 0x78], xmm0
mov rax, qword [rbp - 0x78]
movabs rdx, 0x7ff0000000000000
test rcx, rax
setne cl
and rax, rdx
cmp rax, rdx
sete al
test al, cl
jne 0x1400982ab
mov rsi, qword [rsp + 0x40]
mov ecx, 0x3e40
movsd qword [r14], xmm0
movzx eax, word [r14 + 8]
and ax, cx
or ax, 8
mov word [r14 + 8], ax
jmp 0x140097e89
mov r9d, 0x2400
test word [r14 + 8], r9w
je 0x1400982ca
mov rcx, r14
call fcn.1400b6f90
mov rsi, qword [rsp + 0x40]
jmp 0x140097e89
mov rsi, qword [rsp + 0x40]
mov r10d, 1
mov rbx, qword [rsp + 0x50]
mov word [r14 + 8], r10w
mov r14, qword [rsp + 0x60]
jmp 0x140097e9f
movsxd rax, dword [r12 + 4]
test eax, eax
je case.0x1400971b5.86
imul rcx, rax, 0x38
add rcx, r14
test word [rcx + 8], r9w
je 0x140098310
xor edx, edx
call fcn.1400b81e0
jmp 0x140097e93
mov eax, 4
mov qword [rcx], r11
mov word [rcx + 8], ax
jmp case.0x1400971b5.86
mov rsi, qword [rsp + 0x38]
movsxd rax, dword [rsi + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rsi + 8]
imul rcx, rax, 0x38
movsxd rax, dword [rsi + 0xc]
add rdi, r14
imul rsi, rax, 0x38
movzx edx, word [rdi + 8]
add rcx, r14
add rsi, r14
movzx r8d, word [rcx + 8]
movzx eax, r8b
or al, dl
test al, 1
je 0x14009838c
test word [rsi + 8], r9w
je 0x140098378
mov rcx, rsi
call fcn.1400b6f90
mov rsi, qword [rsp + 0x40]
mov r12, qword [rsp + 0x38]
jmp 0x140097e93
mov r12, qword [rsp + 0x38]
mov word [rsi + 8], r10w
mov rsi, qword [rsp + 0x40]
jmp 0x140097ea2
mov eax, r8d
test r8b, 0x24
je 0x14009839d
mov rbx, qword [rcx]
xor r15d, r15d
jmp 0x1400983d4
test al, 8
je 0x1400983b2
movsd xmm0, qword [rcx]
call fcn.140035270
mov rbx, rax
xor r15d, r15d
jmp 0x1400983d4
test al, 0x12
je 0x1400983ce
cmp qword [rcx + 0x10], 0
je 0x1400983ce
call fcn.140045590
movzx edx, word [rdi + 8]
mov rbx, rax
xor r15d, r15d
jmp 0x1400983d4
xor r15d, r15d
mov ebx, r15d
movzx eax, dx
test al, 0x24
je 0x1400983e0
mov rcx, qword [rdi]
jmp 0x14009840d
test al, 8
je 0x1400983f2
movsd xmm0, qword [rdi]
call fcn.140035270
mov rcx, rax
jmp 0x14009840d
test al, 0x12
je 0x14009840a
cmp qword [rdi + 0x10], 0
je 0x14009840a
mov rcx, rdi
call fcn.140045590
mov rcx, rax
jmp 0x14009840d
mov rcx, r15
mov r12, qword [rsp + 0x38]
movzx edx, byte [r12]
cmp dl, 0x66
jne 0x140098421
and rbx, rcx
jmp 0x140098495
cmp dl, 0x67
jne 0x14009842b
or rbx, rcx
jmp 0x140098495
test rcx, rcx
je 0x140098495
jns 0x140098445
mov eax, 0xd1
sub al, dl
movzx edx, al
cmp rcx, 0xffffffffffffffc0
jle 0x14009844b
neg rcx
cmp rcx, 0x40
jl 0x140098463
test rbx, rbx
jns 0x14009845e
cmp dl, 0x68
je 0x14009845e
mov rbx, 0xffffffffffffffff
jmp 0x140098495
mov rbx, r15
jmp 0x140098495
cmp dl, 0x68
jne 0x140098470
shl rbx, cl
mov r8, rbx
jmp 0x140098492
mov r8, rbx
shr r8, cl
test rbx, rbx
jns 0x140098492
mov eax, 0x40
mov rdx, 0xffffffffffffffff
sub al, cl
movzx ecx, al
shl rdx, cl
or r8, rdx
mov rbx, r8
mov qword [rsi], rbx
mov eax, 0x3e40
and word [rsi + 8], ax
or word [rsi + 8], 4
mov rsi, qword [rsp + 0x40]
jmp 0x140097e8e
movsxd rax, dword [r12 + 4]
imul rbx, rax, 0x38
add rbx, r14
mov rcx, rbx
call fcn.1400a1d70
movsxd rax, dword [r12 + 8]
add qword [rbx], rax
jmp 0x140097e8e
movsxd rax, dword [r12 + 4]
imul rbx, rax, 0x38
add rbx, r14
movzx eax, word [rbx + 8]
test al, 4
jne 0x140098564
test al, 8
jne 0x14009850d
test al, 2
je 0x14009851c
mov edx, r10d
mov rcx, rbx
call fcn.140027690
xor r11d, r11d
mov r9d, 0x2400
mov r8d, 0x1000
lea r10d, [r11 + 1]
jmp 0x140098515
mov rcx, rbx
call fcn.1400a0c00
lea rdx, [0x140000000]
movzx eax, word [rbx + 8]
test al, 4
jne 0x140098564
cmp dword [r12 + 8], 0
jne 0x14009ad19
mov r10d, 0x14
mov dword [rsp + 0x30], r10d
xor r15d, r15d
mov edi, 1
lea r14, [0x140296c64]
mov rbx, qword [rsp + 0x58]
cmp byte [rsi + 0x63], 0
je 0x14009f1f1
mov r10d, 7
jmp 0x14009f223
mov ecx, 0x3e40
and ax, cx
or ax, 4
mov word [rbx + 8], ax
mov rbx, qword [rsp + 0x50]
jmp case.0x1400971b5.86
movsxd rax, dword [r12 + 4]
imul rcx, rax, 0x38
add rcx, r14
movzx eax, word [rcx + 8]
test al, 0x24
je case.0x1400971b5.86
test al, 8
je 0x1400985a0
movsd xmm0, qword [rcx]
jmp 0x1400985a8
xorps xmm0, xmm0
cvtsi2sd xmm0, qword [rcx]
mov edi, 0x3e40
movsd qword [rcx], xmm0
and ax, di
or ax, 8
mov word [rcx + 8], ax
jmp case.0x1400971b5.86
movsxd rax, dword [r12 + 4]
imul rbx, rax, 0x38
mov eax, 0x4000
add rbx, r14
test word [rbx + 8], ax
je 0x1400985ef
mov rcx, rbx
call fcn.1400a1890
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009853b
movzx r8d, byte [rsp + 0x48]
mov rcx, rbx
movzx edx, byte [r12 + 8]
call fcn.1400a16a0
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
je 0x140097e8e
mov rbx, qword [rsp + 0x58]
xor r15d, r15d
lea r14, [0x140296c64]
mov edi, 1
jmp 0x14009854f
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
imul r15, rax, 0x38
movsxd rax, dword [rcx + 0xc]
add r15, r14
imul r14, rax, 0x38
movzx esi, word [r15 + 8]
add r14, qword [rsp + 0x60]
movzx ebx, word [r14 + 8]
movzx edx, bx
and dx, si
test dl, 4
je 0x1400986b3
mov rax, qword [r14]
cmp rax, qword [r15]
jle 0x140098692
mov rax, qword [0x140308928]
mov dword [rsp + 0x78], r10d
cmp byte [rdi + rax], 0
mov r12, rcx
mov rbx, qword [rsp + 0x50]
jne 0x14009ad1e
mov rsi, qword [rsp + 0x40]
mov r14, qword [rsp + 0x60]
jmp 0x140097ea8
jge 0x1400986a5
mov rax, qword [0x140308918]
mov dword [rsp + 0x78], 0xffffffff
jmp 0x140098671
mov rax, qword [0x140308920]
mov dword [rsp + 0x78], r11d
jmp 0x140098671
mov r12, qword [rsp + 0x38]
movzx ecx, bx
or cx, si
test cl, 1
je 0x14009872e
movzx eax, word [r12 + 2]
test al, al
jns 0x14009870d
test dl, 1
je 0x1400986f2
mov eax, 0x100
test ax, bx
jne 0x1400986f2
movzx ecx, byte [r12]
mov rdx, qword [0x140308920]
mov dword [rsp + 0x78], r11d
jmp 0x140098833
movzx eax, bx
not ax
and eax, 1
lea r8d, [rax*2 - 1]
mov dword [rsp + 0x78], r8d
jmp 0x14009880e
mov dword [rsp + 0x78], r10d
test al, 0x10
jne 0x14009ad19
mov rsi, qword [rsp + 0x40]
mov r14, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x50]
jmp 0x140097ea8
movzx eax, byte [r12 + 2]
and al, 0x47
cmp al, 0x43
jb 0x140098775
test cl, 2
je 0x1400987ea
movzx eax, sil
and al, 0x2e
cmp al, 2
jne 0x14009875c
xor edx, edx
mov rcx, r15
call fcn.140027690
movzx ebx, word [r14 + 8]
movzx eax, bl
and al, 0x2e
cmp al, 2
jne 0x1400987ea
xor edx, edx
mov rcx, r14
call fcn.140027690
jmp 0x1400987ea
cmp al, 0x42
jne 0x1400987ea
movzx edi, byte [rsp + 0x48]
test sil, 2
jne 0x1400987bc
test sil, 0x2c
je 0x1400987bc
mov r8b, 1
movzx edx, dil
mov rcx, r15
call fcn.1400a2470
movzx eax, si
mov r13d, 0x3e40
xor ax, word [r15 + 8]
and ax, r13w
xor si, ax
cmp r15, r14
jne 0x1400987c2
movzx ebx, si
or bx, 2
jmp 0x1400987c2
mov r13d, 0x3e40
test bl, 2
jne 0x1400987ea
test bl, 0x2c
je 0x1400987ea
mov r8b, 1
movzx edx, dil
mov rcx, r14
call fcn.1400a2470
movzx eax, bx
xor ax, word [r14 + 8]
and ax, r13w
xor bx, ax
mov r8, qword [r12 + 0x10]
mov rdx, r15
mov rcx, r14
call fcn.14007d710
xor r11d, r11d
mov dword [rsp + 0x78], eax
mov r8d, eax
mov r9d, 0x2400
lea r10d, [r11 + 1]
movzx ecx, byte [r12]
test r8d, r8d
jns 0x140098821
mov rdx, qword [0x140308918]
jmp 0x140098833
jne 0x14009882c
mov rdx, qword [0x140308920]
jmp 0x140098833
mov rdx, qword [0x140308928]
add rdx, rcx
movzx eax, byte [rdx]
mov word [r14 + 8], bx
mov rbx, qword [rsp + 0x50]
mov word [r15 + 8], si
test al, al
jne 0x14009ad1e
mov rsi, qword [rsp + 0x40]
mov r14, qword [rsp + 0x60]
jmp 0x140097ea2
test r15d, r15d
je 0x14009ad1e
jmp case.0x1400971b5.86
mov rax, qword [rsp + 0x38]
test byte [rax + 2], 1
jne 0x140098880
xor r15d, r15d
mov r13d, r15d
jmp 0x14009888b
mov r13, qword [rax - 8]
add r13, 4
xor r15d, r15d
mov rdx, qword [rax + 0x10]
mov esi, r15d
mov r8d, dword [rax + 4]
mov rbx, r15
mov r9d, dword [rax + 8]
movsxd rax, dword [rax + 0xc]
mov qword [rbp - 0x78], rdx
mov dword [rsp + 0x7c], r8d
mov dword [rbp - 0x68], r9d
mov qword [rbp - 0x70], rax
test rax, rax
jle 0x14009e966
lea r12, [rdx + 0x20]
nop
test r13, r13
je 0x1400988cc
mov ecx, dword [r13 + rbx*4]
jmp 0x1400988ce
mov ecx, esi
mov rax, qword [rdx + 0x18]
lea r15d, [rcx + r9]
lea r14d, [rcx + r8]
mov r8, qword [r12]
imul rdx, r15, 0x38
imul rcx, r14, 0x38
movzx edi, byte [rax + rbx]
add rdx, qword [rsp + 0x60]
and edi, 1
add rcx, qword [rsp + 0x60]
call fcn.14007d710
mov dword [rsp + 0x78], eax
mov ecx, eax
test eax, eax
jne 0x140098927
mov rdx, qword [rbp - 0x78]
inc esi
mov r8d, dword [rsp + 0x7c]
inc rbx
mov r9d, dword [rbp - 0x68]
add r12, 8
cmp rbx, qword [rbp - 0x70]
jl 0x1400988c0
jmp 0x140097e7f
mov rax, qword [rbp - 0x78]
mov rax, qword [rax + 0x18]
test byte [rbx + rax], 2
je 0x14009895a
imul rax, r14, 0x38
mov r14, qword [rsp + 0x60]
test byte [rax + r14 + 8], 1
jne 0x140098952
imul rax, r15, 0x38
test byte [rax + r14 + 8], 1
je 0x14009895f
neg ecx
mov dword [rsp + 0x78], ecx
jmp 0x14009895f
mov r14, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x40]
mov r10d, 1
mov r12, qword [rsp + 0x38]
mov r9d, 0x2400
mov rbx, qword [rsp + 0x50]
lea rdx, [0x140000000]
mov r8d, 0x1000
test edi, edi
je 0x140098991
neg ecx
mov dword [rsp + 0x78], ecx
xor r11d, r11d
jmp case.0x1400971b5.86
test r15d, r15d
jns 0x1400989b4
mov eax, dword [r12 + 4]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r12, [rbx + rcx*8]
jmp case.0x1400971b5.86
jne 0x1400989cc
mov eax, dword [r12 + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r12, [rbx + rcx*8]
jmp case.0x1400971b5.86
mov eax, dword [r12 + 0xc]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r12, [rbx + rcx*8]
jmp case.0x1400971b5.86
mov rdi, qword [rsp + 0x38]
mov r15d, 2
mov edx, r15d
movsxd rax, dword [rdi + 4]
imul rcx, rax, 0x38
add rcx, r14
call fcn.140096080
movsxd rcx, dword [rdi + 8]
mov edx, r15d
imul rcx, rcx, 0x38
mov ebx, eax
add rcx, r14
call fcn.140096080
lea rdx, [0x140000000]
lea eax, [rax + rbx*2]
add eax, ebx
movsxd rcx, eax
mov rax, rdi
cmp byte [rax], 0x2c
jne 0x140098a36
movzx edx, byte [rcx + rdx + 0x28c8f0]
jmp 0x140098a3e
movzx edx, byte [rcx + rdx + 0x28c900]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, r14
cmp dl, r15b
jne 0x140098a6a
movzx eax, word [rcx + 8]
mov edx, 0x3e40
and ax, dx
mov r12, rdi
or ax, 1
mov word [rcx + 8], ax
jmp 0x140097e8e
movzx eax, dl
mov r12, rdi
mov qword [rcx], rax
mov edx, 0x3e40
movzx eax, word [rcx + 8]
and ax, dx
or ax, 4
mov word [rcx + 8], ax
jmp 0x140097e8e
mov rdi, qword [rsp + 0x38]
movsxd rax, dword [rdi + 4]
mov edx, dword [rdi + 0xc]
imul rcx, rax, 0x38
add rcx, r14
call fcn.140096080
movsxd rcx, eax
mov r9d, 0x2400
mov rax, rdi
movsxd rdx, dword [rax + 0x10]
movsxd rax, dword [rax + 8]
xor rdx, rcx
imul rcx, rax, 0x38
add rcx, r14
test word [rcx + 8], r9w
je 0x140098ad6
call fcn.1400b81e0
mov r12, rdi
jmp 0x140097e93
mov eax, 4
mov qword [rcx], rdx
mov word [rcx + 8], ax
mov r12, rdi
jmp 0x140097e99
movsxd rax, dword [r12 + 4]
imul rcx, rax, 0x38
movsxd rax, dword [r12 + 8]
imul rbx, rax, 0x38
add rcx, r14
add rbx, r14
movzx eax, word [rcx + 8]
test al, 1
jne 0x140098b84
test al, 0x24
je 0x140098b1a
cmp qword [rcx], 0
mov rax, r11
sete al
jmp 0x140098b57
test al, 8
je 0x140098b24
movsd xmm0, qword [rcx]
jmp 0x140098b47
test al, 0x12
je 0x140098b54
call fcn.1400455c0
xor r11d, r11d
lea rdx, [0x140000000]
mov r9d, 0x2400
mov r8d, 0x1000
lea r10d, [r11 + 1]
ucomisd xmm0, xmm6
jp 0x140098b4f
je 0x140098b54
mov rax, r11
jmp 0x140098b57
mov rax, r10
test word [rbx + 8], r9w
je 0x140098b6e
mov rdx, rax
mov rcx, rbx
call fcn.1400b81e0
jmp 0x140097e8e
mov qword [rbx], rax
mov eax, 4
mov word [rbx + 8], ax
mov rbx, qword [rsp + 0x50]
jmp case.0x1400971b5.86
test word [rbx + 8], r9w
je 0x140098b98
mov rcx, rbx
call fcn.1400b6f90
jmp 0x140097e8e
mov word [rbx + 8], r10w
mov rbx, qword [rsp + 0x50]
jmp case.0x1400971b5.86
mov rdi, qword [rsp + 0x38]
movsxd rax, dword [rdi + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rdi + 8]
imul rdi, rax, 0x38
add rbx, r14
add rdi, r14
test word [rdi + 8], r9w
je 0x140098bdc
mov rcx, rdi
call fcn.1400b6f90
xor r11d, r11d
mov r9d, 0x2400
jmp 0x140098be1
mov word [rdi + 8], r10w
test byte [rbx + 8], 1
jne 0x140099334
mov eax, 4
mov word [rdi + 8], ax
movzx eax, word [rbx + 8]
test al, 0x24
je 0x140098c0f
mov rax, qword [rbx]
mov r12, qword [rsp + 0x38]
not rax
mov qword [rdi], rax
jmp 0x140097e8e
test al, 8
je 0x140098c2c
movsd xmm0, qword [rbx]
call fcn.140035270
mov r12, qword [rsp + 0x38]
not rax
mov qword [rdi], rax
jmp 0x140097e8e
test al, 0x12
je 0x140098c4f
cmp qword [rbx + 0x10], 0
je 0x140098c4f
mov rcx, rbx
call fcn.140045590
mov r12, qword [rsp + 0x38]
not rax
mov qword [rdi], rax
jmp 0x140097e8e
mov rax, r11
not rax
mov qword [rdi], rax
mov r12, qword [rsp + 0x38]
jmp 0x140097e8e
mov r8, qword [r13 + 0x100]
test r8, r8
je 0x140098cdc
mov r9, qword [r8 + 0x30]
mov rcx, r12
sub rcx, qword [r13 + 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 0x14009ad1e
bts eax, edx
mov r8d, 0x1000
mov byte [rcx + r9], al
lea rdx, [0x140000000]
mov rcx, qword [r13 + 0x88]
mov r9d, 0x2400
mov eax, dword [rcx + 4]
mov dword [r12 + 4], eax
jmp case.0x1400971b5.86
mov rcx, qword [r13 + 0x88]
mov eax, dword [r12 + 4]
cmp dword [rcx + 4], eax
je 0x14009ad1e
mov eax, dword [rcx + 4]
mov r8d, 0x1000
mov dword [r12 + 4], eax
jmp case.0x1400971b5.86
movsxd rax, dword [r12 + 4]
mov edx, dword [r12 + 0xc]
imul rcx, rax, 0x38
add rcx, r14
call fcn.140096080
test eax, eax
jne 0x140098d4f
jmp 0x140097e93
mov rax, qword [rsp + 0x38]
mov edx, r11d
cmp dword [rax + 0xc], 0
movsxd rax, dword [rax + 4]
sete dl
imul rcx, rax, 0x38
add rcx, r14
call fcn.140096080
mov r12, qword [rsp + 0x38]
test eax, eax
jne 0x140097e93
xor r11d, r11d
lea r10d, [r11 + 1]
jmp 0x14009ad1e
movsxd rax, dword [r12 + 4]
imul rcx, rax, 0x38
test byte [rcx + r14 + 8], 1
jne 0x14009ad1e
jmp case.0x1400971b5.86
movsxd rax, dword [r12 + 4]
imul rcx, rax, 0x38
test byte [rcx + r14 + 8], 1
jne 0x140098da1
movsxd rax, dword [r12 + 0xc]
imul rcx, rax, 0x38
test byte [rcx + r14 + 8], 1
jne 0x140098da1
movsxd rax, dword [r12 + 8]
jmp 0x1400982f6
movsxd rax, dword [r12 + 8]
imul rcx, rax, 0x38
add rcx, r14
test word [rcx + 8], r9w
je 0x140098dbe
call fcn.1400b6f90
jmp 0x140097e93
mov word [rcx + 8], r10w
jmp case.0x1400971b5.86
movsxd rax, dword [r12 + 4]
imul rcx, rax, 0x38
test byte [rcx + r14 + 8], 1
je 0x14009ad1e
jmp case.0x1400971b5.86
movsxd rcx, dword [r12 + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx + 2], 0
je case.0x1400971b5.86
movsxd rax, dword [r12 + 0xc]
imul rcx, rax, 0x38
add rcx, r14
test word [rcx + 8], r9w
je 0x140098e1d
call fcn.1400b6f90
xor r11d, r11d
lea r10d, [r11 + 1]
jmp 0x14009ad1e
mov word [rcx + 8], r10w
jmp 0x14009ad1e
movsxd rcx, dword [r12 + 4]
mov rax, qword [r13 + 0x78]
mov r15d, dword [r12 + 8]
mov dword [rsp + 0x7c], r15d
mov r13, qword [rax + rcx*8]
cmp byte [r13 + 3], 0
je 0x140098efc
mov rdx, qword [r13 + 0x20]
test rdx, rdx
je 0x140098ef2
lea eax, [r15 + 1]
mov eax, dword [rdx + rax*4]
test eax, eax
je 0x140098ef2
cmp byte [r13 + 2], 0
jne 0x140098ef2
mov r13, qword [r13 + 0x30]
lea r15d, [rax - 1]
mov dword [rsp + 0x7c], r15d
lea rdx, [0x140000000]
mov dword [rsp + 0x30], r11d
mov rax, qword [rsp + 0x38]
mov r12, qword [rsp + 0x68]
mov rsi, qword [r13 + 0x60]
mov qword [rbp - 0x78], rsi
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov eax, dword [r12 + 0x30]
add r14, rcx
mov qword [rbp + 0x10], r14
cmp dword [r13 + 0x28], eax
je 0x140099078
cmp byte [r13 + 2], 0
je 0x140098f7b
cmp byte [r13], 3
jne 0x140098f3f
movsxd rax, dword [r13 + 0x2c]
mov rdx, qword [rsp + 0x60]
imul rcx, rax, 0x38
mov eax, dword [rcx + rdx + 0xc]
mov dword [r13 + 0x74], eax
mov dword [r13 + 0x70], eax
mov rcx, qword [rcx + rdx + 0x10]
mov qword [r13 + 0x68], rcx
jmp 0x140098fce
mov rcx, r13
call fcn.14009fe80
jmp 0x140098f11
mov rax, qword [r13 + 0x38]
cmp byte [rax], 0
je 0x140098e84
mov rcx, r13
call fcn.140041a70
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009eaac
xor r11d, r11d
lea r10d, [rax + 1]
mov r9d, 0x2400
lea rdx, [0x140000000]
mov r8d, 0x1000
jmp 0x140098e89
test word [r14 + 8], r9w
je 0x140098f62
mov rcx, r14
call fcn.1400b6f90
mov rsi, qword [rsp + 0x40]
mov r12, qword [rsp + 0x38]
mov r14, qword [rsp + 0x60]
jmp 0x140097e93
mov rsi, qword [rsp + 0x40]
mov r12, qword [rsp + 0x38]
mov word [r14 + 8], r10w
mov r14, qword [rsp + 0x60]
jmp case.0x1400971b5.86
mov rbx, qword [r13 + 0x38]
mov rcx, rbx
call fcn.140040e90
mov r8d, dword [rbx + 0x40]
mov dword [r13 + 0x70], r8d
mov rax, qword [rbx + 0x88]
movzx ecx, word [rbx + 0x44]
mov edx, dword [rax + 0x58]
sub edx, dword [rbx + 0x38]
cmp ecx, edx
jle 0x140098fb0
test edx, edx
mov ecx, edx
mov eax, 0
cmovs ecx, eax
mov r9, qword [rsp + 0x40]
mov dword [r13 + 0x74], ecx
mov rcx, qword [rbx + 0x38]
mov qword [r13 + 0x68], rcx
cmp r8d, dword [r9 + 0x80]
ja 0x14009eed7
mov eax, dword [r12 + 0x30]
mov dword [r13 + 0x28], eax
movzx eax, byte [rcx]
cmp al, 0x80
jae 0x140098fe4
mov dword [rsi], eax
mov al, 1
jmp 0x140098fec
mov rdx, rsi
call fcn.140077d10
lea rbx, [r13 + 0x52]
movzx edx, al
mov dword [r13 + 0x48], edx
xor r11d, r11d
mov word [rbx], r11w
mov ecx, dword [rsi]
mov qword [rbp - 0x68], rbx
cmp dword [r13 + 0x74], ecx
jae 0x140099067
mov qword [r13 + 0x68], r11
mov dword [r13 + 0x74], r11d
mov eax, dword [rsi]
cmp eax, 0x18003
ja 0x140099025
mov qword [rbp - 0x68], rbx
cmp eax, dword [r13 + 0x70]
jbe 0x140099080
mov r9d, 0x2400
mov rbx, qword [rsp + 0x50]
mov eax, dword [rbx + 0xc]
test eax, eax
jle 0x14009ea96
mov r14, qword [rsp + 0x60]
dec eax
movsxd rcx, eax
mov r10d, 1
lea rax, [rcx + rcx*2]
lea rsi, [rbx + rax*8]
mov qword [rsp + 0x38], rsi
mov r12, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
jmp 0x140097ea2
mov r9, qword [r13 + 0x68]
movzx eax, r11w
mov qword [rbp - 0x70], r9
jmp 0x140099148
lea rbx, [r13 + 0x52]
mov qword [rbp - 0x68], rbx
movzx eax, word [rbx]
cmp eax, r15d
ja 0x140099386
mov edx, dword [r13 + 0x48]
mov ecx, dword [rsi]
cmp edx, ecx
jae 0x140099295
mov r9, qword [r13 + 0x68]
mov qword [rbp - 0x70], r9
test r9, r9
jne 0x140099144
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x30], xmm0
mov qword [rbp + 0x60], rax
movups xmmword [rbp + 0x40], xmm0
movups xmmword [rbp + 0x50], xmm0
mov r10, qword [r13 + 0x38]
mov r8d, dword [rsi]
mov rax, qword [r10 + 0x88]
movzx ecx, word [r10 + 0x44]
mov edx, dword [rax + 0x58]
sub edx, dword [r10 + 0x38]
cmp ecx, edx
jle 0x1400990e6
test edx, edx
mov ecx, edx
cmovs ecx, r11d
mov r9, qword [r10 + 0x38]
mov qword [rbp - 0x70], r9
mov qword [rbp + 0x40], r9
cmp r8d, ecx
ja 0x140099114
mov dword [rbp + 0x3c], r8d
mov eax, 0x1010
mov word [rbp + 0x38], ax
movzx eax, word [rbx]
mov ecx, dword [rsi]
mov edx, dword [r13 + 0x48]
mov dword [rsp + 0x30], r11d
jmp 0x140099148
lea r9, [rbp + 0x30]
xor edx, edx
mov rcx, r10
call fcn.1400a1a00
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009f1dc
mov r9, qword [rbp + 0x40]
movzx eax, word [rbx]
mov ecx, dword [rsi]
mov edx, dword [r13 + 0x48]
mov qword [rbp - 0x70], r9
jmp 0x140099148
mov qword [rbp - 0x68], rbx
movzx r15d, ax
mov r12d, ecx
mov ebx, r15d
mov rcx, qword [rbp - 0x78]
mov r14d, dword [rsi + r15*4]
mov esi, edx
add rsi, r9
add r12, r9
nop dword [rax]
nop word [rax + rax]
movzx edi, byte [rsi]
mov eax, 0x80
mov dword [rbp - 0x5c], edi
mov dword [r13 + rbx*4 + 0x78], edi
cmp edi, eax
jae 0x140099198
lea rdx, [0x140000000]
inc rsi
movzx eax, byte [rdi + rdx + 0x28c810]
jmp 0x1400991d5
lea rdx, [rbp - 0x5c]
mov rcx, rsi
call fcn.140077d10
mov edi, dword [rbp - 0x5c]
movzx eax, al
add rsi, rax
mov dword [r13 + rbx*4 + 0x78], edi
mov eax, 0x80
cmp edi, eax
jb 0x1400991c2
lea eax, [rdi - 0xc]
shr eax, 1
jmp 0x1400991d1
lea rcx, [0x140000000]
movzx eax, byte [rdi + rcx + 0x28c810]
mov rcx, qword [rbp - 0x78]
inc r15d
add r14, rax
movsxd rbx, r15d
mov dword [rcx + rbx*4], r14d
cmp r15d, dword [rsp + 0x7c]
ja 0x1400991f0
cmp rsi, r12
jb 0x140099170
jmp 0x1400991f5
cmp rsi, r12
jb 0x14009924a
cmp rsi, r12
ja 0x140099253
mov eax, dword [r13 + 0x70]
cmp r14, rax
jne 0x140099253
sub esi, dword [rbp - 0x70]
mov r12d, 0x2400
mov rbx, qword [rbp - 0x68]
mov word [rbx], r15w
mov dword [r13 + 0x48], esi
cmp qword [r13 + 0x68], 0
jne 0x140099235
test word [rbp + 0x38], r12w
jne 0x14009922c
cmp dword [rbp + 0x50], 0
je 0x140099235
lea rcx, [rbp + 0x30]
call fcn.1400b6ec0
movzx eax, word [rbx]
xor r11d, r11d
mov rsi, qword [rbp - 0x78]
mov r14, qword [rbp + 0x10]
mov r15d, dword [rsp + 0x7c]
jmp 0x1400992a2
mov eax, dword [r13 + 0x70]
cmp r14, rax
jbe 0x140099203
cmp dword [rcx], 0
jne 0x140099262
xor eax, eax
mov rsi, r12
mov r15d, eax
jmp 0x140099203
cmp qword [r13 + 0x68], 0
mov r9d, 0x2400
jne 0x14009928d
test word [rbp + 0x38], r9w
jne 0x14009927c
cmp dword [rbp + 0x50], 0
je 0x14009928d
lea rcx, [rbp + 0x30]
call fcn.1400b6ec0
xor r11d, r11d
jmp 0x140099025
xor r11d, r11d
jmp 0x14009902b
mov edi, r11d
mov dword [rbp - 0x5c], r11d
mov r12d, 0x2400
movzx eax, ax
cmp eax, r15d
ja 0x140099381
mov rsi, qword [rsp + 0x38]
mov r9d, 0x2400
cmp byte [rsi + 1], 0xf5
jne 0x140099349
mov rax, qword [rsi + 0x10]
test word [r14 + 8], r9w
je 0x1400992e4
mov r8d, 0x800
mov rdx, rax
mov rcx, r14
call fcn.1400b5bc0
jmp 0x140097e7f
movups xmm0, xmmword [rax]
mov rsi, qword [rsp + 0x40]
mov ecx, 0x800
movups xmmword [r14], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [r14 + 0x10], xmm1
test word [rax + 8], cx
jne 0x14009932f
mov r12, qword [rsp + 0x38]
mov eax, 0xebff
and word [r14 + 8], ax
mov r10d, 1
or word [r14 + 8], cx
mov r14, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x50]
jmp 0x140097ea2
mov r14, qword [rsp + 0x60]
mov r12, qword [rsp + 0x38]
mov r10d, 1
mov rbx, qword [rsp + 0x50]
jmp 0x140097ea2
test word [r14 + 8], r9w
je 0x14009935d
mov rcx, r14
call fcn.1400b6f90
jmp 0x140097e7f
mov rsi, qword [rsp + 0x40]
mov r10d, 1
mov r12, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x50]
mov word [r14 + 8], r10w
mov r14, qword [rsp + 0x60]
jmp 0x140097ea2
mov ebx, r15d
jmp 0x140099397
mov ebx, r15d
mov r12d, 0x2400
mov edi, dword [r13 + rbx*4 + 0x78]
mov dword [rbp - 0x5c], edi
test word [r14 + 8], r12w
je 0x1400993a6
mov rcx, r14
call fcn.1400b6f90
lea eax, [r15 + 1]
mov eax, dword [rsi + rax*4]
cmp dword [r13 + 0x74], eax
jb 0x14009947d
mov esi, dword [rsi + rbx*4]
add rsi, qword [r13 + 0x68]
cmp edi, 0xc
jae 0x1400993d5
mov rcx, rsi
mov edx, edi
mov r8, r14
call fcn.1400a3d80
jmp 0x140097e7f
movzx eax, byte [rsp + 0x48]
lea ebx, [rdi - 0xc]
shr ebx, 1
mov dword [r14 + 0xc], ebx
mov byte [r14 + 0xa], al
lea edx, [rbx + 2]
cmp dword [r14 + 0x20], edx
jge 0x140099414
mov r12d, 1
xor r8d, r8d
mov rcx, r14
mov word [r14 + 8], r12w
call fcn.1400a1b70
test eax, eax
jne 0x14009f153
mov rcx, qword [r14 + 0x10]
jmp 0x14009941c
mov rcx, qword [r14 + 0x18]
mov qword [r14 + 0x10], rcx
mov r8, rbx
mov rdx, rsi
call fcn.1400d1770
mov rax, qword [r14 + 0x10]
lea rdx, [0x140000000]
mov rsi, qword [rsp + 0x40]
mov r9d, 0x2400
mov r12, qword [rsp + 0x38]
mov r8d, 0x1000
mov byte [rbx + rax], 0
mov rax, qword [r14 + 0x10]
mov byte [rax + rbx + 1], 0
mov eax, edi
mov rbx, qword [rsp + 0x50]
and eax, 1
xor r11d, r11d
movzx eax, word [rdx + rax*2 + 0x28c1e8]
mov word [r14 + 8], ax
lea r10d, [r11 + 1]
mov r14, qword [rsp + 0x60]
jmp case.0x1400971b5.86
movzx eax, byte [rsp + 0x48]
mov byte [r14 + 0xa], al
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
test al, 0xc0
je 0x1400994a2
cmp edi, 0xc
jb 0x14009949e
test dil, 1
je 0x1400994cb
test al, al
js 0x1400994cb
mov eax, 0x80
cmp edi, eax
jb 0x1400994b4
lea r8d, [rdi - 0xc]
shr r8d, 1
jmp 0x1400994c6
mov eax, edi
lea rcx, [0x140000000]
movzx r8d, byte [rax + rcx + 0x28c810]
test r8d, r8d
jne 0x1400994e1
lea rcx, [0x14028a770]
mov edx, edi
mov r8, r14
call fcn.1400a3d80
jmp 0x140097e7f
mov edx, dword [rsi + rbx*4]
mov r9, r14
mov rcx, qword [r13 + 0x38]
call fcn.1400a1a00
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009eaa7
mov rcx, qword [r14 + 0x10]
mov r8, r14
mov edx, edi
call fcn.1400a3d80
mov eax, 0xefff
and word [r14 + 8], ax
jmp 0x140097e7f
mov rax, qword [rsp + 0x38]
mov rdi, qword [rax + 0x10]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
movzx eax, byte [rdi]
add rbx, r14
cmp al, 0x43
jl 0x14009955e
movzx eax, word [rbx + 8]
test al, 4
jne 0x140099593
test al, 8
jne 0x140099554
test al, 2
je 0x140099593
mov edx, r10d
mov rcx, rbx
call fcn.140027690
jmp 0x140099593
mov rcx, rbx
call fcn.1400a0c00
jmp 0x140099593
cmp al, 0x42
jne 0x140099593
movzx ecx, word [rbx + 8]
movzx eax, cx
test cl, 2
jne 0x140099587
test cl, 0x2c
je 0x140099587
movzx edx, byte [rsp + 0x48]
mov r8b, 1
mov rcx, rbx
call fcn.1400a2470
movzx eax, word [rbx + 8]
mov ecx, 0xffd3
and ax, cx
mov word [rbx + 8], ax
cmp byte [rdi], 0x45
jne 0x1400995e5
movzx ecx, word [rbx + 8]
test cl, 4
je 0x1400995e5
mov rdx, qword [rbx]
movabs rax, 0x800000000000
add rax, rdx
movabs r8, 0xffffffffffff
cmp rax, r8
mov eax, 0xfffb
ja 0x1400995ce
and cx, ax
or cx, 0x20
jmp 0x1400995e1
xorps xmm0, xmm0
and cx, ax
cvtsi2sd xmm0, rdx
or cx, 8
movsd qword [rbx], xmm0
mov word [rbx + 8], cx
movzx eax, byte [rdi + 1]
inc rdi
test al, al
je 0x14009cbd4
add rbx, 0x38
mov r10d, 1
jmp 0x140099533
mov rcx, qword [rsp + 0x38]
mov rdx, r11
movzx r13d, byte [r13 + 0xc3]
mov r15, r11
mov r12d, r11d
mov qword [rbp - 0x70], rdx
mov byte [rbp - 0x80], r13b
movsxd rax, dword [rcx + 4]
mov rdi, qword [rcx + 0x10]
imul r11, rax, 0x38
mov eax, dword [rcx + 8]
dec eax
add r11, r14
cdqe
imul rsi, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
add rsi, r11
mov qword [rbp - 0x78], r11
add rcx, r14
mov qword [rbp - 0x68], rsi
mov qword [rbp + 0x10], rcx
test rdi, rdi
je 0x1400996bd
movzx eax, byte [rdi]
lea rbx, [r11 + 8]
movzx esi, byte [rsp + 0x48]
mov r13d, 0xfffb
nop dword [rax]
lea rcx, [rbx - 8]
movzx r8d, sil
movzx edx, al
call fcn.140027610
cmp byte [rdi], 0x45
jne 0x140099697
movzx eax, word [rbx]
test al, 4
je 0x140099697
and ax, r13w
or ax, 0x20
mov word [rbx], ax
movzx eax, byte [rdi + 1]
inc rdi
add rbx, 0x38
test al, al
jne 0x140099670
movzx r13d, byte [rbp - 0x80]
mov r10d, 1
mov rdx, qword [rbp - 0x70]
mov r11, qword [rbp - 0x78]
mov rsi, qword [rbp - 0x68]
lea r14, [rsi + 0x24]
movzx ecx, word [r14 - 0x1c]
test cl, 1
je 0x1400996e6
mov eax, 0x4000
and cx, ax
neg cx
sbb eax, eax
and eax, 0xa
mov dword [r14], eax
inc r12d
jmp 0x140099865
test cl, 0x24
je 0x1400997e1
mov r8, qword [r14 - 0x24]
mov rdx, r8
test r8, r8
jns 0x1400996fe
not rdx
inc r12d
cmp rdx, 0x7f
ja 0x140099731
mov rax, r8
and eax, 1
cmp rax, r8
jne 0x140099723
cmp r13b, 4
jb 0x140099723
lea eax, [rdx + 8]
mov dword [r14], eax
jmp 0x140099865
mov eax, r10d
inc r15
mov dword [r14], eax
jmp 0x140099865
cmp rdx, 0x7fff
ja 0x14009974b
mov eax, 2
add r15, 2
mov dword [r14], eax
jmp 0x140099865
cmp rdx, 0x7fffff
ja 0x140099765
mov eax, 3
add r15, 3
mov dword [r14], eax
jmp 0x140099865
cmp rdx, 0x7fffffff
ja 0x14009977f
mov eax, 4
add r15, 4
mov dword [r14], eax
jmp 0x140099865
movabs rax, 0x7fffffffffff
cmp rdx, rax
ja 0x14009979f
mov eax, 5
add r15, 6
mov dword [r14], eax
jmp 0x140099865
add r15, 8
test cl, 0x20
je 0x1400997d4
mov eax, 0xffdf
xorps xmm0, xmm0
and cx, ax
mov eax, 7
cvtsi2sd xmm0, r8
or cx, 8
movsd qword [r14 - 0x24], xmm0
mov word [r14 - 0x1c], cx
mov dword [r14], eax
jmp 0x140099865
mov eax, 6
mov dword [r14], eax
jmp 0x140099865
test cl, 8
je 0x1400997f6
inc r12d
mov dword [r14], 7
add r15, 8
jmp 0x140099865
mov edi, dword [r14 - 0x18]
mov eax, ecx
shr eax, 1
and eax, 1
bt cx, 0xe
lea esi, [rdi + 6]
lea esi, [rax + rsi*2]
jae 0x14009983c
movsxd rax, dword [r14 - 0x24]
lea esi, [rsi + rax*2]
test r15, r15
je 0x140099835
lea rcx, [r14 - 0x24]
call fcn.1400a1890
test eax, eax
jne 0x14009f14c
add edi, dword [r14 - 0x24]
lea r10d, [rax + 1]
jmp 0x14009983c
add rdx, rax
mov qword [rbp - 0x70], rdx
mov eax, edi
mov ecx, r10d
add r15, rax
mov eax, esi
shr rax, 7
test rax, rax
je 0x14009985b
nop
inc ecx
shr rax, 7
test rax, rax
jne 0x140099850
mov r11, qword [rbp - 0x78]
add r12d, ecx
mov dword [r14], esi
lea rax, [r14 - 0x24]
cmp rax, r11
je 0x14009987b
mov rdx, qword [rbp - 0x70]
sub r14, 0x38
jmp 0x1400996c1
cmp r12d, 0x7e
jle 0x1400998bf
movsxd rax, r12d
mov edx, r10d
shr rax, 7
test rax, rax
je 0x14009989b
inc edx
shr rax, 7
test rax, rax
jne 0x140099890
add r12d, edx
mov ecx, r10d
movsxd rax, r12d
shr rax, 7
test rax, rax
je 0x1400998bb
nop dword [rax]
inc ecx
shr rax, 7
test rax, rax
jne 0x1400998b0
cmp edx, ecx
jge 0x1400998c2
inc r12d
mov r14, qword [rbp + 0x10]
mov rsi, qword [rbp - 0x70]
movsxd rbx, r12d
movsxd rdx, dword [r14 + 0x20]
lea rdi, [r15 + rbx]
lea rcx, [rdi + rsi]
cmp rcx, rdx
jle 0x140099916
mov r9, qword [rsp + 0x40]
movsxd rax, dword [r9 + 0x80]
cmp rcx, rax
jg 0x14009eed0
cmp edx, edi
jge 0x140099916
xor r8d, r8d
mov edx, edi
mov rcx, r14
call fcn.1400a1b70
test eax, eax
jne 0x14009f14c
mov r11, qword [rbp - 0x78]
lea r10d, [rax + 1]
jmp 0x14009991e
mov rax, qword [r14 + 0x18]
mov qword [r14 + 0x10], rax
mov dword [r14 + 0xc], edi
mov eax, reloc.WS2_32.dll_recv
mov word [r14 + 8], ax
test rsi, rsi
je 0x14009993e
mov eax, 0x4010
mov dword [r14], esi
mov word [r14 + 8], ax
mov rsi, qword [r14 + 0x10]
mov ecx, 0x80
lea rdi, [rsi + rbx]
cmp r12d, ecx
jae 0x140099958
mov byte [rsi], r12b
mov eax, r10d
jmp 0x14009999d
cmp rbx, 0x7f
ja 0x140099968
and bl, 0x7f
mov eax, r10d
mov byte [rsi], bl
jmp 0x14009999d
cmp rbx, 0x3fff
ja 0x14009998d
mov rax, rbx
mov r8d, 2
shr rax, 7
or al, cl
mov byte [rsi], al
and bl, 0x7f
mov byte [rsi + 1], bl
mov eax, r8d
jmp 0x1400999a3
mov rdx, rbx
mov rcx, rsi
call fcn.14004f2e0
mov ecx, 0x80
mov r8d, 2
mov r15, qword [rbp - 0x68]
lea r14, [r11 + 0xc]
movzx eax, al
mov r13d, 1
add rsi, rax
mov r11d, dword [r14 + 0x18]
cmp r11d, ecx
jae 0x1400999c8
mov byte [rsi], r11b
mov eax, r13d
jmp 0x140099a02
mov rdx, r11
cmp r11, 0x7f
ja 0x1400999db
and dl, 0x7f
mov eax, r13d
mov byte [rsi], dl
jmp 0x140099a02
cmp rdx, 0x3fff
ja 0x1400999fa
mov rax, rdx
shr rax, 7
or al, 0x80
mov byte [rsi], al
and dl, 0x7f
mov byte [rsi + 1], dl
mov eax, r8d
jmp 0x140099a02
mov rcx, rsi
call fcn.14004f2e0
movzx eax, al
add rsi, rax
lea eax, [r11 - 1]
cmp eax, 6
ja 0x140099a44
mov rdx, qword [r14 - 0xc]
lea rcx, [0x140000000]
movzx ecx, byte [r11 + rcx + 0x28c810]
mov r13d, 0xffffffff
mov ebx, ecx
nop dword [rax]
add ecx, r13d
mov byte [rcx + rdi], dl
shr rdx, 8
test ecx, ecx
jne 0x140099a30
lea r13d, [rcx + 1]
jmp 0x140099a66
cmp r11d, 0xc
jb 0x140099a62
mov ebx, dword [r14]
test ebx, ebx
je 0x140099a66
mov rdx, qword [r14 + 4]
mov r8d, ebx
mov rcx, rdi
call fcn.1400d1770
jmp 0x140099a66
xor eax, eax
mov ebx, eax
add r14, 0x38
mov eax, ebx
add rdi, rax
mov ecx, 0x80
lea rax, [r14 - 0xc]
lea r8d, [rcx - 0x7e]
cmp rax, r15
jbe 0x1400999b7
jmp 0x140097e7f
mov rsi, qword [rsp + 0x38]
mov rax, qword [r13 + 0x78]
cmp dword [rsi + 0xc], 0
movsxd rcx, dword [rsi + 4]
mov rcx, qword [rax + rcx*8]
mov rbx, qword [rcx + 0x38]
mov rcx, rbx
je 0x140099ab5
call fcn.140060050
mov rsi, rax
jmp 0x140099bac
xor r15d, r15d
mov esi, r15d
mov edi, r15d
call fcn.140045b90
mov dword [rsp + 0x30], eax
mov r10d, eax
cmp eax, 0x10
jne 0x140099ad9
mov dword [rsp + 0x30], r15d
jmp 0x140099bac
test eax, eax
jne 0x140099ba3
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0x178]
test eax, eax
jne 0x140099ba3
mov r8, qword [rbx + 0x88]
movzx ecx, byte [r8 + 8]
test cl, cl
jne 0x140099b0a
cmp byte [r8 + 2], sil
jne 0x140099b3d
movzx eax, word [r8 + 0x18]
add rdi, rax
test cl, cl
je 0x140099b3d
mov rcx, rbx
cmp byte [rbx + 0x54], sil
je 0x140099b94
call fcn.1400459f0
mov r8, qword [rbx + 0x88]
movzx eax, word [rbx + 0x56]
cmp ax, word [r8 + 0x18]
jae 0x140099b16
inc ax
mov word [rbx + 0x56], ax
movzx ecx, word [rbx + 0x56]
movzx eax, word [r8 + 0x18]
cmp ecx, eax
jne 0x140099b59
movzx ecx, byte [r8 + 9]
mov rax, qword [r8 + 0x50]
mov edx, dword [rcx + rax + 8]
jmp 0x140099b79
mov rax, qword [r8 + 0x60]
add ecx, ecx
movzx edx, word [rcx + rax]
movzx eax, word [r8 + 0x1a]
ror dx, 8
movzx ecx, dx
and rcx, rax
mov rax, qword [r8 + 0x50]
mov edx, dword [rcx + rax]
bswap edx
mov rcx, rbx
call fcn.140045850
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
je 0x140099ae1
jmp 0x140099ba3
mov rsi, rdi
call fcn.140045b90
mov r10d, eax
mov dword [rsp + 0x30], eax
test r10d, r10d
jne 0x14009b393
mov rax, qword [rsp + 0x38]
mov r12d, 0x2400
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
add rax, qword [r13 + 0x68]
test word [rax + 8], r12w
je 0x140099bd4
mov rcx, rax
call fcn.140049180
jmp 0x140099bdd
mov ecx, 4
mov word [rax + 8], cx
mov qword [rax], rsi
mov rsi, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x50]
mov eax, dword [rsi + 0x178]
test eax, eax
jne 0x14009f120
mov r14, qword [rsp + 0x58]
mov r15, qword [rbp - 0x18]
cmp r15, r14
jb 0x14009e7e9
nop word [rax + rax]
mov rax, qword [rsi + 0x1e8]
test rax, rax
je 0x14009e7e9
mov ecx, dword [rsi + 0x1f8]
add r14, rcx
mov rcx, qword [rsi + 0x1f0]
mov qword [rsp + 0x58], r14
call qword [case.0x14007d279.0]
test eax, eax
jne 0x14009eb7a
cmp r15, r14
jae 0x140099c10
mov r12, qword [rsp + 0x38]
mov r14, qword [rsp + 0x60]
jmp 0x140097e93
mov rax, qword [rsp + 0x38]
mov r10d, dword [rax + 4]
mov rsi, qword [rax + 0x10]
mov dword [rsp + 0x7c], r10d
test r10d, r10d
jne 0x140099d56
mov rdi, qword [rsp + 0x40]
cmp dword [rdi + 0xd8], r10d
jg 0x14009eab6
test rsi, rsi
jne 0x140099c91
xor r15d, r15d
mov ebx, r15d
jmp 0x140099cb2
mov rbx, 0xffffffffffffffff
nop dword [rax + rax]
inc rbx
cmp byte [rsi + rbx], 0
jne 0x140099ca0
and ebx, 0x3fffffff
xor r15d, r15d
mov r8d, dword [rdi + 0x2cc]
xor edx, edx
add r8d, dword [rdi + 0x2c8]
mov rcx, rdi
call fcn.1400a5c70
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009f1e9
mov edx, ebx
mov rcx, rdi
add rdx, 0x21
call fcn.140066380
mov rdi, rax
test rax, rax
je 0x14009cbcf
lea r9, [rax + 0x20]
mov rdx, rsi
mov rcx, r9
mov qword [rax], r9
lea r8d, [rbx + 1]
call fcn.1400d1770
mov rsi, qword [rsp + 0x40]
cmp byte [rsi + 0x61], 0
je 0x140099d1e
mov byte [rsi + 0x61], 0
mov byte [rsi + 0x69], 1
jmp 0x140099d24
inc dword [rsi + 0x2c8]
mov rax, qword [rsi + 0x2b8]
mov r12, qword [rsp + 0x38]
mov qword [rdi + 0x18], rax
mov qword [rsi + 0x2b8], rdi
mov rax, qword [rsi + 0x2d0]
mov qword [rdi + 8], rax
mov rax, qword [rsi + 0x2d8]
mov qword [rdi + 0x10], rax
jmp 0x140097e8e
mov rax, qword [rsp + 0x40]
xor r15d, r15d
mov r13d, r15d
mov r12, qword [rax + 0x2b8]
test r12, r12
je 0x140099e65
lea r11, [0x140000000]
nop dword [rax + rax]
mov r8, qword [r12]
mov r9, rsi
sub r9, r8
nop word [rax + rax]
movzx eax, byte [r8]
movzx edx, byte [r9 + r8]
cmp eax, edx
jne 0x140099e36
test eax, eax
jne 0x140099e4c
mov rsi, qword [rsp + 0x40]
cmp dword [rsi + 0xd8], r15d
jle 0x140099dc1
cmp r10d, 1
je 0x14009ead3
cmp qword [r12 + 0x18], r15
jne 0x140099e92
cmp byte [rsi + 0x69], r15b
je 0x140099e92
mov edi, 1
mov r15d, edi
cmp r10d, edi
jne 0x140099e92
mov rbx, qword [rsp + 0x68]
mov rax, qword [rbx]
mov rcx, qword [rax + 0x2d8]
add rcx, qword [rax + 0x2d0]
test rcx, rcx
jg 0x14009eba0
mov rcx, rbx
mov byte [rsi + 0x61], dil
call fcn.1400a0600
cmp eax, 5
je 0x14009eb06
mov r10d, dword [rbx + 0x38]
mov dword [rsp + 0x30], r10d
test r10d, r10d
jne 0x14009eaf7
mov byte [rsi + 0x69], r10b
jmp 0x140099f97
movzx ecx, byte [rax + r11 + 0x28a630]
movzx eax, byte [rdx + r11 + 0x28a630]
cmp ecx, eax
jne 0x140099e54
inc r8
jmp 0x140099d90
mov r12, qword [r12 + 0x18]
inc r13d
test r12, r12
jne 0x140099d80
mov r13, qword [rsp + 0x68]
lea rdx, str.no_such_savepoint:__s
mov rcx, r13
mov r8, rsi
call fcn.140096fb0
mov rsi, qword [rsp + 0x40]
mov edi, 1
mov r10d, edi
mov dword [rsp + 0x30], edi
jmp 0x140098543
mov eax, dword [rsi + 0x2c8]
xor ecx, ecx
sub eax, r13d
lea r13d, [rax - 1]
mov eax, dword [rsi + 0x28]
cmp r10d, 2
jne 0x140099f0a
mov r14d, dword [rsi + 0x2c]
mov edi, ecx
and r14d, 1
test eax, eax
jle 0x140099f0d
mov esi, r14d
mov ebx, ecx
xor esi, 1
mov rax, qword [rsp + 0x40]
mov r8d, esi
mov edx, 0x204
mov rcx, qword [rax + 0x20]
mov rcx, qword [rbx + rcx + 8]
call fcn.140060c90
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009eaa7
mov rax, qword [rsp + 0x40]
inc edi
add rbx, 0x20
mov eax, dword [rax + 0x28]
cmp edi, eax
jl 0x140099ec0
mov r10d, dword [rsp + 0x7c]
xor ecx, ecx
mov rsi, qword [rsp + 0x40]
jmp 0x140099f0d
mov r14d, ecx
mov edi, ecx
test eax, eax
jle 0x140099f53
mov rbx, rcx
nop word [rax + rax]
mov rcx, qword [rsi + 0x20]
mov r8d, r13d
mov edx, r10d
mov rcx, qword [rbx + rcx + 8]
call fcn.1400600b0
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009eaac
mov r10d, dword [rsp + 0x7c]
inc edi
add rbx, 0x20
cmp edi, dword [rsi + 0x28]
jl 0x140099f20
test r14d, r14d
je 0x140099f84
mov rax, qword [rsi + 8]
test rax, rax
je 0x140099f78
and dword [rax + 0xc8], 0xfffffffd
or dword [rax + 0xc8], 1
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x140099f61
mov rcx, rsi
call fcn.140087f60
or dword [rsi + 0x2c], 1
mov r10d, dword [rsp + 0x30]
test r10d, r10d
jne 0x14009eaac
mov r14, qword [rsp + 0x60]
mov rcx, qword [rsi + 0x2b8]
cmp rcx, r12
je 0x140099fcb
mov rax, qword [rcx + 0x18]
mov rdx, rcx
mov rcx, rsi
mov qword [rsi + 0x2b8], rax
call fcn.140066270
dec dword [rsi + 0x2c8]
mov rcx, qword [rsi + 0x2b8]
cmp rcx, r12
jne 0x140099fa3
mov ebx, dword [rsp + 0x7c]
cmp ebx, 1
jne 0x140099ffc
mov rax, qword [r12 + 0x18]
mov rdx, r12
mov rcx, rsi
mov qword [rsi + 0x2b8], rax
call fcn.140066270
test r15d, r15d
jne 0x14009cbd4
dec dword [rsi + 0x2c8]
jmp 0x14009a022
mov rax, qword [r12 + 8]
mov qword [rsi + 0x2d0], rax
mov rax, qword [r12 + 0x10]
mov qword [rsi + 0x2d8], rax
test r15d, r15d
je 0x14009a022
cmp ebx, 2
jne 0x140098c58
mov r8d, r13d
mov edx, ebx
mov rcx, rsi
call fcn.1400a5c70
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009eaac
mov r12, qword [rsp + 0x38]
jmp 0x140097e8e
mov rcx, qword [rsp + 0x38]
xor r15d, r15d
mov dword [rbp - 0x50], r15d
mov edx, dword [rcx + 8]
test edx, edx
je 0x14009a069
mov eax, dword [rsi + 0x30]
bt rax, 0x14
jb 0x14009ebc5
movsxd rcx, dword [rcx + 4]
mov rax, qword [rsi + 0x20]
shl rcx, 5
mov rbx, qword [rcx + rax + 8]
test rbx, rbx
je 0x14009a1da
lea r8, [rbp - 0x50]
mov rcx, rbx
call fcn.14005d150
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009ebd6
test byte [r13 + 0xc8], 0x40
mov r12, qword [rsp + 0x38]
je 0x14009a17e
cmp dword [r12 + 8], r15d
je 0x14009a17e
cmp byte [rsi + 0x61], r15b
je 0x14009a0cf
cmp dword [rsi + 0xd4], 1
jle 0x14009a17e
mov r8d, dword [r13 + 0x40]
test r8d, r8d
jne 0x14009a0f0
inc dword [rsi + 0x2cc]
mov r8d, dword [rsi + 0x2c8]
add r8d, dword [rsi + 0x2cc]
mov dword [r13 + 0x40], r8d
dec r8d
xor edx, edx
mov rcx, rsi
call fcn.1400a5c70
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009a168
mov edi, dword [r13 + 0x40]
mov rsi, qword [rbx + 8]
cmp byte [rbx + 0x11], r15b
je 0x14009a127
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], r15b
jne 0x14009a127
mov rcx, rbx
call fcn.14002b540
mov rcx, qword [rsi]
cmp edi, dword [rcx + 0x80]
jle 0x14009a145
cmp byte [rcx + 0xa], r15b
je 0x14009a145
mov edx, edi
call fcn.140049bb0
mov dword [rsp + 0x30], eax
jmp 0x14009a14a
mov dword [rsp + 0x30], r15d
cmp byte [rbx + 0x11], r15b
je 0x14009a15e
sub dword [rbx + 0x14], 1
jne 0x14009a15e
mov rcx, rbx
call fcn.1400b3560
mov r10d, dword [rsp + 0x30]
mov rsi, qword [rsp + 0x40]
mov rax, qword [rsi + 0x2d0]
mov qword [r13 + 0x58], rax
mov rax, qword [rsi + 0x2d8]
mov qword [r13 + 0x60], rax
mov r8d, 0x1000
mov r9d, 0x2400
cmp word [r12 + 2], r15w
je 0x14009a1cc
mov eax, dword [r12 + 0xc]
cmp dword [rbp - 0x50], eax
jne 0x14009ec17
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0x10]
cmp dword [rcx + 4], eax
jne 0x14009ec17
mov r12, qword [rsp + 0x38]
test r10d, r10d
jne 0x14009853e
jmp 0x140097ba3
mov r10d, dword [rsp + 0x30]
mov r12, qword [rsp + 0x38]
jmp 0x14009a18a
mov rcx, qword [rsi + 0x20]
lea r8, [rbp - 0x10]
mov rax, qword [rsp + 0x38]
mov r12, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov edx, dword [r12 + 0xc]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.14005e280
movsxd rax, dword [r12 + 8]
mov r9d, 0x2400
imul rcx, rax, 0x38
add rcx, qword [r13 + 0x68]
test word [rcx + 8], r9w
je 0x14009a243
call fcn.140049180
mov rcx, rax
mov r9d, 0x2400
movsxd rax, dword [rbp - 0x10]
mov qword [rcx], rax
jmp 0x140097e99
mov eax, 4
mov word [rcx + 8], ax
movsxd rax, dword [rbp - 0x10]
mov qword [rcx], rax
jmp 0x140097e99
mov rax, qword [rsp + 0x38]
movsxd rbx, dword [rax + 4]
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 8]
shl rbx, 5
add rbx, qword [rsi + 0x20]
mov rcx, qword [rbx + 8]
call fcn.140060e40
mov r12, qword [rsp + 0x38]
mov r10d, eax
mov dword [rsp + 0x30], eax
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 8]
cmp eax, 1
jne 0x14009a2ac
mov ecx, dword [r12 + 0xc]
mov rax, r12
movzx eax, word [rax + 2]
sub ecx, eax
mov rax, qword [rbx + 0x18]
mov dword [rax], ecx
or dword [rsi + 0x2c], 1
jmp 0x14009a2c1
cmp eax, 2
jne 0x14009a2c1
mov rax, qword [rsp + 0x38]
mov rcx, qword [rbx + 0x18]
movzx eax, byte [rax + 0xc]
mov byte [rcx + 0x70], al
cmp dword [r12 + 4], 1
jne 0x14009a2f1
mov rax, qword [rsi + 8]
test rax, rax
je 0x14009a2e9
and dword [rax + 0xc8], 0xfffffffd
or dword [rax + 0xc8], 1
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x14009a2d2
and dword [r13 + 0xc8], 0xfffffffc
test r10d, r10d
jne 0x14009853b
jmp 0x140097e8e
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
test rbx, rbx
je case.0x1400971b5.98
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 8]
cmp dword [rbx + 0x4c], eax
je 0x14009a45b
mov eax, dword [r13 + 0xc8]
and al, 3
cmp al, 1
je 0x14009ecac
mov rax, qword [rsp + 0x38]
mov esi, r11d
mov r9, qword [rsp + 0x40]
mov r14, r11
movsxd r12, dword [rax + 0xc]
mov r15d, dword [rax + 8]
mov rax, r12
shl rax, 5
add rax, qword [r9 + 0x20]
mov r9, qword [rsp + 0x38]
mov r13, qword [rax + 8]
cmp dil, 0x63
jne 0x14009a391
mov rax, qword [rax + 0x18]
movzx edi, word [r9 + 2]
and edi, 8
or edi, 4
movzx ecx, byte [rax + 0x70]
mov rax, qword [rsp + 0x68]
cmp cl, byte [rax + 0xc3]
jae 0x14009a394
mov byte [rax + 0xc3], cl
jmp 0x14009a394
mov edi, r11d
test byte [r9 + 2], 0x10
je 0x14009a3b4
imul rbx, r15, 0x38
add rbx, qword [rsp + 0x60]
mov rcx, rbx
call fcn.1400a1d70
mov r9, qword [rsp + 0x38]
mov r15d, dword [rbx]
movzx eax, byte [r9 + 1]
cmp al, 0xf7
jne 0x14009a3c8
mov r14, qword [r9 + 0x10]
movzx esi, word [r14 + 8]
jmp 0x14009a3d0
cmp al, 0xfd
jne 0x14009a3d0
mov esi, dword [r9 + 0x10]
mov rcx, qword [rsp + 0x68]
mov r8d, esi
mov rsi, qword [rsp + 0x38]
mov r9d, r12d
mov byte [rsp + 0x20], 0
mov edx, dword [rsi + 4]
call fcn.140025930
mov rbx, rax
test rax, rax
je 0x14009f14c
mov byte [rax + 2], 1
mov r9, r14
or dword [rax + 8], 4
mov r8d, edi
mov dword [rax + 0x4c], r15d
mov edx, r15d
mov rcx, qword [rax + 0x38]
mov qword [rsp + 0x20], rcx
mov rcx, r13
call fcn.14005dcd0
mov r13, qword [rsp + 0x68]
lea rdx, [0x140000000]
mov qword [rbx + 0x40], r14
mov r10d, eax
cmp byte [rsi + 1], 0xf7
mov r9d, 0x2400
mov rsi, qword [rsp + 0x40]
mov r8d, 0x1000
mov r14, qword [rsp + 0x60]
mov dword [rsp + 0x30], eax
setne al
mov byte [rbx + 4], al
xor r11d, r11d
jmp 0x14009a460
mov r10d, dword [rsp + 0x30]
mov rax, qword [rsp + 0x38]
movzx ecx, byte [rax + 2]
mov rax, qword [rbx + 0x38]
and cl, 3
mov byte [rax + 3], cl
test r10d, r10d
jne 0x14009853b
mov r12, qword [rsp + 0x38]
mov r10d, 1
mov rbx, qword [rsp + 0x50]
jmp case.0x1400971b5.86
mov rax, qword [rsp + 0x38]
mov r9d, 0xffffffff
mov byte [rsp + 0x20], 0
movsxd rcx, dword [rax + 8]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, r13
mov rax, qword [rsp + 0x38]
movsx r8d, word [rbx + 0x50]
mov edx, dword [rax + 4]
call fcn.140025930
mov r10, rax
test rax, rax
je 0x14009f12f
mov byte [rax + 2], 1
mov r8d, 4
or dword [rax + 8], 1
mov rcx, qword [rbx + 0x40]
mov qword [rax + 0x40], rcx
movzx ecx, byte [rbx + 4]
mov byte [rax + 4], cl
mov ecx, dword [rbx + 0x4c]
mov dword [rax + 0x4c], ecx
mov ecx, dword [rax + 8]
xor ecx, dword [rbx + 8]
and ecx, 4
xor ecx, dword [rax + 8]
mov dword [rax + 8], ecx
or ecx, 8
mov rax, qword [rbx + 0x10]
mov qword [r10 + 0x10], rax
mov dword [r10 + 8], ecx
or dword [rbx + 8], 8
mov rax, qword [r10 + 0x38]
mov r9, qword [r10 + 0x40]
mov edx, dword [r10 + 0x4c]
mov rcx, qword [r10 + 0x10]
mov qword [rsp + 0x20], rax
call fcn.14005dcd0
mov r12, qword [rsp + 0x38]
mov dword [rsp + 0x30], eax
jmp 0x140097e8e
mov rdi, qword [rsp + 0x38]
xor r15d, r15d
movsxd rax, dword [rdi + 0xc]
test eax, eax
jle 0x14009a568
imul rcx, rax, 0x38
mov dword [rcx + r14 + 0xc], r15d
movsxd rax, dword [rdi + 0xc]
imul rcx, rax, 0x38
lea rax, [0x140285030]
mov qword [rcx + r14 + 0x10], rax
mov rax, rdi
movsxd rdx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rdx*8]
test rbx, rbx
je 0x14009a5b4
test byte [rbx + 8], 8
jne 0x14009a5b4
mov qword [rbx + 0x18], r15
xor r8d, r8d
mov dword [rbx + 0x28], r15d
mov edx, dword [rbx + 0x4c]
mov rcx, qword [rbx + 0x10]
call fcn.14005d4c0
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009853e
mov byte [rbx + 2], 1
mov r12, rdi
jmp 0x140097e8e
mov rax, rdi
mov byte [rsp + 0x20], 0
mov r9d, 0xffffffff
mov rcx, r13
mov r8d, dword [rax + 8]
call fcn.140025930
mov rbx, rax
test rax, rax
je 0x14009ee84
or dword [rax + 8], 1
lea r9, [rbx + 0x10]
mov rax, rdi
mov dword [rsp + 0x28], 0x41e
mov r8, rsi
xor edx, edx
movzx ecx, word [rax + 2]
or ecx, 5
mov dword [rsp + 0x20], ecx
mov rcx, qword [rsi]
call fcn.14005f580
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009853e
mov rcx, qword [rbx + 0x10]
mov r12d, 1
mov edx, r12d
xor r8d, r8d
call fcn.14005d150
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009a6c8
mov rax, rdi
mov r14, qword [rax + 0x10]
mov qword [rbx + 0x40], r14
test r14, r14
je 0x14009a693
movzx r8d, word [rax + 2]
lea rdx, [rbx + 0x4c]
mov rcx, qword [rbx + 0x10]
or r8d, 2
call fcn.14005dc60
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009a68d
mov rax, qword [rbx + 0x38]
lea r8d, [r12 + 3]
mov edx, dword [rbx + 0x4c]
mov r9, r14
mov rcx, qword [rbx + 0x10]
mov qword [rsp + 0x20], rax
call fcn.14005dcd0
mov r10d, eax
mov dword [rsp + 0x30], eax
mov byte [rbx + 4], 0
jmp 0x14009a6be
mov dword [rbx + 0x4c], r12d
xor r9d, r9d
mov rax, qword [rbx + 0x38]
mov edx, r12d
mov rcx, qword [rbx + 0x10]
mov qword [rsp + 0x20], rax
lea r8d, [r9 + 4]
call fcn.14005dcd0
mov r10d, eax
mov dword [rsp + 0x30], eax
mov byte [rbx + 4], r12b
mov r14, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x40]
mov rax, rdi
mov ecx, r15d
cmp word [rax + 2], 8
mov eax, 4
cmovne ecx, eax
mov eax, dword [rbx + 8]
and eax, 0xfffffffb
or ecx, eax
mov dword [rbx + 8], ecx
test r10d, r10d
jne 0x14009ecb7
mov byte [rbx + 2], 1
mov r12, rdi
jmp 0x140097e8e
mov rax, qword [rsp + 0x38]
mov r9d, 0xffffffff
mov rcx, r13
mov byte [rsp + 0x20], 1
mov r8d, dword [rax + 8]
mov edx, dword [rax + 4]
call fcn.140025930
test rax, rax
je 0x14009f12f
mov rdx, qword [rsp + 0x38]
mov r8, rax
mov rcx, qword [rdx + 0x10]
mov qword [rax + 0x40], rcx
mov rcx, rsi
mov edx, dword [rdx + 0xc]
call fcn.1400a4140
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009853b
mov r12, qword [rsp + 0x38]
jmp 0x140097e93
mov rax, qword [rsp + 0x38]
mov r12, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rcx, qword [rdx + 0x18]
lea rax, [rcx + 1]
mov qword [rdx + 0x18], rax
test rcx, rcx
jne 0x140097ea8
jmp 0x14009ad1e
mov rax, qword [rsp + 0x38]
mov r9d, 0xffffffff
mov rcx, r13
mov byte [rsp + 0x20], 3
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 4]
call fcn.140025930
test rax, rax
je 0x14009f12f
mov r12, qword [rsp + 0x38]
mov byte [rax + 2], 1
mov ecx, dword [r12 + 8]
mov dword [rax + 0x2c], ecx
lea rcx, [0x14030dab3]
mov byte [rax + 4], 1
mov qword [rax + 0x38], rcx
jmp 0x140097e93
mov rdx, qword [r13 + 0x78]
mov rcx, r13
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rdx, qword [rdx + rax*8]
call fcn.1400a0340
mov rax, qword [rsp + 0x38]
xor r11d, r11d
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov qword [rax + rcx*8], r11
mov r12, qword [rsp + 0x38]
mov r10d, 1
mov r9d, 0x2400
jmp 0x140097ea2
mov rax, qword [rsp + 0x38]
mov r12d, r11d
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov r15, qword [rax + rcx*8]
mov byte [r15 + 2], 0
mov byte [r15 + 3], 0
mov dword [r15 + 0x28], r11d
cmp byte [r15 + 4], 0
je 0x14009a973
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
add rbx, r14
movzx r14d, word [rbx + 8]
movzx eax, r14b
movzx ecx, r14w
and al, 0x2e
cmp al, 2
jne 0x14009a878
xor edx, edx
mov rcx, rbx
call fcn.140027690
movzx ecx, word [rbx + 8]
xor r11d, r11d
movzx eax, cx
test al, 0x24
je 0x14009a884
mov rsi, qword [rbx]
jmp 0x14009a8b5
test al, 8
je 0x14009a896
movsd xmm0, qword [rbx]
call fcn.140035270
mov rsi, rax
jmp 0x14009a8b5
test al, 0x12
je 0x14009a8b2
cmp qword [rbx + 0x10], 0
je 0x14009a8b2
mov rcx, rbx
call fcn.140045590
movzx ecx, word [rbx + 8]
mov rsi, rax
jmp 0x14009a8b5
mov rsi, r11
mov word [rbx + 8], r14w
test cl, 0x24
jne 0x14009a93b
test cl, 8
jne 0x14009a911
test cl, 1
jne 0x14009e16b
cmp edi, 0x18
jae 0x14009e16b
mov rcx, qword [r15 + 0x38]
lea rdx, [rsp + 0x74]
call fcn.14005ef90
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009b808
xor r11d, r11d
cmp dword [rsp + 0x74], 0
je 0x14009ab08
mov r12, qword [rsp + 0x38]
mov r10d, 1
jmp 0x14009ad19
movsd xmm0, qword [rbx]
xorps xmm1, xmm1
cvtsi2sd xmm1, rsi
comisd xmm1, xmm0
jbe 0x14009a92d
test dil, 1
je 0x14009a93b
dec edi
jmp 0x14009a93b
comisd xmm0, xmm1
jbe 0x14009a93b
test dil, 1
jne 0x14009a93b
inc edi
mov rcx, qword [r15 + 0x38]
lea rax, [rsp + 0x74]
xor r9d, r9d
mov qword [rsp + 0x20], rax
mov r8, rsi
xor edx, edx
call fcn.14005f010
mov qword [r15 + 0x58], rsi
mov r10d, eax
mov rsi, qword [rsp + 0x40]
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14009853b
jmp 0x14009a9f9
mov rax, qword [r15 + 0x38]
lea rdx, [rbp + 0x18]
movzx ebx, byte [rax + 3]
mov rax, qword [rsp + 0x38]
and bl, 2
setne r12b
test dil, 1
mov ecx, dword [rax + 0x10]
mov rax, qword [r15 + 0x40]
mov qword [rbp + 0x18], rax
mov eax, r10d
mov word [rbp + 0x28], cx
mov ecx, 0xffffffff
cmovne eax, ecx
xor r9d, r9d
mov byte [rbp + 0x2a], al
xor r8d, r8d
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov byte [rbp + 0x2e], 0
lea rax, [rsp + 0x74]
add rcx, r14
mov qword [rsp + 0x20], rax
mov qword [rbp + 0x20], rcx
mov rcx, qword [r15 + 0x38]
call fcn.14005f010
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009853b
test bl, bl
je 0x14009a9f9
cmp byte [rbp + 0x2e], al
je 0x14009a8f3
mov eax, dword [rsp + 0x74]
cmp edi, 0x18
jl 0x14009aaa6
test eax, eax
js 0x14009aa1e
jne 0x14009aa11
cmp edi, 0x19
je 0x14009aa1e
xor r11d, r11d
mov dword [rsp + 0x74], r11d
jmp 0x14009ab08
mov rcx, qword [r15 + 0x38]
xor eax, eax
xor r15d, r15d
mov dword [rsp + 0x74], eax
mov word [rcx + 0x46], r15w
and byte [rcx + 1], 0xf9
cmp byte [rcx], al
je 0x14009aa3f
call fcn.14002b780
jmp 0x14009aa74
movzx r8d, word [rcx + 0x56]
mov rdx, qword [rcx + 0x88]
lea eax, [r8 + 1]
mov word [rcx + 0x56], ax
cmp ax, word [rdx + 0x18]
jb 0x14009aa65
mov word [rcx + 0x56], r8w
call fcn.14002b780
jmp 0x14009aa74
cmp byte [rdx + 8], r15b
jne 0x14009ab00
call fcn.1400458f0
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
je 0x14009ab05
cmp eax, 0x65
jne 0x14009853e
mov r12, qword [rsp + 0x38]
mov r10d, 1
mov dword [rsp + 0x74], r10d
mov dword [rsp + 0x30], r15d
jmp 0x14009ad16
test eax, eax
jg 0x14009aac9
jne 0x14009aab1
cmp edi, 0x16
je 0x14009aac9
mov rax, qword [r15 + 0x38]
xor r11d, r11d
mov ecx, r11d
cmp byte [rax], cl
setne cl
mov dword [rsp + 0x74], ecx
jmp 0x14009a8f6
mov rcx, qword [r15 + 0x38]
xor eax, eax
xor r15d, r15d
mov dword [rsp + 0x74], eax
and byte [rcx + 1], 0xf1
mov word [rcx + 0x46], r15w
cmp byte [rcx], al
jne 0x14009ab2b
movzx edx, word [rcx + 0x56]
test dx, dx
je 0x14009ab2b
mov rax, qword [rcx + 0x88]
cmp byte [rax + 8], r15b
je 0x14009ab2b
dec dx
mov word [rcx + 0x56], dx
mov dword [rsp + 0x30], r15d
xor r11d, r11d
mov rsi, qword [rsp + 0x40]
mov r14, qword [rsp + 0x60]
test r12d, r12d
je 0x14009b96a
add qword [rsp + 0x38], 0x18
mov rbx, qword [rsp + 0x50]
jmp 0x14009a801
call fcn.14002bfc0
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
je 0x14009ab05
cmp eax, 0x65
jmp 0x14009aa86
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 0x1c]
mov rax, qword [r13 + 0x78]
mov rsi, qword [rax + rcx*8]
mov rax, qword [rsi + 0x38]
cmp byte [rax], 0
jne 0x14009e957
mov rcx, qword [rsp + 0x38]
mov r12d, 0x2400
mov rax, qword [rsi + 0x40]
mov qword [rbp + 0x178], rax
mov byte [rbp + 0x18a], 0
movzx eax, word [rcx + 0x28]
mov edi, dword [rcx + 4]
mov word [rbp + 0x188], ax
movsxd rax, dword [rcx + 0x24]
imul rcx, rax, 0x38
add rcx, r14
mov qword [rbp + 0x180], rcx
xor r15d, r15d
mov rbx, qword [rsi + 0x38]
mov rcx, rbx
call fcn.140040e90
mov ecx, dword [rbx + 0x40]
lea rax, [rcx - 1]
cmp rax, 0x7ffffffe
ja 0x14009eccd
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0xf8], rax
mov word [rbp + 0xd8], r15w
mov dword [rbp + 0xf0], r15d
mov rax, qword [rbx + 0x88]
movzx edx, word [rbx + 0x44]
mov r8d, dword [rax + 0x58]
sub r8d, dword [rbx + 0x38]
cmp edx, r8d
jle 0x14009abfd
test r8d, r8d
mov edx, r8d
cmovs edx, r15d
mov rax, qword [rbx + 0x38]
mov qword [rbp + 0xe0], rax
cmp ecx, edx
ja 0x14009ac20
mov edx, 0x1010
mov dword [rbp + 0xdc], ecx
mov word [rbp + 0xd8], dx
jmp 0x14009ac50
mov r8d, ecx
lea r9, [rbp + 0xd0]
mov rcx, rbx
xor edx, edx
call fcn.1400a1a00
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009b393
mov rax, qword [rbp + 0xe0]
mov ecx, dword [rbp + 0xdc]
xor r9d, r9d
lea r8, [rbp + 0x178]
mov rdx, rax
call fcn.1400a2f70
mov ebx, eax
test word [rbp + 0xd8], r12w
jne 0x14009ac77
cmp dword [rbp + 0xf0], r15d
je 0x14009ac83
lea rcx, [rbp + 0xd0]
call fcn.1400b6ec0
mov dword [rsp + 0x30], r15d
test ebx, ebx
jg 0x14009ad02
je 0x14009e16b
test edi, edi
jle 0x14009b953
mov rcx, qword [rsi + 0x38]
dec edi
mov word [rcx + 0x46], r15w
and byte [rcx + 1], 0xf9
cmp byte [rcx], r15b
je 0x14009acb5
call fcn.14002b780
jmp 0x14009acea
movzx r8d, word [rcx + 0x56]
mov rdx, qword [rcx + 0x88]
lea eax, [r8 + 1]
mov word [rcx + 0x56], ax
cmp ax, word [rdx + 0x18]
jb 0x14009acdb
mov word [rcx + 0x56], r8w
call fcn.14002b780
jmp 0x14009acea
cmp byte [rdx + 8], r15b
jne 0x14009aba1
call fcn.1400458f0
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
je 0x14009aba1
cmp eax, 0x65
jne 0x14009b393
mov r12, qword [rsp + 0x38]
add r12, 0x18
mov dword [rsp + 0x30], r15d
mov r10d, 1
xor r11d, r11d
mov rbx, qword [rsp + 0x50]
mov eax, dword [r12 + 8]
mov r9d, 0x2400
mov r14, qword [rsp + 0x60]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea rsi, [rbx + rcx*8]
mov qword [rsp + 0x38], rsi
mov r12, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
jmp 0x140097ea2
mov rax, qword [rsp + 0x38]
mov r12, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rsp + 0x38]
movzx ecx, word [rdx + 0xc]
mov eax, dword [rax + 8]
cmp ecx, eax
jge 0x14009ad7d
mov word [rdx + 0xc], ax
jmp 0x140097ea8
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0xc]
cmp ecx, eax
jle 0x140097ea8
mov word [rdx + 0xc], ax
jmp 0x140097ea8
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
cmp qword [rax + rcx*8], 0
je case.0x1400971b5.11
mov r12, qword [rsp + 0x38]
jmp case.0x1400971b5.86
mov rax, qword [rsp + 0x38]
mov r12, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
movzx eax, word [rcx + 0xc]
cmp eax, dword [r12 + 0x10]
jge case.0x1400971b5.86
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov r14, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 0xc]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x60]
cmp dword [rcx + 0x10], 0
jle 0x14009ae32
mov rax, qword [r14 + 0x40]
lea rsi, [rbp + 0x1f0]
mov qword [rbp + 0x1f0], rax
xor r15d, r15d
movzx eax, word [rcx + 0x10]
mov edi, r15d
mov word [rbp + 0x200], ax
mov qword [rbp + 0x1f8], rbx
jmp 0x14009ae84
mov eax, 0x4000
test word [rbx + 8], ax
je 0x14009ae4d
mov rcx, rbx
call fcn.1400a1890
test eax, eax
jne 0x14009f12f
mov rcx, qword [r14 + 0x40]
call fcn.140095fe0
mov rsi, rax
mov rdi, rax
test rax, rax
je 0x14009f12a
mov r8, qword [rbx + 0x10]
mov r9, rax
mov edx, dword [rbx + 0xc]
mov rcx, qword [r14 + 0x40]
call fcn.1400a3820
mov rcx, qword [rsp + 0x38]
xor r15d, r15d
lea r10d, [r15 + 1]
mov byte [rsi + 0x12], 0
mov ebx, r15d
cmp byte [rcx], 0x1c
jne 0x14009aebd
movzx eax, word [rsi + 0x10]
mov rcx, r15
cmp r15w, ax
jae 0x14009aebd
mov edx, eax
mov rax, qword [rsi + 8]
add rax, 8
test byte [rax], 1
jne 0x14009aeba
inc rcx
add rax, 0x38
cmp rcx, rdx
jl 0x14009aea7
jmp 0x14009aebd
mov ebx, r10d
mov rcx, qword [r14 + 0x38]
lea rax, [rbp - 0xc]
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, rsi
call fcn.14005f010
mov rsi, qword [rsp + 0x40]
mov r10d, eax
mov dword [rsp + 0x30], eax
test rdi, rdi
je 0x14009af4e
cmp qword [rsi + 0x2e0], 0
je 0x14009af00
mov rdx, rdi
mov rcx, rsi
call fcn.140045520
jmp 0x14009af49
cmp rdi, qword [rsi + 0x1d0]
jae 0x14009af41
cmp rdi, qword [rsi + 0x1c0]
jb 0x14009af25
mov rax, qword [rsi + 0x1b8]
mov qword [rdi], rax
mov qword [rsi + 0x1b8], rdi
jmp 0x14009af4e
cmp rdi, qword [rsi + 0x1c8]
jb 0x14009af41
mov rax, qword [rsi + 0x1a8]
mov qword [rdi], rax
mov qword [rsi + 0x1a8], rdi
jmp 0x14009af4e
mov rcx, rdi
call fcn.140015cb0
mov r10d, dword [rsp + 0x30]
test r10d, r10d
jne 0x14009853e
mov eax, dword [rbp - 0xc]
mov ecx, r15d
test eax, eax
mov dword [r14 + 0x2c], eax
sete cl
test eax, eax
setne al
mov byte [r14 + 2], al
mov rax, qword [rsp + 0x38]
mov byte [r14 + 3], r10b
mov dword [r14 + 0x28], r15d
movzx eax, byte [rax]
cmp al, 0x1e
jne 0x14009afa2
mov r12, qword [rsp + 0x38]
xor r11d, r11d
test ecx, ecx
jne 0x14009e173
mov r14, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x50]
jmp 0x14009a806
test ebx, ebx
jne 0x14009e16b
test ecx, ecx
je 0x14009e16b
mov r12, qword [rsp + 0x38]
xor r11d, r11d
cmp al, 0x1b
jne 0x14009b944
mov rbx, qword [rsp + 0x50]
mov rax, r12
movzx eax, word [rax + 0x10]
mov word [r14 + 0xc], ax
mov r14, qword [rsp + 0x60]
jmp 0x14009a806
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, r14
test byte [rcx + 8], 0x24
jne case.0x1400971b5.32
movups xmm2, xmmword [rcx]
movups xmmword [rbp + 0x108], xmm2
movups xmm0, xmmword [rcx + 0x10]
psrldq xmm2, 8
movups xmmword [rbp + 0x118], xmm0
movups xmm1, xmmword [rcx + 0x20]
movd edx, xmm2
movups xmmword [rbp + 0x128], xmm1
movsd xmm0, qword [rcx + 0x30]
movsd qword [rbp + 0x138], xmm0
test dl, 4
jne 0x14009b0bc
test dl, 8
jne 0x14009b058
test dl, 2
je 0x14009b0b3
mov edx, r10d
lea rcx, [rbp + 0x108]
call fcn.140027690
xor r11d, r11d
lea r10d, [r11 + 1]
jmp 0x14009b0ac
movsd xmm3, qword [rbp + 0x108]
movaps xmm0, xmm3
call fcn.140035270
xorps xmm2, xmm2
cvtsi2sd xmm2, rax
ucomisd xmm3, xmm2
jp 0x14009b0b3
jne 0x14009b0b3
movabs rcx, 0x7fffffffffffffff
add rcx, rax
cmp rcx, 0xfffffffffffffffd
ja 0x14009b0b3
mov qword [rbp + 0x108], rax
mov ecx, 0x3e40
movzx eax, word [rbp + 0x110]
and ax, cx
or ax, 4
mov word [rbp + 0x110], ax
movzx edx, byte [rbp + 0x110]
test dl, 4
je 0x1400971f3
mov rdi, qword [rbp + 0x108]
jmp 0x14009b0d6
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov rdi, qword [rcx + r14]
mov rax, qword [rsp + 0x38]
xor r15d, r15d
xor r9d, r9d
mov dword [rbp - 0x40], r15d
mov r8, rdi
xor edx, edx
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
lea rax, [rbp - 0x40]
mov qword [rsp + 0x20], rax
mov rcx, qword [rbx + 0x38]
call fcn.14005f010
mov qword [rbx + 0x58], rdi
mov r10d, eax
mov byte [rbx + 2], r15b
mov dword [rbx + 0x28], r15d
mov dword [rsp + 0x30], eax
mov eax, dword [rbp - 0x40]
mov byte [rbx + 3], r15b
mov dword [rbx + 0x2c], eax
test eax, eax
je 0x14009b176
mov r12, qword [rsp + 0x38]
cmp dword [r12 + 8], r15d
jne 0x14009ad10
lea r14, [0x140296c64]
mov r9d, 0x16504
lea r8, str.database_corruption
mov qword [rsp + 0x20], r14
lea rdx, str._s_at_line__d_of___.10s_
lea ecx, [r15 + 0xb]
call fcn.140023080
mov r10d, recv
lea edi, [r15 + 1]
mov dword [rsp + 0x30], r10d
jmp 0x14009854a
test r10d, r10d
jne 0x14009853e
mov r12, qword [rsp + 0x38]
jmp 0x140097e8e
mov rdi, qword [rsp + 0x38]
movsxd rax, dword [rdi + 8]
imul rdx, rax, 0x38
add rdx, qword [r13 + 0x68]
test word [rdx + 8], r9w
je 0x14009b1c1
mov rcx, rdx
call fcn.140049180
xor r11d, r11d
mov rdx, rax
mov r9d, 0x2400
mov r8d, 0x1000
lea r10d, [r11 + 1]
jmp 0x14009b1ca
mov eax, 4
mov word [rdx + 8], ax
mov rax, qword [r13 + 0x78]
mov r12, rdi
movsxd rcx, dword [rdi + 4]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x18]
mov qword [rdx], rax
mov rax, rdi
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
inc qword [rdx + 0x18]
jmp 0x140097ea8
mov rsi, qword [rsp + 0x38]
xor r15d, r15d
mov ebx, r15d
mov dword [rbp - 0x58], r15d
mov qword [rbp - 0x48], rbx
movsxd rax, dword [rsi + 8]
imul r14, rax, 0x38
add r14, qword [r13 + 0x68]
test word [r14 + 8], r9w
je 0x14009b22b
mov rcx, r14
call fcn.140049180
mov r14, rax
jmp 0x14009b235
mov eax, 4
mov word [r14 + 8], ax
movsxd rcx, dword [rsi + 4]
mov rax, qword [r13 + 0x78]
mov rsi, qword [rax + rcx*8]
test byte [rsi + 8], 2
jne 0x14009b273
mov rcx, qword [rsi + 0x38]
lea rdx, [rbp - 0x58]
call fcn.14005ef90
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009b393
cmp dword [rbp - 0x58], ebx
je 0x14009b2b9
mov eax, 1
mov ebx, eax
mov qword [rbp - 0x48], rax
movabs r12, 0x7fffffffffffffff
mov rax, qword [rsp + 0x38]
movsxd rdx, dword [rax + 0xc]
test edx, edx
je 0x14009b323
mov rcx, qword [r13 + 0x100]
test rcx, rcx
je 0x14009b2eb
mov rax, qword [rcx + 8]
test rax, rax
je 0x14009b2af
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x14009b2a3
imul rdi, rdx, 0x38
add rdi, qword [rcx + 0x20]
jmp 0x14009b2f4
mov rbx, qword [rsi + 0x38]
mov rcx, rbx
call fcn.140040e90
mov rbx, qword [rbx + 0x30]
movabs r12, 0x7fffffffffffffff
mov qword [rbp - 0x48], rbx
cmp rbx, r12
jl 0x14009b2e2
or dword [rsi + 8], 2
jmp 0x14009b27d
inc rbx
mov qword [rbp - 0x48], rbx
jmp 0x14009b27d
imul rdi, rdx, 0x38
add rdi, qword [rsp + 0x60]
mov rcx, rdi
call fcn.1400a1d70
mov rax, qword [rdi]
cmp rax, r12
je 0x14009b388
test byte [rsi + 8], 2
jne 0x14009b388
inc rax
cmp rbx, rax
cmovl rbx, rax
mov qword [rbp - 0x48], rbx
mov qword [rdi], rbx
test byte [rsi + 8], 2
je 0x14009b39d
mov edi, r15d
nop dword [rax]
lea rdx, [rbp - 0x48]
mov ecx, 8
call fcn.140015e40
mov rbx, qword [rbp - 0x48]
movabs rax, 0x3fffffffffffffff
mov rcx, qword [rsi + 0x38]
and rbx, rax
inc rbx
lea rax, [rbp - 0x58]
mov r8, rbx
mov qword [rbp - 0x48], rbx
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor edx, edx
call fcn.14005f010
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009b393
cmp dword [rbp - 0x58], r15d
jne 0x14009b39d
inc edi
cmp edi, 0x64
jl 0x14009b330
mov r10d, recv
mov dword [rsp + 0x30], r10d
mov rsi, qword [rsp + 0x40]
jmp 0x14009853e
mov byte [rsi + 3], r15b
mov dword [rsi + 0x28], r15d
mov qword [r14], rbx
jmp 0x140097e7f
mov rdi, qword [rsp + 0x38]
movsxd rax, dword [rdi + 8]
movsxd rcx, dword [rdi + 4]
imul rdx, rax, 0x38
mov rax, qword [r13 + 0x78]
add rdx, r14
mov rbx, qword [rax + rcx*8]
movsxd rax, dword [rdi + 0xc]
imul rcx, rax, 0x38
mov r8, qword [rcx + r14]
mov qword [rbp + 0x1c8], r8
cmp byte [rdi + 1], 0xfa
jne 0x14009b406
cmp qword [rsi + 0x138], 0
je 0x14009b406
movsx rcx, byte [rbx + 1]
mov rax, qword [rsi + 0x20]
mov rdi, qword [rdi + 0x10]
shl rcx, 5
xor r15d, r15d
mov rsi, qword [rcx + rax]
jmp 0x14009b40f
xor r15d, r15d
mov edi, r15d
mov esi, r15d
mov rcx, qword [rsp + 0x38]
movzx eax, word [rcx + 2]
test al, 1
je 0x14009b42b
inc dword [r13 + 0x3c]
movzx eax, word [rcx + 2]
mov r8, qword [rbp + 0x1c8]
test al, 0x20
je 0x14009b438
mov rax, qword [rsp + 0x40]
mov qword [rax + 0x38], r8
mov rax, qword [rdx + 0x10]
mov qword [rbp + 0x1d0], rax
mov eax, dword [rdx + 0xc]
mov dword [rbp + 0x1e4], eax
test byte [rcx + 2], 0x10
je 0x14009b458
mov r9d, dword [rbx + 0x2c]
jmp 0x14009b45b
mov r9d, r15d
mov eax, 0x4000
test word [rdx + 8], ax
je 0x14009b470
mov eax, dword [rdx]
mov dword [rbp + 0x1e8], eax
jmp 0x14009b477
mov dword [rbp + 0x1e8], r15d
mov qword [rbp + 0x1c0], r15
lea rdx, [rbp + 0x1c0]
movzx r8d, word [rcx + 2]
mov rcx, qword [rbx + 0x38]
and r8d, 0x8a
call fcn.14005e380
mov byte [rbx + 3], 0
mov r10d, eax
mov dword [rsp + 0x30], eax
mov dword [rbx + 0x28], r15d
test eax, eax
jne 0x14009b393
test rdi, rdi
je 0x14009b953
mov rax, qword [rsp + 0x38]
mov r8, rsi
mov rcx, qword [rbp + 0x1c8]
mov edx, send
mov rsi, qword [rsp + 0x40]
mov r9, qword [rdi]
test byte [rax + 2], 4
mov eax, 0x17
mov qword [rsp + 0x20], rcx
mov rcx, qword [rsi + 0x130]
cmovne edx, eax
mov rax, qword [rsi + 0x138]
call qword [case.0x14007d279.0]
mov r12, qword [rsp + 0x38]
jmp 0x140097e8e
mov rdi, qword [rsp + 0x38]
mov rcx, qword [r13 + 0x78]
movsxd rax, dword [rdi + 4]
mov r9, qword [rcx + rax*8]
movsxd rax, dword [rdi + 8]
mov rdx, qword [rcx + rax*8]
mov rax, rdi
movsxd rax, dword [rax + 0xc]
test eax, eax
je 0x14009b536
imul rcx, rax, 0x38
xor r15d, r15d
mov r8, qword [rcx + r14]
jmp 0x14009b53c
xor r15d, r15d
mov r8d, r15d
mov rdx, qword [rdx + 0x38]
mov rcx, qword [r9 + 0x38]
call fcn.140060730
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009853e
mov r12, rdi
jmp 0x140097e93
mov rax, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
cmp byte [rdx + 1], 0xfa
mov r15d, dword [rax + 8]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
jne 0x14009b5cb
cmp qword [rsi + 0x138], 0
je 0x14009b5cb
mov rax, qword [rsi + 0x20]
movsx rcx, byte [rdi + 1]
mov rsi, qword [rdx + 0x10]
shl rcx, 5
test byte [rdx + 2], 2
mov r14, qword [rcx + rax]
je 0x14009b5d1
cmp byte [rdi + 4], 0
je 0x14009b5d1
mov rbx, qword [rdi + 0x38]
mov rcx, rbx
call fcn.140040e90
mov rax, qword [rbx + 0x30]
mov rdx, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x50]
mov qword [rdi + 0x58], rax
jmp 0x14009b5d1
mov r14, r11
mov rsi, r11
movzx edx, byte [rdx + 2]
mov rcx, qword [rdi + 0x38]
call fcn.14005dd60
xor r11d, r11d
mov dword [rsp + 0x30], eax
mov dword [rdi + 0x28], r11d
mov r10d, eax
mov dword [rdi + 0x2c], r11d
test eax, eax
jne 0x14009b808
test r15b, 1
je 0x14009b93a
inc dword [r13 + 0x3c]
mov rax, qword [rsp + 0x40]
mov rax, qword [rax + 0x138]
test rax, rax
je 0x14009b93a
test byte [rsi + 0x40], 0x80
jne 0x14009b93a
mov rcx, qword [rdi + 0x58]
lea edx, [r10 + 9]
mov r9, qword [rsi]
mov r8, r14
mov rsi, qword [rsp + 0x40]
mov qword [rsp + 0x20], rcx
mov rcx, qword [rsi + 0x130]
call qword [case.0x14007d279.0]
mov r12, qword [rsp + 0x38]
mov r14, qword [rsp + 0x60]
jmp 0x140097e93
mov eax, dword [r13 + 0x3c]
mov dword [rsi + 0x78], eax
add dword [rsi + 0x7c], eax
mov dword [r13 + 0x3c], r11d
jmp case.0x1400971b5.86
mov rdi, qword [rsp + 0x38]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [rdi + 4]
mov rdx, qword [rax + rcx*8]
movsxd rax, dword [rdi + 0xc]
mov edi, dword [rdi + 0x10]
imul r15, rax, 0x38
mov rbx, qword [rdx + 0x38]
mov rsi, qword [rdx + 0x40]
add r15, r14
mov r14, qword [rbx + 0x30]
test r14, r14
jne 0x14009b6b8
mov rcx, rsi
call fcn.140095fe0
mov qword [rbx + 0x30], rax
mov r14, rax
test rax, rax
je 0x14009b7fd
mov word [rax + 0x10], di
cmp byte [rbx + 0x58], 0
je 0x14009b6f4
cmp byte [rbx + 0x59], 0
je 0x14009b6d2
mov rax, qword [rbx + 0x10]
mov r8, qword [rax + 0x28]
add rax, 0x14
jmp 0x14009b6fc
mov rdx, qword [rbx + 0x18]
mov rax, qword [rdx + 0x10]
movsxd rcx, dword [rax + 4]
lea rax, [rcx + rcx*4]
shl rax, 4
add rax, qword [rdx + 0x18]
mov r8, qword [rax + 0x28]
add rax, 0x14
jmp 0x14009b6fc
mov rax, qword [rbx + 0x38]
lea r8, [rax + 0x10]
mov edx, dword [rax]
mov r9, r14
mov rcx, rsi
call fcn.1400a3820
xor r11d, r11d
mov ecx, r11d
test edi, edi
jle 0x14009b72f
mov rax, qword [r14 + 8]
add rax, 8
nop dword [rax + rax]
test byte [rax], 1
jne 0x14009b76b
inc ecx
add rax, 0x38
cmp ecx, edi
jl 0x14009b720
mov rdx, qword [r15 + 0x10]
xor r9d, r9d
mov ecx, dword [r15 + 0xc]
mov r8, r14
call fcn.1400a2f70
mov r12, qword [rsp + 0x38]
xor r11d, r11d
mov dword [rsp + 0x30], r11d
test eax, eax
jne 0x14009e173
mov rsi, qword [rsp + 0x40]
mov r14, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x50]
jmp 0x14009a806
mov r12, qword [rsp + 0x38]
mov r10d, 1
mov dword [rsp + 0x30], r11d
jmp 0x14009ad19
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 8]
movsxd rcx, dword [rcx + 4]
imul rbx, rax, 0x38
mov rax, qword [r13 + 0x78]
add rbx, r14
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x38]
cmp byte [rax + 0x58], 0
je 0x14009b7dc
cmp byte [rax + 0x59], 0
je 0x14009b7ba
mov rax, qword [rax + 0x10]
mov rsi, qword [rax + 0x28]
add rax, 0x14
jmp 0x14009b7e4
mov rdx, qword [rax + 0x18]
mov rax, qword [rdx + 0x10]
movsxd rcx, dword [rax + 4]
lea rax, [rcx + rcx*4]
shl rax, 4
add rax, qword [rdx + 0x18]
mov rsi, qword [rax + 0x28]
add rax, 0x14
jmp 0x14009b7e4
mov rax, qword [rax + 0x38]
lea rsi, [rax + 0x10]
movsxd rdi, dword [rax]
cmp dword [rbx + 0x20], edi
jge 0x14009b812
xor r8d, r8d
mov edx, edi
mov rcx, rbx
call fcn.1400a1b70
test eax, eax
je 0x14009b81f
mov r10d, 7
mov dword [rsp + 0x30], r10d
mov rsi, qword [rsp + 0x40]
jmp 0x14009853b
mov rax, qword [rbx + 0x18]
mov qword [rbx + 0x10], rax
and word [rbx + 8], 0x2d
mov dword [rbx + 0xc], edi
mov eax, 0x3e40
and word [rbx + 8], ax
mov r8, rdi
or word [rbx + 8], 0x10
mov rdx, rsi
mov rcx, qword [rbx + 0x10]
call fcn.1400d1770
mov rax, qword [rsp + 0x38]
xor r11d, r11d
mov rsi, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x50]
mov dword [rsp + 0x30], r11d
movsxd rcx, dword [rax + 0xc]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov dword [rcx + 0x28], r11d
jmp 0x14009a801
mov rdi, qword [rsp + 0x38]
movsxd rax, dword [rdi + 8]
imul rbx, rax, 0x38
add rbx, qword [r13 + 0x68]
test word [rbx + 8], r9w
je 0x14009b890
mov rcx, rbx
call fcn.140049180
mov rbx, rax
jmp 0x14009b899
mov eax, 4
mov word [rbx + 8], ax
movsxd rcx, dword [rdi + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rdi, qword [rcx + 0x38]
mov rcx, rdi
call fcn.140040e90
mov edx, dword [rdi + 0x40]
cmp edx, dword [rsi + 0x80]
ja 0x14009eedd
mov r8, rbx
mov rcx, rdi
call fcn.1400a1b10
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009853b
mov r12, qword [rsp + 0x38]
cmp dword [r12 + 0xc], eax
jne 0x14009b95d
movzx eax, word [rbx + 8]
bt ax, 0xc
jae 0x14009b95d
test al, 0x12
je 0x14009b92c
bt ax, 0xe
jae 0x14009b90c
mov rcx, rbx
call fcn.1400a1890
test eax, eax
jne 0x14009f12f
cmp dword [rbx + 0x20], 0
je 0x14009b91c
mov rax, qword [rbx + 0x18]
cmp qword [rbx + 0x10], rax
je 0x14009b92c
mov rcx, rbx
call fcn.1400b6e60
test eax, eax
jne 0x14009f12f
mov eax, 0xefff
and word [rbx + 8], ax
jmp 0x140097e8e
mov rsi, qword [rsp + 0x40]
mov r12, qword [rsp + 0x38]
mov r14, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x50]
jmp 0x14009a806
mov rsi, qword [rsp + 0x40]
mov r12, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x50]
xor r11d, r11d
jmp 0x14009a806
mov r12, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x50]
jmp 0x14009a806
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rdi, rax, 0x38
add rdi, qword [r13 + 0x68]
test word [rdi + 8], r9w
je 0x14009b9b8
mov rcx, rdi
call fcn.140049180
xor r11d, r11d
lea rdx, [0x140000000]
mov rdi, rax
mov r9d, 0x2400
mov r8d, 0x1000
lea r10d, [r11 + 1]
jmp 0x14009b9c1
mov eax, 4
mov word [rdi + 8], ax
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
cmp byte [rbx + 2], 0
je 0x14009b9ec
mov r12, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x50]
mov word [rdi + 8], r10w
jmp case.0x1400971b5.86
cmp byte [rbx + 3], 0
je 0x14009ba07
mov rax, qword [rbx + 0x58]
mov r12, qword [rsp + 0x38]
mov qword [rbp], rax
mov qword [rdi], rax
jmp 0x140097e8e
cmp byte [rbx], 2
mov rcx, qword [rbx + 0x38]
jne 0x14009ba52
mov rbx, qword [rcx]
lea rdx, [rbp]
mov rax, qword [rbx]
mov rax, qword [rax + 0x60]
call qword [case.0x14007d279.0]
mov rdx, rbx
mov rcx, r13
mov dword [rsp + 0x30], eax
call fcn.1400a5800
mov r10d, dword [rsp + 0x30]
test r10d, r10d
jne 0x14009853b
mov rax, qword [rbp]
mov r12, qword [rsp + 0x38]
mov qword [rdi], rax
jmp 0x140097e8e
cmp byte [rcx], 0
je 0x14009ba73
mov rcx, rbx
call fcn.140041a70
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009853b
xor r11d, r11d
jmp 0x14009ba78
mov dword [rsp + 0x30], r11d
cmp byte [rbx + 2], 0
je 0x14009ba9e
mov r12, qword [rsp + 0x38]
mov r10d, 1
mov rbx, qword [rsp + 0x50]
mov r9d, 0x2400
mov word [rdi + 8], r10w
jmp 0x140097ea2
mov rbx, qword [rbx + 0x38]
mov rcx, rbx
call fcn.140040e90
mov rax, qword [rbx + 0x30]
mov r12, qword [rsp + 0x38]
mov qword [rbp], rax
mov qword [rdi], rax
jmp 0x140097e8e
mov rax, qword [rsp + 0x38]
xor r15d, r15d
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
mov byte [rbx + 2], 1
mov dword [rbx + 0x28], r15d
cmp byte [rbx], r15b
jne 0x14009c1dd
mov rbx, qword [rbx + 0x38]
mov rcx, qword [rbx + 0x18]
call fcn.140015cb0
mov r12, qword [rsp + 0x38]
mov qword [rbx + 0x18], r15
mov byte [rbx], 1
jmp 0x140097e8e
mov rax, qword [rsp + 0x38]
xor r15d, r15d
mov dword [rbp - 0x3c], r15d
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rbx + 0x38]
cmp dil, 0x85
jne 0x14009bb44
mov dword [rbx + 0x2c], 0xffffffff
cmp byte [rcx], r15b
jne 0x14009bb44
mov r12, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x50]
jmp 0x140097e9f
lea rdx, [rbp - 0x3c]
call fcn.14005ef90
mov r10d, eax
mov dword [rsp + 0x30], eax
mov eax, dword [rbp - 0x3c]
mov byte [rbx + 2], al
mov byte [rbx + 3], r15b
mov dword [rbx + 0x28], r15d
test r10d, r10d
jne 0x14009853e
mov r12, qword [rsp + 0x38]
cmp dword [r12 + 8], r15d
jle 0x140097e8e
test eax, eax
je 0x140097e8e
xor r11d, r11d
lea r10d, [r11 + 1]
jmp 0x14009ad19
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rbx, qword [rcx + 0x38]
mov rcx, rbx
call fcn.140045b90
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009bbce
xor r15d, r15d
mov rcx, rbx
mov edi, r15d
call fcn.1400458f0
mov r10d, eax
mov dword [rsp + 0x30], eax
jmp 0x14009bbf5
cmp eax, 0x10
jne 0x14009bbef
mov r12, qword [rsp + 0x38]
mov r10d, 1
xor r11d, r11d
mov dword [rbp - 0x60], r10d
mov dword [rsp + 0x30], r11d
jmp 0x14009ad19
mov edi, dword [rbp - 0x60]
xor r15d, r15d
mov dword [rbp - 0x60], edi
mov r11d, r10d
test r10d, r10d
jne 0x14009853e
mov dword [rsp + 0x30], r10d
test edi, edi
jne 0x14009e16b
mov rcx, rbx
call fcn.140060050
test rax, rax
js 0x14009bc49
mov rcx, rax
call fcn.14007cee0
mov r12, qword [rsp + 0x38]
movsx ecx, ax
cmp ecx, dword [r12 + 0xc]
jge 0x14009bc4e
mov r10d, 1
mov dword [rsp + 0x30], r11d
mov dword [rbp - 0x60], r10d
jmp 0x14009ad16
mov r12, qword [rsp + 0x38]
mov dword [rbp - 0x60], edi
mov dword [rsp + 0x30], r11d
jmp 0x140097e8e
inc dword [r13 + 0xdc]
mov rax, qword [rsp + 0x38]
mov edi, r10d
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rsi, qword [rax + rcx*8]
cmp byte [rsi], 1
mov rbx, qword [rsi + 0x38]
jne 0x14009bcd4
xor r15d, r15d
mov dword [rsp + 0x30], r15d
cmp byte [rbx + 0x58], r15b
jne 0x14009bca9
cmp qword [rbx + 0x38], r15
lea rdx, [rbx + 0x38]
je 0x14009bd0d
lea rcx, [rbx + 0x60]
mov edi, r15d
call fcn.1400ba0c0
mov dword [rsp + 0x30], eax
jmp 0x14009bd0d
mov rcx, rbx
call fcn.1400b8cd0
mov edx, eax
mov rcx, rbx
call fcn.1400b8e40
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14009bd0d
mov rcx, rbx
call fcn.1400b9aa0
mov dword [rsp + 0x30], eax
mov edi, r15d
jmp 0x14009bd0d
mov rcx, rbx
call fcn.140045b90
xor r15d, r15d
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14009bcf8
mov rcx, rbx
mov edi, r15d
call fcn.1400458f0
mov dword [rsp + 0x30], eax
jmp 0x14009bd05
cmp eax, 0x10
jne 0x14009bd05
lea edi, [rax - 0xf]
mov dword [rsp + 0x30], r15d
mov byte [rsi + 3], 0
mov dword [rsi + 0x28], r15d
mov r10d, dword [rsp + 0x30]
test r10d, r10d
jne 0x14009b393
mov r12, qword [rsp + 0x38]
xor r11d, r11d
mov rbx, qword [rsp + 0x50]
mov byte [rsi + 2], dil
lea r10d, [r11 + 1]
test edi, edi
jne 0x14009ad1e
mov rsi, qword [rsp + 0x40]
mov r9d, 0x2400
jmp 0x140097ea2
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
mov rbx, qword [rdi + 0x38]
cmp byte [rbx + 0x58], 0
je 0x14009bdd4
cmp byte [rbx + 0x59], 0
je 0x14009bda1
mov rcx, qword [rbx + 0x10]
call fcn.1400b7c20
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009be0a
mov rax, qword [rbx + 0x10]
cmp qword [rax + 0x18], 0
jne 0x14009be0a
mov rbx, qword [rsp + 0x50]
mov r10d, 0x65
mov dword [rsp + 0x30], r10d
jmp 0x14009be3f
mov rcx, qword [rbx + 0x18]
lea rdx, [rbp - 0x38]
mov dword [rbp - 0x38], r11d
call fcn.1400b7660
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009be0a
cmp dword [rbp - 0x38], eax
je 0x14009be0a
mov rbx, qword [rsp + 0x50]
mov r10d, 0x65
mov dword [rsp + 0x30], r10d
jmp 0x14009be3f
mov rdx, qword [rbx + 0x38]
mov rax, qword [rdx + 8]
mov qword [rbx + 0x38], rax
mov qword [rdx + 8], r11
cmp qword [rbx + 0x40], 0
jne 0x14009bdf6
mov rcx, rsi
call fcn.1400b9980
xor r11d, r11d
cmp qword [rbx + 0x38], 0
mov r10d, 0x65
cmovne r10d, r11d
mov dword [rsp + 0x30], r10d
mov rbx, qword [rsp + 0x50]
jmp 0x14009be3f
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rsp + 0x38]
mov rcx, qword [rdi + 0x38]
mov edx, dword [rax + 0xc]
mov rax, qword [rax + 0x10]
call qword [case.0x14007d279.0]
mov r10d, eax
mov dword [rsp + 0x30], eax
xor r15d, r15d
mov dword [rdi + 0x28], r15d
test r10d, r10d
jne 0x14009be65
mov rax, qword [rsp + 0x38]
mov byte [rdi + 2], r15b
movzx eax, word [rax + 2]
inc dword [r13 + rax*4 + 0xd4]
jmp case.0x1400971b5.11
cmp r10d, 0x65
jne 0x14009853e
mov dword [rsp + 0x30], r15d
mov byte [rdi + 2], 1
jmp 0x140099bea
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rbx, r14
test byte [rcx + 2], 1
je 0x14009bea8
inc dword [r13 + 0x3c]
mov eax, 0x4000
test word [rbx + 8], ax
je 0x14009becf
mov rcx, rbx
call fcn.1400a1890
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009853b
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rbx + 0xc]
xor r15d, r15d
mov qword [rbp + 0x280], rax
mov rax, qword [rbx + 0x10]
mov qword [rbp + 0x278], rax
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
add rcx, r14
mov qword [rbp + 0x290], rcx
mov rcx, qword [rsp + 0x38]
movzx eax, word [rcx + 0x10]
mov word [rbp + 0x298], ax
movzx r8d, word [rcx + 2]
test r8b, 0x10
je 0x14009bf1b
mov r9d, dword [rdi + 0x2c]
jmp 0x14009bf1e
mov r9d, r15d
mov rcx, qword [rdi + 0x38]
lea rdx, [rbp + 0x278]
and r8d, 0x8a
call fcn.14005e380
mov dword [rsp + 0x30], eax
mov r10d, eax
mov dword [rdi + 0x28], r15d
test eax, eax
jne 0x14009853e
mov r12, qword [rsp + 0x38]
jmp 0x140097e8e
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rbx, rax, 0x38
mov eax, 0x4000
add rbx, r14
test word [rbx + 8], ax
je 0x14009bf95
mov rcx, rbx
call fcn.1400a1890
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009853b
mov rdx, rbx
mov rcx, rdi
call fcn.1400a45e0
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009853b
mov r12, qword [rsp + 0x38]
jmp 0x140097e8e
mov rax, qword [rsp + 0x38]
lea rdx, [rbp + 0x1a8]
xor r9d, r9d
xor r8d, r8d
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x38]
mov rax, qword [rbx + 0x40]
mov rdi, qword [rbx + 0x38]
mov qword [rbp + 0x1a8], rax
movzx eax, word [rcx + 0xc]
mov word [rbp + 0x1b8], ax
mov byte [rbp + 0x1ba], 0
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
lea rax, [rbp - 8]
add rcx, r14
mov qword [rsp + 0x20], rax
mov qword [rbp + 0x1b0], rcx
mov rcx, rdi
call fcn.14005f010
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009853b
cmp dword [rbp - 8], eax
jne 0x14009c067
mov dl, 4
mov rcx, rdi
call fcn.14005dd60
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009853b
mov r12, qword [rsp + 0x38]
xor r11d, r11d
mov dword [rbx + 0x28], r11d
mov dword [rbx + 0x2c], r11d
mov rbx, qword [rsp + 0x50]
jmp 0x14009a806
mov r12, qword [rsp + 0x38]
cmp word [r12 + 2], 0
jne 0x14009ed10
xor r11d, r11d
mov dword [rbx + 0x28], r11d
mov dword [rbx + 0x2c], r11d
mov rbx, qword [rsp + 0x50]
jmp 0x14009a806
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x38]
cmp byte [rax], 0
je 0x14009c0db
mov rcx, rbx
call fcn.140041a70
xor r15d, r15d
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009853e
lea r10d, [rax + 1]
mov r9d, 0x2400
lea rdx, [0x140000000]
mov r8d, 0x1000
jmp 0x14009c0e3
xor r15d, r15d
mov dword [rsp + 0x30], r15d
cmp byte [rbx + 2], 0
jne 0x14009c1b2
mov rdx, qword [rbx + 0x38]
lea r8, [rbp + 8]
mov rcx, rsi
mov qword [rbp + 8], r15
call fcn.1400a09d0
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009853e
mov rax, qword [rsp + 0x38]
mov r9d, 0x2400
cmp byte [rax], 0x89
jne 0x14009c15c
movsxd rcx, dword [rax + 0xc]
mov rax, qword [r13 + 0x78]
mov r12, qword [rsp + 0x38]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rbp + 8]
mov byte [rdx + 2], r10b
mov qword [rdx + 0x58], rax
mov rax, qword [rsp + 0x38]
mov byte [rdx + 3], 1
mov rax, qword [rax + 0x10]
mov qword [rdx + 0x20], rax
mov qword [rdx + 0x30], rbx
mov rbx, qword [rsp + 0x50]
jmp 0x140097e99
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
add rcx, qword [r13 + 0x68]
test word [rcx + 8], r9w
je 0x14009c193
call fcn.140049180
mov r12, qword [rsp + 0x38]
mov rcx, rax
mov rax, qword [rbp + 8]
mov r9d, 0x2400
mov rbx, qword [rsp + 0x50]
mov qword [rcx], rax
jmp 0x140097e99
mov r12, qword [rsp + 0x38]
mov eax, 4
mov rbx, qword [rsp + 0x50]
mov word [rcx + 8], ax
mov rax, qword [rbp + 8]
mov qword [rcx], rax
jmp 0x140097e99
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
add rcx, r14
test word [rcx + 8], r9w
je 0x14009c1d8
call fcn.1400b6f90
mov r12, qword [rsp + 0x38]
jmp 0x140097e8e
mov word [rcx + 8], r10w
mov r12, qword [rsp + 0x38]
xor r11d, r11d
mov rbx, qword [rsp + 0x50]
jmp case.0x1400971b5.86
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx + 3], 0
je 0x14009adae
call fcn.14009fe80
jmp 0x14009a73e
mov rax, qword [rsp + 0x38]
cmp dil, 0x28
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x38]
mov rax, qword [rdx + 0x40]
mov rbx, qword [rdx + 0x38]
mov qword [rbp + 0x190], rax
movzx eax, word [rcx + 0x10]
mov word [rbp + 0x1a0], ax
sbb al, al
mov byte [rbp + 0x1a2], al
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
add rcx, r14
mov qword [rbp + 0x198], rcx
mov rcx, rbx
call fcn.140040e90
mov r10d, dword [rbx + 0x40]
lea eax, [r10 - 1]
cmp eax, 0x7ffffffe
ja 0x14009ed52
mov qword [rbp + 0x168], rsi
xor r15d, r15d
mov word [rbp + 0x148], r15w
mov dword [rbp + 0x160], r15d
mov rax, qword [rbx + 0x88]
movzx ecx, word [rbx + 0x44]
mov edx, dword [rax + 0x58]
sub edx, dword [rbx + 0x38]
cmp ecx, edx
jle 0x14009c2b3
test edx, edx
mov ecx, edx
cmovs ecx, r15d
mov rdx, qword [rbx + 0x38]
mov qword [rbp + 0x150], rdx
cmp r10d, ecx
ja 0x14009c2dd
mov eax, 0x1010
mov dword [rbp + 0x14c], r10d
mov word [rbp + 0x148], ax
mov dword [rsp + 0x30], r15d
jmp 0x14009c30e
lea r9, [rbp + 0x140]
mov r8d, r10d
xor edx, edx
mov rcx, rbx
call fcn.1400a1a00
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009853e
mov rdx, qword [rbp + 0x150]
mov r10d, dword [rbp + 0x14c]
xor r9d, r9d
lea r8, [rbp + 0x190]
mov ecx, r10d
call fcn.1400a2f70
mov r9d, 0x2400
mov ebx, eax
test word [rbp + 0x148], r9w
jne 0x14009c33b
cmp dword [rbp + 0x160], r15d
je 0x14009c34d
lea rcx, [rbp + 0x140]
call fcn.1400b6ec0
mov r9d, 0x2400
mov r12, qword [rsp + 0x38]
test byte [r12], 1
jne 0x14009c35d
neg ebx
jmp 0x14009c35f
inc ebx
test ebx, ebx
jg 0x14009e170
mov rbx, qword [rsp + 0x50]
jmp 0x140097e99
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rdi, rax, 0x38
add rdi, qword [r13 + 0x68]
test word [rdi + 8], r9w
je 0x14009c39d
mov rcx, rdi
call fcn.140049180
mov rdi, rax
xor r11d, r11d
mov r10d, 1
mov word [rdi + 8], r10w
mov eax, dword [rsi + 0xe0]
inc eax
cmp dword [rsi + 0xd4], eax
jg 0x14009ed68
mov rax, qword [rsp + 0x38]
mov dword [rbp - 0x34], r11d
movsxd r15, dword [rax + 0xc]
mov esi, dword [rax + 4]
mov r14, r15
mov rax, qword [rsp + 0x40]
shl r14, 5
mov rax, qword [rax + 0x20]
mov rbx, qword [r14 + rax + 8]
cmp byte [rbx + 0x11], 0
je 0x14009c3f2
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x14009c3f2
mov rcx, rbx
call fcn.14002b540
lea r8, [rbp - 0x34]
mov edx, esi
mov rcx, rbx
call fcn.14002ad30
cmp byte [rbx + 0x11], 0
mov r10d, eax
mov dword [rsp + 0x30], eax
je 0x14009c420
sub dword [rbx + 0x14], 1
jne 0x14009c420
mov rcx, rbx
call fcn.1400b3560
mov r10d, dword [rsp + 0x30]
movsxd rdx, dword [rbp - 0x34]
mov eax, 4
mov word [rdi + 8], ax
mov qword [rdi], rdx
test r10d, r10d
jne 0x14009b808
mov rsi, qword [rsp + 0x40]
test edx, edx
je 0x14009cbde
mov rax, qword [rsp + 0x38]
mov r9, qword [rsi + 0x20]
mov r8d, dword [rax + 4]
mov rcx, qword [r14 + r9 + 0x18]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x14009c47b
mov rcx, qword [rax + 0x10]
cmp dword [rcx + 0x38], edx
jne 0x14009c46e
mov dword [rcx + 0x38], r8d
mov rax, qword [rax]
test rax, rax
jne 0x14009c461
mov rcx, qword [r14 + r9 + 0x18]
mov rax, qword [rcx + 0x28]
test rax, rax
je 0x14009c499
mov rcx, qword [rax + 0x10]
cmp dword [rcx + 0x58], edx
jne 0x14009c491
mov dword [rcx + 0x58], r8d
mov rax, qword [rax]
test rax, rax
jne 0x14009c484
lea eax, [r15 + 1]
mov byte [rsp + 0x70], al
jmp 0x140097e84
mov rax, qword [rsp + 0x38]
lea r8, [rbp - 0x54]
mov r12, qword [rsp + 0x38]
xor r15d, r15d
mov dword [rbp - 0x54], r15d
mov rcx, qword [rsi + 0x20]
movsxd rax, dword [rax + 8]
mov edx, dword [r12 + 4]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.14005d4c0
mov r10d, eax
mov dword [rsp + 0x30], eax
cmp dword [r12 + 0xc], r15d
je 0x14009c502
mov eax, dword [rbp - 0x54]
add dword [r13 + 0x3c], eax
mov rax, r12
movsxd rax, dword [rax + 0xc]
test eax, eax
jle 0x14009c502
imul rcx, rax, 0x38
movsxd rax, dword [rbp - 0x54]
add qword [rcx + r14], rax
test r10d, r10d
jne 0x14009853e
jmp 0x140097e93
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx], 1
jne 0x14009c53c
mov rdx, qword [rcx + 0x38]
mov rcx, rsi
call fcn.1400a4330
mov r12, qword [rsp + 0x38]
jmp 0x140097e93
mov rcx, qword [rcx + 0x38]
xor r8d, r8d
mov edx, dword [rcx + 0x50]
mov rcx, qword [rcx + 8]
call fcn.14005d4c0
jmp 0x14009a73e
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rdi, rax, 0x38
add rdi, qword [r13 + 0x68]
test word [rdi + 8], r9w
je 0x14009c579
mov rcx, rdi
call fcn.140049180
mov rdi, rax
jmp 0x14009c582
mov eax, 4
mov word [rdi + 8], ax
mov rax, qword [rsp + 0x38]
xor r15d, r15d
mov dword [rbp - 0x30], r15d
movsxd rcx, dword [rax + 4]
mov esi, dword [rax + 0xc]
mov rax, qword [rsp + 0x40]
shl rcx, 5
mov rax, qword [rax + 0x20]
mov rbx, qword [rcx + rax + 8]
cmp byte [rbx + 0x11], r15b
je 0x14009c5be
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], r15b
jne 0x14009c5be
mov rcx, rbx
call fcn.14002b540
mov r8d, esi
lea rdx, [rbp - 0x30]
mov rcx, rbx
call fcn.14002a7c0
mov r10d, eax
mov dword [rsp + 0x30], eax
cmp byte [rbx + 0x11], r15b
je 0x14009c5ed
sub dword [rbx + 0x14], 1
jne 0x14009c5ed
mov rcx, rbx
call fcn.1400b3560
mov r10d, dword [rsp + 0x30]
mov rsi, qword [rsp + 0x40]
test r10d, r10d
jne 0x14009853e
mov eax, dword [rbp - 0x30]
mov r12, qword [rsp + 0x38]
mov qword [rdi], rax
jmp 0x140097e8e
mov rax, qword [rsp + 0x38]
xor r15d, r15d
inc byte [rsi + 0x6c]
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x20], r15
mov rcx, rsi
mov rdx, qword [rax + 0x10]
call fcn.140013b60
dec byte [rsi + 0x6c]
mov r10d, eax
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14009853e
mov r12, qword [rsp + 0x38]
jmp 0x140097e93
mov rax, qword [rsp + 0x38]
cmp qword [rax + 0x10], 0
movsxd rbx, dword [rax + 4]
jne 0x14009c6a8
mov rcx, qword [rsi + 0x20]
mov rax, rbx
shl rax, 5
mov rcx, qword [rax + rcx + 0x18]
call fcn.140089f90
mov rax, qword [rsp + 0x38]
lea r8, [r13 + 0xa8]
and dword [rsi + 0x2c], 0xffffffef
mov edx, ebx
mov rcx, rsi
movzx r9d, word [rax + 2]
call fcn.140078de0
or dword [rsi + 0x2c], 1
mov r10d, eax
and dword [r13 + 0xc8], 0xfffffffc
xor r15d, r15d
mov dword [rsp + 0x30], eax
jmp 0x14009c7b3
mov qword [rbp + 0x70], rsi
lea rax, [r13 + 0xa8]
mov qword [rbp + 0x78], rax
lea r9, str.sqlite_master
mov dword [rbp + 0x80], ebx
xor r15d, r15d
mov dword [rbp + 0x88], r15d
mov rdx, rbx
mov rax, qword [rsi + 0x20]
shl rdx, 5
mov rcx, qword [rdx + rax + 8]
mov rax, qword [rcx + 8]
mov ecx, dword [rax + 0x40]
mov rax, qword [rsp + 0x38]
mov dword [rbp + 0x90], ecx
mov rcx, rsi
mov r8, qword [rsi + 0x20]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x20], rax
mov r8, qword [rdx + r8]
lea rdx, str.SELECTFROM__w_._s_WHERE__s_ORDER_BY_rowid
call fcn.14007d0b0
mov rbx, rax
mov rcx, rsi
test rax, rax
je 0x14009ed9c
mov byte [rsi + 0xbd], 1
lea r9, [rbp + 0x70]
lea r8, [fcn.140078b00]
mov dword [rbp + 0x84], r15d
mov rdx, rax
mov dword [rbp + 0x8c], r15d
mov qword [rsp + 0x20], r15
call fcn.140013b60
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14009c79c
mov eax, dword [rbp + 0x84]
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14009c79c
cmp dword [rbp + 0x8c], r15d
jne 0x14009c79c
lea rax, [0x140296c64]
mov r9d, 0x16ae6
lea r8, str.database_corruption
mov qword [rsp + 0x20], rax
lea rdx, str._s_at_line__d_of___.10s_
lea ecx, [r15 + 0xb]
call fcn.140023080
mov dword [rsp + 0x30], recv
mov rdx, rbx
mov rcx, rsi
call fcn.140066270
mov r10d, dword [rsp + 0x30]
mov byte [rsi + 0xbd], r15b
test r10d, r10d
jne 0x14009ed7b
mov r12, qword [rsp + 0x38]
jmp 0x140097e8e
mov rax, qword [rsp + 0x38]
mov rcx, rsi
mov edx, dword [rax + 4]
call fcn.14005a9c0
jmp 0x14009a73e
mov rax, qword [rsp + 0x38]
xor r8d, r8d
movsxd rcx, dword [rax + 4]
mov rdx, qword [rax + 0x10]
shl rcx, 5
add rcx, qword [rsi + 0x20]
mov rcx, qword [rcx + 0x18]
add rcx, 8
call fcn.140077fc0
test rax, rax
je 0x14009c824
cmp qword [rsi + 0x2e0], 0
jne 0x14009c819
mov ecx, 0xffffffff
add dword [rax + 0x3c], ecx
jne 0x14009c824
mov rdx, rax
mov rcx, rsi
call fcn.1400347e0
or dword [rsi + 0x2c], 1
mov r12, qword [rsp + 0x38]
jmp 0x140097e93
mov rax, qword [rsp + 0x38]
xor r8d, r8d
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov rax, qword [rsp + 0x38]
add rcx, 0x20
mov rdx, qword [rax + 0x10]
call fcn.140077fc0
mov rdx, rax
test rax, rax
je 0x14009c824
mov rax, qword [rax + 0x18]
mov rcx, qword [rax + 0x10]
cmp rcx, rdx
jne 0x14009c890
mov rcx, qword [rdx + 0x28]
mov qword [rax + 0x10], rcx
mov rcx, rsi
call fcn.140072fe0
or dword [rsi + 0x2c], 1
mov r12, qword [rsp + 0x38]
jmp 0x140097e93
test rcx, rcx
je 0x14009c8c4
mov rax, qword [rcx + 0x28]
cmp rax, rdx
je 0x14009c8bc
mov rcx, rax
test rax, rax
jne 0x14009c895
mov rcx, rsi
call fcn.140072fe0
or dword [rsi + 0x2c], 1
mov r12, qword [rsp + 0x38]
jmp 0x140097e93
mov rax, qword [rdx + 0x28]
mov qword [rcx + 0x28], rax
mov rcx, rsi
call fcn.140072fe0
or dword [rsi + 0x2c], 1
mov r12, qword [rsp + 0x38]
jmp 0x140097e93
mov rax, qword [rsp + 0x38]
xor r8d, r8d
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov rax, qword [rsp + 0x38]
add rcx, 0x38
mov rdx, qword [rax + 0x10]
call fcn.140077fc0
mov rbx, rax
test rax, rax
je 0x14009cbd4
mov rcx, qword [rax + 0x30]
cmp qword [rax + 0x28], rcx
jne 0x14009c95c
mov rdx, qword [rax + 8]
add rcx, 8
xor r8d, r8d
call fcn.14003a9c0
mov rdx, qword [rax + 0x10]
test rdx, rdx
je 0x14009c95c
mov rax, qword [rdx + 0x68]
add rdx, 0x68
test rax, rax
je 0x14009c95c
cmp rax, rbx
je 0x14009c955
lea rdx, [rax + 0x40]
mov rax, qword [rax + 0x40]
test rax, rax
jne 0x14009c941
jmp 0x14009c95c
mov rax, qword [rax + 0x40]
mov qword [rdx], rax
mov rdx, rbx
mov rcx, rsi
call fcn.140067af0
or dword [rsi + 0x2c], 1
mov r12, qword [rsp + 0x38]
jmp 0x140097e8e
mov rcx, qword [rsp + 0x38]
lea r10, [rbp - 0x28]
mov r9, qword [rsp + 0x38]
mov rdx, qword [rsi + 0x20]
mov qword [rsp + 0x28], r10
movsxd rax, dword [rcx + 0xc]
mov r8, qword [rcx + 0x10]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 4]
add r8, 4
imul rbx, rax, 0x38
movzx eax, word [r9 + 2]
mov ecx, dword [rdi + r14]
add rbx, r14
mov r9d, dword [r9 + 8]
inc ecx
shl rax, 5
mov dword [rsp + 0x20], ecx
mov rcx, rsi
mov rdx, qword [rax + rdx + 8]
call fcn.14005e890
mov r12d, 0x2400
mov rsi, rax
test word [rbx + 8], r12w
je 0x14009c9eb
mov rcx, rbx
call fcn.1400b6f90
mov r12d, 1
jmp 0x14009c9f6
mov r12d, 1
mov word [rbx + 8], r12w
mov eax, dword [rbp - 0x28]
test eax, eax
je 0x14009ca30
test rsi, rsi
je 0x14009f13d
dec eax
mov r9b, 1
movsxd rcx, eax
mov r8, 0xffffffffffffffff
sub qword [rdi + r14], rcx
lea rax, [fcn.140015cb0]
mov rcx, rbx
mov qword [rsp + 0x20], rax
mov rdx, rsi
call fcn.1400a2100
test byte [rbx + 8], 2
je 0x140099be0
movzx edi, byte [rsp + 0x48]
cmp byte [rbx + 0xa], dil
je 0x140099be0
movzx edx, dil
mov rcx, rbx
call fcn.1400a25a0
jmp 0x140099be0
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 8]
add rbx, r14
imul rdi, rax, 0x38
test byte [rbx + 8], 0x10
jne 0x14009ca88
mov rcx, rbx
call fcn.1400a1ff0
test eax, eax
jne 0x14009f12f
mov rdx, qword [rdi + r14]
mov rcx, qword [rbx + 0x10]
call fcn.140088d50
mov r12, qword [rsp + 0x38]
jmp 0x140097e8e
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, r14
movzx eax, word [rdi + 8]
test al, 0x10
je 0x14009cb55
mov rbx, qword [rdi + 0x10]
movzx eax, word [rbx + 0x32]
test al, 2
jne 0x14009caf0
test al, 1
jne 0x14009cae8
mov rcx, qword [rbx + 0x10]
call fcn.1400548e0
mov qword [rbx + 0x10], rax
mov r10d, 1
movzx eax, word [rbx + 0x32]
mov r9d, 0x2400
or ax, 3
mov word [rbx + 0x32], ax
mov rax, qword [rbx + 0x10]
test rax, rax
je 0x14009cb4c
mov rdi, qword [rax]
mov rax, qword [rax + 8]
mov qword [rbx + 0x10], rax
test rax, rax
jne 0x14009cb11
mov rcx, rbx
call fcn.140088b80
mov rax, qword [rsp + 0x38]
mov r12d, 0x2400
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, r14
test word [rcx + 8], r12w
je 0x14009cb3b
mov rdx, rdi
call fcn.1400b81e0
jmp 0x140099be5
mov eax, 4
mov qword [rcx], rdi
mov word [rcx + 8], ax
jmp 0x140099be5
movzx eax, word [rdi + 8]
mov rbx, qword [rsp + 0x50]
test r9w, ax
je 0x14009cb68
mov rcx, rdi
call fcn.1400b6f90
jmp case.0x1400971b5.11
mov word [rdi + 8], r10w
jmp case.0x1400971b5.11
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
mov edi, dword [rcx + 0x10]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
add rbx, r14
imul rsi, rax, 0x38
test byte [rbx + 8], 0x10
jne 0x14009cba3
mov rcx, rbx
call fcn.1400a1ff0
test eax, eax
jne 0x14009f12a
test edi, edi
je 0x14009cbc2
mov r8, qword [rsi + r14]
mov edx, edi
mov rcx, qword [rbx + 0x10]
call fcn.140088dc0
test eax, eax
jne 0x14009e16b
test edi, edi
js 0x14009cbcf
mov rdx, qword [rsi + r14]
mov rcx, qword [rbx + 0x10]
call fcn.140088d50
mov rsi, qword [rsp + 0x40]
mov r12, qword [rsp + 0x38]
jmp 0x140097e8e
mov r14, qword [rsp + 0x60]
mov r12, qword [rsp + 0x38]
jmp 0x140097e8e
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 0xc]
mov r12, qword [rcx + 0x10]
imul r15, rax, 0x38
add r15, r14
cmp word [rcx + 2], 0
je 0x14009cc33
mov rax, qword [r13 + 0x100]
mov rcx, qword [r12 + 0x20]
test rax, rax
je 0x14009cc33
nop dword [rax]
cmp qword [rax + 0x38], rcx
je 0x14009adae
mov rax, qword [rax + 8]
test rax, rax
jne 0x14009cc20
mov eax, dword [r13 + 0x110]
cmp eax, dword [rsi + 0xa8]
jge 0x14009edb1
test byte [r15 + 8], 0x10
jne 0x14009cd9d
mov edx, dword [r12 + 0x10]
mov ecx, dword [r12 + 0xc]
add ecx, edx
test edx, edx
lea esi, [rcx + 1]
cmovne esi, ecx
lea eax, [rsi + 2]
imul ecx, eax, 7
mov eax, dword [r12 + 8]
add ecx, edx
add eax, 7
jns 0x14009cc7a
add eax, 7
sar eax, 3
lea edi, [rax + rcx*8]
mov rcx, qword [rsp + 0x40]
movsxd rbx, edi
mov rdx, rbx
call fcn.140066380
mov r14, rax
test rax, rax
je 0x14009f12a
mov r8, rbx
xor edx, edx
mov rcx, rax
call fcn.1400d1e20
mov eax, 0x2400
test word [r15 + 8], ax
jne 0x14009ccbc
cmp dword [r15 + 0x20], 0
je 0x14009ccc4
mov rcx, r15
call fcn.1400b6ec0
mov rcx, qword [rsp + 0x38]
mov eax, 0x410
sub rcx, qword [rsp + 0x50]
mov word [r15 + 8], ax
lea rax, [0x1400a0160]
mov qword [r15 + 0x10], r14
mov dword [r15 + 0xc], edi
mov qword [r15 + 0x30], rax
mov qword [r14], r13
mov dword [r14 + 0x60], esi
mov eax, dword [r12 + 0x10]
mov dword [r14 + 0x64], eax
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [r14 + 0x54], edx
mov rax, qword [r13 + 0x68]
mov qword [r14 + 0x20], rax
mov eax, dword [r13 + 0x28]
mov dword [r14 + 0x5c], eax
mov rax, qword [r13 + 0x78]
mov qword [r14 + 0x28], rax
mov eax, dword [r13 + 0x2c]
mov dword [r14 + 0x50], eax
mov rax, qword [r13 + 0x88]
mov qword [r14 + 0x10], rax
mov eax, dword [r13 + 0x90]
mov dword [r14 + 0x58], eax
mov rax, qword [r12 + 0x20]
mov qword [r14 + 0x38], rax
movsxd rax, esi
mov rsi, qword [rsp + 0x40]
add rax, 2
imul rcx, rax, 0x38
lea rax, [r14 + 0x70]
add rcx, r14
cmp rax, rcx
je 0x14009cd91
mov edx, 0x80
nop word [rax + rax]
mov word [rax + 8], dx
mov qword [rax + 0x28], rsi
add rax, 0x38
cmp rax, rcx
jne 0x14009cd80
mov eax, dword [r13 + 0x110]
xor r11d, r11d
jmp 0x14009cda1
mov r14, qword [r15 + 0x10]
inc eax
lea rdx, [r14 + 0x70]
mov dword [r13 + 0x110], eax
mov rax, qword [r13 + 0x100]
mov qword [r14 + 8], rax
mov rax, qword [rsi + 0x38]
mov qword [r14 + 0x40], rax
mov eax, dword [r13 + 0x3c]
mov dword [r14 + 0x68], eax
mov rax, qword [r13]
mov qword [rsp + 0x60], rdx
mov ecx, dword [rax + 0x78]
mov dword [r14 + 0x6c], ecx
mov rax, qword [r13 + 0x120]
mov qword [r14 + 0x48], rax
mov qword [r13 + 0x120], r11
mov dword [r13 + 0x3c], r11d
mov qword [r13 + 0x100], r14
mov qword [r13 + 0x68], rdx
movsxd rcx, dword [r14 + 0x60]
mov dword [r13 + 0x28], ecx
movzx eax, word [r14 + 0x64]
mov dword [r13 + 0x2c], eax
imul rcx, rcx, 0x38
add rdx, rcx
mov qword [r13 + 0x78], rdx
movsxd rax, dword [r12 + 0x10]
lea rcx, [rdx + rax*8]
mov qword [r14 + 0x30], rcx
mov eax, dword [r12 + 8]
add eax, 7
cdq
and edx, 7
add eax, edx
xor edx, edx
sar eax, 3
movsxd r8, eax
call fcn.1400d1e20
mov rbx, qword [r12]
mov qword [r13 + 0x88], rbx
mov eax, dword [r12 + 8]
mov qword [rsp + 0x50], rbx
lea rcx, [rbx - 0x18]
mov dword [r13 + 0x90], eax
mov qword [rsp + 0x38], rcx
jmp 0x140099bea
mov rax, qword [rsp + 0x38]
mov edi, 0x2400
movsxd rax, dword [rax + 8]
imul r9, rax, 0x38
add r9, qword [r13 + 0x68]
test word [r9 + 8], di
je 0x14009ce99
mov rcx, r9
call fcn.140049180
xor r11d, r11d
mov r9, rax
lea r10d, [r11 + 1]
jmp 0x14009cea3
mov eax, 4
mov word [r9 + 8], ax
mov r8, qword [r13 + 0x100]
movsxd rax, dword [r8 + 0x54]
lea rcx, [rax + rax*2]
mov rax, qword [r8 + 0x10]
mov edx, dword [rax + rcx*8 + 4]
mov rax, qword [rsp + 0x38]
add edx, dword [rax + 4]
movsxd rax, edx
imul rcx, rax, 0x38
add rcx, qword [r8 + 0x20]
mov r8d, 0x1000
test word [r9 + 8], di
je 0x14009cef2
mov rdx, rcx
mov rcx, r9
call fcn.1400b5bc0
mov r12, qword [rsp + 0x38]
mov r9d, edi
jmp 0x140097e99
movups xmm0, xmmword [rcx]
mov r12, qword [rsp + 0x38]
lea rdx, [0x140000000]
mov eax, 0x800
movups xmmword [r9], xmm0
movsd xmm1, qword [rcx + 0x10]
movsd qword [r9 + 0x10], xmm1
test word [rcx + 8], ax
jne 0x14009cf2a
mov eax, 0xf3ff
and word [r9 + 8], ax
or word [r9 + 8], r8w
mov r9d, edi
jmp case.0x1400971b5.86
mov eax, dword [rsi + 0x30]
bt rax, 0x13
mov rax, qword [rsp + 0x38]
mov r12, rax
jae 0x14009cf54
movsxd rax, dword [rax + 8]
add qword [rsi + 0x2d8], rax
jmp case.0x1400971b5.86
cmp dword [rax + 4], 0
movsxd rax, dword [rax + 8]
je 0x14009cf6a
add qword [rsi + 0x2d0], rax
jmp case.0x1400971b5.86
add qword [r13 + 0x50], rax
jmp case.0x1400971b5.86
cmp dword [r12 + 4], 0
je 0x14009cf9c
cmp qword [rsi + 0x2d0], 0
jne case.0x1400971b5.86
cmp qword [rsi + 0x2d8], 0
je 0x14009ad1e
jmp case.0x1400971b5.86
cmp qword [r13 + 0x50], 0
jne case.0x1400971b5.86
cmp qword [rsi + 0x2d8], 0
je 0x14009ad1e
jmp case.0x1400971b5.86
mov rcx, qword [r13 + 0x100]
test rcx, rcx
je 0x14009cfef
mov rax, qword [rcx + 8]
test rax, rax
je 0x14009cfdc
nop
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x14009cfd0
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, qword [rcx + 0x20]
jmp 0x14009cfff
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, r14
mov rcx, rdi
call fcn.1400a1d70
mov r12, qword [rsp + 0x38]
movsxd rax, dword [r12 + 8]
imul rbx, rax, 0x38
add rbx, r14
mov rcx, rbx
call fcn.1400a1d70
mov rax, qword [rbx]
cmp qword [rdi], rax
jge 0x140097e8e
mov qword [rdi], rax
jmp 0x140097e8e
mov rax, qword [rsp + 0x38]
mov r12, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rdx, qword [rcx + r14]
test rdx, rdx
jle 0x140097ea8
mov rax, r12
movsxd rax, dword [rax + 0xc]
sub rdx, rax
mov qword [rcx + r14], rdx
jmp 0x14009ad1e
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rdx, rax, 0x38
add rdx, qword [r13 + 0x68]
test word [rdx + 8], r9w
je 0x14009d0a8
mov rcx, rdx
call fcn.140049180
xor r11d, r11d
mov rdx, rax
mov r9d, 0x2400
lea r10d, [r11 + 1]
jmp 0x14009d0b1
mov eax, 4
mov word [rdx + 8], ax
mov r8, qword [rbx + r14]
test r8, r8
jle 0x14009d0f2
mov rcx, qword [rdi + r14]
test rcx, rcx
cmovle rcx, r11
test rcx, rcx
js 0x14009d0dc
movabs rax, 0x7fffffffffffffff
sub rax, r8
cmp rax, rcx
jl 0x14009d0f2
mov r12, qword [rsp + 0x38]
lea rax, [rcx + r8]
mov rbx, qword [rsp + 0x50]
mov qword [rdx], rax
jmp 0x140097ea2
mov r12, qword [rsp + 0x38]
mov rax, 0xffffffffffffffff
mov rbx, qword [rsp + 0x50]
mov qword [rdx], rax
jmp 0x140097ea2
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r14]
test rax, rax
je 0x14009adae
mov r12, qword [rsp + 0x38]
jle 0x14009ad1e
dec rax
mov qword [rcx + r14], rax
jmp 0x14009ad1e
mov rax, qword [rsp + 0x38]
movabs rdi, 0x8000000000000000
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r14]
cmp rax, rdi
jle 0x14009d163
dec rax
mov qword [rcx + r14], rax
mov r12, qword [rsp + 0x38]
test rax, rax
je 0x14009ad1e
jmp case.0x1400971b5.86
mov rax, qword [rsp + 0x38]
mov rcx, rsi
movzx ebx, word [rax + 2]
mov edi, ebx
lea rdx, [rbx*8 + 0x68]
call fcn.140066380
xor r15d, r15d
mov r8, rax
test rax, rax
je 0x14009ee84
mov qword [rax + 0x10], r15
add rdi, 6
lea rcx, [rax + rdi*8]
mov edi, 1
mov qword [rax], rcx
mov rax, qword [rsp + 0x38]
mov word [rcx + 8], di
mov qword [rcx + 0x28], rsi
mov dword [rcx + 0x20], r15d
mov rcx, qword [rax + 0x10]
mov qword [r8 + 8], rcx
mov rcx, rax
sub rcx, qword [rsp + 0x50]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov rax, qword [rsp + 0x38]
mov dword [r8 + 0x20], edx
mov qword [r8 + 0x18], r13
mov byte [r8 + 0x28], r15b
mov dword [r8 + 0x24], r15d
mov byte [r8 + 0x29], bl
mov byte [rax + 1], 0xf0
mov qword [rax + 0x10], r8
mov byte [rax], 0x9f
jmp 0x14009d222
mov rax, qword [rsp + 0x38]
xor r15d, r15d
lea edi, [r15 + 1]
mov rbx, qword [rax + 0x10]
movsxd rax, dword [rax + 0xc]
imul r10, rax, 0x38
add r10, r14
cmp qword [rbx + 0x10], r10
je 0x14009d285
mov qword [rbx + 0x10], r10
movzx eax, byte [rbx + 0x29]
mov edx, eax
sub rdx, 1
lea r9d, [rax - 1]
js 0x14009d285
mov rsi, qword [rsp + 0x38]
lea r8, [rdx + 6]
lea r8, [rbx + r8*8]
nop dword [rax + rax]
mov eax, dword [rsi + 8]
lea r8, [r8 - 8]
add eax, r9d
dec r9d
cdqe
imul rcx, rax, 0x38
add rcx, r14
sub rdx, 1
mov qword [r8 + 8], rcx
jns 0x14009d260
mov rsi, qword [rsp + 0x40]
inc dword [r10 + 0xc]
lea r8, [rbx + 0x30]
mov r12, qword [rsp + 0x38]
mov rcx, rbx
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x29]
cmp dword [r12 + 4], 0
je 0x14009d2ab
mov rax, qword [rax + 0x30]
jmp 0x14009d2af
mov rax, qword [rax + 0x18]
call qword [case.0x14007d279.0]
mov eax, dword [rbx + 0x24]
test eax, eax
je 0x140097e8e
jle 0x14009d31c
mov rcx, qword [rbx]
test rcx, rcx
jne 0x14009d2cf
mov rax, r15
jmp 0x14009d303
movzx edx, word [rcx + 8]
mov r8d, 0x202
movzx eax, dx
and ax, r8w
cmp ax, r8w
jne 0x14009d2f2
cmp byte [rcx + 0xa], 1
jne 0x14009d2f2
mov rax, qword [rcx + 0x10]
jmp 0x14009d303
test dl, 1
je 0x14009d2fc
mov rax, r15
jmp 0x14009d303
mov dl, 1
call fcn.1400b57a0
mov r8, rax
lea rdx, [0x1402916a8]
mov rcx, r13
call fcn.140096fb0
mov eax, dword [rbx + 0x24]
mov dword [rsp + 0x30], eax
cmp byte [rbx + 0x28], 0
je 0x14009d359
mov rax, r12
movsxd rax, dword [rax - 0x14]
test eax, eax
je 0x14009d355
imul rcx, rax, 0x38
mov eax, 0x2400
add rcx, r14
test word [rcx + 8], ax
je 0x14009d349
mov rdx, rdi
call fcn.1400b81e0
jmp 0x14009d355
mov eax, 4
mov qword [rcx], rdi
mov word [rcx + 8], ax
mov byte [rbx + 0x28], 0
mov rax, qword [rbx]
mov r9d, 0x2400
test word [rax + 8], r9w
jne 0x14009d36f
cmp dword [rax + 0x20], 0
je 0x14009d380
mov rcx, rax
call fcn.1400b6ec0
mov rax, qword [rbx]
mov r9d, 0x2400
mov r10d, dword [rsp + 0x30]
mov word [rax + 8], di
mov dword [rbx + 0x24], r15d
test r10d, r10d
jne 0x140098543
mov rbx, qword [rsp + 0x50]
jmp 0x140097e99
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
mov rsi, qword [rcx + 0x10]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
add rbx, r14
test eax, eax
je 0x14009d442
imul rdi, rax, 0x38
xorps xmm0, xmm0
movups xmmword [rbp + 0x208], xmm0
movups xmmword [rbp + 0x218], xmm0
xor eax, eax
add rdi, r14
mov qword [rbp + 0x238], rax
movups xmmword [rbp + 0x228], xmm0
test word [rdi + 8], r9w
je 0x14009d3f9
mov rcx, rdi
call fcn.1400b6f90
jmp 0x14009d3fe
mov word [rdi + 8], r10w
mov qword [rbp + 0x208], rdi
lea rcx, [rbp + 0x208]
mov qword [rbp + 0x218], rbx
mov qword [rbp + 0x210], rsi
mov rax, qword [rsi + 0x28]
call qword [case.0x14007d279.0]
mov rax, qword [rsp + 0x38]
mov r10d, dword [rbp + 0x22c]
mov dword [rsp + 0x30], r10d
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
add rbx, r14
jmp 0x14009d454
mov rdx, rsi
mov rcx, rbx
call fcn.1400a18f0
mov r10d, eax
mov dword [rsp + 0x30], eax
test r10d, r10d
jne 0x14009edcf
movzx eax, word [rbx + 8]
test al, 2
je 0x14009d480
movzx edi, byte [rsp + 0x48]
cmp byte [rbx + 0xa], dil
je 0x14009d480
movzx edx, dil
mov rcx, rbx
call fcn.1400a25a0
movzx eax, word [rbx + 8]
test al, 0x12
je 0x14009e7da
bt ax, 0xe
mov ecx, dword [rbx + 0xc]
jae 0x14009d494
add ecx, dword [rbx]
mov rsi, qword [rsp + 0x40]
mov rax, qword [rbx + 0x28]
cmp ecx, dword [rax + 0x80]
jg 0x14009eedd
mov r12, qword [rsp + 0x38]
jmp 0x140097e8e
lea rax, [rbp + 0x2b0]
mov dword [rbp + 0x2b0], 0xffffffff
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x2ac]
mov rax, qword [rsp + 0x38]
xor r15d, r15d
mov rcx, rsi
mov dword [rbp + 0x2a8], r15d
mov dword [rbp + 0x2ac], 0xffffffff
mov r8d, dword [rax + 8]
mov edx, dword [rax + 4]
call fcn.140061260
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
je 0x14009d51c
cmp eax, 5
jne 0x14009853e
mov eax, 1
mov dword [rsp + 0x30], r15d
mov dword [rbp + 0x2a8], eax
mov rax, qword [rsp + 0x38]
mov rdi, r15
mov esi, 4
mov r9d, 0x2400
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
add rbx, r14
nop word [rax + rax]
movsxd rax, dword [rbp + rdi*4 + 0x2a8]
test word [rbx + 8], r9w
je 0x14009d562
mov rdx, rax
mov rcx, rbx
call fcn.1400b81e0
mov r9d, 0x2400
jmp 0x14009d569
mov qword [rbx], rax
mov word [rbx + 8], si
inc rdi
add rbx, 0x38
cmp rdi, 3
jl 0x14009d540
mov rsi, qword [rsp + 0x40]
mov r12, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x50]
jmp 0x140097e99
mov rdi, qword [rsp + 0x38]
mov r12, qword [rsp + 0x68]
movsxd rax, dword [rdi + 8]
imul r13, rax, 0x38
add r13, qword [r12 + 0x68]
test word [r13 + 8], r9w
je 0x14009d5bc
mov rcx, r13
call fcn.140049180
xor r11d, r11d
mov r13, rax
lea r10d, [r11 + 1]
jmp 0x14009d5c6
mov eax, 4
mov word [r13 + 8], ax
mov rax, qword [rsi + 0x20]
mov edx, dword [rdi + 0xc]
movsxd rcx, dword [rdi + 4]
shl rcx, 5
cmp edx, 0xffffffff
mov r15, qword [rcx + rax + 8]
mov rax, qword [r15 + 8]
mov rdi, qword [rax]
movzx r14d, byte [rdi + 9]
mov esi, r14d
cmovne esi, edx
cmp byte [rdi + 0x14], 3
jae 0x14009d606
mov rax, qword [rdi + 0x50]
cmp qword [rax], 0
je 0x14009d609
cmp qword [rdi + 0x60], 0
jle 0x14009d609
mov esi, r14d
cmp byte [rdi + 0x13], 0
lea rcx, [0x14028aa7c]
jne 0x14009d61d
mov rcx, qword [rdi + 0xd0]
cmp esi, 5
jne 0x14009d699
test rcx, rcx
je 0x14009d65f
mov rax, 0xffffffffffffffff
nop
inc rax
cmp byte [rcx + rax], 0
jne 0x14009d630
and eax, 0x3fffffff
je 0x14009d65f
cmp byte [rdi + 0x11], 0
mov rax, qword [rdi + 0x48]
mov rcx, qword [rax]
jne 0x14009d65f
cmp byte [rdi + 8], 0
jne 0x14009d699
cmp dword [rcx], 2
jl 0x14009d65f
cmp qword [rcx + 0x68], 0
jne 0x14009d699
mov esi, r14d
mov eax, dword [rsp + 0x30]
test eax, eax
je 0x14009d66d
mov esi, r14d
mov edx, esi
mov rcx, rdi
call fcn.14007faa0
mov ecx, 0xa02
mov word [r13 + 8], cx
cmp eax, 6
jne 0x14009d7f5
xor r15d, r15d
mov qword [r13 + 0x10], r15
mov eax, r15d
jmp 0x14009d831
cmp esi, r14d
je 0x14009d662
cmp r14d, 5
je 0x14009d6a9
cmp esi, 5
jne 0x14009d662
mov r12, qword [rsp + 0x40]
cmp byte [r12 + 0x61], 0
je 0x14009edf8
cmp dword [r12 + 0xd4], 1
jg 0x14009edf8
cmp r14d, 5
jne 0x14009d7bb
cmp qword [rdi + 0x120], 0
mov ebx, r11d
jne 0x14009d73b
mov edx, r10d
mov dword [rbp - 0x2c], r11d
mov rcx, rdi
call fcn.140049b50
mov ebx, eax
test eax, eax
jne 0x14009d7a3
mov rcx, qword [rdi]
lea r9, [rbp - 0x2c]
mov rdx, qword [rdi + 0x128]
xor r8d, r8d
mov rax, qword [rcx + 0x38]
call qword [case.0x14007d279.0]
mov ebx, eax
test eax, eax
jne 0x14009d7a3
cmp dword [rbp - 0x2c], eax
je 0x14009d731
mov rcx, rdi
call fcn.140049d00
mov ebx, eax
test eax, eax
jne 0x14009d7a3
cmp qword [rdi + 0x120], 0
je 0x14009d7a3
mov rcx, rdi
call fcn.1400499a0
mov ebx, eax
test eax, eax
jne 0x14009d7a3
mov rax, qword [rdi + 0x110]
mov rdx, r12
movzx r8d, byte [rdi + 0xf]
mov r9d, dword [rdi + 0xbc]
mov rcx, qword [rdi + 0x120]
mov qword [rsp + 0x20], rax
call fcn.1400a6450
mov ebx, eax
mov dword [rsp + 0x30], eax
xor eax, eax
mov rcx, rdi
mov qword [rdi + 0x120], rax
call fcn.140049a40
test ebx, ebx
je 0x14009d7a3
cmp byte [rdi + 8], 0
jne 0x14009d7a3
mov edx, 1
mov rcx, rdi
call fcn.14004a740
jmp 0x14009d66a
mov dword [rsp + 0x30], ebx
test ebx, ebx
jne 0x14009d66a
mov edx, esi
mov rcx, rdi
call fcn.14007faa0
jmp 0x14009d7d8
cmp r14d, 4
jne 0x14009d7cd
lea edx, [r14 - 2]
mov rcx, rdi
call fcn.14007faa0
cmp dword [rsp + 0x30], 0
jne 0x14009d66a
xor eax, eax
mov rcx, r15
mov edx, eax
cmp esi, 5
sete dl
inc edx
call fcn.140060630
mov dword [rsp + 0x30], eax
jmp 0x14009d666
cdqe
lea rcx, [0x140000000]
mov rcx, qword [rcx + rax*8 + 0x28c9a8]
mov qword [r13 + 0x10], rcx
test rcx, rcx
jne 0x14009d817
xor r15d, r15d
mov eax, r15d
jmp 0x14009d831
mov rax, 0xffffffffffffffff
nop
inc rax
cmp byte [rcx + rax], 0
jne 0x14009d820
and eax, 0x3fffffff
xor r15d, r15d
movzx edi, byte [rsp + 0x48]
mov dword [r13 + 0xc], eax
mov byte [r13 + 0xa], 1
cmp dil, 1
je 0x14009d851
movzx edx, dil
mov rcx, r13
call fcn.1400a25a0
mov r10d, dword [rsp + 0x30]
mov rsi, qword [rsp + 0x40]
test r10d, r10d
je 0x140097e84
mov r13, qword [rsp + 0x68]
jmp 0x14009853e
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
test eax, eax
je 0x14009d887
imul r9, rax, 0x38
add r9, r14
xor r15d, r15d
jmp 0x14009d88d
xor r15d, r15d
mov r9d, r15d
mov rax, qword [rsp + 0x38]
lea rcx, [r13 + 0xa8]
mov rdx, rsi
mov r8d, dword [rax + 4]
call fcn.140089620
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009853e
mov r12, qword [rsp + 0x38]
jmp 0x140097e93
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x20]
shl rcx, 5
mov rsi, qword [rcx + rax + 8]
cmp byte [rsi + 0x11], 0
mov rdi, qword [rsi + 8]
je 0x14009d8ef
inc dword [rsi + 0x14]
cmp byte [rsi + 0x12], 0
jne 0x14009d8ef
mov rcx, rsi
call fcn.14002b540
cmp byte [rdi + 0x21], 0
jne 0x14009d902
mov dword [rsp + 0x30], 0x65
jmp 0x14009d9cb
mov rax, qword [rdi + 0x18]
mov r14d, dword [rdi + 0x40]
mov edx, r14d
mov rcx, qword [rax + 0x50]
mov ebx, dword [rcx + 0x24]
mov rcx, rdi
bswap ebx
mov r8d, ebx
call fcn.14003a4f0
mov r15d, eax
cmp r14d, eax
jb 0x14009d9b3
cmp ebx, r14d
jae 0x14009d9b3
test ebx, ebx
je 0x14009d9a9
mov rcx, qword [rdi + 0x10]
test rcx, rcx
je 0x14009d955
xor r8d, r8d
xor edx, edx
call fcn.140054e00
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14009d9c1
mov rax, qword [rdi + 0x10]
test rax, rax
je 0x14009d96d
nop
and byte [rax + 1], 0xfb
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x14009d960
xor r9d, r9d
mov r8d, r14d
mov edx, r15d
mov rcx, rdi
call fcn.1400422a0
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14009d9c1
mov rcx, qword [rdi + 0x18]
mov rcx, qword [rcx + 0x70]
call fcn.140080210
mov edx, dword [rdi + 0x40]
mov dword [rsp + 0x30], eax
mov rax, qword [rdi + 0x18]
bswap edx
mov rcx, qword [rax + 0x50]
mov dword [rcx + 0x1c], edx
jmp 0x14009d9c1
mov dword [rsp + 0x30], 0x65
jmp 0x14009d9c1
mov ecx, 0x10eff
call fcn.140064210
mov dword [rsp + 0x30], eax
mov rbx, qword [rsp + 0x50]
mov r14, qword [rsp + 0x60]
cmp byte [rsi + 0x11], 0
je 0x14009d9df
sub dword [rsi + 0x14], 1
jne 0x14009d9df
mov rcx, rsi
call fcn.1400b3560
mov r10d, dword [rsp + 0x30]
test r10d, r10d
je 0x140098369
cmp r10d, 0x65
jne 0x14009b808
mov r12, qword [rsp + 0x38]
xor r11d, r11d
mov dword [rsp + 0x30], r11d
lea r10d, [r11 + 1]
jmp 0x14009ad1e
mov rax, qword [rsp + 0x38]
cmp dword [rax + 4], 0
jne 0x14009da50
mov ecx, dword [rax + 8]
mov rax, qword [rsi + 8]
test rax, rax
je 0x14009adae
inc ecx
and ecx, 3
nop dword [rax]
and dword [rax + 0xc8], 0xfffffffc
or dword [rax + 0xc8], ecx
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x14009da30
mov r12, qword [rsp + 0x38]
jmp case.0x1400971b5.86
mov eax, dword [rax + 8]
mov r12, qword [rsp + 0x38]
inc eax
xor eax, dword [r13 + 0xc8]
and eax, 3
xor dword [r13 + 0xc8], eax
jmp case.0x1400971b5.86
mov rax, qword [rsp + 0x38]
mov r12, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x38]
or byte [rax + 1], 0x40
jmp case.0x1400971b5.86
mov rax, qword [rsp + 0x38]
mov r12, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x38]
and byte [rax + 1], 0xbf
jmp case.0x1400971b5.86
mov rax, qword [rsp + 0x38]
movzx esi, byte [rax + 0xc]
test sil, sil
jne 0x14009dadc
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0x30]
bt rax, 0xa
jb 0x14009e957
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
xor r15d, r15d
mov edi, dword [rax + 8]
mov r10d, r15d
mov rax, qword [rsp + 0x40]
shl rcx, 5
mov dword [rsp + 0x30], r15d
mov rax, qword [rax + 0x20]
mov rbx, qword [rcx + rax + 8]
cmp byte [rbx + 0x11], r10b
je 0x14009dbd0
inc dword [rbx + 0x14]
inc sil
cmp byte [rbx + 0x12], r10b
jne 0x14009db1e
mov rcx, rbx
call fcn.14002b540
movzx r8d, sil
mov edx, edi
mov rcx, rbx
call fcn.14004f3f0
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009dba4
mov r14, qword [rbx + 8]
mov rax, qword [r14 + 0x78]
test rax, rax
je 0x14009db57
cmp dword [rax + 8], edi
jne 0x14009db4e
cmp qword [rax], rbx
je 0x14009db80
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x14009db44
mov ecx, 0x18
call fcn.14007d0e0
test rax, rax
je 0x14009db94
mov qword [rax + 0xc], r15
mov dword [rax + 0x14], r15d
mov dword [rax + 8], edi
mov qword [rax], rbx
mov rcx, qword [r14 + 0x78]
mov qword [rax + 0x10], rcx
mov qword [r14 + 0x78], rax
cmp sil, byte [rax + 0xc]
jbe 0x14009db8a
mov byte [rax + 0xc], sil
mov r10d, r15d
mov dword [rsp + 0x30], r15d
jmp 0x14009db9f
mov r10d, 7
mov dword [rsp + 0x30], r10d
mov r14, qword [rsp + 0x60]
cmp byte [rbx + 0x11], r15b
je 0x14009dbbd
sub dword [rbx + 0x14], 1
jne 0x14009dbbd
mov rcx, rbx
call fcn.1400b3560
mov r10d, dword [rsp + 0x30]
mov r9d, 0x2400
lea rdx, [0x140000000]
mov r8d, 0x1000
test r10d, r10d
jne 0x14009ee33
mov rsi, qword [rsp + 0x40]
xor r11d, r11d
mov r12, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x50]
lea r10d, [r11 + 1]
jmp case.0x1400971b5.86
movsxd rdx, dword [rsi + 0x1fc]
xor r15d, r15d
mov rbx, qword [r12 + 0x10]
mov dword [rsp + 0x30], r15d
test edx, edx
jle 0x14009dc2e
cmp qword [rsi + 0x220], r15
jne 0x14009dc2e
mov r10d, 6
mov dword [rsp + 0x30], r10d
test rbx, rbx
je 0x14009853e
jmp 0x14009dced
test rbx, rbx
jne 0x14009dc45
mov rbx, qword [rsp + 0x50]
xor r11d, r11d
mov dword [rsp + 0x30], r15d
jmp 0x140097ea8
mov rax, qword [rbx + 0x10]
mov rdi, qword [rax]
cmp qword [rdi + 0x70], r15
je 0x14009dced
mov rcx, r15
test edx, edx
jle 0x14009dc79
mov rax, qword [rsi + 0x220]
cmp qword [rax], rbx
je 0x14009dd0c
inc rcx
add rax, 8
cmp rcx, rdx
jl 0x14009dc64
mov rcx, rsi
call fcn.1400419b0
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14009dced
mov rcx, qword [rbx + 0x10]
mov rax, qword [rdi + 0x70]
call qword [case.0x14007d279.0]
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14009dced
mov edx, dword [rsi + 0x2cc]
add edx, dword [rsi + 0x2c8]
movsxd rcx, dword [rsi + 0x1fc]
mov rax, qword [rsi + 0x220]
mov qword [rax + rcx*8], rbx
inc dword [rsi + 0x1fc]
inc dword [rbx + 0x18]
test edx, edx
je 0x14009dced
cmp qword [rdi + 0xa0], r15
je 0x14009dced
mov dword [rbx + 0x20], edx
dec edx
mov rcx, qword [rbx + 0x10]
mov rax, qword [rdi + 0xa0]
call qword [case.0x14007d279.0]
mov dword [rsp + 0x30], eax
mov rdx, qword [rbx + 0x10]
mov rcx, r13
call fcn.1400a5800
mov r10d, dword [rsp + 0x30]
test r10d, r10d
jne 0x14009853e
jmp 0x140097e8e
mov dword [rsp + 0x30], r15d
jmp 0x14009dced
mov rax, qword [rsp + 0x38]
lea rcx, [rbp + 0x98]
xor r15d, r15d
mov qword [rbp + 0xc0], rsi
xorps xmm0, xmm0
mov qword [rbp + 0x98], r15
xorps xmm1, xmm1
mov qword [rbp + 0xc8], r15
movdqu xmmword [rbp + 0xa0], xmm0
movdqu xmmword [rbp + 0xb0], xmm1
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
add rdx, r14
call fcn.1400a17f0
mov rcx, qword [rbp + 0xa0]
mov edx, 0x202
mov dword [rsp + 0x30], eax
movzx eax, cx
and ax, dx
cmp ax, dx
jne 0x14009dd8a
cmp byte [rbp + 0xa2], 1
jne 0x14009dd8a
mov rax, qword [rbp + 0xa8]
jmp 0x14009dda8
test cl, 1
jne 0x14009def5
mov dl, 1
lea rcx, [rbp + 0x98]
call fcn.1400b57a0
mov rcx, qword [rbp + 0xa0]
mov r12, qword [rsp + 0x38]
test rax, rax
je 0x14009defa
movsxd rcx, dword [r12 + 4]
lea rbx, [r13 + 0xa8]
mov r8, qword [rsi + 0x20]
mov rdx, rax
shl rcx, 5
mov r8, qword [rcx + r8]
mov rcx, rsi
call fcn.1400709f0
mov r14, qword [rsp + 0x40]
xor r8d, r8d
mov rsi, rax
mov rcx, qword [rax + 0x58]
mov rdi, qword [rcx]
lea rcx, [r14 + 0x200]
mov rdx, rdi
call fcn.14003a9c0
mov r8, qword [rax + 0x10]
test r8, r8
je 0x14009dec1
mov rcx, qword [r8]
mov r9, qword [rcx + 8]
test r9, r9
je 0x14009dec1
cmp qword [rcx + 0x28], r15
je 0x14009dec1
mov rdx, rsi
mov qword [rsp + 0x20], rbx
mov rcx, r14
call fcn.1400ba470
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14009de50
mov rax, qword [rsi + 0x60]
test rax, rax
je 0x14009de50
cmp qword [rax], r14
je 0x14009de69
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x14009de42
mov rcx, qword [rbp + 0xa0]
mov rsi, r14
mov r14, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x50]
jmp 0x14009defa
mov rcx, r14
call fcn.1400419b0
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14009de50
mov rdx, qword [rsi + 0x60]
mov rsi, r14
test rdx, rdx
je 0x14009de93
cmp qword [rdx], rsi
je 0x14009de93
mov rdx, qword [rdx + 0x28]
test rdx, rdx
jne 0x14009de85
movsxd rcx, dword [rsi + 0x1fc]
mov rax, qword [rsi + 0x220]
mov r14, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x50]
mov qword [rax + rcx*8], rdx
inc dword [rsi + 0x1fc]
inc dword [rdx + 0x18]
mov rcx, qword [rbp + 0xa0]
jmp 0x14009defa
mov r8, rdi
lea rdx, str.no_such_module:__s
mov rcx, r14
mov rsi, r14
call fcn.14007d0b0
mov r14, qword [rsp + 0x60]
mov qword [rbx], rax
mov eax, 1
mov rcx, qword [rbp + 0xa0]
mov rbx, qword [rsp + 0x50]
mov dword [rsp + 0x30], eax
jmp 0x14009defa
mov r12, qword [rsp + 0x38]
mov r9d, 0x2400
test r9w, cx
jne 0x14009df0f
cmp dword [rbp + 0xb8], r15d
je 0x14009df21
lea rcx, [rbp + 0x98]
call fcn.1400b6ec0
mov r9d, 0x2400
mov r10d, dword [rsp + 0x30]
test r10d, r10d
jne 0x14009853e
jmp 0x140097e99
inc dword [rsi + 0xe0]
xor r15d, r15d
mov rcx, qword [rsp + 0x38]
mov r8, qword [rsi + 0x20]
mov dword [rsp + 0x30], r15d
movsxd rax, dword [rcx + 4]
mov rdx, qword [rcx + 0x10]
mov rcx, rsi
shl rax, 5
mov r8, qword [rax + r8]
call fcn.1400709f0
mov rdi, rax
test rax, rax
je 0x14009e001
mov rdx, qword [rax + 0x60]
test rdx, rdx
je 0x14009e001
nop dword [rax]
mov rcx, qword [rdx + 0x10]
cmp dword [rcx + 8], r15d
jg 0x14009ee64
mov rdx, qword [rdx + 0x28]
test rdx, rdx
jne 0x14009df80
mov rdx, rdi
mov rcx, rsi
call fcn.1400babf0
mov rbx, rax
mov rcx, qword [rax + 8]
mov rdx, qword [rcx]
mov rax, qword [rdx + 0x28]
test rax, rax
jne 0x14009dfb9
mov rax, qword [rdx + 0x20]
inc dword [rdi + 0x3c]
mov rcx, qword [rbx + 0x10]
call qword [case.0x14007d279.0]
mov dword [rsp + 0x30], eax
test eax, eax
jne 0x14009dfde
mov qword [rbx + 0x10], r15
mov rcx, rbx
mov qword [rdi + 0x60], r15
call fcn.1400a5d70
cmp qword [rsi + 0x2e0], r15
jne 0x14009dff1
mov eax, 0xffffffff
add dword [rdi + 0x3c], eax
jne 0x14009dffc
mov rdx, rdi
mov rcx, rsi
call fcn.1400347e0
mov rbx, qword [rsp + 0x50]
dec dword [rsi + 0xe0]
mov r10d, dword [rsp + 0x30]
test r10d, r10d
jne 0x14009853e
mov r12, qword [rsp + 0x38]
mov dword [rsp + 0x30], r10d
jmp 0x140097e93
mov rax, qword [rsp + 0x38]
xor r15d, r15d
mov qword [rbp - 0x20], r15
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x14009ee94
mov rdi, qword [rbx]
test rdi, rdi
je 0x14009ee94
mov rax, qword [rdi + 0x30]
lea rdx, [rbp - 0x20]
mov rcx, rbx
call qword [case.0x14007d279.0]
mov rdx, rbx
mov rcx, r13
mov dword [rsp + 0x30], eax
call fcn.1400a5800
mov r10d, dword [rsp + 0x30]
test r10d, r10d
jne 0x14009853e
mov rax, qword [rbp - 0x20]
lea r9d, [r15 - 1]
xor r8d, r8d
mov byte [rsp + 0x20], 2
mov rcx, r13
mov qword [rax], rbx
mov rax, qword [rsp + 0x38]
mov edx, dword [rax + 4]
call fcn.140025930
mov rcx, qword [rbp - 0x20]
test rax, rax
je 0x14009ee7a
mov r12, qword [rsp + 0x38]
mov qword [rax + 0x38], rcx
inc dword [rbx + 8]
jmp 0x140097e8e
mov rcx, qword [rsp + 0x38]
mov r12, qword [rsp + 0x68]
movsxd rax, dword [rcx + 0xc]
movsxd rcx, dword [rcx + 4]
mov rdi, qword [r12 + 0x70]
imul rdx, rax, 0x38
mov rax, qword [r13 + 0x78]
add rdx, r14
movsxd r9, dword [rdx + 0x38]
lea r11, [rdx + 0x38]
mov r13, qword [rax + rcx*8]
xor eax, eax
mov edx, dword [rdx]
mov r8d, eax
mov rsi, qword [r13 + 0x38]
mov r15, qword [rsi]
mov r14, qword [r15]
test r9d, r9d
jle 0x14009e119
movsxd rax, r10d
inc r10d
imul rcx, rax, 0x38
add rcx, r11
mov qword [rdi + r8*8], rcx
inc r8
cmp r8, r9
jl 0x14009e100
mov rax, qword [rsp + 0x38]
mov rcx, rsi
mov qword [rsp + 0x20], rdi
mov r8, qword [rax + 0x10]
mov rax, qword [r14 + 0x40]
call qword [case.0x14007d279.0]
mov rdx, r15
mov rcx, r12
mov dword [rsp + 0x30], eax
call fcn.1400a5800
mov r10d, dword [rsp + 0x30]
test r10d, r10d
jne 0x14009f1dc
mov rax, qword [r14 + 0x50]
mov rcx, rsi
call qword [case.0x14007d279.0]
mov byte [r13 + 2], 0
test eax, eax
je 0x140097e7f
mov r12, qword [rsp + 0x38]
xor r11d, r11d
mov r10d, 1
jmp 0x14009ad19
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
add rbx, r14
cmp byte [rdi + 2], 0
je 0x14009e1d2
test word [rbx + 8], r9w
je 0x14009e1be
mov rcx, rbx
call fcn.1400b6f90
mov r12, qword [rsp + 0x38]
jmp 0x140097e8e
mov r12, qword [rsp + 0x38]
mov word [rbx + 8], r10w
mov rbx, qword [rsp + 0x50]
jmp case.0x1400971b5.86
mov rax, qword [rdi + 0x38]
xorps xmm0, xmm0
xorps xmm1, xmm1
mov rsi, qword [rax]
mov rax, qword [rsp + 0x38]
mov r14, qword [rsi]
movdqu xmmword [rbp + 0x248], xmm0
mov qword [rbp + 0x240], rbx
movdqu xmmword [rbp + 0x258], xmm1
movdqu xmmword [rbp + 0x268], xmm0
test byte [rax + 2], 1
je 0x14009e231
test word [rbx + 8], r9w
je 0x14009e220
mov rcx, rbx
call fcn.1400b6f90
mov rax, qword [rsp + 0x38]
mov ecx, 0x4001
xor r15d, r15d
mov word [rbx + 8], cx
mov dword [rbx], r15d
jmp 0x14009e242
mov ecx, 0x3e40
and word [rbx + 8], cx
or word [rbx + 8], 1
xor r15d, r15d
mov r8d, dword [rax + 8]
lea rdx, [rbp + 0x240]
mov rax, qword [r14 + 0x58]
mov rcx, qword [rdi + 0x38]
call qword [case.0x14007d279.0]
mov rdx, rsi
mov rcx, r13
mov dword [rsp + 0x30], eax
call fcn.1400a5800
cmp dword [rbp + 0x264], 0
jle 0x14009e2c3
movzx ecx, word [rbx + 8]
mov edx, 0x202
movzx eax, cx
and ax, dx
cmp ax, dx
jne 0x14009e293
cmp byte [rbx + 0xa], 1
jne 0x14009e293
mov rax, qword [rbx + 0x10]
jmp 0x14009e2a7
test cl, 1
je 0x14009e29d
mov rax, r15
jmp 0x14009e2a7
mov dl, 1
mov rcx, rbx
call fcn.1400b57a0
mov r8, rax
lea rdx, [0x1402916a8]
mov rcx, r13
call fcn.140096fb0
mov eax, dword [rbp + 0x264]
mov dword [rsp + 0x30], eax
movzx eax, word [rbx + 8]
test al, 2
je 0x14009e2e6
movzx edi, byte [rsp + 0x48]
cmp byte [rbx + 0xa], dil
je 0x14009e2e6
movzx edx, dil
mov rcx, rbx
call fcn.1400a25a0
movzx eax, word [rbx + 8]
test al, 0x12
je 0x14009e306
bt ax, 0xe
mov ecx, dword [rbx + 0xc]
jae 0x14009e2f6
add ecx, dword [rbx]
mov rax, qword [rbx + 0x28]
cmp ecx, dword [rax + 0x80]
jg 0x14009eec9
mov r10d, dword [rsp + 0x30]
mov rsi, qword [rsp + 0x40]
test r10d, r10d
jne 0x14009853e
jmp 0x140097e84
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
cmp byte [rdi + 2], 0
jne 0x14009adae
mov rcx, qword [rdi + 0x38]
mov rbx, qword [rcx]
mov rsi, qword [rbx]
mov rax, qword [rsi + 0x48]
call qword [case.0x14007d279.0]
mov rdx, rbx
mov rcx, r13
mov dword [rsp + 0x30], eax
call fcn.1400a5800
mov r10d, dword [rsp + 0x30]
test r10d, r10d
jne 0x14009b808
mov rcx, qword [rdi + 0x38]
mov rax, qword [rsi + 0x50]
call qword [case.0x14007d279.0]
test eax, eax
jne 0x140099be0
mov rsi, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x50]
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea rax, [rbx + rcx*8]
mov qword [rsp + 0x38], rax
jmp 0x140099bea
mov edi, dword [rsi + 0x30]
or qword [rsi + 0x30], 0x4000000
and edi, 0x4000000
mov rcx, qword [rsp + 0x38]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax + 0x10]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
add rbx, r14
test byte [rbx + 8], 2
je 0x14009e3f6
cmp byte [rbx + 0xa], 1
je 0x14009e3f6
mov dl, 1
mov rcx, rbx
call fcn.1400a25a0
mov dword [rsp + 0x30], eax
mov r10d, eax
test eax, eax
jne 0x14009b808
mov rax, qword [rsi]
mov rcx, rsi
mov rdx, qword [rbx + 0x10]
mov rax, qword [rax + 0x98]
call qword [case.0x14007d279.0]
mov dword [rsp + 0x30], eax
test edi, edi
jne 0x14009e422
mov rax, qword [rsp + 0x40]
and qword [rax + 0x30], 0xfffffffffbffffff
mov rdx, rsi
mov rcx, r13
call fcn.1400a5800
and dword [r13 + 0xc8], 0xfffffffc
mov r10d, dword [rsp + 0x30]
mov rsi, qword [rsp + 0x40]
test r10d, r10d
jne 0x14009853b
mov r12, qword [rsp + 0x38]
jmp 0x140097e8e
cmp byte [rsi + 0x63], 0
jne 0x14009f12f
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x14009eebe
mov r10, qword [rbx]
test r10, r10
je 0x14009eebe
cmp qword [r10 + 0x68], 0
mov r12, qword [rsp + 0x38]
movsxd rdx, dword [r12 + 8]
je 0x140097ba6
movsxd rax, dword [r12 + 0xc]
xor r15d, r15d
movzx edi, byte [rsi + 0x68]
mov r8, qword [r13 + 0x70]
imul rcx, rax, 0x38
mov eax, r15d
add rcx, r14
test edx, edx
jle 0x14009e4d0
nop dword [rax]
nop word [rax + rax]
mov qword [r8 + rax*8], rcx
add rcx, 0x38
inc rax
cmp rax, rdx
jl 0x14009e4c0
mov rax, r12
lea r9, [rbp + 0x68]
mov rcx, rbx
movzx eax, byte [rax + 2]
mov byte [rsi + 0x68], al
mov rax, qword [r10 + 0x68]
call qword [case.0x14007d279.0]
mov rdx, rbx
mov byte [rsi + 0x68], dil
mov rcx, r13
mov dword [rsp + 0x30], eax
call fcn.1400a5800
mov r10d, dword [rsp + 0x30]
test r10d, r10d
jne 0x14009e519
cmp dword [r12 + 4], r15d
je 0x14009e545
mov rax, qword [rbp + 0x68]
mov qword [rsi + 0x38], rax
jmp 0x14009e545
cmp r10b, 0x13
jne 0x14009e545
mov rax, r12
mov rax, qword [rax + 0x10]
cmp byte [rax + 0x1c], r15b
je 0x14009e545
movzx ecx, word [r12 + 2]
cmp ecx, 4
jne 0x14009eea4
mov dword [rsp + 0x30], r15d
jmp 0x140097e8e
inc dword [r13 + 0x3c]
test r10d, r10d
jne 0x14009853e
jmp 0x140097e8e
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
add rdx, qword [r13 + 0x68]
test word [rdx + 8], r9w
je 0x14009e58f
mov rcx, rdx
call fcn.140049180
xor r11d, r11d
mov rdx, rax
mov r9d, 0x2400
mov r8d, 0x1000
lea r10d, [r11 + 1]
jmp 0x14009e598
mov eax, 4
mov word [rdx + 8], ax
mov rax, qword [rsp + 0x38]
mov r12, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 8]
mov rax, qword [rcx + 8]
mov ecx, dword [rax + 0x40]
mov qword [rdx], rcx
jmp 0x140097ea8
mov rdi, qword [rsp + 0x38]
movsxd rax, dword [rdi + 8]
imul rsi, rax, 0x38
add rsi, qword [r13 + 0x68]
test word [rsi + 8], r9w
je 0x14009e5ea
mov rcx, rsi
call fcn.140049180
mov rsi, rax
xor r11d, r11d
jmp 0x14009e5f3
mov eax, 4
mov word [rsi + 8], ax
movsxd rcx, dword [rdi + 4]
mov edi, r11d
mov rax, qword [rsp + 0x40]
shl rcx, 5
mov rax, qword [rax + 0x20]
mov rbx, qword [rcx + rax + 8]
mov rax, qword [rsp + 0x38]
mov ecx, dword [rax + 0xc]
test ecx, ecx
je 0x14009e624
mov rax, qword [rbx + 8]
mov edi, dword [rax + 0x40]
cmp edi, ecx
cmovb edi, ecx
cmp byte [rbx + 0x11], 0
je 0x14009e63b
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x14009e63b
mov rcx, rbx
call fcn.14002b540
mov rax, qword [rbx + 8]
mov rcx, qword [rax]
test edi, edi
je 0x14009e64e
mov dword [rcx + 0xc0], edi
jmp 0x14009e654
mov edi, dword [rcx + 0xc0]
cmp byte [rbx + 0x11], 0
je 0x14009e668
sub dword [rbx + 0x14], 1
jne 0x14009e668
mov rcx, rbx
call fcn.1400b3560
mov r12, qword [rsp + 0x38]
mov eax, edi
mov qword [rsi], rax
mov rsi, qword [rsp + 0x40]
jmp 0x140097e8e
mov rax, qword [rsp + 0x38]
mov rdi, qword [rax + 0x10]
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
add rbx, r14
cmp qword [rdi], rbx
je 0x14009e6e5
mov qword [rdi + 0x18], r13
mov qword [rdi], rbx
movzx eax, byte [rdi + 0x29]
mov edx, eax
sub rdx, 1
lea r9d, [rax - 1]
js 0x14009e6e5
mov rsi, qword [rsp + 0x38]
lea r8, [rdi + 0x30]
lea r8, [r8 + rdx*8]
nop dword [rax]
mov eax, dword [rsi + 8]
lea r8, [r8 - 8]
add eax, r9d
dec r9d
cdqe
imul rcx, rax, 0x38
add rcx, r14
sub rdx, 1
mov qword [r8 + 8], rcx
jns 0x14009e6c0
mov rsi, qword [rsp + 0x40]
mov eax, 0x3e40
lea r8, [rdi + 0x30]
and word [rbx + 8], ax
mov rcx, rdi
or word [rbx + 8], 1
mov rax, qword [rdi + 8]
movzx edx, byte [rdi + 0x29]
mov rax, qword [rax + 0x18]
call qword [case.0x14007d279.0]
mov eax, dword [rdi + 0x24]
test eax, eax
je 0x14009e792
jle 0x14009e761
movzx ecx, word [rbx + 8]
mov edx, 0x202
movzx eax, cx
and ax, dx
cmp ax, dx
jne 0x14009e735
cmp byte [rbx + 0xa], 1
jne 0x14009e735
mov rax, qword [rbx + 0x10]
jmp 0x14009e748
test cl, 1
je 0x14009e73e
xor eax, eax
jmp 0x14009e748
mov dl, 1
mov rcx, rbx
call fcn.1400b57a0
mov r8, rax
lea rdx, [0x1402916a8]
mov rcx, r13
call fcn.140096fb0
mov eax, dword [rdi + 0x24]
mov dword [rsp + 0x30], eax
mov rax, qword [rsp + 0x38]
lea rdx, [r13 + 0x120]
mov r8d, dword [rdi + 0x20]
mov rcx, rsi
mov r9d, dword [rax + 4]
call fcn.1400968f0
mov r10d, dword [rsp + 0x30]
xor r15d, r15d
mov dword [rdi + 0x24], r15d
test r10d, r10d
jne 0x14009853e
movzx eax, word [rbx + 8]
test al, 0x12
je 0x140098c58
test al, 2
je 0x14009e7bd
movzx edi, byte [rsp + 0x48]
cmp byte [rbx + 0xa], dil
je 0x14009e7bd
movzx edx, dil
mov rcx, rbx
call fcn.1400a25a0
movzx eax, word [rbx + 8]
test al, 0x12
je 0x140098c58
bt ax, 0xe
mov ecx, dword [rbx + 0xc]
jae 0x14009d499
add ecx, dword [rbx]
jmp 0x14009d499
mov rsi, qword [rsp + 0x40]
mov r12, qword [rsp + 0x38]
jmp 0x140097e8e
mov r14, qword [rsp + 0x60]
mov r12, qword [rsp + 0x38]
jmp 0x140097e8e
movzx eax, byte [rsi + 0x6a]
test al, 0x41
je 0x14009e8ee
cmp byte [r13 + 0xc5], 0
jne 0x14009e8ee
mov r9, qword [r12 + 0x10]
test r9, r9
jne 0x14009e82c
mov r9, qword [r13 + 0xf0]
test r9, r9
je 0x14009e8e8
test al, 0x40
je 0x14009e864
mov rdx, r9
mov rcx, r13
call fcn.14009f680
mov rcx, qword [rsi + 0xf8]
mov rbx, rax
mov rdx, rax
mov rax, qword [rsi + 0xf0]
call qword [case.0x14007d279.0]
mov rcx, rbx
call fcn.140015cb0
mov rbx, qword [rsp + 0x50]
jmp 0x14009e8d2
cmp dword [rsi + 0xdc], 1
jle 0x14009e8b8
mov r8, r9
lea rdx, str.____s
mov rcx, rsi
call fcn.14007d0b0
mov rdx, qword [rsi + 0xf8]
mov rbx, rax
mov r9, rax
mov r8, r13
mov rax, qword [rsi + 0xf0]
mov ecx, 1
call qword [case.0x14007d279.0]
test rbx, rbx
je 0x14009e85d
mov rdx, rbx
mov rcx, rsi
call fcn.140066270
mov rbx, qword [rsp + 0x50]
jmp 0x14009e8d2
mov rdx, qword [rsi + 0xf8]
mov r8, r13
mov rax, qword [rsi + 0xf0]
mov ecx, r10d
call qword [case.0x14007d279.0]
mov r8d, 0x1000
lea rdx, [0x140000000]
mov r10d, 1
xor r11d, r11d
mov r9d, 0x2400
mov rax, qword [rsp + 0x38]
mov r12, qword [rsp + 0x38]
mov eax, dword [rax + 4]
cmp eax, dword [0x14030817c]
jl 0x14009e944
cmp byte [r12], 0xae
je case.0x1400971b5.86
cmp dword [r13 + 0x90], 1
mov edx, r10d
jle 0x14009e941
mov eax, 0x18
mov rcx, qword [r13 + 0x88]
cmp byte [rax + rcx], 0x11
jne 0x14009e932
mov dword [rax + rcx + 4], r11d
inc edx
add rax, 0x18
cmp edx, dword [r13 + 0x90]
jl 0x14009e920
mov eax, r11d
inc eax
mov dword [r12 + 4], eax
inc dword [r13 + 0xec]
jmp 0x14009ad1e
mov rsi, qword [rsp + 0x40]
mov r12, qword [rsp + 0x38]
jmp case.0x1400971b5.86
mov rsi, qword [rsp + 0x40]
mov r9d, 0x2400
mov r12, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x50]
jmp 0x140097e9f
mov rdx, qword [rsp + 0x38]
mov dword [r13 + 0x38], ecx
movzx eax, byte [rdx + 8]
mov byte [r13 + 0xc2], al
mov dword [r13 + 0x34], ebx
test ecx, ecx
je 0x14009ea31
movzx eax, word [rdx + 2]
mov rcx, r13
test ax, ax
je 0x14009e9f7
mov r8d, eax
lea rdx, str._s_constraint_failed
lea rax, [0x140000000]
mov r8, qword [rax + r8*8 + 0x28c8c8]
call fcn.140096fb0
mov rax, qword [rsp + 0x38]
mov r9, qword [rax + 0x10]
test r9, r9
je 0x14009ea07
mov r8, qword [r13 + 0xa8]
lea rdx, str._z:__s
mov rcx, rsi
call fcn.14007d0b0
mov qword [r13 + 0xa8], rax
jmp 0x14009ea07
mov r8, qword [rdx + 0x10]
lea rdx, [0x1402916a8]
call fcn.140096fb0
mov rax, qword [r13 + 0xa8]
lea rdx, str.abort_at__d_in___s_:__s
mov r9, qword [r13 + 0xf0]
mov r8d, ebx
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x38]
mov ecx, dword [rax + 4]
call fcn.140023080
mov rcx, r13
call fcn.1400a0600
mov rbx, qword [rsp + 0x58]
mov edi, eax
cmp eax, 5
jne 0x14009ea4e
mov dword [r13 + 0x38], eax
jmp 0x14009eb43
cmp dword [r13 + 0x38], 0
mov edi, 0x65
mov eax, 1
cmovne edi, eax
jmp 0x14009eb43
mov rax, qword [rsi + 0x28]
mov rsi, qword [rsp + 0x40]
test rax, rax
je 0x14009eedd
mov rax, qword [rax + 0x140]
test rax, rax
je 0x14009eedd
mov dword [rax + 0x18], send
inc dword [rax + 0x30]
jmp 0x14009eedd
mov ecx, 0x15d18
call fcn.140064210
mov r10d, eax
mov dword [rsp + 0x30], eax
mov rsi, qword [rsp + 0x40]
mov r13, qword [rsp + 0x68]
jmp 0x14009853b
lea rdx, str.cannot_open_savepoint___SQL_statements_in_progress
mov rcx, r13
call fcn.140096fb0
mov r10d, 5
mov rsi, rdi
jmp 0x140098536
mov r13, qword [rsp + 0x68]
lea rdx, str.cannot_release_savepoint___SQL_statements_in_progress
mov rcx, r13
call fcn.140096fb0
mov r10d, 5
mov dword [rsp + 0x30], r10d
jmp 0x14009853e
mov byte [rsi + 0x61], 0
mov r13, rbx
xor r15d, r15d
jmp 0x140098543
mov rcx, qword [rsp + 0x38]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x50]
mov r13, rbx
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rbx + 0x34], edx
mov byte [rsi + 0x61], 0
mov edi, 5
mov dword [r13 + 0x38], edi
mov rbx, qword [rsp + 0x58]
mov r15, qword [rbp - 0x18]
cmp r15, rbx
jb 0x14009f358
mov rax, qword [rsi + 0x1e8]
test rax, rax
je 0x14009f358
mov ecx, dword [rsi + 0x1f8]
add rbx, rcx
mov rcx, qword [rsi + 0x1f0]
call qword [case.0x14007d279.0]
test eax, eax
je 0x14009eb47
mov rbx, 0xffffffffffffffff
mov r10d, 9
xor r15d, r15d
mov dword [rsp + 0x30], r10d
mov edi, 1
lea r14, [0x140296c64]
jmp 0x14009854f
mov dword [rbx + 0x38], 0x313
lea rdx, str.FOREIGN_KEY_constraint_failed
mov rcx, rbx
mov byte [rbx + 0xc2], 2
mov r13, rbx
call fcn.140096fb0
jmp 0x14009eb3e
mov eax, 8
mov r10d, eax
mov dword [rsp + 0x30], eax
jmp 0x14009853e
mov rbx, qword [rsp + 0x58]
cmp r10b, 5
jne 0x14009eb8f
mov rcx, qword [rsp + 0x38]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x50]
mov edi, dword [rsp + 0x30]
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [r13 + 0x34], edx
mov dword [r13 + 0x38], r10d
jmp 0x14009eb43
mov rdx, qword [r13 + 0xa8]
test rdx, rdx
je 0x14009ec2b
mov rcx, rsi
call fcn.140066270
mov edx, 0x1c
mov rcx, rsi
call fcn.140066380
test rax, rax
je 0x14009ec5d
movups xmm0, xmmword [str.database_schema_has_changed]
movups xmmword [rax], xmm0
movsd xmm1, qword [0x140292a50]
movsd qword [rax + 0x10], xmm1
mov ecx, dword [0x140292a58]
mov dword [rax + 0x18], ecx
mov qword [r13 + 0xa8], rax
mov rax, qword [rsp + 0x38]
movsxd rdx, dword [rax + 4]
mov rax, qword [rsi + 0x20]
mov rcx, rdx
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov eax, dword [rbp - 0x50]
cmp dword [rcx], eax
je 0x14009ec8c
mov rcx, rsi
call fcn.140088050
and dword [r13 + 0xc8], 0xfffffffd
mov r10d, send
or dword [r13 + 0xc8], 1
mov dword [rsp + 0x30], r10d
jmp 0x14009853e
mov r10d, 0x204
jmp 0x140098536
mov rcx, qword [rbx + 0x10]
call fcn.14005d5a0
mov r10d, dword [rsp + 0x30]
mov rdi, r12
jmp 0x140098543
lea r14, [0x140296c64]
mov r9d, 0x147c1
lea r8, str.database_corruption
mov qword [rsp + 0x20], r14
lea rdx, str._s_at_line__d_of___.10s_
mov ecx, 0xb
call fcn.140023080
mov rsi, qword [rsp + 0x40]
mov r10d, recv
mov dword [rsp + 0x30], r10d
lea edi, [r10 - 0xa]
jmp 0x14009854a
mov eax, 0x30b
lea r14, [0x140296c64]
mov ecx, eax
mov qword [rsp + 0x20], r14
mov r9d, 0x1691e
mov dword [rsp + 0x30], eax
lea r8, str.index_corruption
lea rdx, str._s_at_line__d_of___.10s_
call fcn.140023080
xor r15d, r15d
mov r10d, 0x30b
lea edi, [r15 + 1]
jmp 0x14009854a
mov ecx, 0x169ea
call fcn.140064210
mov r10d, eax
mov dword [rsp + 0x30], eax
jmp 0x14009853b
mov r10d, 6
mov byte [r13 + 0xc2], 2
jmp 0x140098536
mov rcx, rsi
call fcn.140087f60
mov r10d, dword [rsp + 0x30]
mov rbx, qword [rsp + 0x58]
cmp r10d, 7
je 0x14009ee89
jmp 0x14009eb8a
call fcn.140087f60
mov rbx, qword [rsp + 0x58]
mov r12d, 1
jmp 0x14009f17c
lea rdx, str.too_many_levels_of_trigger_recursion
mov dword [rsp + 0x30], r10d
mov rcx, r13
call fcn.140096fb0
mov r10d, dword [rsp + 0x30]
jmp 0x14009853b
mov rcx, rbx
call fcn.14001ad60
mov r8, rax
lea rdx, [0x1402916a8]
mov rcx, r13
call fcn.140096fb0
mov r10d, dword [rsp + 0x30]
mov rsi, qword [rsp + 0x40]
jmp 0x14009853b
mov r13, qword [rsp + 0x68]
lea rax, str.into
cmp esi, 5
mov dword [rsp + 0x30], r10d
lea r8, str.out_of
mov rcx, r13
cmove r8, rax
lea rdx, str.cannot_change__s_wal_mode_from_within_a_transaction
call fcn.140096fb0
mov r10d, dword [rsp + 0x30]
mov rsi, r12
jmp 0x14009853b
cmp r10b, 6
jne 0x14009b393
mov rax, qword [rsp + 0x38]
lea rdx, str.database_table_is_locked:__s
mov rcx, r13
mov r8, qword [rax + 0x10]
call fcn.140096fb0
mov r10d, dword [rsp + 0x30]
mov rsi, qword [rsp + 0x40]
jmp 0x14009853e
dec dword [rsi + 0xe0]
mov r10d, 6
mov dword [rsp + 0x30], r10d
jmp 0x14009853e
mov rax, qword [rdi + 0x38]
call qword [case.0x14007d279.0]
mov rbx, qword [rsp + 0x58]
mov r12d, 1
jmp 0x14009f17c
mov r10d, 6
mov dword [rsp + 0x30], r10d
jmp 0x14009853e
movzx eax, cl
cmp ecx, 5
mov ecx, 2
cmove eax, ecx
mov byte [r13 + 0xc2], al
jmp 0x14009853e
mov r10d, 6
jmp 0x140098536
mov rsi, qword [rsp + 0x40]
jmp 0x14009eedd
mov r13, qword [rsp + 0x68]
jmp 0x14009eeda
mov r13, r12
mov rsi, r9
lea rdx, str.string_or_blob_too_big
mov rcx, r13
call fcn.140096fb0
mov r10d, send
jmp 0x140098536
cmp qword [r13 + 0x50], 0
jle case.0x1400971b5.81
mov dword [r13 + 0x38], 0x313
lea rdx, str.FOREIGN_KEY_constraint_failed
mov byte [r13 + 0xc2], 2
mov rcx, r13
call fcn.140096fb0
mov edi, 1
xor r15d, r15d
mov r10d, edi
mov dword [rsp + 0x30], edi
jmp 0x140098543
mov eax, dword [r13 + 0x30]
xor r15d, r15d
add eax, 2
mov edi, r15d
or eax, 1
mov dword [r13 + 0x30], eax
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rsi, rax, 0x38
mov rax, qword [rsp + 0x38]
add rsi, r14
mov qword [r13 + 0xa0], rsi
cmp dword [rax + 8], r15d
jle 0x14009efbf
lea rbx, [rsi + 8]
mov r14d, 0x202
test word [rbx], r8w
je 0x14009ef8e
movsxd rax, edi
imul rcx, rax, 0x38
add rcx, rsi
call fcn.1400a1dd0
test eax, eax
jne 0x14009f167
movzx eax, word [rbx]
and ax, r14w
cmp ax, 2
jne 0x14009efa4
lea rcx, [rbx - 8]
call fcn.1400b6e60
mov rax, qword [rsp + 0x38]
inc edi
add rbx, 0x38
mov r8d, 0x1000
cmp edi, dword [rax + 8]
jl 0x14009ef71
mov rbx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x40]
cmp byte [rsi + 0x63], r15b
jne 0x14009ee84
test byte [rsi + 0x6a], 4
je 0x14009eff2
mov rdx, qword [rsi + 0xf8]
xor r9d, r9d
mov rax, qword [rsi + 0xf0]
mov r8, r13
lea ecx, [r9 + 4]
call qword [case.0x14007d279.0]
mov rcx, qword [rsp + 0x38]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, rbx
mov edi, 0x64
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
inc edx
mov dword [r13 + 0x34], edx
jmp 0x14009eb3e
mov rax, qword [rsp + 0x38]
mov ebx, dword [rax + 4]
mov ecx, dword [rax + 8]
movzx eax, byte [rsi + 0x61]
cmp ebx, eax
je 0x14009f0f7
test ecx, ecx
je 0x14009f051
mov edx, 0x204
mov rcx, rsi
call fcn.140088a10
mov al, 1
jmp 0x14009f090
test ebx, ebx
je 0x14009f078
cmp dword [rsi + 0xd8], 0
jle 0x14009f078
lea rdx, str.cannot_commit_transaction___SQL_statements_in_progress
mov rcx, r13
call fcn.140096fb0
mov r10d, 5
jmp 0x140098536
mov edx, r10d
mov rcx, r13
call fcn.140096200
mov edi, eax
test eax, eax
jne 0x14009eb3e
movzx eax, bl
mov rcx, r13
mov byte [rsi + 0x61], al
call fcn.1400a0600
cmp eax, 5
jne 0x14009f0d8
mov rcx, qword [rsp + 0x38]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x50]
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov eax, 1
sub al, bl
mov dword [r13 + 0x34], edx
mov byte [rsi + 0x61], al
jmp 0x14009eb35
mov rcx, rsi
call fcn.1400616f0
cmp dword [r13 + 0x38], 0
mov edi, 0x65
mov eax, 1
cmovne edi, eax
jmp 0x14009eb3e
test ebx, ebx
jne 0x14009f107
lea rdx, str.cannot_start_a_transaction_within_a_transaction
jmp 0x14009ef15
test ecx, ecx
lea rax, str.cannot_rollback___no_transaction_is_active
lea rdx, str.cannot_commit___no_transaction_is_active
cmovne rdx, rax
jmp 0x14009ef15
mov rbx, qword [rsp + 0x58]
jmp 0x14009eb81
mov rsi, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x58]
xor r15d, r15d
lea r12d, [r15 + 1]
jmp 0x14009f17c
mov rsi, qword [rsp + 0x40]
xor r15d, r15d
mov rbx, qword [rsp + 0x58]
jmp 0x14009f17c
mov r13, qword [rsp + 0x68]
jmp 0x14009f12a
mov rsi, qword [rsp + 0x40]
xor r15d, r15d
mov r13, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x58]
jmp 0x14009f17c
mov rsi, qword [rsp + 0x40]
mov r12d, 1
mov rbx, qword [rsp + 0x58]
jmp 0x14009f17c
mov r12, r10
cmp byte [rsi + 0x63], 0
jne 0x14009f1bd
cmp byte [rsi + 0x64], 0
jne 0x14009f1bd
mov byte [rsi + 0x63], 1
cmp dword [rsi + 0xdc], 0
jle 0x14009f19c
mov dword [rsi + 0x178], r12d
inc dword [rsi + 0x180]
mov word [rsi + 0x184], r15w
mov rax, qword [rsi + 0x140]
test rax, rax
je 0x14009f1bd
mov dword [rax + 0x18], 7
lea rdx, str.out_of_memory
mov rcx, r13
call fcn.140096fb0
mov r10d, 7
mov dword [rsp + 0x30], r10d
jmp 0x14009861a
mov rsi, qword [rsp + 0x40]
mov r13, r12
jmp 0x14009853b
mov rsi, rdi
jmp 0x14009853e
cmp r10d, 0x210a
jne 0x14009f228
mov r9d, 0x17213
mov qword [rsp + 0x20], r14
lea r8, str.database_corruption
mov ecx, 0xb
lea rdx, str._s_at_line__d_of___.10s_
call fcn.140023080
mov r10d, recv
mov dword [rsp + 0x30], r10d
cmp qword [r13 + 0xa8], 0
jne 0x14009f260
cmp r10d, 0xc0a
je 0x14009f260
mov ecx, r10d
call fcn.140017040
mov r8, rax
lea rdx, [0x1402916a8]
mov rcx, r13
call fcn.140096fb0
mov r10d, dword [rsp + 0x30]
mov dword [r13 + 0x38], r10d
jmp 0x14009f26d
mov dword [r13 + 0x38], r10d
cmp r10d, 0xc0a
je 0x14009f2a2
movzx eax, r10b
sub eax, 0xa
test eax, 0xfffffffb
jne 0x14009f2a2
mov rcx, qword [rsi]
mov rax, qword [rcx + 0x80]
test rax, rax
je 0x14009f29c
xor r8d, r8d
xor edx, edx
call qword [case.0x14007d279.0]
mov r10d, dword [rsp + 0x30]
jmp 0x14009f29f
mov eax, r15d
mov dword [rsi + 0x58], eax
mov rcx, qword [rsp + 0x38]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x50]
mov r9, qword [r13 + 0xf0]
imul rcx
mov rax, qword [r13 + 0xa8]
mov ecx, r10d
sar rdx, 2
mov r8, rdx
mov qword [rsp + 0x20], rax
shr r8, 0x3f
add r8, rdx
lea rdx, str.statement_aborts_at__d:___s___s
call fcn.140023080
mov rcx, r13
call fcn.1400a0600
cmp dword [rsp + 0x30], 0xc0a
jne 0x14009f33b
cmp byte [rsi + 0x63], 0
jne 0x14009f33b
cmp byte [rsi + 0x64], 0
jne 0x14009f33b
mov byte [rsi + 0x63], 1
cmp dword [rsi + 0xdc], 0
jle 0x14009f31a
mov dword [rsi + 0x178], edi
inc dword [rsi + 0x180]
mov word [rsi + 0x184], r15w
mov rax, qword [rsi + 0x140]
test rax, rax
je 0x14009f33b
mov dword [rax + 0x18], 7
movzx eax, byte [rsp + 0x70]
test al, al
je 0x14009eb43
lea edx, [rax - 1]
mov rcx, rsi
call fcn.140088050
jmp 0x14009eb43
add dword [r13 + 0xe4], r15d
cmp dword [r13 + 0xd0], 0
movaps xmm6, xmmword [rsp + 0x3c0]
mov r15, qword [rsp + 0x3d0]
mov r14, qword [rsp + 0x3d8]
mov r12, qword [rsp + 0x418]
mov rsi, qword [rsp + 0x410]
mov rbx, qword [rsp + 0x408]
je 0x14009f3a1
mov rcx, r13
call fcn.1400b6dd0
mov eax, edi
mov rcx, qword [rbp + 0x2b8]
xor rcx, rsp
call fcn.1400cfc50
add rsp, 0x3e0
pop r13
pop rdi
pop rbp
ret