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

Disassembly:
mov r11, rsp
push rbp
push r13
lea rbp, [r11 - 0x368]
sub rsp, 0x458
mov rax, qword [0x1801eab50]
xor rax, rsp
mov qword [rbp + 0x320], rax
mov rax, qword [rcx + 8]
mov r13, rcx
mov qword [r11 + 0x10], rbx
xor bl, bl
mov qword [r11 + 0x18], rsi
mov rsi, qword [rcx + 0x10]
mov qword [r11 + 0x20], rdi
xor edi, edi
mov qword [r11 - 0x18], r12
mov r12, qword [rcx]
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x48], rax
mov qword [r11 - 0x20], r14
movzx eax, byte [r12 + 0x52]
mov byte [rsp + 0x60], al
mov rax, qword [r12 + 0x30]
mov qword [r11 - 0x28], r15
mov qword [rsp + 0x68], rax
movaps xmmword [r11 - 0x38], xmm6
mov qword [rsp + 0x78], rcx
mov dword [rsp + 0x54], edi
mov qword [rbp - 0x78], r12
mov byte [rsp + 0x40], bl
mov dword [rbp - 0x48], edi
mov dword [rsp + 0x50], edi
mov dword [rbp - 0x58], edi
mov qword [rsp + 0x70], rsi
mov qword [rbp - 0x20], rdi
call fcn.180136630
cmp dword [r13 + 0x84], 7
lea r14d, [rdi + 1]
je 0x18013d915
xor r11d, r11d
mov dword [r13 + 0x84], r11d
mov qword [r13 + 0xc8], r11
mov qword [r13 + 0x28], r11
mov dword [r12 + 0x220], r11d
mov eax, dword [r12 + 0x148]
test eax, eax
jne 0x18013d8b7
cmp qword [r12 + 0x198], rdi
je 0x1801368bf
mov r8d, dword [r12 + 0x1a8]
xor edx, edx
mov eax, dword [r13 + 0xb8]
div r8d
sub r8d, edx
mov dword [rbp - 0x58], r8d
movsxd rax, dword [r13 + 0x80]
mov edx, 4
mov r9, qword [rsp + 0x58]
mov r8d, 0x2460
mov r10, qword [rsp + 0x68]
xorps xmm6, xmm6
mov ebx, r11d
lea rcx, [rax + rax*2]
mov eax, 0xffffffff
lea rdi, [r9 + rcx*8]
mov qword [rbp + 0xa0], rax
mov qword [rsp + 0x48], rdi
mov r15, rdi
nop dword [rax]
inc ebx
mov rdi, r10
mov dword [rsp + 0x50], ebx
movzx ebx, byte [r15]
cmp ebx, 0x9e
ja case.0x180136931.62
lea rcx, [0x180000000]
mov ecx, dword [rcx + rbx*4 + 0x13dad0]
lea rax, [0x180000000]
add rcx, rax
jmp rcx
mov rcx, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
sub rcx, r9
imul r8, rax, 0x38
movabs rax, 0x2aaaaaaaaaaaaaab
mov word [r8 + rsi + 8], dx
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rax, rdx
cdqe
mov qword [r8 + rsi], rax
jmp 0x18013d1f8
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rdx, rax, 0x38
mov rax, qword [rdx + rsi]
lea rcx, [rax + rax*2]
mov eax, 0x80
mov word [rdx + rsi + 8], ax
lea r15, [r9 + rcx*8]
jmp 0x180137153
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 0xc]
dec eax
cdqe
mov qword [rcx + rsi], rax
mov word [rcx + rsi + 8], dx
cmp dword [r15 + 8], 0
jne 0x18013d1f8
jmp case.0x180136931.62
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rdx, rax, 0x38
mov rax, qword [rdx + rsi]
lea rcx, [rax + rax*2]
mov eax, dword [r9 + rcx*8 + 8]
dec eax
cdqe
jmp 0x180136985
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 4]
sub rbx, r9
imul r8, rax, 0x38
movabs rax, 0x2aaaaaaaaaaaaaab
mov word [r8 + rsi + 8], dx
movsxd rcx, dword [r8 + rsi]
imul rbx
lea rcx, [rcx + rcx*2]
sar rdx, 2
lea r15, [r9 + rcx*8]
mov rax, rdx
shr rax, 0x3f
add rax, rdx
cdqe
mov qword [r8 + rsi], rax
jmp 0x18013714d
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
test byte [rcx + rsi + 8], 1
je 0x180136b67
mov rcx, qword [rsp + 0x48]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, r9
imul rcx
mov rbx, rdx
mov rdx, qword [rsp + 0x48]
sar rbx, 2
mov rax, rbx
shr rax, 0x3f
mov ecx, dword [rdx + 4]
add rbx, rax
test ecx, ecx
jne 0x18013d25b
mov rdx, qword [r13 + 0xf8]
test rdx, rdx
je 0x18013d256
mov rax, qword [rdx + 8]
mov rcx, rdx
mov qword [r13 + 0xf8], rax
dec dword [r13 + 0x108]
mov eax, dword [r13 + 0x98]
mov dword [r12 + 0x64], eax
add dword [r12 + 0x68], eax
call fcn.18013e500
mov rcx, qword [rsp + 0x48]
mov r10, qword [r12 + 0x30]
mov r9, qword [r13 + 8]
mov qword [rsp + 0x68], r10
cmp dword [rcx + 8], 4
mov qword [rsp + 0x58], r9
jne 0x180136aef
cdqe
lea rcx, [rax + rax*2]
mov eax, dword [r9 + rcx*8 + 8]
dec eax
mov rsi, qword [r13 + 0x10]
xor r11d, r11d
cdqe
mov qword [rsp + 0x70], rsi
lea rcx, [rax + rax*2]
lea r15, [r9 + rcx*8]
jmp 0x18013714d
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
add rcx, qword [r13 + 0x10]
test word [rcx + 8], r8w
je 0x180136b57
call fcn.1800db5c0
mov r9, qword [rsp + 0x58]
mov rcx, rax
mov rax, qword [rsp + 0x48]
xor r11d, r11d
mov r10, qword [rsp + 0x68]
mov r8d, 0x2460
mov r15, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
lea edx, [r11 + 4]
mov qword [rcx], rax
jmp case.0x180136931.62
mov rax, qword [rsp + 0x48]
mov word [rcx + 8], dx
movsxd rax, dword [rax + 4]
mov qword [rcx], rax
mov r15, qword [rsp + 0x48]
jmp case.0x180136931.62
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
add rdx, qword [r13 + 0x10]
test word [rdx + 8], r8w
je 0x180136ba9
mov rcx, rdx
call fcn.1800db5c0
mov r9, qword [rsp + 0x58]
mov rdx, rax
mov r10, qword [rsp + 0x68]
xor r11d, r11d
mov r8d, 0x2460
jmp 0x180136bb2
mov eax, 4
mov word [rdx + 8], ax
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
mov rax, qword [rax + 0x10]
mov rcx, qword [rax]
mov qword [rdx], rcx
jmp 0x180137153
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
add rdx, qword [r13 + 0x10]
test word [rdx + 8], r8w
je 0x180136c01
mov rcx, rdx
call fcn.1800db5c0
mov r9, qword [rsp + 0x58]
mov rdx, rax
mov r10, qword [rsp + 0x68]
xor r11d, r11d
mov r8d, 0x2460
mov eax, 8
jmp 0x180136bae
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 8]
imul rsi, rax, 0x38
add rsi, qword [r13 + 0x10]
test word [rsi + 8], r8w
je 0x180136c3b
mov rcx, rsi
call fcn.1800db5c0
mov rcx, qword [rsp + 0x48]
mov rsi, rax
xor r11d, r11d
mov r8d, 0x2460
jmp 0x180136c3f
mov word [rsi + 8], dx
mov byte [rcx], 0x18
mov rbx, qword [rcx + 0x10]
test rbx, rbx
jne 0x180136c50
mov eax, r11d
jmp 0x180136c65
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rbx + rax], 0
jne 0x180136c57
and eax, 0x3fffffff
movzx edx, byte [rsp + 0x60]
mov dword [rcx + 4], eax
cmp dl, 1
je 0x180136e25
test rbx, rbx
jne 0x180136ca7
test word [rsi + 8], r8w
je 0x180136c96
mov rcx, rsi
call fcn.18014f910
mov rcx, qword [rsp + 0x48]
movzx edx, byte [rsp + 0x60]
jmp 0x180136c9b
mov word [rsi + 8], r14w
test byte [rsi + 8], 2
je 0x180136d39
jmp 0x180136d1f
mov rax, qword [rsi + 0x28]
test rax, rax
je 0x180136cb6
mov r14d, dword [rax + 0x6c]
jmp 0x180136cbc
mov r14d, 0x3b9aca00
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rbx + rax], 0
jne 0x180136cc3
and eax, 0x3fffffff
lea edi, [r14 + 1]
cmp eax, r14d
cmovle edi, eax
test word [rsi + 8], r8w
jne 0x180136ce8
cmp dword [rsi + 0x20], 0
je 0x180136cfa
mov rcx, rsi
call fcn.18014f7e0
mov rcx, qword [rsp + 0x48]
movzx edx, byte [rsp + 0x60]
mov qword [rsi + 0x10], rbx
mov eax, 0xa02
mov qword [rsi + 0x30], 0
mov dword [rsi + 0xc], edi
mov word [rsi + 8], ax
mov byte [rsi + 0xa], 1
cmp edi, r14d
jg 0x18013d620
cmp byte [rsi + 0xa], dl
je 0x180136d39
mov rcx, rsi
call fcn.1801405b0
test eax, eax
jne 0x180138f36
mov rcx, qword [rsp + 0x48]
xor r11d, r11d
mov eax, 0x800
mov dword [rsi + 0x20], r11d
or word [rsi + 8], ax
cmp byte [rcx + 1], 0xff
jne 0x180136e0e
mov rbx, qword [rcx + 0x10]
test rbx, rbx
je 0x180136e0e
cmp qword [r12 + 0x290], r11
je 0x180136d7a
mov rdx, rbx
mov rcx, r12
call fcn.1800d60e0
jmp 0x180136e06
cmp rbx, qword [r12 + 0x178]
jb 0x180136dab
cmp rbx, qword [r12 + 0x180]
jae 0x180136dab
mov rax, qword [r12 + 0x170]
mov qword [rbx], rax
mov qword [r12 + 0x170], rbx
dec dword [r12 + 0x158]
jmp 0x180136e0e
cmp dword [0x1801e5920], r11d
je 0x180136dfd
mov rcx, qword [0x1801ee840]
test rcx, rcx
je 0x180136dc6
call qword [0x1801e59a8]
mov rcx, rbx
call qword [0x1801e5960]
dec qword [0x1801ee598]
movsxd rcx, eax
sub qword [0x1801ee550], rcx
mov rcx, rbx
call qword [0x1801e5950]
mov rcx, qword [0x1801ee840]
test rcx, rcx
je 0x180136e06
call qword [0x1801e59b8]
jmp 0x180136e06
mov rcx, rbx
call qword [0x1801e5950]
mov rcx, qword [rsp + 0x48]
xor r11d, r11d
mov byte [rcx + 1], 0xff
mov rax, qword [rsi + 0x10]
mov qword [rcx + 0x10], rax
mov eax, dword [rsi + 0xc]
mov dword [rcx + 4], eax
mov dword [rsp + 0x54], r11d
cmp eax, dword [r12 + 0x6c]
jg 0x18013d620
mov rsi, qword [rsp + 0x70]
mov r8d, 0x2460
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 8]
imul rdx, rax, 0x38
add rdx, qword [r13 + 0x10]
test word [rdx + 8], r8w
je 0x180136e5e
mov rcx, rdx
call fcn.1800db5c0
mov rdx, rax
movzx r8d, byte [rsp + 0x60]
mov eax, 0xa02
mov word [rdx + 8], ax
mov r15, rbx
mov rax, qword [rbx + 0x10]
mov qword [rdx + 0x10], rax
mov eax, dword [rbx + 4]
mov dword [rdx + 0xc], eax
mov byte [rdx + 0xa], r8b
cmp byte [rbx + 3], 0
je 0x180137095
movsxd rax, dword [rbx + 0xc]
xor r11d, r11d
mov r9, qword [rsp + 0x58]
mov r8d, 0x2460
mov r10, qword [rsp + 0x68]
mov ebx, dword [rsp + 0x50]
imul rcx, rax, 0x38
cmp qword [rcx + rsi], r11
je 0x180136eba
mov eax, 0xa10
mov word [rdx + 8], ax
mov edx, 4
jmp 0x18013715c
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rbx, rax, 0x38
add rbx, qword [r13 + 0x10]
test word [rbx + 8], r8w
je 0x180136f00
mov rcx, rbx
call fcn.1800db5c0
mov r9, qword [rsp + 0x58]
xor r11d, r11d
mov r10, qword [rsp + 0x68]
mov rbx, rax
mov r8d, 0x2460
lea edx, [r11 + 4]
jmp 0x180136f04
mov word [rbx + 8], dx
mov rax, qword [rsp + 0x48]
mov esi, r14d
mov r15, qword [rsp + 0x48]
mov ecx, 0x101
mov edi, dword [rax + 0xc]
cmp dword [r15 + 4], 0
mov eax, dword [rax + 8]
cmovne si, cx
add rbx, 8
sub edi, eax
mov word [rbx], si
test edi, edi
jle 0x18013c804
nop word [rax + rax]
test word [rbx + 0x38], r8w
lea rbx, [rbx + 0x38]
je 0x180136f5a
lea rcx, [rbx - 8]
call fcn.18014f910
mov r8d, 0x2460
dec edi
mov word [rbx], si
test edi, edi
jg 0x180136f40
mov rsi, qword [rsp + 0x70]
xor r11d, r11d
mov r9, qword [rsp + 0x58]
mov r10, qword [rsp + 0x68]
jmp 0x180137153
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov eax, 0xff7f
add rcx, rsi
and word [rcx + 8], ax
or word [rcx + 8], 1
jmp case.0x180136931.62
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 8]
imul r14, rax, 0x38
add r14, qword [r13 + 0x10]
test word [r14 + 8], r8w
je 0x180136fd0
mov rcx, r14
call fcn.1800db5c0
mov r14, rax
xor r11d, r11d
mov r8d, 0x2460
jmp 0x180136fd5
mov word [r14 + 8], dx
mov rdi, qword [rbx + 0x10]
mov ebx, dword [rbx + 4]
test rdi, rdi
jne 0x180137005
test word [r14 + 8], r8w
je 0x180136ff5
mov rcx, r14
call fcn.18014f910
jmp 0x180137087
mov r10d, 1
mov word [r14 + 8], r10w
jmp 0x180137087
mov rax, qword [r14 + 0x28]
test rax, rax
je 0x180137013
mov ecx, dword [rax + 0x6c]
jmp 0x180137018
mov ecx, 0x3b9aca00
mov esi, reloc.WS2_32.dll_recv
test ebx, ebx
jns 0x18013704f
movsxd rdx, ecx
mov ebx, r11d
test ecx, ecx
js 0x18013704a
mov rcx, rdi
nop
movzx eax, byte [rcx + 1]
or al, byte [rcx]
je 0x18013704a
add rcx, 2
add ebx, 2
mov rax, rcx
sub rax, rdi
cmp rax, rdx
jle 0x180137030
mov esi, 0x210
test word [r14 + 8], r8w
jne 0x18013705d
cmp dword [r14 + 0x20], 0
je 0x180137065
mov rcx, r14
call fcn.18014f7e0
mov qword [r14 + 0x10], rdi
mov eax, 0x800
or si, ax
mov qword [r14 + 0x30], 0
mov dword [r14 + 0xc], ebx
mov word [r14 + 8], si
mov rsi, qword [rsp + 0x70]
movzx eax, byte [rsp + 0x60]
mov byte [r14 + 0xa], al
mov r15, qword [rsp + 0x48]
xor r11d, r11d
mov r9, qword [rsp + 0x58]
mov edx, 4
mov r10, qword [rsp + 0x68]
mov r8d, 0x2460
jmp case.0x180136931.62
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, qword [r13 + 0x68]
movzx eax, word [rbx - 0x30]
test al, 0x12
je 0x1801370e5
bt ax, 0xe
mov ecx, dword [rbx - 0x2c]
jae 0x1801370d8
add ecx, dword [rbx - 0x38]
mov rax, qword [rbx - 0x10]
cmp ecx, dword [rax + 0x6c]
jg 0x18013d620
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
add rax, qword [r13 + 0x10]
test word [rax + 8], r8w
je 0x18013711e
mov rcx, rax
call fcn.1800db5c0
mov r9, qword [rsp + 0x58]
xor r11d, r11d
mov r10, qword [rsp + 0x68]
mov r8d, 0x2460
lea edx, [r11 + 4]
jmp 0x180137122
mov word [rax + 8], dx
test word [rax + 8], r8w
je 0x180137179
mov r8d, 0x800
lea rdx, [rbx - 0x38]
mov rcx, rax
call fcn.18014e580
mov r15, qword [rsp + 0x48]
xor r11d, r11d
mov r10, qword [rsp + 0x68]
mov r9, qword [rsp + 0x58]
mov r8d, 0x2460
mov edx, 4
mov ebx, dword [rsp + 0x50]
mov r12, qword [rbp - 0x78]
add r15, 0x18
mov r13, qword [rsp + 0x78]
mov r14d, 1
mov qword [rsp + 0x48], r15
jmp 0x180136900
movups xmm0, xmmword [rbx - 0x38]
mov r15, qword [rsp + 0x48]
mov ecx, 0x800
movups xmmword [rax], xmm0
movsd xmm1, qword [rbx - 0x28]
movsd qword [rax + 0x10], xmm1
test word [rbx - 0x30], cx
jne case.0x180136931.62
mov ebx, 0xebff
and word [rax + 8], bx
or word [rax + 8], cx
jmp case.0x180136931.62
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
mov esi, dword [rcx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
add rdi, qword [rsp + 0x70]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x70]
nop dword [rax + rax]
test word [rbx + 8], r8w
jne 0x1801371dd
cmp dword [rbx + 0x20], 0
je 0x1801371e8
mov rcx, rbx
call fcn.18014f7e0
xor r11d, r11d
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], r14w
mov dword [rdi + 0x20], r11d
movzx eax, word [rbx + 8]
bt ax, 0xc
jae 0x1801372c8
mov ecx, select
bt ax, cx
jae 0x180137265
mov edx, dword [rbx + 0xc]
mov r8d, r14d
add edx, dword [rbx]
mov rcx, rbx
test edx, edx
cmovle edx, r14d
call fcn.18013fd90
test eax, eax
jne 0x180137265
movsxd rcx, dword [rbx + 0xc]
xor edx, edx
add rcx, qword [rbx + 0x10]
movsxd r8, dword [rbx]
call fcn.180162c50
mov eax, dword [rbx]
add dword [rbx + 0xc], eax
mov eax, 0xbdff
and word [rbx + 8], ax
movzx ecx, word [rbx + 8]
test cl, 0x12
je 0x1801372b9
cmp dword [rbx + 0x20], 0
je 0x18013727e
mov rax, qword [rbx + 0x18]
cmp qword [rbx + 0x10], rax
je 0x1801372b9
mov edx, dword [rbx + 0xc]
mov r8d, r14d
add edx, 2
mov rcx, rbx
call fcn.18013fd90
test eax, eax
jne 0x180138f36
movsxd rcx, dword [rbx + 0xc]
mov rax, qword [rbx + 0x10]
mov byte [rcx + rax], 0
movsxd rcx, dword [rbx + 0xc]
mov rax, qword [rbx + 0x10]
mov byte [rcx + rax + 1], 0
mov ecx, 0x200
or cx, word [rbx + 8]
mov eax, 0xefff
and cx, ax
mov word [rbx + 8], cx
xor r11d, r11d
add rdi, 0x38
add rbx, 0x38
mov r8d, 0x2460
sub esi, 1
jne 0x1801371d0
mov r15, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x70]
mov r9, qword [rsp + 0x58]
mov r10, qword [rsp + 0x68]
jmp 0x180137153
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
mov esi, dword [rcx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
add rdi, qword [rsp + 0x70]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x70]
nop word [rax + rax]
test word [rbx + 8], r8w
je 0x18013733a
mov r8d, 0x1000
mov rdx, rdi
mov rcx, rbx
call fcn.18014e580
jmp 0x180137367
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 0x180137367
mov eax, 0xf3ff
and word [rbx + 8], ax
mov eax, 0x1000
or word [rbx + 8], ax
movzx eax, word [rbx + 8]
bt ax, 0xc
jae 0x18013741b
mov ecx, select
bt ax, cx
jae 0x1801373bb
mov edx, dword [rbx + 0xc]
mov r8d, r14d
add edx, dword [rbx]
mov rcx, rbx
test edx, edx
cmovle edx, r14d
call fcn.18013fd90
test eax, eax
jne 0x1801373bb
movsxd rcx, dword [rbx + 0xc]
xor edx, edx
add rcx, qword [rbx + 0x10]
movsxd r8, dword [rbx]
call fcn.180162c50
mov eax, dword [rbx]
add dword [rbx + 0xc], eax
mov eax, 0xbdff
and word [rbx + 8], ax
movzx ecx, word [rbx + 8]
test cl, 0x12
je 0x18013740f
cmp dword [rbx + 0x20], 0
je 0x1801373d4
mov rax, qword [rbx + 0x18]
cmp qword [rbx + 0x10], rax
je 0x18013740f
mov edx, dword [rbx + 0xc]
mov r8d, r14d
add edx, 2
mov rcx, rbx
call fcn.18013fd90
test eax, eax
jne 0x180138f36
movsxd rcx, dword [rbx + 0xc]
mov rax, qword [rbx + 0x10]
mov byte [rcx + rax], 0
movsxd rcx, dword [rbx + 0xc]
mov rax, qword [rbx + 0x10]
mov byte [rcx + rax + 1], 0
mov ecx, 0x200
or cx, word [rbx + 8]
mov eax, 0xefff
and cx, ax
mov word [rbx + 8], cx
mov eax, esi
mov r8d, 0x2460
dec esi
test eax, eax
je 0x180137a8e
add rbx, 0x38
add rdi, 0x38
jmp 0x180137320
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rdx, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
add rdx, rsi
add rcx, rsi
test word [rcx + 8], r8w
je 0x180137467
mov r8d, 0x1000
jmp 0x180137136
movups xmm0, xmmword [rdx]
mov r15, qword [rsp + 0x48]
mov eax, 0x800
mov ebx, dword [rsp + 0x50]
movups xmmword [rcx], xmm0
movsd xmm1, qword [rdx + 0x10]
movsd qword [rcx + 0x10], xmm1
test word [rdx + 8], ax
mov edx, 4
jne 0x18013715c
mov eax, 0xf3ff
and word [rcx + 8], ax
mov eax, 0x1000
or word [rcx + 8], ax
jmp 0x18013715c
mov rcx, qword [rsp + 0x48]
mov edx, 0x2460
movsxd rax, dword [rcx + 8]
imul r8, rax, 0x38
movsxd rax, dword [rcx + 4]
imul rcx, rax, 0x38
add r8, rsi
mov rax, qword [rcx + rsi]
test word [r8 + 8], dx
je 0x1801374e3
mov rdx, rax
mov rcx, r8
call fcn.180150ac0
jmp 0x18013713b
mov r15, qword [rsp + 0x48]
mov edx, 4
mov qword [r8], rax
mov word [r8 + 8], dx
mov r8d, 0x2460
jmp case.0x180136931.62
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
add rdi, rsi
imul rsi, rax, 0x38
movsxd rax, dword [rcx + 0xc]
add rsi, qword [rsp + 0x70]
movzx ecx, word [rdi + 8]
imul rbx, rax, 0x38
movzx edx, word [rsi + 8]
add rbx, qword [rsp + 0x70]
movzx eax, dl
or al, cl
test al, 1
je 0x180137570
test word [rbx + 8], r8w
je 0x18013755c
mov rcx, rbx
call fcn.18014f910
mov r15, qword [rsp + 0x48]
xor r11d, r11d
mov rsi, qword [rsp + 0x70]
jmp 0x180137098
mov r15, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x70]
mov word [rbx + 8], r14w
jmp 0x180137153
bt cx, 0xe
jae 0x1801375b9
mov edx, dword [rdi + 0xc]
mov r8d, r14d
add edx, dword [rdi]
mov rcx, rdi
test edx, edx
cmovle edx, r14d
call fcn.18013fd90
test eax, eax
jne 0x180138f36
movsxd rcx, dword [rdi + 0xc]
xor edx, edx
add rcx, qword [rdi + 0x10]
movsxd r8, dword [rdi]
call fcn.180162c50
mov eax, dword [rdi]
add dword [rdi + 0xc], eax
mov eax, 0xbdff
and word [rdi + 8], ax
movzx edx, word [rsi + 8]
bt dx, 0xe
jae 0x1801375d0
mov rcx, rsi
call fcn.18013fbf0
test eax, eax
jne 0x180138f36
test byte [rdi + 8], 0x12
movzx r14d, byte [rsp + 0x60]
jne 0x1801375f3
xor r8d, r8d
movzx edx, r14b
mov rcx, rdi
call fcn.1801404b0
test eax, eax
jne 0x180138f36
test byte [rsi + 8], 0x12
jne 0x180137610
xor r8d, r8d
movzx edx, r14b
mov rcx, rsi
call fcn.1801404b0
test eax, eax
jne 0x180138f36
mov r14d, dword [rsi + 0xc]
add r14d, dword [rdi + 0xc]
movsxd rax, dword [r12 + 0x6c]
movsxd r15, r14d
cmp r15, rax
jg 0x18013d620
xor r8d, r8d
lea edx, [r14 + 2]
cmp rbx, rsi
mov rcx, rbx
sete r8b
call fcn.18013fd90
test eax, eax
jne 0x180138f36
mov eax, 0x3e00
and word [rbx + 8], ax
or word [rbx + 8], 2
cmp rbx, rsi
je 0x18013766b
movsxd r8, dword [rsi + 0xc]
mov rdx, qword [rsi + 0x10]
mov rcx, qword [rbx + 0x10]
call fcn.1801625a0
movsxd rcx, dword [rsi + 0xc]
add rcx, qword [rbx + 0x10]
movsxd r8, dword [rdi + 0xc]
mov rdx, qword [rdi + 0x10]
call fcn.1801625a0
mov rax, qword [rbx + 0x10]
mov rsi, qword [rsp + 0x70]
mov byte [r15 + rax], 0
mov rax, qword [rbx + 0x10]
mov byte [r15 + rax + 1], 0
mov eax, 0x200
or word [rbx + 8], ax
movzx eax, byte [rsp + 0x60]
mov dword [rbx + 0xc], r14d
mov byte [rbx + 0xa], al
jmp 0x180137090
mov rdi, qword [rsp + 0x48]
movsxd rax, dword [rdi + 4]
imul rbx, rax, 0x38
add rbx, rsi
movzx r13d, word [rbx + 8]
test r13b, 0xc
jne 0x1801376e7
test r13b, 0x12
je 0x1801376e4
mov rcx, rbx
call fcn.18007fe90
movzx r13d, ax
xor r11d, r11d
jmp 0x1801376e7
mov r13d, r11d
movsxd rax, dword [rdi + 8]
imul rcx, rax, 0x38
add rsi, rcx
movzx ecx, word [rsi + 8]
movzx r15d, cx
and r15w, 0xc
jne 0x18013771b
test cl, 0x12
je 0x180137718
mov rcx, rsi
call fcn.18007fe90
movzx ecx, word [rsi + 8]
movzx r15d, ax
jmp 0x18013771b
mov r15d, r11d
movsxd rax, dword [rdi + 0xc]
movzx edi, word [rbx + 8]
imul r14, rax, 0x38
or cl, dil
add r14, qword [rsp + 0x70]
test cl, 1
jne 0x180137a6e
movzx eax, r15b
and al, r13b
test al, 4
je 0x180137911
mov rax, qword [rsp + 0x48]
mov r12b, 1
mov r9, qword [rbx]
mov r8, qword [rsi]
movzx ecx, byte [rax]
sub ecx, 0x59
je 0x1801378b8
sub ecx, 1
je 0x18013789a
sub ecx, 1
je 0x1801377cd
cmp ecx, 1
je 0x18013779b
mov r10d, 1
test r9, r9
je 0x180137a74
cmp r9, 0xffffffffffffffff
mov rax, r8
cqo
cmove r9, r10
idiv r9
mov r8, rdx
jmp 0x1801378f4
test r9, r9
je 0x180137a6e
cmp r9, 0xffffffffffffffff
jne 0x1801377bd
movabs rax, 0x8000000000000000
cmp r8, rax
je 0x180137914
mov rax, r8
cqo
idiv r9
mov r8, rax
jmp 0x1801378f4
mov r10d, 0xffffffff
mov rax, r8
cqo
and rdx, r10
add rax, rdx
mov rcx, rax
and rax, r10
sub rax, rdx
sar rcx, 0x20
mov r11, rax
mov rax, r9
cqo
and rdx, r10
add rax, rdx
mov r10, rax
and rax, qword [rbp + 0xa0]
sub rax, rdx
sar r10, 0x20
mov rdx, rax
test rcx, rcx
jne 0x180137826
test r10, r10
jne 0x180137820
imul r8, r9
jmp 0x1801378f4
imul r10, r11
jmp 0x180137836
test r10, r10
jne 0x180137914
mov r10, rdx
imul r10, rcx
mov eax, 0x80000000
mov ecx, 0xffffffff
add rax, r10
cmp rax, rcx
ja 0x180137914
imul rdx, r11
shl r10, 0x20
test rdx, rdx
js 0x180137875
test r10, r10
jle 0x180137894
movabs rax, 0x7fffffffffffffff
sub rax, r10
cmp rax, rdx
jge 0x180137894
jmp 0x180137914
test r10, r10
jns 0x180137894
movabs rcx, 0x8000000000000001
lea rax, [rdx + 1]
sub rcx, r10
cmp rcx, rax
jg 0x180137914
lea r8, [rdx + r10]
jmp 0x1801378f4
movabs rax, 0x8000000000000000
cmp r9, rax
jne 0x1801378b3
test r8, r8
jns 0x180137914
sub r8, rax
jmp 0x1801378f4
neg r9
jmp 0x1801378bb
test r9, r9
js 0x1801378d6
test r8, r8
jle 0x1801378f1
movabs rax, 0x7fffffffffffffff
sub rax, r8
cmp rax, r9
jge 0x1801378f1
jmp 0x180137914
test r8, r8
jns 0x1801378f1
movabs rcx, 0x8000000000000001
lea rax, [r9 + 1]
sub rcx, r8
cmp rcx, rax
jg 0x180137914
add r8, r9
mov rsi, qword [rsp + 0x70]
mov eax, 0x3e00
mov qword [r14], r8
and word [r14 + 8], ax
or word [r14 + 8], 4
jmp 0x180137090
xor r12b, r12b
test dil, 8
je 0x180137920
movsd xmm2, qword [rbx]
jmp 0x18013795b
test dil, 4
je 0x180137930
xorps xmm2, xmm2
cvtsi2sd xmm2, qword [rbx]
jmp 0x18013795b
test dil, 0x12
je 0x180137958
movzx r9d, byte [rbx + 0xa]
lea rdx, [rbp + 0x28]
mov r8d, dword [rbx + 0xc]
mov rcx, qword [rbx + 0x10]
movsd qword [rbp + 0x28], xmm6
call fcn.1800edb80
movsd xmm2, qword [rbp + 0x28]
jmp 0x18013795b
movaps xmm2, xmm6
movzx eax, word [rsi + 8]
test al, 8
je 0x180137969
movsd xmm3, qword [rsi]
jmp 0x1801379a0
test al, 4
je 0x180137977
xorps xmm3, xmm3
cvtsi2sd xmm3, qword [rsi]
jmp 0x1801379a0
test al, 0x12
je 0x18013799d
movzx r9d, byte [rsi + 0xa]
lea rdx, [rbp + 0x30]
mov r8d, dword [rsi + 0xc]
mov rcx, qword [rsi + 0x10]
movsd qword [rbp + 0x30], xmm6
call fcn.1800edb80
movsd xmm3, qword [rbp + 0x30]
jmp 0x1801379a0
movaps xmm3, xmm6
mov rax, qword [rsp + 0x48]
movzx ecx, byte [rax]
sub ecx, 0x59
je 0x180137a06
sub ecx, 1
je 0x180137a00
sub ecx, 1
je 0x1801379fa
cmp ecx, 1
je 0x1801379ec
cvttsd2si rcx, xmm2
mov r10d, 1
cvttsd2si rax, xmm3
test rcx, rcx
je 0x180137a74
cmp rcx, 0xffffffffffffffff
cqo
xorps xmm3, xmm3
cmove rcx, r10
idiv rcx
cvtsi2sd xmm3, rdx
jmp 0x180137a10
ucomisd xmm2, xmm6
jp 0x1801379f4
je 0x180137a6e
divsd xmm3, xmm2
jmp 0x180137a0a
mulsd xmm3, xmm2
jmp 0x180137a0a
subsd xmm3, xmm2
jmp 0x180137a0a
addsd xmm3, xmm2
mov r10d, 1
movsd qword [rbp - 0x68], xmm3
movsd xmm0, qword [rbp - 0x68]
movsd qword [rbp - 0x50], xmm0
movsd xmm2, qword [rbp - 0x68]
movsd xmm1, qword [rbp - 0x50]
ucomisd xmm2, xmm1
jp 0x180137a74
jne 0x180137a74
movsd qword [r14], xmm3
mov eax, 0x3e00
and word [r14 + 8], ax
or r15b, r13b
or word [r14 + 8], 8
test r15b, 8
jne 0x18013754a
test r12b, r12b
jne 0x18013754a
mov rcx, r14
call fcn.18013f050
mov rsi, qword [rsp + 0x70]
jmp 0x180137090
mov r10d, 1
mov r8d, 0x2460
test word [r14 + 8], r8w
je 0x180137a89
mov rcx, r14
jmp 0x180137545
mov word [r14 + 8], r10w
mov rsi, qword [rsp + 0x70]
mov r9, qword [rsp + 0x58]
xor r11d, r11d
mov r15, qword [rsp + 0x48]
mov r10, qword [rsp + 0x68]
jmp 0x180137153
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
test eax, eax
je 0x180136b67
imul rcx, rax, 0x38
add rcx, rsi
test word [rcx + 8], r8w
je 0x180137ad5
xor edx, edx
call fcn.180150ac0
jmp 0x180137090
mov r15, qword [rsp + 0x48]
mov qword [rcx], r11
mov word [rcx + 8], dx
jmp case.0x180136931.62
mov rdi, qword [rsp + 0x48]
mov rcx, r12
movzx ebx, byte [rdi + 3]
lea rdx, [rbx*8 + 0x30]
call fcn.1800f8480
mov r8, rax
test rax, rax
je 0x180138f36
mov r10, qword [rsp + 0x68]
mov rcx, rdi
sub rcx, qword [rsp + 0x58]
mov qword [rax], 0
mov rax, qword [rdi + 0x10]
mov qword [r8 + 8], rax
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov rax, rdi
mov dword [r8 + 0x20], edx
mov qword [r8 + 0x18], r13
mov byte [r8 + 0x2a], bl
mov word [rdi], 0xec24
mov qword [rdi + 0x10], r8
jmp 0x180137b61
mov rax, qword [rsp + 0x48]
mov rbx, qword [rax + 0x10]
movsxd rax, dword [rax + 0xc]
imul rdi, rax, 0x38
mov rax, qword [rbx]
add rdi, rsi
mov qword [rbp - 0x68], rdi
cmp rax, rdi
je 0x180137bc7
mov qword [rbx], rdi
movzx eax, byte [rbx + 0x2a]
mov edx, eax
sub rdx, 1
lea r9d, [rax - 1]
mov rax, rdi
js 0x180137bc7
mov rdi, qword [rsp + 0x48]
lea r8, [rdx + 6]
lea r8, [rbx + r8*8]
nop
mov eax, dword [rdi + 8]
lea r8, [r8 - 8]
add eax, r9d
dec r9d
cdqe
imul rcx, rax, 0x38
add rcx, rsi
sub rdx, 1
mov qword [r8 + 8], rcx
jns 0x180137ba0
mov rdi, qword [rbp - 0x68]
mov rax, qword [rbx]
mov ecx, 0x3e00
lea r8, [rbx + 0x30]
and word [rax + 8], cx
mov rcx, rbx
or word [rax + 8], 1
mov byte [rbx + 0x29], 0
mov qword [r12 + 0x30], r10
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x2a]
call qword [rax + 0x18]
cmp byte [rbx + 0x29], 0
mov r10, qword [r12 + 0x30]
mov qword [rsp + 0x68], r10
je 0x180137c8f
cmp dword [rbx + 0x24], 0
je 0x180137c62
mov rcx, qword [rbx]
test rcx, rcx
jne 0x180137c16
xor eax, eax
jmp 0x180137c49
movzx edx, word [rcx + 8]
mov r8d, 0x202
movzx eax, dx
and ax, r8w
cmp ax, r8w
jne 0x180137c39
cmp byte [rcx + 0xa], 1
jne 0x180137c39
mov rax, qword [rcx + 0x10]
jmp 0x180137c49
test dl, 1
je 0x180137c42
xor eax, eax
jmp 0x180137c49
mov dl, 1
call fcn.18014e3d0
mov r8, rax
lea rdx, [0x1801c73e0]
mov rcx, r13
call fcn.1801366d0
mov eax, dword [rbx + 0x24]
mov dword [rsp + 0x54], eax
mov rax, qword [rsp + 0x48]
lea rdx, [r13 + 0x128]
mov r8d, dword [rbx + 0x20]
mov rcx, r12
mov r9d, dword [rax + 4]
call fcn.180136470
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x18013d335
mov r10, qword [rsp + 0x68]
test byte [rdi + 8], 0x12
je 0x18013d23a
mov rcx, qword [rbx]
mov rax, rcx
test byte [rcx + 8], 2
je 0x180137cbd
movzx r8d, byte [rsp + 0x60]
cmp byte [rcx + 0xa], r8b
je 0x180137cbd
movzx edx, r8b
call fcn.1801405b0
mov rax, qword [rbx]
movzx edx, word [rax + 8]
test dl, 0x12
je 0x180137090
bt dx, 0xe
mov ecx, dword [rax + 0xc]
jae 0x180137cd6
add ecx, dword [rax]
mov rax, qword [rax + 0x28]
cmp ecx, dword [rax + 0x6c]
jg 0x18013d620
jmp 0x180137090
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x48]
add rdi, rsi
add rcx, rsi
movsxd rax, dword [rax + 0xc]
imul rsi, rax, 0x38
movzx eax, byte [rcx + 8]
add rsi, qword [rsp + 0x70]
or al, byte [rdi + 8]
test al, 1
je 0x180137d43
test word [rsi + 8], r8w
je 0x180137d2f
mov rcx, rsi
jmp 0x180137545
mov r15, qword [rsp + 0x48]
mov word [rsi + 8], r14w
mov rsi, qword [rsp + 0x70]
jmp 0x180137153
call fcn.18013efc0
mov rcx, rdi
mov rbx, rax
call fcn.18013efc0
mov rdx, qword [rsp + 0x48]
mov rcx, rax
movzx edx, byte [rdx]
cmp dl, 0x55
jne 0x180137d68
and rbx, rax
jmp 0x180137ddb
cmp dl, 0x56
jne 0x180137d72
or rbx, rcx
jmp 0x180137ddb
test rcx, rcx
je 0x180137ddb
jns 0x180137d8c
mov eax, 0xaf
sub al, dl
movzx edx, al
cmp rcx, 0xffffffffffffffc0
jle 0x180137d92
neg rcx
cmp rcx, 0x40
jl 0x180137da9
test rbx, rbx
jns 0x180137da5
cmp dl, 0x57
je 0x180137da5
mov rbx, 0xffffffffffffffff
jmp 0x180137ddb
xor ebx, ebx
jmp 0x180137ddb
cmp dl, 0x57
jne 0x180137db6
shl rbx, cl
mov r8, rbx
jmp 0x180137dd8
mov r8, rbx
shr r8, cl
test rbx, rbx
jns 0x180137dd8
mov eax, 0x40
mov rdx, 0xffffffffffffffff
sub al, cl
movzx ecx, al
shl rdx, cl
or r8, rdx
mov rbx, r8
mov r15, qword [rsp + 0x48]
mov eax, 0x3e00
mov qword [rsi], rbx
and word [rsi + 8], ax
or word [rsi + 8], 4
mov rsi, qword [rsp + 0x70]
xor r11d, r11d
jmp 0x180137098
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, rsi
mov rcx, rbx
call fcn.18013efc0
mov qword [rbx], rax
mov eax, 0x3e00
and word [rbx + 8], ax
or word [rbx + 8], 4
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
add qword [rbx], rax
jmp 0x180137090
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, rsi
movzx eax, word [rbx + 8]
test al, 4
jne 0x180137eaa
test al, 8
jne 0x180137e78
test al, 2
je 0x180137e85
mov edx, r14d
mov rcx, rbx
call fcn.1800773c0
mov r9, qword [rsp + 0x58]
xor r11d, r11d
mov r10, qword [rsp + 0x68]
mov r8d, 0x2460
jmp 0x180137e80
mov rcx, rbx
call fcn.18013f050
mov edx, 4
movzx eax, word [rbx + 8]
test al, 4
jne 0x180137eaa
mov r15, qword [rsp + 0x48]
cmp dword [r15 + 8], 0
jne 0x18013d1f8
mov eax, socket
mov rsi, r15
jmp 0x18013d33a
mov r15, qword [rsp + 0x48]
mov ecx, 0x3e00
and ax, cx
or ax, 4
mov word [rbx + 8], ax
jmp case.0x180136931.62
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
add rcx, rsi
movzx eax, word [rcx + 8]
test al, 4
je 0x180136b67
test al, 8
je 0x180137eea
movsd xmm0, qword [rcx]
jmp 0x180137ef2
xorps xmm0, xmm0
cvtsi2sd xmm0, qword [rcx]
mov r15, qword [rsp + 0x48]
mov ebx, 0x3e00
and ax, bx
movsd qword [rcx], xmm0
or ax, 8
mov word [rcx + 8], ax
jmp case.0x180136931.62
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
mov eax, 0x4000
add rbx, rsi
test word [rbx + 8], ax
je 0x180137fb4
mov edx, dword [rbx + 0xc]
mov r8d, r14d
add edx, dword [rbx]
mov rcx, rbx
test edx, edx
cmovle edx, r14d
call fcn.18013fd90
test eax, eax
je 0x180137f54
mov eax, 7
mov dword [rsp + 0x54], eax
jmp 0x180137f7c
movsxd rcx, dword [rbx + 0xc]
xor edx, edx
add rcx, qword [rbx + 0x10]
movsxd r8, dword [rbx]
call fcn.180162c50
mov eax, dword [rbx]
add dword [rbx + 0xc], eax
mov eax, 0xbdff
and word [rbx + 8], ax
mov dword [rsp + 0x54], 0
mov rax, qword [rsp + 0x48]
mov rcx, rbx
movzx r8d, byte [rsp + 0x60]
movzx edx, byte [rax + 8]
call fcn.18013fa50
mov eax, dword [rsp + 0x54]
test eax, eax
je 0x180137090
movzx ebx, byte [rsp + 0x40]
xor edi, edi
mov rsi, qword [rsp + 0x48]
lea r14d, [rdi + 7]
jmp 0x18013d347
movzx edx, byte [rcx + 8]
mov rcx, rbx
movzx r8d, byte [rsp + 0x60]
call fcn.18013fa50
mov r15, qword [rsp + 0x48]
xor r11d, r11d
mov dword [rsp + 0x54], r11d
jmp 0x180137098
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul r15, rax, 0x38
add rdi, rsi
add r15, rsi
movzx r14d, word [rdi + 8]
movzx esi, word [r15 + 8]
movzx eax, sil
or al, r14b
test al, 1
movzx eax, byte [rcx + 3]
je 0x180138073
test al, al
jns 0x180138037
movzx eax, si
and ax, r14w
bt ax, r11w
jae 0x18013802d
bt si, 8
jb 0x18013802d
mov edx, r11d
jmp 0x1801381bf
mov edx, 1
jmp 0x1801381ba
mov rsi, qword [rsp + 0x70]
test al, 0x20
je 0x180138063
movsxd rax, dword [rcx + 8]
mov r15, qword [rsp + 0x48]
imul rcx, rax, 0x38
mov eax, 0x3e00
add rcx, rsi
and word [rcx + 8], ax
or word [rcx + 8], 1
jmp case.0x180136931.62
mov r15, rcx
test al, 0x10
jne 0x18013d1f8
jmp case.0x180136931.62
and al, 0x47
cmp al, 0x43
jb 0x1801380f7
movzx eax, r14b
and al, 0xe
cmp al, 2
jne 0x1801380e1
movzx ebx, byte [rdi + 0xa]
lea rdx, [rbp + 0xb0]
mov r8d, dword [rdi + 0xc]
movzx r9d, bl
mov rcx, qword [rdi + 0x10]
call fcn.1800edb80
test eax, eax
je 0x1801380e1
mov r8d, dword [rdi + 0xc]
lea rdx, [rbp + 0xa8]
mov rcx, qword [rdi + 0x10]
movzx r9d, bl
call fcn.1800ee090
test eax, eax
jne 0x1801380d0
mov rax, qword [rbp + 0xa8]
mov qword [rdi], rax
or word [rdi + 8], 4
jmp 0x1801380e1
movsd xmm0, qword [rbp + 0xb0]
movsd qword [rdi], xmm0
or word [rdi + 8], 8
movzx eax, sil
and al, 0xe
cmp al, 2
jne 0x180138161
xor edx, edx
mov rcx, r15
call fcn.1800773c0
jmp 0x180138161
cmp al, 0x42
jne 0x180138161
movzx ebx, byte [rsp + 0x60]
test r14b, 2
jne 0x180138132
test r14b, 0xc
je 0x180138132
mov r8b, 1
movzx edx, bl
mov rcx, rdi
call fcn.1801404b0
movzx eax, r14w
mov r12d, 0x7e00
xor ax, word [rdi + 8]
and ax, r12w
xor r14w, ax
jmp 0x180138138
mov r12d, 0x7e00
test sil, 2
jne 0x180138161
test sil, 0xc
je 0x180138161
mov r8b, 1
movzx edx, bl
mov rcx, r15
call fcn.1801404b0
movzx eax, si
xor ax, word [r15 + 8]
and ax, r12w
xor si, ax
bt r14w, 0xe
jae 0x18013817d
mov rcx, rdi
call fcn.18013fbf0
mov r12d, 0xbfff
and r14w, r12w
jmp 0x180138183
mov r12d, 0xbfff
bt si, 0xe
jae 0x180138196
mov rcx, r15
call fcn.18013fbf0
and si, r12w
mov rax, qword [rsp + 0x48]
mov rdx, rdi
mov rcx, r15
mov r8, qword [rax + 0x10]
call fcn.18011de40
mov r9, qword [rsp + 0x58]
mov edx, eax
xor r11d, r11d
mov r8d, 0x2460
mov r10, qword [rsp + 0x68]
mov rax, qword [rsp + 0x48]
movzx ecx, byte [rax]
sub ecx, 0x4e
je 0x180138205
sub ecx, 1
je 0x1801381fb
sub ecx, 1
je 0x1801381f1
sub ecx, 1
je 0x1801381e7
cmp ecx, 1
je 0x1801381e2
not edx
shr edx, 0x1f
jmp 0x18013820f
test edx, edx
mov eax, r11d
setle al
jmp 0x18013820d
test edx, edx
mov eax, r11d
setg al
jmp 0x18013820d
test edx, edx
mov eax, r11d
sete al
jmp 0x18013820d
test edx, edx
mov eax, r11d
setne al
mov edx, eax
mov word [rdi + 8], r14w
mov word [r15 + 8], si
mov r15, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x70]
test byte [r15 + 3], 0x20
je 0x18013824d
movsxd rax, dword [r15 + 8]
imul rcx, rax, 0x38
mov eax, 0x3e00
add rcx, rsi
and word [rcx + 8], ax
or word [rcx + 8], 4
mov eax, edx
mov qword [rcx], rax
jmp 0x180137153
test edx, edx
jne 0x18013d1f8
jmp 0x180137153
mov rax, qword [r15 + 0x10]
add rax, 4
mov qword [rbp - 0x20], rax
jmp case.0x180136931.62
mov rcx, qword [rsp + 0x48]
mov edi, r11d
mov rax, qword [rbp - 0x20]
mov rbx, r11
mov r15, qword [rsp + 0x48]
test byte [rcx + 3], 1
mov r13, qword [rcx + 0x10]
movsxd r15, dword [r15 + 0xc]
cmove rax, r11
mov r12d, dword [rcx + 4]
mov ecx, dword [rcx + 8]
mov qword [rbp - 0x20], rax
mov dword [rbp - 0x70], ecx
test r15, r15
jle 0x180138333
lea rsi, [r13 + 0x20]
nop word [rax + rax]
test rax, rax
je 0x1801382bb
mov r8d, dword [rax + rbx*4]
jmp 0x1801382be
mov r8d, edi
mov rax, qword [r13 + 0x18]
movzx r14d, byte [rbx + rax]
lea eax, [r8 + rcx]
movsxd rcx, eax
lea eax, [r8 + r12]
mov r8, qword [rsi]
imul rdx, rcx, 0x38
movsxd rcx, eax
add rdx, qword [rsp + 0x70]
imul rcx, rcx, 0x38
add rcx, qword [rsp + 0x70]
call fcn.18011de40
mov dword [rbp - 0x48], eax
test eax, eax
jne 0x18013830d
mov ecx, dword [rbp - 0x70]
inc edi
mov rax, qword [rbp - 0x20]
inc rbx
add rsi, 8
cmp rbx, r15
jl 0x1801382b0
jmp 0x180138317
test r14b, r14b
je 0x180138317
neg eax
mov dword [rbp - 0x48], eax
mov rsi, qword [rsp + 0x70]
xor r11d, r11d
mov r9, qword [rsp + 0x58]
mov r8d, 0x2460
mov r10, qword [rsp + 0x68]
lea edx, [r11 + 4]
mov r15, qword [rsp + 0x48]
mov qword [rbp - 0x20], r11
jmp case.0x180136931.62
mov eax, dword [rbp - 0x48]
test eax, eax
mov rax, qword [rsp + 0x48]
jns 0x180138361
mov eax, dword [rax + 4]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r15, [r9 + rcx*8]
jmp case.0x180136931.62
mov ebx, dword [rsp + 0x50]
jne 0x18013837b
mov eax, dword [rax + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r15, [r9 + rcx*8]
jmp 0x18013715c
mov eax, dword [rax + 0xc]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r15, [r9 + rcx*8]
jmp 0x18013715c
mov rdi, qword [rsp + 0x48]
movsxd rax, dword [rdi + 4]
imul rcx, rax, 0x38
add rcx, rsi
test byte [rcx + 8], 1
je 0x1801383ae
mov edx, 2
mov ebx, edx
jmp 0x1801383c3
call fcn.18013efc0
xor r11d, r11d
test rax, rax
mov ebx, r11d
setne bl
lea edx, [r11 + 2]
movsxd rax, dword [rdi + 8]
imul rcx, rax, 0x38
add rcx, rsi
test byte [rcx + 8], 1
je 0x1801383d9
mov rcx, rdx
jmp 0x1801383ea
call fcn.18013efc0
xor r11d, r11d
test rax, rax
mov ecx, r11d
setne cl
lea rcx, [rcx + rbx*2]
add rcx, rbx
lea rdx, [0x180000000]
cmp byte [rdi], 0x48
jne 0x180138407
movzx edx, byte [rcx + rdx + 0x1a6330]
jmp 0x18013840f
movzx edx, byte [rcx + rdx + 0x1a6340]
movsxd rax, dword [rdi + 0xc]
imul rcx, rax, 0x38
add rcx, rsi
cmp dl, 2
jne 0x18013843b
movzx eax, word [rcx + 8]
mov edx, 0x3e00
and ax, dx
mov r15, rdi
or ax, 1
mov word [rcx + 8], ax
jmp 0x180137098
movzx eax, dl
mov r15, rdi
mov qword [rcx], rax
mov edx, 0x3e00
movzx eax, word [rcx + 8]
and ax, dx
or ax, 4
mov word [rcx + 8], ax
jmp 0x180137098
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
add rdi, rsi
add rbx, rsi
test word [rbx + 8], r8w
je 0x1801384a0
mov rcx, rbx
call fcn.18014f910
mov r9, qword [rsp + 0x58]
xor r11d, r11d
mov r10, qword [rsp + 0x68]
mov r8d, 0x2460
lea edx, [r11 + 4]
jmp 0x1801384a5
mov word [rbx + 8], r14w
test byte [rdi + 8], 1
jne 0x180136b67
mov rcx, rdi
mov word [rbx + 8], dx
call fcn.18013efc0
mov r15, qword [rsp + 0x48]
xor r11d, r11d
mov ecx, r11d
test rax, rax
sete cl
mov qword [rbx], rcx
jmp 0x180137098
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
add rdi, rsi
add rbx, rsi
test word [rbx + 8], r8w
je 0x180138517
mov rcx, rbx
call fcn.18014f910
mov r9, qword [rsp + 0x58]
xor r11d, r11d
mov r10, qword [rsp + 0x68]
mov r8d, 0x2460
lea edx, [r11 + 4]
jmp 0x18013851c
mov word [rbx + 8], r14w
test byte [rdi + 8], 1
jne 0x180136b67
mov rcx, rdi
mov word [rbx + 8], dx
call fcn.18013efc0
not rax
mov qword [rbx], rax
jmp 0x180137090
mov rax, qword [rsp + 0x48]
mov rcx, qword [r13 + 0x120]
mov r15, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
cmp byte [rax + rcx], 0
jne 0x18013d1f8
mov byte [rax + rcx], 1
jmp case.0x180136931.62
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
add rcx, rsi
movzx eax, word [rcx + 8]
test al, 1
je 0x180138587
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 0xc]
jmp 0x1801385fa
test al, 8
je 0x180138591
movsd xmm0, qword [rcx]
jmp 0x1801385e2
test al, 4
je 0x18013859f
xorps xmm0, xmm0
cvtsi2sd xmm0, qword [rcx]
jmp 0x1801385e2
test al, 0x12
je 0x1801385ef
movzx r9d, byte [rcx + 0xa]
lea rdx, [rbp + 0x38]
mov r8d, dword [rcx + 0xc]
mov rcx, qword [rcx + 0x10]
movsd qword [rbp + 0x38], xmm6
call fcn.1800edb80
mov rax, qword [rsp + 0x48]
xor r11d, r11d
movsd xmm0, qword [rbp + 0x38]
mov r8d, 0x2460
mov r9, qword [rsp + 0x58]
mov r10, qword [rsp + 0x68]
movzx ebx, byte [rax]
lea edx, [r11 + 4]
ucomisd xmm0, xmm6
jp 0x1801385ea
je 0x1801385ef
mov eax, r14d
jmp 0x1801385f2
mov eax, r11d
cmp bl, 0x2e
jne 0x1801385fa
xor eax, 1
mov r15, qword [rsp + 0x48]
test eax, eax
jne 0x18013d1f8
jmp case.0x180136931.62
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
test byte [rcx + rsi + 8], 1
jne 0x18013d1f8
jmp case.0x180136931.62
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
test byte [rcx + rsi + 8], 1
je 0x18013d1f8
jmp case.0x180136931.62
mov rbx, qword [rsp + 0x48]
mov rax, qword [r13 + 0x60]
movsxd rcx, dword [rbx + 4]
movsxd rdx, dword [rbx + 8]
mov dword [rbp - 0x70], edx
mov r15, qword [rax + rcx*8]
cmp byte [r15], 0
jne 0x18013869b
cmp byte [r15 + 3], 0
je 0x180138736
mov rcx, qword [r15 + 0x50]
test rcx, rcx
je 0x180138714
mov edx, dword [rcx + rdx*4 + 4]
test edx, edx
jle 0x180138714
mov r15, qword [r15 + 0x48]
dec edx
mov dword [rbp - 0x70], edx
mov dword [rsp + 0x54], r11d
movsxd rax, dword [rbx + 0xc]
mov r13, qword [r15 + 0x18]
imul r14, rax, 0x38
mov eax, dword [rsp + 0x54]
add r14, rsi
mov qword [rbp - 0x68], r13
mov rsi, qword [r15 + 0x70]
mov qword [rbp - 0x10], rsi
mov qword [rbp - 0x50], r14
test eax, eax
jne 0x18013d942
mov rdi, qword [rsp + 0x78]
mov eax, dword [rdi + 0x7c]
cmp dword [r15 + 0x58], eax
je 0x180138879
cmp byte [r15 + 2], 0
je 0x18013878a
cmp byte [r15], 3
jne 0x18013874e
mov rdx, qword [rsp + 0x70]
movsxd rax, r13d
imul rax, rax, 0x38
mov ebx, dword [rax + rdx + 0xc]
mov dword [r15 + 0x60], ebx
mov dword [r15 + 0x5c], ebx
mov rax, qword [rax + rdx + 0x10]
mov qword [r15 + 0x68], rax
jmp 0x180138815
mov rcx, r15
call fcn.1800cfd00
mov edx, dword [rbp - 0x70]
xor r11d, r11d
mov r9, qword [rsp + 0x58]
mov r8d, 0x2460
mov dword [rsp + 0x54], eax
jmp 0x1801386a0
mov rax, qword [r15 + 0x18]
cmp byte [rax + 0x56], 1
je 0x18013869b
mov rcx, r15
call fcn.1800cfd80
jmp 0x18013871c
test word [r14 + 8], r8w
je 0x18013876d
mov rcx, r14
call fcn.18014f910
mov rsi, qword [rsp + 0x70]
xor r11d, r11d
mov r15, rbx
jmp 0x180137098
mov rsi, qword [rsp + 0x70]
mov r10d, 1
mov word [r14 + 8], r10w
mov r15, rbx
mov r10, qword [rsp + 0x68]
jmp 0x180137153
cmp byte [r15 + 4], 0
mov rcx, r13
jne 0x1801387c9
call fcn.1800ce1f0
movsx rax, byte [r13 + 0x58]
movzx ebx, word [r13 + 0x34]
mov rdx, qword [r13 + 0x20]
mov rcx, qword [r13 + rax*8 + 0x98]
mov eax, dword [rcx + 0x58]
sub eax, dword [r13 + 0x28]
cmp ebx, eax
cmovae ebx, eax
mov rax, qword [r13 + 0x28]
mov qword [r15 + 0x68], rax
mov dword [r15 + 0x5c], edx
jmp 0x1801387fc
call fcn.1800ce1f0
mov edx, dword [r13 + 0x30]
mov dword [r15 + 0x5c], edx
movsx rax, byte [r13 + 0x58]
movzx ebx, word [r13 + 0x34]
mov rcx, qword [r13 + rax*8 + 0x98]
mov eax, dword [rcx + 0x58]
sub eax, dword [r13 + 0x28]
cmp ebx, eax
cmovae ebx, eax
mov rax, qword [r13 + 0x28]
mov qword [r15 + 0x68], rax
cmp edx, ebx
ja 0x180138806
mov dword [r15 + 0x60], edx
jmp 0x180138815
cmp edx, dword [r12 + 0x6c]
ja 0x18013d61d
mov dword [r15 + 0x60], ebx
mov eax, dword [rdi + 0x7c]
mov dword [r15 + 0x58], eax
mov rcx, qword [r15 + 0x68]
movzx eax, byte [rcx]
cmp al, 0x80
jae 0x180138830
mov ecx, eax
mov dword [rbp - 0x38], eax
mov al, 1
jmp 0x18013883c
lea rdx, [rbp - 0x38]
call fcn.180118510
mov ecx, dword [rbp - 0x38]
xor r11d, r11d
movzx eax, al
mov dword [r15 + 0x64], eax
mov word [r15 + 0x12], r11w
mov dword [rsi], ecx
cmp ebx, ecx
jae 0x180138886
mov qword [r15 + 0x68], r11
mov dword [r15 + 0x60], r11d
cmp ecx, 0x18003
ja 0x180138867
cmp ecx, dword [r15 + 0x5c]
jbe 0x180138886
mov ecx, 0x12c96
call fcn.1800f6670
mov r13, rdi
jmp 0x18013d335
movzx eax, word [r15 + 0x12]
cmp eax, edx
jg 0x180138b5b
mov eax, dword [r15 + 0x64]
mov ecx, dword [rsi]
cmp eax, ecx
jae 0x180138ac4
mov rdx, qword [r15 + 0x68]
mov qword [rbp - 0x18], rdx
test rdx, rdx
jne 0x180138943
xor eax, eax
xorps xmm0, xmm0
mov qword [rbp + 0x90], rax
mov r9d, r11d
movups xmmword [rbp + 0x60], xmm0
movups xmmword [rbp + 0x70], xmm0
movups xmmword [rbp + 0x80], xmm0
movsx rax, byte [r13 + 0x58]
movzx edx, byte [r15 + 4]
mov r10d, dword [rsi]
test dl, dl
mov rcx, qword [r13 + rax*8 + 0x98]
sete r9b
movzx eax, word [r13 + 0x34]
mov r8d, dword [rcx + 0x58]
sub r8d, dword [r13 + 0x28]
cmp eax, r8d
cmovae eax, r8d
cmp r10d, eax
ja 0x180138913
mov rdx, qword [r13 + 0x28]
mov eax, 0x1010
mov qword [rbp + 0x70], rdx
mov word [rbp + 0x68], ax
mov dword [rbp + 0x6c], r10d
mov dword [rsp + 0x54], r11d
jmp 0x180138939
lea rax, [rbp + 0x60]
mov r8d, r10d
xor edx, edx
mov qword [rsp + 0x20], rax
mov rcx, r13
call fcn.18014f9a0
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180138871
mov rdx, qword [rbp + 0x70]
mov eax, dword [r15 + 0x64]
mov ecx, dword [rsi]
mov qword [rbp - 0x18], rdx
movzx r14d, word [r15 + 0x12]
mov ebx, eax
mov r12d, r14d
add rbx, rdx
mov r13d, ecx
add r13, rdx
mov esi, dword [rsi + r14*4]
nop word [rax + rax]
movzx edi, byte [rbx]
mov eax, 0x80
mov dword [rbp - 0x54], edi
cmp edi, eax
jae 0x180138983
lea rcx, [0x180000000]
inc rbx
movzx eax, byte [rdi + rcx + 0x1a6270]
jmp 0x1801389b7
lea rdx, [rbp - 0x54]
mov rcx, rbx
call fcn.180118510
mov edi, dword [rbp - 0x54]
movzx eax, al
add rbx, rax
mov eax, 0x80
cmp edi, eax
jb 0x1801389a8
lea eax, [rdi - 0xc]
shr eax, 1
jmp 0x1801389b7
lea rcx, [0x180000000]
movzx eax, byte [rdi + rcx + 0x1a6270]
add rsi, rax
mov dword [r15 + r12*4 + 0x78], edi
mov rax, qword [rbp - 0x10]
inc r14d
movsxd r12, r14d
mov dword [rax + r12*4], esi
cmp r14d, dword [rbp - 0x70]
jg 0x1801389d8
cmp rbx, r13
jb 0x180138960
mov eax, ebx
mov word [r15 + 0x12], r14w
sub eax, dword [rbp - 0x18]
mov dword [r15 + 0x64], eax
cmp rbx, r13
jb 0x180138a32
ja 0x1801389f6
mov eax, dword [r15 + 0x5c]
cmp rsi, rax
je 0x180138a3b
cmp qword [r15 + 0x68], 0
jne 0x180138a1a
mov edx, 0x2460
test word [rbp + 0x68], dx
jne 0x180138a11
cmp dword [rbp + 0x80], 0
je 0x180138a1a
lea rcx, [rbp + 0x60]
call fcn.18014f7e0
mov ecx, 0x12cd3
call fcn.1800f6670
mov r12, qword [rbp - 0x78]
mov r13, qword [rsp + 0x78]
jmp 0x18013d335
mov eax, dword [r15 + 0x5c]
cmp rsi, rax
ja 0x1801389f6
cmp qword [r15 + 0x68], 0
mov r8d, 0x2460
jne 0x180138a67
test word [rbp + 0x68], r8w
jne 0x180138a58
cmp dword [rbp + 0x80], 0
je 0x180138a67
lea rcx, [rbp + 0x60]
call fcn.18014f7e0
mov r8d, 0x2460
mov r14, qword [rbp - 0x50]
xor r11d, r11d
mov rsi, qword [rbp - 0x10]
mov r13, qword [rbp - 0x68]
mov r12, qword [rbp - 0x78]
movzx eax, word [r15 + 0x12]
movsxd rbx, dword [rbp - 0x70]
cmp eax, ebx
jg 0x180138b66
mov r15, qword [rsp + 0x48]
cmp byte [r15 + 1], 0xf8
jne 0x180138b20
mov rax, qword [r15 + 0x10]
test word [r14 + 8], r8w
je 0x180138ad3
mov r8d, 0x800
mov rdx, rax
mov rcx, r14
call fcn.18014e580
mov rsi, qword [rsp + 0x70]
xor r11d, r11d
jmp 0x180137098
mov edi, r11d
mov dword [rbp - 0x54], r11d
mov r8d, 0x2460
jmp 0x180138a7a
movups xmm0, xmmword [rax]
mov rsi, qword [rsp + 0x70]
mov ecx, 0x800
mov r9, qword [rsp + 0x58]
mov edx, 4
mov r10, qword [rsp + 0x68]
mov ebx, dword [rsp + 0x50]
movups xmmword [r14], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [r14 + 0x10], xmm1
test word [rax + 8], cx
jne 0x18013715c
mov eax, 0xebff
and word [r14 + 8], ax
or word [r14 + 8], cx
jmp 0x18013715c
test word [r14 + 8], r8w
je 0x180138b3c
mov rcx, r14
call fcn.18014f910
mov rsi, qword [rsp + 0x70]
xor r11d, r11d
jmp 0x180137098
mov rsi, qword [rsp + 0x70]
mov r10d, 1
mov r9, qword [rsp + 0x58]
mov word [r14 + 8], r10w
mov r10, qword [rsp + 0x68]
jmp 0x180137153
movsxd rbx, edx
mov edi, dword [r15 + rbx*4 + 0x78]
mov dword [rbp - 0x54], edi
mov edx, 0x2460
test word [r14 + 8], dx
je 0x180138b7a
mov rcx, r14
call fcn.18014f910
movzx eax, byte [rsp + 0x60]
mov byte [r14 + 0xa], al
mov eax, dword [rsi + rbx*4 + 4]
cmp dword [r15 + 0x60], eax
jb 0x180138c41
mov esi, dword [rsi + rbx*4]
add rsi, qword [r15 + 0x68]
cmp edi, 0xc
jae 0x180138bbc
mov r8, r14
mov edx, edi
mov rcx, rsi
call fcn.180141b50
mov r15, qword [rsp + 0x48]
xor r11d, r11d
mov rsi, qword [rsp + 0x70]
jmp 0x180137098
lea ebx, [rdi - 0xc]
shr ebx, 1
mov dword [r14 + 0xc], ebx
lea edx, [rbx + 2]
cmp dword [r14 + 0x20], edx
jge 0x180138bf2
mov r15d, 1
xor r8d, r8d
mov rcx, r14
mov word [r14 + 8], r15w
call fcn.18013fd90
test eax, eax
jne 0x18013d900
mov rcx, qword [r14 + 0x10]
jmp 0x180138bfa
mov rcx, qword [r14 + 0x18]
mov qword [r14 + 0x10], rcx
mov r8, rbx
mov rdx, rsi
call fcn.1801625a0
mov rax, qword [r14 + 0x10]
lea rcx, [0x180000000]
mov r15, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x70]
mov byte [rbx + rax], 0
mov rax, qword [r14 + 0x10]
mov byte [rax + rbx + 1], 0
mov eax, edi
and eax, 1
xor r11d, r11d
movzx eax, word [rcx + rax*2 + 0x1a5c68]
mov word [r14 + 8], ax
jmp 0x180137098
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax + 3]
test al, 0xc0
je 0x180138c5d
cmp edi, 0xc
jb 0x180138c59
test dil, 1
je 0x180138c86
test al, al
js 0x180138c86
mov eax, 0x80
cmp edi, eax
jb 0x180138c6f
lea r8d, [rdi - 0xc]
shr r8d, 1
jmp 0x180138c81
mov eax, edi
lea rcx, [0x180000000]
movzx r8d, byte [rax + rcx + 0x1a6270]
test r8d, r8d
jne 0x180138ca9
mov r8, r14
lea rcx, [0x1801eeb30]
mov edx, edi
call fcn.180141b50
mov r15, qword [rsp + 0x48]
xor r11d, r11d
mov rsi, qword [rsp + 0x70]
jmp 0x180137098
mov edx, dword [rsi + rbx*4]
xor r9d, r9d
cmp byte [r15 + 4], r9b
mov rcx, r13
mov qword [rsp + 0x20], r14
sete r9b
call fcn.18013fd30
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180138a28
mov rcx, qword [r14 + 0x10]
mov r8, r14
mov edx, edi
call fcn.180141b50
mov r15, qword [rsp + 0x48]
mov eax, 0xefff
and word [r14 + 8], ax
mov rsi, qword [rsp + 0x70]
xor r11d, r11d
jmp 0x180137098
mov rax, qword [rsp + 0x48]
mov rdi, qword [rax + 0x10]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
movzx eax, byte [rdi]
add rbx, rsi
test al, al
je 0x180136b67
movzx esi, byte [rsp + 0x60]
nop
lea rdi, [rdi + 1]
cmp al, 0x43
jl 0x180138d4f
movzx eax, word [rbx + 8]
test al, 4
jne 0x180138d83
test al, 8
jne 0x180138d45
test al, 2
je 0x180138d83
mov edx, r14d
mov rcx, rbx
call fcn.1800773c0
jmp 0x180138d83
mov rcx, rbx
call fcn.18013f050
jmp 0x180138d83
cmp al, 0x42
jne 0x180138d83
movzx ecx, word [rbx + 8]
movzx eax, cx
test cl, 2
jne 0x180138d77
test cl, 0xc
je 0x180138d77
mov r8b, 1
movzx edx, sil
mov rcx, rbx
call fcn.1801404b0
movzx eax, word [rbx + 8]
mov ecx, 0xfff3
and ax, cx
mov word [rbx + 8], ax
movzx eax, byte [rdi]
add rbx, 0x38
test al, al
jne 0x180138d20
mov r15, qword [rsp + 0x48]
xor r11d, r11d
mov rsi, qword [rsp + 0x70]
jmp 0x180137098
mov rcx, qword [rsp + 0x48]
mov r14, r11
mov rdi, qword [rsp + 0x78]
mov r12d, r11d
mov r8, r11
mov qword [rbp - 0x70], r11
movsxd rax, dword [rcx + 4]
mov rbx, qword [rcx + 0x10]
movzx r15d, byte [rdi + 0x90]
imul r13, rax, 0x38
mov eax, dword [rcx + 8]
dec eax
add r13, rsi
cdqe
imul rsi, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
add rsi, r13
add rcx, qword [rsp + 0x70]
mov qword [rbp - 0x68], rsi
mov qword [rbp - 0x50], rcx
test rbx, rbx
je 0x180138e30
movzx eax, byte [rbx]
mov rdi, r13
movzx esi, byte [rsp + 0x60]
movzx r8d, sil
movzx edx, al
mov rcx, rdi
call fcn.180077340
movzx eax, byte [rbx + 1]
lea rbx, [rbx + 1]
add rdi, 0x38
test al, al
jne 0x180138e01
mov r8, qword [rbp - 0x70]
xor r11d, r11d
mov rsi, qword [rbp - 0x68]
nop dword [rax + rax]
movzx eax, word [rsi + 8]
test al, 1
je 0x180138e43
mov ebx, r11d
mov edi, r11d
jmp 0x180138f0a
test al, 4
je 0x180138ee6
mov rdx, qword [rsi]
mov rcx, rdx
test rdx, rdx
jns 0x180138e59
not rcx
cmp rcx, 0x7f
ja 0x180138e89
mov rax, rdx
and eax, 1
cmp rax, rdx
jne 0x180138e7b
cmp r15b, 4
jb 0x180138e7b
mov ebx, r11d
lea edi, [rcx + 8]
jmp 0x180138f0a
mov eax, 1
mov ebx, eax
mov edi, eax
jmp 0x180138f0a
cmp rcx, 0x7fff
ja 0x180138e9d
mov eax, 2
mov ebx, eax
mov edi, eax
jmp 0x180138f0a
cmp rcx, 0x7fffff
ja 0x180138eaf
mov ebx, 3
mov edi, ebx
jmp 0x180138f0a
cmp rcx, 0x7fffffff
ja 0x180138ec3
mov eax, 4
mov ebx, eax
mov edi, eax
jmp 0x180138f0a
movabs rax, 0x7fffffffffff
cmp rcx, rax
ja 0x180138edc
mov ebx, 6
lea edi, [rbx - 1]
jmp 0x180138f0a
mov ebx, 8
lea edi, [rbx - 2]
jmp 0x180138f0a
test al, 8
je 0x180138ef4
mov ebx, 8
lea edi, [rbx - 1]
jmp 0x180138f0a
bt eax, 0xe
mov ebx, dword [rsi + 0xc]
jae 0x180138eff
add ebx, dword [rsi]
shr eax, 1
lea edi, [rbx + 6]
and eax, 1
lea edi, [rax + rdi*2]
mov eax, 0x4000
mov dword [rsi + 0x24], edi
test word [rsi + 8], ax
je 0x180138fa2
test r14, r14
je 0x180138f96
mov rcx, rsi
call fcn.18013fbf0
test eax, eax
je 0x180138fa2
mov r12, qword [rbp - 0x78]
mov r13, qword [rsp + 0x78]
mov r15d, 1
movzx ebx, byte [rsp + 0x40]
xor edi, edi
cmp byte [r12 + 0x55], 0
jne 0x180138f74
cmp byte [r12 + 0x56], 0
jne 0x180138f74
mov byte [r12 + 0x55], 1
cmp dword [r12 + 0xb4], 0
jle 0x180138f6c
mov dword [r12 + 0x148], r15d
inc dword [r12 + 0x150]
lea rdx, str.out_of_memory
mov rcx, r13
call fcn.1801366d0
mov rsi, qword [rsp + 0x48]
mov r14d, 7
mov eax, r14d
jmp 0x18013d347
movsxd rcx, dword [rsi]
add r8, rcx
mov qword [rbp - 0x70], r8
sub ebx, ecx
mov eax, ebx
mov r9d, 1
add r14, rax
mov ecx, r9d
cmp edi, 0x7f
jbe 0x180138fcb
mov eax, edi
shr rax, 7
test rax, rax
je 0x180138fcb
inc ecx
shr rax, 7
test rax, rax
jne 0x180138fc0
mov r8, qword [rbp - 0x70]
add r12d, ecx
sub rsi, 0x38
mov r11d, 0
cmp rsi, r13
jae 0x180138e30
cmp r12d, 0x7e
jle 0x18013902f
movsxd rax, r12d
mov edx, r9d
shr rax, 7
test rax, rax
je 0x18013900b
nop word [rax + rax]
inc edx
shr rax, 7
test rax, rax
jne 0x180139000
add r12d, edx
mov ecx, r9d
movsxd rax, r12d
shr rax, 7
test rax, rax
je 0x18013902b
nop dword [rax]
inc ecx
shr rax, 7
test rax, rax
jne 0x180139020
cmp edx, ecx
jge 0x180139032
inc r12d
mov r10, qword [rbp - 0x78]
mov rcx, qword [rbp - 0x70]
movsxd rbx, r12d
movsxd rax, dword [r10 + 0x6c]
lea r15, [r14 + rbx]
add rcx, r15
mov qword [rbp - 0x18], r15
cmp rcx, rax
jg 0x18013d613
mov rdi, qword [rbp - 0x50]
cmp dword [rdi + 0x20], r15d
jge 0x180139077
xor r8d, r8d
mov edx, r15d
mov rcx, rdi
call fcn.18013fd90
test eax, eax
jne 0x180138f2d
jmp 0x180139084
mov rax, qword [rdi + 0x18]
mov qword [rdi + 0x10], rax
and word [rdi + 8], 0xd
mov r14, qword [rdi + 0x10]
mov edx, 0x80
cmp r12d, edx
jae 0x1801390a0
mov r15d, 1
mov byte [r14], r12b
mov eax, r15d
jmp 0x1801390f6
cmp rbx, 0x7f
ja 0x1801390b7
and bl, 0x7f
mov r15d, 1
mov byte [r14], bl
mov eax, r15d
jmp 0x1801390f6
cmp rbx, 0x3fff
ja 0x1801390e2
mov rax, rbx
mov r8d, 2
shr rax, 7
or al, dl
mov byte [r14], al
and bl, 0x7f
mov byte [r14 + 1], bl
lea r15d, [r8 - 1]
mov eax, r8d
jmp 0x1801390fc
mov rdx, rbx
mov rcx, r14
call fcn.1800c0900
mov edx, 0x80
lea r15d, [rdx - 0x7f]
mov r8d, 2
lea rdi, [r13 + 0xc]
movzx esi, al
mov r13, qword [rbp - 0x68]
nop word [rax + rax]
mov r11d, dword [rdi + 0x18]
movsxd rcx, esi
add rcx, r14
cmp r11d, edx
jae 0x180139127
mov byte [rcx], r11b
mov eax, r15d
jmp 0x18013915e
mov rdx, r11
cmp r11, 0x7f
ja 0x18013913a
and dl, 0x7f
mov eax, r15d
mov byte [rcx], dl
jmp 0x18013915e
cmp rdx, 0x3fff
ja 0x180139159
mov rax, rdx
shr rax, 7
or al, 0x80
mov byte [rcx], al
and dl, 0x7f
mov byte [rcx + 1], dl
mov eax, r8d
jmp 0x18013915e
call fcn.1800c0900
movzx eax, al
add esi, eax
movsxd r9, r12d
lea eax, [r11 - 1]
add r9, r14
cmp eax, 6
ja 0x1801391a8
mov rdx, qword [rdi - 0xc]
lea rcx, [0x180000000]
movzx ecx, byte [r11 + rcx + 0x1a6270]
mov r13d, 0xffffffff
mov ebx, ecx
nop
add ecx, r13d
mov byte [rcx + r9], dl
shr rdx, 8
test ecx, ecx
jne 0x180139190
mov r13, qword [rbp - 0x68]
xor r11d, r11d
jmp 0x1801391ce
cmp r11d, 0xc
jb 0x1801391c8
mov ebx, dword [rdi]
test ebx, ebx
je 0x1801391c3
mov rdx, qword [rdi + 4]
mov r8d, ebx
mov rcx, r9
call fcn.1801625a0
xor r11d, r11d
jmp 0x1801391ce
xor r11d, r11d
mov ebx, r11d
add rdi, 0x38
mov edx, 0x80
add r12d, ebx
lea rax, [rdi - 0xc]
lea r8d, [rdx - 0x7e]
cmp rax, r13
jbe 0x180139110
mov rcx, qword [rbp - 0x50]
mov eax, reloc.WS2_32.dll_recv
mov r15, qword [rbp - 0x18]
mov dword [rcx + 0xc], r15d
mov word [rcx + 8], ax
mov rax, qword [rbp - 0x70]
test rax, rax
je 0x180139214
mov dword [rcx], eax
mov eax, 0x4010
mov word [rcx + 8], ax
mov byte [rcx + 0xa], 1
mov r15, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x70]
jmp 0x180137098
mov rax, qword [rsp + 0x48]
lea rdx, [rbp + 0x40]
mov qword [rbp + 0x40], r11
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x60]
mov rcx, qword [rax + rcx*8]
mov rcx, qword [rcx + 0x18]
call fcn.1800f0790
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18013d335
mov rax, qword [rsp + 0x48]
mov r8d, 0x2460
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
add rcx, qword [r13 + 0x10]
test word [rcx + 8], r8w
je 0x180139288
call fcn.1800db5c0
mov rcx, rax
mov edx, 4
mov r8d, 0x2460
jmp 0x180139291
mov edx, 4
mov word [rcx + 8], dx
mov rax, qword [rbp + 0x40]
mov r15, qword [rsp + 0x48]
xor r11d, r11d
mov r9, qword [rsp + 0x58]
mov r10, qword [rsp + 0x68]
mov qword [rcx], rax
jmp case.0x180136931.62
mov rax, qword [rsp + 0x48]
mov r14d, dword [rax + 4]
mov rdi, qword [rax + 0x10]
mov dword [rbp - 0x70], r14d
test r14d, r14d
jne 0x1801393b1
cmp dword [r12 + 0xb0], r14d
jg 0x18013d321
test rdi, rdi
jne 0x1801392e1
mov ebx, r11d
jmp 0x1801392ff
mov rbx, 0xffffffffffffffff
nop dword [rax + rax]
inc rbx
cmp byte [rdi + rbx], 0
jne 0x1801392f0
and ebx, 0x3fffffff
mov r8d, dword [r12 + 0x278]
xor edx, edx
add r8d, dword [r12 + 0x274]
mov rcx, r12
call fcn.180143850
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18013d335
mov edx, ebx
mov rcx, r12
add rdx, 0x21
call fcn.1800f8480
mov rsi, rax
test rax, rax
je 0x18013754a
lea r9, [rax + 0x20]
mov rdx, rdi
mov rcx, r9
mov qword [rax], r9
lea r8d, [rbx + 1]
call fcn.1801625a0
cmp byte [r12 + 0x53], 0
je 0x18013936b
mov byte [r12 + 0x53], 0
mov byte [r12 + 0x5b], 1
jmp 0x180139373
inc dword [r12 + 0x274]
mov rax, qword [r12 + 0x268]
xor r11d, r11d
mov r15, qword [rsp + 0x48]
mov qword [rsi + 0x18], rax
mov qword [r12 + 0x268], rsi
mov rax, qword [r12 + 0x280]
mov qword [rsi + 8], rax
mov rax, qword [r12 + 0x288]
mov qword [rsi + 0x10], rax
mov rsi, qword [rsp + 0x70]
jmp 0x180137098
mov rsi, qword [r12 + 0x268]
mov r15d, r11d
test rsi, rsi
je 0x1801393dc
mov rcx, qword [rsi]
mov rdx, rdi
call fcn.180130290
test eax, eax
je 0x1801393f8
mov rsi, qword [rsi + 0x18]
inc r15d
test rsi, rsi
jne 0x1801393c1
mov r8, rdi
lea rdx, str.no_such_savepoint:__s
mov rcx, r13
call fcn.1801366d0
mov eax, 1
jmp 0x18013d335
cmp dword [r12 + 0xb0], 0
jle 0x18013940d
cmp r14d, 1
je 0x18013d3a9
cmp qword [rsi + 0x18], 0
jne 0x180139473
cmp byte [r12 + 0x5b], 0
je 0x180139473
mov edi, 1
mov r13d, edi
cmp r14d, edi
jne 0x180139476
mov rbx, qword [rsp + 0x78]
mov rax, qword [rbx]
mov rcx, qword [rax + 0x288]
add rcx, qword [rax + 0x280]
test rcx, rcx
mov rcx, rbx
jg 0x18013d3fd
mov byte [r12 + 0x53], dil
call fcn.18013e8d0
cmp eax, 5
je 0x18013d3b5
mov byte [r12 + 0x5b], 0
mov ecx, dword [rbx + 0x84]
mov dword [rsp + 0x54], ecx
jmp 0x18013956e
xor r13d, r13d
mov eax, dword [r12 + 0x274]
mov rcx, qword [rbp - 0x78]
sub eax, r15d
lea r15d, [rax - 1]
mov eax, dword [rcx + 0x28]
cmp r14d, 2
jne 0x1801394e9
mov r12d, dword [r12 + 0x2c]
xor edi, edi
shr r12d, 1
and r12d, 1
test eax, eax
jle 0x1801394ec
mov r14d, r12d
xor r14d, 1
xor ebx, ebx
nop dword [rax]
mov rcx, qword [rcx + 0x20]
mov r8d, r14d
mov edx, 0x204
mov rcx, qword [rcx + rbx + 8]
call fcn.1800f3150
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180138a24
mov rcx, qword [rbp - 0x78]
inc edi
add rbx, 0x20
mov eax, dword [rcx + 0x28]
cmp edi, eax
jl 0x1801394b0
mov r14d, dword [rbp - 0x70]
jmp 0x1801394ec
xor r12d, r12d
xor edi, edi
test eax, eax
jle 0x18013952f
xor ebx, ebx
nop dword [rax]
nop dword [rax + rax]
mov rcx, qword [rcx + 0x20]
mov r8d, r15d
mov edx, r14d
mov rcx, qword [rcx + rbx + 8]
call fcn.1800f2b30
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180138a24
mov rcx, qword [rbp - 0x78]
inc edi
add rbx, 0x20
cmp edi, dword [rcx + 0x28]
jl 0x180139500
test r12d, r12d
mov r12, qword [rbp - 0x78]
je 0x18013956e
mov rax, qword [r12 + 8]
test rax, rax
je 0x180139560
nop dword [rax]
nop word [rax + rax]
or dword [rax + 0x8c], 1
mov rax, qword [rax + 0x58]
test rax, rax
jne 0x180139550
mov rcx, r12
call fcn.180128050
or dword [r12 + 0x2c], 2
cmp qword [r12 + 0x268], rsi
je 0x1801395ae
nop dword [rax + rax]
mov rdx, qword [r12 + 0x268]
mov rcx, r12
mov rax, qword [rdx + 0x18]
mov qword [r12 + 0x268], rax
call fcn.1800f83c0
dec dword [r12 + 0x274]
cmp qword [r12 + 0x268], rsi
jne 0x180139580
cmp r14d, 1
jne 0x180139604
mov rax, qword [rsi + 0x18]
mov rdx, rsi
mov rcx, r12
mov qword [r12 + 0x268], rax
call fcn.1800f83c0
test r13d, r13d
jne 0x180139627
dec dword [r12 + 0x274]
mov r8d, r15d
mov edx, r14d
mov rcx, r12
call fcn.180143850
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180138a28
mov r15, qword [rsp + 0x48]
xor r11d, r11d
mov rsi, qword [rsp + 0x70]
jmp 0x180137098
mov rax, qword [rsi + 8]
mov qword [r12 + 0x280], rax
mov rax, qword [rsi + 0x10]
mov qword [r12 + 0x288], rax
test r13d, r13d
je 0x1801395d8
cmp r14d, 2
je 0x1801395d8
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x180138a28
mov r15, qword [rsp + 0x48]
xor r11d, r11d
mov rsi, qword [rsp + 0x70]
jmp 0x180137098
mov rdi, qword [rsp + 0x48]
mov edx, dword [rdi + 8]
test edx, edx
je 0x180139660
test dword [r12 + 0x2c], 0x2000000
jne 0x18013d428
movsxd rcx, dword [rdi + 4]
mov rax, qword [r12 + 0x20]
shl rcx, 5
mov rbx, qword [rcx + rax + 8]
test rbx, rbx
je 0x1801397f0
mov rcx, rbx
call fcn.1800efb00
mov dword [rsp + 0x54], eax
cmp al, 5
je 0x18013d435
test eax, eax
jne 0x18013d42d
cmp dword [rdi + 8], eax
je 0x180139781
test byte [r13 + 0x94], 0x10
je 0x180139781
cmp byte [r12 + 0x53], al
je 0x1801396c4
cmp dword [r12 + 0xac], 1
jle 0x180139781
mov r8d, dword [r13 + 0xa4]
test r8d, r8d
jne 0x1801396ef
inc dword [r12 + 0x278]
mov r8d, dword [r12 + 0x274]
add r8d, dword [r12 + 0x278]
mov dword [r13 + 0xa4], r8d
dec r8d
xor edx, edx
mov rcx, r12
call fcn.180143850
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180139763
mov edi, dword [r13 + 0xa4]
mov rsi, qword [rbx + 8]
cmp byte [rbx + 0x11], al
je 0x180139724
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], al
jne 0x180139724
mov rcx, rbx
call fcn.18007b390
mov rcx, qword [rsi]
cmp edi, dword [rcx + 0x80]
jle 0x180139742
cmp byte [rcx + 0xa], 0
je 0x180139742
mov edx, edi
call fcn.1800dbe20
mov dword [rsp + 0x54], eax
jmp 0x18013974a
mov dword [rsp + 0x54], 0
cmp byte [rbx + 0x11], 0
je 0x18013975e
sub dword [rbx + 0x14], 1
jne 0x18013975e
mov rcx, rbx
call fcn.18014cdf0
mov rsi, qword [rsp + 0x70]
mov rax, qword [r12 + 0x280]
mov qword [r13 + 0xd8], rax
mov rax, qword [r12 + 0x288]
mov qword [r13 + 0xe0], rax
movzx edx, byte [rbx + 0x11]
mov rdi, qword [rbx + 8]
test dl, dl
je 0x1801397a2
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x1801397a2
mov rcx, rbx
call fcn.18007b390
movzx edx, byte [rbx + 0x11]
mov rax, qword [rdi + 0x18]
mov rcx, qword [rax + 0x50]
mov edi, dword [rcx + 0x28]
bswap edi
test dl, dl
je 0x1801397c1
sub dword [rbx + 0x14], 1
jne 0x1801397c1
mov rcx, rbx
call fcn.18014cdf0
mov rax, qword [rsp + 0x48]
mov r8d, 0x2460
mov r9, qword [rsp + 0x58]
mov r10, qword [rsp + 0x68]
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x20]
shl rcx, 5
xor r11d, r11d
mov rcx, qword [rcx + rax + 0x18]
mov eax, dword [rcx + 4]
jmp 0x1801397f6
mov edi, r11d
mov eax, r11d
mov r15, qword [rsp + 0x48]
cmp byte [r15 + 3], 0
je 0x180139816
cmp edi, dword [r15 + 0xc]
jne 0x18013d46c
cmp eax, dword [r15 + 0x10]
jne 0x18013d46c
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x180137ea2
jmp 0x180137153
mov rcx, qword [r12 + 0x20]
lea r8, [rbp]
mov rdx, qword [rsp + 0x48]
mov rax, qword [rsp + 0x48]
mov edx, dword [rdx + 0xc]
movsxd rax, dword [rax + 4]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.1800f0fe0
mov rcx, qword [rsp + 0x48]
mov r8d, 0x2460
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
add rcx, qword [r13 + 0x10]
test word [rcx + 8], r8w
je 0x180139889
call fcn.1800db5c0
mov rcx, rax
mov edx, 4
movsxd rax, dword [rbp]
mov r8d, 0x2460
jmp 0x180139295
movsxd rax, dword [rbp]
mov edx, 4
mov word [rcx + 8], dx
jmp 0x180139295
mov rax, qword [rsp + 0x48]
movsxd rbx, dword [rax + 4]
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 8]
shl rbx, 5
add rbx, qword [r12 + 0x20]
mov rcx, qword [rbx + 8]
call fcn.1800f3320
mov rdx, qword [rsp + 0x48]
mov dword [rsp + 0x54], eax
mov eax, dword [rdx + 8]
cmp eax, 1
jne 0x1801398df
mov rcx, qword [rbx + 0x18]
mov eax, dword [rdx + 0xc]
mov dword [rcx], eax
or dword [r12 + 0x2c], 2
jmp 0x1801398ef
cmp eax, 2
jne 0x1801398ef
mov rcx, qword [rbx + 0x18]
movzx eax, byte [rdx + 0xc]
mov byte [rcx + 0x70], al
cmp dword [rdx + 4], 1
jne 0x180139918
mov rax, qword [r12 + 8]
test rax, rax
je 0x180139910
nop
or dword [rax + 0x8c], 1
mov rax, qword [rax + 0x58]
test rax, rax
jne 0x180139900
and dword [r13 + 0x8c], 0xfffffffe
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x18013d93a
mov r15, rdx
jmp 0x180137095
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x60]
mov rdi, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x48]
test rdi, rdi
je 0x18013995a
mov eax, dword [rcx + 8]
cmp dword [rdi + 0xc], eax
je 0x180139a94
jmp 0x18013995a
mov rcx, qword [rsp + 0x48]
test byte [r13 + 0x8c], 1
jne 0x18013d4f4
movsxd r12, dword [rcx + 0xc]
mov edi, r11d
mov r10, qword [rbp - 0x78]
mov rax, r12
movsxd r15, dword [rcx + 8]
mov r14, r11
shl rax, 5
add rax, qword [r10 + 0x20]
mov r13, qword [rax + 8]
cmp bl, 0x37
jne 0x180139a02
mov rax, qword [rax + 0x18]
movzx esi, byte [rcx + 3]
and esi, 8
or esi, 4
movzx ecx, byte [rax + 0x70]
mov rax, qword [rsp + 0x78]
cmp cl, byte [rax + 0x90]
jae 0x1801399b3
mov byte [rax + 0x90], cl
mov rcx, qword [rsp + 0x48]
test byte [rcx + 3], 0x10
je 0x1801399e8
imul rbx, r15, 0x38
add rbx, qword [rsp + 0x70]
mov rcx, rbx
call fcn.18013efc0
mov rcx, qword [rsp + 0x48]
mov qword [rbx], rax
mov eax, 0x3e00
and word [rbx + 8], ax
or word [rbx + 8], 4
mov r15d, dword [rbx]
movzx eax, byte [rcx + 1]
cmp al, 0xfa
jne 0x180139a07
mov r14, qword [rcx + 0x10]
movzx edi, word [r14 + 8]
movzx eax, word [r14 + 6]
add edi, eax
jmp 0x180139a0e
mov esi, r11d
jmp 0x1801399b8
cmp al, 0xf2
jne 0x180139a0e
mov edi, dword [rcx + 0x10]
mov edx, dword [rcx + 4]
mov r9d, r12d
mov rcx, qword [rsp + 0x78]
mov r8d, edi
mov byte [rsp + 0x20], 0
call fcn.180075890
mov rdi, rax
test rax, rax
je 0x180138f2d
mov byte [rax + 2], 1
mov r9, r14
or dword [rax + 8], 4
mov r8d, esi
mov dword [rax + 0xc], r15d
mov edx, r15d
mov rcx, qword [rax + 0x18]
mov qword [rsp + 0x20], rcx
mov rcx, r13
call fcn.1800f0950
mov rcx, qword [rsp + 0x48]
mov r8d, 0x2460
mov r12, qword [rbp - 0x78]
mov r13, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x70]
mov r9, qword [rsp + 0x58]
mov r10, qword [rsp + 0x68]
mov qword [rdi + 0x28], r14
cmp byte [rcx + 1], 0xfa
mov dword [rsp + 0x54], eax
setne al
xor r11d, r11d
mov byte [rdi + 4], al
lea edx, [r11 + 4]
mov rax, qword [rdi + 0x18]
movzx ecx, byte [rcx + 3]
and cl, 3
mov byte [rax + 0x57], cl
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x18013d335
mov r15, qword [rsp + 0x48]
jmp case.0x180136931.62
mov rbx, qword [rsp + 0x48]
mov r9d, 0xffffffff
mov rcx, r13
mov byte [rsp + 0x20], 0
mov r8d, dword [rbx + 8]
mov edx, dword [rbx + 4]
call fcn.180075890
mov rdi, rax
test rax, rax
je 0x180138f36
mov r10, qword [rbp - 0x78]
lea r9, [rax + 0x20]
mov byte [rax + 2], 1
mov r8, r10
or dword [rax + 8], 1
xor edx, edx
movzx ecx, byte [rbx + 3]
or ecx, 5
mov dword [rsp + 0x28], 0x41e
mov dword [rsp + 0x20], ecx
mov rcx, qword [r10]
call fcn.1800f2090
test eax, eax
jne 0x18013d925
mov rcx, qword [rdi + 0x20]
mov ebx, 1
mov edx, ebx
call fcn.1800efb00
test eax, eax
jne 0x18013d931
mov rax, qword [rsp + 0x48]
mov r15, qword [rax + 0x10]
test r15, r15
je 0x180139bbd
mov rbx, qword [rdi + 0x20]
movzx esi, byte [rax + 3]
or esi, 2
cmp byte [rbx + 0x11], 0
je 0x180139b63
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x180139b63
mov rcx, rbx
call fcn.18007b390
mov r8d, esi
lea rdx, [rbp + 4]
mov rcx, rbx
call fcn.18007a690
cmp byte [rbx + 0x11], 0
mov esi, eax
mov dword [rsp + 0x54], eax
je 0x180139b8c
sub dword [rbx + 0x14], 1
jne 0x180139b8c
mov rcx, rbx
call fcn.18014cdf0
test esi, esi
jne 0x180139bb4
mov edx, dword [rbp + 4]
lea r8d, [rsi + 4]
mov qword [rdi + 0x28], r15
mov r9, r15
mov rax, qword [rdi + 0x18]
mov rcx, qword [rdi + 0x20]
mov qword [rsp + 0x20], rax
call fcn.1800f0950
mov dword [rsp + 0x54], eax
mov rsi, qword [rsp + 0x70]
xor al, al
jmp 0x180139bdf
mov rax, qword [rdi + 0x18]
xor r9d, r9d
mov rcx, qword [rdi + 0x20]
mov edx, ebx
mov qword [rsp + 0x20], rax
lea r8d, [r9 + 4]
call fcn.1800f0950
mov dword [rsp + 0x54], eax
movzx eax, bl
mov byte [rdi + 4], al
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x18013d931
mov rax, qword [rsp + 0x48]
xor r11d, r11d
mov r15, qword [rsp + 0x48]
mov ecx, r11d
mov r9, qword [rsp + 0x58]
mov edx, 4
mov r10, qword [rsp + 0x68]
mov r8d, 0x2460
cmp byte [rax + 3], 8
mov eax, dword [rdi + 8]
cmovne ecx, edx
and eax, 0xfffffffb
or ecx, eax
mov dword [rdi + 8], ecx
jmp case.0x180136931.62
mov rax, qword [rsp + 0x48]
mov r9d, 0xffffffff
mov rcx, r13
mov byte [rsp + 0x20], 1
mov r8d, dword [rax + 8]
mov edx, dword [rax + 4]
call fcn.180075890
test rax, rax
je 0x180138f36
mov rdx, qword [rsp + 0x48]
mov r8, rax
mov rcx, qword [rdx + 0x10]
mov qword [rax + 0x28], rcx
mov rcx, r12
mov edx, dword [rdx + 0xc]
call fcn.180141f30
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18013d335
jmp 0x180137090
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x60]
mov rdx, qword [rax + rcx*8]
mov rcx, qword [rdx + 0x38]
lea rax, [rcx + 1]
mov qword [rdx + 0x38], rax
test rcx, rcx
je 0x18013d1f8
jmp 0x180137153
mov rax, qword [rsp + 0x48]
mov r9d, 0xffffffff
mov rcx, r13
mov byte [rsp + 0x20], 3
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 4]
call fcn.180075890
test rax, rax
je 0x180138f36
mov rcx, qword [rsp + 0x48]
mov byte [rax + 2], 1
mov ecx, dword [rcx + 8]
mov dword [rax + 0x18], ecx
mov byte [rax + 4], 1
jmp 0x180137090
mov rdx, qword [r13 + 0x60]
mov rcx, r13
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
mov rdx, qword [rdx + rax*8]
call fcn.18013e6a0
mov rax, qword [rsp + 0x48]
xor r11d, r11d
mov r15, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x60]
mov qword [rax + rcx*8], r11
jmp 0x180137098
mov rax, qword [r13 + 0x60]
mov r15d, r11d
mov rdi, qword [rsp + 0x48]
movsxd rcx, dword [rdi + 4]
mov rsi, qword [rax + rcx*8]
mov byte [rsi + 2], 0
cmp byte [rsi + 4], 0
je 0x180139ddc
movsxd rax, dword [rdi + 0xc]
imul rdi, rax, 0x38
add rdi, qword [rsp + 0x70]
movzx eax, byte [rdi + 8]
and al, 0xe
cmp al, 2
jne 0x180139d68
xor edx, edx
mov rcx, rdi
call fcn.1800773c0
mov rcx, rdi
call fcn.18013efc0
movzx ecx, word [rdi + 8]
mov r14, rax
test cl, 4
jne 0x180139dad
test cl, 8
je 0x18013d1e6
movsd xmm0, qword [rdi]
xorps xmm1, xmm1
cvtsi2sd xmm1, rax
comisd xmm1, xmm0
jbe 0x180139da0
test bl, 1
jne 0x180139dad
dec ebx
jmp 0x180139dad
comisd xmm0, xmm1
jbe 0x180139dad
test bl, 1
je 0x180139dad
inc ebx
mov rcx, qword [rsi + 0x18]
lea rax, [rbp - 0x80]
xor r9d, r9d
mov qword [rsp + 0x20], rax
mov r8, r14
xor edx, edx
call fcn.1800f1a90
mov dword [rsp + 0x54], eax
mov qword [rsi + 0x40], r14
test eax, eax
jne 0x18013d335
jmp 0x180139e6e
mov rax, qword [rsi + 0x18]
mov rdx, qword [rsp + 0x48]
movzx edi, byte [rax + 0x57]
mov rax, qword [rsi + 0x28]
and dil, 2
mov ecx, dword [rdx + 0x10]
mov qword [rbp + 0x48], rax
setne r15b
mov word [rbp + 0x58], cx
lea eax, [rbx - 1]
test al, 1
mov ecx, 0xffffffff
mov eax, r14d
cmovne eax, ecx
mov byte [rbp + 0x5a], al
movsxd rax, dword [rdx + 0xc]
imul rcx, rax, 0x38
mov eax, 0x4000
add rcx, qword [rsp + 0x70]
mov qword [rbp + 0x50], rcx
test word [rcx + 8], ax
je 0x180139e34
call fcn.18013fbf0
mov byte [rbp + 0x5e], 0
lea rax, [rbp - 0x80]
mov rcx, qword [rsi + 0x18]
lea rdx, [rbp + 0x48]
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor r8d, r8d
call fcn.1800f1a90
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18013d335
test dil, dil
je 0x180139e6e
cmp byte [rbp + 0x5e], al
je 0x180139f8b
xor r11d, r11d
mov byte [rsi + 3], 0
mov dword [rsi + 0x58], r11d
mov eax, dword [rbp - 0x80]
cmp ebx, 0x41
jl 0x180139f13
test eax, eax
js 0x180139e99
jne 0x180139e90
cmp ebx, 0x42
je 0x180139e99
mov dword [rbp - 0x80], r11d
jmp 0x180139f98
mov dword [rbp - 0x80], r11d
mov rcx, qword [rsi + 0x18]
mov word [rcx + 0x36], r11w
and byte [rcx + 0x54], 0xf9
mov dword [rbp - 0x80], r11d
cmp byte [rcx + 0x56], 1
je 0x180139ec2
lea rdx, [rbp - 0x80]
call fcn.18007b5f0
jmp 0x180139f7f
movsx rax, byte [rcx + 0x58]
mov rdx, qword [rcx + rax*8 + 0x98]
inc word [rcx + rax*2 + 0x70]
movzx eax, word [rcx + rax*2 + 0x70]
cmp ax, word [rdx + 0x12]
jb 0x180139efc
movsx rax, byte [rcx + 0x58]
mov edx, 0xffff
add word [rcx + rax*2 + 0x70], dx
lea rdx, [rbp - 0x80]
call fcn.18007b5f0
jmp 0x180139f7f
cmp byte [rdx + 4], r11b
je 0x180139f0c
mov dword [rsp + 0x54], r11d
jmp 0x180139f8e
call fcn.1800d6510
jmp 0x180139f7f
test eax, eax
jg 0x180139f31
jne 0x180139f1e
cmp ebx, 0x3f
je 0x180139f31
mov rax, qword [rsi + 0x18]
mov ecx, r11d
cmp byte [rax + 0x56], 1
setne cl
mov dword [rbp - 0x80], ecx
jmp 0x180139f8e
mov dword [rbp - 0x80], r11d
mov rcx, qword [rsi + 0x18]
and byte [rcx + 0x54], 0xf1
mov word [rcx + 0x36], r11w
cmp byte [rcx + 0x56], 1
jne 0x180139f76
movsx r8, byte [rcx + 0x58]
movzx edx, word [rcx + r8*2 + 0x70]
test dx, dx
je 0x180139f76
mov rax, qword [rcx + r8*8 + 0x98]
cmp byte [rax + 4], r11b
je 0x180139f76
dec dx
mov dword [rsp + 0x54], r11d
mov word [rcx + r8*2 + 0x70], dx
jmp 0x180139f8e
lea rdx, [rbp - 0x80]
call fcn.18007ba40
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18013d335
xor r11d, r11d
cmp dword [rbp - 0x80], 0
jne 0x18013d1e9
mov rsi, qword [rsp + 0x70]
test r15d, r15d
mov r15, qword [rsp + 0x48]
mov edx, 4
mov r9, qword [rsp + 0x58]
mov r8d, 0x2460
mov r10, qword [rsp + 0x68]
mov ebx, dword [rsp + 0x50]
je 0x18013715c
add r15, 0x18
jmp 0x18013715c
mov rdi, qword [rsp + 0x48]
mov r15, r11
mov rax, qword [r13 + 0x60]
movsxd rcx, dword [rdi + 4]
mov r14, qword [rax + rcx*8]
movsxd rax, dword [rdi + 0xc]
imul rsi, rax, 0x38
mov rbx, qword [r14 + 0x28]
add rsi, qword [rsp + 0x70]
cmp dword [rdi + 0x10], 0
jle 0x18013a066
mov qword [rbp + 0xc0], rbx
mov ebx, r11d
movzx ecx, word [rdi + 0x10]
mov word [rbp + 0xd0], cx
mov qword [rbp + 0xc8], rsi
cmp r11w, cx
jae 0x18013a05a
mov rdi, r11
mov r13d, 0x4000
test word [rdi + rsi + 8], r13w
je 0x18013a048
movsxd rax, ebx
imul rcx, rax, 0x38
add rcx, rsi
call fcn.18013fbf0
movzx ecx, word [rbp + 0xd0]
mov rsi, qword [rbp + 0xc8]
inc ebx
movzx eax, cx
add rdi, 0x38
cmp ebx, eax
jl 0x18013a023
mov r13, qword [rsp + 0x78]
lea rdi, [rbp + 0xc0]
jmp 0x18013a104
movzx r8d, word [rbx + 6]
lea rdx, [rbp + 0x220]
neg edx
imul ecx, r8d, 0x38
and edx, 7
lea eax, [rdx + 0xff]
add ecx, 0x50
cmp ecx, eax
jbe 0x18013a0bc
mov rax, qword [rbx + 0x10]
imul rcx, r8, 0x38
add rcx, 0x50
test rax, rax
je 0x18013a0a6
mov rdx, rcx
mov rcx, rax
call fcn.1800f8480
jmp 0x18013a0ab
call fcn.18011da50
mov rdi, rax
mov r15, rax
test rax, rax
je 0x180138f36
jmp 0x18013a0c8
mov eax, edx
lea rdi, [rbp + 0x220]
add rdi, rax
lea rax, [rdi + 0x18]
mov qword [rdi + 8], rax
mov qword [rdi], rbx
movzx eax, word [rbx + 6]
inc ax
mov word [rdi + 0x10], ax
mov eax, 0x4000
test word [rsi + 8], ax
je 0x18013a0f1
mov rcx, rsi
call fcn.18013fbf0
mov r8, qword [rsi + 0x10]
mov r9, rdi
mov edx, dword [rsi + 0xc]
mov rcx, qword [r14 + 0x28]
call fcn.180141550
mov rax, qword [rsp + 0x48]
xor edx, edx
mov byte [rdi + 0x12], 0
mov ebx, edx
cmp byte [rax], 0x43
jne 0x18013a148
movzx eax, word [rdi + 0x10]
mov ecx, edx
cmp dx, ax
jae 0x18013a148
mov edx, eax
mov rax, qword [rdi + 8]
add rax, 8
nop dword [rax + rax]
test byte [rax], 1
jne 0x18013a143
inc rcx
add rax, 0x38
cmp rcx, rdx
jl 0x18013a130
jmp 0x18013a148
mov ebx, 1
mov rcx, qword [r14 + 0x18]
lea rax, [rbp + 8]
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, rdi
call fcn.1800f1a90
mov rdx, r15
mov dword [rsp + 0x54], eax
mov rcx, r12
call fcn.1800f83c0
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x18013d335
mov eax, dword [rbp + 8]
xor r11d, r11d
mov r15, qword [rsp + 0x48]
test eax, eax
mov rsi, qword [rsp + 0x70]
mov ecx, r11d
mov r9, qword [rsp + 0x58]
sete cl
mov dword [r14 + 0x30], eax
test eax, eax
setne al
mov byte [r14 + 2], al
mov byte [r14 + 3], r11b
mov dword [r14 + 0x58], r11d
cmp byte [r15], 0x45
jne 0x18013a1d1
test ecx, ecx
jne 0x18013d1f8
mov r10, qword [rsp + 0x68]
lea edx, [rcx + 4]
mov r8d, 0x2460
jmp case.0x180136931.62
test ebx, ebx
jne 0x18013d1f8
test ecx, ecx
je 0x18013d1f8
mov r10, qword [rsp + 0x68]
lea edx, [rbx + 4]
mov r8d, 0x2460
jmp case.0x180136931.62
mov rbx, qword [rsp + 0x48]
xor r9d, r9d
mov rax, qword [r13 + 0x60]
xor edx, edx
mov dword [rbp - 0x34], r11d
movsxd rcx, dword [rbx + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [rbx + 0xc]
imul rcx, rax, 0x38
lea rax, [rbp - 0x34]
mov qword [rsp + 0x20], rax
mov rbx, qword [rcx + rsi]
mov rcx, qword [rdi + 0x18]
mov r8, rbx
call fcn.1800f1a90
mov qword [rdi + 0x40], rbx
xor r11d, r11d
mov word [rdi + 2], 0
mov dword [rsp + 0x54], eax
mov eax, dword [rbp - 0x34]
mov dword [rdi + 0x58], r11d
mov dword [rdi + 0x30], eax
test eax, eax
je 0x18013a293
mov r15, qword [rsp + 0x48]
cmp dword [r15 + 8], r11d
jne 0x18013d1f3
lea rax, [0x1801afe14]
mov r9d, 0x132c8
lea r8, str.database_corruption
mov qword [rsp + 0x20], rax
lea rdx, str._s_at_line__d_of___.10s_
lea ecx, [r11 + 0xb]
call fcn.18006eed0
mov eax, 0xb
mov rsi, r15
jmp 0x18013d33a
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x18013d335
mov r15, qword [rsp + 0x48]
jmp 0x180137098
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 8]
imul rdx, rax, 0x38
add rdx, qword [r13 + 0x10]
test word [rdx + 8], r8w
je 0x18013a2e1
mov rcx, rdx
call fcn.1800db5c0
mov r9, qword [rsp + 0x58]
mov rdx, rax
mov r10, qword [rsp + 0x68]
xor r11d, r11d
mov r8d, 0x2460
jmp 0x18013a2ea
mov eax, 4
mov word [rdx + 8], ax
mov rax, qword [r13 + 0x60]
mov r15, rbx
movsxd rcx, dword [rbx + 4]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x38]
mov qword [rdx], rax
movsxd rcx, dword [rbx + 4]
mov rax, qword [r13 + 0x60]
mov rdx, qword [rax + rcx*8]
inc qword [rdx + 0x38]
jmp 0x180137153
mov rdi, qword [rsp + 0x48]
mov rbx, r11
mov qword [rbp - 0x40], rbx
mov dword [rbp - 0x5c], r11d
movsxd rax, dword [rdi + 8]
imul r14, rax, 0x38
add r14, qword [r13 + 0x10]
test word [r14 + 8], r8w
je 0x18013a345
mov rcx, r14
call fcn.1800db5c0
mov r14, rax
jmp 0x18013a34a
mov word [r14 + 8], dx
movsxd rcx, dword [rdi + 4]
mov rax, qword [r13 + 0x60]
mov rsi, qword [rax + rcx*8]
test byte [rsi + 8], 2
jne 0x18013a383
mov rcx, qword [rsi + 0x18]
lea rdx, [rbp - 0x5c]
call fcn.1800f19a0
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18013d42d
cmp dword [rbp - 0x5c], eax
je 0x18013a3c6
mov ebx, 1
mov qword [rbp - 0x40], rbx
movabs r15, 0x7fffffffffffffff
movsxd rdx, dword [rdi + 0xc]
test edx, edx
je 0x18013a441
mov rcx, qword [r13 + 0xf8]
test rcx, rcx
je 0x18013a400
mov rax, qword [rcx + 8]
test rax, rax
je 0x18013a3bc
nop
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x18013a3b0
imul rdi, rdx, 0x38
add rdi, qword [rcx + 0x20]
jmp 0x18013a409
mov rbx, qword [rsi + 0x18]
mov rcx, rbx
call fcn.1800ce1f0
mov rbx, qword [rbx + 0x20]
movabs r15, 0x7fffffffffffffff
mov qword [rbp - 0x40], rbx
mov dword [rsp + 0x54], 0
cmp rbx, r15
jl 0x18013a3f7
or dword [rsi + 8], 2
jmp 0x18013a38d
inc rbx
mov qword [rbp - 0x40], rbx
jmp 0x18013a38d
imul rdi, rdx, 0x38
add rdi, qword [rsp + 0x70]
mov rcx, rdi
call fcn.18013efc0
mov qword [rdi], rax
mov eax, 0x3e00
and word [rdi + 8], ax
or word [rdi + 8], 4
mov rax, qword [rdi]
cmp rax, r15
je 0x18013a4a8
test byte [rsi + 8], 2
jne 0x18013a4a8
inc rax
cmp rbx, rax
cmovl rbx, rax
mov qword [rbp - 0x40], rbx
mov qword [rdi], rbx
test byte [rsi + 8], 2
je 0x18013a4b2
xor edi, edi
nop dword [rax]
lea rdx, [rbp - 0x40]
mov ecx, 8
call fcn.180063f40
mov rbx, qword [rbp - 0x40]
movabs rax, 0x3fffffffffffffff
mov rcx, qword [rsi + 0x18]
and rbx, rax
inc rbx
lea rax, [rbp - 0x5c]
mov r8, rbx
mov qword [rbp - 0x40], rbx
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor edx, edx
call fcn.1800f1a90
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18013d335
cmp dword [rbp - 0x5c], eax
jne 0x18013a4b2
inc edi
cmp edi, 0x64
jl 0x18013a450
mov eax, recv
jmp 0x18013d335
mov r15, qword [rsp + 0x48]
xor r11d, r11d
mov byte [rsi + 3], 0
mov dword [rsi + 0x58], r11d
mov rsi, qword [rsp + 0x70]
mov qword [r14], rbx
jmp 0x180137098
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 8]
movsxd rcx, dword [rcx + 4]
imul r9, rax, 0x38
mov rax, qword [r13 + 0x60]
add r9, rsi
mov rsi, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x48]
movsxd rdi, dword [rcx + 0xc]
cmp bl, 0x4b
jne 0x18013a506
mov rdx, qword [rsp + 0x70]
imul rax, rdi, 0x38
mov rdi, qword [rax + rdx]
movzx eax, byte [rcx + 3]
test al, 1
je 0x18013a519
inc dword [r13 + 0x98]
movzx eax, byte [rcx + 3]
test al, 2
je 0x18013a527
mov qword [rsp + 0x68], rdi
mov qword [r12 + 0x30], rdi
movzx eax, word [r9 + 8]
test al, 1
je 0x18013a538
mov qword [r9 + 0x10], r11
mov dword [r9 + 0xc], r11d
movzx r8d, byte [rcx + 3]
test r8b, 0x10
je 0x18013a548
mov edx, dword [rsi + 0x30]
jmp 0x18013a54b
mov edx, r11d
bt ax, 0xe
jae 0x18013a557
mov ecx, dword [r9]
jmp 0x18013a55a
mov ecx, r11d
mov dword [rsp + 0x38], edx
mov eax, r8d
shr eax, 3
mov r8, rdi
and eax, 1
xor edx, edx
mov dword [rsp + 0x30], eax
mov eax, dword [r9 + 0xc]
mov r9, qword [r9 + 0x10]
mov dword [rsp + 0x28], ecx
mov rcx, qword [rsi + 0x18]
mov dword [rsp + 0x20], eax
call fcn.1800f10d0
xor r11d, r11d
mov byte [rsi + 3], 0
mov dword [rsp + 0x54], eax
mov dword [rsi + 0x58], r11d
test eax, eax
jne 0x18013d335
mov r10, qword [r12 + 0x110]
test r10, r10
je 0x180139218
mov r9, qword [rsp + 0x48]
mov r9, qword [r9 + 0x10]
test r9, r9
je 0x180139218
mov rcx, qword [rsp + 0x48]
mov edx, reloc.WS2_32.dll_select
movsx rax, byte [rsi + 1]
mov r8, qword [r12 + 0x20]
shl rax, 5
test byte [rcx + 3], 4
mov ecx, reloc.WS2_32.dll_socket
mov qword [rsp + 0x20], rdi
cmovne edx, ecx
mov rcx, qword [r12 + 0x108]
mov r8, qword [rax + r8]
call r10
mov r15, qword [rsp + 0x48]
xor r11d, r11d
mov rsi, qword [rsp + 0x70]
jmp 0x180137098
cmp qword [r12 + 0x110], 0
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x60]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rsp + 0x48]
je 0x18013a640
cmp qword [rax + 0x10], 0
je 0x18013a640
cmp byte [rdi + 4], 0
je 0x18013a640
mov sil, 1
jmp 0x18013a643
xor sil, sil
movzx eax, byte [rax + 3]
test al, al
je 0x18013a66d
test sil, sil
je 0x18013a66d
mov rbx, qword [rdi + 0x18]
mov rcx, rbx
call fcn.1800ce1f0
mov rax, qword [rbx + 0x20]
mov qword [rdi + 0x40], rax
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax + 3]
mov rcx, qword [rdi + 0x18]
movzx edx, al
call fcn.1800f0b20
xor r11d, r11d
mov dword [rsp + 0x54], eax
mov dword [rdi + 0x58], r11d
test eax, eax
jne 0x18013d335
test sil, sil
je 0x18013a6cc
mov rax, qword [rdi + 0x40]
lea edx, [r11 + 9]
movsx rcx, byte [rdi + 1]
mov r8, qword [r12 + 0x20]
shl rcx, 5
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x48]
mov r8, qword [rcx + r8]
mov rcx, qword [r12 + 0x108]
mov r9, qword [rax + 0x10]
call qword [r12 + 0x110]
xor r11d, r11d
mov r15, qword [rsp + 0x48]
mov edx, 4
mov rsi, qword [rsp + 0x70]
mov r8d, 0x2460
mov r9, qword [rsp + 0x58]
mov r10, qword [rsp + 0x68]
test byte [r15 + 8], 1
mov ebx, dword [rsp + 0x50]
je 0x18013715c
inc dword [r13 + 0x98]
jmp 0x18013715c
mov eax, dword [r13 + 0x98]
mov dword [r12 + 0x64], eax
add dword [r12 + 0x68], eax
mov dword [r13 + 0x98], r11d
jmp case.0x180136931.62
mov rbx, qword [rsp + 0x48]
mov rax, qword [r13 + 0x60]
movsxd rcx, dword [rbx + 4]
mov rdx, qword [rax + rcx*8]
movsxd rax, dword [rbx + 0xc]
mov ebx, dword [rbx + 0x10]
imul r15, rax, 0x38
mov rdi, qword [rdx + 0x18]
add r15, rsi
mov rsi, qword [rdx + 0x28]
mov r14, qword [rdi + 0x30]
test r14, r14
jne 0x18013a77b
lea r9, [rbp + 0x1c8]
xor r8d, r8d
xor edx, edx
mov rcx, rsi
call fcn.180135a10
mov qword [rdi + 0x30], rax
mov r14, rax
test rax, rax
je 0x18013a8b5
mov word [rax + 0x10], bx
cmp byte [rdi + 0x58], 0
je 0x18013a7b7
cmp byte [rdi + 0x59], 0
je 0x18013a795
mov rax, qword [rdi + 0x10]
mov r8, qword [rax + 0x28]
add rax, 0x14
jmp 0x18013a7bf
mov rdx, qword [rdi + 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 0x18013a7bf
mov rax, qword [rdi + 0x38]
lea r8, [rax + 0x10]
mov edx, dword [rax]
mov r9, r14
mov rcx, rsi
call fcn.180141550
xor r11d, r11d
mov ecx, r11d
test ebx, ebx
jle 0x18013a7f3
mov rax, qword [r14 + 8]
add rax, 8
nop
test byte [rax], 1
jne 0x18013c6ad
inc ecx
add rax, 0x38
cmp ecx, ebx
jl 0x18013a7e0
mov rdx, qword [r15 + 0x10]
xor r9d, r9d
mov ecx, dword [r15 + 0xc]
mov r8, r14
call fcn.180140cf0
xor r11d, r11d
mov dword [rsp + 0x54], r11d
mov r15, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x70]
mov r9, qword [rsp + 0x58]
test eax, eax
jne 0x18013d1f8
mov r10, qword [rsp + 0x68]
lea edx, [rax + 4]
mov r8d, 0x2460
jmp case.0x180136931.62
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 8]
movsxd rcx, dword [rcx + 4]
imul rbx, rax, 0x38
mov rax, qword [r13 + 0x60]
add rbx, rsi
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x18]
cmp byte [rax + 0x58], 0
je 0x18013a894
cmp byte [rax + 0x59], 0
je 0x18013a872
mov rax, qword [rax + 0x10]
mov rsi, qword [rax + 0x28]
add rax, 0x14
jmp 0x18013a89c
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 0x18013a89c
mov rax, qword [rax + 0x38]
lea rsi, [rax + 0x10]
movsxd rdi, dword [rax]
cmp dword [rbx + 0x20], edi
jge 0x18013a8c7
xor r8d, r8d
mov edx, edi
mov rcx, rbx
call fcn.18013fd90
test eax, eax
je 0x18013a8d4
mov rsi, qword [rsp + 0x48]
mov eax, 7
mov r14d, eax
jmp 0x18013d340
mov rax, qword [rbx + 0x18]
mov qword [rbx + 0x10], rax
and word [rbx + 8], 0xd
mov dword [rbx + 0xc], edi
mov eax, 0x3e00
and word [rbx + 8], ax
mov r8, rdi
or word [rbx + 8], 0x10
mov rdx, rsi
mov rcx, qword [rbx + 0x10]
call fcn.1801625a0
mov rax, qword [rsp + 0x48]
xor r11d, r11d
mov r15, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x70]
mov dword [rsp + 0x54], r11d
movsxd rcx, dword [rax + 0xc]
mov rax, qword [r13 + 0x60]
mov rcx, qword [rax + rcx*8]
mov dword [rcx + 0x58], r11d
jmp 0x180137098
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 8]
movsxd rcx, dword [rcx + 4]
imul rbx, rax, 0x38
mov rax, qword [r13 + 0x60]
add rbx, rsi
mov r14, qword [rax + rcx*8]
cmp byte [r14 + 4], 0
mov rsi, qword [r14 + 0x18]
mov rcx, rsi
jne 0x18013a963
call fcn.1800ce1f0
movsxd rax, dword [r12 + 0x6c]
mov rdi, qword [rsi + 0x20]
cmp rdi, rax
jg 0x18013d620
jmp 0x18013a976
call fcn.1800ce1f0
mov edi, dword [rsi + 0x30]
cmp edi, dword [r12 + 0x6c]
ja 0x18013d620
mov edx, 0x20
cmp edi, edx
cmova edx, edi
cmp dword [rbx + 0x20], edx
jge 0x18013a99a
xor r8d, r8d
mov rcx, rbx
call fcn.18013fd90
test eax, eax
jne 0x180138f36
jmp 0x18013a9a7
mov rax, qword [rbx + 0x18]
mov qword [rbx + 0x10], rax
and word [rbx + 8], 0xd
mov dword [rbx + 0xc], edi
mov eax, 0x3e00
and word [rbx + 8], ax
xor edx, edx
or word [rbx + 8], 0x10
mov r8d, edi
mov rcx, rsi
mov r9, qword [rbx + 0x10]
cmp byte [r14 + 4], dl
jne 0x18013a9d5
mov dword [rsp + 0x20], edx
call fcn.180074500
jmp 0x18013a9da
call fcn.1800f0ab0
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18013d335
mov r15, qword [rsp + 0x48]
xor r11d, r11d
mov rsi, qword [rsp + 0x70]
mov byte [rbx + 0xa], 1
jmp 0x180137098
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 8]
imul rdi, rax, 0x38
add rdi, qword [r13 + 0x10]
test word [rdi + 8], r8w
je 0x18013aa38
mov rcx, rdi
call fcn.1800db5c0
mov r9, qword [rsp + 0x58]
xor r11d, r11d
mov r10, qword [rsp + 0x68]
mov rdi, rax
mov r8d, 0x2460
lea edx, [r11 + 4]
jmp 0x18013aa3c
mov word [rdi + 8], dx
movsxd rcx, dword [rbx + 4]
mov rax, qword [r13 + 0x60]
mov rbx, qword [rax + rcx*8]
cmp byte [rbx + 2], 0
je 0x18013aa5d
mov r15, qword [rsp + 0x48]
mov word [rdi + 8], r14w
jmp case.0x180136931.62
cmp byte [rbx + 3], 0
je 0x18013aa78
mov rax, qword [rbx + 0x40]
mov r15, qword [rsp + 0x48]
mov qword [rbp + 0x18], rax
mov qword [rdi], rax
jmp 0x180137098
cmp byte [rbx], 2
mov rcx, qword [rbx + 0x18]
jne 0x18013aabd
mov rbx, qword [rcx]
lea rdx, [rbp + 0x18]
mov rax, qword [rbx]
call qword [rax + 0x60]
mov rdx, rbx
mov rcx, r13
mov dword [rsp + 0x54], eax
call fcn.180143370
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x18013d335
mov rax, qword [rbp + 0x18]
xor r11d, r11d
mov r15, qword [rsp + 0x48]
mov qword [rdi], rax
jmp 0x180137098
cmp byte [rcx + 0x56], 1
je 0x18013aadc
mov rcx, rbx
call fcn.1800cfd80
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18013d335
xor r11d, r11d
jmp 0x18013aae1
mov dword [rsp + 0x54], r11d
cmp byte [rbx + 2], 0
je 0x18013aaf6
mov r15, qword [rsp + 0x48]
mov word [rdi + 8], r14w
jmp 0x180137098
mov rbx, qword [rbx + 0x18]
mov rcx, rbx
call fcn.1800ce1f0
mov rax, qword [rbx + 0x20]
xor r11d, r11d
mov r15, qword [rsp + 0x48]
mov qword [rbp + 0x18], rax
mov qword [rdi], rax
mov dword [rsp + 0x54], r11d
jmp 0x180137098
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x60]
mov rcx, qword [rax + rcx*8]
mov byte [rcx + 2], 1
mov dword [rcx + 0x58], r11d
cmp byte [rcx], 0
jne 0x180136b67
mov rcx, qword [rcx + 0x18]
call fcn.1800efdd0
jmp 0x180137090
mov rax, qword [rsp + 0x48]
lea rdx, [rbp - 0x30]
mov dword [rbp - 0x30], r11d
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x60]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rbx + 0x18]
call fcn.1800f19a0
mov ecx, dword [rbp - 0x30]
xor r11d, r11d
mov byte [rbx + 2], cl
mov dword [rsp + 0x54], eax
mov rax, qword [rsp + 0x48]
mov byte [rbx + 3], 0
mov dword [rbx + 0x58], r11d
mov eax, dword [rax + 0xc]
mov dword [rbx + 0x30], eax
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x18013d335
mov r15, qword [rsp + 0x48]
cmp dword [r15 + 8], r11d
jle 0x180137143
test ecx, ecx
jne 0x18013d1f3
jmp 0x180137098
inc dword [r13 + 0xb0]
mov rax, qword [rsp + 0x48]
mov edi, r14d
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x60]
mov rsi, qword [rax + rcx*8]
cmp byte [rsi], 1
mov rbx, qword [rsi + 0x18]
jne 0x18013ac36
cmp byte [rbx + 0x58], 0
mov dword [rsp + 0x54], r11d
jne 0x18013ac08
cmp qword [rbx + 0x38], 0
lea rdx, [rbx + 0x38]
je 0x18013ac64
lea rcx, [rbx + 0x60]
mov edi, r11d
call fcn.180152600
mov dword [rsp + 0x54], eax
xor r11d, r11d
jmp 0x18013ac64
mov rcx, rbx
call fcn.1801515e0
mov edx, eax
mov rcx, rbx
call fcn.180151750
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18013ac03
mov rcx, rbx
call fcn.180152340
xor r11d, r11d
mov dword [rsp + 0x54], eax
mov edi, r11d
jmp 0x18013ac64
mov rcx, rbx
call fcn.1800d6710
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18013ac59
cmp byte [rbx + 0x56], al
je 0x18013ac59
xor edi, edi
mov rcx, rbx
call fcn.1800d6510
mov dword [rsp + 0x54], eax
xor r11d, r11d
mov byte [rsi + 3], 0
mov dword [rsi + 0x58], r11d
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x18013d335
mov r15, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
mov byte [rsi + 2], dil
mov rsi, qword [rsp + 0x70]
test edi, edi
jne 0x18013d1f8
mov r10, qword [rsp + 0x68]
lea edx, [rax + 4]
mov r8d, 0x2460
jmp case.0x180136931.62
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x60]
mov rdi, qword [rax + rcx*8]
mov dword [rbp - 0x60], r11d
mov rbx, qword [rdi + 0x18]
cmp byte [rbx + 0x58], 0
je 0x18013acfc
cmp byte [rbx + 0x59], 0
je 0x18013aced
mov rcx, qword [rbx + 0x10]
call fcn.180150540
mov dword [rsp + 0x54], eax
xor r11d, r11d
mov rax, qword [rbx + 0x10]
mov ecx, r11d
cmp qword [rax + 0x18], rcx
mov eax, dword [rsp + 0x54]
sete cl
mov dword [rbp - 0x60], ecx
jmp 0x18013ad7c
mov rcx, qword [rbx + 0x18]
lea rdx, [rbp - 0x60]
call fcn.18014fee0
jmp 0x18013ad75
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 0x18013ad1e
mov rcx, r12
call fcn.180152250
xor r11d, r11d
cmp qword [rbx + 0x38], 0
mov eax, r11d
sete al
mov dword [rbp - 0x60], eax
mov eax, r11d
jmp 0x18013ad78
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x60]
cmp qword [rax + rcx*8], 0
je 0x180136b67
mov rax, qword [rsp + 0x48]
lea rdx, [rbp - 0x60]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x60]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 0xc]
mov dword [rbp - 0x60], eax
mov rax, qword [rsp + 0x48]
mov rcx, qword [rdi + 0x18]
call qword [rax + reloc.WS2_32.dll_recv]
xor r11d, r11d
mov dword [rsp + 0x54], eax
mov dword [rdi + 0x58], r11d
test eax, eax
jne 0x18013d335
mov r9, qword [rsp + 0x58]
cmp dword [rbp - 0x60], eax
jne 0x18013adab
mov byte [rdi + 2], al
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax + 3]
inc dword [r13 + rax*4 + 0xa8]
jmp case.0x180136931.13
mov byte [rdi + 2], 1
jmp 0x18013b8ac
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x60]
mov rdi, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rbx, rsi
test byte [rcx + 3], 1
je 0x18013ade2
inc dword [r13 + 0x98]
mov eax, 0x4000
test word [rbx + 8], ax
je 0x18013ae05
mov rcx, rbx
call fcn.18013fbf0
test eax, eax
jne 0x18013d335
mov rcx, qword [rsp + 0x48]
xor r11d, r11d
cmp byte [rcx], 0x6d
jne 0x18013ae1a
mov rdx, rbx
mov rcx, rdi
call fcn.180142380
xor r11d, r11d
jmp 0x18013ae5c
test byte [rcx + 3], 0x10
je 0x18013ae25
mov eax, dword [rdi + 0x30]
jmp 0x18013ae28
mov eax, r11d
movsxd r8, dword [rbx + 0xc]
lea r9, [0x1801c2c03]
mov rdx, qword [rbx + 0x10]
mov dword [rsp + 0x38], eax
mov eax, dword [rcx + 0xc]
mov rcx, qword [rdi + 0x18]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], r11d
mov dword [rsp + 0x20], r11d
call fcn.1800f10d0
xor r11d, r11d
mov dword [rdi + 0x58], r11d
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18013d335
mov r15, qword [rsp + 0x48]
jmp 0x180137098
mov rax, qword [rsp + 0x48]
lea rdx, [rbp + 0x198]
xor r9d, r9d
xor r8d, r8d
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x60]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x48]
mov rax, qword [rbx + 0x28]
mov rdi, qword [rbx + 0x18]
mov qword [rbp + 0x198], rax
movzx eax, word [rcx + 0xc]
mov word [rbp + 0x1a8], ax
mov byte [rbp + 0x1aa], 0
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
lea rax, [rbp + 0xc]
add rcx, rsi
mov qword [rsp + 0x20], rax
mov qword [rbp + 0x1a0], rcx
mov rcx, rdi
call fcn.1800f1a90
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18013d335
cmp dword [rbp + 0xc], eax
jne 0x18013af00
mov dl, 4
mov rcx, rdi
call fcn.1800f0b20
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18013d335
mov r15, qword [rsp + 0x48]
xor r11d, r11d
mov dword [rbx + 0x58], r11d
jmp 0x180137098
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x60]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x18]
cmp byte [rax + 0x56], 1
je 0x18013af58
mov rcx, rbx
call fcn.1800cfd80
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18013d335
mov r9, qword [rsp + 0x58]
lea edx, [rax + 4]
mov r10, qword [rsp + 0x68]
xor r11d, r11d
mov r8d, 0x2460
jmp 0x18013af5d
mov dword [rsp + 0x54], r11d
cmp byte [rbx + 2], 0
jne 0x18013b021
mov rdx, qword [rbx + 0x18]
lea r8, [rbp + 0x20]
mov rcx, r12
mov qword [rbp + 0x20], r11
call fcn.18013edb0
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18013d335
mov rax, qword [rsp + 0x48]
mov r8d, 0x2460
cmp byte [rax], 0x70
jne 0x18013afd9
movsxd rcx, dword [rax + 0xc]
xor r11d, r11d
mov rax, qword [r13 + 0x60]
mov r15, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
mov r10, qword [rsp + 0x68]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rbp + 0x20]
mov word [rdx + 2], 0x100
mov qword [rdx + 0x40], rax
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x10]
mov qword [rdx + 0x50], rax
mov qword [rdx + 0x48], rbx
jmp 0x180137153
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
add rcx, qword [r13 + 0x10]
test word [rcx + 8], r8w
je 0x18013affa
call fcn.1800db5c0
mov rcx, rax
mov r8d, 0x2460
mov rax, qword [rbp + 0x20]
mov edx, 4
mov r15, qword [rsp + 0x48]
xor r11d, r11d
mov r9, qword [rsp + 0x58]
mov r10, qword [rsp + 0x68]
mov qword [rcx], rax
mov word [rcx + 8], dx
jmp case.0x180136931.62
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
add rcx, rsi
test word [rcx + 8], r8w
je 0x18013b042
call fcn.18014f910
jmp 0x180137090
mov r15, qword [rsp + 0x48]
mov word [rcx + 8], r14w
jmp case.0x180136931.62
mov rax, qword [rsp + 0x48]
cmp bl, 0x74
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x60]
mov rdx, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x48]
mov rax, qword [rdx + 0x28]
mov rbx, qword [rdx + 0x18]
mov qword [rbp + 0x1b0], rax
movzx eax, word [rcx + 0x10]
mov word [rbp + 0x1c0], ax
sbb al, al
mov byte [rbp + 0x1c2], al
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
add rcx, rsi
mov qword [rbp + 0x1b8], rcx
mov rcx, rbx
call fcn.1800ce1f0
mov r10, qword [rbx + 0x20]
lea rax, [r10 - 1]
cmp rax, 0x7ffffffe
ja 0x18013d4fe
mov qword [rbp + 0x150], r12
xor edi, edi
mov word [rbp + 0x130], di
mov dword [rbp + 0x148], edi
movsx rax, byte [rbx + 0x58]
mov rcx, qword [rbx + rax*8 + 0x98]
movzx eax, word [rbx + 0x34]
mov edx, dword [rcx + 0x58]
sub edx, dword [rbx + 0x28]
cmp eax, edx
cmovae eax, edx
cmp r10d, eax
ja 0x18013b111
mov rdx, qword [rbx + 0x28]
mov eax, 0x1010
mov qword [rbp + 0x138], rdx
mov word [rbp + 0x130], ax
mov dword [rbp + 0x134], r10d
jmp 0x18013b143
lea rax, [rbp + 0x128]
mov r9d, r14d
mov r8d, r10d
mov qword [rsp + 0x20], rax
xor edx, edx
mov rcx, rbx
call fcn.18014f9a0
test eax, eax
jne 0x18013c55d
mov rdx, qword [rbp + 0x138]
mov r10d, dword [rbp + 0x134]
xor r9d, r9d
lea r8, [rbp + 0x1b0]
mov ecx, r10d
call fcn.180140cf0
mov r8d, 0x2460
mov ebx, eax
test word [rbp + 0x130], r8w
jne 0x18013b16f
cmp dword [rbp + 0x148], edi
je 0x18013b181
lea rcx, [rbp + 0x128]
call fcn.18014f7e0
mov r8d, 0x2460
mov rax, qword [rsp + 0x48]
xor r11d, r11d
mov r15, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
mov dword [rsp + 0x54], r11d
movzx ecx, byte [rax]
lea eax, [rbx + 1]
neg ebx
and cl, 1
cmovne ebx, eax
test ebx, ebx
jg 0x18013d1f8
mov r10, qword [rsp + 0x68]
mov ecx, r11d
mov dword [rsp + 0x54], ecx
jmp 0x180137153
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 8]
imul rdi, rax, 0x38
add rdi, qword [r13 + 0x10]
test word [rdi + 8], r8w
je 0x18013b1ea
mov rcx, rdi
call fcn.1800db5c0
mov rcx, qword [rsp + 0x48]
mov rdi, rax
xor r11d, r11d
mov word [rdi + 8], r14w
mov eax, dword [r12 + 0xb8]
inc eax
cmp dword [r12 + 0xac], eax
jg 0x18013d532
movsxd r15, dword [rcx + 0xc]
mov rax, qword [r12 + 0x20]
mov r14, r15
mov esi, dword [rcx + 4]
shl r14, 5
mov dword [rbp - 0x2c], r11d
mov rbx, qword [r14 + rax + 8]
cmp byte [rbx + 0x11], 0
je 0x18013b23a
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x18013b23a
mov rcx, rbx
call fcn.18007b390
lea r8, [rbp - 0x2c]
mov edx, esi
mov rcx, rbx
call fcn.18007ab10
cmp byte [rbx + 0x11], 0
mov dword [rsp + 0x54], eax
je 0x18013b260
sub dword [rbx + 0x14], 1
jne 0x18013b260
mov rcx, rbx
call fcn.18014cdf0
movsxd rdx, dword [rbp - 0x2c]
mov eax, 4
mov word [rdi + 8], ax
mov eax, dword [rsp + 0x54]
mov qword [rdi], rdx
test eax, eax
jne 0x18013d335
test edx, edx
je 0x18013754a
mov rax, qword [rsp + 0x48]
mov r9, qword [r12 + 0x20]
mov r8d, dword [rax + 4]
mov rcx, qword [r14 + r9 + 0x18]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x18013b2ba
mov rcx, qword [rax + 0x10]
cmp dword [rcx + 0x38], edx
jne 0x18013b2ad
mov dword [rcx + 0x38], r8d
mov rax, qword [rax]
test rax, rax
jne 0x18013b2a0
mov rcx, qword [r14 + r9 + 0x18]
mov rax, qword [rcx + 0x28]
test rax, rax
je 0x18013b2d8
mov rcx, qword [rax + 0x10]
cmp dword [rcx + 0x58], edx
jne 0x18013b2d0
mov dword [rcx + 0x58], r8d
mov rax, qword [rax]
test rax, rax
jne 0x18013b2c3
mov rsi, qword [rsp + 0x70]
lea eax, [r15 + 1]
mov r15, qword [rsp + 0x48]
xor r11d, r11d
mov byte [rsp + 0x40], al
jmp 0x180137098
mov rax, qword [rsp + 0x48]
lea r8, [rbp - 0x44]
mov rdx, qword [rsp + 0x48]
mov dword [rbp - 0x44], r11d
mov rcx, qword [r12 + 0x20]
cmp dword [rax + 0xc], 0
movsxd rax, dword [rax + 8]
mov edx, dword [rdx + 4]
cmove r8, r11
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.1800efe90
mov r15, qword [rsp + 0x48]
mov dword [rsp + 0x54], eax
cmp dword [r15 + 0xc], 0
je 0x18013b358
mov eax, dword [rbp - 0x44]
add dword [r13 + 0x98], eax
movsxd rax, dword [r15 + 0xc]
test eax, eax
jle 0x18013b354
imul rcx, rax, 0x38
movsxd rax, dword [rbp - 0x44]
add qword [rcx + rsi], rax
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x18013d335
jmp 0x180137095
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x60]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx], 1
jne 0x18013b38c
mov rdx, qword [rcx + 0x18]
mov rcx, r12
call fcn.1801420f0
jmp 0x180137090
mov rcx, qword [rcx + 0x18]
xor r8d, r8d
mov edx, dword [rcx + 0x48]
mov rcx, qword [rcx]
call fcn.1800efe90
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18013d335
jmp 0x180137090
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 8]
imul rdi, rax, 0x38
add rdi, qword [r13 + 0x10]
test word [rdi + 8], r8w
je 0x18013b3d7
mov rcx, rdi
call fcn.1800db5c0
mov rdi, rax
xor r11d, r11d
jmp 0x18013b3db
mov word [rdi + 8], dx
cmp byte [rbx], 0x7a
mov esi, r11d
movsxd rcx, dword [rbx + 4]
mov rax, qword [r12 + 0x20]
setne sil
shl rcx, 5
mov dword [rbp - 0x28], r11d
mov rbx, qword [rcx + rax + 8]
cmp byte [rbx + 0x11], 0
je 0x18013b412
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x18013b412
mov rcx, rbx
call fcn.18007b390
lea r8d, [rsi + 1]
mov rcx, rbx
lea rdx, [rbp - 0x28]
call fcn.18007a690
cmp byte [rbx + 0x11], 0
mov dword [rsp + 0x54], eax
je 0x18013b43e
sub dword [rbx + 0x14], 1
jne 0x18013b43e
mov rcx, rbx
call fcn.18014cdf0
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x18013d335
movsxd rax, dword [rbp - 0x28]
xor r11d, r11d
mov r15, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x70]
mov qword [rdi], rax
jmp 0x180137098
mov rbx, qword [rsp + 0x48]
lea r9, str.sqlite_temp_master
lea rdx, str.SELECT_name__rootpage__sql_FROM__q._s_WHERE__s_ORDER_BY_rowid
movsxd rcx, dword [rbx + 4]
mov qword [rbp + 0xd8], r12
cmp ecx, 1
mov eax, dword [rbx + 4]
mov dword [rbp + 0xe8], eax
lea rax, [r13 + 0x48]
mov qword [rbp + 0xe0], rax
lea rax, str.sqlite_master
mov r8, qword [r12 + 0x20]
cmovne r9, rax
mov rax, qword [rbx + 0x10]
shl rcx, 5
mov qword [rsp + 0x20], rax
mov r8, qword [rcx + r8]
mov rcx, r12
call fcn.18011da20
mov rbx, rax
mov rcx, r12
test rax, rax
je 0x18013d544
xor edi, edi
mov byte [r12 + 0xa5], 1
lea r9, [rbp + 0xd8]
mov dword [rbp + 0xec], edi
lea r8, [fcn.1801193d0]
mov qword [rsp + 0x20], rdi
mov rdx, rax
call fcn.18005eb40
test eax, eax
mov rdx, rbx
mov rcx, r12
cmove eax, dword [rbp + 0xec]
mov dword [rsp + 0x54], eax
call fcn.1800f83c0
mov byte [r12 + 0xa5], dil
cmp dword [rsp + 0x54], edi
je 0x180137090
mov rcx, r12
call fcn.180128050
mov eax, dword [rsp + 0x54]
movzx ebx, byte [rsp + 0x40]
cmp eax, 7
je 0x18013d90a
mov rsi, qword [rsp + 0x48]
lea r14d, [rdi + 7]
jmp 0x18013d347
mov rax, qword [rsp + 0x48]
mov rcx, r12
mov edx, dword [rax + 4]
call fcn.1800ed710
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18013d335
jmp 0x180137090
mov rax, qword [rsp + 0x48]
xor r8d, r8d
movsxd rcx, dword [rax + 4]
mov rdx, qword [rax + 0x10]
shl rcx, 5
add rcx, qword [r12 + 0x20]
mov rcx, qword [rcx + 0x18]
add rcx, 8
call fcn.1801187d0
mov rdx, rax
mov rcx, r12
call fcn.1800f9a50
or dword [r12 + 0x2c], 2
jmp 0x180137090
mov rax, qword [rsp + 0x48]
xor r8d, r8d
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov rax, qword [rsp + 0x48]
add rcx, 0x20
mov rdx, qword [rax + 0x10]
call fcn.1801187d0
mov rdx, rax
test rax, rax
je 0x18013b644
mov rax, qword [rax + 0x18]
mov rcx, qword [rax + 0x10]
cmp rcx, rdx
jne 0x18013b603
mov rcx, qword [rdx + 0x28]
mov qword [rax + 0x10], rcx
mov rcx, r12
call fcn.18008b640
or dword [r12 + 0x2c], 2
jmp 0x180137090
test rcx, rcx
je 0x18013b63c
nop dword [rax + rax]
mov rax, qword [rcx + 0x28]
cmp rax, rdx
je 0x18013b634
mov rcx, rax
test rax, rax
jne 0x18013b610
mov rcx, r12
call fcn.18008b640
or dword [r12 + 0x2c], 2
jmp 0x180137090
mov rax, qword [rdx + 0x28]
mov qword [rcx + 0x28], rax
mov rcx, r12
call fcn.18008b640
or dword [r12 + 0x2c], 2
jmp 0x180137090
mov rbx, qword [rsp + 0x48]
xor r8d, r8d
mov rax, qword [r12 + 0x20]
movsxd rcx, dword [rbx + 4]
mov rdx, qword [rbx + 0x10]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
add rcx, 0x38
call fcn.1801187d0
mov rbx, rax
test rax, rax
je 0x180137090
mov rcx, qword [rax + 0x30]
cmp qword [rax + 0x28], rcx
jne 0x18013b6d4
mov rdx, qword [rax + 8]
lea r8, [rbp + 0x9c]
add rcx, 8
call fcn.180087a00
test rax, rax
je 0x18013b6ab
mov rcx, qword [rax + 0x10]
jmp 0x18013b6ad
xor ecx, ecx
mov rax, qword [rcx + 0x60]
add rcx, 0x60
cmp rax, rbx
je 0x18013b6cd
nop word [rax + rax]
lea rcx, [rax + 0x40]
mov rax, qword [rax + 0x40]
cmp rax, rbx
jne 0x18013b6c0
mov rax, qword [rax + 0x40]
mov qword [rcx], rax
mov rdx, rbx
mov rcx, r12
call fcn.1800f9e70
or dword [r12 + 0x2c], 2
jmp 0x180137090
mov rcx, qword [rsp + 0x48]
lea rdx, [rbp + 0x10]
mov qword [rsp + 0x20], rdx
mov rdx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 0xc]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 4]
mov r8d, dword [rdx + 8]
add rbx, rsi
mov rdx, qword [rdx + 0x10]
imul rdi, rax, 0x38
movzx eax, byte [rcx + 3]
mov rcx, qword [r12 + 0x20]
add rdi, rsi
mov r9d, dword [rbx]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.1800f13b0
movsxd r14, dword [rbp + 0x10]
mov edx, 0x2460
sub qword [rbx], r14
mov rsi, rax
test word [rdi + 8], dx
je 0x18013b75a
mov rcx, rdi
call fcn.18014f910
mov r15d, 1
jmp 0x18013b765
mov r15d, 1
mov word [rdi + 8], r15w
test r14d, r14d
je 0x18013b793
test rsi, rsi
je 0x180138f3c
lea rax, [fcn.180063ab0]
mov r9b, 1
mov r8d, 0xffffffff
mov qword [rsp + 0x20], rax
mov rdx, rsi
mov rcx, rdi
call fcn.1801401d0
test byte [rdi + 8], 2
je 0x18013754a
movzx r8d, byte [rsp + 0x60]
cmp byte [rdi + 0xa], r8b
je 0x18013754a
movzx edx, r8b
mov rcx, rdi
call fcn.1801405b0
mov r15, qword [rsp + 0x48]
xor r11d, r11d
mov rsi, qword [rsp + 0x70]
jmp 0x180137098
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 8]
add rbx, rsi
imul rdi, rax, 0x38
test byte [rbx + 8], 0x20
jne 0x18013b7fb
mov rcx, rbx
call fcn.1801400e0
test byte [rbx + 8], 0x20
je 0x180138f36
mov rdx, qword [rdi + rsi]
mov rcx, qword [rbx]
call fcn.180128970
jmp 0x180137090
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, rsi
movzx eax, word [rdi + 8]
test al, 0x20
je 0x18013b946
mov rbx, qword [rdi]
movzx eax, word [rbx + 0x32]
test al, 2
jne 0x18013b85b
test al, 1
jne 0x18013b853
mov rcx, qword [rbx + 0x10]
call fcn.1800e5180
mov r9, qword [rsp + 0x58]
mov r8d, 0x2460
mov qword [rbx + 0x10], rax
movzx eax, word [rbx + 0x32]
or ax, 2
mov word [rbx + 0x32], ax
mov rax, qword [rbx + 0x10]
test rax, rax
je 0x18013b942
mov rdi, qword [rax]
mov rax, qword [rax + 8]
mov qword [rbx + 0x10], rax
test rax, rax
jne 0x18013b880
mov rcx, rbx
call fcn.180128870
mov rax, qword [rsp + 0x48]
mov edx, 0x2460
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, rsi
test word [rcx + 8], dx
je 0x18013b92c
mov rdx, rdi
call fcn.180150ac0
mov r9, qword [rsp + 0x58]
mov edx, 4
mov eax, dword [r12 + 0x148]
test eax, eax
jne 0x18013d8b2
mov r8, qword [r12 + 0x198]
mov ebx, dword [rsp + 0x50]
test r8, r8
je 0x18013d21d
cmp ebx, dword [rbp - 0x58]
jb 0x18013d21d
mov ecx, dword [r12 + 0x1a8]
xor edx, edx
mov eax, ebx
div ecx
sub ecx, edx
add ecx, ebx
mov dword [rbp - 0x58], ecx
mov rcx, qword [r12 + 0x1a0]
call r8
test eax, eax
jne 0x18013d67a
mov r15, qword [rsp + 0x48]
lea edx, [rax + 4]
mov rsi, qword [rsp + 0x70]
xor r11d, r11d
mov r9, qword [rsp + 0x58]
mov r8d, 0x2460
mov r10, qword [rsp + 0x68]
jmp 0x18013715c
mov r9, qword [rsp + 0x58]
mov edx, 4
mov qword [rcx], rdi
mov word [rcx + 8], dx
jmp 0x18013b8b1
movzx eax, word [rdi + 8]
test r8w, ax
je 0x18013b959
mov rcx, rdi
call fcn.18014f910
jmp 0x18013ce64
mov word [rdi + 8], r14w
jmp case.0x180136931.13
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
mov edi, dword [rcx + 0x10]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
add rbx, rsi
imul rsi, rax, 0x38
add rsi, qword [rsp + 0x70]
test byte [rbx + 8], 0x20
jne 0x18013b99b
mov rcx, rbx
call fcn.1801400e0
test byte [rbx + 8], 0x20
je 0x180138f36
test edi, edi
je 0x18013b9bc
mov r8, qword [rsi]
mov edx, edi
mov rcx, qword [rbx]
call fcn.180128a20
test eax, eax
jne 0x18013d1e6
test edi, edi
js 0x18013754a
mov rdx, qword [rsi]
mov rcx, qword [rbx]
call fcn.180128970
mov r15, qword [rsp + 0x48]
xor r11d, r11d
mov rsi, qword [rsp + 0x70]
jmp 0x180137098
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 0xc]
mov r15, qword [rcx + 0x10]
imul r14, rax, 0x38
add r14, rsi
cmp byte [rcx + 3], 0
je 0x18013ba16
mov rax, qword [r13 + 0xf8]
mov rcx, qword [r15 + 0x18]
test rax, rax
je 0x18013ba16
cmp qword [rax + 0x38], rcx
je 0x180136b67
mov rax, qword [rax + 8]
test rax, rax
jne 0x18013ba03
mov eax, dword [r13 + 0x108]
cmp eax, dword [r12 + 0x94]
jge 0x18013d54e
test byte [r14 + 8], 0x40
jne 0x18013bb63
mov edx, dword [r15 + 0x10]
mov ecx, dword [r15 + 0xc]
mov eax, dword [r15 + 0x14]
add ecx, edx
test edx, edx
lea edi, [rcx + 1]
cmovne edi, ecx
add eax, 0x78
imul ecx, edi, 7
add ecx, edx
lea ecx, [rax + rcx*8]
movsxd rbx, ecx
mov rcx, r12
mov rdx, rbx
call fcn.1800f8480
mov rsi, rax
test rax, rax
je 0x180138f36
mov r8, rbx
xor edx, edx
mov rcx, rax
call fcn.180162c50
mov edx, 0x2460
test word [r14 + 8], dx
jne 0x18013ba91
cmp dword [r14 + 0x20], 0
je 0x18013ba99
mov rcx, r14
call fcn.18014f7e0
mov rcx, qword [rsp + 0x48]
mov eax, 0x40
sub rcx, qword [rsp + 0x58]
mov word [r14 + 8], ax
mov qword [r14], rsi
mov qword [rsi], r13
mov dword [rsi + 0x64], edi
mov eax, dword [r15 + 0x10]
mov dword [rsi + 0x68], eax
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rsi + 0x54], edx
mov rax, qword [r13 + 0x10]
mov qword [rsi + 0x20], rax
mov eax, dword [r13 + 0x38]
mov dword [rsi + 0x5c], eax
mov rax, qword [r13 + 0x60]
mov qword [rsi + 0x30], rax
mov eax, dword [r13 + 0x40]
mov dword [rsi + 0x50], eax
mov rax, qword [r13 + 8]
mov qword [rsi + 0x10], rax
mov eax, dword [r13 + 0x3c]
mov dword [rsi + 0x58], eax
mov rax, qword [r15 + 0x18]
mov qword [rsi + 0x38], rax
mov rax, qword [r13 + 0x120]
mov qword [rsi + 0x28], rax
mov eax, dword [r13 + 0x118]
mov dword [rsi + 0x60], eax
movsxd rax, edi
imul rdx, rax, 0x38
lea rax, [rsi + 0x78]
add rdx, 0x78
add rdx, rsi
cmp rax, rdx
je 0x18013bb52
mov ecx, 0x80
mov word [rax + 8], cx
mov qword [rax + 0x28], r12
add rax, 0x38
cmp rax, rdx
jne 0x18013bb41
mov eax, dword [r13 + 0x108]
xor r11d, r11d
mov r10, qword [rsp + 0x68]
jmp 0x18013bb66
mov rsi, qword [r14]
inc eax
mov dword [r13 + 0x108], eax
mov rax, qword [r13 + 0xf8]
mov qword [rsi + 8], rax
mov qword [rsi + 0x40], r10
mov eax, dword [r13 + 0x98]
mov dword [rsi + 0x6c], eax
mov rax, qword [r13]
mov ecx, dword [rax + 0x64]
mov dword [rsi + 0x70], ecx
mov rax, qword [r13 + 0x128]
mov qword [rsi + 0x48], rax
lea rax, [rsi + 0x78]
mov qword [r13 + 0x128], r11
mov dword [r13 + 0x98], r11d
mov qword [r13 + 0xf8], rsi
mov qword [r13 + 0x10], rax
mov qword [rsp + 0x70], rax
movsxd rax, dword [rsi + 0x64]
mov dword [r13 + 0x38], eax
movzx r8d, word [rsi + 0x68]
mov rsi, qword [rsp + 0x70]
mov dword [r13 + 0x40], r8d
imul rdx, rax, 0x38
add rdx, rsi
mov qword [r13 + 0x60], rdx
mov r9, qword [r15]
mov qword [r13 + 8], r9
mov eax, dword [r15 + 8]
lea rcx, [rdx + r8*8]
mov dword [r13 + 0x3c], eax
mov qword [r13 + 0x120], rcx
lea rdx, [r9 - 0x18]
movsxd rax, dword [r15 + 0x14]
mov qword [rsp + 0x48], rdx
mov r8, rax
xor edx, edx
mov qword [rsp + 0x58], r9
mov dword [r13 + 0x118], eax
call fcn.180162c50
jmp 0x180137090
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul r9, rax, 0x38
add r9, qword [r13 + 0x10]
test word [r9 + 8], r8w
je 0x18013bc4f
mov rcx, r9
call fcn.1800db5c0
mov r10, qword [rsp + 0x68]
mov r9, rax
xor r11d, r11d
jmp 0x18013bc54
mov word [r9 + 8], dx
mov r8, qword [r13 + 0xf8]
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 + 0x48]
add edx, dword [rax + 4]
movsxd rax, edx
imul rcx, rax, 0x38
add rcx, qword [r8 + 0x20]
mov r8d, 0x2460
test word [r9 + 8], r8w
je 0x18013bca1
mov rdx, rcx
mov r8d, 0x1000
mov rcx, r9
call fcn.18014e580
jmp 0x180137090
movups xmm0, xmmword [rcx]
mov r15, qword [rsp + 0x48]
mov eax, 0x800
mov ebx, dword [rsp + 0x50]
mov edx, 4
movups xmmword [r9], xmm0
movsd xmm1, qword [rcx + 0x10]
movsd qword [r9 + 0x10], xmm1
test word [rcx + 8], ax
jne 0x18013bce0
mov eax, 0xf3ff
and word [r9 + 8], ax
mov eax, 0x1000
or word [r9 + 8], ax
mov r9, qword [rsp + 0x58]
jmp 0x18013715c
test dword [r12 + 0x2c], 0x1000000
mov rax, qword [rsp + 0x48]
mov r15, rax
je 0x18013bd0e
movsxd rax, dword [rax + 8]
add qword [r12 + 0x288], rax
jmp case.0x180136931.62
cmp dword [rax + 4], 0
movsxd rax, dword [rax + 8]
mov ebx, dword [rsp + 0x50]
je 0x18013bd29
add qword [r12 + 0x280], rax
jmp 0x18013715c
add qword [r13 + 0xd0], rax
jmp 0x18013715c
cmp dword [r15 + 4], 0
je 0x18013bd5f
cmp qword [r12 + 0x280], 0
jne case.0x180136931.62
cmp qword [r12 + 0x288], 0
je 0x18013d1f8
jmp case.0x180136931.62
cmp qword [r13 + 0xd0], 0
jmp 0x18013bd45
mov rcx, qword [r13 + 0xf8]
test rcx, rcx
je 0x18013bd9f
mov rax, qword [rcx + 8]
test rax, rax
je 0x18013bd8c
nop
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x18013bd80
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, qword [rcx + 0x20]
jmp 0x18013bdaf
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, rsi
mov rcx, rdi
call fcn.18013efc0
mov qword [rdi], rax
mov r14d, 0x3e00
and word [rdi + 8], r14w
or word [rdi + 8], 4
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rbx, rax, 0x38
add rbx, rsi
mov rcx, rbx
call fcn.18013efc0
mov r15, qword [rsp + 0x48]
xor r11d, r11d
mov r9, qword [rsp + 0x58]
mov r8d, 0x2460
mov r10, qword [rsp + 0x68]
mov qword [rbx], rax
and word [rbx + 8], r14w
lea edx, [r11 + 4]
or word [rbx + 8], 4
mov ebx, dword [rsp + 0x50]
cmp qword [rdi], rax
jge 0x18013715c
mov qword [rdi], rax
jmp 0x18013715c
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rdx, qword [rcx + rsi]
test rdx, rdx
jle 0x180137153
mov rax, r15
movsxd rax, dword [rax + 0xc]
sub rdx, rax
mov qword [rcx + rsi], rdx
jmp 0x18013d1f8
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
add rcx, qword [r13 + 0x10]
test word [rcx + 8], r8w
je 0x18013be97
call fcn.1800db5c0
mov r9, qword [rsp + 0x58]
mov rcx, rax
mov r10, qword [rsp + 0x68]
xor r11d, r11d
mov r8d, 0x2460
jmp 0x18013be9b
mov word [rcx + 8], dx
mov rdx, qword [rbx + rsi]
test rdx, rdx
jg 0x18013beb8
mov r15, qword [rsp + 0x48]
mov rax, 0xffffffffffffffff
mov qword [rcx], rax
jmp 0x180137153
mov rax, qword [rdi + rsi]
mov r15, qword [rsp + 0x48]
test rax, rax
cmovle rax, r11
add rax, rdx
mov qword [rcx], rax
jmp 0x180137153
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rdx, qword [rcx + rsi]
test rdx, rdx
je 0x180137153
mov rax, r15
movsxd rax, dword [rax + 0xc]
sub rdx, rax
mov qword [rcx + rsi], rdx
jmp 0x18013d1f8
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
sub qword [rcx + rsi], 1
je 0x18013d1f8
jmp case.0x180136931.62
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rdx, rax, 0x38
mov rcx, qword [rdx + rsi]
lea rax, [rcx + 1]
mov qword [rdx + rsi], rax
test rcx, rcx
je 0x18013d1f8
jmp 0x180137153
mov rdi, qword [rsp + 0x48]
mov rcx, r12
movzx ebx, byte [rdi + 3]
lea rdx, [rbx*8 + 0x30]
call fcn.1800f8480
mov r8, rax
test rax, rax
je 0x180138f36
xor r11d, r11d
mov qword [rax + 0x10], r11
mov rcx, qword [rdi + 0x10]
mov qword [rax + 8], rcx
mov rcx, rdi
sub rcx, qword [rsp + 0x58]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov rax, rdi
mov dword [r8 + 0x20], edx
mov qword [r8 + 0x18], r13
mov byte [r8 + 0x2a], bl
mov word [rdi], 0xec90
mov qword [rdi + 0x10], r8
jmp 0x18013bfc9
mov rax, qword [rsp + 0x48]
mov rbx, qword [rax + 0x10]
movsxd rax, dword [rax + 0xc]
imul r10, rax, 0x38
add r10, rsi
mov qword [rbp - 0x68], r10
cmp qword [rbx + 0x10], r10
je 0x18013c035
mov qword [rbx + 0x10], r10
movzx eax, byte [rbx + 0x2a]
mov edx, eax
sub rdx, 1
lea r9d, [rax - 1]
js 0x18013c035
mov r10, qword [rsp + 0x48]
lea r8, [rdx + 6]
lea r8, [rbx + r8*8]
nop dword [rax]
nop word [rax + rax]
mov eax, dword [r10 + 8]
lea r8, [r8 - 8]
add eax, r9d
dec r9d
cdqe
imul rcx, rax, 0x38
add rcx, rsi
sub rdx, 1
mov qword [r8 + 8], rcx
jns 0x18013c010
mov r10, qword [rbp - 0x68]
inc dword [r10 + 0xc]
lea rax, [rbp + 0x160]
mov word [rbp + 0x168], r14w
lea r8, [rbx + 0x30]
mov qword [rbp + 0x188], r12
mov rcx, rbx
mov dword [rbp + 0x180], r11d
mov qword [rbx], rax
mov word [rbx + 0x28], 0
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x2a]
call qword [rax + 0x18]
cmp byte [rbx + 0x29], 0
je 0x18013c10a
cmp dword [rbx + 0x24], 0
je 0x18013c0db
movzx eax, word [rbp + 0x168]
mov ecx, 0x202
and ax, cx
cmp ax, cx
jne 0x18013c0a7
cmp byte [rbp + 0x16a], 1
jne 0x18013c0a7
mov rax, qword [rbp + 0x170]
jmp 0x18013c0c2
test byte [rbp + 0x168], 1
je 0x18013c0b4
xor eax, eax
jmp 0x18013c0c2
mov dl, 1
lea rcx, [rbp + 0x160]
call fcn.18014e3d0
mov r8, rax
lea rdx, [0x1801c73e0]
mov rcx, r13
call fcn.1801366d0
mov eax, dword [rbx + 0x24]
mov dword [rsp + 0x54], eax
mov edx, 0x2460
test word [rbp + 0x168], dx
jne 0x18013c0f2
cmp dword [rbp + 0x180], 0
je 0x18013c0fe
lea rcx, [rbp + 0x160]
call fcn.18014f7e0
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x18013d335
cmp byte [rbx + 0x28], 0
je 0x180137090
mov rax, qword [rsp + 0x48]
mov r8d, 0x2460
movsxd rax, dword [rax - 0x14]
test eax, eax
je 0x180137a93
imul rcx, rax, 0x38
add rcx, rsi
test word [rcx + 8], r8w
je 0x18013c146
mov rdx, r14
call fcn.180150ac0
jmp 0x180137090
mov r15, qword [rsp + 0x48]
mov edx, 4
mov r9, qword [rsp + 0x58]
xor r11d, r11d
mov r10, qword [rsp + 0x68]
mov qword [rcx], r14
mov word [rcx + 8], dx
jmp case.0x180136931.62
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
mov rax, qword [rsp + 0x48]
add rbx, rsi
mov rcx, rbx
mov rdx, qword [rax + 0x10]
call fcn.18013fc60
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18013d56e
movzx eax, word [rbx + 8]
test al, 2
je 0x18013c1ba
movzx r8d, byte [rsp + 0x60]
cmp byte [rbx + 0xa], r8b
je 0x18013c1ba
movzx edx, r8b
mov rcx, rbx
call fcn.1801405b0
movzx eax, word [rbx + 8]
test al, 0x12
je 0x180137090
bt ax, 0xe
mov ecx, dword [rbx + 0xc]
jae 0x18013c1ce
add ecx, dword [rbx]
mov rax, qword [rbx + 0x28]
cmp ecx, dword [rax + 0x6c]
jg 0x18013d620
jmp 0x180137090
mov rbx, qword [rsp + 0x48]
lea rax, [rbp + 0x210]
lea r9, [rbp + 0x20c]
mov dword [rbp + 0x208], r11d
mov rcx, r12
mov qword [rbp + 0x20c], 0xffffffffffffffff
mov qword [rsp + 0x20], rax
mov r8d, dword [rbx + 8]
mov edx, dword [rbx + 4]
call fcn.1800f3590
mov dword [rsp + 0x54], eax
test eax, eax
je 0x18013c239
cmp eax, 5
jne 0x18013d91d
mov dword [rsp + 0x54], 0
mov dword [rbp + 0x208], r14d
movsxd rax, dword [rbx + 0xc]
mov r8d, 0x2460
imul rbx, rax, 0x38
add rbx, rsi
xor edi, edi
lea esi, [rdi + 4]
nop
movsxd rax, dword [rbp + rdi*4 + 0x208]
test word [rbx + 8], r8w
je 0x18013c272
mov rdx, rax
mov rcx, rbx
call fcn.180150ac0
mov r8d, 0x2460
jmp 0x18013c279
mov qword [rbx], rax
mov word [rbx + 8], si
inc rdi
add rbx, 0x38
cmp rdi, 3
jl 0x18013c250
jmp 0x180137a8e
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 8]
imul r15, rax, 0x38
add r15, qword [r13 + 0x10]
test word [r15 + 8], r8w
je 0x18013c2b3
mov rcx, r15
call fcn.1800db5c0
mov r15, rax
xor r11d, r11d
jmp 0x18013c2b8
mov word [r15 + 8], dx
mov edx, dword [rbx + 0xc]
movsxd rcx, dword [rbx + 4]
mov rax, qword [r12 + 0x20]
shl rcx, 5
cmp edx, 0xffffffff
mov r14, qword [rcx + rax + 8]
mov rax, qword [r14 + 8]
mov rbx, qword [rax]
movzx esi, byte [rbx + 9]
mov edi, esi
cmovne edi, edx
cmp byte [rbx + 0x15], 3
jae 0x18013c2f7
mov rax, qword [rbx + 0x50]
cmp qword [rax], 0
je 0x18013c2f9
cmp qword [rbx + 0x60], 0
jle 0x18013c2f9
mov edi, esi
cmp byte [rbx + 0x14], 0
lea rcx, [0x1801c2c03]
jne 0x18013c30d
mov rcx, qword [rbx + 0xd0]
cmp edi, 5
jne 0x18013c385
test rcx, rcx
je 0x18013c34f
mov rax, 0xffffffffffffffff
nop
inc rax
cmp byte [rcx + rax], 0
jne 0x18013c320
and eax, 0x3fffffff
je 0x18013c34f
cmp byte [rbx + 0x12], 0
mov rax, qword [rbx + 0x48]
mov rcx, qword [rax]
jne 0x18013c34f
cmp byte [rbx + 8], 0
jne 0x18013c385
cmp dword [rcx], 2
jl 0x18013c34f
cmp qword [rcx + 0x68], 0
jne 0x18013c385
mov edi, esi
mov ecx, dword [rsp + 0x54]
test ecx, ecx
je 0x18013c35b
mov edi, esi
mov edx, edi
mov rcx, rbx
call fcn.1801204e0
mov ecx, 0xa02
mov word [r15 + 8], cx
cmp eax, 6
jne 0x18013c4f1
xor edi, edi
mov qword [r15 + 0x10], rdi
mov eax, edi
jmp 0x18013c530
cmp edi, esi
je 0x18013c351
cmp esi, 5
je 0x18013c393
cmp edi, 5
jne 0x18013c351
cmp byte [r12 + 0x53], 0
je 0x18013d591
cmp dword [r12 + 0xac], 1
jg 0x18013d591
cmp esi, 5
jne 0x18013c4b9
cmp qword [rbx + 0x138], 0
mov ecx, r11d
mov dword [rsp + 0x54], ecx
jne 0x18013c45a
mov dword [rbp - 0x24], r11d
movzx eax, byte [rbx + 0x16]
mov dword [rsp + 0x54], ecx
cmp al, 1
jb 0x18013c3e1
cmp al, sil
jne 0x18013c410
cmp byte [rbx + 0x12], 0
je 0x18013c3ed
mov dword [rsp + 0x54], ecx
jmp 0x18013c406
mov rcx, qword [rbx + 0x48]
mov edx, 1
mov rax, qword [rcx]
call qword [rax + 0x38]
mov dword [rsp + 0x54], eax
mov ecx, eax
test eax, eax
jne 0x18013c410
cmp byte [rbx + 0x16], 5
je 0x18013c410
mov byte [rbx + 0x16], 1
test ecx, ecx
jne 0x18013c359
mov rax, qword [rbx]
lea r9, [rbp - 0x24]
mov rdx, qword [rbx + 0x140]
xor r8d, r8d
mov rcx, rax
call qword [rax + 0x38]
mov dword [rsp + 0x54], eax
mov ecx, eax
test eax, eax
jne 0x18013c4a5
cmp dword [rbp - 0x24], eax
je 0x18013c450
mov rcx, rbx
call fcn.1800dbf80
mov dword [rsp + 0x54], eax
mov ecx, eax
test eax, eax
jne 0x18013c4a5
cmp qword [rbx + 0x138], 0
je 0x18013c4a5
mov rcx, rbx
call fcn.1800dbd40
mov dword [rsp + 0x54], eax
mov ecx, eax
test eax, eax
jne 0x18013c4a5
movzx edx, byte [rbx + 0xe]
mov r9, qword [rbx + 0x128]
mov r8d, dword [rbx + 0xbc]
mov rcx, qword [rbx + 0x138]
call fcn.180143f70
mov rcx, rbx
mov dword [rsp + 0x54], eax
mov qword [rbx + 0x138], 0
call fcn.1800dbdd0
mov ecx, dword [rsp + 0x54]
test ecx, ecx
jne 0x18013c359
mov edx, edi
mov rcx, rbx
call fcn.1801204e0
jmp 0x18013c4d4
cmp esi, 4
jne 0x18013c4c9
lea edx, [rsi - 2]
mov rcx, rbx
call fcn.1801204e0
cmp dword [rsp + 0x54], 0
jne 0x18013c359
xor edx, edx
mov rcx, r14
cmp edi, 5
sete dl
inc edx
call fcn.1800f3060
mov ecx, eax
mov dword [rsp + 0x54], eax
jmp 0x18013c355
cdqe
lea rcx, [0x180000000]
mov rcx, qword [rcx + rax*8 + 0x1a6438]
mov qword [r15 + 0x10], rcx
test rcx, rcx
jne 0x18013c511
xor edi, edi
mov eax, edi
jmp 0x18013c530
mov rax, 0xffffffffffffffff
nop dword [rax + rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x18013c520
and eax, 0x3fffffff
xor edi, edi
movzx r8d, byte [rsp + 0x60]
mov dword [r15 + 0xc], eax
mov byte [r15 + 0xa], 1
cmp r8b, 1
je 0x18013c551
movzx edx, r8b
mov rcx, r15
call fcn.1801405b0
mov eax, dword [rsp + 0x54]
test eax, eax
je 0x18013754a
mov rsi, qword [rsp + 0x48]
mov r14d, 7
jmp 0x18013d342
lea rcx, [r13 + 0x48]
mov rdx, r12
call fcn.180129fa0
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18013d335
jmp 0x180137095
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x20]
shl rcx, 5
mov rsi, qword [rcx + rax + 8]
cmp byte [rsi + 0x11], 0
mov rdi, qword [rsi + 8]
je 0x18013c5bc
inc dword [rsi + 0x14]
cmp byte [rsi + 0x12], 0
jne 0x18013c5bc
mov rcx, rsi
call fcn.18007b390
cmp byte [rdi + 0x21], 0
je 0x18013c679
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.1800876d0
mov r15d, eax
cmp r14d, eax
jae 0x18013c600
mov ecx, 0xe815
call fcn.1800f6670
mov dword [rsp + 0x54], eax
jmp 0x18013c681
test ebx, ebx
je 0x18013c679
mov rcx, qword [rdi + 0x10]
test rcx, rcx
je 0x18013c61f
xor r8d, r8d
xor edx, edx
call fcn.1800e78e0
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18013c681
mov rax, qword [rdi + 0x10]
test rax, rax
je 0x18013c63d
nop dword [rax + rax]
and byte [rax + 0x54], 0xfb
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x18013c630
xor r9d, r9d
mov r8d, r14d
mov edx, r15d
mov rcx, rdi
call fcn.1800d02c0
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18013c681
mov rcx, qword [rdi + 0x18]
mov rcx, qword [rcx + 0x70]
call fcn.180120d10
mov edx, dword [rdi + 0x40]
mov dword [rsp + 0x54], eax
mov rax, qword [rdi + 0x18]
bswap edx
mov rcx, qword [rax + 0x50]
mov dword [rcx + 0x1c], edx
jmp 0x18013c681
mov dword [rsp + 0x54], 0x65
cmp byte [rsi + 0x11], 0
je 0x18013c695
sub dword [rsi + 0x14], 1
jne 0x18013c695
mov rcx, rsi
call fcn.18014cdf0
mov eax, dword [rsp + 0x54]
test eax, eax
je 0x18013754a
cmp eax, 0x65
jne 0x18013d335
xor r11d, r11d
mov dword [rsp + 0x54], r11d
jmp 0x18013d1e9
cmp dword [r15 + 4], 0
jne 0x18013c6e5
mov rax, qword [r12 + 8]
test rax, rax
je case.0x180136931.62
nop dword [rax]
or dword [rax + 0x8c], 1
mov rax, qword [rax + 0x58]
test rax, rax
jne 0x18013c6d0
jmp case.0x180136931.62
or dword [r13 + 0x8c], 1
jmp case.0x180136931.62
movzx esi, byte [r15 + 0xc]
test sil, sil
jne 0x18013c70c
mov eax, 0x4000
test dword [r12 + 0x2c], eax
jne 0x18013c804
mov rax, qword [r12 + 0x20]
movsxd rcx, dword [r15 + 4]
mov edi, dword [r15 + 8]
shl rcx, 5
mov rbx, qword [rcx + rax + 8]
mov eax, r11d
mov dword [rsp + 0x54], eax
cmp byte [rbx + 0x11], 0
je 0x18013c7fc
inc dword [rbx + 0x14]
inc sil
cmp byte [rbx + 0x12], 0
jne 0x18013c74a
mov rcx, rbx
call fcn.18007b390
xor r11d, r11d
movzx r8d, sil
mov edx, edi
mov rcx, rbx
call fcn.1800e1c60
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18013c7cd
mov r14, qword [rbx + 8]
mov rax, qword [r14 + 0x78]
test rax, rax
je 0x18013c783
nop dword [rax]
cmp dword [rax + 8], edi
jne 0x18013c77a
cmp qword [rax], rbx
je 0x18013c7af
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x18013c770
mov ecx, 0x18
call fcn.18011da50
test rax, rax
je 0x18013c7c0
xor r11d, r11d
mov qword [rax + 0xc], r11
mov dword [rax + 0x14], r11d
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 0x18013c7b9
mov byte [rax + 0xc], sil
mov dword [rsp + 0x54], r11d
jmp 0x18013c7c9
mov eax, 7
mov dword [rsp + 0x54], eax
mov eax, dword [rsp + 0x54]
cmp byte [rbx + 0x11], 0
je 0x18013c7e5
sub dword [rbx + 0x14], 1
jne 0x18013c7e5
mov rcx, rbx
call fcn.18014cdf0
mov eax, dword [rsp + 0x54]
mov r9, qword [rsp + 0x58]
xor r11d, r11d
mov r10, qword [rsp + 0x68]
mov r8d, 0x2460
lea edx, [r11 + 4]
test eax, eax
jne 0x18013d5c6
mov rsi, qword [rsp + 0x70]
jmp case.0x180136931.62
mov rcx, qword [rsp + 0x48]
movsxd rdx, dword [r12 + 0x1ac]
mov dword [rsp + 0x54], r11d
mov rbx, qword [rcx + 0x10]
test edx, edx
jle 0x18013c84d
cmp qword [r12 + 0x1d0], 0
jne 0x18013c84d
mov eax, 6
mov dword [rsp + 0x54], eax
test rbx, rbx
jne 0x18013c8f9
mov rsi, rcx
jmp 0x18013d33a
test rbx, rbx
jne 0x18013c85f
mov dword [rsp + 0x54], r11d
mov r15, rcx
jmp 0x180137153
mov rax, qword [rbx + 0x10]
mov rdi, qword [rax]
cmp qword [rdi + 0x70], 0
je 0x18013c8f9
mov rcx, r11
test edx, edx
jle 0x18013c895
mov rax, qword [r12 + 0x1d0]
cmp qword [rax], rbx
je 0x18013c916
inc rcx
add rax, 8
cmp rcx, rdx
jl 0x18013c880
mov rcx, r12
call fcn.1800cfc50
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18013c8f9
mov rcx, qword [rbx + 0x10]
call qword [rdi + 0x70]
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18013c8f9
mov r8d, dword [r12 + 0x278]
add r8d, dword [r12 + 0x274]
movsxd rcx, dword [r12 + 0x1ac]
mov rax, qword [r12 + 0x1d0]
mov qword [rax + rcx*8], rbx
inc dword [r12 + 0x1ac]
inc dword [rbx + 0x18]
test r8d, r8d
je 0x18013c8f9
dec r8d
xor edx, edx
mov rcx, r12
call fcn.180143850
mov dword [rsp + 0x54], eax
mov rdx, qword [rbx + 0x10]
mov rcx, r13
call fcn.180143370
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x18013d335
jmp 0x180137090
mov dword [rsp + 0x54], r11d
jmp 0x18013c8f9
mov rax, qword [rsp + 0x48]
lea rcx, [rbp + 0xf0]
xorps xmm0, xmm0
mov qword [rbp + 0xf0], r11
xorps xmm1, xmm1
mov qword [rbp + 0x120], r11
movdqu xmmword [rbp + 0xf8], xmm0
mov qword [rbp + 0x118], r12
movdqu xmmword [rbp + 0x108], xmm1
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
add rdx, rsi
call fcn.18013fb50
mov rcx, qword [rbp + 0xf8]
mov edx, 0x202
mov dword [rsp + 0x54], eax
movzx eax, cx
and ax, dx
cmp ax, dx
jne 0x18013c991
cmp byte [rbp + 0xfa], 1
jne 0x18013c991
mov rax, qword [rbp + 0x100]
jmp 0x18013c9af
test cl, 1
jne 0x18013cad5
mov dl, 1
lea rcx, [rbp + 0xf0]
call fcn.18014e3d0
mov rcx, qword [rbp + 0xf8]
test rax, rax
je 0x18013cad5
mov r8, qword [r12 + 0x20]
lea rbx, [r13 + 0x48]
mov rcx, qword [rsp + 0x48]
mov rdx, rax
movsxd rcx, dword [rcx + 4]
shl rcx, 5
mov r8, qword [rcx + r8]
mov rcx, r12
call fcn.1801011a0
lea r8, [rbp + 0x98]
mov rsi, rax
mov rcx, qword [rax + 0x50]
mov rdi, qword [rcx]
lea rcx, [r12 + 0x1b0]
mov rdx, rdi
call fcn.180087a00
test rax, rax
je 0x18013caaf
mov r8, qword [rax + 0x10]
test r8, r8
je 0x18013caaf
mov rax, qword [r8]
mov r9, qword [rax + 8]
test r9, r9
je 0x18013caaf
cmp qword [rax + 0x28], 0
je 0x18013caaf
mov rdx, rsi
mov qword [rsp + 0x20], rbx
mov rcx, r12
call fcn.180152ae0
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18013cac9
mov rax, qword [rsi + 0x58]
test rax, rax
je 0x18013cac9
cmp qword [rax], r12
je 0x18013ca64
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x18013ca54
jmp 0x18013cac9
mov rcx, r12
call fcn.1800cfc50
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18013cac9
mov rdx, qword [rsi + 0x58]
test rdx, rdx
je 0x18013ca8e
nop dword [rax]
cmp qword [rdx], r12
je 0x18013ca8e
mov rdx, qword [rdx + 0x28]
test rdx, rdx
jne 0x18013ca80
movsxd rcx, dword [r12 + 0x1ac]
mov rax, qword [r12 + 0x1d0]
mov qword [rax + rcx*8], rdx
inc dword [r12 + 0x1ac]
inc dword [rdx + 0x18]
jmp 0x18013cac9
mov r8, rdi
lea rdx, str.no_such_module:__s
mov rcx, r12
call fcn.18011da20
mov qword [rbx], rax
mov dword [rsp + 0x54], r14d
mov rcx, qword [rbp + 0xf8]
mov rsi, qword [rsp + 0x70]
mov r8d, 0x2460
test r8w, cx
jne 0x18013caea
cmp dword [rbp + 0x110], 0
je 0x18013cafc
lea rcx, [rbp + 0xf0]
call fcn.18014f7e0
mov r8d, 0x2460
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x18013d335
mov r9, qword [rsp + 0x58]
xor r11d, r11d
mov r15, qword [rsp + 0x48]
mov r10, qword [rsp + 0x68]
jmp 0x180137153
inc dword [r12 + 0xb8]
mov rcx, qword [rsp + 0x48]
mov r8, qword [r12 + 0x20]
mov dword [rsp + 0x54], r11d
movsxd rax, dword [rcx + 4]
mov rdx, qword [rcx + 0x10]
mov rcx, r12
shl rax, 5
mov r8, qword [rax + r8]
call fcn.1801011a0
mov rdi, rax
test rax, rax
je 0x18013cbb1
mov rdx, qword [rax + 0x58]
test rdx, rdx
je 0x18013cbb1
nop
mov rcx, qword [rdx + 0x10]
cmp dword [rcx + 8], 0
jg 0x18013d5ef
mov rdx, qword [rdx + 0x28]
test rdx, rdx
jne 0x18013cb60
mov rdx, rdi
mov rcx, r12
call fcn.180153260
mov rbx, rax
mov rcx, qword [rax + 8]
mov rdx, qword [rcx]
mov rcx, qword [rax + 0x10]
mov r8, qword [rdx + 0x28]
call r8
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18013cbb5
xor eax, eax
mov rcx, rbx
mov qword [rbx + 0x10], rax
mov qword [rdi + 0x58], rax
call fcn.180143940
mov eax, dword [rsp + 0x54]
dec dword [r12 + 0xb8]
test eax, eax
jne 0x18013d335
mov dword [rsp + 0x54], eax
jmp 0x180137090
mov rax, qword [rsp + 0x48]
mov qword [rbp - 8], r11
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x18013d609
mov rdi, qword [rbx]
test rdi, rdi
je 0x18013d609
lea rdx, [rbp - 8]
mov rcx, rbx
call qword [rdi + 0x30]
mov rdx, rbx
mov rcx, r13
mov dword [rsp + 0x54], eax
call fcn.180143370
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x18013d335
mov rax, qword [rbp - 8]
mov r9d, 0xffffffff
xor r8d, r8d
mov byte [rsp + 0x20], 2
mov rcx, r13
mov qword [rax], rbx
mov rax, qword [rsp + 0x48]
mov edx, dword [rax + 4]
call fcn.180075890
mov rcx, qword [rbp - 8]
test rax, rax
je 0x18013d601
mov qword [rax + 0x18], rcx
inc dword [rbx + 8]
jmp 0x180137090
mov rcx, qword [rsp + 0x48]
xor r8d, r8d
mov rdi, qword [rsp + 0x78]
movsxd rax, dword [rcx + 0xc]
movsxd rcx, dword [rcx + 4]
mov rdi, qword [rdi + 0x18]
imul rdx, rax, 0x38
mov rax, qword [r13 + 0x60]
add rdx, rsi
movsxd r9, dword [rdx + 0x38]
lea r11, [rdx + 0x38]
mov r13, qword [rax + rcx*8]
mov edx, dword [rdx]
mov rsi, qword [r13 + 0x18]
mov r15, qword [rsi]
mov r14, qword [r15]
test r9d, r9d
jle 0x18013ccb9
mov r10d, 1
nop
movsxd rax, r10d
inc r10d
imul rcx, rax, 0x38
add rcx, r11
mov qword [rdi + r8*8], rcx
inc r8
cmp r8, r9
jl 0x18013cca0
mov rax, qword [rsp + 0x48]
mov rcx, rsi
mov qword [rsp + 0x20], rdi
mov r8, qword [rax + 0x10]
call qword [r14 + 0x40]
mov rcx, qword [rsp + 0x78]
mov rdx, r15
mov dword [rsp + 0x54], eax
call fcn.180143370
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x180138a28
mov rcx, rsi
call qword [r14 + 0x50]
xor r11d, r11d
mov byte [r13 + 2], 0
jmp 0x18013a80e
mov rdi, qword [rsp + 0x48]
mov rax, qword [r13 + 0x60]
movsxd rcx, dword [rdi + 4]
mov r9, qword [rax + rcx*8]
movsxd rax, dword [rdi + 0xc]
imul rdi, rax, 0x38
add rdi, rsi
cmp byte [r9 + 2], 0
je 0x18013cd4a
test word [rdi + 8], r8w
je 0x18013cd36
mov rcx, rdi
call fcn.18014f910
jmp 0x180137090
mov r15, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
mov word [rdi + 8], r14w
jmp case.0x180136931.62
mov rax, qword [r9 + 0x18]
lea rdx, [rbp + 0x1d0]
xorps xmm0, xmm0
xorps xmm1, xmm1
mov ecx, 0x3e00
mov rbx, qword [rax]
mov rax, qword [rbx]
movdqu xmmword [rbp + 0x1d8], xmm0
mov qword [rbp + 0x1d0], rdi
movdqu xmmword [rbp + 0x1e8], xmm1
movdqu xmmword [rbp + 0x1f8], xmm0
and word [rdi + 8], cx
or word [rdi + 8], 1
mov rcx, qword [rsp + 0x48]
mov r8d, dword [rcx + 8]
mov rcx, qword [r9 + 0x18]
call qword [rax + 0x58]
mov rdx, rbx
mov rcx, r13
mov dword [rsp + 0x54], eax
call fcn.180143370
mov eax, dword [rbp + 0x1f4]
test eax, eax
mov ecx, dword [rsp + 0x54]
cmovne ecx, eax
movzx eax, word [rdi + 8]
mov dword [rsp + 0x54], ecx
test al, 2
je 0x18013cde4
movzx r8d, byte [rsp + 0x60]
cmp byte [rdi + 0xa], r8b
je 0x18013cde4
movzx edx, r8b
mov rcx, rdi
call fcn.1801405b0
movzx eax, word [rdi + 8]
test al, 0x12
je 0x18013ce01
bt ax, 0xe
mov ecx, dword [rdi + 0xc]
jae 0x18013cdf4
add ecx, dword [rdi]
mov rax, qword [rdi + 0x28]
cmp ecx, dword [rax + 0x6c]
jg 0x18013d620
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x18013d335
jmp 0x180137090
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x60]
mov rdi, qword [rax + rcx*8]
cmp byte [rdi + 2], 0
jne 0x180136b67
mov rcx, qword [rdi + 0x18]
mov rbx, qword [rcx]
mov rsi, qword [rbx]
call qword [rsi + 0x48]
mov rdx, rbx
mov rcx, r13
mov dword [rsp + 0x54], eax
call fcn.180143370
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x18013d335
mov rcx, qword [rdi + 0x18]
call qword [rsi + 0x50]
test eax, eax
jne 0x18013b8a7
mov r9, qword [rsp + 0x58]
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea rax, [r9 + rcx*8]
mov qword [rsp + 0x48], rax
jmp 0x18013b8ac
mov rcx, qword [rsp + 0x48]
mov rax, qword [rcx + 0x10]
mov rdi, qword [rax + 0x10]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
add rbx, rsi
test byte [rbx + 8], 2
je 0x18013cebd
cmp byte [rbx + 0xa], 1
je 0x18013cebd
mov dl, 1
mov rcx, rbx
call fcn.1801405b0
test eax, eax
jne 0x18013d335
mov rax, qword [rdi]
mov rcx, rdi
mov rdx, qword [rbx + 0x10]
call qword [rax + 0x98]
mov rdx, rdi
mov rcx, r13
mov dword [rsp + 0x54], eax
call fcn.180143370
and dword [r13 + 0x8c], 0xfffffffe
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x18013d335
jmp 0x180137090
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x18013d609
mov r10, qword [rbx]
test r10, r10
je 0x18013d609
cmp qword [r10 + 0x68], 0
mov rdx, qword [rsp + 0x48]
movsxd rdx, dword [rdx + 8]
je 0x180137a9b
mov rax, qword [rsp + 0x48]
movzx esi, byte [r12 + 0x5a]
mov r8, qword [r13 + 0x18]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov rax, r11
add rcx, qword [rsp + 0x70]
test edx, edx
jle 0x18013cf60
nop
mov qword [r8 + rax*8], rcx
add rcx, 0x38
inc rax
cmp rax, rdx
jl 0x18013cf50
mov rax, qword [rsp + 0x48]
lea r9, [rbp + 0xb8]
mov rcx, rbx
movzx eax, byte [rax + 3]
mov byte [r12 + 0x5a], al
call qword [r10 + 0x68]
mov rdx, rbx
mov byte [r12 + 0x5a], sil
mov rcx, r13
mov dword [rsp + 0x54], eax
call fcn.180143370
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x18013cfb6
mov r15, qword [rsp + 0x48]
cmp dword [r15 + 4], eax
je 0x18013d01e
mov r10, qword [rbp + 0xb8]
mov qword [rsp + 0x68], r10
mov qword [r12 + 0x30], r10
jmp 0x18013d023
mov qword [rsp + 0x68], rdi
mov r10, rdi
cmp al, 0x13
jne 0x18013d017
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x68], rdi
mov rax, qword [rax + 0x10]
cmp byte [rax + 0x1c], 0
je 0x18013d013
mov rcx, qword [rsp + 0x48]
mov qword [rsp + 0x68], rdi
movzx ecx, byte [rcx + 3]
cmp cl, 4
jne 0x18013d639
mov r15, qword [rsp + 0x48]
xor r11d, r11d
mov rsi, qword [rsp + 0x70]
mov r8d, 0x2460
mov r9, qword [rsp + 0x58]
mov dword [rsp + 0x54], r11d
lea edx, [r11 + 4]
jmp case.0x180136931.62
mov eax, dword [rsp + 0x54]
mov r15, qword [rsp + 0x48]
jmp 0x18013d023
mov r10, qword [rsp + 0x68]
inc dword [r13 + 0x98]
test eax, eax
jne 0x18013d335
mov rsi, qword [rsp + 0x70]
lea edx, [rax + 4]
mov r9, qword [rsp + 0x58]
xor r11d, r11d
mov r8d, 0x2460
jmp case.0x180136931.62
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
add rdx, qword [r13 + 0x10]
test word [rdx + 8], r8w
je 0x18013d085
mov rcx, rdx
call fcn.1800db5c0
mov r9, qword [rsp + 0x58]
mov rdx, rax
mov r10, qword [rsp + 0x68]
xor r11d, r11d
mov r8d, 0x2460
jmp 0x18013d08e
mov eax, 4
mov word [rdx + 8], ax
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 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 0x180137153
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 8]
imul rsi, rax, 0x38
add rsi, qword [r13 + 0x10]
test word [rsi + 8], r8w
je 0x18013d0e1
mov rcx, rsi
call fcn.1800db5c0
mov rsi, rax
xor r11d, r11d
jmp 0x18013d0e5
mov word [rsi + 8], dx
movsxd rcx, dword [rbx + 4]
mov edi, r11d
mov rax, qword [r12 + 0x20]
shl rcx, 5
mov rbx, qword [rcx + rax + 8]
mov rax, qword [rsp + 0x48]
mov ecx, dword [rax + 0xc]
test ecx, ecx
je 0x18013d112
mov rax, qword [rbx + 8]
mov edi, dword [rax + 0x40]
cmp edi, ecx
cmovb edi, ecx
cmp byte [rbx + 0x11], 0
je 0x18013d129
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x18013d129
mov rcx, rbx
call fcn.18007b390
mov rax, qword [rbx + 8]
mov rcx, qword [rax]
test edi, edi
jle 0x18013d13c
mov dword [rcx + 0xc0], edi
jmp 0x18013d142
mov edi, dword [rcx + 0xc0]
cmp byte [rbx + 0x11], 0
je 0x18013d156
sub dword [rbx + 0x14], 1
jne 0x18013d156
mov rcx, rbx
call fcn.18014cdf0
mov r15, qword [rsp + 0x48]
xor r11d, r11d
movsxd rax, edi
mov qword [rsi], rax
mov rsi, qword [rsp + 0x70]
jmp 0x180137098
cmp qword [r12 + 0xc8], 0
je 0x18013d1d9
test byte [r13 + 0x8c], 2
jne 0x18013d1d9
mov rdx, qword [r15 + 0x10]
test rdx, rdx
jne 0x18013d198
mov rdx, qword [r13 + 0xe8]
test rdx, rdx
je 0x18013d1d4
mov rcx, r13
call fcn.18013dd50
mov rcx, qword [r12 + 0xd0]
mov rdx, rax
mov rbx, rax
call qword [r12 + 0xc8]
mov rdx, rbx
mov rcx, r12
call fcn.1800f83c0
mov r9, qword [rsp + 0x58]
xor r11d, r11d
mov r10, qword [rsp + 0x68]
mov r8d, 0x2460
mov edx, 4
cmp dword [r15 + 8], 0
je case.0x180136931.62
jmp 0x18013d1f8
xor r11d, r11d
mov r15, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x70]
mov r9, qword [rsp + 0x58]
mov eax, dword [r15 + 8]
mov edx, 4
mov r10, qword [rsp + 0x68]
dec eax
cdqe
mov r8d, 0x2460
lea rcx, [rax + rax*2]
lea r15, [r9 + rcx*8]
jmp case.0x180136931.62
mov r15, qword [rsp + 0x48]
xor r11d, r11d
mov rsi, qword [rsp + 0x70]
mov r8d, 0x2460
mov r10, qword [rsp + 0x68]
jmp 0x18013715c
mov r15, qword [rsp + 0x48]
xor r11d, r11d
mov r9, qword [rsp + 0x58]
mov r8d, 0x2460
lea edx, [r11 + 4]
jmp case.0x180136931.62
mov rdx, qword [rsp + 0x48]
mov dword [r13 + 0x84], ecx
movzx eax, byte [rdx + 8]
mov byte [r13 + 0x8a], al
mov dword [r13 + 0x80], ebx
test ecx, ecx
je 0x18013d300
movzx eax, byte [rdx + 3]
test al, al
je 0x18013d2b5
lea rcx, [0x180000000]
mov r11, qword [rcx + rax*8 + 0x1a6308]
test r11, r11
je 0x18013d2b5
mov r9, qword [rdx + 0x10]
test r9, r9
je 0x18013d2b5
mov r8, r11
lea rdx, str._s_constraint_failed:__s
mov rcx, r13
call fcn.1801366d0
jmp 0x18013d2d9
mov r8, qword [rdx + 0x10]
mov rcx, r13
test r8, r8
je 0x18013d2ca
lea rdx, [0x1801c73e0]
jmp 0x18013d2d4
mov r8, r11
lea rdx, str._s_constraint_failed
call fcn.1801366d0
mov rax, qword [r13 + 0x48]
lea rdx, str.abort_at__d_in___s_:__s
mov r9, qword [r13 + 0xe8]
mov r8d, ebx
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x48]
mov ecx, dword [rax + 4]
call fcn.18006eed0
mov rcx, r13
call fcn.18013e8d0
cmp eax, 5
jne 0x18013d853
mov dword [rsp + 0x54], eax
mov dword [r13 + 0x84], eax
jmp 0x18013da50
lea rdx, str.cannot_open_savepoint___SQL_statements_in_progress
mov rcx, r13
call fcn.1801366d0
mov eax, 5
mov rsi, qword [rsp + 0x48]
mov r14d, 7
xor edi, edi
movzx ebx, byte [rsp + 0x40]
cmp byte [r12 + 0x55], 0
cmovne eax, r14d
cmp qword [r13 + 0x48], 0
mov dword [rsp + 0x54], eax
jne 0x18013d972
cmp eax, 0xc0a
je 0x18013d972
lea r8, str.unknown_error
cmp eax, 0x204
je 0x18013d94f
movzx eax, al
cmp eax, 0x1b
jae 0x18013d956
lea rcx, [0x180000000]
mov rcx, qword [rcx + rax*8 + 0x1a8490]
test rcx, rcx
je 0x18013d956
mov r8, rcx
jmp 0x18013d956
lea rdx, str.cannot_release_savepoint___SQL_statements_in_progress
jmp 0x18013d328
mov rcx, qword [rsp + 0x48]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x58]
mov r13, rbx
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov eax, 5
mov dword [rbx + 0x80], edx
mov byte [r12 + 0x53], 0
mov dword [rbx + 0x84], eax
mov dword [rsp + 0x54], eax
jmp 0x18013da50
mov dword [rbx + 0x84], 0x313
lea rdx, str.FOREIGN_KEY_constraint_failed
mov byte [rbx + 0x8a], 2
mov r13, rbx
call fcn.1801366d0
mov eax, edi
mov dword [rsp + 0x54], eax
jmp 0x18013da50
mov eax, 8
mov rsi, rdi
jmp 0x18013d33a
sub rdi, qword [rsp + 0x58]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rdi
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov eax, dword [rsp + 0x54]
mov dword [r13 + 0x80], edx
mov dword [r13 + 0x84], eax
jmp 0x18013da50
mov rdx, qword [r13 + 0x48]
mov rcx, r12
call fcn.1800f83c0
mov edx, 0x1c
mov rcx, r12
call fcn.1800f8480
test rax, rax
je 0x18013d4aa
movups xmm0, xmmword [str.database_schema_has_changed]
movups xmmword [rax], xmm0
movsd xmm1, qword [0x1801acd18]
movsd qword [rax + 0x10], xmm1
mov ecx, dword [0x1801acd20]
mov dword [rax + 0x18], ecx
mov qword [r13 + 0x48], rax
movsxd rbx, dword [r15 + 4]
mov rax, qword [r12 + 0x20]
mov rcx, rbx
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
cmp dword [rcx], edi
je 0x18013d4df
call fcn.18012a6f0
cmp ebx, 1
je 0x18013d4df
mov rcx, qword [r12 + 0x20]
mov rcx, qword [rcx + 0x38]
call fcn.18012a6f0
or dword [r13 + 0x8c], 1
mov eax, select
mov rsi, r15
jmp 0x18013d33a
mov eax, 0x204
jmp 0x18013d335
lea rax, [0x1801afe14]
mov r9d, 0x11ad7
lea r8, str.database_corruption
mov qword [rsp + 0x20], rax
lea rdx, str._s_at_line__d_of___.10s_
mov ecx, 0xb
call fcn.18006eed0
mov eax, 0xb
jmp 0x18013d335
mov eax, 6
mov byte [r13 + 0x8a], 2
jmp 0x18013d335
call fcn.180128050
jmp 0x180138f36
lea rdx, str.too_many_levels_of_trigger_recursion
mov dword [rsp + 0x54], 1
mov rcx, r13
call fcn.1801366d0
mov eax, dword [rsp + 0x54]
jmp 0x18013d335
mov rcx, rbx
call fcn.180068d60
mov r8, rax
lea rdx, [0x1801c73e0]
mov rcx, r13
call fcn.1801366d0
mov eax, dword [rsp + 0x54]
jmp 0x18013d335
cmp edi, 5
mov dword [rsp + 0x54], 1
lea rax, str.into
mov rcx, r13
lea r8, str.out_of
cmove r8, rax
lea rdx, str.cannot_change__s_wal_mode_from_within_a_transaction
call fcn.1801366d0
mov eax, dword [rsp + 0x54]
jmp 0x18013d335
mov rsi, qword [rsp + 0x48]
cmp al, 6
jne 0x18013d33a
mov r8, qword [rsi + 0x10]
lea rdx, str.database_table_is_locked:__s
mov rcx, r13
call fcn.1801366d0
mov eax, dword [rsp + 0x54]
jmp 0x18013d33a
dec dword [r12 + 0xb8]
mov eax, 6
jmp 0x18013d335
call qword [rdi + 0x38]
jmp 0x180138f36
mov eax, 6
jmp 0x18013d335
mov r13, qword [rsp + 0x78]
mov r12, r10
jmp 0x18013d620
mov r13, rdi
lea rdx, str.string_or_blob_too_big
mov rcx, r13
call fcn.1801366d0
mov eax, reloc.WS2_32.dll_select
jmp 0x18013d335
mov eax, ecx
cmp cl, 5
mov ecx, 2
cmove eax, ecx
mov byte [r13 + 0x8a], al
mov eax, dword [rsp + 0x54]
jmp 0x18013d335
mov rax, qword [r12 + 0x198]
test rax, rax
je 0x18013d684
mov ecx, dword [rsp + 0x50]
cmp ecx, dword [rbp - 0x58]
jb 0x18013d684
mov rcx, qword [r12 + 0x1a0]
call rax
test eax, eax
je 0x18013d684
mov eax, 9
jmp 0x18013d335
cmp qword [r13 + 0xd0], 0
mov rcx, r13
jle 0x18013d6b8
mov dword [r13 + 0x84], 0x313
lea rdx, str.FOREIGN_KEY_constraint_failed
mov byte [r13 + 0x8a], 2
call fcn.1801366d0
mov eax, r14d
jmp 0x18013d335
mov edx, r14d
call fcn.1801360b0
mov eax, dword [r13 + 0x7c]
xor edi, edi
mov rdx, qword [rsp + 0x48]
add eax, 2
or eax, 1
mov dword [r13 + 0x7c], eax
movsxd rax, dword [rdx + 4]
imul rcx, rax, 0x38
add rsi, rcx
mov qword [r13 + 0x28], rsi
cmp dword [rdx + 8], edi
jle 0x18013d73f
lea rbx, [rsi + 8]
mov r14d, 0x202
mov eax, 0x1000
test word [rbx], ax
je 0x18013d719
movsxd rax, edi
imul rcx, rax, 0x38
add rcx, rsi
call fcn.18013fef0
test eax, eax
jne 0x180138f36
mov rdx, qword [rsp + 0x48]
movzx eax, word [rbx]
and ax, r14w
cmp ax, 2
jne 0x18013d734
lea rcx, [rbx - 8]
call fcn.18014f780
mov rdx, qword [rsp + 0x48]
inc edi
add rbx, 0x38
cmp edi, dword [rdx + 8]
jl 0x18013d6f3
cmp byte [r12 + 0x55], 0
jne 0x180138f36
sub rdx, qword [rsp + 0x58]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rdx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov eax, 0x64
inc edx
mov dword [rsp + 0x54], eax
mov dword [r13 + 0x80], edx
jmp 0x18013da50
mov rdi, qword [rsp + 0x48]
movzx eax, byte [r12 + 0x53]
mov ebx, dword [rdi + 4]
mov ecx, dword [rdi + 8]
cmp ebx, eax
je 0x18013d86d
test ecx, ecx
je 0x18013d7b0
mov edx, 0x204
mov rcx, r12
call fcn.1801286f0
mov al, 1
jmp 0x18013d7f5
test ebx, ebx
je 0x18013d7db
cmp dword [r12 + 0xb0], 0
jle 0x18013d7db
lea rdx, str.cannot_commit_transaction___SQL_statements_in_progress
mov rcx, r13
call fcn.1801366d0
mov eax, 5
mov rsi, rdi
jmp 0x18013d33a
mov edx, r14d
mov rcx, r13
call fcn.180135b70
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18013da50
movzx eax, bl
mov rcx, r13
mov byte [r12 + 0x53], al
call fcn.18013e8d0
cmp eax, 5
jne 0x18013d84b
sub rdi, qword [rsp + 0x58]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rdi
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov eax, 5
mov dword [r13 + 0x80], edx
sub r14b, bl
mov byte [r12 + 0x53], r14b
mov dword [r13 + 0x84], eax
mov dword [rsp + 0x54], eax
jmp 0x18013da50
mov rcx, r12
call fcn.1800f3c20
cmp dword [r13 + 0x84], 0
mov eax, 0x65
cmovne eax, r14d
mov dword [rsp + 0x54], eax
jmp 0x18013da50
test ebx, ebx
jne 0x18013d88b
lea rdx, str.cannot_start_a_transaction_within_a_transaction
mov rcx, r13
call fcn.1801366d0
mov eax, r14d
mov rsi, rdi
jmp 0x18013d33a
test ecx, ecx
lea rax, str.cannot_rollback___no_transaction_is_active
lea rdx, str.cannot_commit___no_transaction_is_active
mov rcx, r13
cmovne rdx, rax
call fcn.1801366d0
mov eax, r14d
mov rsi, rdi
jmp 0x18013d33a
movzx ebx, byte [rsp + 0x40]
cmp byte [r12 + 0x55], 0
mov eax, 9
mov r14d, 7
cmovne eax, r14d
mov ecx, eax
mov dword [rsp + 0x54], eax
mov dword [r13 + 0x84], eax
call fcn.180065b80
mov r8, rax
lea rdx, [0x1801c73e0]
mov rcx, r13
call fcn.1801366d0
mov eax, dword [rsp + 0x54]
xor edi, edi
mov rsi, qword [rsp + 0x48]
jmp 0x18013d347
mov r13, qword [rsp + 0x78]
jmp 0x180138f3c
mov r15d, 1
jmp 0x180138f43
mov r15, r14
jmp 0x180138f43
mov rsi, rbx
jmp 0x18013d33a
mov r12, qword [rbp - 0x78]
mov rsi, rbx
jmp 0x18013d33a
mov r12, qword [rbp - 0x78]
jmp 0x18013d335
mov rsi, rdx
jmp 0x18013d33a
mov r13, qword [rsp + 0x78]
mov rsi, rbx
jmp 0x18013d33a
lea r8, str.abort_due_to_ROLLBACK
lea rdx, [0x1801c73e0]
mov rcx, r13
call fcn.1801366d0
mov eax, dword [rsp + 0x54]
mov dword [r13 + 0x84], eax
jmp 0x18013d980
mov dword [r13 + 0x84], eax
cmp eax, 0xc0a
je 0x18013d9ab
movzx eax, al
sub eax, 0xa
test eax, 0xfffffffb
jne 0x18013d9ab
mov rcx, qword [r12]
mov rax, qword [rcx + 0x80]
test rax, rax
je 0x18013d9a6
xor r8d, r8d
xor edx, edx
call rax
mov edi, eax
mov dword [r12 + 0x4c], edi
sub rsi, qword [rsp + 0x58]
movabs rax, 0x2aaaaaaaaaaaaaab
mov r9, qword [r13 + 0xe8]
mov ecx, dword [rsp + 0x54]
imul rsi
mov rax, qword [r13 + 0x48]
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.18006eed0
mov rcx, r13
call fcn.18013e8d0
cmp dword [rsp + 0x54], 0xc0a
jne 0x18013da32
cmp byte [r12 + 0x55], 0
jne 0x18013da32
cmp byte [r12 + 0x56], 0
jne 0x18013da32
mov byte [r12 + 0x55], 1
cmp dword [r12 + 0xb4], 0
jle 0x18013da2a
mov dword [r12 + 0x148], 1
inc dword [r12 + 0x150]
mov eax, 1
mov dword [rsp + 0x54], eax
test bl, bl
je 0x18013da50
movzx edx, bl
mov rcx, r12
dec edx
call fcn.180128150
mov eax, dword [rsp + 0x54]
mov rcx, qword [rsp + 0x68]
movaps xmm6, xmmword [rsp + 0x430]
mov r15, qword [rsp + 0x440]
mov r14, qword [rsp + 0x448]
mov rdi, qword [rsp + 0x488]
mov rsi, qword [rsp + 0x480]
mov rbx, qword [rsp + 0x478]
mov qword [r12 + 0x30], rcx
mov ecx, dword [rsp + 0x50]
add dword [r13 + 0xb8], ecx
cmp dword [r13 + 0xa0], 0
mov r12, qword [rsp + 0x450]
je 0x18013dab3
mov rcx, r13
call fcn.18014f6f0
mov eax, dword [rsp + 0x54]
mov rcx, qword [rbp + 0x320]
xor rcx, rsp
call fcn.18015fd80
add rsp, 0x458
pop r13
pop rbp
ret