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

Disassembly:
mov r11, rsp
push rbp
push rsi
push r15
lea rbp, [r11 - 0x158]
sub rsp, 0x240
mov rax, qword [0x180243280]
xor rax, rsp
mov qword [rbp + 0xf8], rax
mov rsi, rcx
mov qword [r11 + 0x10], rbx
mov qword [r11 + 0x18], rdi
xor al, al
mov rdi, qword [rcx + 0x88]
mov qword [r11 + 0x20], r12
mov r12, qword [rsi]
mov qword [r11 - 0x28], r14
mov r11, qword [rsi + 0x68]
mov qword [rsp + 0x70], rcx
xor ecx, ecx
mov r15d, ecx
movzx r9d, byte [r12 + 0x64]
mov r10d, ecx
mov byte [rsp + 0x40], r9b
mov r14d, ecx
mov qword [rsp + 0x78], rdi
mov qword [rsp + 0x48], rdi
mov dword [rsp + 0x54], ecx
mov qword [rbp - 0x80], r12
mov byte [rbp - 0x78], al
mov dword [rsp + 0x50], ecx
mov qword [rsp + 0x68], rcx
mov qword [rsp + 0x58], r11
mov dword [rbp - 0x74], ecx
cmp dword [rsi + 0xd0], ecx
je 0x1800b59b8
mov rcx, rsi
call fcn.1800ad0d0
mov r11, qword [rsp + 0x58]
mov r10d, r14d
movzx r9d, byte [rsp + 0x40]
cmp qword [r12 + 0x210], r14
je 0x1800b59da
mov ecx, dword [r12 + 0x220]
xor edx, edx
mov eax, dword [rsi + 0xe4]
div ecx
sub ecx, edx
mov ebx, ecx
jmp 0x1800b59e1
mov rbx, 0xffffffffffffffff
cmp dword [rsi + 0x34], 7
mov qword [rsp + 0x238], r13
movaps xmmword [rsp + 0x220], xmm6
movaps xmmword [rsp + 0x210], xmm7
movaps xmmword [rsp + 0x200], xmm8
mov qword [rsp + 0x60], rbx
je 0x1800bc0ee
xor edx, edx
mov dword [rsi + 0x34], edx
mov qword [rsi + 0x48], rdx
mov eax, dword [r12 + 0x198]
mov dword [r12 + 0x298], edx
test eax, eax
jne 0x1800bc0d5
movsxd rax, dword [rsi + 0x30]
xorps xmm8, xmm8
lea rcx, [rax + rax*2]
lea r13, [rdi + rcx*8]
lea rcx, [0x180000000]
movzx ebx, byte [r13]
inc r14
mov r8d, dword [reloc.WS2_32.dll_accept]
mov qword [rsp + 0x48], r13
mov qword [rsp + 0x68], r14
cmp ebx, 0xb8
ja case.default.0x1800b5a82
movsxd rax, ebx
mov ecx, dword [rcx + rax*4 + 0xbc2c0]
lea rax, [0x180000000]
add rcx, rax
jmp rcx
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
sub rcx, rdi
imul r8, rax, 0x38
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov word [r8 + r11 + 0x14], 4
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rax, rdx
cdqe
mov qword [r8 + r11], rax
jmp case.0x1800b5a82.9
movsxd rax, dword [r13 + 4]
imul rax, rax, 0x38
test byte [rax + r11 + 0x14], 4
je case.0x1800b5a82.89
mov rax, qword [rax + r11]
lea rcx, [rax + rax*2]
lea r13, [rdi + rcx*8]
jmp case.0x1800b5a82.89
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
mov eax, dword [r13 + 0xc]
dec eax
cdqe
mov qword [rcx + r11], rax
mov word [rcx + r11 + 0x14], 4
cmp dword [r13 + 8], 0
jne 0x1800bb25d
jmp case.0x1800b5a82.89
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 4]
sub rbx, qword [rsi + 0x88]
imul r8, rax, 0x38
mov rax, qword [r8 + r11]
lea rcx, [rax + rax*2]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rbx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rax, rdx
dec eax
cdqe
mov qword [r8 + r11], rax
mov eax, dword [rdi + rcx*8 + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r13, [rdi + rcx*8]
xor edx, edx
lea rcx, [0x180000000]
mov r12, qword [rbp - 0x80]
add r13, 0x18
mov r14, qword [rsp + 0x68]
jmp 0x1800b5a49
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 4]
sub rbx, rdi
imul r8, rax, 0x38
movabs rax, 0x2aaaaaaaaaaaaaab
imul rbx
movsxd rcx, dword [r8 + r11]
sar rdx, 2
mov rax, rdx
mov word [r8 + r11 + 0x14], 4
shr rax, 0x3f
add rax, rdx
lea rcx, [rcx + rcx*2]
cdqe
mov qword [r8 + r11], rax
jmp 0x1800b5b58
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
je case.0x1800b5a82.89
mov rbx, qword [rsi + 0x108]
test rbx, rbx
je 0x1800bba6b
cmp dword [r13 + 4], 0
jne 0x1800bba6b
mov rax, qword [rbx + 8]
mov rcx, r12
mov rdx, qword [rsi + 0x38]
dec dword [rsi + 0x118]
mov qword [rsi + 0x108], rax
call fcn.1800b1110
mov rcx, rbx
call fcn.1800adde0
cmp dword [r13 + 8], 4
jne 0x1800b5c24
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
mov eax, dword [rax + rcx*8 + 8]
dec eax
mov rdi, qword [rsi + 0x88]
mov r11, qword [rsi + 0x68]
movzx r9d, byte [rsp + 0x40]
cdqe
mov qword [rsp + 0x78], rdi
mov qword [rsp + 0x58], r11
lea rcx, [rax + rax*2]
lea r13, [rdi + rcx*8]
mov r10d, dword [rsp + 0x50]
jmp 0x1800b5b5c
movsxd rax, dword [r13 + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, qword [rsi + 0x68]
test word [rcx + 0x14], ax
je 0x1800b5c76
call fcn.1800b54f0
mov rcx, rax
xor edx, edx
jmp 0x1800b5c7c
mov word [rcx + 0x14], 4
movsxd rax, dword [r13 + 4]
mov qword [rcx], rax
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp case.0x1800b5a82.89
movsxd rax, dword [r13 + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [rsi + 0x68]
test word [rdx + 0x14], ax
je 0x1800b5cbc
mov rcx, rdx
call fcn.1800b54f0
mov rdx, rax
jmp 0x1800b5cc2
mov word [rdx + 0x14], 4
mov rax, qword [r13 + 0x10]
mov rcx, qword [rax]
mov qword [rdx], rcx
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp 0x1800b5b5c
movsxd rax, dword [r13 + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [rsi + 0x68]
test word [rdx + 0x14], ax
je 0x1800b5d03
mov rcx, rdx
call fcn.1800b54f0
mov rdx, rax
mov word [rdx + 0x14], 8
jmp 0x1800b5cc2
movsxd rax, dword [r13 + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, qword [rsi + 0x68]
test word [rbx + 0x14], ax
je 0x1800b5d2f
mov rcx, rbx
call fcn.1800b54f0
mov rbx, rax
jmp 0x1800b5d35
mov word [rbx + 0x14], 4
mov rdx, qword [r13 + 0x10]
test rdx, rdx
jne 0x1800b5d46
xor r14d, r14d
mov eax, r14d
jmp 0x1800b5d61
mov rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp byte [rdx + rax], 0
jne 0x1800b5d50
and eax, 0x3fffffff
xor r14d, r14d
movzx edi, byte [rsp + 0x40]
mov dword [r13 + 4], eax
cmp dil, 1
je 0x1800b5de9
mov r9b, 1
mov qword [rsp + 0x20], r14
mov r8, 0xffffffffffffffff
mov rcx, rbx
call fcn.1800aab00
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800bbdae
mov edx, edi
mov rcx, rbx
call fcn.1800a99a0
test eax, eax
jne 0x1800bc0e9
mov eax, 0x2000
mov dword [rbx + 0x20], r14d
or word [rbx + 0x14], ax
mov rax, qword [rsp + 0x48]
cmp byte [rax + 1], 0xfa
jne 0x1800b5dd1
mov rdx, qword [rax + 0x10]
mov rcx, r12
call fcn.18007d900
mov rax, qword [rsp + 0x48]
mov r13, qword [rsp + 0x48]
mov byte [rax + 1], 0xfa
mov rax, qword [rbx + 8]
mov qword [r13 + 0x10], rax
mov eax, dword [rbx + 0x10]
mov dword [r13 + 4], eax
cmp eax, dword [r12 + 0x88]
jg 0x1800bbdae
mov byte [r13], 0x49
jmp 0x1800b5e03
movzx edi, byte [rsp + 0x40]
movsxd rax, dword [r13 + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [rsi + 0x68]
test word [rdx + 0x14], ax
je 0x1800b5e25
mov rcx, rdx
call fcn.1800b54f0
mov rdx, rax
mov r11, qword [rsp + 0x58]
mov word [rdx + 0x14], 0x2202
mov rax, qword [r13 + 0x10]
mov qword [rdx + 8], rax
mov eax, dword [r13 + 4]
mov dword [rdx + 0x10], eax
mov byte [rdx + 0x16], dil
movsxd rax, dword [r13 + 0xc]
test eax, eax
jle 0x1800bb74d
mov r10d, dword [rsp + 0x50]
imul rcx, rax, 0x38
movzx eax, word [r13 + 2]
cmp qword [rcx + r11], rax
jne 0x1800bb752
movzx r9d, byte [rsp + 0x40]
mov rdi, qword [rsp + 0x78]
mov word [rdx + 0x14], 0x2210
jmp 0x1800b5b5c
mov rbx, qword [rsp + 0x48]
mov r12d, 0x9000
movsxd rax, dword [rbx + 8]
imul rcx, rax, 0x38
add rcx, qword [rsi + 0x68]
test word [rcx + 0x14], r12w
je 0x1800b5ea5
call fcn.1800b54f0
mov rcx, rax
jmp 0x1800b5eab
mov word [rcx + 0x14], 4
cmp dword [rbx + 4], 0
mov esi, 1
mov edi, dword [rbx + 0xc]
mov edx, 0x101
mov eax, dword [rbx + 8]
cmovne si, dx
xor r14d, r14d
mov word [rcx + 0x14], si
sub edi, eax
mov dword [rcx + 0x10], r14d
lea rbx, [rcx + 0x14]
test edi, edi
jle 0x1800bb743
nop dword [rax]
test word [rbx + 0x38], r12w
lea rbx, [rbx + 0x38]
je 0x1800b5ef4
lea rcx, [rbx - 0x14]
call fcn.1800aa0d0
dec edi
mov word [rbx], si
mov dword [rbx - 4], r14d
test edi, edi
jg 0x1800b5ee0
mov r13, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x70]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov rdi, qword [rsp + 0x78]
jmp 0x1800b5b5c
movsxd rax, dword [r13 + 4]
mov r8d, 0xffc1
imul rcx, rax, 0x38
movzx eax, word [rcx + r11 + 0x14]
and ax, r8w
or ax, 1
mov word [rcx + r11 + 0x14], ax
jmp case.0x1800b5a82.89
movsxd rax, dword [r13 + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, qword [rsi + 0x68]
test word [rbx + 0x14], ax
je 0x1800b5f70
mov rcx, rbx
call fcn.1800b54f0
mov rbx, rax
jmp 0x1800b5f76
mov word [rbx + 0x14], 4
mov rax, qword [rsp + 0x48]
mov rcx, rbx
mov rdx, qword [rax + 0x10]
movsxd rax, dword [rax + 4]
test rdx, rdx
jne 0x1800b5fa4
mov edx, eax
call fcn.1800aa720
mov rcx, rbx
call fcn.1800a9e30
test eax, eax
jne 0x1800bc0e9
jmp 0x1800b5fb7
xor r10d, r10d
mov r8, rax
xor r9d, r9d
mov qword [rsp + 0x20], r10
call fcn.1800aab00
movzx r9d, byte [rsp + 0x40]
mov r13, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov byte [rbx + 0x16], r9b
jmp 0x1800b5b5c
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 4]
imul rdi, rax, 0x38
add rdi, qword [rsi + 0x80]
lea rcx, [rdi - 0x38]
call fcn.1800aa9b0
test eax, eax
jne 0x1800bbdae
movsxd rax, dword [rbx + 8]
mov r11, qword [rsp + 0x58]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, r11
test word [rbx + 0x14], ax
je 0x1800b6022
mov rcx, rbx
call fcn.1800aa700
mov r11, qword [rsp + 0x58]
movups xmm0, xmmword [rdi - 0x38]
mov r13, qword [rsp + 0x48]
mov ecx, 0xafff
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
movups xmmword [rbx], xmm0
movsd xmm1, qword [rdi - 0x28]
mov rdi, qword [rsp + 0x78]
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 0x1800b5b5c
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, r11
add rbx, r11
xor r14d, r14d
nop word [rax + rax]
mov eax, 0x9000
test word [rbx + 0x14], ax
jne 0x1800b60a1
cmp dword [rbx + 0x20], r14d
je 0x1800b60a9
mov rcx, rbx
call fcn.1800aa110
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], 1
mov dword [rdi + 0x20], r14d
test word [rbx + 0x14], ax
je 0x1800b60ee
mov rcx, rbx
call fcn.1800a9da0
test eax, eax
jne 0x1800bc0e4
add rdi, 0x38
add rbx, 0x38
sub esi, 1
jne 0x1800b6090
mov r13, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x70]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov rdi, qword [rsp + 0x78]
jmp 0x1800b5b5c
mov rcx, qword [rsp + 0x48]
mov r14d, 0x4000
mov r13, rcx
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, r11
add rbx, r11
nop word [rax + rax]
mov r8d, r14d
mov rdx, rdi
mov rcx, rbx
call fcn.1800aaa20
test word [rbx + 0x14], r14w
je 0x1800b6175
mov rcx, rbx
call fcn.1800a9da0
test eax, eax
jne 0x1800bc0e4
movzx eax, word [rbx + 0x14]
bt ax, 0xb
jae 0x1800b6193
test byte [r13 + 2], 2
je 0x1800b6193
mov ecx, 0xf7ff
and ax, cx
mov word [rbx + 0x14], ax
mov eax, esi
dec esi
test eax, eax
je 0x1800bb748
add rbx, 0x38
add rdi, 0x38
jmp 0x1800b6150
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, r11
add rcx, r11
call fcn.1800aaa20
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov r13, qword [rsp + 0x48]
jmp 0x1800b5b5c
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, r11
mov rax, qword [rcx + r11]
mov ecx, 0x9000
test word [r8 + 0x14], cx
je 0x1800b6236
mov rdx, rax
mov rcx, r8
call fcn.1800aa770
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov r13, qword [rsp + 0x48]
jmp 0x1800b5b5c
mov qword [r8], rax
mov word [r8 + 0x14], 4
mov r13, qword [rsp + 0x48]
jmp case.0x1800b5a82.89
xor edx, edx
mov rcx, rsi
call fcn.1800aea20
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
je 0x1800b5ccc
mov rdi, qword [rsp + 0x48]
mov r13d, 1
mov rbx, qword [rsp + 0x60]
mov r14, qword [rsp + 0x68]
mov eax, ntohl
jmp 0x1800bbba9
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul r14, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
add r14, r11
imul rdi, rax, 0x38
movzx r15d, word [r14 + 0x14]
add rbx, r11
movzx eax, r15b
add rdi, r11
or al, byte [rbx + 0x14]
test al, 1
je 0x1800b62cf
mov rcx, rdi
call fcn.1800aa700
mov r15d, dword [rsp + 0x54]
mov r13, qword [rsp + 0x48]
jmp 0x1800b5f0b
test r15b, 0x12
jne 0x1800b6302
xor r8d, r8d
movzx edx, r9b
mov rcx, r14
call fcn.1800a9ea0
test eax, eax
jne 0x1800bc0e9
movzx r15d, word [r14 + 0x14]
mov r13d, 0xfffd
and r15w, r13w
mov eax, 0x400
jmp 0x1800b631d
mov eax, 0x400
test ax, r15w
je 0x1800b6317
mov rcx, r14
call fcn.1800a9e30
jmp 0x1800b62e4
mov r13d, 0xfffd
movzx esi, word [rbx + 0x14]
test sil, 0x12
jne 0x1800b6339
movzx edx, byte [rsp + 0x40]
xor r8d, r8d
mov rcx, rbx
call fcn.1800a9ea0
jmp 0x1800b6346
test ax, si
je 0x1800b6356
mov rcx, rbx
call fcn.1800a9e30
test eax, eax
jne 0x1800bc0e4
movzx esi, word [rbx + 0x14]
and si, r13w
mov r8, qword [rbp - 0x80]
mov edx, dword [rbx + 0x10]
add edx, dword [r14 + 0x10]
movsxd r12, edx
movsxd rax, dword [r8 + 0x88]
cmp r12, rax
jg 0x1800bbda6
xor r10d, r10d
mov rcx, rdi
mov r8d, r10d
cmp rdi, rbx
sete r8b
add edx, 2
call fcn.1800a99c0
test eax, eax
jne 0x1800bc0e0
movzx eax, word [rdi + 0x14]
mov ecx, 0xf242
and ax, cx
or ax, 2
mov word [rdi + 0x14], ax
cmp rdi, rbx
je 0x1800b63c2
movsxd r8, dword [rbx + 0x10]
mov rdx, qword [rbx + 8]
mov rcx, qword [rdi + 8]
call fcn.1801da970
mov word [rbx + 0x14], si
movsxd rcx, dword [rbx + 0x10]
add rcx, qword [rdi + 8]
movsxd r8, dword [r14 + 0x10]
mov rdx, qword [r14 + 8]
call fcn.1801da970
movzx r9d, byte [rsp + 0x40]
mov word [r14 + 0x14], r15w
cmp r9b, 1
jbe 0x1800b63ec
and r12, 0xfffffffffffffffe
mov rax, qword [rdi + 8]
mov r15d, dword [rsp + 0x54]
mov r13, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x70]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov byte [r12 + rax], 0
mov rax, qword [rdi + 8]
mov byte [r12 + rax + 1], 0
mov eax, 0x200
or word [rdi + 0x14], ax
mov dword [rdi + 0x10], r12d
mov byte [rdi + 0x16], r9b
mov rdi, qword [rsp + 0x78]
jmp 0x1800b5b5c
mov rcx, qword [rsp + 0x48]
mov r13, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rsi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rdi, rax, 0x38
movsxd rax, dword [r13 + 0xc]
add rsi, r11
imul r14, rax, 0x38
movzx ebx, word [rsi + 0x14]
add rdi, r11
add r14, r11
movzx ecx, word [rdi + 0x14]
movzx eax, cl
and al, bl
test al, 4
jne 0x1800b64a7
or cl, bl
test cl, 1
jne 0x1800b6635
and bx, 0x2d
jne 0x1800b648b
mov rcx, rsi
call fcn.1800b5440
movzx ebx, ax
movzx eax, word [rdi + 0x14]
and ax, 0x2d
jne 0x1800b649d
mov rcx, rdi
call fcn.1800b5440
and al, bl
test al, 4
je 0x1800b6581
movzx edx, byte [r13]
mov r8, qword [rdi]
mov rcx, qword [rsi]
mov qword [rbp + 0xa0], r8
sub edx, 0x6a
je 0x1800b6549
sub edx, 1
je 0x1800b6538
sub edx, 1
je 0x1800b6527
cmp edx, 1
je 0x1800b64f8
test rcx, rcx
je 0x1800b6633
cmp rcx, 0xffffffffffffffff
mov eax, 1
cmove rcx, rax
mov rax, r8
cqo
idiv rcx
mov qword [rbp + 0xa0], rdx
jmp 0x1800b655c
test rcx, rcx
je 0x1800b6633
cmp rcx, 0xffffffffffffffff
jne 0x1800b6516
movabs rax, 0x8000000000000000
cmp r8, rax
je 0x1800b6581
mov rax, r8
cqo
idiv rcx
mov qword [rbp + 0xa0], rax
jmp 0x1800b655c
mov rdx, rcx
lea rcx, [rbp + 0xa0]
call fcn.180083fd0
jmp 0x1800b6558
mov rdx, rcx
lea rcx, [rbp + 0xa0]
call fcn.180083f60
jmp 0x1800b6558
mov rdx, rcx
lea rcx, [rbp + 0xa0]
call fcn.180083f10
test eax, eax
jne 0x1800b6581
mov rax, qword [rbp + 0xa0]
mov ecx, 0xf244
mov qword [r14], rax
movzx eax, word [r14 + 0x14]
and ax, cx
or ax, 4
mov word [r14 + 0x14], ax
jmp 0x1800b5f06
mov rcx, rsi
call fcn.1800aa250
mov rcx, rdi
movaps xmm6, xmm0
call fcn.1800aa250
movzx ecx, byte [r13]
sub ecx, 0x6a
je 0x1800b6603
sub ecx, 1
je 0x1800b65fd
sub ecx, 1
je 0x1800b65f7
cmp ecx, 1
je 0x1800b65e8
mov rcx, rsi
call fcn.1800aa1c0
mov rcx, rdi
mov rbx, rax
call fcn.1800aa1c0
mov qword [rbp + 0xa0], rax
test rbx, rbx
je 0x1800b6633
cmp rbx, 0xffffffffffffffff
mov ecx, 1
cqo
xorps xmm0, xmm0
cmove rbx, rcx
idiv rbx
cvtsi2sd xmm0, rdx
jmp 0x1800b6607
ucomisd xmm6, xmm8
jp 0x1800b65f1
je 0x1800b6633
divsd xmm0, xmm6
jmp 0x1800b6607
mulsd xmm0, xmm6
jmp 0x1800b6607
subsd xmm0, xmm6
jmp 0x1800b6607
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 0x1800b6674
xor edx, edx
mov eax, 0x9000
test word [r14 + 0x14], ax
je 0x1800b664e
mov rcx, r14
call fcn.1800aa0d0
jmp 0x1800b5f06
mov word [r14 + 0x14], 1
mov rsi, qword [rsp + 0x70]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
movzx r9d, byte [rsp + 0x40]
mov rdi, qword [rsp + 0x78]
jmp case.0x1800b5a82.89
movzx eax, word [r14 + 0x14]
mov ecx, 0xf248
and ax, cx
movsd qword [r14], xmm0
or ax, 8
mov word [r14 + 0x14], ax
jmp 0x1800b5f06
movsxd rax, dword [r13 + 4]
test eax, eax
je case.0x1800b5a82.89
imul rcx, rax, 0x38
xor edx, edx
add rcx, r11
call fcn.1800aa7b0
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp 0x1800b5b5c
mov rcx, qword [rsp + 0x48]
mov r13, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
movsxd rax, dword [r13 + 0xc]
add rdi, r11
imul rsi, rax, 0x38
add rcx, r11
add rsi, r11
movzx eax, byte [rcx + 0x14]
or al, byte [rdi + 0x14]
test al, 1
je 0x1800b6726
mov eax, 0x9000
test word [rsi + 0x14], ax
je 0x1800b6711
mov rcx, rsi
call fcn.1800aa0d0
jmp 0x1800b5f06
mov rdi, qword [rsp + 0x78]
mov word [rsi + 0x14], 1
mov rsi, qword [rsp + 0x70]
jmp case.0x1800b5a82.89
call fcn.1800aa1c0
mov rcx, rdi
mov rbx, rax
call fcn.1800aa1c0
movzx ecx, byte [r13]
mov rdx, rax
cmp cl, 0x66
jne 0x1800b6748
and rbx, rax
jmp 0x1800b67bf
cmp cl, 0x67
jne 0x1800b6752
or rbx, rdx
jmp 0x1800b67bf
test rdx, rdx
je 0x1800b67bf
jns 0x1800b676c
mov eax, 0xd1
sub al, cl
movzx ecx, al
cmp rdx, 0xffffffffffffffc0
jle 0x1800b6772
neg rdx
cmp rdx, 0x40
jl 0x1800b678d
test rbx, rbx
jns 0x1800b6785
cmp cl, 0x68
je 0x1800b6785
mov rbx, 0xffffffffffffffff
jmp 0x1800b67bf
xor r10d, r10d
mov ebx, r10d
jmp 0x1800b67bf
cmp cl, 0x68
mov rcx, rdx
jne 0x1800b679d
shl rbx, cl
mov r8, rbx
jmp 0x1800b67bc
mov r8, rbx
shr r8, cl
test rbx, rbx
jns 0x1800b67bc
mov ecx, 0x40
mov rax, 0xffffffffffffffff
sub cl, dl
shl rax, cl
or r8, rax
mov rbx, r8
movzx eax, word [rsi + 0x14]
mov ecx, 0xf244
and ax, cx
mov qword [rsi], rbx
or ax, 4
mov word [rsi + 0x14], ax
jmp 0x1800b5f06
movsxd rax, dword [r13 + 4]
imul rbx, rax, 0x38
add rbx, r11
mov rcx, rbx
call fcn.1800aa370
movsxd rax, dword [r13 + 8]
add qword [rbx], rax
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp 0x1800b5b5c
movsxd rax, dword [r13 + 4]
imul rbx, rax, 0x38
add rbx, r11
movzx eax, word [rbx + 0x14]
test al, 4
jne 0x1800b6871
movzx r8d, r9b
mov dl, 0x43
mov rcx, rbx
call fcn.1800b5380
movzx eax, word [rbx + 0x14]
test al, 4
jne 0x1800b686a
cmp dword [r13 + 8], 0
je 0x1800bbb71
xor edx, edx
mov eax, dword [r13 + 8]
mov rsi, qword [rsp + 0x70]
dec eax
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
cdqe
lea rcx, [rax + rax*2]
lea r13, [rdi + rcx*8]
jmp case.0x1800b5a82.89
mov r11, qword [rsp + 0x58]
xor edx, edx
movzx r9d, byte [rsp + 0x40]
mov ecx, 0xf244
mov r10d, dword [rsp + 0x50]
and ax, cx
or ax, 4
mov word [rbx + 0x14], ax
jmp case.0x1800b5a82.89
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
add rcx, r11
test byte [rcx + 0x14], 0x24
je case.0x1800b5a82.89
call fcn.1800aa400
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp 0x1800b5b5c
movsxd rax, dword [r13 + 4]
imul rbx, rax, 0x38
mov eax, 0x400
add rbx, r11
test word [rbx + 0x14], ax
je 0x1800b68e9
mov rcx, rbx
call fcn.1800a9e30
mov r15d, eax
test eax, eax
jne 0x1800bbb8f
movzx r8d, byte [rsp + 0x40]
mov rcx, rbx
movzx edx, byte [r13 + 8]
call fcn.1800aa550
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800bbb8f
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp 0x1800b5b5c
mov rcx, qword [rsp + 0x48]
mov r13, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul r15, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul r14, rax, 0x38
add r15, r11
add r14, r11
movzx esi, word [r15 + 0x14]
movzx edi, word [r14 + 0x14]
movzx ecx, di
and cx, si
test cl, 4
je 0x1800b6a04
mov rcx, qword [r14]
cmp rcx, qword [r15]
lea rcx, [0x180000000]
mov r15d, dword [rsp + 0x54]
mov rdi, qword [rsp + 0x78]
jle 0x1800b69a4
xor edx, edx
cmp byte [rbx + rcx + 0x1fb1d8], dl
jne 0x1800b6840
mov rsi, qword [rsp + 0x70]
mov eax, 1
mov r10d, eax
mov dword [rsp + 0x50], eax
mov r12, qword [rbp - 0x80]
add r13, 0x18
mov r14, qword [rsp + 0x68]
jmp 0x1800b5a49
jge 0x1800b69d7
xor edx, edx
cmp byte [rbx + rcx + 0x1fb1cc], dl
jne 0x1800b6840
mov rsi, qword [rsp + 0x70]
mov r10d, 0xffffffff
mov dword [rsp + 0x50], r10d
mov r12, qword [rbp - 0x80]
add r13, 0x18
mov r14, qword [rsp + 0x68]
jmp 0x1800b5a49
xor edx, edx
cmp byte [rbx + rcx + 0x1fb1d2], dl
jne 0x1800b6840
mov rsi, qword [rsp + 0x70]
mov r10d, edx
mov dword [rsp + 0x50], edx
mov r12, qword [rbp - 0x80]
add r13, 0x18
mov r14, qword [rsp + 0x68]
jmp 0x1800b5a49
movzx eax, di
or ax, si
test al, 1
je 0x1800b6a77
movzx eax, word [r13 + 2]
test al, al
jns 0x1800b6a4f
test cl, 1
je 0x1800b6a34
mov eax, 0x100
test ax, di
jne 0x1800b6a34
movzx eax, byte [r13]
mov dword [rsp + 0x50], edx
jmp 0x1800b6ba4
movzx eax, di
not ax
and eax, 1
lea r10d, [rax*2 - 1]
mov dword [rsp + 0x50], r10d
jmp 0x1800b6b7a
mov r15d, dword [rsp + 0x54]
mov rdi, qword [rsp + 0x78]
test al, 0x10
jne 0x1800b6840
mov rsi, qword [rsp + 0x70]
mov eax, 1
mov r10d, eax
mov dword [rsp + 0x50], eax
jmp case.0x1800b5a82.89
movzx ecx, byte [r13 + 2]
and cl, 0x47
cmp cl, 0x43
jb 0x1800b6ac2
test al, 2
je 0x1800b6b5f
movzx eax, sil
and al, 0x2e
cmp al, 2
jne 0x1800b6aa5
xor edx, edx
mov rcx, r15
call fcn.1800b5270
movzx edi, word [r14 + 0x14]
movzx eax, dil
and al, 0x2e
cmp al, 2
jne 0x1800b6b5f
xor edx, edx
mov rcx, r14
call fcn.1800b5270
jmp 0x1800b6b5f
cmp cl, 0x42
jne 0x1800b6b5f
test al, 2
je 0x1800b6b5f
test sil, 2
je 0x1800b6aeb
movzx eax, si
mov ecx, 0xffd3
and ax, cx
mov word [r15 + 0x14], ax
jmp 0x1800b6b2a
test sil, 0x2c
je 0x1800b6b25
mov r8b, 1
movzx edx, r9b
mov rcx, r15
call fcn.1800a9ea0
xor si, word [r15 + 0x14]
mov ebx, 0xdbf
and si, bx
mov ecx, 0xffd3
xor si, word [r15 + 0x14]
cmp r15, r14
jne 0x1800b6b2f
movzx edi, si
or di, 2
jmp 0x1800b6b2f
mov ecx, 0xffd3
mov ebx, 0xdbf
test dil, 2
je 0x1800b6b3c
and word [r14 + 0x14], cx
jmp 0x1800b6b5f
test dil, 0x2c
je 0x1800b6b5f
movzx edx, byte [rsp + 0x40]
mov r8b, 1
mov rcx, r14
call fcn.1800a9ea0
xor di, word [r14 + 0x14]
and di, bx
xor di, word [r14 + 0x14]
mov r8, qword [r13 + 0x10]
mov rdx, r15
mov rcx, r14
call fcn.1800afdd0
mov r11, qword [rsp + 0x58]
mov r10d, eax
mov dword [rsp + 0x50], eax
movzx eax, byte [r13]
mov ecx, r10d
movzx r9d, si
test r10d, r10d
jns 0x1800b6b9c
lea rcx, [0x180000000]
movzx edx, byte [rax + rcx + 0x1fb1cc]
jmp 0x1800b6bd5
mov dword [rsp + 0x50], ecx
test ecx, ecx
jne 0x1800b6bba
mov r10d, dword [rsp + 0x50]
lea rcx, [0x180000000]
movzx edx, byte [rax + rcx + 0x1fb1d2]
jmp 0x1800b6bd5
lea r12, [0x180000000]
mov dword [rsp + 0x50], ecx
movzx edx, byte [rax + r12 + 0x1fb1d8]
lea rcx, [0x180000000]
mov word [r14 + 0x14], di
mov word [r15 + 0x14], si
mov r15d, dword [rsp + 0x54]
test dl, dl
jne 0x1800bb25b
mov rsi, qword [rsp + 0x70]
movzx r9d, byte [rsp + 0x40]
mov rdi, qword [rsp + 0x78]
xor edx, edx
mov r12, qword [rbp - 0x80]
add r13, 0x18
mov r14, qword [rsp + 0x68]
jmp 0x1800b5a49
test r10d, r10d
je 0x1800b6840
jmp case.0x1800b5a82.89
mov rax, qword [rsp + 0x48]
test byte [rax + 2], 1
jne 0x1800b6c31
xor r14d, r14d
mov r13d, r14d
jmp 0x1800b6c3c
mov r13, qword [rax - 8]
add r13, 4
xor r14d, r14d
mov rcx, qword [rax + 0x10]
mov edi, r14d
mov r8d, dword [rax + 4]
mov rbx, r14
mov r9d, dword [rax + 8]
movsxd rax, dword [rax + 0xc]
mov qword [rbp + 0x88], rcx
mov dword [rbp + 0x40], r8d
mov dword [rbp - 0x68], r9d
mov qword [rbp - 0x70], rax
test rax, rax
jle 0x1800bba47
lea r14, [rcx + 0x20]
test r13, r13
je 0x1800b6c7e
mov edx, dword [r13 + rbx*4]
jmp 0x1800b6c80
mov edx, edi
mov rax, qword [rcx + 0x18]
lea ecx, [rdx + r9]
imul r12, rcx, 0x38
movzx esi, byte [rax + rbx]
lea ecx, [rdx + r8]
mov r8, qword [r14]
add r12, r11
imul r15, rcx, 0x38
mov rdx, r12
and esi, 1
add r15, r11
mov rcx, r15
call fcn.1800afdd0
mov dword [rsp + 0x50], eax
mov r10d, eax
test eax, eax
jne 0x1800b6cfc
mov rcx, qword [rbp + 0x88]
inc edi
mov r8d, dword [rbp + 0x40]
inc rbx
mov r9d, dword [rbp - 0x68]
add r14, 8
mov r11, qword [rsp + 0x58]
cmp rbx, qword [rbp - 0x70]
jl 0x1800b6c72
mov r15d, dword [rsp + 0x54]
mov r13, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x70]
movzx r9d, byte [rsp + 0x40]
mov rdi, qword [rsp + 0x78]
jmp 0x1800b5b5c
mov rax, qword [rbp + 0x88]
mov rax, qword [rax + 0x18]
test byte [rbx + rax], 2
je 0x1800b6d24
test byte [r15 + 0x14], 1
jne 0x1800b6d1c
test byte [r12 + 0x14], 1
je 0x1800b6d24
neg r10d
mov dword [rsp + 0x50], r10d
mov r15d, dword [rsp + 0x54]
mov r13, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
test esi, esi
je 0x1800bb752
mov rsi, qword [rsp + 0x70]
neg r10d
movzx r9d, byte [rsp + 0x40]
mov rdi, qword [rsp + 0x78]
mov dword [rsp + 0x50], r10d
jmp 0x1800b5b5c
test r10d, r10d
jns 0x1800b6d72
mov eax, dword [r13 + 4]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r13, [rdi + rcx*8]
jmp case.0x1800b5a82.89
jne 0x1800b6d89
mov eax, dword [r13 + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r13, [rdi + rcx*8]
jmp case.0x1800b5a82.89
mov eax, dword [r13 + 0xc]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r13, [rdi + rcx*8]
jmp case.0x1800b5a82.89
mov r12, qword [rsp + 0x48]
mov r14d, 2
mov edx, r14d
movsxd rax, dword [r12 + 4]
imul rcx, rax, 0x38
add rcx, r11
call fcn.1800aa280
movsxd rcx, dword [r12 + 8]
mov edx, r14d
imul rcx, rcx, 0x38
mov ebx, eax
add rcx, qword [rsp + 0x58]
call fcn.1800aa280
lea eax, [rax + rbx*2]
add eax, ebx
cmp byte [r12], 0x2c
movsxd r9, eax
mov rax, r12
lea r12, [0x180000000]
jne 0x1800b6df9
movzx r9d, byte [r9 + r12 + 0x1f8a68]
jmp 0x1800b6e02
movzx r9d, byte [r9 + r12 + 0x1fa0f0]
movsxd rax, dword [rax + 0xc]
mov r11, qword [rsp + 0x58]
imul rdx, rax, 0x38
movzx ecx, word [rdx + r11 + 0x14]
cmp r9b, r14b
jne 0x1800b6e41
mov r13, qword [rsp + 0x48]
mov eax, 0xf241
movzx r9d, byte [rsp + 0x40]
and cx, ax
mov r10d, dword [rsp + 0x50]
or cx, 1
mov word [rdx + r11 + 0x14], cx
jmp 0x1800b5b5c
mov r13, qword [rsp + 0x48]
mov r10d, dword [rsp + 0x50]
movzx eax, r9b
movzx r9d, byte [rsp + 0x40]
mov qword [rdx + r11], rax
mov eax, 0xf244
and cx, ax
or cx, 4
mov word [rdx + r11 + 0x14], cx
jmp 0x1800b5b5c
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 4]
mov edx, dword [rbx + 0xc]
imul rcx, rax, 0x38
add rcx, r11
call fcn.1800aa280
movsxd rdx, dword [rbx + 0x10]
movsxd rcx, eax
movsxd rax, dword [rbx + 8]
xor rdx, rcx
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x58]
call fcn.1800aa7b0
mov r11, qword [rsp + 0x58]
mov r13, rbx
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp 0x1800b5b5c
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 4]
imul rcx, rax, 0x38
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
add rcx, r11
add rbx, r11
test byte [rcx + 0x14], 1
jne 0x1800b6f11
xor edx, edx
call fcn.1800aa280
xor r10d, r10d
mov rcx, rbx
test eax, eax
mov edx, r10d
sete dl
call fcn.1800aa7b0
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov r13, qword [rsp + 0x48]
jmp 0x1800b5b5c
mov rcx, rbx
call fcn.1800aa700
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov r13, qword [rsp + 0x48]
jmp 0x1800b5b5c
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, r11
add rbx, r11
mov rcx, rbx
call fcn.1800aa700
test byte [rdi + 0x14], 1
jne 0x1800bb743
mov rcx, rdi
mov word [rbx + 0x14], 4
call fcn.1800aa1c0
mov r13, qword [rsp + 0x48]
not rax
mov qword [rbx], rax
jmp 0x1800b5f0b
mov r8, qword [rsi + 0x108]
test r8, r8
je 0x1800b6fd5
mov r9, qword [r8 + 0x28]
mov rcx, r13
sub rcx, qword [rsi + 0x88]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov ecx, edx
and edx, 7
shr rcx, 3
movzx eax, byte [rcx + r9]
bt eax, edx
jb 0x1800b683e
bts eax, edx
mov byte [rcx + r9], al
xor edx, edx
jmp 0x1800b6fe9
mov rcx, qword [rsi + 0x88]
mov eax, dword [r13 + 4]
cmp dword [rcx + 4], eax
je 0x1800b6840
mov rax, qword [rsi + 0x88]
movzx r9d, byte [rsp + 0x40]
mov ecx, dword [rax + 4]
mov dword [r13 + 4], ecx
jmp case.0x1800b5a82.89
movsxd rax, dword [r13 + 4]
mov edx, dword [r13 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
call fcn.1800aa280
xor edx, edx
test eax, eax
jne 0x1800bb25d
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp case.0x1800b5a82.89
mov rax, qword [rsp + 0x48]
cmp dword [rax + 0xc], 0
movsxd rax, dword [rax + 4]
sete dl
imul rcx, rax, 0x38
add rcx, r11
call fcn.1800aa280
mov r13, qword [rsp + 0x48]
xor edx, edx
test eax, eax
je 0x1800bb25d
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp case.0x1800b5a82.89
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
jne 0x1800b6840
jmp case.0x1800b5a82.89
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
test eax, eax
js 0x1800b70ef
mov r13, qword [rsp + 0x48]
mov rcx, rax
mov rax, qword [rsi + 0x78]
movsxd rdx, dword [r13 + 0xc]
mov rcx, qword [rax + rcx*8]
movzx eax, word [rcx + 0x4a]
cmp edx, eax
jge 0x1800b70e7
mov ecx, dword [rcx + rdx*4 + 0x78]
cmp ecx, 0xc
jb 0x1800b70d3
test cl, 1
mov edx, 4
mov eax, 8
cmove dx, ax
jmp 0x1800b710f
mov rax, rcx
lea rcx, [0x180000000]
movzx edx, byte [rax + rcx + 0x1fecc8]
jmp 0x1800b7116
mov ecx, dword [r13 + 0x10]
dec ecx
jmp 0x1800b7107
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
add rcx, r11
call fcn.1800b1a50
mov r13, qword [rsp + 0x48]
lea ecx, [rax - 1]
mov edx, 1
shl dx, cl
lea rcx, [0x180000000]
test word [r13 + 2], dx
jne 0x1800b683e
mov r11, qword [rsp + 0x58]
xor edx, edx
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov r12, qword [rbp - 0x80]
add r13, 0x18
mov r14, qword [rsp + 0x68]
jmp 0x1800b5a49
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
jne 0x1800b718c
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
jne 0x1800b718c
movsxd rax, dword [r13 + 8]
xor edx, edx
imul rcx, rax, 0x38
add rcx, r11
call fcn.1800aa7b0
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp 0x1800b5b5c
movsxd rax, dword [r13 + 8]
imul rcx, rax, 0x38
add rcx, r11
call fcn.1800aa700
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp 0x1800b5b5c
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
je 0x1800b6840
jmp case.0x1800b5a82.89
movsxd rcx, dword [r13 + 4]
mov rax, qword [rsi + 0x78]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je 0x1800b5b5c
cmp byte [rdx + 2], 0
je 0x1800b5b5c
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
call fcn.1800aa700
jmp 0x1800b683e
movsxd rcx, dword [r13 + 4]
mov rax, qword [rsi + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x48]
mov r14d, dword [rcx + 8]
mov dword [rbp + 0x40], r14d
nop word [rax + rax]
mov eax, dword [rsi + 0x2c]
mov r13, qword [rbx + 0x58]
cmp dword [rbx + 0x20], eax
je 0x1800b7265
cmp byte [rbx + 2], 0
jne 0x1800b72c0
cmp byte [rbx + 3], 0
mov rdi, qword [rbx + 0x30]
je 0x1800b725e
mov rdx, qword [rbx + 0x10]
test rdx, rdx
je 0x1800b728a
lea eax, [r14 + 1]
mov eax, dword [rdx + rax*4]
test eax, eax
je 0x1800b728a
mov rbx, qword [rbx + 0x28]
lea r14d, [rax - 1]
jmp 0x1800b7213
cmp byte [rdi], 0
je 0x1800b72a1
jmp 0x1800b7272
mov rax, qword [rbx + 0x30]
cmp byte [rax], 0
je 0x1800b7427
mov rcx, rbx
call fcn.1800af2d0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
je 0x1800b7220
jmp 0x1800bbb8f
mov rcx, rbx
call fcn.1800af260
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800bbb8f
mov rcx, rdi
call fcn.18009e4a0
lea rsi, [rbx + 0x6c]
mov dword [rbx + 0x68], eax
mov rdx, rsi
mov rcx, rdi
call fcn.18009ec80
mov rcx, rax
jmp 0x1800b72ee
cmp byte [rbx], 3
jne 0x1800b740b
movsxd rax, dword [rbx + 0x24]
test eax, eax
jle 0x1800b740b
imul rcx, rax, 0x38
lea rsi, [rbx + 0x6c]
add rcx, qword [rsp + 0x58]
mov eax, dword [rcx + 0x10]
mov dword [rsi], eax
mov dword [rbx + 0x68], eax
mov rcx, qword [rcx + 8]
mov rax, qword [rsp + 0x70]
lea r12, [rbx + 0x40]
mov qword [rbx + 0x60], rcx
mov eax, dword [rax + 0x2c]
mov dword [rbx + 0x20], eax
movzx eax, byte [rcx]
mov dword [r13], eax
cmp eax, 0x80
jae 0x1800b7316
mov eax, 1
jmp 0x1800b7325
mov rcx, qword [rbx + 0x60]
mov rdx, r13
call fcn.180083da0
movzx eax, al
xor edx, edx
lea rdi, [rbx + 0x4a]
mov rcx, r12
mov dword [rcx], eax
mov word [rdi], dx
mov eax, dword [r13]
cmp dword [rsi], eax
jae 0x1800b7405
mov qword [rbx + 0x60], rdx
mov dword [rsi], edx
mov eax, dword [r13]
cmp eax, 0x18003
ja 0x1800b74d7
cmp eax, dword [rbx + 0x68]
ja 0x1800b74d7
mov rsi, qword [rsp + 0x70]
movzx eax, word [rdi]
cmp eax, r14d
ja 0x1800b7569
mov eax, dword [r13]
lea r12, [rbx + 0x40]
cmp dword [r12], eax
jae 0x1800b751d
mov rax, qword [rbx + 0x60]
mov qword [rbp - 0x68], rax
test rax, rax
jne 0x1800b73c8
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 [r13]
mov rcx, qword [rbx + 0x30]
call fcn.1800aaf10
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800bc11a
mov rax, qword [rbp - 0x48]
mov qword [rbp - 0x68], rax
movzx r15d, word [rdi]
mov edi, dword [r12]
mov r14d, r15d
mov r12d, dword [r13]
add rdi, rax
add r12, rax
mov esi, dword [r13 + r15*4]
movzx eax, byte [rdi]
mov dword [rbp - 0x60], eax
mov dword [rbx + r14*4 + 0x78], eax
mov ecx, dword [rbp - 0x60]
cmp ecx, 0x80
jae 0x1800b7432
inc rdi
call fcn.1800af360
movzx eax, al
jmp 0x1800b7456
mov rax, qword [rbx + 0x60]
jmp 0x1800b73c4
mov r13, qword [rsp + 0x48]
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x58]
call fcn.1800aa700
jmp 0x1800b5f0b
lea rdi, [rbx + 0x4a]
xor edx, edx
jmp 0x1800b7362
lea rdx, [rbp - 0x60]
mov rcx, rdi
call fcn.180083da0
movzx eax, al
add rdi, rax
mov eax, dword [rbp - 0x60]
mov dword [rbx + r14*4 + 0x78], eax
mov ecx, dword [rbp - 0x60]
call fcn.1800af340
mov eax, eax
inc r15d
add rsi, rax
movsxd r14, r15d
mov dword [r13 + r14*4], esi
cmp r15d, dword [rbp + 0x40]
ja 0x1800b7475
cmp rdi, r12
jb 0x1800b73e2
jmp 0x1800b747a
cmp rdi, r12
jb 0x1800b74ab
cmp rdi, r12
ja 0x1800b74b3
mov eax, dword [rbx + 0x68]
cmp rsi, rax
jne 0x1800b74b3
sub edi, dword [rbp - 0x68]
cmp qword [rbx + 0x60], 0
mov word [rbx + 0x4a], r15w
mov dword [rbx + 0x40], edi
jne 0x1800b74a2
lea rcx, [rbp - 0x50]
call fcn.1800aa160
mov edx, dword [rbp - 0x60]
mov r14d, dword [rbp + 0x40]
jmp 0x1800b7520
mov eax, dword [rbx + 0x68]
cmp rsi, rax
jbe 0x1800b7487
cmp dword [r13], 0
jne 0x1800b74c5
xor r10d, r10d
mov rdi, r12
mov r15d, r10d
jmp 0x1800b7487
cmp qword [rbx + 0x60], 0
jne 0x1800b74d5
lea rcx, [rbp - 0x50]
call fcn.1800aa160
xor edx, edx
mov rdi, qword [rsp + 0x78]
mov eax, dword [rdi + 0xc]
test eax, eax
jle 0x1800bbb79
dec eax
movsxd rcx, eax
lea rax, [rcx + rcx*2]
lea r15, [rdi + rax*8]
mov qword [rsp + 0x48], r15
mov r13, qword [rsp + 0x48]
mov r15d, dword [rsp + 0x54]
mov rsi, qword [rsp + 0x70]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp case.0x1800b5a82.89
mov dword [rbp - 0x60], edx
movzx eax, word [rbx + 0x4a]
cmp eax, r14d
ja 0x1800b7573
mov rdx, qword [rsp + 0x48]
movsxd rax, dword [rdx + 0xc]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x58]
cmp byte [rdx + 1], 0xf6
jne 0x1800b755a
mov rdx, qword [rdx + 0x10]
mov r8d, 0x2000
call fcn.1800aaa20
mov r15d, dword [rsp + 0x54]
jmp 0x1800b5f01
call fcn.1800aa700
mov r15d, dword [rsp + 0x54]
jmp 0x1800b5f01
mov eax, r14d
mov edx, dword [rbx + rax*4 + 0x78]
mov dword [rbp - 0x60], edx
mov r8, qword [rsp + 0x48]
movsxd rax, dword [r8 + 0xc]
imul rdi, rax, 0x38
mov eax, 0x9000
add rdi, qword [rsp + 0x58]
test word [rdi + 0x14], ax
je 0x1800b75a0
mov rcx, rdi
call fcn.1800aa700
mov edx, dword [rbp - 0x60]
mov r8, qword [rsp + 0x48]
lea eax, [r14 + 1]
mov eax, dword [r13 + rax*4]
cmp dword [rbx + 0x6c], eax
jb 0x1800b7696
mov eax, r14d
mov esi, dword [r13 + rax*4]
add rsi, qword [rbx + 0x60]
cmp edx, 0xc
jae 0x1800b75d8
mov r8, rdi
mov rcx, rsi
call fcn.1800af370
mov r15d, dword [rsp + 0x54]
jmp 0x1800b5f01
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 0x1800b761d
mov r12, qword [rbp - 0x80]
cmp ebx, dword [r12 + 0x88]
jg 0x1800bbda9
xor r8d, r8d
mov word [rdi + 0x14], 1
mov rcx, rdi
call fcn.1800a99c0
test eax, eax
jne 0x1800bc0e4
jmp 0x1800b7625
mov rax, qword [rdi + 0x28]
mov qword [rdi + 8], rax
mov rcx, qword [rdi + 8]
mov r8, rbx
mov rdx, rsi
call fcn.1801da970
mov rax, qword [rdi + 8]
lea rcx, [0x180000000]
mov r15d, dword [rsp + 0x54]
mov r13, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x70]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov byte [rbx + rax], 0
mov rax, qword [rdi + 8]
mov byte [rax + rbx + 1], 0
mov eax, dword [rbp - 0x60]
and eax, 1
xor edx, edx
movzx eax, word [rcx + rax*2 + 0x1fcf80]
mov word [rdi + 0x14], ax
mov rdi, qword [rsp + 0x78]
mov r12, qword [rbp - 0x80]
add r13, 0x18
mov r14, qword [rsp + 0x68]
jmp 0x1800b5a49
movzx eax, byte [rsp + 0x40]
mov byte [rdi + 0x16], al
movzx eax, byte [r8 + 2]
mov edx, dword [rbp - 0x60]
and al, 0xc0
je 0x1800b76bc
cmp al, 0x80
je 0x1800b76ca
cmp edx, 0xc
jb 0x1800b76bc
test dl, 1
je 0x1800b76ca
cmp al, 0xc0
je 0x1800b76ca
mov ecx, edx
call fcn.1800af340
test eax, eax
jne 0x1800b76e3
mov edx, dword [rbp - 0x60]
mov r8, rdi
lea rcx, [0x1801f9f80]
call fcn.1800af370
mov r15d, dword [rsp + 0x54]
jmp 0x1800b5f01
mov rsi, qword [rsp + 0x70]
mov edx, r14d
mov r8d, dword [rbp - 0x60]
mov rcx, rbx
mov eax, r14d
mov qword [rsp + 0x30], rdi
mov r9d, dword [r13 + rax*4]
mov eax, dword [rbp - 0x74]
mov dword [rsp + 0x28], eax
mov eax, dword [rsi + 0x2c]
mov dword [rsp + 0x20], eax
call fcn.1800b5650
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800bbbc0
mov r13, qword [rsp + 0x48]
jmp 0x1800b5f0b
mov rax, qword [rsp + 0x48]
mov edi, edx
mov r13, qword [rsp + 0x48]
mov r14, qword [rax + 0x10]
movsxd rax, dword [rax + 4]
imul rsi, rax, 0x38
mov r15, qword [r14 + 8]
add rsi, r11
cmp dx, word [r14 + 0x36]
jge 0x1800bba33
lea rbx, [r15 + 0xc]
nop dword [rax]
movzx eax, word [rbx + 6]
test al, 0x60
je 0x1800b777b
test al, 0x20
jne 0x1800b7827
cmp dword [r13 + 0xc], 0
jne 0x1800b7823
movzx edx, byte [rbx]
movzx r8d, r9b
mov rcx, rsi
call fcn.1800b5380
movzx ecx, word [rsi + 0x14]
test cl, 1
jne 0x1800b7823
mov eax, dword [rbx - 4]
shr eax, 4
and eax, 0xf
sub eax, 2
je 0x1800b781a
sub eax, 1
je 0x1800b7815
sub eax, 1
je 0x1800b7815
sub eax, 1
je 0x1800b77be
cmp eax, 1
jne 0x1800b7823
test cl, 2
jmp 0x1800b781d
test cl, 4
je 0x1800b7810
mov rdx, qword [rsi]
movabs rax, 0x800000000000
add rax, rdx
movabs r8, 0xffffffffffff
cmp rax, r8
mov rax, rsi
ja 0x1800b77eb
or cx, 0x20
jmp 0x1800b77fb
xorps xmm0, xmm0
or cx, 8
cvtsi2sd xmm0, rdx
movsd qword [rsi], xmm0
mov edx, shutdown
mov r8d, 0xfffb
and cx, r8w
mov word [rax + rdx], cx
jmp 0x1800b7823
test cl, 0x28
jmp 0x1800b781d
test cl, 4
jmp 0x1800b781d
test cl, 0x10
je 0x1800bbbd8
add rsi, 0x38
movsx eax, word [r14 + 0x36]
inc edi
movzx r9d, byte [rsp + 0x40]
add rbx, 0x18
cmp edi, eax
jl 0x1800b7760
mov r15d, dword [rsp + 0x54]
jmp 0x1800b5f06
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, r11
movzx r8d, r9b
movzx edx, al
mov rcx, rbx
call fcn.1800b5380
cmp byte [rdi], 0x45
jne 0x1800b78c7
movzx ecx, word [rbx + 0x14]
test cl, 4
je 0x1800b78c7
mov rdx, qword [rbx]
movabs rax, 0x800000000000
add rax, rdx
movabs r8, 0xffffffffffff
cmp rax, r8
ja 0x1800b78ab
mov eax, 0xfffb
and cx, ax
or cx, 0x20
jmp 0x1800b78c3
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 0x1800bb743
movzx r9d, byte [rsp + 0x40]
add rbx, 0x38
jmp 0x1800b7861
mov rcx, qword [rsp + 0x48]
mov rsi, rdx
mov r12d, edx
mov r13, rdx
movsxd rax, dword [rcx + 4]
mov rdi, qword [rcx + 0x10]
imul r15, rax, 0x38
mov eax, dword [rcx + 8]
dec eax
add r15, r11
cdqe
imul r14, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
add r14, r15
mov qword [rbp - 0x68], r15
add rcx, r11
mov qword [rbp + 0x88], r14
mov qword [rbp - 0x70], rcx
test rdi, rdi
je 0x1800b797d
lea rbx, [r15 + 0x14]
mov r15d, 0xfffb
nop dword [rax]
movzx edx, byte [rdi]
lea rcx, [rbx - 0x14]
movzx r8d, r9b
call fcn.1800b5380
cmp byte [rdi], 0x45
jne 0x1800b7967
movzx eax, word [rbx]
test al, 4
je 0x1800b7967
and ax, r15w
or ax, 0x20
mov word [rbx], ax
movzx r9d, byte [rsp + 0x40]
inc rdi
add rbx, 0x38
cmp byte [rdi], 0
jne 0x1800b7940
mov r15, qword [rbp - 0x68]
lea rdi, [r14 + 0x24]
movzx ecx, word [rdi - 0x10]
test cl, 1
je 0x1800b79a2
inc r12d
mov eax, 0x400
and cx, ax
neg cx
sbb ebx, ebx
and ebx, 0xa
jmp 0x1800b7aed
test cl, 0x24
je 0x1800b7a87
mov r8, qword [rdi - 0x24]
mov rdx, r8
test r8, r8
jns 0x1800b79ba
not rdx
inc r12d
cmp rdx, 0x7f
ja 0x1800b79f1
mov rax, r8
and eax, 1
cmp rax, r8
jne 0x1800b79e4
mov rax, qword [rsp + 0x70]
cmp byte [rax + 0xc5], 4
jb 0x1800b79e4
lea ebx, [rdx + 8]
jmp 0x1800b7aed
inc rsi
mov ebx, 1
jmp 0x1800b7aed
cmp rdx, 0x7fff
ja 0x1800b7a08
add rsi, 2
mov ebx, 2
jmp 0x1800b7aed
cmp rdx, 0x7fffff
ja 0x1800b7a1f
add rsi, 3
mov ebx, 3
jmp 0x1800b7aed
cmp rdx, 0x7fffffff
ja 0x1800b7a36
add rsi, 4
mov ebx, 4
jmp 0x1800b7aed
movabs rax, 0x7fffffffffff
cmp rdx, rax
ja 0x1800b7a53
add rsi, 6
mov ebx, 5
jmp 0x1800b7aed
add rsi, 8
test cl, 0x20
je 0x1800b7a80
xorps xmm0, xmm0
mov eax, 0xffdf
cvtsi2sd xmm0, r8
and cx, ax
mov ebx, 7
or cx, 8
mov word [rdi - 0x10], cx
movsd qword [rdi - 0x24], xmm0
jmp 0x1800b7aed
mov ebx, 6
jmp 0x1800b7aed
test cl, 8
je 0x1800b7a9a
inc r12d
mov ebx, 7
add rsi, 8
jmp 0x1800b7aed
mov r14d, dword [rdi - 0x14]
mov eax, ecx
shr eax, 1
and eax, 1
bt cx, 0xa
lea ebx, [r14 + 6]
lea ebx, [rax + rbx*2]
jae 0x1800b7add
movsxd rax, dword [rdi - 0x24]
lea ebx, [rbx + rax*2]
test rsi, rsi
je 0x1800b7ad6
lea rcx, [rdi - 0x24]
call fcn.1800a9e30
test eax, eax
jne 0x1800bc0e0
add r14d, dword [rdi - 0x24]
jmp 0x1800b7ad9
add r13, rax
mov r15, qword [rbp - 0x68]
mov eax, r14d
mov ecx, ebx
add rsi, rax
call fcn.180083e20
add r12d, eax
mov rax, rdi
mov dword [rax], ebx
lea rax, [rdi - 0x24]
cmp rax, r15
je 0x1800b7b04
sub rdi, 0x38
jmp 0x1800b7981
cmp r12d, 0x7e
jle 0x1800b7b23
movsxd rcx, r12d
call fcn.180083e20
add r12d, eax
mov ebx, eax
movsxd rcx, r12d
call fcn.180083e20
cmp ebx, eax
jge 0x1800b7b26
inc r12d
movsxd rdi, r12d
lea rbx, [rsi + rdi]
mov rsi, qword [rbp - 0x70]
lea rcx, [rbx + r13]
movsxd rax, dword [rsi + 0x20]
cmp rcx, rax
jg 0x1800b7b48
mov rax, qword [rsi + 0x28]
mov qword [rsi + 8], rax
jmp 0x1800b7b6e
mov r8, qword [rbp - 0x80]
movsxd rax, dword [r8 + 0x88]
cmp rcx, rax
jg 0x1800bbda6
mov edx, ebx
mov rcx, rsi
call fcn.1800a9c60
test eax, eax
jne 0x1800bc0e0
mov dword [rsi + 0x10], ebx
mov word [rsi + 0x14], reloc.WS2_32.dll_recv
test r13, r13
je 0x1800b7b85
mov dword [rsi], r13d
mov word [rsi + 0x14], 0x410
mov rsi, qword [rsi + 8]
lea rbx, [rdi + rsi]
cmp r12d, 0x80
jge 0x1800b7b9e
mov byte [rsi], r12b
inc rsi
jmp 0x1800b7baf
movsxd rdx, r12d
mov rcx, rsi
call fcn.180083b70
movsxd rcx, eax
add rsi, rcx
mov r14, qword [rbp + 0x88]
lea rdi, [r15 + 0x10]
lea r12, [0x180000000]
mov eax, dword [rdi + 0x14]
cmp eax, 7
ja 0x1800b7c36
mov byte [rsi], al
inc rsi
test eax, eax
je 0x1800b7c7d
movzx edx, byte [rax + r12 + 0x1fa720]
mov rcx, qword [rdi - 0x10]
mov eax, edx
sub eax, 1
je 0x1800b7c2f
sub eax, 1
je 0x1800b7c28
sub eax, 1
je 0x1800b7c21
sub eax, 1
je 0x1800b7c1a
cmp eax, 2
je 0x1800b7c0c
mov byte [rbx + 7], cl
shr rcx, 8
mov byte [rbx + 6], cl
shr rcx, 8
mov byte [rbx + 5], cl
shr rcx, 8
mov byte [rbx + 4], cl
shr rcx, 8
mov byte [rbx + 3], cl
shr rcx, 8
mov byte [rbx + 2], cl
shr rcx, 8
mov byte [rbx + 1], cl
shr rcx, 8
mov byte [rbx], cl
add rbx, rdx
jmp 0x1800b7c7d
cmp eax, 0x80
jae 0x1800b7c50
mov byte [rsi], al
inc rsi
cmp eax, 0xe
jb 0x1800b7c7d
movsxd rax, dword [rdi]
test eax, eax
jle 0x1800b7c7d
jmp 0x1800b7c68
mov rdx, rax
mov rcx, rsi
call fcn.180083b70
movsxd rcx, eax
movsxd rax, dword [rdi]
add rsi, rcx
test eax, eax
je 0x1800b7c7d
mov rdx, qword [rdi - 8]
mov r8, rax
mov rcx, rbx
call fcn.1801da970
movsxd rax, dword [rdi]
add rbx, rax
lea rax, [rdi - 0x10]
cmp rax, r14
je 0x1800bb73e
add rdi, 0x38
jmp 0x1800b7bc1
cmp dword [r13 + 0xc], 0
movsxd rcx, dword [r13 + 4]
mov rax, qword [rsi + 0x78]
mov rcx, qword [rax + rcx*8]
mov rdx, qword [rcx + 0x30]
je 0x1800b7cbb
mov rcx, rdx
call fcn.18009fbf0
mov qword [rbp + 0xc0], rax
jmp 0x1800b7ce3
xor r10d, r10d
lea r8, [rbp + 0xc0]
mov rcx, r12
mov qword [rbp + 0xc0], r10
call fcn.1800a7130
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800bbb8f
mov rdx, r13
mov rcx, rsi
call fcn.1800b5520
mov rcx, qword [rbp + 0xc0]
mov qword [rax], rcx
jmp 0x1800ba125
mov rax, qword [rsp + 0x48]
mov r13d, dword [rax + 4]
mov rdi, qword [rax + 0x10]
test r13d, r13d
jne 0x1800b7de5
cmp dword [r12 + 0xe0], r13d
jg 0x1800bbc39
mov rcx, rdi
call fcn.180081500
mov r8d, dword [r12 + 0x2f4]
xor edx, edx
add r8d, dword [r12 + 0x2f0]
mov rcx, r12
movsxd rsi, eax
call fcn.180122bd0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800bbb8a
lea rdx, [rsi + 0x21]
mov rcx, r12
call fcn.18007dc20
mov rbx, rax
test rax, rax
je 0x1800b7dc9
lea r9, [rax + 0x20]
mov rdx, rdi
lea ecx, [rsi + 1]
mov qword [rax], r9
movsxd r8, ecx
mov rcx, r9
call fcn.1801da970
cmp byte [r12 + 0x65], r15b
je 0x1800b7d95
mov byte [r12 + 0x65], r15b
mov byte [r12 + 0x6d], 1
jmp 0x1800b7d9d
inc dword [r12 + 0x2f0]
mov rax, qword [r12 + 0x2e0]
mov qword [rbx + 0x18], rax
mov rax, qword [r12 + 0x2f8]
mov qword [r12 + 0x2e0], rbx
mov qword [rbx + 8], rax
mov rax, qword [r12 + 0x300]
mov qword [rbx + 0x10], rax
mov rsi, qword [rsp + 0x70]
cmp byte [rsi + 0xc7], 3
je 0x1800bbcb9
mov r13, qword [rsp + 0x48]
jmp 0x1800b5f0b
mov rbx, qword [r12 + 0x2e0]
mov r14d, edx
test rbx, rbx
je 0x1800b7e10
mov rcx, qword [rbx]
mov rdx, rdi
call fcn.180081a80
test eax, eax
je 0x1800b7e35
mov rbx, qword [rbx + 0x18]
inc r14d
test rbx, rbx
jne 0x1800b7df5
mov r8, rdi
lea rdx, str.no_such_savepoint:__s
mov rcx, rsi
call fcn.1800ab890
mov r13d, 1
mov r15d, r13d
mov rdi, qword [rsp + 0x48]
jmp 0x1800bbb9a
cmp dword [r12 + 0xe0], 0
jle 0x1800b7e4a
cmp r13d, 1
je 0x1800bbc53
cmp qword [rbx + 0x18], 0
jne 0x1800b7ead
cmp byte [r12 + 0x6d], 0
je 0x1800b7ead
mov edi, 1
mov dword [rbp + 0x40], edi
cmp r13d, edi
jne 0x1800b7eb4
mov edx, edi
mov rcx, rsi
call fcn.1800aea20
mov r15d, eax
test eax, eax
jne 0x1800bbcbf
mov rcx, rsi
mov byte [r12 + 0x65], dil
call fcn.1800aea90
cmp eax, 5
je 0x1800bbc78
mov r15d, dword [rsi + 0x34]
mov dword [rsp + 0x54], r15d
test r15d, r15d
jne 0x1800bbc6d
mov byte [r12 + 0x6d], r15b
jmp 0x1800b7fca
xor ecx, ecx
mov dword [rbp + 0x40], ecx
jmp 0x1800b7eb6
xor ecx, ecx
mov eax, dword [r12 + 0x2f0]
sub eax, r14d
lea r14d, [rax - 1]
mov rax, qword [rbp - 0x80]
cmp r13d, 2
jne 0x1800b7f2a
mov r12d, dword [r12 + 0x2c]
mov esi, ecx
and r12d, 1
cmp dword [rax + 0x28], 0
jle 0x1800b7f2d
mov r15d, r12d
mov rdi, rcx
xor r15d, 1
nop word [rax + rax]
mov rcx, qword [rax + 0x20]
mov r8d, r15d
mov edx, 0x204
mov rcx, qword [rcx + rdi + 8]
call fcn.18009dcd0
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x1800bc110
mov rax, qword [rbp - 0x80]
inc esi
add rdi, 0x20
cmp esi, dword [rax + 0x28]
jl 0x1800b7ef0
mov r15d, dword [rsp + 0x54]
xor ecx, ecx
jmp 0x1800b7f2d
mov r12d, ecx
cmp dword [rax + 0x28], 0
mov esi, ecx
jle 0x1800b7f72
mov rdi, rcx
nop dword [rax + rax]
mov rcx, qword [rax + 0x20]
mov r8d, r14d
mov edx, r13d
mov rcx, qword [rcx + rdi + 8]
call fcn.18009dfc0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800bbb86
mov rax, qword [rbp - 0x80]
inc esi
add rdi, 0x20
cmp esi, dword [rax + 0x28]
jl 0x1800b7f40
test r12d, r12d
mov r12, qword [rbp - 0x80]
je 0x1800b7fb9
mov rcx, qword [r12 + 8]
test rcx, rcx
je 0x1800b7fab
nop word [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 0x1800b7f90
mov rcx, r12
call fcn.1800dcb50
or dword [r12 + 0x2c], 1
mov rsi, qword [rsp + 0x70]
test r15d, r15d
jne 0x1800bbb8f
mov edi, dword [rbp + 0x40]
mov rcx, qword [r12 + 0x2e0]
cmp rcx, rbx
je 0x1800b800c
nop word [rax + rax]
mov rax, qword [rcx + 0x18]
mov rdx, rcx
mov rcx, r12
mov qword [r12 + 0x2e0], rax
call fcn.18007d740
dec dword [r12 + 0x2f0]
mov rcx, qword [r12 + 0x2e0]
cmp rcx, rbx
jne 0x1800b7fe0
cmp r13d, 1
jne 0x1800b803b
mov rax, qword [rbx + 0x18]
mov rdx, rbx
mov rcx, r12
mov qword [r12 + 0x2e0], rax
call fcn.18007d740
test edi, edi
jne 0x1800b7dce
dec dword [r12 + 0x2f0]
jmp 0x1800b8061
mov rax, qword [rbx + 8]
mov qword [r12 + 0x2f8], rax
mov rax, qword [rbx + 0x10]
mov qword [r12 + 0x300], rax
test edi, edi
je 0x1800b8061
cmp r13d, 2
jne 0x1800b7dce
mov r8d, r14d
mov edx, r13d
mov rcx, r12
call fcn.180122bd0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800bbb8f
jmp 0x1800b7dce
mov rcx, qword [rsp + 0x48]
mov dword [rbp + 0x40], edx
mov edx, dword [rcx + 8]
test edx, edx
je 0x1800b80aa
mov rax, qword [r12 + 0x30]
movabs r8, 0x200100000
test r8, rax
jne 0x1800bbd1a
movsxd rbx, dword [rcx + 4]
shl rbx, 5
add rbx, qword [r12 + 0x20]
mov rdi, qword [rbx + 8]
test rdi, rdi
je 0x1800b8176
lea r8, [rbp + 0x40]
mov rcx, rdi
call fcn.18009c9e0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800bbd3a
test byte [rsi + 0xc8], 0x20
mov r13, qword [rsp + 0x48]
je 0x1800b8182
cmp dword [r13 + 8], eax
je 0x1800b8182
cmp byte [r12 + 0x65], al
je 0x1800b810d
cmp dword [r12 + 0xdc], 1
jle 0x1800b8182
mov r8d, dword [rsi + 0x40]
test r8d, r8d
jne 0x1800b8132
inc dword [r12 + 0x2f4]
mov r8d, dword [r12 + 0x2f4]
add r8d, dword [r12 + 0x2f0]
mov dword [rsi + 0x40], r8d
dec r8d
xor edx, edx
mov rcx, r12
call fcn.180122bd0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800b815c
mov edx, dword [rsi + 0x40]
mov rcx, rdi
call fcn.18009df50
mov r15d, eax
mov dword [rsp + 0x54], eax
mov rax, qword [r12 + 0x2f8]
mov qword [rsi + 0x58], rax
mov rax, qword [r12 + 0x300]
mov qword [rsi + 0x60], rax
jmp 0x1800b8179
mov r13, rcx
test r15d, r15d
jne 0x1800bbb8f
cmp word [r13 + 2], 0
je 0x1800b5f0b
mov eax, dword [r13 + 0xc]
cmp dword [rbp + 0x40], eax
jne 0x1800b81a8
mov rcx, qword [rbx + 0x18]
mov eax, dword [r13 + 0x10]
cmp dword [rcx + 4], eax
je 0x1800b5f0b
mov rdx, qword [rsi + 0xa8]
mov rcx, r12
call fcn.18007d900
lea rdx, str.database_schema_has_changed
mov rcx, r12
call fcn.18007dda0
mov qword [rsi + 0xa8], rax
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 4]
mov rax, qword [r12 + 0x20]
mov rcx, rdx
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov eax, dword [rbp + 0x40]
cmp dword [rcx], eax
je 0x1800b81f6
mov rcx, r12
call fcn.1800dcac0
mov eax, dword [rsi + 0xc8]
mov r15d, shutdown
and eax, 0xffffffed
or eax, 1
mov dword [rsi + 0xc8], eax
jmp 0x1800bbb8f
movsxd rax, dword [r13 + 4]
lea r8, [rbp + 0xbc]
mov rcx, qword [r12 + 0x20]
mov edx, dword [r13 + 0xc]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.1800a6fb0
mov rdx, r13
mov rcx, rsi
call fcn.1800b5520
movsxd rcx, dword [rbp + 0xbc]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov qword [rax], rcx
jmp 0x1800b5b5c
mov rax, qword [rsp + 0x48]
movsxd rbx, dword [rax + 4]
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 8]
shl rbx, 5
add rbx, qword [r12 + 0x20]
mov rcx, qword [rbx + 8]
call fcn.1800a7040
mov r13, qword [rsp + 0x48]
mov r15d, eax
mov dword [rsp + 0x54], eax
mov eax, dword [r13 + 8]
cmp eax, 1
jne 0x1800b82bb
movzx eax, word [r13 + 2]
mov ecx, dword [r13 + 0xc]
sub ecx, eax
mov rax, qword [rbx + 0x18]
mov dword [rax], ecx
mov rcx, r12
or dword [r12 + 0x2c], 1
mov edx, dword [r13 + 4]
call fcn.1800f12b0
jmp 0x1800b82cc
cmp eax, 2
jne 0x1800b82cc
mov rcx, qword [rbx + 0x18]
movzx eax, byte [r13 + 0xc]
mov byte [rcx + 0x70], al
cmp dword [r13 + 4], 1
jne 0x1800b82e4
xor edx, edx
mov rcx, r12
call fcn.1800b1120
and dword [rsi + 0xc8], 0xfffffffc
test r15d, r15d
jne 0x1800bbc31
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp 0x1800b5b5c
movsxd rcx, dword [r13 + 4]
mov rax, qword [rsi + 0x78]
mov rdi, qword [rax + rcx*8]
test rdi, rdi
je case.0x1800b5a82.112
mov eax, dword [r13 + 8]
cmp dword [rdi + 0x44], eax
jne case.0x1800b5a82.112
mov rcx, qword [rdi + 0x30]
call fcn.180099040
jmp 0x1800b8439
mov eax, dword [rsi + 0xc8]
and al, 3
cmp al, 1
je 0x1800bbd88
mov rax, qword [rsp + 0x48]
mov edi, edx
mov r8, qword [rbp - 0x80]
mov r14, rdx
movsxd r12, dword [rax + 0xc]
mov r15d, dword [rax + 8]
mov rax, r12
shl rax, 5
add rax, qword [r8 + 0x20]
mov r8, qword [rsp + 0x48]
mov r13, qword [rax + 8]
cmp bl, 0x71
jne 0x1800b8391
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 + 0x70]
cmp cl, byte [rax + 0xc5]
jae 0x1800b8393
mov byte [rax + 0xc5], cl
jmp 0x1800b8393
mov esi, edx
test byte [r8 + 2], 0x10
je 0x1800b83b1
imul rbx, r15, 0x38
add rbx, r11
mov rcx, rbx
call fcn.1800aa370
mov r8, qword [rsp + 0x48]
mov r15d, dword [rbx]
movzx eax, byte [r8 + 1]
cmp al, 0xf8
jne 0x1800b83c5
mov r14, qword [r8 + 0x10]
movzx edi, word [r14 + 8]
jmp 0x1800b83cd
cmp al, 0xfd
jne 0x1800b83cd
mov edi, dword [r8 + 0x10]
mov rbx, qword [rsp + 0x48]
xor r9d, r9d
mov rcx, qword [rsp + 0x70]
mov r8d, edi
mov edx, dword [rbx + 4]
call fcn.1800b5140
mov rdi, rax
test rax, rax
je 0x1800bc0e0
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.18009e1b0
mov r12, qword [rbp - 0x80]
mov r15d, eax
mov rsi, qword [rsp + 0x70]
mov qword [rdi + 0x38], r14
cmp byte [rbx + 1], 0xf8
mov dword [rsp + 0x54], 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.1800992f0
test r15d, r15d
jne 0x1800bbb8f
mov r13, qword [rsp + 0x48]
jmp 0x1800b5f0b
mov r15, qword [rsp + 0x48]
xor r9d, r9d
mov rax, qword [rsi + 0x78]
movsxd rcx, dword [r15 + 8]
mov edx, dword [r15 + 4]
mov rbx, qword [rax + rcx*8]
mov rcx, rsi
movsx r8d, word [rbx + 0x48]
call fcn.1800b5140
mov r10, rax
test rax, rax
je 0x1800bc0e9
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
mov ecx, edx
movzx eax, byte [rbx + 4]
mov byte [r10 + 4], al
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.18009e1b0
mov r11, qword [rsp + 0x58]
mov r15d, eax
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov r13, qword [rsp + 0x48]
mov dword [rsp + 0x54], eax
jmp 0x1800b5b5c
mov r15, qword [rsp + 0x48]
xor r14d, r14d
movsxd rax, dword [r15 + 0xc]
test eax, eax
jle 0x1800b8545
imul rcx, rax, 0x38
mov dword [rcx + r11 + 0x10], r14d
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
lea rax, [0x1801ff6b9]
mov qword [rcx + r11 + 8], rax
movsxd rdx, dword [r15 + 4]
mov rax, qword [rsi + 0x78]
mov rbx, qword [rax + rdx*8]
test rbx, rbx
je 0x1800b85aa
test byte [rbx + 8], 8
jne 0x1800b85aa
movsx eax, word [rbx + 0x48]
cmp dword [r15 + 8], eax
jg 0x1800b85aa
mov edx, dword [rbx + 0x44]
xor r8d, r8d
mov rcx, qword [rbx + 0x10]
mov qword [rbx + 0x18], r14
mov dword [rbx + 0x20], r14d
call fcn.1800a69e0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800bbb8f
mov r13, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov byte [rbx + 2], 1
jmp 0x1800b5b5c
mov r8d, dword [r15 + 8]
xor r9d, r9d
mov rcx, rsi
call fcn.1800b5140
mov rbx, rax
test rax, rax
je 0x1800bc0e9
or dword [rax + 8], 1
lea r9, [rax + 0x10]
movzx ecx, word [r15 + 2]
mov r8, r12
or ecx, 5
mov dword [rsp + 0x28], 0x41e
mov dword [rsp + 0x20], ecx
xor edx, edx
mov rcx, qword [r12]
call fcn.18009aff0
mov r15d, eax
mov r13d, 1
test eax, eax
jne 0x1800b7e2b
mov rcx, qword [rbx + 0x10]
xor r8d, r8d
mov edx, r13d
call fcn.18009c9e0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800b86a9
mov rax, qword [rsp + 0x48]
mov rcx, qword [rbx + 0x10]
mov r14, qword [rax + 0x10]
mov qword [rbx + 0x38], r14
test r14, r14
je 0x1800b867a
movzx r8d, word [rax + 2]
lea rdx, [rbx + 0x44]
or r8d, 2
call fcn.1800a66a0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800b8674
mov rax, qword [rbx + 0x30]
lea r8d, [r13 + 3]
mov edx, dword [rbx + 0x44]
mov r9, r14
mov rcx, qword [rbx + 0x10]
mov qword [rsp + 0x20], rax
call fcn.18009e1b0
mov r15d, eax
mov dword [rsp + 0x54], eax
mov byte [rbx + 4], 0
jmp 0x1800b86a1
mov rax, qword [rbx + 0x30]
xor r9d, r9d
mov edx, r13d
mov dword [rbx + 0x44], r13d
mov qword [rsp + 0x20], rax
lea r8d, [r9 + 4]
call fcn.18009e1b0
mov r15d, eax
mov dword [rsp + 0x54], eax
mov byte [rbx + 4], r13b
mov rsi, qword [rsp + 0x70]
xor r14d, r14d
mov rax, qword [rsp + 0x48]
mov ecx, r14d
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 r15d, r15d
jne 0x1800bbd93
mov rdi, qword [rsp + 0x78]
mov r13, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov byte [rbx + 2], 1
jmp 0x1800b5b5c
mov r15, qword [rsp + 0x48]
mov r9b, 1
mov rcx, rsi
mov r8d, dword [r15 + 8]
mov edx, dword [r15 + 4]
call fcn.1800b5140
test rax, rax
je 0x1800bc0e9
mov rcx, qword [r15 + 0x10]
mov r8, rax
mov qword [rax + 0x38], rcx
mov rcx, r12
mov edx, dword [r15 + 0xc]
call fcn.1800bdce0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800bbb8f
mov r13, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp 0x1800b5b5c
mov rax, qword [rsp + 0x48]
mov r13, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rdx, qword [rax + rcx*8]
mov rcx, qword [rdx + 0x18]
lea rax, [rcx + 1]
mov qword [rdx + 0x18], rax
xor edx, edx
test rcx, rcx
je 0x1800bb25d
jmp case.0x1800b5a82.89
mov rax, qword [rsp + 0x48]
mov r9b, 3
mov rcx, rsi
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 4]
call fcn.1800b5140
test rax, rax
je 0x1800bc0e9
mov r13, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov byte [rax + 2], 1
mov ecx, dword [r13 + 8]
mov dword [rax + 0x24], ecx
lea rcx, [0x18025418a]
mov qword [rax + 0x30], rcx
mov byte [rax + 4], 1
jmp 0x1800b5b5c
mov rdx, qword [rsi + 0x78]
mov rcx, rsi
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
mov rdx, qword [rdx + rax*8]
call fcn.1800adc00
mov rax, qword [rsp + 0x48]
xor edx, edx
mov r13, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov r10d, dword [rsp + 0x50]
mov qword [rax + rcx*8], rdx
jmp case.0x1800b5a82.89
mov rax, qword [rsi + 0x78]
mov r12d, edx
mov r15, qword [rsp + 0x48]
movsxd rcx, dword [r15 + 4]
mov rsi, qword [rax + rcx*8]
cmp byte [rsi + 4], 0
mov word [rsi + 2], 0
mov dword [rsi + 0x20], edx
je 0x1800b895e
movsxd rax, dword [r15 + 0xc]
imul rdi, rax, 0x38
add rdi, r11
movzx r14d, word [rdi + 0x14]
movzx eax, r14b
and al, 0x2e
cmp al, 2
jne 0x1800b886d
xor edx, edx
mov rcx, rdi
call fcn.1800b5270
mov rcx, rdi
call fcn.1800aa1c0
movzx ecx, word [rdi + 0x14]
mov r15, rax
mov word [rdi + 0x14], r14w
test cl, 0x24
jne 0x1800b891b
test cl, 8
jne 0x1800b88f9
test cl, 1
jne 0x1800bb267
cmp ebx, 0x17
jae 0x1800bb267
mov rcx, qword [rsi + 0x30]
lea rdx, [rbp + 0x44]
call fcn.18009f2c0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800bbb86
xor edx, edx
cmp dword [rbp + 0x44], edx
jne 0x1800bb27d
mov r13, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
test r12d, r12d
je 0x1800bb754
mov rsi, qword [rsp + 0x70]
add r13, 0x18
movzx r9d, byte [rsp + 0x40]
mov rdi, qword [rsp + 0x78]
jmp case.0x1800b5a82.89
movsd xmm1, qword [rdi]
mov rcx, r15
call fcn.1800afd40
test eax, eax
jle 0x1800b8912
test bl, 1
jne 0x1800b891b
dec ebx
jmp 0x1800b891b
jns 0x1800b891b
test bl, 1
je 0x1800b891b
inc ebx
mov rcx, qword [rsi + 0x30]
lea rdi, [rsi + 0x30]
lea r9, [rbp + 0x44]
xor r8d, r8d
mov rdx, r15
call fcn.18009f2e0
mov qword [rsi + 0x50], r15
mov r15d, eax
mov dword [rsp + 0x54], eax
mov r13d, 1
test eax, eax
je 0x1800b89d9
mov r12, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x70]
jmp 0x1800bbb9a
mov rax, qword [rsi + 0x30]
lea rdi, [rsi + 0x30]
mov ecx, 0xffffffff
lea r8, [rbp + 0x44]
mov r13d, 1
lea rdx, [rbp + 0x50]
movzx r14d, byte [rax + 3]
mov rax, qword [rsi + 0x38]
and r14b, 2
mov qword [rbp + 0x50], rax
movzx eax, word [r15 + 0x10]
setne r12b
mov word [rbp + 0x6c], ax
lea eax, [rbx - 1]
test al, 1
mov byte [rbp + 0x72], 0
mov eax, r13d
cmovne eax, ecx
mov byte [rbp + 0x6e], al
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbp + 0x58], rcx
mov rcx, qword [rdi]
call fcn.18009f560
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800b894b
test r14b, r14b
je 0x1800b89d9
cmp byte [rbp + 0x72], al
je 0x1800b88bd
mov eax, dword [rbp + 0x44]
cmp ebx, 0x17
jl 0x1800b8a3a
test eax, eax
js 0x1800b89f6
jne 0x1800b89ec
cmp ebx, 0x18
je 0x1800b89f6
xor edx, edx
mov dword [rbp + 0x44], edx
jmp 0x1800b88c8
xor r14d, r14d
xor edx, edx
mov dword [rbp + 0x44], r14d
mov rcx, qword [rdi]
call fcn.18009fe60
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
je 0x1800b88bd
cmp eax, 0x65
jne 0x1800b894b
mov rdi, qword [rsp + 0x78]
mov r15d, r14d
mov dword [rbp + 0x44], r13d
mov r13, qword [rsp + 0x48]
mov dword [rsp + 0x54], r14d
jmp 0x1800b683e
test eax, eax
jg 0x1800b8a55
jne 0x1800b8a45
cmp ebx, 0x15
je 0x1800b8a55
mov rcx, qword [rdi]
call fcn.18009fbe0
mov dword [rbp + 0x44], eax
jmp 0x1800b88bd
xor r14d, r14d
xor edx, edx
mov dword [rbp + 0x44], r14d
mov rcx, qword [rdi]
call fcn.1800a00b0
jmp 0x1800b8a07
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 0x1c]
mov rax, qword [rsi + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rbx + 0x30]
call fcn.18009e450
mov r13, qword [rsp + 0x48]
test eax, eax
je 0x1800bb748
mov rax, qword [rbx + 0x38]
mov rcx, r13
mov qword [rbp + 0x50], rax
mov byte [rbp + 0x6e], 0
movzx eax, word [rcx + 0x28]
mov edi, dword [rcx + 4]
mov word [rbp + 0x6c], ax
movsxd rax, dword [rcx + 0x24]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x58]
xor r14d, r14d
mov qword [rbp + 0x58], rcx
mov dword [rbp + 0xa8], r14d
nop dword [rax]
nop dword [rax + rax]
lea r9, [rbp + 0xa8]
mov rdx, rbx
lea r8, [rbp + 0x50]
mov rcx, r12
call fcn.1800b0fe0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800bbc31
mov eax, dword [rbp + 0xa8]
test eax, eax
jle 0x1800b8b08
cmp word [r13 + 2], r14w
je 0x1800b8b3f
test eax, eax
jns 0x1800bb25b
test edi, edi
jle 0x1800bb748
mov rcx, qword [rbx + 0x30]
xor edx, edx
dec edi
mov dword [rbx + 0x20], r14d
call fcn.18009fe60
mov r15d, eax
test eax, eax
je 0x1800b8ad0
cmp eax, 0x65
jne 0x1800bbc31
mov r15d, r14d
mov dword [rsp + 0x54], r14d
mov rdi, qword [rsp + 0x78]
add r13, 0x18
jmp 0x1800b683e
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 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 0x1800b8b7c
mov word [rdx + 0xc], ax
mov r13, qword [rsp + 0x48]
jmp 0x1800b5b5c
mov rax, qword [rsp + 0x48]
mov r13, qword [rsp + 0x48]
mov eax, dword [rax + 0xc]
cmp ecx, eax
lea rcx, [0x180000000]
jle 0x1800b6bfc
mov word [rdx + 0xc], ax
xor edx, edx
mov r12, qword [rbp - 0x80]
add r13, 0x18
mov r14, qword [rsp + 0x68]
jmp 0x1800b5a49
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je case.0x1800b5a82.9
cmp byte [rdx + 2], 0
je 0x1800b8b72
jmp case.0x1800b5a82.9
mov rax, qword [rsp + 0x48]
mov r13, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rcx, qword [rax + rcx*8]
movzx eax, word [rcx + 0xc]
cmp eax, dword [r13 + 0x10]
jge case.0x1800b5a82.89
mov r15, qword [rsp + 0x48]
mov rax, qword [rsi + 0x78]
movsxd rcx, dword [r15 + 4]
mov rbx, qword [rax + rcx*8]
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
movzx eax, word [r15 + 0x10]
add rcx, r11
mov word [rbp + 0x6c], ax
mov qword [rbp + 0x58], rcx
test ax, ax
je 0x1800b8c50
mov rax, qword [rbx + 0x38]
lea rsi, [rbx + 0x24]
mov qword [rbp + 0x50], rax
lea rdx, [rbp + 0x50]
mov byte [rbp + 0x6e], 0
mov r8, rsi
mov rcx, qword [rbx + 0x30]
call fcn.18009f560
mov r15d, eax
mov dword [rsp + 0x54], eax
jmp 0x1800b8cc2
mov eax, 0x400
test word [rcx + 0x14], ax
je 0x1800b8c68
call fcn.1800a9e30
test eax, eax
jne 0x1800bc0e9
mov rcx, qword [rbx + 0x38]
call fcn.1800af5e0
mov rdi, rax
test rax, rax
je 0x1800bc0e9
mov rdx, qword [rbp + 0x58]
mov r9, rax
mov rcx, qword [rbx + 0x38]
mov r8, qword [rdx + 8]
mov edx, dword [rdx + 0x10]
call fcn.1800af640
mov byte [rdi + 0x1e], 0
lea rsi, [rbx + 0x24]
mov rcx, qword [rbx + 0x30]
mov r8, rsi
mov rdx, rdi
call fcn.18009f560
mov rdx, rdi
mov dword [rsp + 0x54], eax
mov rcx, r12
mov r15d, eax
call fcn.18007d740
mov rdi, qword [rsp + 0x78]
test r15d, r15d
jne 0x1800bbb8a
mov ecx, dword [rsi]
test ecx, ecx
mov byte [rbx + 3], r15b
setne al
xor r14d, r14d
mov byte [rbx + 2], al
mov rax, qword [rsp + 0x48]
mov dword [rbx + 0x20], r14d
movzx eax, byte [rax]
cmp al, 0x1d
jne 0x1800b8d00
mov r13, qword [rsp + 0x48]
xor edx, edx
test ecx, ecx
je 0x1800bb25d
jmp 0x1800b7503
test ecx, ecx
jne 0x1800bb256
cmp al, 0x1b
jne 0x1800b8d58
movzx edx, word [rbp + 0x6c]
mov rcx, r14
test rdx, rdx
je 0x1800bb743
mov rax, qword [rbp + 0x58]
add rax, 0x14
test byte [rax], 1
jne 0x1800bb256
inc rcx
add rax, 0x38
cmp rcx, rdx
jl 0x1800b8d24
mov r13, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x70]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp 0x1800b5b5c
mov r13, qword [rsp + 0x48]
xor edx, edx
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
cmp byte [r13], 0x1a
jne 0x1800bb754
movzx eax, word [r13 + 0x10]
mov rsi, qword [rsp + 0x70]
movzx r9d, byte [rsp + 0x40]
mov word [rbx + 0xc], ax
jmp case.0x1800b5a82.89
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, r11
test byte [rcx + 0x14], 0x24
jne case.0x1800b5a82.31
movups xmm0, xmmword [rcx]
movzx r8d, r9b
mov dl, 0x43
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rbp + 0x50], xmm0
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rbp + 0x60], xmm1
movsd xmm1, qword [rcx + 0x30]
lea rcx, [rbp + 0x50]
movups xmmword [rbp + 0x70], xmm0
movsd qword [rbp + 0x80], xmm1
call fcn.1800b5380
xor edx, edx
test byte [rbp + 0x64], 4
je 0x1800bb27d
mov rdi, qword [rbp + 0x50]
jmp 0x1800b8df9
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov rdi, qword [rcx + r11]
mov rax, qword [rsp + 0x48]
lea r9, [rbp + 0x94]
xor r8d, r8d
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rbx + 0x30]
mov dword [rbp + 0x94], edx
mov rdx, rdi
call fcn.18009f2e0
mov r13, qword [rsp + 0x48]
xor edx, edx
mov dword [rbx + 0x20], edx
mov r15d, eax
mov qword [rbx + 0x50], rdi
mov word [rbx + 2], 0
mov dword [rsp + 0x54], eax
mov eax, dword [rbp + 0x94]
mov dword [rbx + 0x24], eax
cmp dword [rbp + 0x94], edx
je 0x1800b8e6f
cmp dword [r13 + 8], edx
jne 0x1800bb25d
mov ecx, 0x1860d
call fcn.18014a2c0
mov r15d, eax
mov dword [rsp + 0x54], eax
xor edx, edx
test r15d, r15d
jne 0x1800bbb8f
jmp 0x1800b665a
mov rbx, qword [rsp + 0x48]
mov rcx, rsi
mov rdx, rbx
call fcn.1800b5520
mov rcx, qword [rsi + 0x78]
mov r13, rbx
movsxd rdx, dword [rbx + 4]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov rdx, qword [rcx + rdx*8]
mov rcx, qword [rdx + 0x18]
mov qword [rax], rcx
movsxd rcx, dword [rbx + 4]
mov rax, qword [rsi + 0x78]
mov rdx, qword [rax + rcx*8]
inc qword [rdx + 0x18]
jmp 0x1800b5b5c
mov rbx, qword [rsp + 0x48]
xor r14d, r14d
mov rdx, rbx
mov qword [rbp - 0x68], r14
mov rcx, rsi
mov dword [rbp + 0x40], r14d
call fcn.1800b5520
mov r8, qword [rsp + 0x70]
mov rsi, rax
movsxd rdx, dword [rbx + 4]
mov rcx, qword [r8 + 0x78]
mov rdi, qword [rcx + rdx*8]
test byte [rdi + 8], 2
jne 0x1800b8f66
mov rcx, qword [rdi + 0x30]
lea rdx, [rbp + 0x40]
call fcn.18009f2c0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800bc123
cmp dword [rbp + 0x40], r14d
je 0x1800b8f30
mov r8, qword [rsp + 0x70]
mov r13d, 1
mov qword [rbp - 0x68], r13
jmp 0x1800b8f6c
mov rcx, qword [rdi + 0x30]
call fcn.18009e460
mov r8, qword [rsp + 0x70]
movabs rcx, 0x7fffffffffffffff
mov qword [rbp - 0x68], rax
mov r13d, 1
cmp rax, rcx
jl 0x1800b8f5d
or dword [rdi + 8], 2
jmp 0x1800b8f6c
inc rax
mov qword [rbp - 0x68], rax
jmp 0x1800b8f6c
mov r13d, 1
movsxd rax, dword [rbx + 0xc]
test eax, eax
je 0x1800b8ffe
mov rcx, qword [r8 + 0x108]
test rcx, rcx
je 0x1800b8faa
mov rax, qword [rcx + 8]
test rax, rax
je 0x1800b8f9c
nop dword [rax]
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x1800b8f90
movsxd rax, dword [rbx + 0xc]
imul rbx, rax, 0x38
add rbx, qword [rcx + 0x18]
jmp 0x1800b8fb3
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x58]
mov rcx, rbx
call fcn.1800aa1c0
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 0x1800b905e
test byte [rdi + 8], 2
jne 0x1800b905e
lea rcx, [rax + 1]
mov rax, qword [rbp - 0x68]
cmp rax, rcx
jge 0x1800b8ffb
mov rax, rcx
mov qword [rbp - 0x68], rcx
mov qword [rbx], rax
test byte [rdi + 8], 2
je 0x1800b9073
mov ebx, r14d
nop word [rax + rax]
lea rdx, [rbp - 0x68]
mov ecx, 8
call fcn.180080be0
mov rdx, qword [rbp - 0x68]
lea r9, [rbp + 0x40]
movabs rax, 0x3fffffffffffffff
xor r8d, r8d
and rdx, rax
inc rdx
mov qword [rbp - 0x68], rdx
mov rcx, qword [rdi + 0x30]
call fcn.18009f2e0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800b9064
cmp dword [rbp + 0x40], r14d
jne 0x1800b9073
inc ebx
cmp ebx, 0x64
jl 0x1800b9010
mov r15d, reloc.WS2_32.dll_listen
mov rdi, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x70]
jmp 0x1800bbb9a
mov byte [rdi + 3], r14b
mov dword [rdi + 0x20], r14d
mov rax, qword [rbp - 0x68]
mov qword [rsi], rax
jmp 0x1800b5f01
mov r15, qword [rsp + 0x48]
movsxd rax, dword [r15 + 8]
movsxd rcx, dword [r15 + 4]
imul rdx, rax, 0x38
mov rax, qword [rsi + 0x78]
add rdx, r11
mov rbx, qword [rax + rcx*8]
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
cmp byte [r15 + 1], 0xfb
mov r8, qword [rcx + r11]
mov qword [rbp + 0x58], r8
jne 0x1800b90e0
cmp qword [r12 + 0x140], 0
je 0x1800b90e0
movsx rcx, byte [rbx + 1]
mov rax, qword [r12 + 0x20]
mov rdi, qword [r15 + 0x10]
shl rcx, 5
xor r14d, r14d
mov rsi, qword [rcx + rax]
jmp 0x1800b90e9
xor r14d, r14d
mov edi, r14d
mov esi, r14d
test byte [r15 + 2], 1
je 0x1800b9105
mov rax, qword [rsp + 0x70]
inc qword [rax + 0x38]
test byte [r15 + 2], 0x20
je 0x1800b9105
mov qword [r12 + 0x38], r8
mov rax, qword [rdx + 8]
movzx r8d, word [r15 + 2]
mov qword [rbp + 0x60], rax
mov eax, dword [rdx + 0x10]
mov dword [rbp + 0x74], eax
test r8b, 0x10
je 0x1800b9124
mov r9d, dword [rbx + 0x24]
jmp 0x1800b9127
mov r9d, r14d
mov eax, 0x400
test word [rdx + 0x14], ax
je 0x1800b9139
mov eax, dword [rdx]
mov dword [rbp + 0x78], eax
jmp 0x1800b913d
mov dword [rbp + 0x78], r14d
mov qword [rbp + 0x50], r14
lea rdx, [rbp + 0x50]
mov rcx, qword [rbx + 0x30]
and r8d, 0x8a
call fcn.1800a4de0
inc dword [rbp - 0x74]
mov r15d, eax
mov dword [rsp + 0x54], eax
mov byte [rbx + 3], 0
mov dword [rbx + 0x20], r14d
test eax, eax
jne 0x1800bbb8a
test rdi, rdi
je 0x1800bb743
mov rax, qword [rsp + 0x48]
mov edx, reloc.WS2_32.dll_select
mov r9, qword [rdi]
mov r8, rsi
mov rcx, qword [r12 + 0x138]
test byte [rax + 2], 4
mov eax, reloc.WS2_32.dll_socket
cmovne edx, eax
mov rax, qword [rbp + 0x58]
mov qword [rsp + 0x20], rax
call qword [r12 + 0x140]
jmp 0x1800b5f01
mov r15, qword [rsp + 0x48]
mov rcx, qword [rsi + 0x78]
movsxd rax, dword [r15 + 4]
mov r9, qword [rcx + rax*8]
movsxd rax, dword [r15 + 8]
mov rdx, qword [rcx + rax*8]
movsxd rax, dword [r15 + 0xc]
test eax, eax
je 0x1800b91ed
mov rdx, qword [rdx + 0x30]
imul rcx, rax, 0x38
mov r8, qword [rcx + r11]
mov rcx, qword [r9 + 0x30]
call fcn.1800a54e0
jmp 0x1800b872d
mov rdx, qword [rdx + 0x30]
xor r10d, r10d
mov rcx, qword [r9 + 0x30]
mov r8d, r10d
call fcn.1800a54e0
jmp 0x1800b872d
mov r15, qword [rsp + 0x48]
mov rax, qword [rsi + 0x78]
cmp byte [r15 + 1], 0xfb
movsxd rcx, dword [r15 + 4]
mov r14d, dword [r15 + 8]
mov rbx, qword [rax + rcx*8]
jne 0x1800b925e
cmp qword [r12 + 0x140], 0
je 0x1800b925e
movsx rcx, byte [rbx + 1]
mov rax, qword [r12 + 0x20]
mov rdi, qword [r15 + 0x10]
shl rcx, 5
test byte [r15 + 2], 2
mov rsi, qword [rcx + rax]
je 0x1800b9264
cmp byte [rbx + 4], 0
je 0x1800b9264
mov rcx, qword [rbx + 0x30]
call fcn.18009e460
mov qword [rbx + 0x50], rax
jmp 0x1800b9264
mov rsi, rdx
mov rdi, rdx
movzx edx, byte [r15 + 2]
mov rcx, qword [rbx + 0x30]
call fcn.1800a5a70
inc dword [rbp - 0x74]
xor edx, edx
mov dword [rsp + 0x54], eax
mov r15d, eax
mov qword [rbx + 0x20], rdx
test eax, eax
jne 0x1800bbb8a
test r14b, 1
je 0x1800bb769
mov rax, qword [rsp + 0x70]
inc qword [rax + 0x38]
mov r10, qword [r12 + 0x140]
test r10, r10
je 0x1800bb769
test rdi, rdi
je 0x1800bb769
test byte [rdi + 0x30], 0x80
jne 0x1800bb769
mov rax, qword [rbx + 0x50]
lea edx, [r15 + 9]
mov r9, qword [rdi]
mov r8, rsi
mov rcx, qword [r12 + 0x138]
mov qword [rsp + 0x20], rax
call r10
jmp 0x1800b5f01
mov rax, qword [rsi + 0x38]
add qword [r12 + 0x80], rax
mov qword [r12 + 0x78], rax
mov qword [rsi + 0x38], rdx
jmp case.0x1800b5a82.89
mov r15, qword [rsp + 0x48]
lea r9, [rbp + 0xac]
mov rax, qword [rsi + 0x78]
xor r10d, r10d
movsxd rcx, dword [r15 + 4]
mov r8d, dword [r15 + 0x10]
mov rcx, qword [rax + rcx*8]
movsxd rax, dword [r15 + 0xc]
imul rdx, rax, 0x38
mov dword [rbp + 0xac], r10d
add rdx, r11
call fcn.1800c0820
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800bbb8f
mov r13, qword [rsp + 0x48]
xor edx, edx
cmp dword [rbp + 0xac], edx
jmp 0x1800b701a
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 8]
movsxd rcx, dword [rcx + 4]
imul rdx, rax, 0x38
mov rax, qword [rsi + 0x78]
add rdx, r11
mov rcx, qword [rax + rcx*8]
call fcn.1800c0750
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800bbb8f
mov rax, qword [rsp + 0x48]
xor edx, edx
mov r13, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
movsxd rcx, dword [rax + 0xc]
mov rax, qword [rsi + 0x78]
mov r10d, dword [rsp + 0x50]
mov rcx, qword [rax + rcx*8]
mov dword [rcx + 0x20], edx
jmp case.0x1800b5a82.89
mov r15, qword [rsp + 0x48]
movsxd rax, dword [r15 + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, qword [rsi + 0x68]
test word [rbx + 0x14], ax
je 0x1800b93de
mov rcx, rbx
call fcn.1800b54f0
mov rbx, rax
jmp 0x1800b93e4
mov word [rbx + 0x14], 4
movsxd rcx, dword [r15 + 4]
mov rax, qword [rsi + 0x78]
mov rcx, qword [rax + rcx*8]
mov rdi, qword [rcx + 0x30]
mov rcx, rdi
call fcn.18009e410
mov edx, dword [rdi + 0x40]
cmp edx, dword [r12 + 0x88]
ja 0x1800bbdae
mov r8, rbx
mov rcx, rdi
call fcn.1800aaf10
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800bbb8f
mov r13, qword [rsp + 0x48]
cmp dword [r13 + 0xc], eax
jne 0x1800bb748
mov eax, 0x4000
test word [rbx + 0x14], ax
je 0x1800bb748
mov rcx, rbx
call fcn.1800a9da0
test eax, eax
jne 0x1800bc0e9
jmp 0x1800b5f0b
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 8]
imul rdi, rax, 0x38
mov eax, 0x9000
add rdi, qword [rsi + 0x68]
test word [rdi + 0x14], ax
je 0x1800b9485
mov rcx, rdi
call fcn.1800b54f0
mov rdi, rax
xor edx, edx
jmp 0x1800b948b
mov word [rdi + 0x14], 4
movsxd rcx, dword [rbx + 4]
mov rax, qword [rsi + 0x78]
mov rbx, qword [rax + rcx*8]
cmp byte [rbx + 2], 0
je 0x1800b94ad
mov r13, qword [rsp + 0x48]
mov word [rdi + 0x14], 1
jmp 0x1800b665a
cmp byte [rbx + 3], 0
je 0x1800b94cb
mov rax, qword [rbx + 0x50]
mov r13, qword [rsp + 0x48]
mov qword [rbp + 0xc8], rax
mov qword [rdi], rax
jmp 0x1800b5f0b
cmp byte [rbx], 2
jne 0x1800b9513
mov rcx, qword [rbx + 0x30]
lea rdx, [rbp + 0xc8]
mov rbx, qword [rcx]
mov rax, qword [rbx]
call qword [rax + 0x60]
mov rdx, rbx
mov rcx, rsi
mov r15d, eax
mov dword [rsp + 0x54], eax
call fcn.1800b1380
test r15d, r15d
jne 0x1800bbb8f
mov rax, qword [rbp + 0xc8]
mov r13, qword [rsp + 0x48]
mov qword [rdi], rax
jmp 0x1800b5f0b
mov rcx, rbx
call fcn.1800af330
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800bbb8f
cmp byte [rbx + 2], al
je 0x1800b953f
mov r13, qword [rsp + 0x48]
mov word [rdi + 0x14], 1
jmp 0x1800b5f0b
mov rcx, qword [rbx + 0x30]
call fcn.18009e460
mov r13, qword [rsp + 0x48]
mov qword [rbp + 0xc8], rax
mov qword [rdi], rax
jmp 0x1800b5f0b
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rax, qword [rax + rdx*8]
test rax, rax
jne 0x1800b95a6
mov r9b, 3
lea r8d, [rax + 1]
mov rcx, rsi
call fcn.1800b5140
test rax, rax
je 0x1800bc0e9
xor r14d, r14d
mov byte [rax + 4], 1
or dword [rax + 8], 8
lea rcx, [0x18025418a]
mov dword [rax + 0x24], r14d
mov qword [rax + 0x30], rcx
jmp 0x1800b95a9
xor r14d, r14d
cmp byte [rax], 0
mov byte [rax + 2], 1
mov dword [rax + 0x20], r14d
jne 0x1800bb743
mov rcx, qword [rax + 0x30]
call fcn.180099040
jmp 0x1800b873c
mov rax, qword [rsp + 0x48]
xor r14d, r14d
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rdi, qword [rax + rcx*8]
mov rsi, qword [rdi + 0x30]
mov dword [rbp + 0x90], r14d
cmp bl, 0x89
jne 0x1800b9603
mov rcx, rsi
mov dword [rdi + 0x24], 0xffffffff
call fcn.18009e450
test eax, eax
jne 0x1800bb743
cmp byte [rsi], r14b
jne 0x1800b9628
test byte [rsi + 1], 8
je 0x1800b9628
mov dword [rbp + 0x90], r14d
mov r15d, r14d
mov word [rdi + 2], r14w
mov dword [rdi + 0x20], r14d
mov dword [rsp + 0x54], r14d
jmp 0x1800b9659
lea rdx, [rbp + 0x90]
mov rcx, rsi
call fcn.18009f200
mov r15d, eax
mov dword [rsp + 0x54], eax
movzx eax, byte [rbp + 0x90]
mov byte [rdi + 2], al
mov byte [rdi + 3], r14b
mov dword [rdi + 0x20], r14d
test r15d, r15d
jne 0x1800bbb8a
mov r13, qword [rsp + 0x48]
cmp dword [r13 + 8], r14d
jle 0x1800bb748
xor edx, edx
cmp dword [rbp + 0x90], r14d
jne 0x1800bb25d
jmp 0x1800b6655
mov rax, qword [rsp + 0x48]
lea rdx, [rbp + 0x98]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rcx, qword [rax + rcx*8]
mov rbx, qword [rcx + 0x30]
mov rcx, rbx
call fcn.18009f170
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800bbb8f
cmp dword [rbp + 0x98], eax
je 0x1800b96c0
mov rcx, 0xffffffffffffffff
jmp 0x1800b96d4
mov rcx, rbx
call fcn.18009fbf0
mov rcx, rax
call fcn.180084070
movsx rcx, ax
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
cmp rcx, rax
jl 0x1800b9705
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0x10]
cmp rcx, rax
jg 0x1800b9705
mov r13, qword [rsp + 0x48]
mov eax, 1
mov dword [rbp + 0x98], eax
jmp 0x1800b683e
mov r13, qword [rsp + 0x48]
xor edx, edx
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov dword [rbp + 0x98], edx
jmp case.0x1800b5a82.89
inc dword [rsi + 0xdc]
mov rax, qword [rsp + 0x48]
mov r13d, 1
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rbx, qword [rax + rcx*8]
mov dword [rbp + 0x48], r13d
cmp byte [rbx], r13b
jne 0x1800b9762
lea rdx, [rbp + 0x48]
mov rcx, rbx
call fcn.1800c0590
mov r15d, eax
mov dword [rsp + 0x54], eax
jmp 0x1800b97af
mov rdi, qword [rbx + 0x30]
mov rcx, rdi
call fcn.18009eed0
xor r14d, r14d
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800b9791
mov rcx, rdi
mov dword [rbp + 0x48], r14d
call fcn.18009f110
mov r15d, eax
mov dword [rsp + 0x54], eax
jmp 0x1800b97a2
cmp eax, 0x10
jne 0x1800b97a2
mov dword [rbp + 0x48], r13d
mov r15d, r14d
mov dword [rsp + 0x54], r14d
mov rdi, qword [rsp + 0x78]
mov byte [rbx + 3], 0
mov dword [rbx + 0x20], r14d
test r15d, r15d
jne 0x1800b7e2b
mov r13, qword [rsp + 0x48]
movzx eax, byte [rbp + 0x48]
mov byte [rbx + 2], al
cmp dword [r13 + 8], r15d
jle 0x1800bb748
xor edx, edx
cmp dword [rbp + 0x48], edx
jmp 0x1800b701a
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, r12
mov rdx, rbx
call fcn.1800c0660
jmp 0x1800b9834
mov r15, qword [rsp + 0x48]
mov rax, qword [rsi + 0x78]
movsxd rcx, dword [r15 + 4]
mov edx, dword [r15 + 0xc]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rbx + 0x30]
call fcn.1800a00b0
jmp 0x1800b9834
mov r15, qword [rsp + 0x48]
mov rax, qword [rsi + 0x78]
movsxd rcx, dword [r15 + 4]
mov edx, dword [r15 + 0xc]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rbx + 0x30]
call fcn.18009fe60
mov r15d, eax
mov dword [rsp + 0x54], eax
xor edx, edx
mov dword [rbx + 0x20], edx
test eax, eax
jne 0x1800b985c
mov rax, qword [rsp + 0x48]
mov byte [rbx + 2], dl
movzx eax, word [rax + 2]
inc dword [rsi + rax*4 + 0xd4]
jmp case.0x1800b5a82.9
cmp r15d, 0x65
jne 0x1800bbb8f
mov r15d, edx
mov dword [rsp + 0x54], edx
mov byte [rbx + 2], 1
jmp 0x1800ba120
mov r15, qword [rsp + 0x48]
mov rax, qword [rsi + 0x78]
movsxd rcx, dword [r15 + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [r15 + 8]
imul rbx, rax, 0x38
add rbx, r11
test byte [r15 + 2], 1
je 0x1800b989d
inc qword [rsi + 0x38]
mov eax, 0x400
test word [rbx + 0x14], ax
je 0x1800b98c5
mov rcx, rbx
call fcn.1800a9e30
mov r15d, eax
test eax, eax
jne 0x1800bbb8f
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movsxd rax, dword [rbx + 0x10]
xor r14d, r14d
movzx r8d, word [r15 + 2]
mov qword [rbp + 0x58], rax
mov rax, qword [rbx + 8]
mov qword [rbp + 0x50], rax
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
movzx eax, word [r15 + 0x10]
add rcx, r11
mov word [rbp + 0x70], ax
mov qword [rbp + 0x68], rcx
test r8b, 0x10
je 0x1800b9901
mov r9d, dword [rdi + 0x24]
jmp 0x1800b9904
mov r9d, r14d
mov rcx, qword [rdi + 0x30]
lea rdx, [rbp + 0x50]
and r8d, 0x8a
call fcn.1800a4de0
mov dword [rsp + 0x54], eax
mov r15d, eax
mov dword [rdi + 0x20], r14d
test eax, eax
jne 0x1800bbb8f
mov r13, qword [rsp + 0x48]
jmp 0x1800b5f0b
mov rbx, qword [rsp + 0x48]
mov rax, qword [rsi + 0x78]
movsxd rcx, dword [rbx + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
mov eax, 0x400
add rbx, r11
test word [rbx + 0x14], ax
je 0x1800b996f
mov rcx, rbx
call fcn.1800a9e30
mov r15d, eax
test eax, eax
jne 0x1800bbb8f
mov rdx, rbx
mov rcx, rdi
call fcn.1800bf070
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800bbb8f
mov r13, qword [rsp + 0x48]
jmp 0x1800b5f0b
mov r15, qword [rsp + 0x48]
lea r8, [rbp + 0xb8]
mov rax, qword [rsi + 0x78]
lea rdx, [rbp + 0x50]
movsxd rcx, dword [r15 + 4]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x38]
mov rdi, qword [rbx + 0x30]
mov qword [rbp + 0x50], rax
movzx eax, word [r15 + 0xc]
mov word [rbp + 0x6c], ax
movsxd rax, dword [r15 + 8]
imul rcx, rax, 0x38
mov byte [rbp + 0x6e], 0
add rcx, r11
mov qword [rbp + 0x58], rcx
mov rcx, rdi
call fcn.18009f560
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800bbb8f
cmp dword [rbp + 0xb8], eax
jne 0x1800b9a1f
mov dl, 4
mov rcx, rdi
call fcn.1800a5a70
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800bbb8f
mov r13, qword [rsp + 0x48]
xor edx, edx
mov qword [rbx + 0x20], rdx
jmp 0x1800b665a
mov r13, qword [rsp + 0x48]
cmp word [r13 + 2], 0
je 0x1800b9a3c
mov rcx, r12
call fcn.1800dd4d0
test eax, eax
je 0x1800bbdc8
xor edx, edx
mov qword [rbx + 0x20], rdx
jmp 0x1800b665a
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x30]
cmp byte [rax], 0
je 0x1800b9a7d
mov rcx, rbx
call fcn.1800af2d0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800bbb8f
xor r14d, r14d
jmp 0x1800b9a88
xor r14d, r14d
mov r15d, r14d
mov dword [rsp + 0x54], r14d
cmp byte [rbx + 2], 0
jne 0x1800b9b18
mov qword [rbp + 0xd0], r14
lea r8, [rbp + 0xd0]
mov rdx, qword [rbx + 0x30]
mov rcx, r12
call fcn.1800b0c10
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800bbb8f
mov rax, qword [rsp + 0x48]
cmp byte [rax], 0x8d
jne 0x1800b9afe
movsxd rcx, dword [rax + 0xc]
mov rax, qword [rsi + 0x78]
mov rdx, qword [rax + rcx*8]
mov byte [rdx + 2], r15b
mov rax, qword [rbp + 0xd0]
mov qword [rdx + 0x50], rax
mov rax, qword [rsp + 0x48]
mov byte [rdx + 3], 1
mov dword [rdx + 0x20], r14d
mov rax, qword [rax + 0x10]
mov qword [rdx + 0x10], rax
mov qword [rdx + 0x28], rbx
jmp 0x1800b873c
mov rdx, rax
mov rcx, rsi
call fcn.1800b5520
mov rcx, qword [rbp + 0xd0]
mov qword [rax], rcx
jmp 0x1800b873c
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x58]
call fcn.1800aa700
jmp 0x1800b873c
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx + 3], 0
je 0x1800b6240
call fcn.1800af260
jmp 0x1800b872d
mov r15, qword [rsp + 0x48]
cmp bl, 0x2a
mov rax, qword [rsi + 0x78]
movsxd rcx, dword [r15 + 4]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rdx + 0x38]
mov qword [rbp + 0x50], rax
movzx eax, word [r15 + 0x10]
mov word [rbp + 0x6c], ax
sbb al, al
mov byte [rbp + 0x6e], al
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbp + 0x58], rcx
mov rbx, qword [rdx + 0x30]
mov rcx, rbx
call fcn.18009e410
mov edi, dword [rbx + 0x40]
lea eax, [rdi - 1]
cmp eax, 0x7ffffffe
ja 0x1800bbde9
xor r8d, r8d
lea rcx, [rbp - 0x10]
mov rdx, r12
call fcn.1800aa6e0
lea r8, [rbp - 0x10]
mov edx, edi
mov rcx, rbx
call fcn.1800aaf10
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800bbb8f
mov rdx, qword [rbp - 8]
lea r8, [rbp + 0x50]
mov ecx, dword [rbp]
xor r9d, r9d
call fcn.1800afec0
lea rcx, [rbp - 0x10]
mov ebx, eax
call fcn.1800aa180
mov r13, qword [rsp + 0x48]
lea ecx, [rbx + 1]
neg ebx
test byte [r13], 1
cmovne ebx, ecx
xor edx, edx
test ebx, ebx
jg 0x1800bb25d
jmp 0x1800b665a
mov r15, qword [rsp + 0x48]
mov rcx, rsi
mov rdx, r15
call fcn.1800b5520
mov r13d, 1
mov rbx, rax
mov word [rax + 0x14], r13w
mov ecx, dword [r12 + 0xe8]
inc ecx
cmp dword [r12 + 0xdc], ecx
jg 0x1800bbe29
movsxd rdi, dword [r15 + 0xc]
lea r8, [rbp + 0x9c]
mov rcx, qword [r12 + 0x20]
xor r10d, r10d
mov edx, dword [r15 + 4]
mov r9, rdi
shl r9, 5
mov dword [rbp + 0x9c], r10d
mov rcx, qword [r9 + rcx + 8]
call fcn.1800a6f50
mov r15d, eax
mov dword [rsp + 0x54], eax
mov word [rbx + 0x14], 4
movsxd rax, dword [rbp + 0x9c]
mov qword [rbx], rax
test r15d, r15d
jne 0x1800b7e2b
mov r8d, dword [rbp + 0x9c]
test r8d, r8d
je 0x1800bb743
mov rax, qword [rsp + 0x48]
mov edx, edi
mov rcx, r12
mov r9d, dword [rax + 4]
call fcn.1800e1af0
mov r13, qword [rsp + 0x48]
lea eax, [rdi + 1]
mov byte [rbp - 0x78], al
jmp 0x1800b5f0b
mov r15, qword [rsp + 0x48]
lea r8, [rbp + 0x88]
mov rcx, qword [r12 + 0x20]
mov qword [rbp + 0x88], rdx
movsxd rax, dword [r15 + 8]
mov edx, dword [r15 + 4]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.1800a69e0
mov r13, qword [rsp + 0x48]
mov r15d, eax
mov r11, qword [rsp + 0x58]
mov dword [rsp + 0x54], eax
cmp dword [r13 + 0xc], 0
je 0x1800b9d33
mov rdx, qword [rbp + 0x88]
add qword [rsi + 0x38], rdx
movsxd rax, dword [r13 + 0xc]
test eax, eax
jle 0x1800b9d33
imul rcx, rax, 0x38
add qword [rcx + r11], rdx
test r15d, r15d
jne 0x1800bbc31
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp 0x1800b5b5c
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx], 1
jne 0x1800b9d73
mov rdx, qword [rcx + 0x30]
mov rcx, r12
call fcn.1800be230
jmp 0x1800b873c
mov rcx, qword [rcx + 0x30]
call fcn.1800a6ac0
jmp 0x1800b872d
mov r15, qword [rsp + 0x48]
mov rcx, rsi
mov rdx, r15
call fcn.1800b5520
movsxd rcx, dword [r15 + 4]
lea rdx, [rbp + 0xb0]
mov r8d, dword [r15 + 0xc]
xor r10d, r10d
shl rcx, 5
mov rbx, rax
add rcx, qword [r12 + 0x20]
mov dword [rbp + 0xb0], r10d
mov rcx, qword [rcx + 8]
call fcn.1800a66a0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800bbb8f
mov eax, dword [rbp + 0xb0]
mov qword [rbx], rax
jmp 0x1800b873c
mov rcx, qword [rsp + 0x48]
xor r14d, r14d
inc byte [r12 + 0x70]
mov rbx, qword [r12 + 0x200]
movzx edi, byte [r12 + 0x6e]
test byte [rcx + 4], 1
mov esi, dword [r12 + 0x2e8]
mov qword [rbp - 0x68], r14
je 0x1800b9e16
mov qword [r12 + 0x200], r14
mov byte [r12 + 0x6e], r14b
test byte [rcx + 4], 2
je 0x1800b9e27
mov eax, dword [rcx + 8]
mov dword [r12 + 0x2e8], eax
mov rdx, qword [rcx + 0x10]
lea rax, [rbp - 0x68]
mov rcx, r12
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
call fcn.1800fb090
mov r8, qword [rbp - 0x68]
mov r15d, eax
dec byte [r12 + 0x70]
mov dword [rsp + 0x54], eax
mov qword [r12 + 0x200], rbx
mov byte [r12 + 0x6e], dil
mov dword [r12 + 0x2e8], esi
test r8, r8
jne 0x1800b9e74
test eax, eax
je 0x1800b5f01
mov rsi, qword [rsp + 0x70]
lea rdx, [0x180202c74]
mov rcx, rsi
call fcn.1800ab890
mov rcx, qword [rbp - 0x68]
call fcn.18007d660
mov rbx, qword [rsp + 0x60]
cmp r15d, 7
je 0x1800bc0ee
mov rdi, qword [rsp + 0x48]
mov eax, ntohl
lea r13d, [rax - 0xa]
jmp 0x1800bbba4
mov r15, qword [rsp + 0x48]
mov rcx, qword [r12 + 0x20]
cmp qword [r15 + 0x10], 0
movsxd rbx, dword [r15 + 4]
jne 0x1800b9f0e
mov rax, rbx
shl rax, 5
mov rcx, qword [rax + rcx + 0x18]
call fcn.1800e74b0
and dword [r12 + 0x2c], 0xffffffef
lea r8, [rsi + 0xa8]
movzx r9d, word [r15 + 2]
mov edx, ebx
mov rcx, r12
call fcn.180104a40
or dword [r12 + 0x2c], 1
mov r15d, eax
and dword [rsi + 0xc8], 0xfffffffc
mov dword [rsp + 0x54], eax
jmp 0x1800b9fdb
mov dword [rbp + 0x60], ebx
lea rax, [rsi + 0xa8]
mov qword [rbp + 0x50], r12
xor r14d, r14d
mov qword [rbp + 0x58], rax
mov dword [rbp + 0x68], r14d
shl rbx, 5
mov rcx, qword [rcx + rbx + 8]
call fcn.18009ace0
mov r8, qword [r12 + 0x20]
lea r9, str.sqlite_master
mov dword [rbp + 0x70], eax
lea rdx, str.SELECTFROM__w_._s_WHERE__s_ORDER_BY_rowid
mov rax, qword [r15 + 0x10]
mov rcx, r12
mov qword [rsp + 0x20], rax
mov r8, qword [r8 + rbx]
call fcn.1800803b0
mov rbx, rax
mov rcx, r12
test rax, rax
je 0x1800bbe40
lea r9, [rbp + 0x50]
mov byte [r12 + 0xc5], 1
lea r8, [fcn.1801046e0]
mov dword [rbp + 0x64], r14d
mov rdx, rax
mov dword [rbp + 0x6c], r14d
mov qword [rsp + 0x20], r14
call fcn.1800fb090
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x1800b9fc8
mov r15d, dword [rbp + 0x64]
mov dword [rsp + 0x54], r15d
test r15d, r15d
jne 0x1800b9fc8
cmp dword [rbp + 0x6c], r14d
jne 0x1800b9fc8
mov ecx, 0x18c58
call fcn.18014a2c0
mov r15d, eax
mov dword [rsp + 0x54], eax
mov rdx, rbx
mov rcx, r12
call fcn.18007d740
mov byte [r12 + 0xc5], r14b
test r15d, r15d
je 0x1800b873c
mov rcx, r12
call fcn.1800dcb50
jmp 0x1800b9e91
mov rax, qword [rsp + 0x48]
mov rcx, r12
mov edx, dword [rax + 4]
call fcn.1800da080
jmp 0x1800b872d
mov rax, qword [rsp + 0x48]
mov rcx, r12
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.1800dd1d0
jmp 0x1800b873c
mov rax, qword [rsp + 0x48]
mov rcx, r12
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.1800dc8b0
jmp 0x1800b873c
mov rax, qword [rsp + 0x48]
mov rcx, r12
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.18011a500
jmp 0x1800b873c
mov r15, qword [rsp + 0x48]
mov rdx, qword [r12 + 0x20]
movsxd rcx, dword [r15 + 4]
mov r8, qword [r15 + 0x10]
mov r10d, dword [r15 + 8]
add r8, 4
imul rdi, rcx, 0x38
lea eax, [rcx + 1]
movsxd rcx, eax
add rdi, r11
movsxd rax, dword [r15 + 0xc]
imul rbx, rcx, 0x38
imul r9, rax, 0x38
mov ecx, dword [rdi]
add rbx, r11
movzx eax, word [r15 + 2]
inc ecx
shl rax, 5
add r9, r11
lea r11, [rbp - 0x58]
mov rdx, qword [rax + rdx + 8]
mov qword [rsp + 0x38], r11
lea r11, [rbp + 0xb4]
mov qword [rsp + 0x30], r11
mov dword [rsp + 0x28], ecx
mov rcx, r12
mov dword [rsp + 0x20], r10d
call fcn.1800a7fa0
mov rcx, rbx
mov dword [rsp + 0x54], eax
mov r15d, eax
call fcn.1800aa700
mov eax, dword [rbp + 0xb4]
test eax, eax
je 0x1800ba10e
test r15d, r15d
jne 0x1800bbe4a
dec eax
mov r9b, 1
movsxd rcx, eax
mov r8, 0xffffffffffffffff
sub qword [rdi], rcx
lea rax, [fcn.18007d660]
mov rdx, qword [rbp - 0x58]
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.1800aab00
movzx edx, byte [rsp + 0x40]
mov rcx, rbx
call fcn.1800a99a0
mov rdi, qword [rsp + 0x78]
mov r13, qword [rsp + 0x48]
mov eax, dword [r12 + 0x198]
mov rbx, qword [rsp + 0x60]
test eax, eax
jne 0x1800bc0d0
cmp r14, rbx
jb 0x1800bb748
mov rdx, qword [r12 + 0x210]
test rdx, rdx
je 0x1800bb748
mov eax, dword [r12 + 0x220]
mov rcx, qword [r12 + 0x218]
add rbx, rax
mov qword [rsp + 0x60], rbx
call rdx
test eax, eax
jne 0x1800bbef5
cmp r14, rbx
jae 0x1800ba143
mov rsi, qword [rsp + 0x70]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp 0x1800b5b5c
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rdi, rax, 0x38
add rbx, r11
add rdi, r11
test byte [rbx + 0x14], 0x10
jne 0x1800ba1c6
mov rcx, rbx
call fcn.1800aa8b0
test eax, eax
jne 0x1800bc0e9
mov rdx, qword [rdi]
mov rcx, qword [rbx + 8]
call fcn.18008e5d0
mov r13, qword [rsp + 0x48]
jmp 0x1800b5f0b
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, r11
test byte [rbx + 0x14], 0x10
je 0x1800ba229
mov rcx, qword [rbx + 8]
lea rdx, [rbp + 0xe0]
call fcn.18008ea60
test eax, eax
je 0x1800ba229
mov rax, qword [rsp + 0x48]
mov rdx, qword [rbp + 0xe0]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x58]
call fcn.1800aa7b0
jmp 0x1800ba120
mov rcx, rbx
call fcn.1800aa700
jmp case.0x1800b5a82.9
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
mov esi, dword [rcx + 0x10]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul rdi, rax, 0x38
add rbx, r11
add rdi, r11
test byte [rbx + 0x14], 0x10
jne 0x1800ba26a
mov rcx, rbx
call fcn.1800aa8b0
test eax, eax
jne 0x1800bc0e4
test esi, esi
je 0x1800ba286
mov r8, qword [rdi]
mov edx, esi
mov rcx, qword [rbx + 8]
call fcn.18008eb20
test eax, eax
jne 0x1800bb256
test esi, esi
js 0x1800b5f01
mov rdx, qword [rdi]
mov rcx, qword [rbx + 8]
call fcn.18008e5d0
jmp 0x1800b5f01
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 0xc]
mov r15, qword [rcx + 0x10]
imul r14, rax, 0x38
add r14, r11
cmp word [rcx + 2], 0
je 0x1800ba2e3
mov rax, qword [rsi + 0x108]
mov rcx, qword [r15 + 0x20]
test rax, rax
je 0x1800ba2e3
nop dword [rax + rax]
cmp qword [rax + 0x30], rcx
je 0x1800bba24
mov rax, qword [rax + 8]
test rax, rax
jne 0x1800ba2d0
mov eax, dword [r12 + 0xb0]
cmp dword [rsi + 0x118], eax
jge 0x1800bbe58
test byte [r14 + 0x14], 0x10
jne 0x1800ba413
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 0x1800ba328
add eax, 7
sar eax, 3
lea esi, [rax + rcx*8]
mov rcx, r12
movsxd rdx, esi
call fcn.18007db90
mov rbx, rax
test rax, rax
je 0x1800bc0e4
mov rcx, r14
call fcn.1800aa160
mov rcx, qword [rsp + 0x48]
lea rax, [0x1800ad2f0]
sub rcx, qword [rsp + 0x78]
mov qword [r14 + 0x30], rax
mov dword [r14 + 0x10], esi
mov rsi, qword [rsp + 0x70]
mov word [r14 + 0x14], 0x1010
mov qword [r14 + 8], rbx
mov qword [rbx], rsi
mov dword [rbx + 0x58], edi
mov eax, dword [r15 + 0x10]
mov dword [rbx + 0x5c], eax
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rbx + 0x4c], edx
xor edx, edx
mov rax, qword [rsi + 0x68]
mov qword [rbx + 0x18], rax
mov eax, dword [rsi + 0x24]
mov dword [rbx + 0x54], eax
mov rax, qword [rsi + 0x78]
mov qword [rbx + 0x20], rax
mov eax, dword [rsi + 0x28]
mov dword [rbx + 0x48], eax
mov rax, qword [rsi + 0x88]
mov qword [rbx + 0x10], rax
mov eax, dword [rsi + 0x90]
mov dword [rbx + 0x50], eax
mov rax, qword [r15 + 0x20]
mov qword [rbx + 0x30], rax
movsxd rax, edi
add rax, 2
imul rcx, rax, 0x38
lea rax, [rbx + 0x70]
add rcx, rbx
cmp rax, rcx
je 0x1800ba417
nop dword [rax]
nop word [rax + rax]
mov word [rax + 0x14], dx
mov qword [rax + 0x18], r12
add rax, 0x38
cmp rax, rcx
jne 0x1800ba400
jmp 0x1800ba417
mov rbx, qword [r14 + 8]
inc dword [rsi + 0x118]
mov rax, qword [rsi + 0x108]
mov qword [rbx + 8], rax
mov rax, qword [r12 + 0x38]
mov qword [rbx + 0x38], rax
mov rax, qword [rsi + 0x38]
mov qword [rbx + 0x60], rax
mov rax, qword [rsi]
mov rcx, qword [rax + 0x78]
mov qword [rbx + 0x68], rcx
mov rax, qword [rsi + 0x128]
mov qword [rbx + 0x40], rax
mov qword [rsi + 0x128], rdx
mov qword [rsi + 0x38], rdx
lea rdx, [rbx + 0x70]
mov qword [rsi + 0x68], rdx
mov qword [rsi + 0x108], rbx
movsxd rcx, dword [rbx + 0x58]
mov dword [rsi + 0x24], ecx
movzx eax, word [rbx + 0x5c]
mov dword [rsi + 0x28], eax
mov qword [rsp + 0x58], rdx
imul rcx, rcx, 0x38
add rcx, rdx
mov qword [rsi + 0x78], rcx
movsxd rax, dword [r15 + 0x10]
lea rcx, [rcx + rax*8]
mov qword [rbx + 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.1801db010
mov rdi, qword [r15]
mov r14, qword [rsp + 0x68]
mov qword [rsi + 0x88], rdi
mov eax, dword [r15 + 8]
mov r15d, dword [rsp + 0x54]
mov dword [rsi + 0x90], eax
lea rax, [rdi - 0x18]
mov qword [rsp + 0x48], rax
mov r13, rax
mov qword [rsp + 0x78], rdi
jmp 0x1800ba125
mov rdx, qword [rsp + 0x48]
mov rcx, rsi
call fcn.1800b5520
mov r9, qword [rsi + 0x108]
mov r13, 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 [r13 + 4]
movsxd rcx, r8d
mov r8d, 0x4000
imul rdx, rcx, 0x38
mov rcx, rax
add rdx, qword [r9 + 0x18]
call fcn.1800aaa20
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp 0x1800b5b5c
mov eax, dword [r12 + 0x30]
bt rax, 0x13
mov rax, qword [rsp + 0x48]
mov r13, rax
jae 0x1800ba562
movsxd rax, dword [rax + 8]
add qword [r12 + 0x300], rax
jmp case.0x1800b5a82.89
cmp dword [rax + 4], 0
lea rcx, [0x180000000]
movsxd rax, dword [rax + 8]
je 0x1800ba58d
add qword [r12 + 0x2f8], rax
mov r12, qword [rbp - 0x80]
add r13, 0x18
mov r14, qword [rsp + 0x68]
jmp 0x1800b5a49
add qword [rsi + 0x50], rax
mov r12, qword [rbp - 0x80]
add r13, 0x18
mov r14, qword [rsp + 0x68]
jmp 0x1800b5a49
cmp dword [r13 + 4], 0
je 0x1800ba5cd
cmp qword [r12 + 0x2f8], 0
jne case.0x1800b5a82.89
cmp qword [r12 + 0x300], 0
je 0x1800b6840
jmp case.0x1800b5a82.89
cmp qword [rsi + 0x50], 0
jmp 0x1800ba5b3
mov rcx, qword [rsi + 0x108]
test rcx, rcx
je 0x1800ba60f
mov rax, qword [rcx + 8]
test rax, rax
je 0x1800ba5fc
nop dword [rax]
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x1800ba5f0
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, qword [rcx + 0x18]
jmp 0x1800ba61f
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, r11
mov rcx, rdi
call fcn.1800aa1c0
mov qword [rdi], rax
mov r14d, 0xf244
movzx eax, word [rdi + 0x14]
and ax, r14w
or ax, 4
mov word [rdi + 0x14], ax
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x58]
mov rcx, rbx
call fcn.1800aa1c0
movzx ecx, word [rbx + 0x14]
xor edx, edx
mov r13, qword [rsp + 0x48]
and cx, r14w
mov r11, qword [rsp + 0x58]
or cx, 4
mov r10d, dword [rsp + 0x50]
mov word [rbx + 0x14], cx
mov qword [rbx], rax
cmp qword [rdi], rax
jge 0x1800bb754
movzx r9d, byte [rsp + 0x40]
mov qword [rdi], rax
mov rdi, qword [rsp + 0x78]
jmp case.0x1800b5a82.89
mov rax, qword [rsp + 0x48]
mov r13, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rdx, qword [rcx + r11]
test rdx, rdx
jle 0x1800b5b5c
mov rax, r13
movsxd rax, dword [rax + 0xc]
sub rdx, rax
mov qword [rcx + r11], rdx
jmp 0x1800b683e
mov rcx, qword [rsp + 0x48]
mov rdx, rcx
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
mov rcx, rsi
imul rdi, rax, 0x38
add rbx, r11
add rdi, r11
call fcn.1800b5520
mov rcx, qword [rbx]
mov rsi, rax
mov qword [rbp + 0xd8], rcx
test rcx, rcx
jle 0x1800ba733
mov rdx, qword [rdi]
lea rcx, [rbp + 0xd8]
test rdx, rdx
mov r10d, 0
cmovle rdx, r10
call fcn.180083f10
test eax, eax
jne 0x1800ba733
mov rax, qword [rbp + 0xd8]
mov qword [rsi], rax
jmp 0x1800b5f01
mov qword [rsi], 0xffffffffffffffff
jmp 0x1800b5f01
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r11]
test rax, rax
je 0x1800b6240
mov r13, qword [rsp + 0x48]
jle 0x1800b6840
dec rax
mov qword [rcx + r11], rax
jmp 0x1800b6840
mov rax, qword [rsp + 0x48]
movabs r8, 0x8000000000000000
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r11]
cmp rax, r8
jle 0x1800ba797
dec rax
mov qword [rcx + r11], rax
mov r13, qword [rsp + 0x48]
test rax, rax
je 0x1800b6840
jmp case.0x1800b5a82.89
mov rax, qword [rsp + 0x48]
mov rcx, r12
movzx edi, word [rax + 2]
mov esi, edi
lea rdx, [rdi*8 + 0x68]
call fcn.18007dc20
mov rbx, rax
test rax, rax
je 0x1800bc0e4
xor r14d, r14d
add rsi, 6
mov rdx, r12
mov qword [rax + 0x10], r14
lea rcx, [rax + rsi*8]
lea r8d, [r14 + 1]
mov qword [rax], rcx
call fcn.1800aa6e0
mov rax, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x70]
mov rcx, qword [rax + 0x10]
mov qword [rbx + 8], rcx
mov rcx, rax
sub rcx, qword [rsp + 0x78]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov qword [rbx + 0x18], rsi
sar rdx, 2
mov rax, rdx
mov byte [rbx + 0x29], r14b
shr rax, 0x3f
add rdx, rax
mov dword [rbx + 0x24], r14d
movzx eax, byte [rsp + 0x40]
mov byte [rbx + 0x28], al
mov rax, qword [rsp + 0x48]
mov dword [rbx + 0x20], edx
mov byte [rbx + 0x2a], dil
mov word [rax], 0xf1a3
mov qword [rax + 0x10], rbx
jmp 0x1800ba857
mov rax, qword [rsp + 0x48]
xor r14d, r14d
mov rbx, qword [rax + 0x10]
movsxd rax, dword [rax + 0xc]
mov rdi, qword [rsp + 0x58]
imul r10, rax, 0x38
add r10, rdi
cmp qword [rbx + 0x10], r10
je 0x1800ba8c6
movzx eax, byte [rbx + 0x2a]
mov edx, eax
mov qword [rbx + 0x10], r10
sub rdx, 1
lea r9d, [rax - 1]
js 0x1800ba8c6
mov r12, qword [rsp + 0x48]
lea r8, [rdx + 6]
lea r8, [rbx + r8*8]
nop dword [rax]
nop word [rax + rax]
mov eax, dword [r12 + 8]
lea r8, [r8 - 8]
add eax, r9d
dec r9d
cdqe
imul rcx, rax, 0x38
add rcx, rdi
sub rdx, 1
mov qword [r8 + 8], rcx
jns 0x1800ba8a0
mov r12, qword [rbp - 0x80]
inc dword [r10 + 0x10]
lea r8, [rbx + 0x30]
mov r13, qword [rsp + 0x48]
mov rcx, rbx
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x2a]
cmp dword [r13 + 4], 0
je 0x1800ba8ea
call qword [rax + 0x30]
jmp 0x1800ba8ed
call qword [rax + 0x18]
mov eax, dword [rbx + 0x24]
test eax, eax
je 0x1800bb78d
jle 0x1800ba91f
mov rcx, qword [rbx]
mov dl, 1
call fcn.1800ab020
mov r8, rax
lea rdx, [0x180202c74]
mov rcx, rsi
call fcn.1800ab890
mov r15d, dword [rbx + 0x24]
mov dword [rsp + 0x54], r15d
cmp byte [rbx + 0x29], 0
je 0x1800ba942
movsxd rax, dword [r13 - 0x14]
test eax, eax
je 0x1800ba93e
imul rcx, rax, 0x38
mov edx, 1
add rcx, rdi
call fcn.1800aa7b0
mov byte [rbx + 0x29], 0
mov rcx, qword [rbx]
mov eax, 0x9000
test word [rcx + 0x14], ax
jne 0x1800ba956
cmp dword [rcx + 0x20], 0
je 0x1800ba95b
call fcn.1800aa110
mov rax, qword [rbx]
mov word [rax + 0x14], 1
mov dword [rbx + 0x24], r14d
test r15d, r15d
jne 0x1800bbb8f
movzx r9d, byte [rsp + 0x40]
mov r11, rdi
mov rdi, qword [rsp + 0x78]
mov r10d, dword [rsp + 0x50]
jmp 0x1800b5b5c
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, r11
test eax, eax
je 0x1800ba9d2
imul rdx, rax, 0x38
mov r8, rcx
mov rcx, rbx
add rdx, r11
call fcn.1800aa030
mov r15d, eax
mov dword [rsp + 0x54], eax
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x58]
jmp 0x1800ba9e4
mov rdx, rcx
mov rcx, rbx
call fcn.1800a9f50
mov r15d, eax
mov dword [rsp + 0x54], eax
mov rcx, rbx
test r15d, r15d
jne 0x1800bbe7a
movzx edx, byte [rsp + 0x40]
call fcn.1800a99a0
jmp 0x1800b873c
lea rax, [rbp + 0xf0]
mov qword [rbp + 0xec], 0xffffffffffffffff
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0xec]
mov rax, qword [rsp + 0x48]
xor r14d, r14d
mov rcx, r12
mov dword [rbp + 0xe8], r14d
mov r8d, dword [rax + 8]
mov edx, dword [rax + 4]
call fcn.180148130
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
je 0x1800baa66
cmp eax, 5
jne 0x1800bbb8f
mov eax, 1
mov dword [rsp + 0x54], r14d
mov ecx, eax
mov dword [rbp + 0xe8], eax
mov r15d, r14d
jmp 0x1800baa6c
mov ecx, dword [rbp + 0xe8]
mov rax, qword [rsp + 0x48]
mov r12d, 0x9000
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
movsxd rax, ecx
add rbx, qword [rsp + 0x58]
test word [rbx + 0x14], r12w
je 0x1800baaa0
mov rdx, rax
mov rcx, rbx
call fcn.1800aa770
mov edx, 4
jmp 0x1800baaac
mov edx, 4
mov qword [rbx], rax
mov word [rbx + 0x14], dx
lea rcx, [rbx + 0x38]
movsxd rax, dword [rbp + 0xec]
test word [rbx + 0x4c], r12w
je 0x1800baacd
mov rdx, rax
call fcn.1800aa770
mov edx, 4
jmp 0x1800baad4
mov qword [rcx], rax
mov word [rbx + 0x4c], dx
lea rcx, [rbx + 0x70]
movsxd rax, dword [rbp + 0xf0]
test word [rbx + 0x84], r12w
je 0x1800baaf6
mov rdx, rax
call fcn.1800aa770
jmp 0x1800b873c
mov qword [rcx], rax
mov word [rbx + 0x84], dx
jmp 0x1800b873c
mov r15, qword [rsp + 0x48]
mov rcx, rsi
mov rdx, r15
call fcn.1800b5520
movsxd rdx, dword [r15 + 4]
mov r14, rax
mov rcx, qword [r12 + 0x20]
mov ebx, dword [r15 + 0xc]
shl rdx, 5
mov r15, qword [rdx + rcx + 8]
mov rcx, r15
call fcn.1800a7240
mov rcx, rax
mov rsi, rax
call fcn.180094580
cmp ebx, 0xffffffff
mov rcx, rsi
mov edi, eax
cmove ebx, eax
call fcn.180094590
test eax, eax
mov r13d, 1
mov edx, r13d
mov rcx, rsi
cmove ebx, edi
call fcn.180094100
cmp ebx, 5
jne 0x1800bab99
mov rcx, rax
call fcn.180081500
test eax, eax
je 0x1800bab84
mov rcx, rsi
call fcn.1800945c0
test eax, eax
jne 0x1800bab99
mov ebx, edi
mov r15d, dword [rsp + 0x54]
test r15d, r15d
je 0x1800bac25
jmp 0x1800bac23
cmp ebx, edi
je 0x1800bab86
cmp edi, 5
je 0x1800baba7
cmp ebx, 5
jne 0x1800bab86
cmp byte [r12 + 0x65], 0
je 0x1800bbe96
cmp dword [r12 + 0xdc], r13d
jg 0x1800bbe96
cmp edi, 5
jne 0x1800babe5
mov rdx, r12
mov rcx, rsi
call fcn.180094790
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x1800bac1e
mov edx, ebx
mov rcx, rsi
call fcn.1800943f0
jmp 0x1800babfc
cmp edi, 4
jne 0x1800babf5
lea edx, [rdi - 2]
mov rcx, rsi
call fcn.1800943f0
cmp dword [rsp + 0x54], 0
jne 0x1800bac1e
xor r10d, r10d
mov rcx, r15
mov edx, r10d
cmp ebx, 5
sete dl
inc edx
call fcn.1800a87a0
mov r15d, eax
mov dword [rsp + 0x54], eax
jmp 0x1800bab8b
mov r15d, dword [rsp + 0x54]
mov ebx, edi
mov edx, ebx
mov rcx, rsi
call fcn.1800943f0
mov ecx, eax
mov word [r14 + 0x14], 0x2202
call fcn.1800fc670
mov rcx, rax
mov qword [r14 + 8], rax
call fcn.180081500
movzx edx, byte [rsp + 0x40]
mov rcx, r14
mov dword [r14 + 0x10], eax
mov byte [r14 + 0x16], r13b
call fcn.1800a99a0
mov rsi, qword [rsp + 0x70]
test r15d, r15d
jne 0x1800b7e2b
mov r13, qword [rsp + 0x48]
jmp 0x1800b5f0b
mov r15, qword [rsp + 0x48]
movsxd rax, dword [r15 + 8]
test eax, eax
je 0x1800bac8c
imul r9, rax, 0x38
add r9, r11
jmp 0x1800bac8f
mov r9, rdx
mov r8d, dword [r15 + 4]
lea rcx, [rsi + 0xa8]
mov rdx, r12
call fcn.180120850
jmp 0x1800b872d
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 8]
call fcn.18009d510
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
je 0x1800bb743
cmp eax, 0x65
jne 0x1800bbb8f
mov r13, qword [rsp + 0x48]
xor edx, edx
mov r15d, edx
mov dword [rsp + 0x54], edx
jmp 0x1800b6840
mov rcx, qword [rsp + 0x48]
cmp dword [rcx + 4], 0
jne 0x1800bad09
mov edx, dword [rcx + 8]
mov rcx, r12
call fcn.1800b1120
jmp 0x1800b873c
mov ecx, dword [rcx + 8]
mov eax, dword [rsi + 0xc8]
inc ecx
mov r13, qword [rsp + 0x48]
xor ecx, eax
and ecx, 3
xor ecx, eax
mov dword [rsi + 0xc8], ecx
jmp case.0x1800b5a82.89
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rcx, qword [rax + rcx*8]
mov rcx, qword [rcx + 0x30]
call fcn.18009e480
jmp 0x1800b873c
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rcx, qword [rax + rcx*8]
mov rcx, qword [rcx + 0x30]
call fcn.18009e490
jmp 0x1800b873c
movzx r8d, byte [r13 + 0xc]
test r8b, r8b
jne 0x1800bad88
movabs rax, 0x400000000
test qword [r12 + 0x30], rax
jne case.0x1800b5a82.89
mov r15, qword [rsp + 0x48]
mov rcx, qword [r12 + 0x20]
movsxd rax, dword [r15 + 4]
mov edx, dword [r15 + 8]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.1800a85a0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
je 0x1800b873c
mov rdi, qword [rsp + 0x48]
cmp al, 6
jne 0x1800bbb94
mov r8, qword [rdi + 0x10]
lea rdx, str.database_table_is_locked:__s
mov rcx, rsi
call fcn.1800ab890
jmp 0x1800bbb94
mov rax, qword [rsp + 0x48]
mov rcx, r12
mov rbx, qword [rax + 0x10]
mov rdx, rbx
call fcn.180122ad0
mov dword [rsp + 0x54], eax
mov r15d, eax
test rbx, rbx
je 0x1800bae08
mov rdx, qword [rbx + 0x10]
mov rcx, rsi
call fcn.1800b1380
test r15d, r15d
jmp 0x1800b8736
mov rax, qword [rsp + 0x48]
lea rcx, [rbp + 0x50]
mov qword [rbp + 0x50], rdx
xorps xmm0, xmm0
mov qword [rbp + 0x80], rdx
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x58], xmm0
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
movdqu xmmword [rbp + 0x70], xmm1
mov qword [rbp + 0x68], r12
add rdx, r11
call fcn.1800aaa60
lea rcx, [rbp + 0x50]
mov dword [rsp + 0x54], eax
mov r15d, eax
call fcn.1800b1990
test rax, rax
je 0x1800bae7e
mov r8, rax
lea r9, [rsi + 0xa8]
mov rax, qword [rsp + 0x48]
mov rcx, r12
mov edx, dword [rax + 4]
call fcn.1801223b0
mov r15d, eax
mov dword [rsp + 0x54], eax
lea rcx, [rbp + 0x50]
call fcn.1800aa160
test r15d, r15d
jmp 0x1800b8736
mov rax, qword [rsp + 0x48]
mov rcx, r12
inc dword [r12 + 0xe8]
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.180122880
dec dword [r12 + 0xe8]
jmp 0x1800b872d
mov rax, qword [rsp + 0x48]
mov qword [rbp - 0x68], rdx
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x1800bbed4
mov rdi, qword [rbx]
test rdi, rdi
je 0x1800bbed4
lea rdx, [rbp - 0x68]
mov rcx, rbx
call qword [rdi + 0x30]
mov rdx, rbx
mov rcx, rsi
mov r15d, eax
mov dword [rsp + 0x54], eax
call fcn.1800b1380
test r15d, r15d
jne 0x1800bbb8f
mov rax, qword [rbp - 0x68]
mov r9b, 2
xor r8d, r8d
mov rcx, rsi
mov qword [rax], rbx
mov rax, qword [rsp + 0x48]
mov edx, dword [rax + 4]
call fcn.1800b5140
mov rcx, qword [rbp - 0x68]
test rax, rax
je 0x1800bbecc
mov r13, qword [rsp + 0x48]
mov qword [rax + 0x30], rcx
inc dword [rbx + 8]
jmp 0x1800b5f0b
mov rax, qword [rsp + 0x48]
mov qword [rbp - 0x68], rdx
movsxd rax, dword [rax + 8]
imul rsi, rax, 0x38
add rsi, r11
mov rcx, rsi
call fcn.1800aa700
mov r13, qword [rsp + 0x48]
mov r14, qword [r13 + 0x10]
mov rcx, qword [r14 + 0x50]
test rcx, rcx
je 0x1800bb748
mov rbx, qword [rcx + 0x10]
mov rdi, qword [rbx]
call fcn.180121480
movsxd rax, dword [r13 + 4]
lea r8, [rbp - 0x68]
mov rdx, qword [r12 + 0x20]
mov rcx, rbx
mov r9d, dword [r13 + 0xc]
shl rax, 5
mov qword [rsp + 0x20], r8
mov r8, qword [r14]
mov rdx, qword [rax + rdx]
call qword [rdi + 0xc0]
mov rcx, qword [r14 + 0x50]
mov r15d, eax
mov dword [rsp + 0x54], eax
call fcn.180121490
test r15d, r15d
jne 0x1800bbedf
mov rdx, qword [rbp - 0x68]
test rdx, rdx
je 0x1800bb748
lea rax, [fcn.18007d660]
mov r9b, 1
mov r8, 0xffffffffffffffff
mov qword [rsp + 0x20], rax
mov rcx, rsi
call fcn.1800aab00
jmp 0x1800b5f06
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rdi, qword [rax + rcx*8]
mov ecx, reloc.WS2_32.dll_recv
call fcn.18007d610
mov rbx, rax
test rax, rax
je 0x1800bc0e9
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, rsi
add rdx, qword [rsp + 0x58]
mov qword [rbx + 8], rdx
mov rdx, rax
call fcn.1800b5520
lea r9, [0x1800b2790]
mov rdx, rbx
lea r8, str.ValueList
mov rcx, rax
mov word [rax + 0x14], 1
call fcn.1800aa7d0
mov r13, qword [rsp + 0x48]
jmp 0x1800b5f0b
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 0xc]
movsxd rcx, dword [rcx + 4]
imul rdx, rax, 0x38
mov rax, qword [rsi + 0x78]
mov r13, qword [rax + rcx*8]
lea rbx, [rdx + 0x38]
mov rax, qword [rsp + 0x70]
add rbx, r11
mov r12d, dword [rdx + r11]
mov rsi, qword [r13 + 0x30]
mov r11, qword [rax + 0x70]
movq xmm4, rbx
movsxd rdi, dword [rbx]
xor eax, eax
punpcklqdq xmm4, xmm4
mov r9d, eax
mov r15, qword [rsi]
mov edx, eax
mov r14, qword [r15]
test edi, edi
jle 0x1800bb1db
cmp edi, 8
jb 0x1800bb1db
cmp r8d, 6
jl 0x1800bb1db
movdqa xmm7, xmmword [0x180210d70]
mov eax, edi
and eax, 0x80000007
jge 0x1800bb0e4
dec eax
or eax, 0xfffffff8
inc eax
movdqa xmm5, xmmword [0x180210d50]
lea rcx, [r11 + 0x20]
movdqa xmm6, xmmword [0x180210d60]
mov r10d, edi
sub r10d, eax
mov r8d, 4
nop dword [rax]
nop dword [rax + rax]
movq xmm3, xmm7
movd xmm1, r9d
pshufd xmm1, xmm1, 0
lea eax, [r8 - 2]
paddd xmm1, xmm3
movd xmm2, eax
pshufd xmm2, xmm2, 0
lea eax, [r8 + 2]
paddd xmm2, xmm3
lea rcx, [rcx + 0x40]
movq xmm0, xmm6
add r9d, 8
paddd xmm1, xmm0
add rdx, 8
pmovsxdq xmm0, xmm1
vpmullq xmm1, xmm0, xmm5
paddq xmm1, xmm4
movq xmm0, xmm6
paddd xmm2, xmm0
pmovsxdq xmm0, xmm2
movdqu xmmword [rcx - 0x60], xmm1
vpmullq xmm1, xmm0, xmm5
paddq xmm1, xmm4
movd xmm2, r8d
movdqu xmmword [rcx - 0x50], xmm1
add r8d, 8
pshufd xmm2, xmm2, 0
movq xmm0, xmm6
paddd xmm2, xmm3
paddd xmm2, xmm0
pmovsxdq xmm0, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm3
vpmullq xmm1, xmm0, xmm5
paddq xmm1, xmm4
movq xmm0, xmm6
paddd xmm2, xmm0
movdqu xmmword [rcx - 0x40], xmm1
pmovsxdq xmm0, xmm2
vpmullq xmm1, xmm0, xmm5
paddq xmm1, xmm4
movdqu xmmword [rcx - 0x30], xmm1
cmp r9d, r10d
jl 0x1800bb110
cmp rdx, rdi
jge 0x1800bb209
lea r8d, [r9 + 1]
nop dword [rax]
nop dword [rax + rax]
movsxd rax, r8d
inc r8d
imul rcx, rax, 0x38
add rcx, rbx
mov qword [r11 + rdx*8], rcx
inc rdx
cmp rdx, rdi
jl 0x1800bb1f0
mov rax, qword [rsp + 0x48]
mov r9d, edi
mov edx, r12d
mov qword [rsp + 0x20], r11
mov rcx, rsi
mov r8, qword [rax + 0x10]
call qword [r14 + 0x40]
mov rcx, qword [rsp + 0x70]
mov rdx, r15
mov dword [rsp + 0x54], eax
call fcn.1800b1380
mov r15d, dword [rsp + 0x54]
test r15d, r15d
jne 0x1800bbb86
mov rcx, rsi
call qword [r14 + 0x50]
mov byte [r13 + 2], r15b
test eax, eax
je 0x1800b5f01
mov r13, qword [rsp + 0x48]
xor edx, edx
mov rdi, qword [rsp + 0x78]
jmp 0x1800b6840
mov r15d, dword [rsp + 0x54]
xor edx, edx
mov r13, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x78]
jmp 0x1800b6840
mov r13, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x78]
jmp 0x1800b6840
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rdi, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 0xc]
imul rbx, rax, 0x38
add rbx, r11
cmp byte [rdi + 2], 0
je 0x1800bb2c5
mov rcx, rbx
call fcn.1800aa700
mov r13, qword [rsp + 0x48]
jmp 0x1800b5f0b
mov rax, qword [rdi + 0x30]
xorps xmm0, xmm0
mov rsi, qword [rax]
xor eax, eax
test byte [rcx + 2], 1
mov r14, qword [rsi]
movups xmmword [rbp + 0x50], xmm0
mov qword [rbp + 0x80], rax
lea rax, [rbp - 0x10]
movups xmmword [rbp + 0x70], xmm0
mov qword [rbp + 0x58], rax
movups xmmword [rbp + 0x60], xmm0
mov qword [rbp + 0x50], rbx
mov byte [rbp + 0x78], r9b
mov qword [rbp - 8], rdx
mov dword [rbp - 0xc], 0x1000000
je 0x1800bb322
mov rcx, rbx
call fcn.1800aa700
mov rcx, qword [rsp + 0x48]
xor r10d, r10d
mov dword [rbx], r10d
mov eax, 0x401
jmp 0x1800bb332
movzx eax, word [rbx + 0x14]
mov edx, 0xf241
and ax, dx
or ax, 1
mov word [rbx + 0x14], ax
lea rdx, [rbp + 0x50]
mov r8d, dword [rcx + 8]
mov rcx, qword [rdi + 0x30]
call qword [r14 + 0x58]
mov rdx, rsi
mov rsi, qword [rsp + 0x70]
mov rcx, rsi
mov dword [rsp + 0x54], eax
mov r15d, eax
call fcn.1800b1380
cmp dword [rbp + 0x74], 0
jle 0x1800bb386
mov rcx, rbx
call fcn.1800b1990
mov r8, rax
lea rdx, [0x180202c74]
mov rcx, rsi
call fcn.1800ab890
mov r15d, dword [rbp + 0x74]
mov dword [rsp + 0x54], r15d
movzx edx, byte [rsp + 0x40]
mov rcx, rbx
call fcn.1800a99a0
test r15d, r15d
jne 0x1800bbb8f
mov r13, qword [rsp + 0x48]
jmp 0x1800b5f0b
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rdi, qword [rax + rcx*8]
cmp byte [rdi + 2], 0
jne 0x1800bba5c
mov rcx, qword [rdi + 0x30]
mov rbx, qword [rcx]
mov rsi, qword [rbx]
call qword [rsi + 0x48]
mov rcx, qword [rsp + 0x70]
mov rdx, rbx
mov r15d, eax
mov dword [rsp + 0x54], eax
call fcn.1800b1380
test r15d, r15d
jne 0x1800bbb8a
mov rcx, qword [rdi + 0x30]
call qword [rsi + 0x50]
test eax, eax
jne 0x1800ba11b
mov rdi, qword [rsp + 0x78]
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea rax, [rdi + rcx*8]
mov qword [rsp + 0x48], rax
mov r13, rax
jmp 0x1800ba125
mov rcx, qword [rsp + 0x48]
mov r13d, 1
mov edi, dword [r12 + 0x30]
mov edx, r13d
or qword [r12 + 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, r11
mov rcx, rbx
call fcn.1800a99a0
mov r15d, eax
test eax, eax
jne 0x1800b9064
mov rax, qword [rsi]
mov rcx, rsi
mov rdx, qword [rbx + 8]
call qword [rax + 0x98]
mov dword [rsp + 0x54], eax
mov r15d, eax
test edi, edi
jne 0x1800bb48c
and qword [r12 + 0x30], 0xfffffffffbffffff
mov rdx, rsi
mov rsi, qword [rsp + 0x70]
mov rcx, rsi
call fcn.1800b1380
and dword [rsi + 0xc8], 0xfffffffc
test r15d, r15d
jne 0x1800b7e2b
mov r13, qword [rsp + 0x48]
jmp 0x1800b5f0b
xor r14d, r14d
mov qword [rbp + 0x88], r14
cmp byte [r12 + 0x67], r14b
jne 0x1800bc0e9
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x1800bbed4
mov r10, qword [rbx]
test r10, r10
je 0x1800bbed4
mov r13, qword [rsp + 0x48]
movsxd rdx, dword [r13 + 8]
cmp qword [r10 + 0x68], r14
je 0x1800b5c49
movsxd rax, dword [r13 + 0xc]
movzx edi, byte [r12 + 0x6c]
mov r8, qword [rsi + 0x70]
imul rcx, rax, 0x38
mov eax, r14d
add rcx, r11
test edx, edx
jle 0x1800bb530
nop dword [rax]
mov qword [r8 + rax*8], rcx
add rcx, 0x38
inc rax
cmp rax, rdx
jl 0x1800bb520
movzx eax, byte [r13 + 2]
lea r9, [rbp + 0x88]
mov rcx, rbx
mov byte [r12 + 0x6c], al
call qword [r10 + 0x68]
mov rdx, rbx
mov byte [r12 + 0x6c], dil
mov rcx, rsi
mov dword [rsp + 0x54], eax
mov r15d, eax
call fcn.1800b1380
test r15d, r15d
jne 0x1800bb588
cmp dword [r13 + 4], r14d
je 0x1800bb576
mov rax, qword [rbp + 0x88]
mov qword [r12 + 0x38], rax
inc qword [rsi + 0x38]
test r15d, r15d
jne 0x1800bbb8f
jmp 0x1800b5f0b
cmp r15b, 0x13
jne 0x1800bb576
mov rax, qword [r13 + 0x10]
cmp byte [rax + 0x1c], r14b
je 0x1800bb576
movzx ecx, word [r13 + 2]
cmp ecx, 4
jne 0x1800bbf0a
mov r15d, r14d
mov dword [rsp + 0x54], r14d
jmp 0x1800b5f0b
mov rdx, qword [rsp + 0x48]
mov rcx, rsi
call fcn.1800b5520
mov rcx, qword [r12 + 0x20]
mov rbx, rax
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 4]
shl rdx, 5
mov rcx, qword [rdx + rcx + 8]
call fcn.18009ace0
mov ecx, eax
mov qword [rbx], rcx
jmp 0x1800b873c
mov rdx, qword [rsp + 0x48]
mov rcx, rsi
call fcn.1800b5520
mov r8, qword [rsp + 0x48]
xor r10d, r10d
mov rcx, qword [r12 + 0x20]
mov rdi, rax
mov eax, r10d
movsxd rdx, dword [r8 + 4]
shl rdx, 5
mov rbx, qword [rdx + rcx + 8]
cmp dword [r8 + 0xc], r10d
je 0x1800bb634
mov rcx, rbx
call fcn.18009ace0
mov r13, qword [rsp + 0x48]
cmp eax, dword [r13 + 0xc]
cmovb eax, dword [r13 + 0xc]
jmp 0x1800bb637
mov r13, r8
mov edx, eax
mov rcx, rbx
call fcn.18009c010
mov eax, eax
mov qword [rdi], rax
jmp 0x1800b5f0b
mov rax, qword [rsp + 0x48]
mov rbx, qword [rax + 0x10]
movsxd rax, dword [rax + 0xc]
imul rdi, rax, 0x38
add rdi, r11
cmp qword [rbx], rdi
je 0x1800bb6b6
movzx eax, byte [rbx + 0x2a]
mov edx, eax
mov byte [rbx + 0x28], r9b
sub rdx, 1
mov qword [rbx + 0x18], rsi
mov qword [rbx], rdi
lea r9d, [rax - 1]
js 0x1800bb6b6
mov r12, qword [rsp + 0x48]
lea r8, [rbx + 0x30]
lea r8, [r8 + rdx*8]
nop dword [rax]
mov eax, dword [r12 + 8]
lea r8, [r8 - 8]
add eax, r9d
dec r9d
cdqe
imul rcx, rax, 0x38
add rcx, r11
sub rdx, 1
mov qword [r8 + 8], rcx
jns 0x1800bb690
mov r12, 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 0x1800bb743
jle 0x1800bb70a
mov dl, 1
mov rcx, rdi
call fcn.1800ab020
mov r8, rax
lea rdx, [0x180202c74]
mov rcx, rsi
call fcn.1800ab890
mov r15d, dword [rbx + 0x24]
mov dword [rsp + 0x54], r15d
mov rax, qword [rsp + 0x48]
lea rdx, [rsi + 0x128]
mov r8d, dword [rbx + 0x20]
mov rcx, r12
mov r9d, dword [rax + 4]
call fcn.1800af090
xor edx, edx
mov dword [rbx + 0x24], edx
test r15d, r15d
jne 0x1800bbb8f
mov r13, qword [rsp + 0x48]
jmp 0x1800b665a
mov r15d, dword [rsp + 0x54]
mov r13, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
xor edx, edx
mov rsi, qword [rsp + 0x70]
movzx r9d, byte [rsp + 0x40]
mov rdi, qword [rsp + 0x78]
jmp case.0x1800b5a82.89
mov r13, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov rsi, qword [rsp + 0x70]
movzx r9d, byte [rsp + 0x40]
mov rdi, qword [rsp + 0x78]
jmp case.0x1800b5a82.89
mov r11, rdi
jmp 0x1800bb74d
mov rax, qword [rsp + 0x48]
mov r13, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov eax, 0xf7ff
and word [rcx + r11 + 0x14], ax
jmp case.0x1800b5a82.89
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rdx, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
mov eax, 0x800
add rcx, r11
test word [rdx + r11 + 0x14], ax
je 0x1800b6f14
movzx edx, byte [rdx + r11 + 0x17]
call fcn.1800aa7b0
jmp 0x1800b873c
mov rcx, qword [rsp + 0x48]
mov r13, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rdx, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
add rcx, r11
test byte [rdx + r11 + 0x14], 1
je 0x1800bb820
mov eax, 0xf7ff
and word [rcx + 0x14], ax
jmp 0x1800b5b5c
mov eax, 0x800
or word [rcx + 0x14], ax
movzx eax, byte [rdx + r11]
mov byte [rcx + 0x17], al
jmp 0x1800b5b5c
mov rcx, qword [rsp + 0x48]
mov rdx, rcx
movsxd rax, dword [rcx + 4]
mov rcx, r11
imul rbx, rax, 0x38
add rbx, r11
call fcn.1800b5550
mov ecx, dword [rbx + 0x10]
xor edx, edx
shl ecx, 3
movsxd r8, ecx
mov rcx, qword [rbx + 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
jmp 0x1800b873c
mov rcx, qword [rsp + 0x48]
mov rdx, rcx
movsxd rax, dword [rcx + 4]
mov rcx, r11
imul rbx, rax, 0x38
add rbx, r11
call fcn.1800b5550
mov ecx, dword [rbx + 0x10]
xor edx, edx
mov r13, qword [rsp + 0x48]
shl ecx, 3
movsxd r8, ecx
div r8
mov rax, qword [rbx + 8]
mov rcx, rdx
shr rcx, 3
movsx r8d, byte [rcx + rax]
movzx eax, dl
and al, 7
movzx eax, al
bt r8d, eax
jb 0x1800bb8d5
inc dword [rsi + 0xf4]
jmp 0x1800b683e
inc dword [rsi + 0xf0]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp 0x1800b5b5c
movzx eax, byte [r12 + 0x6e]
test al, 0x41
je 0x1800bb94b
cmp byte [rsi + 0xc5], 0xfe
je 0x1800bb94b
mov r9, qword [r13 + 0x10]
test r9, r9
jne 0x1800bb918
mov r9, qword [rsi + 0xf8]
test r9, r9
je 0x1800bb94b
test al, 0x40
je 0x1800bb9b8
mov rdx, r9
mov rcx, rsi
call fcn.1800b4bf0
mov rcx, qword [r12 + 0x100]
mov rdx, rax
mov rbx, rax
call qword [r12 + 0xf8]
mov rcx, rbx
call fcn.18007d660
xor edx, edx
mov ebx, 1
mov rax, qword [rsp + 0x48]
mov r13, qword [rsp + 0x48]
mov eax, dword [rax + 4]
cmp eax, dword [0x180244478]
jl 0x1800bb9a7
cmp byte [r13], 0xb8
je 0x1800b5c83
cmp dword [rsi + 0x90], 1
mov edx, ebx
jle 0x1800bb9a3
mov eax, 0x18
xor r10d, r10d
mov rcx, qword [rsi + 0x88]
cmp byte [rax + rcx], 0xf
jne 0x1800bb995
mov dword [rax + rcx + 4], r10d
inc edx
add rax, 0x18
cmp edx, dword [rsi + 0x90]
jl 0x1800bb983
xor edx, edx
mov eax, edx
inc eax
mov dword [r13 + 4], eax
inc dword [rsi + 0xec]
jmp 0x1800b6840
cmp dword [r12 + 0xe4], 1
jle 0x1800bba03
mov r8, r9
lea rdx, str.____s
mov rcx, r12
call fcn.1800803b0
mov rdx, qword [r12 + 0x100]
mov r9, rax
mov r8, rsi
mov ecx, 1
mov rbx, rax
call qword [r12 + 0xf8]
mov rdx, rbx
mov rcx, r12
call fcn.18007d900
jmp 0x1800bb949
mov rdx, qword [r12 + 0x100]
mov ebx, 1
mov ecx, ebx
mov r8, rsi
call qword [r12 + 0xf8]
xor edx, edx
jmp 0x1800bb950
mov r15d, dword [rsp + 0x54]
mov r13, qword [rsp + 0x48]
jmp case.0x1800b5a82.89
mov r15d, dword [rsp + 0x54]
mov rsi, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x78]
jmp case.0x1800b5a82.89
mov r13, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov rdi, qword [rsp + 0x78]
jmp 0x1800b5b5c
mov r13, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x78]
jmp case.0x1800b5a82.89
mov r15, qword [rsp + 0x48]
mov ecx, dword [r15 + 4]
mov dword [rsi + 0x34], ecx
movzx eax, byte [r15 + 8]
mov byte [rsi + 0xc4], al
test ecx, ecx
je 0x1800bbb31
movzx eax, word [r15 + 2]
mov rcx, rsi
test ax, ax
je 0x1800bbadd
mov r8d, eax
lea rdx, str._s_constraint_failed
lea rax, [0x180000000]
mov r8, qword [rax + r8*8 + 0x1f8ef0]
call fcn.1800ab890
mov r9, qword [r15 + 0x10]
test r9, r9
je 0x1800bbaed
mov r8, qword [rsi + 0xa8]
lea rdx, str._z:__s
mov rcx, r12
call fcn.1800803b0
mov qword [rsi + 0xa8], rax
jmp 0x1800bbaed
mov r8, qword [r15 + 0x10]
lea rdx, [0x180202c74]
call fcn.1800ab890
mov r9, qword [rsi + 0xf8]
mov rcx, r15
sub rcx, rdi
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov rax, qword [rsi + 0xa8]
mov ecx, dword [r15 + 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.1800806a0
mov rcx, rsi
call fcn.1800aea90
mov rdi, qword [rsp + 0x48]
mov r15d, eax
mov rbx, qword [rsp + 0x60]
mov r13d, 1
mov r14, qword [rsp + 0x68]
cmp eax, 5
jne 0x1800bbb5e
mov dword [rsi + 0x34], eax
jmp 0x1800bbcd4
cmp dword [rsi + 0x34], 0
mov r15d, 0x65
cmovne r15d, r13d
jmp 0x1800bbcd4
mov r15d, shutdown
jmp 0x1800bbb8f
mov ecx, 0x17d05
call fcn.18014a2c0
mov r15d, eax
mov r12, qword [rbp - 0x80]
mov rsi, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x48]
mov r13d, 1
mov eax, ntohl
mov rbx, qword [rsp + 0x60]
mov r14, qword [rsp + 0x68]
cmp byte [r12 + 0x67], 0
je 0x1800bc130
mov r15d, 7
jmp 0x1800bc166
mov r12, qword [rbp - 0x80]
cmp eax, 7
je 0x1800bc0e9
cmp eax, 0x12
je 0x1800bbdae
jmp 0x1800bbb8f
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.1800b58f0
mov rsi, qword [rsp + 0x70]
lea rdx, str.cannot_store__s_value_in__s_column__s._s
mov r8, rax
mov rcx, rsi
mov rax, qword [r15 + rdi*8]
mov qword [rsp + 0x28], rax
mov rax, qword [r14]
mov qword [rsp + 0x20], rax
lea rax, [0x180000000]
mov r9, qword [rax + rbx*8 + 0x246060]
call fcn.1800ab890
mov r15d, 0xc13
mov rdi, r13
jmp 0x1800bbb94
lea rdx, str.cannot_open_savepoint___SQL_statements_in_progress
mov rcx, rsi
call fcn.1800ab890
mov r15d, 5
jmp 0x1800bbb8f
lea rdx, str.cannot_release_savepoint___SQL_statements_in_progress
mov rcx, rsi
call fcn.1800ab890
mov r15d, 5
jmp 0x1800bbb8f
mov byte [r12 + 0x65], 0
jmp 0x1800bbb8f
mov rdi, qword [rsp + 0x48]
mov r15d, 5
mov rcx, rdi
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x78]
imul rcx
lea r13d, [r15 - 4]
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rsi + 0x30], edx
mov byte [r12 + 0x65], 0
mov dword [rsi + 0x34], r15d
jmp 0x1800bbcca
mov r15d, 0x65
mov r13d, 1
mov rdi, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x60]
mov r14, qword [rsp + 0x68]
cmp r14, rbx
jb 0x1800bc247
mov rdx, qword [r12 + 0x210]
test rdx, rdx
je 0x1800bc247
mov eax, dword [r12 + 0x220]
mov rcx, qword [r12 + 0x218]
add rbx, rax
call rdx
test eax, eax
je 0x1800bbcd4
mov rbx, 0xffffffffffffffff
lea eax, [rbx + 0xc]
lea r15d, [rbx + 0xa]
jmp 0x1800bbba9
bt rax, 0x14
mov r15d, 8
mov eax, ntohl
mov rdi, rcx
cmovae r15d, eax
lea r13d, [rax - 0xa]
jmp 0x1800bbb9f
mov rdi, qword [rsp + 0x48]
mov r13d, 1
mov rbx, qword [rsp + 0x60]
mov r14, qword [rsp + 0x68]
cmp r15b, 5
jne 0x1800b6278
mov rcx, rdi
mov dword [rsi + 0x34], r15d
sub rcx, qword [rsp + 0x78]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rsi + 0x30], edx
jmp 0x1800bbcd4
mov r15d, 0x204
jmp 0x1800bbb8f
mov rcx, qword [rbx + 0x10]
call fcn.18009bae0
mov rdi, qword [rsp + 0x48]
jmp 0x1800bbb9a
mov r12, r8
mov rsi, qword [rsp + 0x70]
lea rdx, str.string_or_blob_too_big
mov rcx, rsi
call fcn.1800ab890
mov r15d, reloc.WS2_32.dll_select
jmp 0x1800bbb8f
lea r8, str.index_corruption
mov edx, 0x18a5e
mov ecx, 0x30b
call fcn.18014a290
mov r15d, eax
mov rdi, r13
jmp 0x1800bbb94
lea rax, [0x180210b24]
mov r9d, 0x18b2e
lea r8, str.database_corruption
mov qword [rsp + 0x20], rax
lea rdx, str._s_at_line__d_of___.10s_
mov ecx, ntohl
call fcn.1800806a0
mov rdi, qword [rsp + 0x48]
mov eax, ntohl
mov r15d, eax
lea r13d, [rax - 0xa]
jmp 0x1800bbb9f
mov rdi, qword [rsp + 0x48]
mov r15d, 6
mov byte [rsi + 0xc4], 2
jmp 0x1800bbb9a
call fcn.1800dcb50
jmp 0x1800bc0e9
mov rcx, qword [rbp - 0x58]
call fcn.18007d660
jmp 0x1800bbb8f
mov r13d, 1
lea rdx, str.too_many_levels_of_trigger_recursion
mov rcx, rsi
mov r15d, r13d
call fcn.1800ab890
mov rdi, qword [rsp + 0x48]
jmp 0x1800bbb9a
call fcn.1800b1990
mov r8, rax
lea rdx, [0x180202c74]
mov rcx, rsi
call fcn.1800ab890
jmp 0x1800bbb8f
mov rsi, qword [rsp + 0x70]
lea rax, str.into
cmp ebx, 5
lea r8, str.out_of
lea rdx, str.cannot_change__s_wal_mode_from_within_a_transaction
mov rcx, rsi
cmove r8, rax
mov r15d, r13d
call fcn.1800ab890
mov rdi, qword [rsp + 0x48]
jmp 0x1800bbb9a
call qword [rdi + gethostname]
jmp 0x1800bc0e9
mov r15d, 6
jmp 0x1800bbb8f
mov rcx, qword [rbp - 0x68]
call fcn.18007d660
mov rsi, qword [rsp + 0x70]
mov rdi, r13
jmp 0x1800bbb94
mov rsi, qword [rsp + 0x70]
mov rbx, 0xffffffffffffffff
lea r15d, [rbx + 0xa]
jmp 0x1800b9ea0
movzx eax, cl
cmp ecx, 5
mov ecx, 2
mov rdi, r13
cmove eax, ecx
mov byte [rsi + 0xc4], al
jmp 0x1800bbb94
mov eax, dword [rsi + 0x2c]
mov r15, qword [rsp + 0x48]
add eax, 2
or eax, 1
mov dword [rsi + 0x2c], eax
movsxd rax, dword [r15 + 4]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rsi + 0xa0], rcx
cmp byte [r12 + 0x67], 0
jne 0x1800bc0e9
test byte [r12 + 0x6e], 4
je 0x1800bbf77
mov rdx, qword [r12 + 0x100]
xor r9d, r9d
mov r8, rsi
lea ecx, [r9 + 4]
call qword [r12 + 0xf8]
mov rcx, r15
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, rdi
mov r15d, 0x64
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
inc edx
mov dword [rsi + 0x30], edx
jmp 0x1800bbcbf
mov r15, qword [rsp + 0x48]
movzx eax, byte [r12 + 0x65]
mov ebx, dword [r15 + 4]
mov ecx, dword [r15 + 8]
cmp ebx, eax
je 0x1800bc097
test ecx, ecx
je 0x1800bbfde
mov edx, 0x204
mov rcx, r12
call fcn.180146ca0
mov al, 1
mov r13d, 1
jmp 0x1800bc02b
test ebx, ebx
je 0x1800bc007
cmp dword [r12 + 0xe0], 0
jle 0x1800bc007
lea rdx, str.cannot_commit_transaction___SQL_statements_in_progress
mov rcx, rsi
call fcn.1800ab890
mov r15d, 5
jmp 0x1800bbb8f
mov r13d, 1
mov rcx, rsi
mov edx, r13d
call fcn.1800aea20
mov r15d, eax
test eax, eax
jne 0x1800bbcc5
mov r15, qword [rsp + 0x48]
movzx eax, bl
mov rcx, rsi
mov byte [r12 + 0x65], al
call fcn.1800aea90
cmp eax, 5
jne 0x1800bc07c
mov rcx, r15
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x78]
mov r15d, 5
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov eax, r13d
sub al, bl
mov dword [rsi + 0x30], edx
mov byte [r12 + 0x65], al
mov dword [rsi + 0x34], r15d
jmp 0x1800bbcc5
mov rcx, r12
call fcn.180146440
cmp dword [rsi + 0x34], 0
mov r15d, 0x65
cmovne r15d, r13d
jmp 0x1800bbcc5
test ebx, ebx
jne 0x1800bc0af
lea rdx, str.cannot_start_a_transaction_within_a_transaction
mov rcx, rsi
call fcn.1800ab890
jmp 0x1800b7e22
test ecx, ecx
lea rax, str.cannot_rollback___no_transaction_is_active
lea rdx, str.cannot_commit___no_transaction_is_active
mov rcx, rsi
cmovne rdx, rax
call fcn.1800ab890
jmp 0x1800b7e22
mov rsi, qword [rsp + 0x70]
mov r15d, 9
jmp 0x1800b9ea0
mov r12, qword [rbp - 0x80]
mov rsi, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x60]
mov rcx, r12
call fcn.18007df30
lea rdx, str.out_of_memory
mov rcx, rsi
call fcn.1800ab890
mov r15d, 7
jmp 0x1800b9ea0
mov r15d, dword [rsp + 0x54]
jmp 0x1800bbb86
mov r12, qword [rbp - 0x80]
jmp 0x1800bbb8f
mov rsi, qword [rsp + 0x70]
mov rdi, rbx
jmp 0x1800bbb94
cmp r15d, 0x210a
jne 0x1800bc166
lea rcx, [0x180210b24]
mov r9d, 0x19461
mov qword [rsp + 0x20], rcx
lea r8, str.database_corruption
mov ecx, eax
lea rdx, str._s_at_line__d_of___.10s_
call fcn.1800806a0
mov r15d, recv
cmp qword [rsi + 0xa8], 0
jne 0x1800bc193
cmp r15d, 0xc0a
je 0x1800bc193
mov ecx, r15d
call fcn.180146e10
mov r8, rax
lea rdx, [0x180202c74]
mov rcx, rsi
call fcn.1800ab890
mov edx, r15d
mov dword [rsi + 0x34], r15d
mov rcx, r12
call fcn.180081570
mov r9, qword [rsi + 0xf8]
mov rcx, rdi
sub rcx, qword [rsp + 0x78]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov rax, qword [rsi + 0xa8]
mov ecx, r15d
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.1800806a0
cmp byte [rsi + 0xc7], 2
jne 0x1800bc1f8
mov rcx, rsi
call fcn.1800aea90
cmp r15d, 0xc0a
jne 0x1800bc20b
mov rcx, r12
call fcn.18007df30
jmp 0x1800bc228
cmp r15d, 0xb
jne 0x1800bc228
cmp byte [r12 + 0x65], 0
jne 0x1800bc228
movabs rax, 0x200000000
or qword [r12 + 0x30], rax
movzx eax, byte [rbp - 0x78]
mov r15d, r13d
test al, al
je 0x1800bbcd4
lea edx, [rax - 1]
mov rcx, r12
call fcn.1800dcac0
jmp 0x1800bbcd4
add dword [rsi + 0xe4], r14d
cmp dword [rsi + 0xd0], 0
movaps xmm8, xmmword [rsp + 0x200]
movaps xmm7, xmmword [rsp + 0x210]
movaps xmm6, xmmword [rsp + 0x220]
mov r14, qword [rsp + 0x230]
mov r13, qword [rsp + 0x238]
mov r12, qword [rsp + 0x278]
mov rdi, qword [rsp + 0x270]
mov rbx, qword [rsp + 0x268]
je 0x1800bc2a0
mov rcx, rsi
call fcn.1800ad170
mov eax, r15d
mov rcx, qword [rbp + 0xf8]
xor rcx, rsp
call fcn.18017ae80
add rsp, 0x240
pop r15
pop rsi
pop rbp
ret