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

Disassembly:
mov r11, rsp
push rbp
push rdi
push r14
lea rbp, [r11 - 0x128]
sub rsp, 0x210
mov rax, qword [0x1802407e8]
xor rax, rsp
mov qword [rbp + 0xd8], rax
mov r9, qword [rcx + 0x88]
xor edi, edi
mov qword [r11 + 0x10], rbx
xor al, al
mov r14, rcx
mov qword [r11 + 0x18], rsi
mov r8d, edi
mov qword [r11 + 0x20], r12
mov esi, edi
mov r12, qword [rcx + 0x68]
mov qword [r11 - 0x20], r13
mov r11d, edi
mov r13, qword [rcx]
mov qword [rsp + 0x68], rcx
mov qword [rsp + 0x58], r9
mov qword [rsp + 0x48], r9
movzx r10d, byte [r13 + 0x64]
mov byte [rsp + 0x40], r10b
mov dword [rsp + 0x44], edi
mov qword [rbp - 0x80], r13
mov byte [rbp - 0x78], al
mov dword [rsp + 0x50], edi
mov qword [rsp + 0x78], r12
mov dword [rbp - 0x74], edi
cmp dword [rcx + 0xd0], edi
je 0x18003ce61
call fcn.180034ce0
movzx r10d, byte [rsp + 0x40]
mov r8d, edi
mov r9, qword [rsp + 0x58]
mov r11d, edi
cmp qword [r13 + 0x210], rdi
je 0x18003ce82
mov ecx, dword [r13 + 0x220]
xor edx, edx
mov eax, dword [r14 + 0xe4]
div ecx
sub ecx, edx
mov ebx, ecx
jmp 0x18003ce89
mov rbx, 0xffffffffffffffff
cmp dword [r14 + 0x34], 7
mov edx, 1
mov qword [rsp + 0x200], r15
movaps xmmword [rsp + 0x1f0], xmm6
movaps xmmword [rsp + 0x1e0], xmm7
mov qword [rsp + 0x60], rbx
je 0x180043559
mov dword [r14 + 0x34], edi
mov qword [r14 + 0x48], rdi
mov eax, dword [r13 + 0x198]
mov dword [r13 + 0x298], edi
test eax, eax
jne 0x18004336e
movsxd rax, dword [r14 + 0x30]
xorps xmm7, xmm7
lea rcx, [rax + rax*2]
lea r15, [r9 + rcx*8]
lea rcx, [0x180000000]
movzx ebx, byte [r15]
inc rsi
mov qword [rsp + 0x48], r15
mov qword [rsp + 0x70], rsi
cmp ebx, 0xb5
ja case.default.0x18003cf1b
movsxd rax, ebx
mov ecx, dword [rcx + rax*4 + 0x43714]
lea rax, [0x180000000]
add rcx, rax
jmp rcx
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
sub rcx, r9
imul r8, rax, 0x38
mov eax, 4
mov word [r8 + r12 + 0x14], ax
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rax, rdx
cdqe
mov qword [r8 + r12], rax
jmp 0x18004280d
movsxd rax, dword [r15 + 4]
imul rax, rax, 0x38
test byte [rax + r12 + 0x14], 4
je case.0x18003cf1b.89
mov rax, qword [rax + r12]
lea rcx, [rax + rax*2]
lea r15, [r9 + rcx*8]
jmp case.0x18003cf1b.89
movsxd rax, dword [r15 + 4]
imul rcx, rax, 0x38
mov eax, dword [r15 + 0xc]
dec eax
cdqe
mov qword [rcx + r12], rax
mov eax, 4
mov word [rcx + r12 + 0x14], ax
cmp dword [r15 + 8], 0
jne 0x1800426a7
jmp case.0x18003cf1b.89
movsxd rax, dword [r15 + 4]
imul rdx, rax, 0x38
mov rax, qword [rdx + r12]
lea rcx, [rax + rax*2]
mov eax, dword [r9 + rcx*8 + 8]
dec eax
mov word [rdx + r12 + 0x14], di
cdqe
lea rcx, [rax + rax*2]
lea r15, [r9 + rcx*8]
jmp 0x18003db63
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 4]
sub rbx, r9
imul r8, rax, 0x38
mov eax, 4
movsxd rcx, dword [r8 + r12]
mov word [r8 + r12 + 0x14], ax
movabs rax, 0x2aaaaaaaaaaaaaab
imul rbx
lea rcx, [rcx + rcx*2]
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rax, rdx
cdqe
mov qword [r8 + r12], rax
lea r8, [r9 + rcx*8]
mov qword [rsp + 0x48], r8
mov r8d, dword [rsp + 0x44]
mov r15, qword [rsp + 0x48]
jmp 0x18003db63
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
test byte [rcx + r12 + 0x14], 1
je case.0x18003cf1b.89
mov rbx, qword [r14 + 0x108]
mov r8, qword [rsp + 0x48]
test rbx, rbx
je 0x180042e84
cmp dword [r8 + 4], 0
jne 0x180042e84
mov rax, qword [rbx + 8]
mov rcx, r13
mov rdx, qword [r14 + 0x38]
dec dword [r14 + 0x118]
mov qword [r14 + 0x108], rax
call fcn.1800388d0
mov rcx, rbx
call fcn.1800359d0
mov r15, qword [rsp + 0x48]
cmp dword [r15 + 8], 4
jne 0x18003d0b3
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [r14 + 0x88]
mov eax, dword [rax + rcx*8 + 8]
dec eax
mov r9, qword [r14 + 0x88]
mov r12, qword [r14 + 0x68]
cdqe
mov qword [rsp + 0x58], r9
mov qword [rsp + 0x78], r12
lea rcx, [rax + rax*2]
lea r8, [r9 + rcx*8]
mov r11d, dword [rsp + 0x50]
mov r15, r8
mov qword [rsp + 0x48], r8
mov r8d, dword [rsp + 0x44]
jmp 0x18003db5d
movsxd rax, dword [r15 + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, qword [r14 + 0x68]
test word [rcx + 0x14], ax
je 0x18003d114
call fcn.18003c9a0
mov r9, qword [rsp + 0x58]
mov rcx, rax
mov edx, 1
jmp 0x18003d11d
mov eax, 4
mov word [rcx + 0x14], ax
movsxd rax, dword [r15 + 4]
mov qword [rcx], rax
mov r8d, dword [rsp + 0x44]
movzx r10d, byte [rsp + 0x40]
mov r11d, dword [rsp + 0x50]
jmp case.0x18003cf1b.89
movsxd rax, dword [r15 + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [r14 + 0x68]
test word [rdx + 0x14], ax
je 0x18003d179
mov rcx, rdx
call fcn.18003c9a0
mov r9, qword [rsp + 0x58]
mov rdx, rax
mov rax, qword [r15 + 0x10]
mov r8d, dword [rsp + 0x44]
mov r11d, dword [rsp + 0x50]
mov rcx, qword [rax]
mov qword [rdx], rcx
jmp 0x18003db5d
mov eax, 4
mov r8d, dword [rsp + 0x44]
mov r11d, dword [rsp + 0x50]
mov word [rdx + 0x14], ax
mov rax, qword [r15 + 0x10]
mov rcx, qword [rax]
mov qword [rdx], rcx
jmp 0x18003db5d
movsxd rax, dword [r15 + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [r14 + 0x68]
test word [rdx + 0x14], ax
je 0x18003d1c2
mov rcx, rdx
call fcn.18003c9a0
mov r9, qword [rsp + 0x58]
mov rdx, rax
mov eax, 8
jmp 0x18003d17e
mov r8, qword [rsp + 0x48]
movsxd rax, dword [r8 + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, qword [r14 + 0x68]
test word [rbx + 0x14], ax
je 0x18003d1f7
mov rcx, rbx
call fcn.18003c9a0
mov r8, qword [rsp + 0x48]
mov rbx, rax
jmp 0x18003d200
mov eax, 4
mov word [rbx + 0x14], ax
mov rdx, qword [r8 + 0x10]
test rdx, rdx
jne 0x18003d20d
mov eax, edi
jmp 0x18003d222
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rdx + rax], 0
jne 0x18003d214
and eax, 0x3fffffff
movzx edi, byte [rsp + 0x40]
mov dword [r8 + 4], eax
cmp dil, 1
je 0x18003d2a9
xor r15d, r15d
mov r9b, 1
mov rcx, rbx
mov qword [rsp + 0x20], r15
lea r8, [r15 - 1]
call fcn.180032b70
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x180043219
mov edx, edi
mov rcx, rbx
call fcn.1800319a0
test eax, eax
jne 0x180043554
mov r8, qword [rsp + 0x48]
mov eax, 0x2000
or word [rbx + 0x14], ax
mov dword [rbx + 0x20], r15d
cmp byte [r8 + 1], 0xfa
jne 0x18003d290
mov rdx, qword [r8 + 0x10]
mov rcx, r13
call fcn.180006e10
mov r8, qword [rsp + 0x48]
mov r12, qword [rsp + 0x78]
mov byte [r8 + 1], 0xfa
mov rax, qword [rbx + 8]
mov qword [r8 + 0x10], rax
mov eax, dword [rbx + 0x10]
mov dword [r8 + 4], eax
cmp eax, dword [r13 + 0x88]
jg 0x180043219
mov byte [r8], 0x49
jmp 0x18003d2c6
mov r8, qword [rsp + 0x48]
movzx edi, byte [rsp + 0x40]
movsxd rax, dword [r8 + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [r14 + 0x68]
test word [rdx + 0x14], ax
je 0x18003d2ed
mov rcx, rdx
call fcn.18003c9a0
mov r8, qword [rsp + 0x48]
mov rdx, rax
mov eax, 0x2202
mov word [rdx + 0x14], ax
mov rax, qword [r8 + 0x10]
mov qword [rdx + 8], rax
mov eax, dword [r8 + 4]
mov dword [rdx + 0x10], eax
mov byte [rdx + 0x16], dil
movsxd rax, dword [r8 + 0xc]
test eax, eax
jle 0x180042bac
mov r15, qword [rsp + 0x48]
mov r11d, dword [rsp + 0x50]
imul rcx, rax, 0x38
movzx eax, word [r8 + 2]
mov r8d, dword [rsp + 0x44]
cmp qword [rcx + r12], rax
jne 0x180042bef
mov eax, 0x2210
mov word [rdx + 0x14], ax
jmp 0x18003db56
mov rbx, qword [rsp + 0x48]
mov r8d, 0x9000
movsxd rax, dword [rbx + 8]
imul rcx, rax, 0x38
add rcx, qword [r14 + 0x68]
test word [rcx + 0x14], r8w
je 0x18003d378
call fcn.18003c9a0
mov rcx, rax
mov edx, 1
mov r8d, 0x9000
jmp 0x18003d381
mov eax, 4
mov word [rcx + 0x14], ax
cmp dword [rbx + 4], 0
mov esi, edx
mov edi, dword [rbx + 0xc]
mov r9d, 0x101
mov eax, dword [rbx + 8]
cmovne si, r9w
xor r15d, r15d
mov word [rcx + 0x14], si
sub edi, eax
mov dword [rcx + 0x10], r15d
lea rbx, [rcx + 0x14]
test edi, edi
jle 0x180042be3
test word [rbx + 0x38], r8w
lea rbx, [rbx + 0x38]
je 0x18003d3cb
lea rcx, [rbx - 0x14]
call fcn.1800320a0
mov r8d, 0x9000
dec edi
mov word [rbx], si
mov dword [rbx - 4], r15d
test edi, edi
jg 0x18003d3b1
mov r8d, dword [rsp + 0x44]
mov r15, qword [rsp + 0x48]
jmp 0x18003db51
movsxd rax, dword [r15 + 4]
mov ebx, 0xffc1
imul rcx, rax, 0x38
movzx eax, word [rcx + r12 + 0x14]
and ax, bx
or ax, 1
mov word [rcx + r12 + 0x14], ax
jmp case.0x18003cf1b.89
movsxd rax, dword [r15 + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, qword [r14 + 0x68]
test word [rbx + 0x14], ax
je 0x18003d430
mov rcx, rbx
call fcn.18003c9a0
mov rbx, rax
jmp 0x18003d439
mov eax, 4
mov word [rbx + 0x14], ax
mov rax, qword [rsp + 0x48]
mov rcx, rbx
mov rdx, qword [rax + 0x10]
movsxd rax, dword [rax + 4]
test rdx, rdx
jne 0x18003d467
mov edx, eax
call fcn.180032750
mov rcx, rbx
call fcn.180031e00
test eax, eax
jne 0x180043554
jmp 0x18003d477
mov r8, rax
mov qword [rsp + 0x20], rdi
xor r9d, r9d
call fcn.180032b70
movzx r10d, byte [rsp + 0x40]
mov r8d, dword [rsp + 0x44]
mov r15, qword [rsp + 0x48]
mov r11d, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
mov byte [rbx + 0x16], r10b
jmp 0x18003db63
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 4]
imul rdi, rax, 0x38
add rdi, qword [r14 + 0x80]
lea rcx, [rdi - 0x38]
call fcn.1800329f0
test eax, eax
jne 0x180043219
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, r12
test word [rbx + 0x14], ax
je 0x18003d4dd
mov rcx, rbx
call fcn.180032730
movups xmm0, xmmword [rdi - 0x38]
mov r8d, dword [rsp + 0x44]
mov ecx, 0xafff
mov r15, qword [rsp + 0x48]
movups xmmword [rbx], xmm0
movsd xmm1, qword [rdi - 0x28]
movsd qword [rbx + 0x10], xmm1
movzx eax, word [rbx + 0x14]
and ax, cx
mov ecx, 0x2040
or ax, cx
mov word [rbx + 0x14], ax
jmp 0x18003db51
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
mov esi, dword [rcx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rdi, r12
add rbx, r12
xor r15d, r15d
nop word [rax + rax]
mov eax, 0x9000
test word [rbx + 0x14], ax
jne 0x18003d551
cmp dword [rbx + 0x20], r15d
je 0x18003d55e
mov rcx, rbx
call fcn.1800320e0
mov edx, 1
movups xmm0, xmmword [rdi]
mov eax, 0x4000
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 + 0x14], dx
mov dword [rdi + 0x20], r15d
test word [rbx + 0x14], ax
je 0x18003d5a4
mov rcx, rbx
call fcn.180031da0
test eax, eax
jne 0x18004354f
lea edx, [rax + 1]
add rdi, 0x38
add rbx, 0x38
sub esi, 1
jne 0x18003d540
mov r8d, dword [rsp + 0x44]
mov r15, qword [rsp + 0x48]
xor edi, edi
mov r11d, dword [rsp + 0x50]
movzx r10d, byte [rsp + 0x40]
mov r9, qword [rsp + 0x58]
jmp case.0x18003cf1b.89
mov rcx, qword [rsp + 0x48]
mov r15, rcx
movsxd rax, dword [rcx + 4]
mov esi, dword [rcx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
add rdi, r12
imul rbx, rax, 0x38
add rbx, r12
mov r12d, 0x4000
nop dword [rax]
mov r8d, r12d
mov rdx, rdi
mov rcx, rbx
call fcn.180032a60
test word [rbx + 0x14], r12w
je 0x18003d625
mov rcx, rbx
call fcn.180031da0
test eax, eax
jne 0x18004354f
movzx eax, word [rbx + 0x14]
bt ax, 0xb
jae 0x18003d643
test byte [r15 + 2], 2
je 0x18003d643
mov ecx, 0xf7ff
and ax, cx
mov word [rbx + 0x14], ax
mov eax, esi
dec esi
test eax, eax
je 0x180042bdc
add rbx, 0x38
add rdi, 0x38
jmp 0x18003d600
mov rcx, qword [rsp + 0x48]
mov r8d, 0x4000
movsxd rax, dword [rcx + 4]
imul rdx, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
add rdx, r12
add rcx, r12
call fcn.180032a60
mov r8d, dword [rsp + 0x44]
mov r15, qword [rsp + 0x48]
mov r11d, dword [rsp + 0x50]
jmp 0x18003db58
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 8]
imul r8, rax, 0x38
movsxd rax, dword [rcx + 4]
imul rcx, rax, 0x38
add r8, r12
mov rax, qword [rcx + r12]
mov ecx, 0x9000
test word [r8 + 0x14], cx
je 0x18003d6da
mov rdx, rax
mov rcx, r8
call fcn.1800327a0
mov r8d, dword [rsp + 0x44]
mov r11d, dword [rsp + 0x50]
mov r15, qword [rsp + 0x48]
jmp 0x18003db58
mov qword [r8], rax
mov eax, 4
mov word [r8 + 0x14], ax
mov r8d, dword [rsp + 0x44]
mov r15, qword [rsp + 0x48]
jmp case.0x18003cf1b.89
xor edx, edx
mov rcx, r14
call fcn.180036610
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x180043008
mov r11d, dword [rsp + 0x50]
jmp 0x18003db58
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul r13, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
add r13, r12
imul rsi, rax, 0x38
movzx r14d, word [r13 + 0x14]
add rbx, r12
movzx eax, r14b
add rsi, r12
or al, byte [rbx + 0x14]
test al, 1
je 0x18003d770
mov rcx, rsi
call fcn.180032730
mov r8d, dword [rsp + 0x44]
mov r11d, dword [rsp + 0x50]
mov r14, qword [rsp + 0x68]
mov r15, qword [rsp + 0x48]
jmp 0x18003db58
test r14b, 0x12
jne 0x18003d7a3
xor r8d, r8d
movzx edx, r10b
mov rcx, r13
call fcn.180031e70
test eax, eax
jne 0x180043546
movzx r14d, word [r13 + 0x14]
mov r15d, 0xfffd
and r14w, r15w
mov eax, 0x400
jmp 0x18003d7be
mov eax, 0x400
test ax, r14w
je 0x18003d7b8
mov rcx, r13
call fcn.180031e00
jmp 0x18003d785
mov r15d, 0xfffd
movzx edi, word [rbx + 0x14]
test dil, 0x12
jne 0x18003d7da
movzx edx, byte [rsp + 0x40]
xor r8d, r8d
mov rcx, rbx
call fcn.180031e70
jmp 0x18003d7e7
test ax, di
je 0x18003d7f7
mov rcx, rbx
call fcn.180031e00
test eax, eax
jne 0x180043546
movzx edi, word [rbx + 0x14]
and di, r15w
mov rax, qword [rbp - 0x80]
mov edx, dword [rbx + 0x10]
add edx, dword [r13 + 0x10]
movsxd r15, edx
movsxd rax, dword [rax + 0x88]
cmp r15, rax
jg 0x18004320b
xor eax, eax
mov rcx, rsi
mov r8d, eax
cmp rsi, rbx
sete r8b
add edx, 2
call fcn.1800319c0
test eax, eax
jne 0x180043546
movzx eax, word [rsi + 0x14]
mov ecx, 0xf242
and ax, cx
or ax, 2
mov word [rsi + 0x14], ax
cmp rsi, rbx
je 0x18003d862
movsxd r8, dword [rbx + 0x10]
mov rdx, qword [rbx + 8]
mov rcx, qword [rsi + 8]
call fcn.1801a1710
mov word [rbx + 0x14], di
movsxd rcx, dword [rbx + 0x10]
add rcx, qword [rsi + 8]
movsxd r8, dword [r13 + 0x10]
mov rdx, qword [r13 + 8]
call fcn.1801a1710
movzx r10d, byte [rsp + 0x40]
mov word [r13 + 0x14], r14w
cmp r10b, 1
jbe 0x18003d88c
and r15, 0xfffffffffffffffe
mov rax, qword [rsi + 8]
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x68]
mov r11d, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
mov byte [r15 + rax], 0
mov rax, qword [rsi + 8]
mov byte [r15 + rax + 1], 0
mov eax, 0x200
or word [rsi + 0x14], ax
mov dword [rsi + 0x10], r15d
xor edi, edi
mov r15, qword [rsp + 0x48]
mov byte [rsi + 0x16], r10b
jmp 0x18003db63
mov r8, qword [rsp + 0x48]
movsxd rax, dword [r8 + 4]
imul rsi, rax, 0x38
movsxd rax, dword [r8 + 8]
imul rdi, rax, 0x38
movsxd rax, dword [r8 + 0xc]
add rsi, r12
imul r14, rax, 0x38
movzx ebx, word [rsi + 0x14]
add rdi, r12
add r14, r12
movzx ecx, word [rdi + 0x14]
movzx eax, cl
and al, bl
test al, 4
jne 0x18003d93f
or cl, bl
test cl, 1
jne 0x18003db04
and bx, 0x2d
jne 0x18003d923
mov rcx, rsi
call fcn.18003c8f0
movzx ebx, ax
movzx eax, word [rdi + 0x14]
and ax, 0x2d
jne 0x18003d935
mov rcx, rdi
call fcn.18003c8f0
and al, bl
test al, 4
je 0x18003da18
mov r15, qword [rsp + 0x48]
mov r8, qword [rdi]
mov rcx, qword [rsi]
mov qword [rbp + 0x80], r8
movzx edx, byte [r15]
sub edx, 0x6a
je 0x18003d9e5
sub edx, 1
je 0x18003d9d4
sub edx, 1
je 0x18003d9c3
cmp edx, 1
je 0x18003d994
mov edx, 1
test rcx, rcx
je 0x18003dad2
cmp rcx, 0xffffffffffffffff
mov rax, r8
cmove rcx, rdx
cqo
idiv rcx
mov qword [rbp + 0x80], rdx
jmp 0x18003d9f8
test rcx, rcx
je 0x18003dacd
cmp rcx, 0xffffffffffffffff
jne 0x18003d9b2
movabs rax, 0x8000000000000000
cmp r8, rax
je 0x18003da1d
mov rax, r8
cqo
idiv rcx
mov qword [rbp + 0x80], rax
jmp 0x18003d9f8
mov rdx, rcx
lea rcx, [rbp + 0x80]
call fcn.18000d160
jmp 0x18003d9f4
mov rdx, rcx
lea rcx, [rbp + 0x80]
call fcn.18000d0f0
jmp 0x18003d9f4
mov rdx, rcx
lea rcx, [rbp + 0x80]
call fcn.18000d0a0
test eax, eax
jne 0x18003da1d
mov rax, qword [rbp + 0x80]
mov ecx, 0xf244
mov qword [r14], rax
movzx eax, word [r14 + 0x14]
and ax, cx
or ax, 4
jmp 0x18003db42
mov r15, qword [rsp + 0x48]
mov rcx, rsi
call fcn.180032220
mov rcx, rdi
movaps xmm6, xmm0
call fcn.180032220
movzx ecx, byte [r15]
sub ecx, 0x6a
je 0x18003da9d
sub ecx, 1
je 0x18003da97
sub ecx, 1
je 0x18003da91
cmp ecx, 1
je 0x18003da83
mov rcx, rsi
call fcn.180032190
mov rcx, rdi
mov rbx, rax
call fcn.180032190
mov qword [rbp + 0x80], rax
mov edx, 1
test rbx, rbx
je 0x18003dad2
cmp rbx, 0xffffffffffffffff
xorps xmm0, xmm0
cmove rbx, rdx
cqo
idiv rbx
cvtsi2sd xmm0, rdx
jmp 0x18003daa1
ucomisd xmm6, xmm7
jp 0x18003da8b
je 0x18003dacd
divsd xmm0, xmm6
jmp 0x18003daa1
mulsd xmm0, xmm6
jmp 0x18003daa1
subsd xmm0, xmm6
jmp 0x18003daa1
addsd xmm0, xmm6
movq rax, xmm0
movabs rcx, 0xfffffffffffff
test rcx, rax
movabs rdx, 0x7ff0000000000000
setne cl
and rax, rdx
cmp rax, rdx
sete al
test al, cl
je 0x18003db2c
mov edx, 1
mov eax, 0x9000
test word [r14 + 0x14], ax
je 0x18003db09
mov rcx, r14
call fcn.1800320a0
mov r8d, dword [rsp + 0x44]
movzx r10d, byte [rsp + 0x40]
xor edi, edi
mov r14, qword [rsp + 0x68]
mov r11d, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
jmp 0x18003db63
mov r15, r8
jmp 0x18003dad2
mov r8d, dword [rsp + 0x44]
xor edi, edi
movzx r10d, byte [rsp + 0x40]
mov r11d, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
mov word [r14 + 0x14], dx
mov r14, qword [rsp + 0x68]
jmp case.0x18003cf1b.89
movzx eax, word [r14 + 0x14]
mov ecx, 0xf248
and ax, cx
movsd qword [r14], xmm0
or ax, 8
mov r8d, dword [rsp + 0x44]
mov word [r14 + 0x14], ax
mov r14, qword [rsp + 0x68]
mov r11d, dword [rsp + 0x50]
xor edi, edi
mov r9, qword [rsp + 0x58]
movzx r10d, byte [rsp + 0x40]
mov edx, 1
lea rcx, [0x180000000]
mov r13, qword [rbp - 0x80]
add r15, 0x18
mov rsi, qword [rsp + 0x70]
jmp 0x18003ceea
movsxd rax, dword [r15 + 4]
test eax, eax
je case.0x18003cf1b.89
imul rcx, rax, 0x38
xor edx, edx
add rcx, r12
call fcn.1800327e0
mov r8d, dword [rsp + 0x44]
mov r11d, dword [rsp + 0x50]
jmp 0x18003db58
mov rcx, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
movsxd rax, dword [r15 + 0xc]
add rdi, r12
imul rsi, rax, 0x38
add rcx, r12
add rsi, r12
movzx eax, byte [rcx + 0x14]
or al, byte [rdi + 0x14]
test al, 1
je 0x18003dc01
mov eax, 0x9000
test word [rsi + 0x14], ax
je 0x18003dbf6
mov rcx, rsi
call fcn.1800320a0
mov r8d, dword [rsp + 0x44]
jmp 0x18003db51
mov word [rsi + 0x14], dx
xor edi, edi
jmp case.0x18003cf1b.89
call fcn.180032190
mov rcx, rdi
mov rbx, rax
call fcn.180032190
movzx edx, byte [r15]
mov rcx, rax
cmp dl, 0x66
jne 0x18003dc22
and rbx, rax
jmp 0x18003dc97
cmp dl, 0x67
jne 0x18003dc2c
or rbx, rcx
jmp 0x18003dc97
test rcx, rcx
je 0x18003dc97
jns 0x18003dc46
mov eax, 0xd1
sub al, dl
movzx edx, al
cmp rcx, 0xffffffffffffffc0
jle 0x18003dc4c
neg rcx
cmp rcx, 0x40
jl 0x18003dc65
test rbx, rbx
jns 0x18003dc5f
cmp dl, 0x68
je 0x18003dc5f
mov rbx, 0xffffffffffffffff
jmp 0x18003dc97
xor eax, eax
mov ebx, eax
jmp 0x18003dc97
cmp dl, 0x68
jne 0x18003dc72
shl rbx, cl
mov r8, rbx
jmp 0x18003dc94
mov r8, rbx
shr r8, cl
test rbx, rbx
jns 0x18003dc94
mov eax, 0x40
mov rdx, 0xffffffffffffffff
sub al, cl
movzx ecx, al
shl rdx, cl
or r8, rdx
mov rbx, r8
movzx eax, word [rsi + 0x14]
mov ecx, 0xf244
mov r8d, dword [rsp + 0x44]
and ax, cx
or ax, 4
mov qword [rsi], rbx
mov word [rsi + 0x14], ax
jmp 0x18003db51
movsxd rax, dword [r15 + 4]
imul rbx, rax, 0x38
add rbx, r12
mov rcx, rbx
call fcn.180032340
movsxd rax, dword [r15 + 8]
add qword [rbx], rax
mov r8d, dword [rsp + 0x44]
mov r11d, dword [rsp + 0x50]
jmp 0x18003db58
movsxd rax, dword [r15 + 4]
imul rbx, rax, 0x38
add rbx, r12
movzx eax, word [rbx + 0x14]
test al, 4
jne 0x18003dd2f
movzx r8d, r10b
mov dl, 0x43
mov rcx, rbx
call fcn.18003c830
movzx eax, word [rbx + 0x14]
test al, 4
jne 0x18003dd25
cmp dword [r15 + 8], 0
jne 0x18003e68f
mov r8d, setsockopt
mov dword [rsp + 0x44], r8d
jmp 0x180043008
mov r9, qword [rsp + 0x58]
mov edx, 1
mov r8d, dword [rsp + 0x44]
mov ecx, 0xf244
movzx r10d, byte [rsp + 0x40]
and ax, cx
mov r11d, dword [rsp + 0x50]
or ax, 4
mov word [rbx + 0x14], ax
jmp case.0x18003cf1b.89
movsxd rax, dword [r15 + 4]
imul rcx, rax, 0x38
add rcx, r12
test byte [rcx + 0x14], 0x24
je case.0x18003cf1b.89
call fcn.1800323d0
mov r8d, dword [rsp + 0x44]
mov r11d, dword [rsp + 0x50]
jmp 0x18003db58
movsxd rax, dword [r15 + 4]
imul rbx, rax, 0x38
mov eax, 0x400
add rbx, r12
test word [rbx + 0x14], ax
je 0x18003ddaa
mov rcx, rbx
call fcn.180031e00
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x180043008
movzx r8d, byte [rsp + 0x40]
mov rcx, rbx
movzx edx, byte [r15 + 8]
call fcn.180032580
jmp 0x18003d700
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul r15, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul r14, rax, 0x38
add r15, r12
add r14, r12
movzx esi, word [r15 + 0x14]
movzx edi, word [r14 + 0x14]
movzx edx, di
and dx, si
test dl, 4
je 0x18003dea4
mov rcx, qword [r14]
cmp rcx, qword [r15]
lea rcx, [0x180000000]
mov r15, qword [rsp + 0x48]
jle 0x18003de3d
xor edi, edi
cmp byte [rbx + rcx + 0x210ac8], dil
jne 0x18003e699
mov r14, qword [rsp + 0x68]
mov edx, 1
mov r11d, edx
mov dword [rsp + 0x50], edx
mov r13, qword [rbp - 0x80]
add r15, 0x18
mov rsi, qword [rsp + 0x70]
jmp 0x18003ceea
mov edx, 1
jge 0x18003de76
xor edi, edi
cmp byte [rbx + rcx + 0x210abc], dil
jne 0x18003e69e
mov r14, qword [rsp + 0x68]
mov r11d, 0xffffffff
mov dword [rsp + 0x50], r11d
mov r13, qword [rbp - 0x80]
add r15, 0x18
mov rsi, qword [rsp + 0x70]
jmp 0x18003ceea
xor edi, edi
cmp byte [rbx + rcx + 0x210ac2], dil
jne 0x18003e69e
mov r14, qword [rsp + 0x68]
mov r11d, edi
mov dword [rsp + 0x50], edi
mov r13, qword [rbp - 0x80]
add r15, 0x18
mov rsi, qword [rsp + 0x70]
jmp 0x18003ceea
movzx ecx, di
or cx, si
test cl, 1
je 0x18003df19
mov rax, qword [rsp + 0x48]
movzx eax, word [rax + 2]
test al, al
jns 0x18003def4
test dl, 1
je 0x18003dede
mov eax, 0x100
test ax, di
jne 0x18003dede
xor eax, eax
mov dword [rsp + 0x50], eax
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax]
jmp 0x18003e01a
movzx eax, di
not ax
and eax, 1
lea r11d, [rax*2 - 1]
jmp 0x18003dfec
mov r15, qword [rsp + 0x48]
xor edi, edi
mov edx, 1
test al, 0x10
jne 0x18003e69e
mov r14, qword [rsp + 0x68]
mov r11d, edx
mov dword [rsp + 0x50], edx
jmp case.0x18003cf1b.89
mov rbx, qword [rsp + 0x48]
movzx eax, byte [rbx + 2]
and al, 0x47
cmp al, 0x43
jb 0x18003df64
test cl, 2
je 0x18003dfda
movzx eax, sil
and al, 0x2e
cmp al, 2
jne 0x18003df4a
xor edx, edx
mov rcx, r15
call fcn.18003c6c0
movzx edi, word [r14 + 0x14]
movzx eax, dil
and al, 0x2e
cmp al, 2
jne 0x18003dfda
xor edx, edx
mov rcx, r14
call fcn.18003c6c0
jmp 0x18003dfda
cmp al, 0x42
jne 0x18003dfda
test cl, 2
je 0x18003dfda
test sil, 2
jne 0x18003dfaa
test sil, 0x2c
je 0x18003dfaa
mov r8b, 1
movzx edx, r10b
mov rcx, r15
call fcn.180031e70
xor si, word [r15 + 0x14]
mov r13d, 0xdbf
and si, r13w
xor si, word [r15 + 0x14]
cmp r15, r14
jne 0x18003dfb0
movzx edi, si
or di, 2
jmp 0x18003dfb0
mov r13d, 0xdbf
test dil, 2
jne 0x18003dfda
test dil, 0x2c
je 0x18003dfda
movzx edx, byte [rsp + 0x40]
mov r8b, 1
mov rcx, r14
call fcn.180031e70
xor di, word [r14 + 0x14]
and di, r13w
xor di, word [r14 + 0x14]
mov r8, qword [rbx + 0x10]
mov rdx, r15
mov rcx, r14
call fcn.1800377f0
mov r11d, eax
mov rax, qword [rsp + 0x48]
mov ecx, r11d
mov dword [rsp + 0x50], r11d
movzx eax, byte [rax]
test r11d, r11d
jns 0x18003e012
lea rcx, [0x180000000]
movzx edx, byte [rax + rcx + 0x210abc]
jmp 0x18003e04b
mov dword [rsp + 0x50], ecx
test ecx, ecx
jne 0x18003e030
mov r11d, dword [rsp + 0x50]
lea rcx, [0x180000000]
movzx edx, byte [rax + rcx + 0x210ac2]
jmp 0x18003e04b
lea r13, [0x180000000]
mov dword [rsp + 0x50], ecx
movzx edx, byte [rax + r13 + 0x210ac8]
lea rcx, [0x180000000]
mov r8d, dword [rsp + 0x44]
mov r9, qword [rsp + 0x58]
mov word [r14 + 0x14], di
xor edi, edi
mov word [r15 + 0x14], si
test dl, dl
mov r15, qword [rsp + 0x48]
lea edx, [rdi + 1]
jne 0x1800426a7
mov r14, qword [rsp + 0x68]
movzx r10d, byte [rsp + 0x40]
mov r13, qword [rbp - 0x80]
add r15, 0x18
mov rsi, qword [rsp + 0x70]
jmp 0x18003ceea
test r11d, r11d
je 0x18003e69e
jmp case.0x18003cf1b.89
mov rax, qword [rsp + 0x48]
test byte [rax + 2], 1
jne 0x18003e0ac
mov r13, rdi
jmp 0x18003e0b4
mov r13, qword [rax - 8]
add r13, 4
mov rcx, qword [rax + 0x10]
xor r15d, r15d
mov r8d, dword [rax + 4]
mov ebx, r15d
mov r9d, dword [rax + 8]
movsxd rax, dword [rax + 0xc]
mov qword [rbp - 0x70], rcx
mov dword [rbp + 0x20], r8d
mov dword [rbp - 0x60], r9d
mov qword [rbp + 0x28], rax
test rax, rax
jle 0x180042e29
lea r14, [rcx + 0x20]
test r13, r13
je 0x18003e0f3
mov edx, dword [r13 + rbx*4]
jmp 0x18003e0f5
mov edx, edi
mov rax, qword [rcx + 0x18]
lea ecx, [rdx + r9]
movzx esi, byte [rbx + rax]
imul rax, rcx, 0x38
lea ecx, [rdx + r8]
and esi, 1
mov r8, qword [r14]
add r12, rax
imul r15, rcx, 0x38
mov rdx, r12
add r15, qword [rsp + 0x78]
mov rcx, r15
call fcn.1800377f0
mov dword [rsp + 0x50], eax
mov r11d, eax
test eax, eax
jne 0x18003e165
mov rcx, qword [rbp - 0x70]
inc edi
mov r8d, dword [rbp + 0x20]
inc rbx
mov r9d, dword [rbp - 0x60]
add r14, 8
mov r12, qword [rsp + 0x78]
cmp rbx, qword [rbp + 0x28]
jl 0x18003e0e7
mov r8d, dword [rsp + 0x44]
mov r15, qword [rsp + 0x48]
mov r14, qword [rsp + 0x68]
jmp 0x18003db56
mov rax, qword [rbp - 0x70]
mov rax, qword [rax + 0x18]
test byte [rbx + rax], 2
je 0x18003e18a
test byte [r15 + 0x14], 1
jne 0x18003e182
test byte [r12 + 0x14], 1
je 0x18003e18a
neg r11d
mov dword [rsp + 0x50], r11d
mov r8d, dword [rsp + 0x44]
mov edx, 1
mov r15, qword [rsp + 0x48]
test esi, esi
je 0x180042bc0
mov r14, qword [rsp + 0x68]
neg r11d
mov r12, qword [rsp + 0x78]
xor edi, edi
movzx r10d, byte [rsp + 0x40]
mov r9, qword [rsp + 0x58]
mov dword [rsp + 0x50], r11d
jmp case.0x18003cf1b.89
mov rax, qword [rsp + 0x48]
test r11d, r11d
jns 0x18003e1e3
mov eax, dword [rax + 4]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r15, [r9 + rcx*8]
jmp case.0x18003cf1b.89
jne 0x18003e1f9
mov eax, dword [rax + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r15, [r9 + rcx*8]
jmp case.0x18003cf1b.89
mov eax, dword [rax + 0xc]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r15, [r9 + rcx*8]
jmp case.0x18003cf1b.89
mov r13, qword [rsp + 0x48]
mov esi, 2
mov edx, esi
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
add rcx, r12
call fcn.180032250
movsxd rcx, dword [r13 + 8]
mov edx, esi
imul rcx, rcx, 0x38
mov ebx, eax
add rcx, r12
call fcn.180032250
lea eax, [rax + rbx*2]
add eax, ebx
cmp byte [r13], 0x2c
movsxd rcx, eax
mov rax, r13
lea r13, [0x180000000]
jne 0x18003e261
movzx r8d, byte [rcx + r13 + 0x213a28]
jmp 0x18003e26a
movzx r8d, byte [rcx + r13 + 0x214d28]
movsxd rax, dword [rax + 0xc]
imul rdx, rax, 0x38
movzx ecx, word [rdx + r12 + 0x14]
cmp r8b, sil
jne 0x18003e2a3
mov r8d, dword [rsp + 0x44]
mov eax, 0xf241
mov r15, qword [rsp + 0x48]
and cx, ax
mov r11d, dword [rsp + 0x50]
or cx, 1
mov word [rdx + r12 + 0x14], cx
jmp 0x18003db58
mov r15, qword [rsp + 0x48]
mov r11d, dword [rsp + 0x50]
movzx eax, r8b
mov r8d, dword [rsp + 0x44]
mov qword [rdx + r12], rax
mov eax, 0xf244
and cx, ax
or cx, 4
mov word [rdx + r12 + 0x14], cx
jmp 0x18003db58
mov r8, qword [rsp + 0x48]
movsxd rax, dword [r8 + 4]
mov edx, dword [r8 + 0xc]
imul rcx, rax, 0x38
add rcx, r12
call fcn.180032250
movsxd rcx, eax
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 0x10]
movsxd rax, dword [rax + 8]
xor rdx, rcx
imul rcx, rax, 0x38
add rcx, r12
call fcn.1800327e0
mov r8d, dword [rsp + 0x44]
mov r11d, dword [rsp + 0x50]
mov r15, qword [rsp + 0x48]
jmp 0x18003db58
mov r8, qword [rsp + 0x48]
movsxd rax, dword [r8 + 4]
imul rcx, rax, 0x38
movsxd rax, dword [r8 + 8]
imul rbx, rax, 0x38
add rcx, r12
add rbx, r12
test byte [rcx + 0x14], 1
jne 0x18003e369
xor edx, edx
call fcn.180032250
test eax, eax
mov rdx, rdi
mov rcx, rbx
sete dl
call fcn.1800327e0
mov r8d, dword [rsp + 0x44]
mov r11d, dword [rsp + 0x50]
mov r15, qword [rsp + 0x48]
jmp 0x18003db58
mov rcx, rbx
call fcn.180032730
mov r8d, dword [rsp + 0x44]
mov r11d, dword [rsp + 0x50]
mov r15, qword [rsp + 0x48]
jmp 0x18003db58
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rdi, r12
add rbx, r12
mov rcx, rbx
call fcn.180032730
test byte [rdi + 0x14], 1
jne 0x180042bac
mov eax, 4
mov rcx, rdi
mov word [rbx + 0x14], ax
call fcn.180032190
mov r15, qword [rsp + 0x48]
not rax
mov r8d, dword [rsp + 0x44]
mov qword [rbx], rax
jmp 0x18003db51
mov r8, qword [r14 + 0x108]
test r8, r8
je 0x18003e439
mov rcx, qword [rsp + 0x48]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [r14 + 0x88]
mov r9, qword [r8 + 0x28]
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov ecx, edx
and edx, 7
shr rcx, 3
movzx eax, byte [rcx + r9]
bt eax, edx
jb 0x18003e68a
bts eax, edx
mov edx, 1
mov byte [rcx + r9], al
mov r9, qword [rsp + 0x58]
jmp 0x18003e451
mov rax, qword [rsp + 0x48]
mov rcx, qword [r14 + 0x88]
mov eax, dword [rax + 4]
cmp dword [rcx + 4], eax
je 0x180042e1a
mov rax, qword [r14 + 0x88]
mov r15, qword [rsp + 0x48]
mov ecx, dword [rax + 4]
mov dword [r15 + 4], ecx
mov r8d, dword [rsp + 0x44]
jmp case.0x18003cf1b.89
mov r8, qword [rsp + 0x48]
movsxd rax, dword [r8 + 4]
mov edx, dword [r8 + 0xc]
imul rcx, rax, 0x38
add rcx, r12
call fcn.180032250
mov r8d, dword [rsp + 0x44]
mov edx, 1
mov r15, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
test eax, eax
jne 0x1800426a7
movzx r10d, byte [rsp + 0x40]
mov r11d, dword [rsp + 0x50]
jmp case.0x18003cf1b.89
mov rax, qword [rsp + 0x48]
mov edx, edi
cmp dword [rax + 0xc], 0
movsxd rax, dword [rax + 4]
sete dl
imul rcx, rax, 0x38
add rcx, r12
call fcn.180032250
mov r8d, dword [rsp + 0x44]
mov edx, 1
mov r15, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
test eax, eax
je 0x1800426a7
movzx r10d, byte [rsp + 0x40]
mov r11d, dword [rsp + 0x50]
jmp case.0x18003cf1b.89
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
test byte [rcx + r12 + 0x14], 1
jne 0x18003e69e
jmp case.0x18003cf1b.89
mov r8, qword [rsp + 0x48]
movsxd rax, dword [r8 + 4]
test eax, eax
js 0x18003e57c
mov rcx, rax
mov rax, qword [r14 + 0x78]
mov rdx, qword [rax + rcx*8]
movsxd rcx, dword [r8 + 0xc]
movzx eax, word [rdx + 0x4a]
cmp ecx, eax
jge 0x18003e574
mov ecx, dword [rdx + rcx*4 + 0x78]
cmp ecx, 0xc
jb 0x18003e560
test cl, 1
mov edx, 4
mov eax, 8
cmove dx, ax
jmp 0x18003e5a1
mov rax, rcx
lea rcx, [0x180000000]
movzx edx, byte [rax + rcx + 0x20fa58]
jmp 0x18003e5a8
mov ecx, dword [r8 + 0x10]
dec ecx
jmp 0x18003e599
movsxd rax, dword [r8 + 0xc]
imul rcx, rax, 0x38
add rcx, r12
call fcn.1800391b0
mov r8, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
lea ecx, [rax - 1]
mov edx, 1
shl dx, cl
lea rcx, [0x180000000]
test word [r8 + 2], dx
mov edx, 1
mov r8d, dword [rsp + 0x44]
mov r15, qword [rsp + 0x48]
jne 0x18003e69e
movzx r10d, byte [rsp + 0x40]
mov r11d, dword [rsp + 0x50]
mov r13, qword [rbp - 0x80]
add r15, 0x18
mov rsi, qword [rsp + 0x70]
jmp 0x18003ceea
mov r8, qword [rsp + 0x48]
movsxd rax, dword [r8 + 4]
imul rcx, rax, 0x38
test byte [rcx + r12 + 0x14], 1
jne 0x18004107f
movsxd rax, dword [r8 + 0xc]
imul rcx, rax, 0x38
test byte [rcx + r12 + 0x14], 1
jne 0x18004107f
movsxd rax, dword [r8 + 8]
xor edx, edx
imul rcx, rax, 0x38
add rcx, r12
call fcn.1800327e0
mov r8d, dword [rsp + 0x44]
mov r11d, dword [rsp + 0x50]
mov r15, qword [rsp + 0x48]
jmp 0x18003db58
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
test byte [rcx + r12 + 0x14], 1
je 0x18003e69e
jmp case.0x18003cf1b.89
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r14 + 0x78]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je 0x18003d030
cmp byte [rdx + 2], 0
je 0x18003d030
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, r12
call fcn.180032730
mov r15, qword [rsp + 0x48]
mov r8d, dword [rsp + 0x44]
mov r9, qword [rsp + 0x58]
mov edx, 1
mov eax, dword [r15 + 8]
mov r14, qword [rsp + 0x68]
dec eax
movzx r10d, byte [rsp + 0x40]
mov r11d, dword [rsp + 0x50]
cdqe
lea rcx, [rax + rax*2]
lea r15, [r9 + rcx*8]
jmp case.0x18003cf1b.89
mov r8, qword [rsp + 0x48]
mov rax, qword [r14 + 0x78]
mov r15, qword [rsp + 0x68]
movsxd rcx, dword [r8 + 4]
mov r14d, dword [r8 + 8]
mov rbx, qword [rax + rcx*8]
mov dword [rbp + 0x20], r14d
mov r12, qword [rbx + 0x58]
mov eax, dword [r15 + 0x2c]
mov qword [rbp + 0x28], r12
cmp dword [rbx + 0x20], eax
je 0x18003e72b
cmp byte [rbx + 2], 0
jne 0x18003e789
cmp byte [rbx + 3], 0
mov rdi, qword [rbx + 0x30]
je 0x18003e724
mov rdx, qword [rbx + 0x10]
test rdx, rdx
je 0x18003e753
lea eax, [r14 + 1]
mov eax, dword [rdx + rax*4]
test eax, eax
je 0x18003e753
mov rbx, qword [rbx + 0x28]
lea r14d, [rax - 1]
jmp 0x18003e6dd
cmp byte [rdi], 0
je 0x18003e76a
jmp 0x18003e738
mov rax, qword [rbx + 0x30]
cmp byte [rax], 0
je 0x18003e85d
mov rcx, rbx
call fcn.180036f80
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
je 0x18003e6e1
mov r14, r15
jmp 0x180043008
mov rcx, rbx
call fcn.180036f10
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18004357f
mov rcx, rdi
call fcn.180026670
lea rsi, [rbx + 0x6c]
mov dword [rbx + 0x68], eax
mov rdx, rsi
mov rcx, rdi
call fcn.180026d50
mov rcx, rax
jmp 0x18003e7b9
cmp byte [rbx], 3
jne 0x18003e839
movsxd rax, dword [rbx + 0x24]
test eax, eax
jle 0x18003e839
mov rdx, qword [rsp + 0x78]
lea rsi, [rbx + 0x6c]
imul rcx, rax, 0x38
mov eax, dword [rcx + rdx + 0x10]
mov dword [rsi], eax
mov dword [rbx + 0x68], eax
mov rcx, qword [rcx + rdx + 8]
mov qword [rbx + 0x60], rcx
lea rdi, [rbx + 0x40]
mov eax, dword [r15 + 0x2c]
mov dword [rbx + 0x20], eax
movzx eax, byte [rcx]
mov dword [r12], eax
mov qword [rbp - 0x70], rdi
cmp eax, 0x80
jae 0x18003e7e1
mov eax, 1
jmp 0x18003e7f0
mov rcx, qword [rbx + 0x60]
mov rdx, r12
call fcn.18000cf30
movzx eax, al
mov dword [rdi], eax
lea r13, [rbx + 0x4a]
xor eax, eax
mov word [r13], ax
mov eax, dword [r12]
cmp dword [rsi], eax
jae 0x18003e82c
xor edi, edi
mov qword [rbx + 0x60], rdi
mov dword [rsi], edi
mov eax, dword [r12]
cmp eax, 0x18003
ja 0x18003e9c4
cmp eax, dword [rbx + 0x68]
ja 0x18003e9c4
mov rsi, qword [rsp + 0x70]
jmp 0x18003e861
mov rax, qword [rbx + 0x60]
mov qword [rbp - 0x60], rax
jmp 0x18003e8d1
mov rax, qword [rsp + 0x48]
mov r12, qword [rsp + 0x78]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, r12
call fcn.180032730
mov r15, qword [rsp + 0x48]
jmp 0x18003dae6
lea r13, [rbx + 0x4a]
movzx eax, word [r13]
cmp eax, r14d
ja 0x18003ea4e
mov eax, dword [r12]
lea rdi, [rbx + 0x40]
mov qword [rbp - 0x70], rdi
cmp dword [rdi], eax
jae 0x18003e9f1
mov rax, qword [rbx + 0x60]
mov qword [rbp - 0x60], rax
test rax, rax
jne 0x18003e8cd
xorps xmm0, xmm0
mov qword [rbp - 0x20], rax
movups xmmword [rbp - 0x50], xmm0
lea r8, [rbp - 0x50]
movups xmmword [rbp - 0x40], xmm0
movups xmmword [rbp - 0x30], xmm0
mov edx, dword [r12]
mov rcx, qword [rbx + 0x30]
call fcn.180032fc0
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18004357b
mov rax, qword [rbp - 0x48]
mov qword [rbp - 0x60], rax
jmp 0x18003e8d1
mov qword [rbp - 0x70], rdi
movzx r15d, word [r13]
mov edi, dword [rdi]
mov r14d, r15d
add rdi, rax
mov esi, dword [r12 + r15*4]
mov r12d, dword [r12]
add r12, rax
nop dword [rax]
movzx eax, byte [rdi]
mov dword [rbp - 0x68], eax
mov dword [rbx + r14*4 + 0x78], eax
mov eax, dword [rbp - 0x68]
cmp eax, 0x80
jae 0x18003e915
inc rdi
movzx ecx, al
call fcn.180037010
movzx eax, al
jmp 0x18003e939
lea rdx, [rbp - 0x68]
mov rcx, rdi
call fcn.18000cf30
movzx eax, al
add rdi, rax
mov eax, dword [rbp - 0x68]
mov dword [rbx + r14*4 + 0x78], eax
mov ecx, dword [rbp - 0x68]
call fcn.180036ff0
mov eax, eax
mov rcx, qword [rbp + 0x28]
inc r15d
add rsi, rax
movsxd r14, r15d
mov dword [rcx + r14*4], esi
cmp r15d, dword [rbp + 0x20]
ja 0x18003e957
cmp rdi, r12
jb 0x18003e8f0
jmp 0x18003e95c
cmp rdi, r12
jb 0x18003e99b
cmp rdi, r12
ja 0x18003e9a3
mov eax, dword [rbx + 0x68]
cmp rsi, rax
jne 0x18003e9a3
sub edi, dword [rbp - 0x60]
cmp qword [rbx + 0x60], 0
mov rax, qword [rbp - 0x70]
mov word [r13], r15w
mov dword [rax], edi
jne 0x18003e987
lea rcx, [rbp - 0x50]
call fcn.180032130
mov edx, dword [rbp - 0x68]
xor edi, edi
mov r12, qword [rbp + 0x28]
mov r14d, dword [rbp + 0x20]
mov r15, qword [rsp + 0x68]
jmp 0x18003e9f8
mov eax, dword [rbx + 0x68]
cmp rsi, rax
jbe 0x18003e969
cmp dword [rcx], 0
jne 0x18003e9b2
xor eax, eax
mov rdi, r12
mov r15d, eax
jmp 0x18003e969
cmp qword [rbx + 0x60], 0
jne 0x18003e9c2
lea rcx, [rbp - 0x50]
call fcn.180032130
xor edi, edi
mov r9, qword [rsp + 0x58]
mov eax, dword [r9 + 0xc]
test eax, eax
jle 0x180042f89
mov r14, qword [rsp + 0x68]
dec eax
mov r12, qword [rsp + 0x78]
movsxd rcx, eax
lea rax, [rcx + rcx*2]
lea r8, [r9 + rax*8]
jmp 0x18003d0d2
xor edi, edi
mov edx, edi
mov dword [rbp - 0x68], edx
movzx eax, word [r13]
cmp eax, r14d
ja 0x18003ea49
mov rdx, qword [rsp + 0x48]
mov r12, qword [rsp + 0x78]
movsxd rax, dword [rdx + 0xc]
imul rcx, rax, 0x38
add rcx, r12
cmp byte [rdx + 1], 0xf6
jne 0x18003d752
mov rdx, qword [rdx + 0x10]
mov r8d, 0x2000
call fcn.180032a60
mov r8d, dword [rsp + 0x44]
mov r11d, dword [rsp + 0x50]
mov r14, qword [rsp + 0x68]
mov r15, qword [rsp + 0x48]
jmp 0x18003db58
mov esi, r14d
jmp 0x18003ea58
mov esi, r14d
mov edx, dword [rbx + rsi*4 + 0x78]
mov dword [rbp - 0x68], edx
mov r8, qword [rsp + 0x48]
movsxd rax, dword [r8 + 0xc]
imul rdi, rax, 0x38
mov eax, 0x9000
add rdi, qword [rsp + 0x78]
test word [rdi + 0x14], ax
je 0x18003ea85
mov rcx, rdi
call fcn.180032730
mov edx, dword [rbp - 0x68]
mov r8, qword [rsp + 0x48]
lea eax, [r14 + 1]
mov eax, dword [r12 + rax*4]
cmp dword [rbx + 0x6c], eax
jb 0x18003eb85
mov esi, dword [r12 + rsi*4]
add rsi, qword [rbx + 0x60]
cmp edx, 0xc
jae 0x18003eac2
mov rcx, rsi
mov r8, rdi
call fcn.180037020
mov r8d, dword [rsp + 0x44]
mov r15, qword [rsp + 0x48]
mov r12, qword [rsp + 0x78]
jmp 0x18003daeb
movzx eax, byte [rsp + 0x40]
lea ebx, [rdx - 0xc]
shr ebx, 1
mov dword [rdi + 0x10], ebx
mov byte [rdi + 0x16], al
lea edx, [rbx + 2]
cmp dword [rdi + 0x20], edx
jge 0x18003eb09
mov r13, qword [rbp - 0x80]
cmp ebx, dword [r13 + 0x88]
jg 0x18004320f
mov eax, 1
xor r8d, r8d
mov rcx, rdi
mov word [rdi + 0x14], ax
call fcn.1800319c0
test eax, eax
jne 0x18004354a
jmp 0x18003eb11
mov rax, qword [rdi + 0x28]
mov qword [rdi + 8], rax
mov rcx, qword [rdi + 8]
mov r8, rbx
mov rdx, rsi
call fcn.1801a1710
mov rax, qword [rdi + 8]
lea rcx, [0x180000000]
mov r8d, dword [rsp + 0x44]
mov r15, qword [rsp + 0x48]
mov r14, qword [rsp + 0x68]
mov r12, qword [rsp + 0x78]
movzx r10d, byte [rsp + 0x40]
mov r11d, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
mov byte [rbx + rax], 0
mov rax, qword [rdi + 8]
mov byte [rbx + rax + 1], 0
mov eax, dword [rbp - 0x68]
and eax, 1
movzx eax, word [rcx + rax*2 + 0x20e2fc]
mov word [rdi + 0x14], ax
xor edi, edi
lea edx, [rdi + 1]
mov r13, qword [rbp - 0x80]
add r15, 0x18
mov rsi, qword [rsp + 0x70]
jmp 0x18003ceea
movzx eax, byte [rsp + 0x40]
mov byte [rdi + 0x16], al
movzx eax, byte [r8 + 2]
mov edx, dword [rbp - 0x68]
and al, 0xc0
je 0x18003ebab
cmp al, 0x80
je 0x18003ebb9
cmp edx, 0xc
jb 0x18003ebab
test dl, 1
je 0x18003ebb9
cmp al, 0xc0
je 0x18003ebb9
mov ecx, edx
call fcn.180036ff0
test eax, eax
jne 0x18003ebc5
mov edx, dword [rbp - 0x68]
lea rcx, [0x18020f900]
jmp 0x18003eaa6
mov eax, dword [rbp - 0x74]
mov edx, r14d
mov r9d, dword [r12 + rsi*4]
mov rcx, rbx
mov r8d, dword [rbp - 0x68]
mov qword [rsp + 0x30], rdi
mov dword [rsp + 0x28], eax
mov eax, dword [r15 + 0x2c]
mov dword [rsp + 0x20], eax
call fcn.18003cb00
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
je 0x18003eab3
mov r13, qword [rbp - 0x80]
mov r14, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
cmp eax, 7
je 0x180043554
cmp eax, 0x12
je 0x180043219
jmp 0x180043008
mov rax, qword [rsp + 0x48]
mov r14, qword [rax + 0x10]
movsxd rax, dword [rax + 4]
imul rsi, rax, 0x38
mov r15, qword [r14 + 8]
xor eax, eax
add rsi, r12
cmp ax, word [r14 + 0x36]
jge 0x180042e67
lea rbx, [r15 + 0xc]
nop dword [rax]
movzx eax, word [rbx + 6]
test al, 0x60
je 0x18003ec6f
test al, 0x20
jne 0x18003ed1d
mov rax, qword [rsp + 0x48]
cmp dword [rax + 0xc], 0
jne 0x18003ed19
movzx edx, byte [rbx]
movzx r8d, r10b
mov rcx, rsi
call fcn.18003c830
movzx ecx, word [rsi + 0x14]
test cl, 1
jne 0x18003ed19
mov eax, dword [rbx - 4]
shr eax, 4
and eax, 0xf
sub eax, 2
je 0x18003ed10
sub eax, 1
je 0x18003ed0b
sub eax, 1
je 0x18003ed0b
sub eax, 1
je 0x18003ecb2
cmp eax, 1
jne 0x18003ed19
test cl, 2
jmp 0x18003ed13
test cl, 4
je 0x18003ed06
mov rdx, qword [rsi]
movabs rax, 0x800000000000
add rax, rdx
movabs r8, 0xffffffffffff
cmp rax, r8
ja 0x18003ece8
or cx, 0x20
mov eax, 0xfffb
and cx, ax
mov word [rsi + 0x14], cx
jmp 0x18003ed19
xorps xmm0, xmm0
or cx, 8
cvtsi2sd xmm0, rdx
mov eax, 0xfffb
and cx, ax
movsd qword [rsi], xmm0
mov word [rsi + 0x14], cx
jmp 0x18003ed19
test cl, 0x28
jmp 0x18003ed13
test cl, 4
jmp 0x18003ed13
test cl, 0x10
je 0x180042fa5
add rsi, 0x38
movsx eax, word [r14 + 0x36]
inc edi
movzx r10d, byte [rsp + 0x40]
add rbx, 0x18
cmp edi, eax
jl 0x18003ec50
mov r8d, dword [rsp + 0x44]
xor edi, edi
mov r15, qword [rsp + 0x48]
mov r14, qword [rsp + 0x68]
mov r11d, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
jmp 0x18003db63
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, r12
nop dword [rax]
movzx r8d, r10b
movzx edx, al
mov rcx, rbx
call fcn.18003c830
cmp byte [rdi], 0x45
jne 0x18003edd6
movzx ecx, word [rbx + 0x14]
test cl, 4
je 0x18003edd6
mov rdx, qword [rbx]
movabs rax, 0x800000000000
add rax, rdx
movabs r8, 0xffffffffffff
cmp rax, r8
ja 0x18003edba
mov eax, 0xfffb
and cx, ax
or cx, 0x20
jmp 0x18003edd2
xorps xmm0, xmm0
mov eax, 0xfff9
cvtsi2sd xmm0, rdx
and cx, ax
or cx, 8
movsd qword [rbx], xmm0
mov word [rbx + 0x14], cx
movzx eax, byte [rdi + 1]
inc rdi
test al, al
je 0x180042bac
movzx r10d, byte [rsp + 0x40]
add rbx, 0x38
jmp 0x18003ed70
mov r8, qword [rsp + 0x48]
mov r14, rdi
mov r12d, edi
mov r13, rdi
movsxd rax, dword [r8 + 4]
mov rdi, qword [r8 + 0x10]
imul rcx, rax, 0x38
mov eax, dword [r8 + 8]
add rcx, qword [rsp + 0x78]
dec eax
cdqe
imul rsi, rax, 0x38
movsxd rax, dword [r8 + 0xc]
imul rdx, rax, 0x38
add rsi, rcx
mov qword [rbp + 0x28], rcx
add rdx, qword [rsp + 0x78]
mov qword [rbp - 0x70], rsi
mov qword [rbp - 0x60], rdx
test rdi, rdi
je 0x18003ee8f
movzx eax, byte [rdi]
lea rbx, [rcx + 0x14]
mov esi, 0xfffb
nop dword [rax]
lea rcx, [rbx - 0x14]
movzx r8d, r10b
movzx edx, al
call fcn.18003c830
cmp byte [rdi], 0x45
jne 0x18003ee76
movzx eax, word [rbx]
test al, 4
je 0x18003ee76
and ax, si
or ax, 0x20
mov word [rbx], ax
movzx eax, byte [rdi + 1]
inc rdi
movzx r10d, byte [rsp + 0x40]
add rbx, 0x38
test al, al
jne 0x18003ee50
mov rsi, qword [rbp - 0x70]
lea r15, [rsi + 0x24]
movzx ecx, word [r15 - 0x10]
test cl, 1
je 0x18003eeb8
mov eax, 0x400
and cx, ax
neg cx
sbb eax, eax
and eax, 0xa
mov dword [r15], eax
inc r12d
jmp 0x18003f01c
test cl, 0x24
je 0x18003efb7
mov r8, qword [r15 - 0x24]
mov rdx, r8
test r8, r8
jns 0x18003eed0
not rdx
inc r12d
cmp rdx, 0x7f
ja 0x18003ef0d
mov rax, r8
and eax, 1
cmp rax, r8
jne 0x18003eefd
mov rax, qword [rsp + 0x68]
cmp byte [rax + 0xc5], 4
jb 0x18003eefd
lea eax, [rdx + 8]
mov dword [r15], eax
jmp 0x18003f01c
mov eax, 1
inc r14
mov dword [r15], eax
jmp 0x18003f01c
cmp rdx, 0x7fff
ja 0x18003ef27
mov eax, 2
add r14, 2
mov dword [r15], eax
jmp 0x18003f01c
cmp rdx, 0x7fffff
ja 0x18003ef41
mov eax, 3
add r14, 3
mov dword [r15], eax
jmp 0x18003f01c
cmp rdx, 0x7fffffff
ja 0x18003ef5b
mov eax, 4
add r14, 4
mov dword [r15], eax
jmp 0x18003f01c
movabs rax, 0x7fffffffffff
cmp rdx, rax
ja 0x18003ef7b
mov eax, 5
add r14, 6
mov dword [r15], eax
jmp 0x18003f01c
add r14, 8
test cl, 0x20
je 0x18003efad
mov eax, 0xffdf
xorps xmm0, xmm0
and cx, ax
mov eax, 7
cvtsi2sd xmm0, r8
or cx, 8
mov word [r15 - 0x10], cx
movsd qword [r15 - 0x24], xmm0
mov dword [r15], eax
jmp 0x18003f01c
mov eax, 6
mov dword [r15], eax
jmp 0x18003f01c
test cl, 8
je 0x18003efcc
inc r12d
mov dword [r15], 7
add r14, 8
jmp 0x18003f01c
mov edi, dword [r15 - 0x14]
mov eax, ecx
shr eax, 1
and eax, 1
bt cx, 0xa
lea esi, [rdi + 6]
lea esi, [rax + rsi*2]
jae 0x18003f00a
movsxd rax, dword [r15 - 0x24]
lea esi, [rsi + rax*2]
test r14, r14
je 0x18003f007
lea rcx, [r15 - 0x24]
call fcn.180031e00
test eax, eax
jne 0x180043546
add edi, dword [r15 - 0x24]
jmp 0x18003f00a
add r13, rax
mov eax, edi
mov ecx, esi
add r14, rax
call fcn.18000cfb0
add r12d, eax
mov dword [r15], esi
lea rax, [r15 - 0x24]
cmp rax, qword [rbp + 0x28]
je 0x18003f02f
sub r15, 0x38
jmp 0x18003ee93
cmp r12d, 0x7e
jle 0x18003f04e
movsxd rcx, r12d
call fcn.18000cfb0
add r12d, eax
mov ebx, eax
movsxd rcx, r12d
call fcn.18000cfb0
cmp ebx, eax
jge 0x18003f051
inc r12d
mov rdi, qword [rbp - 0x60]
movsxd r15, r12d
movsxd rax, dword [rdi + 0x20]
lea rbx, [r14 + r15]
lea rcx, [rbx + r13]
cmp rcx, rax
jg 0x18003f073
mov rax, qword [rdi + 0x28]
mov qword [rdi + 8], rax
jmp 0x18003f099
mov rax, qword [rbp - 0x80]
movsxd rax, dword [rax + 0x88]
cmp rcx, rax
jg 0x18004320b
mov edx, ebx
mov rcx, rdi
call fcn.180031c60
test eax, eax
jne 0x180043546
mov dword [rdi + 0x10], ebx
mov eax, reloc.WS2_32.dll_recv
mov word [rdi + 0x14], ax
test r13, r13
je 0x18003f0b6
mov eax, 0x410
mov dword [rdi], r13d
mov word [rdi + 0x14], ax
mov rdi, qword [rdi + 8]
lea rsi, [r15 + rdi]
cmp r12d, 0x80
jge 0x18003f0cf
mov byte [rdi], r12b
inc rdi
jmp 0x18003f0e0
mov rdx, r15
mov rcx, rdi
call fcn.18000cd00
movsxd rcx, eax
add rdi, rcx
mov rbx, qword [rbp + 0x28]
lea r13, [0x180000000]
mov r14, qword [rbp - 0x70]
add rbx, 0x10
mov eax, dword [rbx + 0x14]
cmp eax, 7
ja 0x18003f145
mov byte [rdi], al
inc rdi
test eax, eax
je 0x18003f18c
movzx ecx, byte [rax + r13 + 0x2100a0]
mov r10d, 0xffffffff
mov rdx, qword [rbx - 0x10]
mov r9d, ecx
add ecx, r10d
lea r8, [rcx + rsi]
mov byte [r8], dl
je 0x18003f140
nop word [rax + rax]
shr rdx, 8
lea r8, [r8 - 1]
mov byte [r8], dl
add ecx, r10d
jne 0x18003f130
add rsi, r9
jmp 0x18003f18c
cmp eax, 0x80
jae 0x18003f15f
mov byte [rdi], al
inc rdi
cmp eax, 0xe
jb 0x18003f18c
movsxd rax, dword [rbx]
test eax, eax
jle 0x18003f18c
jmp 0x18003f177
mov rdx, rax
mov rcx, rdi
call fcn.18000cd00
movsxd rcx, eax
movsxd rax, dword [rbx]
add rdi, rcx
test eax, eax
je 0x18003f18c
mov rdx, qword [rbx - 8]
mov r8, rax
mov rcx, rsi
call fcn.1801a1710
movsxd rax, dword [rbx]
add rsi, rax
lea rax, [rbx - 0x10]
cmp rax, r14
je 0x180042bac
add rbx, 0x38
jmp 0x18003f0f3
mov r8, qword [rsp + 0x48]
mov rax, qword [r14 + 0x78]
cmp dword [r8 + 0xc], 0
movsxd rcx, dword [r8 + 4]
mov rcx, qword [rax + rcx*8]
mov rdx, qword [rcx + 0x30]
je 0x18003f1cf
mov rcx, rdx
call fcn.180027cc0
mov qword [rbp + 0xa0], rax
jmp 0x18003f1f4
lea r8, [rbp + 0xa0]
mov qword [rbp + 0xa0], rdi
mov rcx, r13
call fcn.18002f1a0
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x180043008
mov rdx, qword [rsp + 0x48]
mov rcx, r14
call fcn.18003c9d0
mov rcx, qword [rbp + 0xa0]
mov qword [rax], rcx
jmp 0x18004168e
mov rax, qword [rsp + 0x48]
mov r14d, dword [rax + 4]
mov rdi, qword [rax + 0x10]
mov dword [rbp - 0x60], r14d
test r14d, r14d
jne 0x18003f2df
cmp dword [r13 + 0xe0], r14d
jg 0x18004303a
mov rcx, rdi
call fcn.18000a850
mov r8d, dword [r13 + 0x2f4]
xor edx, edx
add r8d, dword [r13 + 0x2f0]
mov rcx, r13
movsxd rsi, eax
call fcn.1800a7a70
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x180042f9e
lea rdx, [rsi + 0x21]
mov rcx, r13
call fcn.180007150
mov rbx, rax
test rax, rax
je 0x18003f2d5
lea r9, [rax + 0x20]
mov rdx, rdi
lea ecx, [rsi + 1]
mov qword [rax], r9
movsxd r8, ecx
mov rcx, r9
call fcn.1801a1710
cmp byte [r13 + 0x65], r14b
je 0x18003f2a6
mov byte [r13 + 0x65], r14b
mov byte [r13 + 0x6d], 1
jmp 0x18003f2ad
inc dword [r13 + 0x2f0]
mov rax, qword [r13 + 0x2e0]
mov qword [rbx + 0x18], rax
mov rax, qword [r13 + 0x2f8]
mov qword [r13 + 0x2e0], rbx
mov qword [rbx + 8], rax
mov rax, qword [r13 + 0x300]
mov qword [rbx + 0x10], rax
mov r8d, dword [rsp + 0x44]
jmp 0x18003f568
mov rsi, qword [r13 + 0x2e0]
xor ebx, ebx
mov r12d, ebx
test rsi, rsi
je 0x18003f30b
mov rcx, qword [rsi]
mov rdx, rdi
call fcn.18000abf0
test eax, eax
je 0x18003f33a
mov rsi, qword [rsi + 0x18]
inc r12d
test rsi, rsi
jne 0x18003f2f0
mov r14, qword [rsp + 0x68]
lea rdx, str.no_such_savepoint:__s
mov rcx, r14
mov r8, rdi
call fcn.1800338c0
mov rsi, qword [rsp + 0x70]
mov r15d, 1
mov r8d, r15d
mov dword [rsp + 0x44], r15d
jmp 0x18004300e
cmp dword [r13 + 0xe0], ebx
jle 0x18003f34d
cmp r14d, 1
je 0x18004305b
cmp qword [rsi + 0x18], rbx
jne 0x18003f3bc
cmp byte [r13 + 0x6d], bl
je 0x18003f3bc
mov r15d, 1
mov dword [rbp + 0x20], r15d
cmp r14d, r15d
jne 0x18003f3bf
mov rbx, qword [rsp + 0x68]
mov edx, r15d
mov rcx, rbx
call fcn.180036610
mov edi, eax
test eax, eax
jne 0x1800430bb
mov rcx, rbx
mov byte [r13 + 0x65], r15b
call fcn.180036680
cmp eax, 5
je 0x180043086
mov r8d, dword [rbx + 0x34]
mov dword [rsp + 0x44], r8d
test r8d, r8d
jne 0x180043077
mov byte [r13 + 0x6d], r8b
lea r15, [r13 + 0x2f0]
lea ebx, [rdi + 1]
jmp 0x18003f4c9
mov dword [rbp + 0x20], ebx
lea r15, [r13 + 0x2f0]
mov eax, dword [r15]
sub eax, r12d
lea r12d, [rax - 1]
cmp r14d, 2
jne 0x18003f42c
mov rax, qword [rbp - 0x80]
mov edi, ebx
mov r13d, dword [r13 + 0x2c]
and r13d, 1
cmp dword [rax + 0x28], ebx
jle 0x18003f42f
mov r14d, r13d
xor r14d, 1
mov rcx, qword [rax + 0x20]
mov r8d, r14d
mov edx, 0x204
mov rcx, qword [rcx + rbx + 8]
call fcn.180025eb0
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x180042f9a
mov rax, qword [rbp - 0x80]
inc edi
add rbx, 0x20
cmp edi, dword [rax + 0x28]
jl 0x18003f3f0
mov r14d, dword [rbp - 0x60]
xor ebx, ebx
jmp 0x18003f42f
mov r13d, ebx
mov rax, qword [rbp - 0x80]
mov edi, ebx
cmp dword [rax + 0x28], 0
jle 0x18003f474
nop dword [rax + rax]
mov rcx, qword [rax + 0x20]
mov r8d, r12d
mov edx, r14d
mov rcx, qword [rbx + rcx + 8]
call fcn.1800261a0
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x180042f9a
mov rax, qword [rbp - 0x80]
inc edi
add rbx, 0x20
cmp edi, dword [rax + 0x28]
jl 0x18003f440
jmp 0x18003f479
mov r8d, dword [rsp + 0x44]
test r13d, r13d
mov r13, qword [rbp - 0x80]
je 0x18003f4bd
mov rcx, qword [r13 + 8]
test rcx, rcx
je 0x18003f4ab
nop dword [rax + rax]
mov eax, dword [rcx + 0xc8]
and eax, 0xfffffffd
or eax, 1
mov dword [rcx + 0xc8], eax
mov rcx, qword [rcx + 0x10]
test rcx, rcx
jne 0x18003f490
mov rcx, r13
call fcn.180063950
or dword [r13 + 0x2c], 1
mov r8d, dword [rsp + 0x44]
test r8d, r8d
jne 0x180042f9e
mov ebx, dword [rbp + 0x20]
mov rcx, qword [r13 + 0x2e0]
cmp rcx, rsi
je 0x18003f4fa
mov rax, qword [rcx + 0x18]
mov rdx, rcx
mov rcx, r13
mov qword [r13 + 0x2e0], rax
call fcn.180006c50
dec dword [r15]
mov rcx, qword [r13 + 0x2e0]
cmp rcx, rsi
jne 0x18003f4d5
cmp r14d, 1
jne 0x18003f51f
mov rax, qword [rsi + 0x18]
mov rdx, rsi
mov rcx, r13
mov qword [r13 + 0x2e0], rax
call fcn.180006c50
test ebx, ebx
jne 0x18003f55e
dec dword [r15]
jmp 0x18003f53f
mov rax, qword [rsi + 8]
mov qword [r13 + 0x2f8], rax
mov rax, qword [rsi + 0x10]
mov qword [r13 + 0x300], rax
test ebx, ebx
je 0x18003f53f
cmp r14d, 2
jne 0x18003f55e
mov r8d, r12d
mov edx, r14d
mov rcx, r13
call fcn.1800a7a70
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x180042f9e
jmp 0x18003f563
mov r8d, dword [rsp + 0x44]
mov r12, qword [rsp + 0x78]
mov r14, qword [rsp + 0x68]
cmp byte [r14 + 0xc7], 3
jne 0x18003d3dd
mov edi, 0x65
lea r15d, [rdi - 0x64]
jmp 0x1800430be
mov rbx, qword [rsp + 0x48]
mov dword [rbp + 0x20], edi
mov edx, dword [rbx + 8]
test edx, edx
je 0x18003f5af
mov rax, qword [r13 + 0x30]
movabs rcx, 0x200100000
test rcx, rax
jne 0x180043110
movsxd r14, dword [rbx + 4]
shl r14, 5
add r14, qword [r13 + 0x20]
mov rsi, qword [r14 + 8]
test rsi, rsi
je 0x18003f698
lea r8, [rbp + 0x20]
mov rcx, rsi
call fcn.180024b00
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x180043132
mov r15, qword [rsp + 0x68]
test byte [r15 + 0xc8], 0x20
lea rdi, [r15 + 0xc8]
je 0x18003f6ad
lea rdi, [r15 + 0xc8]
cmp dword [rbx + 8], eax
je 0x18003f6ad
cmp byte [r13 + 0x65], al
je 0x18003f628
cmp dword [r13 + 0xdc], 1
lea rdi, [r15 + 0xc8]
jle 0x18003f6ad
mov r8d, dword [r15 + 0x40]
test r8d, r8d
jne 0x18003f64a
inc dword [r13 + 0x2f4]
mov r8d, dword [r13 + 0x2f4]
add r8d, dword [r13 + 0x2f0]
mov dword [r15 + 0x40], r8d
dec r8d
xor edx, edx
mov rcx, r13
call fcn.1800a7a70
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x18003f66f
mov edx, dword [r15 + 0x40]
mov rcx, rsi
call fcn.180026130
mov dword [rsp + 0x44], eax
mov rax, qword [r13 + 0x2f8]
lea rdi, [r15 + 0xc8]
mov r8d, dword [rsp + 0x44]
mov r12, qword [rsp + 0x78]
mov qword [r15 + 0x58], rax
mov rax, qword [r13 + 0x300]
mov qword [r15 + 0x60], rax
jmp 0x18003f6a4
mov rdi, qword [rsp + 0x68]
add rdi, 0xc8
test r8d, r8d
jne 0x180042f9e
cmp word [rbx + 2], 0
mov r15, rbx
je 0x18003db4c
mov eax, dword [r15 + 0xc]
mov rbx, rdi
cmp dword [rbp + 0x20], eax
jne 0x180043180
mov rcx, qword [r14 + 0x18]
mov eax, dword [r15 + 0x10]
mov r14, qword [rsp + 0x68]
cmp dword [rcx + 4], eax
je 0x18003db51
lea rbx, [r14 + 0xc8]
jmp 0x180043185
mov rcx, qword [r13 + 0x20]
lea r8, [rbp + 0x9c]
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
mov edx, dword [r15 + 0xc]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.18002f020
movsxd rax, dword [r15 + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, qword [r14 + 0x68]
test word [rcx + 0x14], ax
je 0x18003f750
call fcn.18003c9a0
mov r8d, dword [rsp + 0x44]
mov rcx, rax
movsxd rax, dword [rbp + 0x9c]
mov r11d, dword [rsp + 0x50]
mov qword [rcx], rax
jmp 0x18003db58
mov r8d, dword [rsp + 0x44]
mov eax, 4
mov r11d, dword [rsp + 0x50]
mov word [rcx + 0x14], ax
movsxd rax, dword [rbp + 0x9c]
mov qword [rcx], rax
jmp 0x18003db58
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 [r13 + 0x20]
mov rcx, qword [rbx + 8]
call fcn.18002f0b0
mov r8, qword [rsp + 0x48]
mov dword [rsp + 0x44], eax
mov eax, dword [r8 + 8]
cmp eax, 1
jne 0x18003f7ce
movzx eax, word [r8 + 2]
mov ecx, dword [r8 + 0xc]
sub ecx, eax
mov rax, qword [rbx + 0x18]
mov dword [rax], ecx
mov rcx, r13
or dword [r13 + 0x2c], 1
mov edx, dword [r8 + 4]
call fcn.180077b50
mov r8, qword [rsp + 0x48]
jmp 0x18003f7df
cmp eax, 2
jne 0x18003f7df
mov rcx, qword [rbx + 0x18]
movzx eax, byte [r8 + 0xc]
mov byte [rcx + 0x70], al
cmp dword [r8 + 4], 1
jne 0x18004246b
xor edx, edx
mov rcx, r13
call fcn.1800388e0
and dword [r14 + 0xc8], 0xfffffffc
jmp 0x18004246b
mov r8, qword [rsp + 0x48]
mov rax, qword [r14 + 0x78]
movsxd rcx, dword [r8 + 4]
mov rdi, qword [rax + rcx*8]
test rdi, rdi
je 0x18003f835
mov eax, dword [r8 + 8]
cmp dword [rdi + 0x44], eax
jne 0x18003f835
mov rcx, qword [rdi + 0x30]
call fcn.1800213d0
jmp 0x18003f942
mov r8, qword [rsp + 0x48]
jmp 0x18003f837
xor edi, edi
mov eax, dword [r14 + 0xc8]
and al, 3
cmp al, 1
je 0x1800431e8
movsxd r12, dword [r8 + 0xc]
xor ecx, ecx
mov r15d, dword [r8 + 8]
mov rax, r12
shl rax, 5
mov r14d, ecx
add rax, qword [r13 + 0x20]
mov r13, qword [rax + 8]
cmp bl, 0x71
jne 0x18003f891
mov rax, qword [rax + 0x18]
movzx esi, word [r8 + 2]
and esi, 8
or esi, 4
movzx ecx, byte [rax + 0x70]
mov rax, qword [rsp + 0x68]
cmp cl, byte [rax + 0xc5]
jae 0x18003f893
mov byte [rax + 0xc5], cl
jmp 0x18003f893
mov esi, ecx
test byte [r8 + 2], 0x10
je 0x18003f8b3
imul rbx, r15, 0x38
add rbx, qword [rsp + 0x78]
mov rcx, rbx
call fcn.180032340
mov r8, qword [rsp + 0x48]
mov r15d, dword [rbx]
movzx eax, byte [r8 + 1]
cmp al, 0xf8
jne 0x18003f8c7
mov r14, qword [r8 + 0x10]
movzx edi, word [r14 + 8]
jmp 0x18003f8cf
cmp al, 0xfd
jne 0x18003f8cf
mov edi, dword [r8 + 0x10]
mov rbx, qword [rsp + 0x48]
xor r9d, r9d
mov rcx, qword [rsp + 0x68]
mov r8d, edi
mov edx, dword [rbx + 4]
call fcn.18003c590
mov rdi, rax
test rax, rax
je 0x180043546
mov rcx, qword [rax + 0x30]
mov r9, r14
or dword [rax + 8], 4
mov r8d, esi
mov qword [rsp + 0x20], rcx
mov edx, r15d
mov rcx, r13
mov byte [rax + 1], r12b
mov byte [rax + 2], 1
mov dword [rax + 0x44], r15d
call fcn.180026380
mov r13, qword [rbp - 0x80]
mov r12, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x70]
mov qword [rdi + 0x38], r14
cmp byte [rbx + 1], 0xf8
mov r14, qword [rsp + 0x68]
mov dword [rsp + 0x44], eax
setne al
mov byte [rdi + 4], al
mov rax, qword [rsp + 0x48]
mov rcx, qword [rdi + 0x30]
movzx edx, word [rax + 2]
and edx, 3
call fcn.180021680
mov r8d, dword [rsp + 0x44]
test r8d, r8d
jne 0x180043008
mov r15, qword [rsp + 0x48]
jmp 0x18003db51
mov rax, qword [rsp + 0x48]
xor r9d, r9d
movsxd rcx, dword [rax + 8]
mov rax, qword [r14 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, r14
mov rax, qword [rsp + 0x48]
movsx r8d, word [rbx + 0x48]
mov edx, dword [rax + 4]
call fcn.18003c590
mov r10, rax
test rax, rax
je 0x180043554
mov edx, dword [rax + 8]
mov r8d, 4
mov byte [rax + 2], 1
or edx, 1
mov dword [rax + 8], edx
mov rcx, qword [rbx + 0x38]
mov qword [rax + 0x38], rcx
movzx ecx, byte [rbx + 4]
mov byte [rax + 4], cl
mov ecx, edx
mov eax, dword [rbx + 0x44]
mov dword [r10 + 0x44], eax
xor ecx, dword [rbx + 8]
and ecx, 4
xor ecx, edx
mov dword [r10 + 8], ecx
or ecx, 8
mov rax, qword [rbx + 0x10]
mov qword [r10 + 0x10], rax
mov dword [r10 + 8], ecx
or dword [rbx + 8], 8
mov rax, qword [r10 + 0x30]
mov r9, qword [r10 + 0x38]
mov edx, dword [r10 + 0x44]
mov rcx, qword [r10 + 0x10]
mov qword [rsp + 0x20], rax
call fcn.180026380
mov r11d, dword [rsp + 0x50]
mov r8d, eax
mov r15, qword [rsp + 0x48]
mov dword [rsp + 0x44], eax
jmp 0x18003db58
mov r8, qword [rsp + 0x48]
movsxd rax, dword [r8 + 0xc]
test eax, eax
jle 0x18003fa48
imul rcx, rax, 0x38
mov dword [rcx + r12 + 0x10], edi
movsxd rax, dword [r8 + 0xc]
imul rcx, rax, 0x38
lea rax, [0x18020734d]
mov qword [rcx + r12 + 8], rax
movsxd rdx, dword [r8 + 4]
mov rax, qword [r14 + 0x78]
mov rbx, qword [rax + rdx*8]
test rbx, rbx
je 0x18003faa1
test byte [rbx + 8], 8
jne 0x18003faa1
movsx eax, word [rbx + 0x48]
cmp dword [r8 + 8], eax
jg 0x18003faa1
mov edx, dword [rbx + 0x44]
xor r8d, r8d
mov rcx, qword [rbx + 0x10]
mov qword [rbx + 0x18], rdi
mov dword [rbx + 0x20], edi
call fcn.18002ea50
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x180043008
mov r15, qword [rsp + 0x48]
mov r11d, dword [rsp + 0x50]
mov byte [rbx + 2], 1
jmp 0x18003db58
mov r8d, dword [r8 + 8]
xor r9d, r9d
mov rcx, r14
call fcn.18003c590
mov rbx, rax
test rax, rax
je 0x180043554
or dword [rax + 8], 1
lea r9, [rbx + 0x10]
mov rax, qword [rsp + 0x48]
mov r8, r13
mov dword [rsp + 0x28], 0x41e
xor edx, edx
movzx ecx, word [rax + 2]
or ecx, 5
mov dword [rsp + 0x20], ecx
mov rcx, qword [r13]
call fcn.180023100
mov dword [rsp + 0x44], eax
mov r8d, eax
mov r15d, 1
test eax, eax
jne 0x18004300e
mov rcx, qword [rbx + 0x10]
xor r8d, r8d
mov edx, r15d
call fcn.180024b00
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18003fbaa
mov rax, qword [rsp + 0x48]
mov rcx, qword [rbx + 0x10]
mov r14, qword [rax + 0x10]
mov qword [rbx + 0x38], r14
test r14, r14
je 0x18003fb79
movzx r8d, word [rax + 2]
lea rdx, [rbx + 0x44]
or r8d, 2
call fcn.18002e710
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18003fb73
mov rax, qword [rbx + 0x30]
lea r8d, [r15 + 3]
mov edx, dword [rbx + 0x44]
mov r9, r14
mov rcx, qword [rbx + 0x10]
mov qword [rsp + 0x20], rax
call fcn.180026380
mov r8d, eax
mov dword [rsp + 0x44], eax
mov byte [rbx + 4], 0
jmp 0x18003fba0
mov rax, qword [rbx + 0x30]
xor r9d, r9d
mov edx, r15d
mov dword [rbx + 0x44], r15d
mov qword [rsp + 0x20], rax
lea r8d, [r9 + 4]
call fcn.180026380
mov r8d, eax
mov dword [rsp + 0x44], eax
mov byte [rbx + 4], r15b
mov rsi, qword [rsp + 0x70]
mov r14, qword [rsp + 0x68]
xor eax, eax
mov ecx, eax
mov rax, qword [rsp + 0x48]
cmp word [rax + 2], 8
mov eax, 4
cmovne ecx, eax
mov eax, dword [rbx + 8]
and eax, 0xfffffffb
or ecx, eax
mov dword [rbx + 8], ecx
test r8d, r8d
jne 0x1800431f8
mov r15, qword [rsp + 0x48]
xor edi, edi
mov r11d, dword [rsp + 0x50]
mov byte [rbx + 2], 1
jmp 0x18003db58
mov rax, qword [rsp + 0x48]
mov r9b, 1
mov rcx, r14
mov r8d, dword [rax + 8]
mov edx, dword [rax + 4]
call fcn.18003c590
test rax, rax
je 0x180043554
mov rdx, qword [rsp + 0x48]
mov r8, rax
mov rcx, qword [rdx + 0x10]
mov qword [rax + 0x38], rcx
mov rcx, r13
mov edx, dword [rdx + 0xc]
call fcn.180045100
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x180043008
mov r15, qword [rsp + 0x48]
mov r11d, dword [rsp + 0x50]
jmp 0x18003db58
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r14 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rcx, qword [rdx + 0x18]
lea rax, [rcx + 1]
mov qword [rdx + 0x18], rax
mov edx, 1
test rcx, rcx
je 0x1800426a7
jmp case.0x18003cf1b.89
mov rax, qword [rsp + 0x48]
mov r9b, 3
mov rcx, r14
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 4]
call fcn.18003c590
test rax, rax
je 0x180043554
mov r15, qword [rsp + 0x48]
mov r8d, dword [rsp + 0x44]
mov r11d, dword [rsp + 0x50]
mov byte [rax + 2], 1
mov ecx, dword [r15 + 8]
mov dword [rax + 0x24], ecx
lea rcx, [0x18024b76c]
mov qword [rax + 0x30], rcx
mov byte [rax + 4], 1
jmp 0x18003db58
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r14 + 0x78]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je 0x18003fce8
mov rcx, r14
call fcn.180035860
mov r9, qword [rsp + 0x58]
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
mov r8d, dword [rsp + 0x44]
mov r11d, dword [rsp + 0x50]
movsxd rcx, dword [rax + 4]
mov rax, qword [r14 + 0x78]
mov qword [rax + rcx*8], rdi
jmp 0x18003db5d
mov rax, qword [r14 + 0x78]
mov r12d, edi
mov r8, qword [rsp + 0x48]
movsxd rcx, dword [r8 + 4]
mov rsi, qword [rax + rcx*8]
cmp byte [rsi + 4], 0
mov word [rsi + 2], 0
mov dword [rsi + 0x20], edi
je 0x18003fe3f
movsxd rax, dword [r8 + 0xc]
imul rdi, rax, 0x38
add rdi, qword [rsp + 0x78]
movzx r14d, word [rdi + 0x14]
movzx eax, r14b
and al, 0x2e
cmp al, 2
jne 0x18003fd5a
xor edx, edx
mov rcx, rdi
call fcn.18003c6c0
mov rcx, rdi
call fcn.180032190
movzx ecx, word [rdi + 0x14]
mov r15, rax
mov word [rdi + 0x14], r14w
test cl, 0x24
jne 0x18003fe0d
test cl, 8
jne 0x18003fdeb
test cl, 1
jne 0x180042691
cmp ebx, 0x17
jae 0x180042691
mov rcx, qword [rsi + 0x30]
lea rdx, [rbp + 0x24]
call fcn.180027390
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x180042f9e
xor edi, edi
cmp dword [rbp + 0x24], edi
jne 0x1800426b6
mov r15, qword [rsp + 0x48]
mov edx, 1
mov r11d, dword [rsp + 0x50]
test r12d, r12d
je 0x180042bc0
mov r14, qword [rsp + 0x68]
add r15, 0x18
mov r12, qword [rsp + 0x78]
movzx r10d, byte [rsp + 0x40]
mov r9, qword [rsp + 0x58]
jmp case.0x18003cf1b.89
movsd xmm1, qword [rdi]
mov rcx, r15
call fcn.1800377a0
test eax, eax
jle 0x18003fe04
test bl, 1
jne 0x18003fe0d
dec ebx
jmp 0x18003fe0d
jns 0x18003fe0d
test bl, 1
je 0x18003fe0d
inc ebx
mov rcx, qword [rsi + 0x30]
lea rdi, [rsi + 0x30]
lea r9, [rbp + 0x24]
xor r8d, r8d
mov rdx, r15
call fcn.1800273b0
mov dword [rsp + 0x44], eax
mov r8d, eax
mov qword [rsi + 0x50], r15
test eax, eax
jne 0x180042f9e
xor r15d, r15d
jmp 0x18003fec3
mov rax, qword [rsi + 0x30]
lea rdi, [rsi + 0x30]
mov r15d, 0
mov ecx, 0xffffffff
mov r12d, r15d
movzx r14d, byte [rax + 3]
mov rax, qword [rsi + 0x38]
and r14b, 2
mov qword [rbp + 0x38], rax
movzx eax, word [r8 + 0x10]
setne r12b
mov word [rbp + 0x54], ax
lea eax, [rbx - 1]
test al, 1
mov byte [rbp + 0x5a], r15b
mov eax, edx
lea rdx, [rbp + 0x38]
cmovne eax, ecx
mov byte [rbp + 0x56], al
movsxd rax, dword [r8 + 0xc]
lea r8, [rbp + 0x24]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x78]
mov qword [rbp + 0x40], rcx
mov rcx, qword [rdi]
call fcn.180027630
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x180042f9e
test r14b, r14b
je 0x18003fec3
cmp byte [rbp + 0x5a], r15b
je 0x18003fdaa
mov eax, dword [rbp + 0x24]
cmp ebx, 0x17
jl 0x18003ff2b
test eax, eax
js 0x18003fee0
jne 0x18003fed6
cmp ebx, 0x18
je 0x18003fee0
xor edi, edi
mov dword [rbp + 0x24], edi
jmp 0x18003fdb5
mov dword [rbp + 0x24], r15d
xor edx, edx
mov rcx, qword [rdi]
call fcn.180027f20
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
je 0x18003fdaa
cmp eax, 0x65
jne 0x180042f9e
mov r15, qword [rsp + 0x48]
xor edi, edi
mov r12, qword [rsp + 0x78]
mov edx, 1
mov r9, qword [rsp + 0x58]
mov r8d, edi
mov dword [rsp + 0x44], edi
mov dword [rbp + 0x24], edx
jmp 0x18003e69e
test eax, eax
jg 0x18003ff4b
jne 0x18003ff36
cmp ebx, 0x15
je 0x18003ff4b
mov rcx, qword [rdi]
call fcn.180027cb0
mov r8d, dword [rsp + 0x44]
mov dword [rbp + 0x24], eax
jmp 0x18003fdaa
mov dword [rbp + 0x24], r15d
xor edx, edx
mov rcx, qword [rdi]
call fcn.1800280f0
jmp 0x18003feee
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rcx, dword [rax + 0x1c]
mov rax, qword [r14 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x30]
cmp byte [rax], 0
jne case.0x18003cf1b.89
mov rax, qword [rbx + 0x38]
mov rcx, r15
mov qword [rbp + 0x38], rax
mov byte [rbp + 0x56], 0
movzx eax, word [rcx + 0x28]
mov edi, dword [rcx + 4]
mov word [rbp + 0x54], ax
movsxd rax, dword [rcx + 0x24]
imul rcx, rax, 0x38
add rcx, r12
xor eax, eax
mov qword [rbp + 0x40], rcx
mov dword [rbp + 0x88], eax
nop
lea r9, [rbp + 0x88]
mov rdx, rbx
lea r8, [rbp + 0x38]
mov rcx, r13
call fcn.1800387a0
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x180043008
mov eax, dword [rbp + 0x88]
test eax, eax
jle 0x18003ffe8
cmp word [r15 + 2], r8w
je 0x18004002e
test eax, eax
jns 0x18004269b
test edi, edi
jle 0x180042bb6
mov rcx, qword [rbx + 0x30]
xor eax, eax
xor edx, edx
mov dword [rbx + 0x20], eax
dec edi
call fcn.180027f20
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
je 0x18003ffb0
cmp eax, 0x65
jne 0x180043008
xor edi, edi
mov r8d, edi
mov dword [rsp + 0x44], edi
add r15, 0x18
jmp 0x18003e694
xor edi, edi
add r15, 0x18
jmp 0x18003e694
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r14 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rsp + 0x48]
movzx ecx, word [rdx + 0xc]
mov eax, dword [rax + 8]
cmp ecx, eax
jge 0x180040068
mov word [rdx + 0xc], ax
jmp 0x18003db63
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 0xc]
cmp ecx, eax
lea rcx, [0x180000000]
jle 0x18004007f
mov word [rdx + 0xc], ax
mov edx, 1
mov r13, qword [rbp - 0x80]
add r15, 0x18
mov rsi, qword [rsp + 0x70]
jmp 0x18003ceea
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r14 + 0x78]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je case.0x18003cf1b.9
cmp byte [rdx + 2], 0
je 0x18003d030
jmp case.0x18003cf1b.9
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r14 + 0x78]
mov rcx, qword [rax + rcx*8]
movzx eax, word [rcx + 0xc]
cmp eax, dword [r15 + 0x10]
jge case.0x18003cf1b.89
mov r8, qword [rsp + 0x48]
mov rax, qword [r14 + 0x78]
movsxd rcx, dword [r8 + 4]
mov rbx, qword [rax + rcx*8]
movsxd rax, dword [r8 + 0xc]
imul rcx, rax, 0x38
movzx eax, word [r8 + 0x10]
add rcx, r12
mov word [rbp + 0x54], ax
mov qword [rbp + 0x40], rcx
test ax, ax
je 0x18004013a
mov rax, qword [rbx + 0x38]
lea rsi, [rbx + 0x24]
mov qword [rbp + 0x38], rax
lea rdx, [rbp + 0x38]
mov byte [rbp + 0x56], 0
mov r8, rsi
mov rcx, qword [rbx + 0x30]
call fcn.180027630
mov r8d, eax
mov dword [rsp + 0x44], eax
jmp 0x1800401b0
mov eax, 0x400
test word [rcx + 0x14], ax
je 0x180040152
call fcn.180031e00
test eax, eax
jne 0x180043554
mov rcx, qword [rbx + 0x38]
call fcn.180037290
mov rdi, rax
test rax, rax
je 0x180043554
mov rcx, qword [rbp + 0x40]
mov r9, rax
mov r8, qword [rcx + 8]
mov edx, dword [rcx + 0x10]
mov rcx, qword [rbx + 0x38]
call fcn.1800372f0
mov byte [rdi + 0x1e], 0
lea rsi, [rbx + 0x24]
mov rcx, qword [rbx + 0x30]
mov r8, rsi
mov rdx, rdi
call fcn.180027630
mov rdx, rdi
mov dword [rsp + 0x44], eax
mov rcx, r13
call fcn.180006c50
mov r8d, dword [rsp + 0x44]
xor edi, edi
mov r12, qword [rsp + 0x78]
test r8d, r8d
jne 0x180043003
mov ecx, dword [rsi]
test ecx, ecx
mov byte [rbx + 3], r8b
setne al
mov dword [rbx + 0x20], edi
mov byte [rbx + 2], al
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax]
cmp al, 0x1d
jne 0x1800401fc
mov r15, qword [rsp + 0x48]
lea edx, [r8 + 1]
mov r9, qword [rsp + 0x58]
test ecx, ecx
je 0x1800426a7
movzx r10d, byte [rsp + 0x40]
mov r11d, dword [rsp + 0x50]
jmp case.0x18003cf1b.89
test ecx, ecx
jne 0x1800426b6
cmp al, 0x1b
jne 0x180040244
movzx edx, word [rbp + 0x54]
mov rcx, rdi
test rdx, rdx
je 0x180042bb1
mov rax, qword [rbp + 0x40]
add rax, 0x14
test byte [rax], 1
jne 0x1800426b6
inc rcx
add rax, 0x38
cmp rcx, rdx
jl 0x180040220
mov r15, qword [rsp + 0x48]
mov r11d, dword [rsp + 0x50]
jmp 0x18003db58
mov r15, qword [rsp + 0x48]
mov edx, 1
mov r11d, dword [rsp + 0x50]
cmp al, 0x1a
jne 0x180042bc0
movzx r10d, byte [rsp + 0x40]
mov rax, r15
mov r9, qword [rsp + 0x58]
movzx eax, word [rax + 0x10]
mov word [rbx + 0xc], ax
jmp case.0x18003cf1b.89
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, r12
test byte [rcx + 0x14], 0x24
jne case.0x18003cf1b.31
movups xmm0, xmmword [rcx]
movzx r8d, r10b
mov dl, 0x43
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rbp + 0x38], xmm0
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rbp + 0x48], xmm1
movsd xmm1, qword [rcx + 0x30]
lea rcx, [rbp + 0x38]
movups xmmword [rbp + 0x58], xmm0
movsd qword [rbp + 0x68], xmm1
call fcn.18003c830
test byte [rbp + 0x4c], 4
je 0x1800426b1
mov rdi, qword [rbp + 0x38]
jmp 0x1800402dd
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov rdi, qword [rcx + r12]
mov rax, qword [rsp + 0x48]
lea r9, [rbp + 0x74]
xor r8d, r8d
mov rdx, rdi
movsxd rcx, dword [rax + 4]
mov rax, qword [r14 + 0x78]
mov rbx, qword [rax + rcx*8]
xor eax, eax
mov rcx, qword [rbx + 0x30]
mov dword [rbp + 0x74], eax
call fcn.1800273b0
mov r15, qword [rsp + 0x48]
mov r8d, eax
mov qword [rbx + 0x50], rdi
xor edi, edi
mov dword [rbx + 0x20], edi
mov word [rbx + 2], 0
mov dword [rsp + 0x44], eax
mov eax, dword [rbp + 0x74]
mov dword [rbx + 0x24], eax
cmp dword [rbp + 0x74], edi
je 0x180040347
cmp dword [r15 + 8], edi
jne 0x18004269d
mov ecx, 0x17bb3
call fcn.1800ce940
mov r8d, eax
mov dword [rsp + 0x44], eax
test r8d, r8d
jne 0x180043008
mov r11d, dword [rsp + 0x50]
jmp 0x18003db58
mov r8, qword [rsp + 0x48]
movsxd rax, dword [r8 + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [r14 + 0x68]
test word [rdx + 0x14], ax
je 0x18004038d
mov rcx, rdx
call fcn.18003c9a0
mov r8, qword [rsp + 0x48]
mov rdx, rax
mov r9, qword [rsp + 0x58]
jmp 0x180040396
mov eax, 4
mov word [rdx + 0x14], ax
movsxd rcx, dword [r8 + 4]
mov rax, qword [r14 + 0x78]
mov r15, qword [rsp + 0x48]
mov r11d, dword [rsp + 0x50]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x18]
mov qword [rdx], rax
movsxd rcx, dword [r8 + 4]
mov rax, qword [r14 + 0x78]
mov r8d, dword [rsp + 0x44]
mov rdx, qword [rax + rcx*8]
inc qword [rdx + 0x18]
jmp 0x18003db5d
mov rbx, qword [rsp + 0x48]
mov qword [rbp - 0x60], rdi
mov dword [rbp + 0x20], edi
movsxd rax, dword [rbx + 8]
imul rsi, rax, 0x38
mov eax, 0x9000
add rsi, qword [r14 + 0x68]
test word [rsi + 0x14], ax
je 0x1800403fd
mov rcx, rsi
call fcn.18003c9a0
mov rsi, rax
jmp 0x180040406
mov eax, 4
mov word [rsi + 0x14], ax
movsxd rcx, dword [rbx + 4]
mov rax, qword [r14 + 0x78]
mov rdi, qword [rax + rcx*8]
test byte [rdi + 8], 2
jne 0x180040476
mov rcx, qword [rdi + 0x30]
lea rdx, [rbp + 0x20]
call fcn.180027390
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x180043003
cmp dword [rbp + 0x20], eax
je 0x180040445
mov r15d, 1
mov qword [rbp - 0x60], r15
jmp 0x18004047c
mov rcx, qword [rdi + 0x30]
call fcn.180026630
movabs rcx, 0x7fffffffffffffff
mov qword [rbp - 0x60], rax
mov r15d, 1
cmp rax, rcx
jl 0x18004046d
or dword [rdi + 8], 2
jmp 0x18004047c
inc rax
mov qword [rbp - 0x60], rax
jmp 0x18004047c
mov r15d, 1
movsxd rdx, dword [rbx + 0xc]
test edx, edx
je 0x180040506
mov rcx, qword [r14 + 0x108]
test rcx, rcx
je 0x1800404b6
mov rax, qword [rcx + 8]
test rax, rax
je 0x1800404ac
nop dword [rax]
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x1800404a0
imul rbx, rdx, 0x38
add rbx, qword [rcx + 0x18]
jmp 0x1800404bd
imul rbx, rdx, 0x38
add rbx, r12
mov rcx, rbx
call fcn.180032190
movzx ecx, word [rbx + 0x14]
mov edx, 0xf244
and cx, dx
mov qword [rbx], rax
or cx, 4
mov word [rbx + 0x14], cx
movabs rcx, 0x7fffffffffffffff
cmp rax, rcx
je 0x180040561
test byte [rdi + 8], 2
jne 0x180040561
mov rcx, qword [rbp - 0x60]
inc rax
cmp rcx, rax
cmovl rcx, rax
mov qword [rbp - 0x60], rcx
mov qword [rbx], rcx
test byte [rdi + 8], 2
je 0x180040576
xor eax, eax
mov ebx, eax
lea rdx, [rbp - 0x60]
mov ecx, 8
call fcn.180009fc0
mov rdx, qword [rbp - 0x60]
lea r9, [rbp + 0x20]
movabs rax, 0x3fffffffffffffff
xor r8d, r8d
and rdx, rax
inc rdx
mov qword [rbp - 0x60], rdx
mov rcx, qword [rdi + 0x30]
call fcn.1800273b0
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x18004307f
cmp dword [rbp + 0x20], eax
jne 0x18004057b
inc ebx
cmp ebx, 0x64
jl 0x180040510
mov rsi, qword [rsp + 0x70]
mov r8d, reloc.WS2_32.dll_listen
mov dword [rsp + 0x44], r8d
jmp 0x18004300e
mov r8d, dword [rsp + 0x44]
mov r15, qword [rsp + 0x48]
xor eax, eax
mov dword [rdi + 0x20], eax
mov byte [rdi + 3], 0
mov rax, qword [rbp - 0x60]
mov qword [rsi], rax
jmp 0x18003db51
mov r8, qword [rsp + 0x48]
movsxd rax, dword [r8 + 8]
movsxd rcx, dword [r8 + 4]
imul rdx, rax, 0x38
mov rax, qword [r14 + 0x78]
add rdx, r12
mov rbx, qword [rax + rcx*8]
movsxd rax, dword [r8 + 0xc]
imul rcx, rax, 0x38
mov r8, qword [rcx + r12]
mov rcx, qword [rsp + 0x48]
mov qword [rbp + 0x40], r8
cmp byte [rcx + 1], 0xfb
jne 0x1800405f5
cmp qword [r13 + 0x140], 0
je 0x1800405f5
movsx rcx, byte [rbx + 1]
mov rax, qword [r13 + 0x20]
shl rcx, 5
xor r15d, r15d
mov rsi, qword [rcx + rax]
mov rcx, qword [rsp + 0x48]
mov rdi, qword [rcx + 0x10]
jmp 0x1800405fb
xor r15d, r15d
mov esi, r15d
test byte [rcx + 2], 1
je 0x18004060f
inc qword [r14 + 0x38]
test byte [rcx + 2], 0x20
je 0x18004060f
mov qword [r13 + 0x38], r8
mov rax, qword [rdx + 8]
movzx r8d, word [rcx + 2]
mov qword [rbp + 0x48], rax
mov eax, dword [rdx + 0x10]
mov dword [rbp + 0x5c], eax
test r8b, 0x10
je 0x18004062e
mov r9d, dword [rbx + 0x24]
jmp 0x180040631
mov r9d, r15d
mov eax, 0x400
test word [rdx + 0x14], ax
je 0x180040643
mov eax, dword [rdx]
mov dword [rbp + 0x60], eax
jmp 0x180040647
mov dword [rbp + 0x60], r15d
mov qword [rbp + 0x38], r15
lea rdx, [rbp + 0x38]
mov rcx, qword [rbx + 0x30]
and r8d, 0x8a
call fcn.18002cf50
inc dword [rbp - 0x74]
mov r8d, eax
mov dword [rsp + 0x44], eax
mov byte [rbx + 3], 0
mov dword [rbx + 0x20], r15d
test eax, eax
jne 0x180043003
test rdi, rdi
je 0x180042bb1
mov rax, qword [rsp + 0x48]
mov edx, reloc.WS2_32.dll_select
mov r9, qword [rdi]
mov r8, rsi
mov rcx, qword [r13 + 0x138]
test byte [rax + 2], 4
mov eax, reloc.WS2_32.dll_socket
cmovne edx, eax
mov rax, qword [rbp + 0x40]
mov qword [rsp + 0x20], rax
call qword [r13 + 0x140]
mov r8d, dword [rsp + 0x44]
mov r15, qword [rsp + 0x48]
jmp 0x18003db51
mov r8, qword [rsp + 0x48]
mov rcx, qword [r14 + 0x78]
movsxd rax, dword [r8 + 4]
mov r9, qword [rcx + rax*8]
movsxd rax, dword [r8 + 8]
mov rdx, qword [rcx + rax*8]
movsxd rax, dword [r8 + 0xc]
test eax, eax
je 0x1800406ef
imul rcx, rax, 0x38
mov r8, qword [rcx + r12]
jmp 0x1800406f2
mov r8, rdi
mov rdx, qword [rdx + 0x30]
mov rcx, qword [r9 + 0x30]
call fcn.18002d620
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x180043008
mov r15, qword [rsp + 0x48]
mov r11d, dword [rsp + 0x50]
jmp 0x18003db58
mov r8, qword [rsp + 0x48]
lea rdi, [r13 + 0x140]
mov rax, qword [r14 + 0x78]
cmp byte [r8 + 1], 0xfb
movsxd rcx, dword [r8 + 4]
mov r15d, dword [r8 + 8]
mov rbx, qword [rax + rcx*8]
jne 0x18004077c
cmp qword [rdi], 0
je 0x18004077c
movsx rcx, byte [rbx + 1]
mov rax, qword [r13 + 0x20]
mov rsi, qword [r8 + 0x10]
shl rcx, 5
test byte [r8 + 2], 2
mov r14, qword [rcx + rax]
je 0x180040783
cmp byte [rbx + 4], 0
je 0x180040783
mov rcx, qword [rbx + 0x30]
call fcn.180026630
mov r8, qword [rsp + 0x48]
mov qword [rbx + 0x50], rax
jmp 0x180040783
xor eax, eax
mov r14d, eax
mov esi, eax
movzx edx, byte [r8 + 2]
mov rcx, qword [rbx + 0x30]
call fcn.18002dbc0
inc dword [rbp - 0x74]
mov r8d, eax
mov dword [rsp + 0x44], eax
xor eax, eax
mov qword [rbx + 0x20], rax
test r8d, r8d
jne 0x180042f9e
test r15b, 1
je 0x180042bb1
mov rax, qword [rsp + 0x68]
inc qword [rax + 0x38]
mov r10, qword [rdi]
test r10, r10
je 0x180042bb1
test rsi, rsi
je 0x180042bb1
test byte [rsi + 0x30], 0x80
jne 0x180042bb1
mov rax, qword [rbx + 0x50]
mov r8, r14
mov r9, qword [rsi]
mov edx, 9
mov rcx, qword [r13 + 0x138]
mov qword [rsp + 0x20], rax
call r10
mov r8d, dword [rsp + 0x44]
mov r15, qword [rsp + 0x48]
jmp 0x18003db4c
mov rdx, qword [r14 + 0x38]
mov rcx, r13
call fcn.1800388d0
mov r8d, dword [rsp + 0x44]
mov r11d, dword [rsp + 0x50]
mov qword [r14 + 0x38], rdi
jmp 0x18003db58
mov r8, qword [rsp + 0x48]
lea r9, [rbp + 0x8c]
mov rax, qword [r14 + 0x78]
movsxd rcx, dword [r8 + 4]
mov rcx, qword [rax + rcx*8]
movsxd rax, dword [r8 + 0xc]
mov r8d, dword [r8 + 0x10]
imul rdx, rax, 0x38
mov dword [rbp + 0x8c], edi
add rdx, r12
call fcn.180047be0
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x180043008
lea edx, [rax + 1]
mov r15, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
cmp dword [rbp + 0x8c], eax
jne 0x1800426a7
movzx r10d, byte [rsp + 0x40]
mov r11d, dword [rsp + 0x50]
jmp case.0x18003cf1b.89
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 8]
movsxd rcx, dword [rcx + 4]
imul rdx, rax, 0x38
mov rax, qword [r14 + 0x78]
add rdx, r12
mov rcx, qword [rax + rcx*8]
call fcn.180047b10
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x180043008
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
mov r11d, dword [rsp + 0x50]
movsxd rcx, dword [rax + 0xc]
mov rax, qword [r14 + 0x78]
mov rcx, qword [rax + rcx*8]
mov dword [rcx + 0x20], edi
jmp 0x18003db58
mov rdx, qword [rsp + 0x48]
mov rcx, r14
call fcn.18003c9d0
mov rcx, qword [r14 + 0x78]
mov rbx, rax
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 4]
mov rdx, qword [rcx + rdx*8]
mov rdi, qword [rdx + 0x30]
mov rcx, rdi
call fcn.180026670
cmp eax, dword [r13 + 0x88]
ja 0x180043219
mov r8, rbx
mov edx, eax
mov rcx, rdi
call fcn.180032fc0
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x180043008
mov r15, qword [rsp + 0x48]
cmp dword [r15 + 0xc], eax
jne 0x180042bb6
mov eax, 0x4000
test word [rbx + 0x14], ax
je 0x180042bb6
mov rcx, rbx
call fcn.180031da0
test eax, eax
jne 0x180043554
mov r8d, dword [rsp + 0x44]
jmp 0x18003db51
mov rbx, qword [rsp + 0x48]
mov rcx, r14
mov rdx, rbx
call fcn.18003c9d0
movsxd rdx, dword [rbx + 4]
mov rdi, rax
mov rcx, qword [r14 + 0x78]
mov rbx, qword [rcx + rdx*8]
cmp byte [rbx + 2], 0
je 0x1800409c2
mov r8d, dword [rsp + 0x44]
mov edx, 1
mov r15, qword [rsp + 0x48]
xor edi, edi
movzx r10d, byte [rsp + 0x40]
mov r11d, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
mov word [rax + 0x14], dx
jmp case.0x18003cf1b.89
cmp byte [rbx + 3], 0
je 0x1800409e5
mov rax, qword [rbx + 0x50]
mov r8d, dword [rsp + 0x44]
mov r15, qword [rsp + 0x48]
mov qword [rbp + 0xa8], rax
mov qword [rdi], rax
jmp 0x18003db51
cmp byte [rbx], 2
jne 0x180040a34
mov rcx, qword [rbx + 0x30]
lea rdx, [rbp + 0xa8]
mov rbx, qword [rcx]
mov rax, qword [rbx]
call qword [rax + 0x60]
mov rdx, rbx
mov rcx, r14
mov dword [rsp + 0x44], eax
call fcn.180038ae0
mov r8d, dword [rsp + 0x44]
test r8d, r8d
jne 0x180043008
mov rax, qword [rbp + 0xa8]
mov r12, qword [rsp + 0x78]
mov r15, qword [rsp + 0x48]
mov qword [rdi], rax
jmp 0x18003db51
mov rcx, rbx
call fcn.180036fe0
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x180043008
cmp byte [rbx + 2], al
je 0x180040a5e
mov edx, 1
mov word [rdi + 0x14], dx
jmp 0x18003d5b6
mov rcx, qword [rbx + 0x30]
call fcn.180026630
mov r8d, dword [rsp + 0x44]
mov r15, qword [rsp + 0x48]
mov qword [rbp + 0xa8], rax
mov qword [rdi], rax
jmp 0x18003db51
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 4]
mov rax, qword [r14 + 0x78]
mov rax, qword [rax + rdx*8]
test rax, rax
jne 0x180040ac4
mov r9b, 3
lea r8d, [rax + 1]
mov rcx, r14
call fcn.18003c590
test rax, rax
je 0x180043554
or dword [rax + 8], 8
lea rcx, [0x18024b76c]
mov qword [rax + 0x30], rcx
mov dword [rax + 0x24], edi
mov byte [rax + 4], 1
cmp byte [rax], 0
mov byte [rax + 2], 1
mov dword [rax + 0x20], edi
jne 0x180042bac
mov rcx, qword [rax + 0x30]
call fcn.1800213d0
mov r8d, dword [rsp + 0x44]
mov r11d, dword [rsp + 0x50]
mov r15, qword [rsp + 0x48]
jmp 0x18003db58
mov rax, qword [rsp + 0x48]
xor r15d, r15d
movsxd rcx, dword [rax + 4]
mov rax, qword [r14 + 0x78]
mov rdi, qword [rax + rcx*8]
mov rsi, qword [rdi + 0x30]
mov dword [rbp + 0x70], r15d
cmp bl, 0x89
jne 0x180040b29
mov rcx, rsi
mov dword [rdi + 0x24], 0xffffffff
call fcn.180026620
test eax, eax
jne 0x180042bac
cmp byte [rsi], r15b
jne 0x180040b4b
test byte [rsi + 1], 8
je 0x180040b4b
mov dword [rbp + 0x70], r15d
mov r8d, r15d
mov word [rdi + 2], r15w
mov dword [rdi + 0x20], r15d
mov dword [rsp + 0x44], r15d
jmp 0x180040b76
lea rdx, [rbp + 0x70]
mov rcx, rsi
call fcn.1800272d0
mov r8d, eax
mov dword [rsp + 0x44], eax
movzx eax, byte [rbp + 0x70]
mov byte [rdi + 2], al
mov byte [rdi + 3], r15b
mov dword [rdi + 0x20], r15d
test r8d, r8d
jne 0x180042ffe
mov r15, qword [rsp + 0x48]
cmp dword [r15 + 8], 0
jle 0x180042bb6
mov r9, qword [rsp + 0x58]
xor edi, edi
lea edx, [rdi + 1]
cmp dword [rbp + 0x70], edi
jne 0x1800426a7
movzx r10d, byte [rsp + 0x40]
mov r11d, dword [rsp + 0x50]
jmp case.0x18003cf1b.89
mov rax, qword [rsp + 0x48]
lea rdx, [rbp + 0x78]
movsxd rcx, dword [rax + 4]
mov rax, qword [r14 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rbx, qword [rcx + 0x30]
mov rcx, rbx
call fcn.180027240
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x180043008
cmp dword [rbp + 0x78], eax
jne 0x1800426b6
mov rcx, rbx
call fcn.180027cc0
test rax, rax
js 0x180040c1c
mov rcx, rax
call fcn.18000d200
mov r15, qword [rsp + 0x48]
movsx ecx, ax
cmp ecx, dword [r15 + 0xc]
jge 0x180040c21
mov r8d, dword [rsp + 0x44]
mov edx, 1
mov r9, qword [rsp + 0x58]
mov dword [rbp + 0x78], edx
jmp 0x18003e69e
mov r15, qword [rsp + 0x48]
cmp dword [rbp + 0x78], 0
mov edx, 1
mov r8d, dword [rsp + 0x44]
mov r9, qword [rsp + 0x58]
jne 0x1800426a7
movzx r10d, byte [rsp + 0x40]
mov r11d, dword [rsp + 0x50]
jmp case.0x18003cf1b.89
inc dword [r14 + 0xdc]
mov rax, qword [rsp + 0x48]
mov r15d, 1
movsxd rcx, dword [rax + 4]
mov rax, qword [r14 + 0x78]
mov rbx, qword [rax + rcx*8]
mov dword [rbp + 0x30], r15d
cmp byte [rbx], r15b
jne 0x180040c86
lea rdx, [rbp + 0x30]
mov rcx, rbx
call fcn.180047950
mov r8d, eax
mov dword [rsp + 0x44], eax
jmp 0x180040cba
mov rdi, qword [rbx + 0x30]
mov rcx, rdi
call fcn.180026fa0
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x180040cfc
xor eax, eax
mov rcx, rdi
mov dword [rbp + 0x30], eax
call fcn.1800271e0
mov r8d, eax
mov dword [rsp + 0x44], eax
xor edi, edi
mov byte [rbx + 3], 0
mov dword [rbx + 0x20], edi
test r8d, r8d
jne 0x18004300e
mov r15, qword [rsp + 0x48]
movzx eax, byte [rbp + 0x30]
mov byte [rbx + 2], al
cmp dword [r15 + 8], r8d
jle 0x180042bb6
lea edx, [r8 + 1]
mov r9, qword [rsp + 0x58]
cmp dword [rbp + 0x30], r8d
jne 0x1800426a7
movzx r10d, byte [rsp + 0x40]
mov r11d, dword [rsp + 0x50]
jmp case.0x18003cf1b.89
cmp eax, 0x10
jne 0x180040cb1
xor edi, edi
mov dword [rbp + 0x30], r15d
mov r8d, edi
mov dword [rsp + 0x44], edi
jmp 0x180040cb3
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r14 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, r13
mov rdx, rbx
call fcn.180047a20
jmp 0x180040d6c
mov r8, qword [rsp + 0x48]
mov rax, qword [r14 + 0x78]
movsxd rcx, dword [r8 + 4]
mov edx, dword [r8 + 0xc]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rbx + 0x30]
call fcn.1800280f0
jmp 0x180040d6c
mov r8, qword [rsp + 0x48]
mov rax, qword [r14 + 0x78]
movsxd rcx, dword [r8 + 4]
mov edx, dword [r8 + 0xc]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rbx + 0x30]
call fcn.180027f20
mov r8d, eax
mov dword [rsp + 0x44], eax
mov dword [rbx + 0x20], edi
test eax, eax
jne 0x180040d98
mov r9, qword [rsp + 0x58]
mov byte [rbx + 2], al
mov rax, qword [rsp + 0x48]
movzx eax, word [rax + 2]
inc dword [r14 + rax*4 + 0xd4]
jmp case.0x18003cf1b.9
cmp r8d, 0x65
jne 0x180043008
mov r8d, edi
mov dword [rsp + 0x44], edi
mov byte [rbx + 2], 1
jmp 0x180041693
mov r8, qword [rsp + 0x48]
mov rax, qword [r14 + 0x78]
movsxd rcx, dword [r8 + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [r8 + 8]
imul rbx, rax, 0x38
add rbx, r12
test byte [r8 + 2], 1
je 0x180040dd9
inc qword [r14 + 0x38]
mov eax, 0x400
test word [rbx + 0x14], ax
je 0x180040e00
mov rcx, rbx
call fcn.180031e00
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x180043008
mov r8, qword [rsp + 0x48]
movsxd rax, dword [rbx + 0x10]
mov qword [rbp + 0x40], rax
mov rax, qword [rbx + 8]
mov qword [rbp + 0x38], rax
movsxd rax, dword [r8 + 0xc]
imul rcx, rax, 0x38
movzx eax, word [r8 + 0x10]
movzx r8d, word [r8 + 2]
add rcx, r12
mov qword [rbp + 0x50], rcx
mov word [rbp + 0x58], ax
test r8b, 0x10
je 0x180040e39
mov r9d, dword [rdi + 0x24]
jmp 0x180040e3e
xor eax, eax
mov r9d, eax
mov rcx, qword [rdi + 0x30]
lea rdx, [rbp + 0x38]
and r8d, 0x8a
call fcn.18002cf50
mov r8d, eax
mov dword [rsp + 0x44], eax
xor eax, eax
mov dword [rdi + 0x20], eax
test r8d, r8d
jne 0x180043008
mov r15, qword [rsp + 0x48]
jmp 0x18003db51
mov r8, qword [rsp + 0x48]
mov rax, qword [r14 + 0x78]
movsxd rcx, dword [r8 + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [r8 + 8]
imul rbx, rax, 0x38
mov eax, 0x400
add rbx, r12
test word [rbx + 0x14], ax
je 0x180040eaf
mov rcx, rbx
call fcn.180031e00
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x180043008
mov rdx, rbx
mov rcx, rdi
call fcn.1800464c0
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x180043008
mov r15, qword [rsp + 0x48]
jmp 0x18003db51
mov r8, qword [rsp + 0x48]
lea rdx, [rbp + 0x38]
mov rax, qword [r14 + 0x78]
movsxd rcx, dword [r8 + 4]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x38]
mov rdi, qword [rbx + 0x30]
mov qword [rbp + 0x38], rax
movzx eax, word [r8 + 0xc]
mov word [rbp + 0x54], ax
movsxd rax, dword [r8 + 8]
lea r8, [rbp + 0x98]
imul rcx, rax, 0x38
mov byte [rbp + 0x56], 0
add rcx, r12
mov qword [rbp + 0x40], rcx
mov rcx, rdi
call fcn.180027630
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x180043008
cmp dword [rbp + 0x98], eax
jne 0x180040f64
mov dl, 4
mov rcx, rdi
call fcn.18002dbc0
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x180043008
mov r15, qword [rsp + 0x48]
xor edi, edi
mov r11d, dword [rsp + 0x50]
mov qword [rbx + 0x20], rdi
jmp 0x18003db58
mov r15, qword [rsp + 0x48]
cmp word [r15 + 2], 0
je 0x180040f86
mov rcx, r13
call fcn.1800642c0
test eax, eax
je 0x180043238
mov r8d, dword [rsp + 0x44]
mov r11d, dword [rsp + 0x50]
xor edi, edi
mov qword [rbx + 0x20], rdi
jmp 0x18003db58
mov rax, qword [r14 + 0x78]
mov r8, qword [rsp + 0x48]
movsxd rcx, dword [r8 + 4]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x30]
cmp byte [rax], 0
je 0x180040fce
mov rcx, rbx
call fcn.180036f80
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x180043008
mov r8, qword [rsp + 0x48]
jmp 0x180040fd7
mov r12, qword [rsp + 0x78]
mov dword [rsp + 0x44], edi
cmp byte [rbx + 2], 0
jne 0x18004107f
mov qword [rbp + 0xb0], rdi
lea r8, [rbp + 0xb0]
mov rdx, qword [rbx + 0x30]
mov rcx, r13
call fcn.180038550
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x180043008
mov rax, qword [rsp + 0x48]
cmp byte [rax], 0x8d
jne 0x180041056
movsxd rcx, dword [rax + 0xc]
mov rax, qword [r14 + 0x78]
mov r15, qword [rsp + 0x48]
mov r11d, dword [rsp + 0x50]
mov rdx, qword [rax + rcx*8]
mov byte [rdx + 2], r8b
mov rax, qword [rbp + 0xb0]
mov qword [rdx + 0x50], rax
mov rax, qword [rsp + 0x48]
mov byte [rdx + 3], 1
mov dword [rdx + 0x20], edi
mov rax, qword [rax + 0x10]
mov qword [rdx + 0x10], rax
mov qword [rdx + 0x28], rbx
jmp 0x18003db58
mov rdx, rax
mov rcx, r14
call fcn.18003c9d0
mov rcx, qword [rbp + 0xb0]
mov r8d, dword [rsp + 0x44]
mov r15, qword [rsp + 0x48]
mov r11d, dword [rsp + 0x50]
mov qword [rax], rcx
jmp 0x18003db58
movsxd rax, dword [r8 + 8]
imul rcx, rax, 0x38
add rcx, r12
call fcn.180032730
mov r8d, dword [rsp + 0x44]
mov r11d, dword [rsp + 0x50]
mov r15, qword [rsp + 0x48]
jmp 0x18003db58
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r14 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx + 3], 0
je 0x18003d6ec
call fcn.180036f10
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x180043008
mov r15, qword [rsp + 0x48]
mov r11d, dword [rsp + 0x50]
jmp 0x18003db58
mov r8, qword [rsp + 0x48]
cmp bl, 0x2a
mov rax, qword [r14 + 0x78]
movsxd rcx, dword [r8 + 4]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rdx + 0x38]
mov qword [rbp + 0x38], rax
movzx eax, word [r8 + 0x10]
mov word [rbp + 0x54], ax
sbb al, al
mov byte [rbp + 0x56], al
movsxd rax, dword [r8 + 0xc]
imul rcx, rax, 0x38
add rcx, r12
mov qword [rbp + 0x40], rcx
mov rbx, qword [rdx + 0x30]
mov rcx, rbx
call fcn.1800265e0
mov edi, dword [rbx + 0x40]
lea eax, [rdi - 1]
cmp eax, 0x7ffffffe
ja 0x18004325a
xor r8d, r8d
lea rcx, [rbp - 0x18]
mov rdx, r13
call fcn.180032710
lea r8, [rbp - 0x18]
mov edx, edi
mov rcx, rbx
call fcn.180032fc0
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x180043008
mov rdx, qword [rbp - 0x10]
lea r8, [rbp + 0x38]
mov ecx, dword [rbp - 8]
xor r9d, r9d
call fcn.180037940
lea rcx, [rbp - 0x18]
mov ebx, eax
call fcn.180032150
mov r15, qword [rsp + 0x48]
lea ecx, [rbx + 1]
mov r8d, dword [rsp + 0x44]
neg ebx
mov r9, qword [rsp + 0x58]
test byte [r15], 1
cmovne ebx, ecx
xor edi, edi
lea edx, [rdi + 1]
test ebx, ebx
jg 0x1800426a7
movzx r10d, byte [rsp + 0x40]
mov r11d, dword [rsp + 0x50]
jmp case.0x18003cf1b.89
mov rdx, qword [rsp + 0x48]
mov rcx, r14
call fcn.18003c9d0
mov r15d, 1
mov rbx, rax
mov word [rax + 0x14], r15w
mov ecx, dword [r13 + 0xe8]
inc ecx
cmp dword [r13 + 0xdc], ecx
jg 0x180043296
mov rax, qword [rsp + 0x48]
lea r8, [rbp + 0x7c]
mov rcx, qword [r13 + 0x20]
xor r15d, r15d
mov dword [rbp + 0x7c], r15d
movsxd rdi, dword [rax + 0xc]
mov edx, dword [rax + 4]
mov r9, rdi
shl r9, 5
mov rcx, qword [r9 + rcx + 8]
call fcn.18002efc0
mov r8d, eax
mov dword [rsp + 0x44], eax
mov eax, 4
mov word [rbx + 0x14], ax
movsxd rax, dword [rbp + 0x7c]
mov qword [rbx], rax
test r8d, r8d
jne 0x180043008
mov r8d, dword [rbp + 0x7c]
test r8d, r8d
je 0x180042bac
mov rax, qword [rsp + 0x48]
mov edx, edi
mov rcx, r13
mov r9d, dword [rax + 4]
call fcn.180068880
mov r8d, dword [rsp + 0x44]
lea eax, [rdi + 1]
mov r15, qword [rsp + 0x48]
mov byte [rbp - 0x78], al
jmp 0x18003db51
mov rcx, qword [r13 + 0x20]
lea r8, [rbp + 0x28]
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
mov qword [rbp + 0x28], rdi
movsxd rax, dword [rax + 8]
mov edx, dword [r15 + 4]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.18002ea50
cmp dword [r15 + 0xc], 0
mov r8d, eax
mov dword [rsp + 0x44], eax
je 0x1800412bd
mov rdx, qword [rbp + 0x28]
add qword [r14 + 0x38], rdx
movsxd rax, dword [r15 + 0xc]
test eax, eax
jle 0x1800412bd
imul rcx, rax, 0x38
add qword [rcx + r12], rdx
test r8d, r8d
jne 0x180043008
mov r11d, dword [rsp + 0x50]
jmp 0x18003db58
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r14 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx], 1
jne 0x180041306
mov rdx, qword [rcx + 0x30]
mov rcx, r13
call fcn.180045640
mov r8d, dword [rsp + 0x44]
mov r11d, dword [rsp + 0x50]
mov r15, qword [rsp + 0x48]
jmp 0x18003db58
mov rcx, qword [rcx + 0x30]
call fcn.18002eb30
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x180043008
mov r15, qword [rsp + 0x48]
mov r11d, dword [rsp + 0x50]
jmp 0x18003db58
mov rdx, qword [rsp + 0x48]
mov rcx, r14
call fcn.18003c9d0
mov rbx, rax
mov dword [rbp + 0x90], edi
mov rax, qword [rsp + 0x48]
lea rdx, [rbp + 0x90]
movsxd rcx, dword [rax + 4]
mov r8d, dword [rax + 0xc]
shl rcx, 5
add rcx, qword [r13 + 0x20]
mov rcx, qword [rcx + 8]
call fcn.18002e710
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x180043008
mov eax, dword [rbp + 0x90]
mov r15, qword [rsp + 0x48]
mov r11d, dword [rsp + 0x50]
mov qword [rbx], rax
jmp 0x18003db58
mov rax, qword [rsp + 0x48]
xor r9d, r9d
inc byte [r13 + 0x70]
xor r8d, r8d
mov rcx, r13
mov qword [rsp + 0x20], rdi
mov rdx, qword [rax + 0x10]
call fcn.180081530
dec byte [r13 + 0x70]
mov r8d, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x180043008
mov r15, qword [rsp + 0x48]
mov r11d, dword [rsp + 0x50]
jmp 0x18003db58
mov rax, qword [rsp + 0x48]
mov rcx, qword [r13 + 0x20]
cmp qword [rax + 0x10], 0
movsxd rbx, dword [rax + 4]
jne 0x18004142f
mov rax, rbx
shl rax, 5
mov rcx, qword [rax + rcx + 0x18]
call fcn.18006e1c0
mov rax, qword [rsp + 0x48]
lea r8, [r14 + 0xa8]
and dword [r13 + 0x2c], 0xffffffef
mov edx, ebx
mov rcx, r13
movzx r9d, word [rax + 2]
call fcn.18008a700
or dword [r13 + 0x2c], 1
mov r8d, eax
and dword [r14 + 0xc8], 0xfffffffc
mov dword [rsp + 0x44], eax
jmp 0x1800414fd
mov dword [rbp + 0x48], ebx
lea rax, [r14 + 0xa8]
mov qword [rbp + 0x38], r13
mov qword [rbp + 0x40], rax
mov dword [rbp + 0x50], edi
shl rbx, 5
mov rcx, qword [rcx + rbx + 8]
call fcn.180022df0
mov r8, qword [r13 + 0x20]
lea r9, str.sqlite_master
mov dword [rbp + 0x58], eax
lea rdx, str.SELECTFROM__w_._s_WHERE__s_ORDER_BY_rowid
mov rax, qword [rsp + 0x48]
mov rcx, r13
mov r8, qword [r8 + rbx]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x20], rax
call fcn.180009840
mov rbx, rax
mov rcx, r13
test rax, rax
je 0x1800432ae
lea r9, [rbp + 0x38]
mov byte [r13 + 0xc5], 1
lea r8, [fcn.18008a3a0]
mov dword [rbp + 0x4c], edi
mov rdx, rax
mov dword [rbp + 0x54], edi
mov qword [rsp + 0x20], rdi
call fcn.180081530
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x1800414e0
mov r12d, dword [rbp + 0x4c]
mov dword [rsp + 0x44], r12d
test r12d, r12d
jne 0x1800414e0
cmp dword [rbp + 0x54], r12d
jne 0x1800414e0
mov ecx, 0x181b1
call fcn.1800ce940
mov dword [rsp + 0x44], eax
mov rdx, rbx
mov rcx, r13
call fcn.180006c50
mov r8d, dword [rsp + 0x44]
mov r12, qword [rsp + 0x78]
mov byte [r13 + 0xc5], 0
test r8d, r8d
je 0x18003d684
mov rcx, r13
call fcn.180063950
mov r8d, dword [rsp + 0x44]
mov rbx, qword [rsp + 0x60]
cmp r8d, 7
je 0x180043559
jmp 0x180043374
mov rax, qword [rsp + 0x48]
mov rcx, r13
mov edx, dword [rax + 4]
call fcn.180060e80
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x180043008
mov r15, qword [rsp + 0x48]
mov r11d, dword [rsp + 0x50]
jmp 0x18003db58
mov rax, qword [rsp + 0x48]
mov rcx, r13
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.180063fc0
mov r8d, dword [rsp + 0x44]
mov r11d, dword [rsp + 0x50]
mov r15, qword [rsp + 0x48]
jmp 0x18003db58
mov rax, qword [rsp + 0x48]
mov rcx, r13
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.1800636b0
mov r8d, dword [rsp + 0x44]
mov r11d, dword [rsp + 0x50]
mov r15, qword [rsp + 0x48]
jmp 0x18003db58
mov rax, qword [rsp + 0x48]
mov rcx, r13
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.18009f650
mov r8d, dword [rsp + 0x44]
mov r11d, dword [rsp + 0x50]
mov r15, qword [rsp + 0x48]
jmp 0x18003db58
mov rcx, qword [rsp + 0x48]
lea r10, [rbp - 0x58]
mov r9, qword [rsp + 0x48]
mov rdx, qword [r13 + 0x20]
mov qword [rsp + 0x30], r10
lea r10, [rbp + 0x94]
movsxd rax, dword [rcx + 0xc]
mov r8, qword [rcx + 0x10]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 4]
add r8, 4
imul rbx, rax, 0x38
movzx eax, word [r9 + 2]
add rdi, r12
mov r9d, dword [r9 + 8]
add rbx, r12
shl rax, 5
mov qword [rsp + 0x28], r10
mov ecx, dword [rdi]
inc ecx
mov rdx, qword [rax + rdx + 8]
mov dword [rsp + 0x20], ecx
mov rcx, r13
call fcn.18002ffe0
mov rcx, rbx
mov dword [rsp + 0x44], eax
mov r12d, eax
call fcn.180032730
mov eax, dword [rbp + 0x94]
test eax, eax
je 0x18004167c
test r12d, r12d
jne 0x1800432b8
dec eax
mov r9b, 1
movsxd rcx, eax
mov r8, 0xffffffffffffffff
sub qword [rdi], rcx
lea rax, [fcn.180006b70]
mov rdx, qword [rbp - 0x58]
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.180032b70
movzx edx, byte [rsp + 0x40]
mov rcx, rbx
call fcn.1800319a0
mov r12, qword [rsp + 0x78]
mov r8d, dword [rsp + 0x44]
mov eax, dword [r13 + 0x198]
mov rbx, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x70]
test eax, eax
jne 0x18004336e
cmp rsi, rbx
jb 0x180042bb1
nop word [rax + rax]
mov rdx, qword [r13 + 0x210]
test rdx, rdx
je 0x180042bac
mov eax, dword [r13 + 0x220]
mov rcx, qword [r13 + 0x218]
add rbx, rax
mov qword [rsp + 0x60], rbx
call rdx
test eax, eax
jne 0x180043367
cmp rsi, rbx
jae 0x1800416c0
mov r8d, dword [rsp + 0x44]
mov r15, qword [rsp + 0x48]
jmp 0x18003db51
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 8]
add rbx, r12
imul rdi, rax, 0x38
test byte [rbx + 0x14], 0x10
jne 0x180041732
mov rcx, rbx
call fcn.1800328e0
test eax, eax
jne 0x180043554
mov rdx, qword [rdi + r12]
mov rcx, qword [rbx + 8]
call fcn.180017440
mov r8d, dword [rsp + 0x44]
mov r15, qword [rsp + 0x48]
jmp 0x18003db51
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, r12
test byte [rbx + 0x14], 0x10
je 0x180041799
mov rcx, qword [rbx + 8]
lea rdx, [rbp + 0xc0]
call fcn.1800178d0
test eax, eax
je 0x180041799
mov rax, qword [rsp + 0x48]
mov rdx, qword [rbp + 0xc0]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, r12
call fcn.1800327e0
jmp 0x18004168e
mov rcx, rbx
call fcn.180032730
jmp 0x180042808
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, r12
imul rsi, rax, 0x38
test byte [rbx + 0x14], 0x10
jne 0x1800417d7
mov rcx, rbx
call fcn.1800328e0
test eax, eax
jne 0x18004354f
test edi, edi
je 0x1800417f4
mov r8, qword [rsi + r12]
mov edx, edi
mov rcx, qword [rbx + 8]
call fcn.180017990
test eax, eax
jne 0x180042691
test edi, edi
js 0x18003d3d8
mov rdx, qword [rsi + r12]
mov rcx, qword [rbx + 8]
call fcn.180017440
mov r8d, dword [rsp + 0x44]
mov r15, qword [rsp + 0x48]
jmp 0x18003db51
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 0xc]
mov r15, qword [rcx + 0x10]
imul r14, rax, 0x38
add r14, r12
cmp word [rcx + 2], 0
je 0x180041859
mov rax, qword [rsp + 0x68]
mov rcx, qword [r15 + 0x20]
mov rax, qword [rax + 0x108]
test rax, rax
je 0x180041859
cmp qword [rax + 0x30], rcx
je 0x180042e58
mov rax, qword [rax + 8]
test rax, rax
jne 0x180041846
mov rcx, qword [rsp + 0x68]
mov eax, dword [r13 + 0xb0]
cmp dword [rcx + 0x118], eax
jge 0x1800432cb
test byte [r14 + 0x14], 0x10
jne 0x180041993
mov edx, dword [r15 + 0x10]
mov ecx, dword [r15 + 0xc]
add ecx, edx
test edx, edx
lea edi, [rcx + 1]
cmovne edi, ecx
lea eax, [rdi + 2]
imul ecx, eax, 7
mov eax, dword [r15 + 8]
add ecx, edx
add eax, 7
jns 0x1800418a2
add eax, 7
sar eax, 3
lea ebx, [rax + rcx*8]
mov rcx, r13
movsxd rdx, ebx
call fcn.1800070c0
mov rsi, rax
test rax, rax
je 0x18004354a
mov rcx, r14
call fcn.180032130
mov qword [r14 + 8], rsi
mov eax, 0x1010
mov word [r14 + 0x14], ax
lea rax, [0x180034f00]
mov qword [r14 + 0x30], rax
movabs rax, 0x2aaaaaaaaaaaaaab
mov dword [r14 + 0x10], ebx
mov r14, qword [rsp + 0x68]
mov dword [rsi + 0x58], edi
mov qword [rsi], r14
mov ecx, dword [r15 + 0x10]
mov dword [rsi + 0x5c], ecx
mov rcx, qword [rsp + 0x48]
sub rcx, qword [rsp + 0x58]
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rsi + 0x4c], edx
mov rax, qword [r14 + 0x68]
mov qword [rsi + 0x18], rax
mov eax, dword [r14 + 0x24]
mov dword [rsi + 0x54], eax
mov rax, qword [r14 + 0x78]
mov qword [rsi + 0x20], rax
mov eax, dword [r14 + 0x28]
mov dword [rsi + 0x48], eax
mov rax, qword [r14 + 0x88]
mov qword [rsi + 0x10], rax
mov eax, dword [r14 + 0x90]
mov dword [rsi + 0x50], eax
mov rax, qword [r15 + 0x20]
mov qword [rsi + 0x30], rax
movsxd rax, edi
xor edi, edi
add rax, 2
imul rcx, rax, 0x38
lea rax, [rsi + 0x70]
add rcx, rsi
cmp rax, rcx
je 0x18004199a
nop dword [rax]
nop word [rax + rax]
mov word [rax + 0x14], di
mov qword [rax + 0x18], r13
add rax, 0x38
cmp rax, rcx
jne 0x180041980
jmp 0x18004199a
mov rsi, qword [r14 + 8]
mov r14, rcx
inc dword [r14 + 0x118]
lea r12, [rsi + 0x70]
mov rax, qword [r14 + 0x108]
mov qword [rsi + 8], rax
mov rax, qword [r13 + 0x38]
mov qword [rsi + 0x38], rax
mov rax, qword [r14 + 0x38]
mov qword [rsi + 0x60], rax
mov rax, qword [r14]
mov qword [rsp + 0x78], r12
mov rcx, qword [rax + 0x78]
mov qword [rsi + 0x68], rcx
mov rax, qword [r14 + 0x128]
mov qword [rsi + 0x40], rax
mov qword [r14 + 0x128], rdi
mov qword [r14 + 0x38], rdi
mov qword [r14 + 0x108], rsi
mov qword [r14 + 0x68], r12
movsxd rcx, dword [rsi + 0x58]
mov dword [r14 + 0x24], ecx
movzx eax, word [rsi + 0x5c]
mov dword [r14 + 0x28], eax
imul rcx, rcx, 0x38
add rcx, r12
mov qword [r14 + 0x78], rcx
movsxd rax, dword [r15 + 0x10]
lea rcx, [rcx + rax*8]
mov qword [rsi + 0x28], rcx
mov eax, dword [r15 + 8]
add eax, 7
cdq
and edx, 7
add eax, edx
xor edx, edx
sar eax, 3
movsxd r8, eax
call fcn.1801a1dc0
mov r9, qword [r15]
mov qword [r14 + 0x88], r9
mov eax, dword [r15 + 8]
mov dword [r14 + 0x90], eax
lea rax, [r9 - 0x18]
mov qword [rsp + 0x58], r9
mov qword [rsp + 0x48], rax
jmp 0x18004168e
mov rdx, qword [rsp + 0x48]
mov rcx, r14
call fcn.18003c9d0
mov r9, qword [r14 + 0x108]
mov r15, qword [rsp + 0x48]
movsxd rcx, dword [r9 + 0x4c]
lea rdx, [rcx + rcx*2]
mov rcx, qword [r9 + 0x10]
mov r8d, dword [rcx + rdx*8 + 4]
add r8d, dword [r15 + 4]
movsxd rcx, r8d
mov r8d, 0x4000
imul rdx, rcx, 0x38
mov rcx, rax
add rdx, qword [r9 + 0x18]
call fcn.180032a60
mov r8d, dword [rsp + 0x44]
mov r11d, dword [rsp + 0x50]
jmp 0x18003db58
mov eax, dword [r13 + 0x30]
bt rax, 0x13
mov rax, qword [rsp + 0x48]
mov r15, rax
jae 0x180041ad3
movsxd rax, dword [rax + 8]
add qword [r13 + 0x300], rax
jmp case.0x18003cf1b.89
cmp dword [rax + 4], 0
lea rcx, [0x180000000]
movsxd rax, dword [rax + 8]
je 0x180041afd
add qword [r13 + 0x2f8], rax
mov r13, qword [rbp - 0x80]
add r15, 0x18
mov rsi, qword [rsp + 0x70]
jmp 0x18003ceea
add qword [r14 + 0x50], rax
mov r13, qword [rbp - 0x80]
add r15, 0x18
mov rsi, qword [rsp + 0x70]
jmp 0x18003ceea
cmp dword [r15 + 4], 0
je 0x180041b3b
cmp qword [r13 + 0x2f8], 0
jne case.0x18003cf1b.89
cmp qword [r13 + 0x300], 0
je 0x18003e69e
jmp case.0x18003cf1b.89
cmp qword [r14 + 0x50], 0
jne case.0x18003cf1b.89
cmp qword [r13 + 0x300], 0
je 0x18003e69e
jmp case.0x18003cf1b.89
mov rcx, qword [r14 + 0x108]
test rcx, rcx
je 0x180041b8f
mov rax, qword [rcx + 8]
test rax, rax
je 0x180041b7c
nop
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x180041b70
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, qword [rcx + 0x18]
jmp 0x180041b9f
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, r12
mov rcx, rdi
call fcn.180032190
mov qword [rdi], rax
mov esi, 0xf244
movzx eax, word [rdi + 0x14]
and ax, si
or ax, 4
mov word [rdi + 0x14], ax
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rbx, rax, 0x38
add rbx, r12
mov rcx, rbx
call fcn.180032190
movzx ecx, word [rbx + 0x14]
mov edx, 1
mov r8d, dword [rsp + 0x44]
and cx, si
mov r15, qword [rsp + 0x48]
or cx, 4
mov r11d, dword [rsp + 0x50]
mov word [rbx + 0x14], cx
mov qword [rbx], rax
cmp qword [rdi], rax
jge 0x180042bc0
movzx r10d, byte [rsp + 0x40]
mov r9, qword [rsp + 0x58]
mov qword [rdi], rax
xor edi, edi
jmp case.0x18003cf1b.89
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rdx, qword [rcx + r12]
test rdx, rdx
jle 0x18003db63
mov rax, r15
movsxd rax, dword [rax + 0xc]
sub rdx, rax
mov qword [rcx + r12], rdx
jmp 0x18003e699
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul rsi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, qword [r14 + 0x68]
test word [rbx + 0x14], ax
je 0x180041c85
mov rcx, rbx
call fcn.18003c9a0
mov rbx, rax
jmp 0x180041c8e
mov eax, 4
mov word [rbx + 0x14], ax
mov rax, qword [rdi + r12]
mov qword [rbp + 0xb8], rax
test rax, rax
jle 0x180041cdc
mov rdx, qword [rsi + r12]
lea rcx, [rbp + 0xb8]
test rdx, rdx
mov edi, 0
cmovle rdx, rdi
call fcn.18000d0a0
test eax, eax
jne 0x180041cde
mov rax, qword [rbp + 0xb8]
mov r8d, dword [rsp + 0x44]
mov r15, qword [rsp + 0x48]
mov r11d, dword [rsp + 0x50]
mov qword [rbx], rax
jmp 0x18003db58
xor edi, edi
mov r8d, dword [rsp + 0x44]
mov r15, qword [rsp + 0x48]
mov r11d, dword [rsp + 0x50]
mov qword [rbx], 0xffffffffffffffff
jmp 0x18003db58
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r12]
test rax, rax
je 0x18003d6ec
mov r15, qword [rsp + 0x48]
jle 0x18003e69e
dec rax
mov qword [rcx + r12], rax
jmp 0x18003e69e
mov rax, qword [rsp + 0x48]
movabs rbx, 0x8000000000000000
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r12]
cmp rax, rbx
jle 0x180041d51
dec rax
mov qword [rcx + r12], rax
mov r15, qword [rsp + 0x48]
test rax, rax
je 0x18003e69e
jmp case.0x18003cf1b.89
mov rax, qword [rsp + 0x48]
mov rcx, r13
movzx edi, word [rax + 2]
mov esi, edi
lea rdx, [rdi*8 + 0x68]
call fcn.180007150
mov rbx, rax
test rax, rax
je 0x18004354f
xor r15d, r15d
add rsi, 6
mov rdx, r13
mov qword [rax + 0x10], r15
lea rcx, [rax + rsi*8]
lea r8d, [r15 + 1]
mov qword [rax], rcx
call fcn.180032710
mov r8, qword [rsp + 0x48]
movabs rax, 0x2aaaaaaaaaaaaaab
mov rsi, qword [rsp + 0x70]
mov rcx, qword [r8 + 0x10]
mov qword [rbx + 8], rcx
mov rcx, r8
sub rcx, qword [rsp + 0x58]
imul rcx
mov byte [rbx + 0x2a], dil
sar rdx, 2
mov rax, rdx
mov qword [rbx + 0x18], r14
shr rax, 0x3f
add rdx, rax
mov byte [rbx + 0x29], r15b
movzx eax, byte [rsp + 0x40]
xor edi, edi
mov byte [rbx + 0x28], al
mov dword [rbx + 0x20], edx
mov dword [rbx + 0x24], r15d
mov word [r8], 0xf1a3
mov qword [r8 + 0x10], rbx
jmp 0x180041e0c
mov r8, qword [rsp + 0x48]
movsxd rax, dword [r8 + 0xc]
mov rbx, qword [r8 + 0x10]
imul r10, rax, 0x38
add r10, r12
cmp qword [rbx + 0x10], r10
je 0x180041e75
movzx eax, byte [rbx + 0x2a]
mov edx, eax
mov qword [rbx + 0x10], r10
sub rdx, 1
lea r9d, [rax - 1]
js 0x180041e75
mov r13, qword [rsp + 0x48]
lea r8, [rdx + 6]
lea r8, [rbx + r8*8]
nop dword [rax]
nop word [rax + rax]
mov eax, dword [r13 + 8]
lea r8, [r8 - 8]
add eax, r9d
dec r9d
cdqe
imul rcx, rax, 0x38
add rcx, r12
sub rdx, 1
mov qword [r8 + 8], rcx
jns 0x180041e50
mov r13, qword [rbp - 0x80]
inc dword [r10 + 0x10]
lea r8, [rbx + 0x30]
mov r15, qword [rsp + 0x48]
mov rcx, rbx
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x2a]
cmp dword [r15 + 4], 0
je 0x180041e99
call qword [rax + 0x30]
jmp 0x180041e9c
call qword [rax + 0x18]
mov eax, dword [rbx + 0x24]
test eax, eax
je 0x180042bdc
jle 0x180041ed3
mov rcx, qword [rbx]
mov dl, 1
call fcn.180033120
mov r8, rax
lea rdx, [0x180208280]
mov rcx, r14
call fcn.1800338c0
mov r12d, dword [rbx + 0x24]
mov dword [rsp + 0x44], r12d
mov r12, qword [rsp + 0x78]
cmp byte [rbx + 0x29], 0
je 0x180041ef6
movsxd rax, dword [r15 - 0x14]
test eax, eax
je 0x180041ef2
imul rcx, rax, 0x38
mov edx, 1
add rcx, r12
call fcn.1800327e0
mov byte [rbx + 0x29], 0
mov rcx, qword [rbx]
mov eax, 0x9000
test word [rcx + 0x14], ax
jne 0x180041f0a
cmp dword [rcx + 0x20], 0
je 0x180041f0f
call fcn.1800320e0
mov rax, qword [rbx]
mov edx, 1
mov r8d, dword [rsp + 0x44]
mov word [rax + 0x14], dx
mov dword [rbx + 0x24], edi
test r8d, r8d
jne 0x180043587
movzx r10d, byte [rsp + 0x40]
mov r11d, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
jmp case.0x18003cf1b.89
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
mov rcx, qword [rcx + 0x10]
add rbx, r12
test eax, eax
je 0x180041f8a
imul rdx, rax, 0x38
mov r8, rcx
mov rcx, rbx
add rdx, r12
call fcn.180032000
mov r12d, eax
mov dword [rsp + 0x44], eax
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x78]
jmp 0x180041f9c
mov rdx, rcx
mov rcx, rbx
call fcn.180031f20
mov r12d, eax
mov dword [rsp + 0x44], eax
mov rcx, rbx
test r12d, r12d
jne 0x1800432ed
movzx edx, byte [rsp + 0x40]
call fcn.1800319a0
mov r8d, dword [rsp + 0x44]
mov r11d, dword [rsp + 0x50]
mov r12, qword [rsp + 0x78]
mov r15, qword [rsp + 0x48]
jmp 0x18003db58
lea rax, [rbp + 0xd0]
mov dword [rbp + 0xc8], edi
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0xcc]
mov rax, qword [rsp + 0x48]
mov rcx, r13
mov qword [rbp + 0xcc], 0xffffffffffffffff
mov r8d, dword [rax + 8]
mov edx, dword [rax + 4]
call fcn.1800cc9d0
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
je 0x18004202b
cmp eax, 5
jne 0x180043008
mov r12, qword [rsp + 0x78]
mov eax, 1
mov dword [rbp + 0xc8], eax
mov dword [rsp + 0x44], edi
mov rax, qword [rsp + 0x48]
mov ecx, 0x9000
mov r14d, 4
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
add rbx, r12
nop word [rax + rax]
movsxd rax, dword [rbp + rdi*4 + 0xc8]
test word [rbx + 0x14], cx
je 0x180042070
mov rdx, rax
mov rcx, rbx
call fcn.1800327a0
mov ecx, 0x9000
jmp 0x180042078
mov qword [rbx], rax
mov word [rbx + 0x14], r14w
inc rdi
add rbx, 0x38
cmp rdi, 3
jl 0x180042050
mov r14, qword [rsp + 0x68]
mov r8d, dword [rsp + 0x44]
mov r15, qword [rsp + 0x48]
jmp 0x18003db51
mov rdx, qword [rsp + 0x48]
mov rcx, r14
call fcn.18003c9d0
mov rcx, qword [r13 + 0x20]
mov r14, rax
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 4]
mov ebx, dword [rax + 0xc]
shl rdx, 5
mov r15, qword [rdx + rcx + 8]
mov rcx, r15
call fcn.18002f2b0
mov rcx, rax
mov rsi, rax
call fcn.18001d3d0
cmp ebx, 0xffffffff
mov rcx, rsi
mov edi, eax
cmove ebx, eax
call fcn.18001d3e0
test eax, eax
mov edx, 1
mov rcx, rsi
cmove ebx, edi
call fcn.18001cf50
cmp ebx, 5
jne 0x180042185
mov rcx, rax
call fcn.18000a850
test eax, eax
je 0x180042118
mov rcx, rsi
call fcn.18001d410
test eax, eax
jne 0x180042185
mov ebx, edi
mov r12d, dword [rsp + 0x44]
test r12d, r12d
je 0x180042126
mov ebx, edi
mov edx, ebx
mov rcx, rsi
call fcn.18001d240
mov ecx, 0x2202
mov word [r14 + 0x14], cx
mov ecx, eax
call fcn.180082ae0
mov rcx, rax
mov qword [r14 + 8], rax
call fcn.18000a850
movzx edx, byte [rsp + 0x40]
mov rcx, r14
mov dword [r14 + 0x10], eax
mov byte [r14 + 0x16], 1
call fcn.1800319a0
mov r14, qword [rsp + 0x68]
mov r8d, dword [rsp + 0x44]
test r8d, r8d
jne 0x180043003
mov r15, qword [rsp + 0x48]
mov r12, qword [rsp + 0x78]
jmp 0x18003db51
cmp ebx, edi
je 0x18004211a
cmp edi, 5
je 0x180042193
cmp ebx, 5
jne 0x18004211a
cmp byte [r13 + 0x65], 0
je 0x18004330e
cmp dword [r13 + 0xdc], 1
jg 0x18004330e
cmp edi, 5
jne 0x1800421d4
mov rdx, r13
mov rcx, rsi
call fcn.18001d5e0
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x180042124
mov edx, ebx
mov rcx, rsi
call fcn.18001d240
jmp 0x1800421ef
cmp edi, 4
jne 0x1800421e4
lea edx, [rdi - 2]
mov rcx, rsi
call fcn.18001d240
cmp dword [rsp + 0x44], 0
jne 0x180042124
xor eax, eax
mov rcx, r15
mov edx, eax
cmp ebx, 5
sete dl
inc edx
call fcn.1800307a0
mov r12d, eax
mov dword [rsp + 0x44], eax
jmp 0x18004211f
mov r8, qword [rsp + 0x48]
movsxd rax, dword [r8 + 8]
test eax, eax
je 0x180042225
imul r9, rax, 0x38
add r9, r12
jmp 0x180042228
mov r9, rdi
mov r8d, dword [r8 + 4]
lea rcx, [r14 + 0xa8]
mov rdx, r13
call fcn.1800a5730
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x180043008
mov r15, qword [rsp + 0x48]
mov r11d, dword [rsp + 0x50]
jmp 0x18003db58
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 8]
call fcn.1800256f0
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
je 0x180042bb1
cmp eax, 0x65
jne 0x180043008
mov r15, qword [rsp + 0x48]
mov r8d, edi
mov dword [rsp + 0x44], edi
jmp 0x18003e694
mov rax, qword [rsp + 0x48]
cmp dword [rax + 4], 0
jne 0x1800422c7
mov edx, dword [rax + 8]
mov rcx, r13
call fcn.1800388e0
mov r8d, dword [rsp + 0x44]
mov r11d, dword [rsp + 0x50]
mov r15, qword [rsp + 0x48]
jmp 0x18003db58
mov eax, dword [rax + 8]
mov r15, qword [rsp + 0x48]
inc eax
xor eax, dword [r14 + 0xc8]
and eax, 3
xor dword [r14 + 0xc8], eax
jmp case.0x18003cf1b.89
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r14 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rcx, qword [rcx + 0x30]
call fcn.180026650
mov r8d, dword [rsp + 0x44]
mov r11d, dword [rsp + 0x50]
mov r15, qword [rsp + 0x48]
jmp 0x18003db58
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r14 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rcx, qword [rcx + 0x30]
call fcn.180026660
mov r8d, dword [rsp + 0x44]
mov r11d, dword [rsp + 0x50]
mov r15, qword [rsp + 0x48]
jmp 0x18003db58
movzx r8d, byte [r15 + 0xc]
test r8b, r8b
jne 0x180042361
movabs rax, 0x400000000
test qword [r13 + 0x30], rax
jne 0x18003e464
movsxd rax, dword [r15 + 4]
mov rcx, qword [r13 + 0x20]
mov edx, dword [r15 + 8]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.1800305b0
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
je 0x18003d689
cmp al, 6
jne 0x180043008
mov rax, qword [rsp + 0x48]
lea rdx, str.database_table_is_locked:__s
mov rcx, r14
mov r8, qword [rax + 0x10]
call fcn.1800338c0
mov r8d, dword [rsp + 0x44]
jmp 0x180043008
mov rax, qword [rsp + 0x48]
mov rcx, r13
mov rbx, qword [rax + 0x10]
mov rdx, rbx
call fcn.1800a7970
mov dword [rsp + 0x44], eax
mov r8d, eax
test rbx, rbx
je 0x1800423e5
mov rdx, qword [rbx + 0x10]
mov rcx, r14
call fcn.180038ae0
mov r8d, dword [rsp + 0x44]
test r8d, r8d
jne 0x180043008
mov r15, qword [rsp + 0x48]
mov r11d, dword [rsp + 0x50]
jmp 0x18003db58
mov rax, qword [rsp + 0x48]
lea rcx, [rbp + 0x38]
xorps xmm0, xmm0
mov qword [rbp + 0x38], rdi
xorps xmm1, xmm1
mov qword [rbp + 0x68], rdi
movdqu xmmword [rbp + 0x40], xmm0
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
movdqu xmmword [rbp + 0x58], xmm1
mov qword [rbp + 0x50], r13
add rdx, r12
call fcn.180032aa0
lea rcx, [rbp + 0x38]
mov dword [rsp + 0x44], eax
call fcn.1800390f0
test rax, rax
je 0x180042462
mov r8, rax
lea r9, [r14 + 0xa8]
mov rax, qword [rsp + 0x48]
mov rcx, r13
mov edx, dword [rax + 4]
call fcn.1800a72c0
mov dword [rsp + 0x44], eax
lea rcx, [rbp + 0x38]
call fcn.180032130
mov r8d, dword [rsp + 0x44]
test r8d, r8d
jne 0x180043008
mov r12, qword [rsp + 0x78]
mov r15, qword [rsp + 0x48]
mov r11d, dword [rsp + 0x50]
jmp 0x18003db58
mov rax, qword [rsp + 0x48]
mov rcx, r13
inc dword [r13 + 0xe8]
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.1800a7720
dec dword [r13 + 0xe8]
mov r8d, eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x180043008
mov r15, qword [rsp + 0x48]
mov r11d, dword [rsp + 0x50]
jmp 0x18003db58
mov rax, qword [rsp + 0x48]
mov qword [rbp - 0x60], rdi
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x180043357
mov rdi, qword [rbx]
test rdi, rdi
je 0x180043357
lea rdx, [rbp - 0x60]
mov rcx, rbx
call qword [rdi + 0x30]
mov rdx, rbx
mov rcx, r14
mov dword [rsp + 0x44], eax
call fcn.180038ae0
mov r8d, dword [rsp + 0x44]
test r8d, r8d
jne 0x180043008
mov rax, qword [rbp - 0x60]
mov r9b, 2
mov rcx, r14
mov qword [rax], rbx
mov rax, qword [rsp + 0x48]
mov edx, dword [rax + 4]
call fcn.18003c590
mov rcx, qword [rbp - 0x60]
test rax, rax
je 0x18004334f
mov r12, qword [rsp + 0x78]
mov r8d, dword [rsp + 0x44]
mov r15, qword [rsp + 0x48]
mov qword [rax + 0x30], rcx
inc dword [rbx + 8]
jmp 0x18003db51
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r14 + 0x78]
mov rdi, qword [rax + rcx*8]
call fcn.1800c9aa0
test eax, eax
jne 0x180043554
lea ecx, [rax + 0x10]
call fcn.180006980
mov rbx, rax
test rax, rax
je 0x180043554
mov rcx, qword [rdi + 0x30]
mov qword [rax], rcx
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 0xc]
imul rdx, rcx, 0x38
mov rcx, r14
add rdx, r12
mov qword [rbx + 8], rdx
mov rdx, rax
call fcn.18003c9d0
mov edx, 1
lea r9, [0x180039f00]
lea r8, str.ValueList
mov rcx, rax
mov word [rax + 0x14], dx
mov rdx, rbx
call fcn.180032800
mov r8d, dword [rsp + 0x44]
mov r15, qword [rsp + 0x48]
jmp 0x18003db51
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 0xc]
movsxd rcx, dword [rcx + 4]
imul rdx, rax, 0x38
mov rax, qword [r14 + 0x78]
mov r13, qword [rax + rcx*8]
lea r11, [rdx + 0x38]
mov rax, qword [rsp + 0x68]
add r11, r12
mov edx, dword [rdx + r12]
mov rsi, qword [r13 + 0x30]
mov rdi, qword [rax + 0x70]
xor eax, eax
movsxd r9, dword [r11]
mov r8d, eax
mov r15, qword [rsi]
mov r14, qword [r15]
test r9d, r9d
jle 0x180042649
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 0x180042630
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 + 0x68]
mov rdx, r15
mov dword [rsp + 0x44], eax
call fcn.180038ae0
mov r8d, dword [rsp + 0x44]
test r8d, r8d
jne 0x180042f9a
mov rcx, rsi
call qword [r14 + 0x50]
mov byte [r13 + 2], 0
test eax, eax
je 0x180042e3f
mov r8d, dword [rsp + 0x44]
mov r15, qword [rsp + 0x48]
xor edi, edi
mov r9, qword [rsp + 0x58]
mov edx, 1
mov r12, qword [rsp + 0x78]
jmp 0x18003e69e
mov r8d, dword [rsp + 0x44]
mov r15, qword [rsp + 0x48]
jmp 0x18004269d
mov r8, qword [rsp + 0x48]
mov rax, qword [r14 + 0x78]
movsxd rcx, dword [r8 + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [r8 + 0xc]
imul rbx, rax, 0x38
add rbx, r12
cmp byte [rdi + 2], 0
je 0x1800426f6
mov rcx, rbx
call fcn.180032730
mov r8d, dword [rsp + 0x44]
mov r15, qword [rsp + 0x48]
jmp 0x18003db51
mov rax, qword [rdi + 0x30]
xorps xmm0, xmm0
mov rsi, qword [rax]
xor eax, eax
test byte [r8 + 2], 1
mov r14, qword [rsi]
movups xmmword [rbp + 0x38], xmm0
mov qword [rbp + 0x38], rbx
movups xmmword [rbp + 0x58], xmm0
mov byte [rbp + 0x60], r10b
movups xmmword [rbp + 0x48], xmm0
mov qword [rbp + 0x68], rax
je 0x18004273c
mov rcx, rbx
call fcn.180032730
mov r8, qword [rsp + 0x48]
xor eax, eax
mov dword [rbx], eax
mov eax, 0x401
jmp 0x18004274c
movzx eax, word [rbx + 0x14]
mov ecx, 0xf241
and ax, cx
or ax, 1
mov word [rbx + 0x14], ax
lea rdx, [rbp + 0x38]
mov r8d, dword [r8 + 8]
mov rcx, qword [rdi + 0x30]
call qword [r14 + 0x58]
mov r14, qword [rsp + 0x68]
mov rdx, rsi
mov rcx, r14
mov dword [rsp + 0x44], eax
call fcn.180038ae0
cmp dword [rbp + 0x5c], 0
jle 0x18004279d
mov rcx, rbx
call fcn.1800390f0
mov r8, rax
lea rdx, [0x180208280]
mov rcx, r14
call fcn.1800338c0
mov r12d, dword [rbp + 0x5c]
mov dword [rsp + 0x44], r12d
movzx edx, byte [rsp + 0x40]
mov rcx, rbx
call fcn.1800319a0
jmp 0x180042168
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r14 + 0x78]
mov rdi, qword [rax + rcx*8]
cmp byte [rdi + 2], 0
jne 0x180042e78
mov rcx, qword [rdi + 0x30]
mov rbx, qword [rcx]
mov rsi, qword [rbx]
call qword [rsi + 0x48]
mov rdx, rbx
mov rcx, r14
mov dword [rsp + 0x44], eax
call fcn.180038ae0
mov r8d, dword [rsp + 0x44]
test r8d, r8d
jne 0x180043003
mov rcx, qword [rdi + 0x30]
call qword [rsi + 0x50]
test eax, eax
jne 0x180041689
mov r12, qword [rsp + 0x78]
mov r9, qword [rsp + 0x58]
mov r8d, dword [rsp + 0x44]
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 0x180041693
mov rcx, qword [rsp + 0x48]
mov edi, dword [r13 + 0x30]
or qword [r13 + 0x30], 0x4000000
and edi, 0x4000000
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax + 0x10]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
add rbx, r12
test byte [rbx + 0x14], 2
jne 0x180042866
mov byte [rbx + 0x16], 1
jmp 0x180042885
cmp byte [rbx + 0x16], 1
je 0x180042885
mov dl, 1
mov rcx, rbx
call fcn.18000a200
mov dword [rsp + 0x44], eax
mov r8d, eax
test eax, eax
jne 0x180043003
mov rax, qword [rsi]
mov rcx, rsi
mov rdx, qword [rbx + 8]
call qword [rax + 0x98]
mov dword [rsp + 0x44], eax
test edi, edi
jne 0x1800428a5
and qword [r13 + 0x30], 0xfffffffffbffffff
mov rdx, rsi
mov rcx, r14
call fcn.180038ae0
and dword [r14 + 0xc8], 0xfffffffc
jmp 0x180042168
cmp byte [r13 + 0x67], 0
mov qword [rbp + 0x28], rdi
jne 0x180043554
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x180043357
mov r10, qword [rbx]
test r10, r10
je 0x180043357
cmp qword [r10 + 0x68], 0
mov r15, qword [rsp + 0x48]
movsxd rdx, dword [r15 + 8]
je 0x18003db5d
movsxd rax, dword [r15 + 0xc]
movzx edi, byte [r13 + 0x6c]
mov r8, qword [r14 + 0x70]
imul rcx, rax, 0x38
xor eax, eax
add rcx, r12
test edx, edx
jle 0x180042930
nop dword [rax]
mov qword [r8 + rax*8], rcx
add rcx, 0x38
inc rax
cmp rax, rdx
jl 0x180042920
movzx eax, byte [r15 + 2]
lea r9, [rbp + 0x28]
mov rcx, rbx
mov byte [r13 + 0x6c], al
call qword [r10 + 0x68]
mov rdx, rbx
mov byte [r13 + 0x6c], dil
mov rcx, r14
mov dword [rsp + 0x44], eax
call fcn.180038ae0
mov r8d, dword [rsp + 0x44]
test r8d, r8d
jne 0x180042986
cmp dword [r15 + 4], r8d
je 0x18004296f
mov rax, qword [rbp + 0x28]
mov qword [r13 + 0x38], rax
inc qword [r14 + 0x38]
test r8d, r8d
jne 0x180043008
mov r12, qword [rsp + 0x78]
jmp 0x18003db51
cmp r8b, 0x13
jne 0x18004296f
mov rax, qword [r15 + 0x10]
cmp byte [rax + 0x1c], 0
je 0x18004296f
movzx ecx, word [r15 + 2]
cmp ecx, 4
jne 0x180043390
mov r12, qword [rsp + 0x78]
xor edi, edi
mov r11d, dword [rsp + 0x50]
mov r8d, edi
mov dword [rsp + 0x44], edi
jmp 0x18003db58
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [r14 + 0x68]
test word [rdx + 0x14], ax
je 0x1800429ea
mov rcx, rdx
call fcn.18003c9a0
mov r9, qword [rsp + 0x58]
mov rdx, rax
jmp 0x1800429f3
mov eax, 4
mov word [rdx + 0x14], ax
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
mov r8d, dword [rsp + 0x44]
mov r11d, dword [rsp + 0x50]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 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 0x18003db5d
mov r8, qword [rsp + 0x48]
movsxd rax, dword [r8 + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, qword [r14 + 0x68]
test word [rbx + 0x14], ax
je 0x180042a55
mov rcx, rbx
call fcn.18003c9a0
mov r8, qword [rsp + 0x48]
mov rbx, rax
jmp 0x180042a5e
mov eax, 4
mov word [rbx + 0x14], ax
mov rax, qword [r13 + 0x20]
movsxd rcx, dword [r8 + 4]
shl rcx, 5
mov rdi, qword [rcx + rax + 8]
xor eax, eax
mov edx, eax
cmp dword [r8 + 0xc], eax
je 0x180042a8f
mov rcx, rdi
call fcn.180022df0
mov edx, eax
mov rax, qword [rsp + 0x48]
cmp edx, dword [rax + 0xc]
cmovb edx, dword [rax + 0xc]
mov rcx, rdi
call fcn.180024130
mov r8d, dword [rsp + 0x44]
mov r15, qword [rsp + 0x48]
mov eax, eax
mov qword [rbx], rax
jmp 0x18003db51
mov rax, qword [rsp + 0x48]
mov rbx, qword [rax + 0x10]
movsxd rax, dword [rax + 0xc]
imul rdi, rax, 0x38
add rdi, r12
cmp qword [rbx], rdi
je 0x180042b15
movzx eax, byte [rbx + 0x2a]
mov edx, eax
mov qword [rbx + 0x18], r14
sub rdx, 1
mov qword [rbx], rdi
mov byte [rbx + 0x28], r10b
lea r9d, [rax - 1]
js 0x180042b15
mov r13, qword [rsp + 0x48]
lea r8, [rbx + 0x30]
lea r8, [r8 + rdx*8]
nop dword [rax]
mov eax, dword [r13 + 8]
lea r8, [r8 - 8]
add eax, r9d
dec r9d
cdqe
imul rcx, rax, 0x38
add rcx, r12
sub rdx, 1
mov qword [r8 + 8], rcx
jns 0x180042af0
mov r13, qword [rbp - 0x80]
movzx eax, word [rdi + 0x14]
lea r8, [rbx + 0x30]
mov ecx, 0xf241
and ax, cx
mov rcx, rbx
or ax, 1
mov word [rdi + 0x14], ax
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x2a]
call qword [rax + 0x18]
mov eax, dword [rbx + 0x24]
test eax, eax
je 0x180042bac
jle 0x180042b6e
mov dl, 1
mov rcx, rdi
call fcn.180033120
mov r8, rax
lea rdx, [0x180208280]
mov rcx, r14
call fcn.1800338c0
mov r12d, dword [rbx + 0x24]
mov dword [rsp + 0x44], r12d
mov r12, qword [rsp + 0x78]
mov rax, qword [rsp + 0x48]
lea rdx, [r14 + 0x128]
mov r8d, dword [rbx + 0x20]
mov rcx, r13
mov r9d, dword [rax + 4]
call fcn.180036cb0
mov r8d, dword [rsp + 0x44]
xor edi, edi
mov dword [rbx + 0x24], edi
test r8d, r8d
jne 0x180043008
mov r15, qword [rsp + 0x48]
mov r11d, dword [rsp + 0x50]
jmp 0x18003db58
mov r8d, dword [rsp + 0x44]
mov r15, qword [rsp + 0x48]
mov edx, 1
mov r11d, dword [rsp + 0x50]
mov r14, qword [rsp + 0x68]
xor edi, edi
mov r12, qword [rsp + 0x78]
movzx r10d, byte [rsp + 0x40]
mov r9, qword [rsp + 0x58]
jmp case.0x18003cf1b.89
mov r8d, dword [rsp + 0x44]
jmp 0x180042bb6
mov r8d, dword [rsp + 0x44]
mov r15, qword [rsp + 0x48]
jmp 0x180042bbb
mov edx, 1
jmp 0x180042bc0
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov eax, 0xf7ff
and word [rcx + r12 + 0x14], ax
jmp case.0x18003cf1b.89
mov rcx, qword [rsp + 0x48]
mov rdx, rcx
movsxd rax, dword [rcx + 4]
mov rcx, r12
imul rbx, rax, 0x38
call fcn.18003ca00
mov ecx, dword [rbx + r12 + 0x10]
xor edx, edx
mov r15, qword [rsp + 0x48]
mov r11d, dword [rsp + 0x50]
shl ecx, 3
movsxd r8, ecx
mov rcx, qword [rbx + r12 + 8]
div r8
mov r8, rdx
and edx, 7
shr r8, 3
movsx eax, byte [r8 + rcx]
bts eax, edx
mov byte [r8 + rcx], al
mov r8d, dword [rsp + 0x44]
jmp 0x18003db58
mov rcx, qword [rsp + 0x48]
mov rdx, rcx
movsxd rax, dword [rcx + 4]
mov rcx, r12
imul rbx, rax, 0x38
call fcn.18003ca00
mov ecx, dword [rbx + r12 + 0x10]
xor edx, edx
mov r15, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
shl ecx, 3
movsxd r8, ecx
div r8
mov rax, qword [rbx + r12 + 8]
mov rcx, rdx
shr rcx, 3
movsx r8d, byte [rcx + rax]
movzx eax, dl
and al, 7
mov edx, 1
movzx eax, al
bt r8d, eax
mov r8d, dword [rsp + 0x44]
jb 0x180042cd6
inc dword [r14 + 0xf4]
jmp 0x18003e69e
inc dword [r14 + 0xf0]
movzx r10d, byte [rsp + 0x40]
mov r11d, dword [rsp + 0x50]
jmp case.0x18003cf1b.89
movzx eax, byte [r13 + 0x6e]
test al, 0x41
je 0x180042db3
cmp byte [r14 + 0xc5], 0xfe
je 0x180042db3
mov r9, qword [r15 + 0x10]
test r9, r9
jne 0x180042d21
mov r9, qword [r14 + 0xf8]
test r9, r9
je 0x180042dae
test al, 0x40
je 0x180042d4e
mov rdx, r9
mov rcx, r14
call fcn.18003c040
mov rcx, qword [r13 + 0x100]
mov rdx, rax
mov rbx, rax
call qword [r13 + 0xf8]
mov rcx, rbx
call fcn.180006b70
jmp 0x180042da9
cmp dword [r13 + 0xe4], 1
jle 0x180042d93
mov r8, r9
lea rdx, str.____s
mov rcx, r13
call fcn.180009840
mov rdx, qword [r13 + 0x100]
mov r9, rax
mov r8, r14
mov ecx, 1
mov rbx, rax
call qword [r13 + 0xf8]
mov rdx, rbx
mov rcx, r13
call fcn.180006e10
jmp 0x180042da9
mov rdx, qword [r13 + 0x100]
mov r8, r14
mov ecx, 1
call qword [r13 + 0xf8]
mov edx, 1
mov r9, qword [rsp + 0x58]
mov rax, qword [rsp + 0x48]
mov r15, qword [rsp + 0x48]
mov eax, dword [rax + 4]
cmp eax, dword [0x180241948]
jl 0x180042e03
cmp byte [r15], 0xb5
je 0x18003d124
cmp dword [r14 + 0x90], 1
jle 0x180042e01
mov eax, 0x18
mov rcx, qword [r14 + 0x88]
cmp byte [rax + rcx], 0xf
jne 0x180042df2
mov dword [rax + rcx + 4], edi
inc edx
add rax, 0x18
cmp edx, dword [r14 + 0x90]
jl 0x180042de1
mov eax, edi
mov r8d, dword [rsp + 0x44]
inc eax
mov dword [r15 + 4], eax
inc dword [r14 + 0xec]
jmp 0x18003e699
mov r8d, dword [rsp + 0x44]
mov r15, qword [rsp + 0x48]
jmp 0x18003e69e
mov r8d, dword [rsp + 0x44]
xor edi, edi
mov r15, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
jmp case.0x18003cf1b.89
mov r8d, dword [rsp + 0x44]
mov r14, qword [rsp + 0x68]
mov r15, qword [rsp + 0x48]
mov r12, qword [rsp + 0x78]
jmp 0x18003db51
mov r15, qword [rsp + 0x48]
mov r14, qword [rsp + 0x68]
jmp case.0x18003cf1b.89
mov r15, qword [rsp + 0x48]
xor edi, edi
mov r14, qword [rsp + 0x68]
jmp case.0x18003cf1b.89
mov r15, qword [rsp + 0x48]
xor edi, edi
jmp case.0x18003cf1b.89
mov ecx, dword [r8 + 4]
mov dword [r14 + 0x34], ecx
movzx eax, byte [r8 + 8]
mov byte [r14 + 0xc4], al
test ecx, ecx
je 0x180042f53
movzx eax, word [r8 + 2]
mov rcx, r14
test ax, ax
je 0x180042ef8
mov r8d, eax
lea rdx, str._s_constraint_failed
lea rax, [0x180000000]
mov r8, qword [rax + r8*8 + 0x20e8e0]
call fcn.1800338c0
mov rax, qword [rsp + 0x48]
mov r9, qword [rax + 0x10]
test r9, r9
je 0x180042f08
mov r8, qword [r14 + 0xa8]
lea rdx, str._z:__s
mov rcx, r13
call fcn.180009840
mov qword [r14 + 0xa8], rax
jmp 0x180042f08
mov r8, qword [r8 + 0x10]
lea rdx, [0x180208280]
call fcn.1800338c0
mov r10, qword [rsp + 0x48]
movabs rax, 0x2aaaaaaaaaaaaaab
mov r9, qword [r14 + 0xf8]
mov rcx, r10
sub rcx, qword [rsp + 0x58]
imul rcx
mov rax, qword [r14 + 0xa8]
mov ecx, dword [r10 + 4]
sar rdx, 2
mov r8, rdx
mov qword [rsp + 0x20], rax
shr r8, 0x3f
add r8, rdx
lea rdx, str.abort_at__d_in___s_:__s
call fcn.180009b30
mov rcx, r14
call fcn.180036680
mov rbx, qword [rsp + 0x60]
mov edi, eax
mov r15d, 1
cmp eax, 5
jne 0x180042f76
mov dword [r14 + 0x34], eax
jmp 0x1800430d0
cmp dword [r14 + 0x34], 0
mov edi, 0x65
cmovne edi, r15d
jmp 0x1800430d0
mov ecx, 0x172ef
call fcn.1800ce940
mov r8d, eax
mov dword [rsp + 0x44], eax
mov r13, qword [rbp - 0x80]
mov r14, qword [rsp + 0x68]
jmp 0x180043003
movsxd rax, edi
mov rcx, rsi
lea rdi, [rax + rax*2]
mov ebx, dword [r15 + rdi*8 + 8]
shr ebx, 4
and ebx, 0xf
dec ebx
call fcn.18003cda0
mov r8, rax
lea rdx, str.cannot_store__s_value_in__s_column__s._s
mov rax, qword [r15 + rdi*8]
mov qword [rsp + 0x28], rax
mov rax, qword [r14]
mov r14, qword [rsp + 0x68]
mov qword [rsp + 0x20], rax
mov rcx, r14
lea rax, [0x180000000]
mov r9, qword [rax + rbx*8 + 0x243360]
call fcn.1800338c0
mov r8d, 0xc13
mov dword [rsp + 0x44], r8d
mov rsi, qword [rsp + 0x70]
mov r15d, 1
mov edi, listen
lea r12, [0x18020e2a4]
mov rbx, qword [rsp + 0x60]
cmp byte [r13 + 0x67], 0
je 0x18004358f
mov r8d, 7
mov dword [rsp + 0x44], r8d
jmp 0x1800435bf
mov r14, qword [rsp + 0x68]
lea rdx, str.cannot_open_savepoint___SQL_statements_in_progress
mov rcx, r14
call fcn.1800338c0
mov r8d, 5
mov dword [rsp + 0x44], r8d
jmp 0x180043008
mov r14, qword [rsp + 0x68]
lea rdx, str.cannot_release_savepoint___SQL_statements_in_progress
mov rcx, r14
call fcn.1800338c0
mov r8d, 5
jmp 0x180042ffe
mov byte [r13 + 0x65], 0
mov r14, rbx
mov rsi, qword [rsp + 0x70]
jmp 0x18004300e
mov rcx, qword [rsp + 0x48]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x58]
mov edi, 5
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rbx + 0x30], edx
mov byte [r13 + 0x65], 0
mov dword [rbx + 0x34], edi
mov r14, rbx
mov rsi, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x60]
nop dword [rax + rax]
cmp rsi, rbx
jb 0x1800436a6
mov rdx, qword [r13 + 0x210]
test rdx, rdx
je 0x1800436a6
mov eax, dword [r13 + 0x220]
mov rcx, qword [r13 + 0x218]
add rbx, rax
call rdx
test eax, eax
je 0x1800430d0
mov rbx, 0xffffffffffffffff
lea r8d, [rbx + 0xa]
jmp 0x18004337a
mov edi, listen
bt rax, 0x14
mov r8d, 8
cmovae r8d, edi
mov dword [rsp + 0x44], r8d
lea r15d, [rdi - 0xa]
jmp 0x180043013
mov r14, qword [rsp + 0x68]
mov r15d, 1
mov rsi, qword [rsp + 0x70]
cmp r8b, 5
jne 0x18004300e
mov edi, dword [rsp + 0x44]
mov rcx, rbx
sub rcx, qword [rsp + 0x58]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov dword [r14 + 0x34], r8d
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [r14 + 0x30], edx
jmp 0x1800430c3
mov r14, qword [rsp + 0x68]
mov rdx, qword [r14 + 0xa8]
mov rcx, r13
call fcn.180006e10
lea rdx, str.database_schema_has_changed
mov rcx, r13
call fcn.1800072d0
mov qword [r14 + 0xa8], rax
mov rax, qword [r13 + 0x20]
movsxd rdx, dword [r15 + 4]
mov rcx, rdx
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov eax, dword [rbp + 0x20]
cmp dword [rcx], eax
je 0x1800431d0
mov rcx, r13
call fcn.1800638c0
mov rbx, rdi
mov eax, dword [rbx]
mov r8d, setsockopt
and eax, 0xfffffffd
or eax, 1
and eax, 0xffffffef
mov dword [rbx], eax
jmp 0x180042ffe
mov r8d, 0x204
mov dword [rsp + 0x44], r8d
jmp 0x180043008
mov rcx, qword [rbx + 0x10]
call fcn.180023c00
mov r8d, dword [rsp + 0x44]
jmp 0x18004300e
mov r13, qword [rbp - 0x80]
mov r14, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
lea rdx, str.string_or_blob_too_big
mov rcx, r14
call fcn.1800338c0
mov r8d, reloc.WS2_32.dll_select
mov dword [rsp + 0x44], r8d
jmp 0x180043008
lea r8, str.index_corruption
mov edx, 0x17fe8
mov ecx, 0x30b
call fcn.1800ce910
mov r8d, eax
mov dword [rsp + 0x44], eax
jmp 0x180043008
mov edi, listen
lea r12, [0x18020e2a4]
mov ecx, edi
mov qword [rsp + 0x20], r12
mov r9d, 0x180b5
lea r8, str.database_corruption
lea rdx, str._s_at_line__d_of___.10s_
call fcn.180009b30
mov r8d, edi
mov dword [rsp + 0x44], edi
lea r15d, [rdi - 0xa]
jmp 0x18004301a
mov r8d, 6
mov byte [r14 + 0xc4], 2
mov dword [rsp + 0x44], r8d
jmp 0x18004300e
call fcn.180063950
jmp 0x180043554
mov rcx, qword [rbp - 0x58]
call fcn.180006b70
mov r8d, dword [rsp + 0x44]
jmp 0x180043008
mov r15d, 1
lea rdx, str.too_many_levels_of_trigger_recursion
mov dword [rsp + 0x44], r15d
mov r14, rcx
call fcn.1800338c0
mov r8d, r15d
jmp 0x18004300e
call fcn.1800390f0
mov r8, rax
lea rdx, [0x180208280]
mov rcx, r14
call fcn.1800338c0
mov r8d, dword [rsp + 0x44]
jmp 0x180043008
mov r14, qword [rsp + 0x68]
lea rax, str.into
cmp ebx, 5
lea r8, str.out_of
mov r15d, 1
lea rdx, str.cannot_change__s_wal_mode_from_within_a_transaction
cmove r8, rax
mov dword [rsp + 0x44], r15d
mov rcx, r14
call fcn.1800338c0
mov rsi, qword [rsp + 0x70]
mov r8d, r15d
jmp 0x18004300e
call qword [rdi + 0x38]
jmp 0x180043554
mov r8d, 6
mov dword [rsp + 0x44], r8d
jmp 0x180043008
mov rbx, 0xffffffffffffffff
mov r8d, 9
mov r15d, 1
mov edi, listen
mov dword [rsp + 0x44], r8d
lea r12, [0x18020e2a4]
jmp 0x18004301f
movzx eax, cl
cmp ecx, 5
mov ecx, 2
cmove eax, ecx
mov byte [r14 + 0xc4], al
jmp 0x180043008
mov eax, dword [r14 + 0x2c]
mov rbx, qword [rsp + 0x48]
add eax, 2
or eax, 1
mov dword [r14 + 0x2c], eax
movsxd rax, dword [rbx + 4]
imul rcx, rax, 0x38
add rcx, r12
mov qword [r14 + 0xa0], rcx
cmp byte [r13 + 0x67], 0
jne 0x180043554
test byte [r13 + 0x6e], 4
je 0x1800433fe
mov rdx, qword [r13 + 0x100]
xor r9d, r9d
mov r8, r14
lea ecx, [r9 + 4]
call qword [r13 + 0xf8]
mov r9, qword [rsp + 0x58]
mov rcx, rbx
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, r9
mov edi, 0x64
imul rcx
lea r15d, [rdi - 0x63]
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
inc edx
mov dword [r14 + 0x30], edx
jmp 0x1800430c3
mov rax, qword [rsp + 0x48]
mov ebx, dword [rax + 4]
mov ecx, dword [rax + 8]
movzx eax, byte [r13 + 0x65]
cmp ebx, eax
je 0x18004350a
test ecx, ecx
je 0x180043466
mov edx, 0x204
mov rcx, r13
call fcn.1800cb550
mov al, 1
mov r15d, 1
jmp 0x18004349e
test ebx, ebx
je 0x180043480
cmp dword [r13 + 0xe0], 0
jle 0x180043480
lea rdx, str.cannot_commit_transaction___SQL_statements_in_progress
jmp 0x180043046
mov r15d, 1
mov rcx, r14
mov edx, r15d
call fcn.180036610
mov edi, eax
test eax, eax
jne 0x1800430c3
movzx eax, bl
mov rcx, r14
mov byte [r13 + 0x65], al
call fcn.180036680
cmp eax, 5
jne 0x1800434ef
mov rcx, qword [rsp + 0x48]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x58]
mov edi, 5
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov eax, r15d
sub al, bl
mov dword [r14 + 0x30], edx
mov byte [r13 + 0x65], al
mov dword [r14 + 0x34], edi
jmp 0x1800430c3
mov rcx, r13
call fcn.1800cada0
cmp dword [r14 + 0x34], 0
mov edi, 0x65
cmovne edi, r15d
jmp 0x1800430c3
test ebx, ebx
jne 0x180043517
lea rdx, str.cannot_start_a_transaction_within_a_transaction
jmp 0x18004352b
test ecx, ecx
lea rax, str.cannot_rollback___no_transaction_is_active
lea rdx, str.cannot_commit___no_transaction_is_active
cmovne rdx, rax
mov rcx, r14
call fcn.1800338c0
mov r15d, 1
mov r8d, r15d
mov dword [rsp + 0x44], r15d
jmp 0x18004300e
mov r13, qword [rbp - 0x80]
mov r14, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x60]
mov rcx, r13
call fcn.180007460
lea rdx, [0x180207328]
mov rcx, r14
call fcn.1800338c0
mov r8d, 7
jmp 0x180043374
mov r13, qword [rbp - 0x80]
mov r14, r15
jmp 0x180043008
mov r15, rdx
jmp 0x18004300e
cmp r8d, 0x210a
jne 0x1800435bf
mov r9d, 0x18947
mov qword [rsp + 0x20], r12
lea r8, str.database_corruption
mov ecx, edi
lea rdx, str._s_at_line__d_of___.10s_
call fcn.180009b30
mov r8d, edi
mov dword [rsp + 0x44], edi
cmp qword [r14 + 0xa8], 0
jne 0x1800435ec
cmp r8d, 0xc0a
je 0x1800435ec
mov ecx, r8d
call fcn.1800cb6c0
mov r8, rax
lea rdx, [0x180208280]
mov rcx, r14
call fcn.1800338c0
mov r12d, dword [rsp + 0x44]
mov rcx, r13
mov edx, r12d
mov dword [r14 + 0x34], r12d
call fcn.18000a900
mov rcx, qword [rsp + 0x48]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x58]
mov r9, qword [r14 + 0xf8]
imul rcx
mov rax, qword [r14 + 0xa8]
mov ecx, r12d
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.180009b30
cmp byte [r14 + 0xc7], 2
jne 0x180043659
mov rcx, r14
call fcn.180036680
cmp r12d, 0xc0a
jne 0x18004366c
mov rcx, r13
call fcn.180007460
jmp 0x180043687
cmp r12d, 0xb
jne 0x180043687
cmp byte [r13 + 0x65], 0
jne 0x180043687
movabs rax, 0x200000000
or qword [r13 + 0x30], rax
movzx eax, byte [rbp - 0x78]
mov edi, r15d
test al, al
je 0x1800430d0
lea edx, [rax - 1]
mov rcx, r13
call fcn.1800638c0
jmp 0x1800430d0
add dword [r14 + 0xe4], esi
cmp dword [r14 + 0xd0], 0
movaps xmm7, xmmword [rsp + 0x1e0]
movaps xmm6, xmmword [rsp + 0x1f0]
mov r15, qword [rsp + 0x200]
mov r13, qword [rsp + 0x208]
mov r12, qword [rsp + 0x248]
mov rsi, qword [rsp + 0x240]
mov rbx, qword [rsp + 0x238]
je 0x1800436f7
mov rcx, r14
call fcn.180034d80
mov eax, edi
mov rcx, qword [rbp + 0xd8]
xor rcx, rsp
call fcn.18015c7e0
add rsp, 0x210
pop r14
pop rdi
pop rbp
ret