Function at 0x140087a00
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 [0x1402d4c40]
xor rax, rsp
mov qword [rbp + 0xd8], rax
mov r8, qword [rcx + 0x88]
xor eax, eax
mov qword [r11 + 0x10], rbx
mov rsi, rcx
mov qword [r11 + 0x18], rdi
mov r15d, eax
mov qword [r11 + 0x20], r12
xor dil, dil
mov r12, qword [rcx]
mov qword [r11 - 0x28], r14
mov r11, qword [rcx + 0x68]
mov byte [rbp - 0x78], dil
xor edi, edi
mov r10d, edi
movzx r9d, byte [r12 + 0x64]
mov r14d, edi
mov byte [rsp + 0x40], r9b
mov qword [rsp + 0x78], rcx
mov qword [rsp + 0x60], r8
mov qword [rsp + 0x48], r8
mov dword [rsp + 0x54], eax
mov qword [rbp - 0x80], r12
mov dword [rsp + 0x50], edi
mov qword [rsp + 0x70], rdi
mov qword [rsp + 0x58], r11
mov dword [rbp - 0x74], edi
cmp dword [rcx + 0xd0], eax
je 0x140087aae
call fcn.14007f300
mov r11, qword [rsp + 0x58]
mov r10d, edi
movzx r9d, byte [rsp + 0x40]
mov r8, qword [rsp + 0x60]
cmp qword [r12 + 0x210], rdi
je 0x140087ad0
mov ecx, dword [r12 + 0x220]
xor edx, edx
mov eax, dword [rsi + 0xe4]
div ecx
sub ecx, edx
mov ebx, ecx
jmp 0x140087ad7
mov rbx, 0xffffffffffffffff
cmp dword [rsi + 0x34], 7
mov edx, 1
mov qword [rsp + 0x238], r13
movaps xmmword [rsp + 0x220], xmm6
movaps xmmword [rsp + 0x210], xmm7
movaps xmmword [rsp + 0x200], xmm8
movaps xmmword [rsp + 0x1f0], xmm9
movaps xmmword [rsp + 0x1e0], xmm10
mov qword [rsp + 0x68], rbx
je 0x14008e263
mov dword [rsi + 0x34], edi
mov qword [rsi + 0x48], rdi
mov eax, dword [r12 + 0x198]
mov dword [r12 + 0x298], edi
test eax, eax
jne 0x14008e24a
movsxd rax, dword [rsi + 0x30]
xorps xmm10, xmm10
movdqa xmm8, xmmword [0x1402a57e0]
movdqa xmm7, xmmword [0x1402a57c0]
movdqa xmm9, xmmword [0x1402a5800]
lea rcx, [rax + rax*2]
lea r13, [r8 + rcx*8]
lea rcx, [0x140000000]
movzx ebx, byte [r13]
inc r14
mov qword [rsp + 0x48], r13
mov qword [rsp + 0x70], r14
cmp ebx, 0xb6
ja case.default.0x140087ba0
movsxd rax, ebx
mov ecx, dword [rcx + rax*4 + 0x8e454]
lea rax, [0x140000000]
add rcx, rax
jmp rcx
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
sub rcx, qword [rsp + 0x60]
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 0x14008d559
movsxd rax, dword [r13 + 4]
imul rax, rax, 0x38
test byte [rax + r11 + 0x14], 4
je case.0x140087ba0.89
mov rax, qword [rax + r11]
lea rcx, [rax + rax*2]
lea r13, [r8 + rcx*8]
jmp case.0x140087ba0.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
je case.0x140087ba0.89
mov r8, qword [rsp + 0x60]
mov edx, 1
mov eax, dword [r13 + 8]
mov rsi, qword [rsp + 0x78]
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, [r8 + rcx*8]
jmp case.0x140087ba0.89
movsxd rax, dword [r13 + 4]
imul rdx, rax, 0x38
mov rax, qword [rdx + r11]
lea rcx, [rax + rax*2]
mov eax, dword [r8 + rcx*8 + 8]
dec eax
mov word [rdx + r11 + 0x14], di
cdqe
lea rcx, [rax + rax*2]
lea r13, [r8 + rcx*8]
jmp 0x1400881c0
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 4]
sub rbx, qword [rsp + 0x60]
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
mov r8, qword [rsp + 0x60]
lea r13, [r8 + rcx*8]
jmp 0x1400881c0
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
je case.0x140087ba0.89
mov rbx, qword [rsi + 0x108]
test rbx, rbx
je 0x14008dba2
cmp dword [r13 + 4], 0
jne 0x14008dba2
mov rax, qword [rbx + 8]
mov rcx, r12
mov rdx, qword [rsi + 0x38]
dec dword [rsi + 0x118]
mov qword [rsi + 0x108], rax
call fcn.140083180
mov rcx, rbx
call fcn.140080000
cmp dword [r13 + 8], 4
jne 0x140087d4d
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
mov eax, dword [rax + rcx*8 + 8]
dec eax
mov r8, qword [rsi + 0x88]
mov r11, qword [rsi + 0x68]
movzx r9d, byte [rsp + 0x40]
cdqe
mov qword [rsp + 0x60], r8
mov qword [rsp + 0x58], r11
lea rcx, [rax + rax*2]
lea r13, [r8 + rcx*8]
mov r10d, dword [rsp + 0x50]
jmp 0x1400881c0
movsxd rax, dword [r13 + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, qword [rsi + 0x68]
test word [rcx + 0x14], ax
je 0x140087da7
call fcn.1400875d0
mov r8, qword [rsp + 0x60]
mov rcx, rax
mov edx, 1
jmp 0x140087dad
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.0x140087ba0.89
movsxd rax, dword [r13 + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [rsi + 0x68]
test word [rdx + 0x14], ax
je 0x140087e0f
mov rcx, rdx
call fcn.1400875d0
mov r8, qword [rsp + 0x60]
mov rdx, rax
mov rax, qword [r13 + 0x10]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov rcx, qword [rax]
mov qword [rdx], rcx
jmp 0x1400881c0
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov word [rdx + 0x14], 4
mov rax, qword [r13 + 0x10]
mov rcx, qword [rax]
mov qword [rdx], rcx
jmp 0x1400881c0
movsxd rax, dword [r13 + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [rsi + 0x68]
test word [rdx + 0x14], ax
je 0x140087e5b
mov rcx, rdx
call fcn.1400875d0
mov r8, qword [rsp + 0x60]
mov rdx, rax
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov word [rdx + 0x14], 8
mov rax, qword [r13 + 0x10]
mov rcx, qword [rax]
mov qword [rdx], rcx
jmp 0x1400881c0
movsxd rax, dword [r13 + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, qword [rsi + 0x68]
test word [rbx + 0x14], ax
je 0x140087ea4
mov rcx, rbx
call fcn.1400875d0
mov rbx, rax
jmp 0x140087eaa
mov word [rbx + 0x14], 4
mov rdx, qword [r13 + 0x10]
test rdx, rdx
jne 0x140087eb7
mov eax, edi
jmp 0x140087ece
mov rax, 0xffffffffffffffff
nop
inc rax
cmp byte [rdx + rax], 0
jne 0x140087ec0
and eax, 0x3fffffff
movzx edi, byte [rsp + 0x40]
mov dword [r13 + 4], eax
cmp dil, 1
je 0x140087f59
xor r14d, r14d
mov r9b, 1
mov r8, 0xffffffffffffffff
mov qword [rsp + 0x20], r14
mov rcx, rbx
call fcn.14007d280
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008dee1
mov edx, edi
mov rcx, rbx
call fcn.14007c1b0
test eax, eax
jne 0x14008e25e
mov eax, 0x2000
mov dword [rbx + 0x20], r14d
or word [rbx + 0x14], ax
mov rax, qword [rsp + 0x48]
cmp byte [rax + 1], 0xfa
jne 0x140087f41
mov rdx, qword [rax + 0x10]
mov rcx, r12
call fcn.140050820
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 0x14008dee1
mov byte [r13], 0x49
jmp 0x140087f73
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 0x140087f95
mov rcx, rdx
call fcn.1400875d0
mov rdx, rax
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
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 0x1400881b3
imul rcx, rax, 0x38
movzx eax, word [r13 + 2]
cmp qword [rcx + r11], rax
jne 0x1400881b3
mov word [rdx + 0x14], 0x2210
jmp 0x1400881b3
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 0x14008800f
call fcn.1400875d0
mov rcx, rax
mov edx, 1
jmp 0x140088015
mov word [rcx + 0x14], 4
cmp dword [rbx + 4], 0
mov esi, edx
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 0x14008d92e
test word [rbx + 0x38], r12w
lea rbx, [rbx + 0x38]
je 0x140088057
lea rcx, [rbx - 0x14]
call fcn.14007c8e0
dec edi
mov word [rbx], si
mov dword [rbx - 4], r14d
test edi, edi
jg 0x140088043
mov r13, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x78]
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
jmp 0x1400881b9
movsxd rax, dword [r13 + 4]
mov ebx, 0xffc1
imul rcx, rax, 0x38
movzx eax, word [rcx + r11 + 0x14]
and ax, bx
or ax, 1
mov word [rcx + r11 + 0x14], ax
jmp case.0x140087ba0.89
movsxd rax, dword [r13 + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, qword [rsi + 0x68]
test word [rbx + 0x14], ax
je 0x1400880cc
mov rcx, rbx
call fcn.1400875d0
mov rbx, rax
jmp 0x1400880d2
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 0x140088100
mov edx, eax
call fcn.14007cf10
mov rcx, rbx
call fcn.14007c640
test eax, eax
jne 0x14008e25e
jmp 0x140088110
mov r8, rax
mov qword [rsp + 0x20], rdi
xor r9d, r9d
call fcn.14007d280
movzx r9d, byte [rsp + 0x40]
mov r13, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov r8, qword [rsp + 0x60]
mov byte [rbx + 0x16], r9b
jmp 0x1400881c0
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.14007d130
test eax, eax
jne 0x14008dee1
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 0x140088180
mov rcx, rbx
call fcn.14007cef0
mov r11, qword [rsp + 0x58]
movups xmm0, xmmword [rdi - 0x38]
mov r13, qword [rsp + 0x48]
mov ecx, 0xafff
movups xmmword [rbx], xmm0
movsd xmm1, qword [rdi - 0x28]
movsd qword [rbx + 0x10], xmm1
movzx eax, word [rbx + 0x14]
and ax, cx
mov ecx, 0x2040
or ax, cx
mov word [rbx + 0x14], ax
mov r10d, dword [rsp + 0x50]
movzx r9d, byte [rsp + 0x40]
mov r8, qword [rsp + 0x60]
xor edi, edi
mov edx, 1
lea rcx, [0x140000000]
mov r12, qword [rbp - 0x80]
add r13, 0x18
mov r14, qword [rsp + 0x70]
jmp 0x140087b6e
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
mov eax, 0x9000
test word [rbx + 0x14], ax
jne 0x140088211
cmp dword [rbx + 0x20], r14d
je 0x14008821e
mov rcx, rbx
call fcn.14007c920
mov edx, 1
movups xmm0, xmmword [rdi]
mov eax, 0x4000
movups xmmword [rbx], xmm0
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rbx + 0x10], xmm1
movups xmm0, xmmword [rdi + 0x20]
movups xmmword [rbx + 0x20], xmm0
movsd xmm1, qword [rdi + 0x30]
movsd qword [rbx + 0x30], xmm1
mov word [rdi + 0x14], dx
mov dword [rdi + 0x20], r14d
test word [rbx + 0x14], ax
je 0x140088266
mov rcx, rbx
call fcn.14007c5b0
test eax, eax
jne 0x14008e259
mov edx, 1
add rdi, 0x38
add rbx, 0x38
sub esi, 1
jne 0x140088200
mov rsi, qword [rsp + 0x78]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
movzx r9d, byte [rsp + 0x40]
mov r8, qword [rsp + 0x60]
mov r13, qword [rsp + 0x48]
xor edi, edi
jmp case.0x140087ba0.89
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
mov r8d, r14d
mov rdx, rdi
mov rcx, rbx
call fcn.14007d1a0
test word [rbx + 0x14], r14w
je 0x1400882e5
mov rcx, rbx
call fcn.14007c5b0
test eax, eax
jne 0x14008e259
movzx eax, word [rbx + 0x14]
bt ax, 0xb
jae 0x140088303
test byte [r13 + 2], 2
je 0x140088303
mov ecx, 0xf7ff
and ax, cx
mov word [rbx + 0x14], ax
mov eax, esi
dec esi
test eax, eax
je 0x14008d933
add rbx, 0x38
add rdi, 0x38
jmp 0x1400882c0
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rdx, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
add rdx, r11
add rcx, r11
mov r8d, 0x4000
call fcn.14007d1a0
mov r13, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
movzx r9d, byte [rsp + 0x40]
mov r8, qword [rsp + 0x60]
jmp 0x1400881c0
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 0x1400883b0
mov rdx, rax
mov rcx, r8
call fcn.14007cf60
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov r8, qword [rsp + 0x60]
mov r13, qword [rsp + 0x48]
jmp 0x1400881c0
mov r13, qword [rsp + 0x48]
mov qword [r8], rax
mov word [r8 + 0x14], 4
mov r8, qword [rsp + 0x60]
jmp case.0x140087ba0.89
xor edx, edx
mov rcx, rsi
call fcn.140080c40
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
je 0x140088344
mov rdi, qword [rsp + 0x48]
mov r13d, 1
mov rbx, qword [rsp + 0x68]
mov r14, qword [rsp + 0x70]
mov eax, listen
jmp 0x14008dcda
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 0x14008845e
mov rcx, rdi
call fcn.14007cef0
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov r15d, dword [rsp + 0x54]
mov r13, qword [rsp + 0x48]
jmp 0x1400881b9
test r15b, 0x12
jne 0x140088491
xor r8d, r8d
movzx edx, r9b
mov rcx, r14
call fcn.14007c6b0
test eax, eax
jne 0x14008e25e
movzx r15d, word [r14 + 0x14]
mov r13d, 0xfffd
and r15w, r13w
mov eax, 0x400
jmp 0x1400884ac
mov eax, 0x400
test ax, r15w
je 0x1400884a6
mov rcx, r14
call fcn.14007c640
jmp 0x140088473
mov r13d, 0xfffd
movzx esi, word [rbx + 0x14]
test sil, 0x12
jne 0x1400884c8
movzx edx, byte [rsp + 0x40]
xor r8d, r8d
mov rcx, rbx
call fcn.14007c6b0
jmp 0x1400884d5
test ax, si
je 0x1400884e5
mov rcx, rbx
call fcn.14007c640
test eax, eax
jne 0x14008e259
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 0x14008ded9
xor eax, eax
mov rcx, rdi
mov r8d, eax
cmp rdi, rbx
sete r8b
add edx, 2
call fcn.14007c1d0
test eax, eax
jne 0x14008e255
movzx eax, word [rdi + 0x14]
mov ecx, 0xf242
and ax, cx
or ax, 2
mov word [rdi + 0x14], ax
cmp rdi, rbx
je 0x140088550
movsxd r8, dword [rbx + 0x10]
mov rdx, qword [rbx + 8]
mov rcx, qword [rdi + 8]
call fcn.1402361f0
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.1402361f0
movzx r9d, byte [rsp + 0x40]
mov word [r14 + 0x14], r15w
cmp r9b, 1
jbe 0x14008857a
and r12, 0xfffffffffffffffe
mov rax, qword [rdi + 8]
mov r15d, dword [rsp + 0x54]
mov r13, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x78]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov byte [r12 + rax], 0
mov rax, qword [rdi + 8]
mov byte [rax + r12 + 1], 0
mov eax, 0x200
or word [rdi + 0x14], ax
mov dword [rdi + 0x10], r12d
mov byte [rdi + 0x16], r9b
jmp 0x1400881b9
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 0x140088630
or cl, bl
test cl, 1
jne 0x1400887c6
and bx, 0x2d
jne 0x140088614
mov rcx, rsi
call fcn.140087520
movzx ebx, ax
movzx eax, word [rdi + 0x14]
and ax, 0x2d
jne 0x140088626
mov rcx, rdi
call fcn.140087520
and al, bl
test al, 4
je 0x14008870a
movzx edx, byte [r13]
mov r8, qword [rdi]
mov rcx, qword [rsi]
mov qword [rbp + 0x80], r8
sub edx, 0x6a
je 0x1400886d2
sub edx, 1
je 0x1400886c1
sub edx, 1
je 0x1400886b0
cmp edx, 1
je 0x140088681
mov edx, 1
test rcx, rcx
je 0x1400887c1
cmp rcx, 0xffffffffffffffff
mov rax, r8
cmove rcx, rdx
cqo
idiv rcx
mov qword [rbp + 0x80], rdx
jmp 0x1400886e5
test rcx, rcx
je 0x1400887bc
cmp rcx, 0xffffffffffffffff
jne 0x14008869f
movabs rax, 0x8000000000000000
cmp r8, rax
je 0x14008870a
mov rax, r8
cqo
idiv rcx
mov qword [rbp + 0x80], rax
jmp 0x1400886e5
mov rdx, rcx
lea rcx, [rbp + 0x80]
call fcn.140056b80
jmp 0x1400886e1
mov rdx, rcx
lea rcx, [rbp + 0x80]
call fcn.140056b10
jmp 0x1400886e1
mov rdx, rcx
lea rcx, [rbp + 0x80]
call fcn.140056ac0
test eax, eax
jne 0x14008870a
mov rax, qword [rbp + 0x80]
mov ecx, 0xf244
mov qword [r14], rax
movzx eax, word [r14 + 0x14]
and ax, cx
or ax, 4
mov word [r14 + 0x14], ax
jmp 0x140088069
mov rcx, rsi
call fcn.14007ca60
mov rcx, rdi
movaps xmm6, xmm0
call fcn.14007ca60
movzx ecx, byte [r13]
sub ecx, 0x6a
je 0x14008878c
sub ecx, 1
je 0x140088786
sub ecx, 1
je 0x140088780
cmp ecx, 1
je 0x140088771
mov rcx, rsi
call fcn.14007c9d0
mov rcx, rdi
mov rbx, rax
call fcn.14007c9d0
mov qword [rbp + 0x80], rax
mov edx, 1
test rbx, rbx
je 0x1400887c1
cmp rbx, 0xffffffffffffffff
xorps xmm0, xmm0
cmove rbx, rdx
cqo
idiv rbx
cvtsi2sd xmm0, rdx
jmp 0x140088790
ucomisd xmm6, xmm10
jp 0x14008877a
je 0x1400887bc
divsd xmm0, xmm6
jmp 0x140088790
mulsd xmm0, xmm6
jmp 0x140088790
subsd xmm0, xmm6
jmp 0x140088790
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 0x140088800
mov edx, 1
mov r8, qword [rsp + 0x60]
mov eax, 0x9000
test word [r14 + 0x14], ax
je 0x1400887df
mov rcx, r14
call fcn.14007c8e0
jmp 0x140088069
mov rsi, qword [rsp + 0x78]
xor edi, edi
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov word [r14 + 0x14], dx
jmp case.0x140087ba0.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 0x140088069
movsxd rax, dword [r13 + 4]
test eax, eax
je case.0x140087ba0.89
imul rcx, rax, 0x38
xor edx, edx
add rcx, r11
call fcn.14007cfa0
jmp 0x140088344
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 0x14008889d
mov eax, 0x9000
test word [rsi + 0x14], ax
je 0x14008888d
mov rcx, rsi
call fcn.14007c8e0
jmp 0x140088069
mov word [rsi + 0x14], dx
xor edi, edi
mov rsi, qword [rsp + 0x78]
jmp case.0x140087ba0.89
call fcn.14007c9d0
mov rcx, rdi
mov rbx, rax
call fcn.14007c9d0
movzx ecx, byte [r13]
mov rdx, rax
cmp cl, 0x66
jne 0x1400888bf
and rbx, rax
jmp 0x140088934
cmp cl, 0x67
jne 0x1400888c9
or rbx, rdx
jmp 0x140088934
test rdx, rdx
je 0x140088934
jns 0x1400888e3
mov eax, Ordinal_211
sub al, cl
movzx ecx, al
cmp rdx, 0xffffffffffffffc0
jle 0x1400888e9
neg rdx
cmp rdx, 0x40
jl 0x140088902
test rbx, rbx
jns 0x1400888fc
cmp cl, 0x68
je 0x1400888fc
mov rbx, 0xffffffffffffffff
jmp 0x140088934
xor eax, eax
mov ebx, eax
jmp 0x140088934
cmp cl, 0x68
mov rcx, rdx
jne 0x140088912
shl rbx, cl
mov r8, rbx
jmp 0x140088931
mov r8, rbx
shr r8, cl
test rbx, rbx
jns 0x140088931
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 0x140088069
movsxd rax, dword [r13 + 4]
imul rbx, rax, 0x38
add rbx, r11
mov rcx, rbx
call fcn.14007c9d0
movzx ecx, word [rbx + 0x14]
mov edx, 0xf244
and cx, dx
mov qword [rbx], rax
or cx, 4
mov word [rbx + 0x14], cx
movsxd rcx, dword [r13 + 8]
add rcx, rax
mov qword [rbx], rcx
jmp 0x140088344
movsxd rax, dword [r13 + 4]
imul rbx, rax, 0x38
add rbx, r11
movzx eax, word [rbx + 0x14]
test al, 4
jne 0x1400889d7
movzx r8d, r9b
mov dl, 0x43
mov rcx, rbx
call fcn.140087460
movzx eax, word [rbx + 0x14]
test al, 4
jne 0x1400889c8
cmp dword [r13 + 8], 0
jne 0x140087c2e
mov r15d, reloc.WS2_32.dll_sendto
jmp 0x14008dcc0
mov r11, qword [rsp + 0x58]
mov edx, 1
mov r8, qword [rsp + 0x60]
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.0x140087ba0.89
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
add rcx, r11
test byte [rcx + 0x14], 0x24
je case.0x140087ba0.89
call fcn.14007cc10
jmp 0x140088344
movsxd rax, dword [r13 + 4]
imul rbx, rax, 0x38
mov eax, 0x400
add rbx, r11
test word [rbx + 0x14], ax
je 0x140088a3f
mov rcx, rbx
call fcn.14007c640
mov r15d, eax
test eax, eax
jne 0x14008dcc0
movzx r8d, byte [rsp + 0x40]
mov rcx, rbx
movzx edx, byte [r13 + 8]
call fcn.14007cd60
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008dcc0
jmp 0x140088344
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 0x140088b48
mov rcx, qword [r14]
mov edx, 1
cmp rcx, qword [r15]
lea rcx, [0x140000000]
mov r15d, dword [rsp + 0x54]
jle 0x140088ae6
xor edi, edi
cmp byte [rbx + rcx + 0x292388], dil
jne 0x140087c38
mov rsi, qword [rsp + 0x78]
mov r10d, edx
mov dword [rsp + 0x50], edx
mov r12, qword [rbp - 0x80]
add r13, 0x18
mov r14, qword [rsp + 0x70]
jmp 0x140087b6e
jge 0x140088b1a
xor edi, edi
cmp byte [rbx + rcx + 0x29237c], dil
jne 0x140087c38
mov rsi, qword [rsp + 0x78]
mov r10d, 0xffffffff
mov dword [rsp + 0x50], r10d
mov r12, qword [rbp - 0x80]
add r13, 0x18
mov r14, qword [rsp + 0x70]
jmp 0x140087b6e
xor edi, edi
cmp byte [rbx + rcx + 0x292382], dil
jne 0x140087c38
mov rsi, qword [rsp + 0x78]
mov r10d, edi
mov dword [rsp + 0x50], edi
mov r12, qword [rbp - 0x80]
add r13, 0x18
mov r14, qword [rsp + 0x70]
jmp 0x140087b6e
movzx eax, di
or ax, si
test al, 1
je 0x140088bb5
movzx eax, word [r13 + 2]
test al, al
jns 0x140088b95
test cl, 1
je 0x140088b7a
mov eax, 0x100
test ax, di
jne 0x140088b7a
xor eax, eax
mov dword [rsp + 0x50], eax
movzx eax, byte [r13]
jmp 0x140088cb4
movzx eax, di
not ax
and eax, 1
lea r10d, [rax*2 - 1]
mov dword [rsp + 0x50], r10d
jmp 0x140088c8a
mov r15d, dword [rsp + 0x54]
xor edi, edi
test al, 0x10
jne 0x140087c38
mov rsi, qword [rsp + 0x78]
mov r10d, edx
mov dword [rsp + 0x50], edx
jmp case.0x140087ba0.89
movzx ecx, byte [r13 + 2]
and cl, 0x47
cmp cl, 0x43
jb 0x140088bfd
test al, 2
je 0x140088c6f
movzx eax, sil
and al, 0x2e
cmp al, 2
jne 0x140088be3
xor edx, edx
mov rcx, r15
call fcn.140087350
movzx edi, word [r14 + 0x14]
movzx eax, dil
and al, 0x2e
cmp al, 2
jne 0x140088c6f
xor edx, edx
mov rcx, r14
call fcn.140087350
jmp 0x140088c6f
cmp cl, 0x42
jne 0x140088c6f
test al, 2
je 0x140088c6f
test sil, 2
jne 0x140088c41
test sil, 0x2c
je 0x140088c41
mov r8b, 1
movzx edx, r9b
mov rcx, r15
call fcn.14007c6b0
xor si, word [r15 + 0x14]
mov ebx, 0xdbf
and si, bx
xor si, word [r15 + 0x14]
cmp r15, r14
jne 0x140088c46
movzx edi, si
or di, 2
jmp 0x140088c46
mov ebx, 0xdbf
test dil, 2
jne 0x140088c6f
test dil, 0x2c
je 0x140088c6f
movzx edx, byte [rsp + 0x40]
mov r8b, 1
mov rcx, r14
call fcn.14007c6b0
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.140082050
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 0x140088cac
lea rcx, [0x140000000]
movzx edx, byte [rax + rcx + 0x29237c]
jmp 0x140088ce5
mov dword [rsp + 0x50], ecx
test ecx, ecx
jne 0x140088cca
mov r10d, dword [rsp + 0x50]
lea rcx, [0x140000000]
movzx edx, byte [rax + rcx + 0x292382]
jmp 0x140088ce5
lea r12, [0x140000000]
mov dword [rsp + 0x50], ecx
movzx edx, byte [rax + r12 + 0x292388]
lea rcx, [0x140000000]
mov word [r14 + 0x14], di
xor edi, edi
mov word [r15 + 0x14], si
mov r15d, dword [rsp + 0x54]
test dl, dl
jne 0x140087c2e
mov rsi, qword [rsp + 0x78]
movzx r9d, byte [rsp + 0x40]
mov r8, qword [rsp + 0x60]
mov edx, 1
mov r12, qword [rbp - 0x80]
add r13, 0x18
mov r14, qword [rsp + 0x70]
jmp 0x140087b6e
test r10d, r10d
je 0x140087c38
jmp case.0x140087ba0.89
mov rax, qword [rsp + 0x48]
test byte [rax + 2], 1
jne 0x140088d43
mov r13, rdi
jmp 0x140088d4b
mov r13, qword [rax - 8]
add r13, 4
mov rcx, qword [rax + 0x10]
xor r14d, r14d
mov r8d, dword [rax + 4]
mov ebx, r14d
mov r9d, dword [rax + 8]
movsxd rax, dword [rax + 0xc]
mov qword [rbp + 0x30], rcx
mov dword [rbp + 0x20], r8d
mov dword [rbp - 0x68], r9d
mov qword [rbp - 0x70], rax
test rax, rax
jle 0x140088282
lea r14, [rcx + 0x20]
nop
test r13, r13
je 0x140088d8c
mov edx, dword [r13 + rbx*4]
jmp 0x140088d8e
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.140082050
mov dword [rsp + 0x50], eax
mov r10d, eax
test eax, eax
jne 0x140088dfc
mov rcx, qword [rbp + 0x30]
inc edi
mov r8d, dword [rbp + 0x20]
inc rbx
mov r9d, dword [rbp - 0x68]
add r14, 8
mov r11, qword [rsp + 0x58]
cmp rbx, qword [rbp - 0x70]
jl 0x140088d80
mov r15d, dword [rsp + 0x54]
mov rsi, qword [rsp + 0x78]
mov r13, qword [rsp + 0x48]
jmp 0x1400881b3
mov rax, qword [rbp + 0x30]
mov rax, qword [rax + 0x18]
test byte [rbx + rax], 2
je 0x140088e21
test byte [r15 + 0x14], 1
jne 0x140088e19
test byte [r12 + 0x14], 1
je 0x140088e21
neg r10d
mov dword [rsp + 0x50], r10d
mov r15d, dword [rsp + 0x54]
test esi, esi
mov rsi, qword [rsp + 0x78]
mov r13, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
je 0x1400881b3
neg r10d
mov dword [rsp + 0x50], r10d
jmp 0x1400881b3
test r10d, r10d
jns 0x140088e64
mov eax, dword [r13 + 4]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r13, [r8 + rcx*8]
jmp case.0x140087ba0.89
jne 0x140088e7b
mov eax, dword [r13 + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r13, [r8 + rcx*8]
jmp case.0x140087ba0.89
mov eax, dword [r13 + 0xc]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r13, [r8 + rcx*8]
jmp case.0x140087ba0.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.14007ca90
movsxd rcx, dword [r12 + 8]
mov edx, r14d
imul rcx, rcx, 0x38
mov ebx, eax
add rcx, qword [rsp + 0x58]
call fcn.14007ca90
lea eax, [rax + rbx*2]
add eax, ebx
cmp byte [r12], 0x2c
movsxd r9, eax
mov rax, r12
lea r12, [0x140000000]
jne 0x140088eeb
movzx r9d, byte [r9 + r12 + 0x295348]
jmp 0x140088ef4
movzx r9d, byte [r9 + r12 + 0x2965d0]
movsxd rax, dword [rax + 0xc]
mov r11, qword [rsp + 0x58]
imul rdx, rax, 0x38
movzx ecx, word [rdx + r11 + 0x14]
cmp r9b, r14b
jne 0x140088f38
mov r13, qword [rsp + 0x48]
mov eax, 0xf241
mov r10d, dword [rsp + 0x50]
and cx, ax
movzx r9d, byte [rsp + 0x40]
or cx, 1
mov r8, qword [rsp + 0x60]
mov word [rdx + r11 + 0x14], cx
jmp 0x1400881c0
mov r13, qword [rsp + 0x48]
mov r10d, dword [rsp + 0x50]
mov r8, qword [rsp + 0x60]
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 0x1400881c0
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 4]
mov edx, dword [rbx + 0xc]
imul rcx, rax, 0x38
add rcx, r11
call fcn.14007ca90
movsxd rdx, dword [rbx + 0x10]
mov r11, qword [rsp + 0x58]
movsxd rcx, eax
movsxd rax, dword [rbx + 8]
xor rdx, rcx
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x140088fb6
call fcn.14007cf60
mov r13, rbx
jmp 0x140088344
mov r10d, dword [rsp + 0x50]
mov r13, rbx
movzx r9d, byte [rsp + 0x40]
mov r8, qword [rsp + 0x60]
mov qword [rcx], rdx
mov word [rcx + 0x14], 4
jmp 0x1400881c0
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 0x140089014
xor edx, edx
call fcn.14007ca90
test eax, eax
mov rdx, rdi
mov rcx, rbx
sete dl
call fcn.14007cfa0
jmp 0x14008833f
mov rcx, rbx
call fcn.14007cef0
jmp 0x14008833f
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
add rdi, r11
mov eax, 0x9000
add rbx, r11
test word [rbx + 0x14], ax
je 0x140089056
mov rcx, rbx
call fcn.14007c8e0
mov r11, qword [rsp + 0x58]
jmp 0x14008905a
mov word [rbx + 0x14], dx
test byte [rdi + 0x14], 1
jne 0x14008d94a
mov rcx, rdi
mov word [rbx + 0x14], 4
call fcn.14007c9d0
mov r13, qword [rsp + 0x48]
not rax
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov qword [rbx], rax
jmp 0x1400881b9
mov r8, qword [rsi + 0x108]
test r8, r8
je 0x1400890ec
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 0x140087c2e
bts eax, edx
mov edx, 1
mov byte [rcx + r9], al
jmp 0x140089100
mov rcx, qword [rsi + 0x88]
mov eax, dword [r13 + 4]
cmp dword [rcx + 4], eax
je 0x14008aafe
mov rax, qword [rsi + 0x88]
movzx r9d, byte [rsp + 0x40]
mov r8, qword [rsp + 0x60]
mov ecx, dword [rax + 4]
mov dword [r13 + 4], ecx
jmp case.0x140087ba0.89
movsxd rax, dword [r13 + 4]
mov edx, dword [r13 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
call fcn.14007ca90
test eax, eax
jne 0x140087c2e
jmp 0x140088344
mov rax, qword [rsp + 0x48]
mov edx, edi
cmp dword [rax + 0xc], 0
movsxd rax, dword [rax + 4]
sete dl
imul rcx, rax, 0x38
add rcx, r11
call fcn.14007ca90
mov r13, qword [rsp + 0x48]
test eax, eax
je 0x140087c2e
jmp 0x140088344
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
jne 0x140087c38
jmp case.0x140087ba0.89
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
test eax, eax
js 0x1400891e9
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 0x1400891e1
mov ecx, dword [rcx + rdx*4 + 0x78]
cmp ecx, 0xc
jb 0x1400891cd
test cl, 1
mov edx, 4
mov eax, 8
cmove dx, ax
jmp 0x14008920e
mov rax, rcx
lea rcx, [0x140000000]
movzx edx, byte [rax + rcx + 0x291768]
jmp 0x140089215
mov ecx, dword [r13 + 0x10]
dec ecx
jmp 0x140089206
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
add rcx, r11
call fcn.140083b10
mov r13, qword [rsp + 0x48]
mov r8, qword [rsp + 0x60]
lea ecx, [rax - 1]
mov edx, 1
shl dx, cl
lea rcx, [0x140000000]
test word [r13 + 2], dx
jne 0x140087c33
mov r11, qword [rsp + 0x58]
mov edx, 1
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov r12, qword [rbp - 0x80]
add r13, 0x18
mov r14, qword [rsp + 0x70]
jmp 0x140087b6e
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
jne 0x14008927e
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
jne 0x14008927e
movsxd rax, dword [r13 + 8]
xor edx, edx
imul rcx, rax, 0x38
add rcx, r11
call fcn.14007cfa0
jmp 0x140088344
movsxd rax, dword [r13 + 8]
imul rcx, rax, 0x38
add rcx, r11
call fcn.14007cef0
jmp 0x140088344
movsxd rax, dword [r13 + 4]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
je 0x140087c38
jmp case.0x140087ba0.89
movsxd rcx, dword [r13 + 4]
mov rax, qword [rsi + 0x78]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je 0x1400881c0
cmp byte [rdx + 2], 0
je 0x1400881c0
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
call fcn.14007cef0
jmp 0x140087c2e
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 + 0x20], r14d
nop dword [rax]
mov eax, dword [rsi + 0x2c]
mov r13, qword [rbx + 0x58]
cmp dword [rbx + 0x20], eax
je 0x140089345
cmp byte [rbx + 2], 0
jne 0x1400893a0
cmp byte [rbx + 3], 0
mov rdi, qword [rbx + 0x30]
je 0x14008933e
mov rdx, qword [rbx + 0x10]
test rdx, rdx
je 0x14008936a
lea eax, [r14 + 1]
mov eax, dword [rdx + rax*4]
test eax, eax
je 0x14008936a
mov rbx, qword [rbx + 0x28]
lea r14d, [rax - 1]
jmp 0x1400892f5
cmp byte [rdi], 0
je 0x140089381
jmp 0x140089352
mov rax, qword [rbx + 0x30]
cmp byte [rax], 0
je 0x140089517
mov rcx, rbx
call fcn.140081550
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
je 0x140089300
jmp 0x14008dcc0
mov rcx, rbx
call fcn.1400814e0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008dcc0
mov rcx, rdi
call fcn.140070e90
lea rsi, [rbx + 0x6c]
mov dword [rbx + 0x68], eax
mov rdx, rsi
mov rcx, rdi
call fcn.140071580
mov rcx, rax
jmp 0x1400893ce
cmp byte [rbx], 3
jne 0x1400894eb
movsxd rax, dword [rbx + 0x24]
test eax, eax
jle 0x1400894eb
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 + 0x78]
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 0x1400893f6
mov eax, 1
jmp 0x140089405
mov rcx, qword [rbx + 0x60]
mov rdx, r13
call fcn.140056950
movzx eax, al
mov rcx, r12
lea rdi, [rbx + 0x4a]
mov dword [rcx], eax
xor ecx, ecx
mov word [rdi], cx
mov eax, dword [r13]
cmp dword [rsi], eax
jae 0x1400894e5
mov qword [rbx + 0x60], rcx
mov dword [rsi], ecx
mov eax, dword [r13]
cmp eax, 0x18003
ja 0x1400895c4
cmp eax, dword [rbx + 0x68]
ja 0x1400895c4
mov rsi, qword [rsp + 0x78]
movzx eax, word [rdi]
cmp eax, r14d
ja 0x140089665
mov eax, dword [r13]
lea r12, [rbx + 0x40]
cmp dword [r12], eax
jae 0x14008960b
mov rax, qword [rbx + 0x60]
mov qword [rbp - 0x68], rax
test rax, rax
jne 0x1400894a8
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.14007d690
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008e28f
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 0x140089520
inc rdi
call fcn.1400815e0
movzx eax, al
jmp 0x140089544
mov rax, qword [rbx + 0x60]
jmp 0x1400894a4
mov r13, qword [rsp + 0x48]
movsxd rax, dword [r13 + 0xc]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x58]
call fcn.14007cef0
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
jmp 0x1400881b9
lea rdi, [rbx + 0x4a]
jmp 0x140089442
lea rdx, [rbp - 0x60]
mov rcx, rdi
call fcn.140056950
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.1400815c0
mov eax, eax
inc r15d
add rsi, rax
movsxd r14, r15d
mov dword [r13 + r14*4], esi
cmp r15d, dword [rbp + 0x20]
ja 0x140089563
cmp rdi, r12
jb 0x1400894c2
jmp 0x140089568
cmp rdi, r12
jb 0x14008959b
cmp rdi, r12
ja 0x1400895a3
mov eax, dword [rbx + 0x68]
cmp rsi, rax
jne 0x1400895a3
sub edi, dword [rbp - 0x68]
cmp qword [rbx + 0x60], 0
mov word [rbx + 0x4a], r15w
mov dword [rbx + 0x40], edi
jne 0x140089590
lea rcx, [rbp - 0x50]
call fcn.14007c970
mov edx, dword [rbp - 0x60]
xor edi, edi
mov r14d, dword [rbp + 0x20]
jmp 0x140089612
mov eax, dword [rbx + 0x68]
cmp rsi, rax
jbe 0x140089575
cmp dword [r13], 0
jne 0x1400895b4
xor eax, eax
mov rdi, r12
mov r15d, eax
jmp 0x140089575
cmp qword [rbx + 0x60], 0
jne 0x1400895c4
lea rcx, [rbp - 0x50]
call fcn.14007c970
mov r8, qword [rsp + 0x60]
mov eax, dword [r8 + 0xc]
test eax, eax
jle 0x14008dcaa
mov rsi, qword [rsp + 0x78]
dec eax
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
movsxd rcx, eax
lea rax, [rcx + rcx*2]
lea r15, [r8 + rax*8]
mov qword [rsp + 0x48], r15
mov r13, qword [rsp + 0x48]
mov r15d, dword [rsp + 0x54]
jmp 0x1400881be
xor edi, edi
mov edx, edi
mov dword [rbp - 0x60], edx
movzx eax, word [rbx + 0x4a]
cmp eax, r14d
ja 0x14008966f
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 0x140089651
mov rdx, qword [rdx + 0x10]
mov r8d, 0x2000
call fcn.14007d1a0
mov r15d, dword [rsp + 0x54]
mov rsi, qword [rsp + 0x78]
jmp 0x14008833f
call fcn.14007cef0
mov r15d, dword [rsp + 0x54]
mov rsi, qword [rsp + 0x78]
jmp 0x14008833f
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 0x14008969c
mov rcx, rdi
call fcn.14007cef0
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 0x140089797
mov eax, r14d
mov esi, dword [r13 + rax*4]
add rsi, qword [rbx + 0x60]
cmp edx, 0xc
jae 0x1400896d4
mov r8, rdi
mov rcx, rsi
call fcn.1400815f0
mov r15d, dword [rsp + 0x54]
jmp 0x140088064
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 0x140089719
mov r12, qword [rbp - 0x80]
cmp ebx, dword [r12 + 0x88]
jg 0x14008dedc
xor r8d, r8d
mov word [rdi + 0x14], 1
mov rcx, rdi
call fcn.14007c1d0
test eax, eax
jne 0x14008e259
jmp 0x140089721
mov rax, qword [rdi + 0x28]
mov qword [rdi + 8], rax
mov rcx, qword [rdi + 8]
mov r8, rbx
mov rdx, rsi
call fcn.1402361f0
mov rax, qword [rdi + 8]
lea rcx, [0x140000000]
mov r15d, dword [rsp + 0x54]
mov edx, 1
mov r13, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x78]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov r8, qword [rsp + 0x60]
mov byte [rbx + rax], 0
mov rax, qword [rdi + 8]
mov byte [rax + rbx + 1], 0
mov eax, dword [rbp - 0x60]
and eax, 1
movzx eax, word [rcx + rax*2 + 0x28fa58]
mov word [rdi + 0x14], ax
xor edi, edi
mov r12, qword [rbp - 0x80]
add r13, 0x18
mov r14, qword [rsp + 0x70]
jmp 0x140087b6e
movzx eax, byte [rsp + 0x40]
mov byte [rdi + 0x16], al
movzx eax, byte [r8 + 2]
mov edx, dword [rbp - 0x60]
and al, 0xc0
je 0x1400897bd
cmp al, 0x80
je 0x1400897cb
cmp edx, 0xc
jb 0x1400897bd
test dl, 1
je 0x1400897cb
cmp al, 0xc0
je 0x1400897cb
mov ecx, edx
call fcn.1400815c0
test eax, eax
jne 0x1400897e4
mov edx, dword [rbp - 0x60]
mov r8, rdi
lea rcx, [0x140291130]
call fcn.1400815f0
mov r15d, dword [rsp + 0x54]
jmp 0x140088064
mov rsi, qword [rsp + 0x78]
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.140087730
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008dcf1
mov r13, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
jmp 0x1400881b9
mov rax, qword [rsp + 0x48]
mov r13, qword [rsp + 0x48]
mov r14, qword [rax + 0x10]
movsxd rax, dword [rax + 4]
imul rsi, rax, 0x38
mov r15, qword [r14 + 8]
xor eax, eax
add rsi, r11
cmp ax, word [r14 + 0x36]
jge 0x14008db91
lea rbx, [r15 + 0xc]
nop word [rax + rax]
movzx eax, word [rbx + 6]
test al, 0x60
je 0x14008988b
test al, 0x20
jne 0x140089937
cmp dword [r13 + 0xc], 0
jne 0x140089933
movzx edx, byte [rbx]
movzx r8d, r9b
mov rcx, rsi
call fcn.140087460
movzx ecx, word [rsi + 0x14]
test cl, 1
jne 0x140089933
mov eax, dword [rbx - 4]
shr eax, 4
and eax, 0xf
sub eax, 2
je 0x14008992a
sub eax, 1
je 0x140089925
sub eax, 1
je 0x140089925
sub eax, 1
je 0x1400898ce
cmp eax, 1
jne 0x140089933
test cl, 2
jmp 0x14008992d
test cl, 4
je 0x140089920
mov rdx, qword [rsi]
movabs rax, 0x800000000000
add rax, rdx
movabs r8, 0xffffffffffff
cmp rax, r8
mov rax, rsi
ja 0x1400898fb
or cx, 0x20
jmp 0x14008990b
xorps xmm0, xmm0
or cx, 8
cvtsi2sd xmm0, rdx
movsd qword [rsi], xmm0
mov edx, reloc.WS2_32.dll_sendto
mov r8d, 0xfffb
and cx, r8w
mov word [rdx + rax], cx
jmp 0x140089933
test cl, 0x28
jmp 0x14008992d
test cl, 4
jmp 0x14008992d
test cl, 0x10
je 0x14008dd09
add rsi, 0x38
movsx eax, word [r14 + 0x36]
inc edi
movzx r9d, byte [rsp + 0x40]
add rbx, 0x18
cmp edi, eax
jl 0x140089870
mov r15d, dword [rsp + 0x54]
jmp 0x140088069
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.140087460
cmp byte [rdi], 0x45
jne 0x1400899d7
movzx ecx, word [rbx + 0x14]
test cl, 4
je 0x1400899d7
mov rdx, qword [rbx]
movabs rax, 0x800000000000
add rax, rdx
movabs r8, 0xffffffffffff
cmp rax, r8
ja 0x1400899bb
mov eax, 0xfffb
and cx, ax
or cx, 0x20
jmp 0x1400899d3
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 0x14008d945
movzx r9d, byte [rsp + 0x40]
add rbx, 0x38
jmp 0x140089971
mov rcx, qword [rsp + 0x48]
mov rsi, rdi
mov r12d, edi
mov r13, rdi
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 + 0x30], r14
mov qword [rbp - 0x70], rcx
test rdi, rdi
je 0x140089a8d
lea rbx, [r15 + 0x14]
mov r15d, 0xfffb
nop word [rax + rax]
movzx edx, byte [rdi]
lea rcx, [rbx - 0x14]
movzx r8d, r9b
call fcn.140087460
cmp byte [rdi], 0x45
jne 0x140089a77
movzx eax, word [rbx]
test al, 4
je 0x140089a77
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 0x140089a50
mov r15, qword [rbp - 0x68]
lea rdi, [r14 + 0x24]
movzx ecx, word [rdi - 0x10]
test cl, 1
je 0x140089ab2
inc r12d
mov eax, 0x400
and cx, ax
neg cx
sbb ebx, ebx
and ebx, 0xa
jmp 0x140089bfd
test cl, 0x24
je 0x140089b97
mov r8, qword [rdi - 0x24]
mov rdx, r8
test r8, r8
jns 0x140089aca
not rdx
inc r12d
cmp rdx, 0x7f
ja 0x140089b01
mov rax, r8
and eax, 1
cmp rax, r8
jne 0x140089af4
mov rax, qword [rsp + 0x78]
cmp byte [rax + 0xc5], 4
jb 0x140089af4
lea ebx, [rdx + 8]
jmp 0x140089bfd
inc rsi
mov ebx, 1
jmp 0x140089bfd
cmp rdx, 0x7fff
ja 0x140089b18
add rsi, 2
mov ebx, 2
jmp 0x140089bfd
cmp rdx, 0x7fffff
ja 0x140089b2f
add rsi, 3
mov ebx, 3
jmp 0x140089bfd
cmp rdx, 0x7fffffff
ja 0x140089b46
add rsi, 4
mov ebx, 4
jmp 0x140089bfd
movabs rax, 0x7fffffffffff
cmp rdx, rax
ja 0x140089b63
add rsi, 6
mov ebx, 5
jmp 0x140089bfd
add rsi, 8
test cl, 0x20
je 0x140089b90
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 0x140089bfd
mov ebx, 6
jmp 0x140089bfd
test cl, 8
je 0x140089baa
inc r12d
mov ebx, 7
add rsi, 8
jmp 0x140089bfd
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 0x140089bed
movsxd rax, dword [rdi - 0x24]
lea ebx, [rbx + rax*2]
test rsi, rsi
je 0x140089be6
lea rcx, [rdi - 0x24]
call fcn.14007c640
test eax, eax
jne 0x14008e255
add r14d, dword [rdi - 0x24]
jmp 0x140089be9
add r13, rax
mov r15, qword [rbp - 0x68]
mov eax, r14d
mov ecx, ebx
add rsi, rax
call fcn.1400569d0
add r12d, eax
mov rax, rdi
mov dword [rax], ebx
lea rax, [rdi - 0x24]
cmp rax, r15
je 0x140089c14
sub rdi, 0x38
jmp 0x140089a91
cmp r12d, 0x7e
jle 0x140089c33
movsxd rcx, r12d
call fcn.1400569d0
add r12d, eax
mov ebx, eax
movsxd rcx, r12d
call fcn.1400569d0
cmp ebx, eax
jge 0x140089c36
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 0x140089c58
mov rax, qword [rsi + 0x28]
mov qword [rsi + 8], rax
jmp 0x140089c7e
mov r8, qword [rbp - 0x80]
movsxd rax, dword [r8 + 0x88]
cmp rcx, rax
jg 0x14008ded9
mov edx, ebx
mov rcx, rsi
call fcn.14007c470
test eax, eax
jne 0x14008e255
mov dword [rsi + 0x10], ebx
mov word [rsi + 0x14], reloc.WS2_32.dll_recv
test r13, r13
je 0x140089c95
mov dword [rsi], r13d
mov word [rsi + 0x14], 0x410
mov rsi, qword [rsi + 8]
lea rbx, [rsi + rdi]
cmp r12d, 0x80
jge 0x140089cae
mov byte [rsi], r12b
inc rsi
jmp 0x140089cbf
movsxd rdx, r12d
mov rcx, rsi
call fcn.140056720
movsxd rcx, eax
add rsi, rcx
mov r14, qword [rbp + 0x30]
lea rdi, [r15 + 0x10]
lea r12, [0x140000000]
nop
mov eax, dword [rdi + 0x14]
cmp eax, 7
ja 0x140089d45
mov byte [rsi], al
inc rsi
test eax, eax
je 0x140089d8c
movzx edx, byte [rax + r12 + 0x2918e0]
mov rcx, qword [rdi - 0x10]
mov eax, edx
sub eax, 1
je 0x140089d3e
sub eax, 1
je 0x140089d37
sub eax, 1
je 0x140089d30
sub eax, 1
je 0x140089d29
cmp eax, 2
je 0x140089d1b
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 0x140089d8c
cmp eax, 0x80
jae 0x140089d5f
mov byte [rsi], al
inc rsi
cmp eax, 0xe
jb 0x140089d8c
movsxd rax, dword [rdi]
test eax, eax
jle 0x140089d8c
jmp 0x140089d77
mov rdx, rax
mov rcx, rsi
call fcn.140056720
movsxd rcx, eax
movsxd rax, dword [rdi]
add rsi, rcx
test eax, eax
je 0x140089d8c
mov rdx, qword [rdi - 8]
mov r8, rax
mov rcx, rbx
call fcn.1402361f0
movsxd rax, dword [rdi]
add rbx, rax
lea rax, [rdi - 0x10]
cmp rax, r14
je 0x14008d929
add rdi, 0x38
jmp 0x140089cd0
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 0x140089dca
mov rcx, rdx
call fcn.140072460
mov qword [rbp + 0xa0], rax
jmp 0x140089def
lea r8, [rbp + 0xa0]
mov qword [rbp + 0xa0], rdi
mov rcx, r12
call fcn.140079980
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008dcc0
mov rdx, r13
mov rcx, rsi
call fcn.140087600
mov rcx, qword [rbp + 0xa0]
mov qword [rax], rcx
jmp 0x14008b94d
mov rax, qword [rsp + 0x48]
mov r13d, dword [rax + 4]
mov rdi, qword [rax + 0x10]
test r13d, r13d
jne 0x140089f01
cmp dword [r12 + 0xe0], r13d
jg 0x14008dd6a
mov rcx, rdi
call fcn.1400541f0
mov r8d, dword [r12 + 0x2f4]
xor edx, edx
add r8d, dword [r12 + 0x2f0]
mov rcx, r12
movsxd rsi, eax
call fcn.1400f4470
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008dcbb
lea rdx, [rsi + 0x21]
mov rcx, r12
call fcn.140050b30
mov rbx, rax
test rax, rax
je 0x140089ed5
lea r9, [rax + 0x20]
mov rdx, rdi
lea ecx, [rsi + 1]
mov qword [rax], r9
movsxd r8, ecx
mov rcx, r9
call fcn.1402361f0
cmp byte [r12 + 0x65], r15b
je 0x140089ea1
mov byte [r12 + 0x65], r15b
mov byte [r12 + 0x6d], 1
jmp 0x140089ea9
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 + 0x78]
cmp byte [rsi + 0xc7], 3
je 0x14008dde6
mov r13, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
jmp 0x1400881b9
mov rbx, qword [r12 + 0x2e0]
xor eax, eax
mov r14d, eax
test rbx, rbx
je 0x140089f2e
mov rcx, qword [rbx]
mov rdx, rdi
call fcn.140054650
test eax, eax
je 0x140089f53
mov rbx, qword [rbx + 0x18]
inc r14d
test rbx, rbx
jne 0x140089f13
mov r8, rdi
lea rdx, str.no_such_savepoint:__s
mov rcx, rsi
call fcn.14007df50
mov r13d, 1
mov r15d, r13d
mov rdi, qword [rsp + 0x48]
jmp 0x14008dccb
cmp dword [r12 + 0xe0], 0
jle 0x140089f68
cmp r13d, 1
je 0x14008dd84
cmp qword [rbx + 0x18], 0
jne 0x140089fcb
cmp byte [r12 + 0x6d], 0
je 0x140089fcb
mov edi, 1
mov dword [rbp + 0x20], edi
cmp r13d, edi
jne 0x140089fd2
mov edx, edi
mov rcx, rsi
call fcn.140080c40
mov r15d, eax
test eax, eax
jne 0x14008ddec
mov rcx, rsi
mov byte [r12 + 0x65], dil
call fcn.140080cb0
cmp eax, 5
je 0x14008dda9
mov r15d, dword [rsi + 0x34]
mov dword [rsp + 0x54], r15d
test r15d, r15d
jne 0x14008dd9e
mov byte [r12 + 0x6d], r15b
jmp 0x14008a0ea
xor ecx, ecx
mov dword [rbp + 0x20], ecx
jmp 0x140089fd4
xor ecx, ecx
mov eax, dword [r12 + 0x2f0]
sub eax, r14d
lea r14d, [rax - 1]
mov rax, qword [rbp - 0x80]
cmp r13d, 2
jne 0x14008a04a
mov r12d, dword [r12 + 0x2c]
mov esi, ecx
and r12d, 1
cmp dword [rax + 0x28], 0
jle 0x14008a04d
mov r15d, r12d
mov rdi, rcx
xor r15d, 1
nop dword [rax + rax]
mov rcx, qword [rax + 0x20]
mov r8d, r15d
mov edx, 0x204
mov rcx, qword [rdi + rcx + 8]
call fcn.1400706d0
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x14008e285
mov rax, qword [rbp - 0x80]
inc esi
add rdi, 0x20
cmp esi, dword [rax + 0x28]
jl 0x14008a010
mov r15d, dword [rsp + 0x54]
xor ecx, ecx
jmp 0x14008a04d
mov r12d, ecx
cmp dword [rax + 0x28], 0
mov esi, ecx
jle 0x14008a092
mov rdi, rcx
nop dword [rax + rax]
mov rcx, qword [rax + 0x20]
mov r8d, r14d
mov edx, r13d
mov rcx, qword [rdi + rcx + 8]
call fcn.1400709c0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008dcb7
mov rax, qword [rbp - 0x80]
inc esi
add rdi, 0x20
cmp esi, dword [rax + 0x28]
jl 0x14008a060
test r12d, r12d
mov r12, qword [rbp - 0x80]
je 0x14008a0d9
mov rcx, qword [r12 + 8]
test rcx, rcx
je 0x14008a0cb
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 0x14008a0b0
mov rcx, r12
call fcn.1400aee60
or dword [r12 + 0x2c], 1
mov rsi, qword [rsp + 0x78]
test r15d, r15d
jne 0x14008dcc0
mov edi, dword [rbp + 0x20]
mov rcx, qword [r12 + 0x2e0]
cmp rcx, rbx
je 0x14008a12c
nop word [rax + rax]
mov rax, qword [rcx + 0x18]
mov rdx, rcx
mov rcx, r12
mov qword [r12 + 0x2e0], rax
call fcn.140050660
dec dword [r12 + 0x2f0]
mov rcx, qword [r12 + 0x2e0]
cmp rcx, rbx
jne 0x14008a100
cmp r13d, 1
jne 0x14008a15b
mov rax, qword [rbx + 0x18]
mov rdx, rbx
mov rcx, r12
mov qword [r12 + 0x2e0], rax
call fcn.140050660
test edi, edi
jne 0x140089eda
dec dword [r12 + 0x2f0]
jmp 0x14008a181
mov rax, qword [rbx + 8]
mov qword [r12 + 0x2f8], rax
mov rax, qword [rbx + 0x10]
mov qword [r12 + 0x300], rax
test edi, edi
je 0x14008a181
cmp r13d, 2
jne 0x140089eda
mov r8d, r14d
mov edx, r13d
mov rcx, r12
call fcn.1400f4470
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008dcc0
jmp 0x140089eda
mov rcx, qword [rsp + 0x48]
mov dword [rbp + 0x20], edi
mov edx, dword [rcx + 8]
test edx, edx
je 0x14008a1ca
mov rax, qword [r12 + 0x30]
movabs r8, 0x200100000
test r8, rax
jne 0x14008de4b
movsxd rbx, dword [rcx + 4]
shl rbx, 5
add rbx, qword [r12 + 0x20]
mov rdi, qword [rbx + 8]
test rdi, rdi
je 0x14008a296
lea r8, [rbp + 0x20]
mov rcx, rdi
call fcn.14006f3c0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008de6d
test byte [rsi + 0xc8], 0x20
mov r13, qword [rsp + 0x48]
je 0x14008a2a2
cmp dword [r13 + 8], eax
je 0x14008a2a2
cmp byte [r12 + 0x65], al
je 0x14008a22d
cmp dword [r12 + 0xdc], 1
jle 0x14008a2a2
mov r8d, dword [rsi + 0x40]
test r8d, r8d
jne 0x14008a252
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.1400f4470
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008a27c
mov edx, dword [rsi + 0x40]
mov rcx, rdi
call fcn.140070950
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 0x14008a299
mov r13, rcx
test r15d, r15d
jne 0x14008dcc0
cmp word [r13 + 2], 0
je 0x14008806e
mov eax, dword [r13 + 0xc]
cmp dword [rbp + 0x20], eax
jne 0x14008a2c8
mov rcx, qword [rbx + 0x18]
mov eax, dword [r13 + 0x10]
cmp dword [rcx + 4], eax
je 0x14008806e
mov rdx, qword [rsi + 0xa8]
mov rcx, r12
call fcn.140050820
lea rdx, str.database_schema_has_changed
mov rcx, r12
call fcn.140050cb0
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 + 0x20]
cmp dword [rcx], eax
je 0x14008a316
mov rcx, r12
call fcn.1400aedd0
mov eax, dword [rsi + 0xc8]
mov r15d, reloc.WS2_32.dll_recvfrom
and eax, 0xffffffed
or eax, 1
mov dword [rsi + 0xc8], eax
jmp 0x14008dcc0
movsxd rax, dword [r13 + 4]
lea r8, [rbp + 0x9c]
mov rcx, qword [r12 + 0x20]
mov edx, dword [r13 + 0xc]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.140079800
movsxd rax, dword [r13 + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, qword [rsi + 0x68]
test word [rcx + 0x14], ax
je 0x14008a383
call fcn.1400875d0
mov rcx, rax
movsxd rax, dword [rbp + 0x9c]
mov qword [rcx], rax
jmp 0x140088344
mov word [rcx + 0x14], 4
movsxd rax, dword [rbp + 0x9c]
mov qword [rcx], rax
jmp 0x140088344
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.140079890
mov r13, qword [rsp + 0x48]
mov r15d, eax
mov dword [rsp + 0x54], eax
mov eax, dword [r13 + 8]
cmp eax, 1
jne 0x14008a3f4
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.1400c36f0
jmp 0x14008a405
cmp eax, 2
jne 0x14008a405
mov rcx, qword [rbx + 0x18]
movzx eax, byte [r13 + 0xc]
mov byte [rcx + 0x70], al
cmp dword [r13 + 4], 1
jne 0x14008a41d
xor edx, edx
mov rcx, r12
call fcn.140083190
and dword [rsi + 0xc8], 0xfffffffc
test r15d, r15d
jne 0x14008dd62
jmp 0x140088344
movsxd rcx, dword [r13 + 4]
mov rax, qword [rsi + 0x78]
mov rdi, qword [rax + rcx*8]
test rdi, rdi
je 0x14008a453
mov eax, dword [r13 + 8]
cmp dword [rdi + 0x44], eax
jne 0x14008a453
mov rcx, qword [rdi + 0x30]
call fcn.14006ba30
jmp 0x14008a564
xor edi, edi
mov eax, dword [rsi + 0xc8]
and al, 3
cmp al, 1
je 0x14008debb
mov rax, qword [rsp + 0x48]
xor ecx, ecx
mov r8, qword [rbp - 0x80]
mov r14d, ecx
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 0x14008a4bc
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 + 0x78]
cmp cl, byte [rax + 0xc5]
jae 0x14008a4be
mov byte [rax + 0xc5], cl
jmp 0x14008a4be
mov esi, ecx
test byte [r8 + 2], 0x10
je 0x14008a4dc
imul rbx, r15, 0x38
add rbx, r11
mov rcx, rbx
call fcn.14007cb80
mov r8, qword [rsp + 0x48]
mov r15d, dword [rbx]
movzx eax, byte [r8 + 1]
cmp al, 0xf8
jne 0x14008a4f0
mov r14, qword [r8 + 0x10]
movzx edi, word [r14 + 8]
jmp 0x14008a4f8
cmp al, 0xfd
jne 0x14008a4f8
mov edi, dword [r8 + 0x10]
mov rbx, qword [rsp + 0x48]
xor r9d, r9d
mov rcx, qword [rsp + 0x78]
mov r8d, edi
mov edx, dword [rbx + 4]
call fcn.140087210
mov rdi, rax
test rax, rax
je 0x14008e255
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.140070bb0
mov r12, qword [rbp - 0x80]
mov r15d, eax
mov rsi, qword [rsp + 0x78]
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.14006bce0
test r15d, r15d
jne 0x14008dcc0
mov r13, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
jmp 0x1400881b9
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.140087210
mov r10, rax
test rax, rax
je 0x14008e25e
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.140070bb0
mov r15d, eax
mov dword [rsp + 0x54], eax
jmp 0x14008833f
mov r15, qword [rsp + 0x48]
movsxd rax, dword [r15 + 0xc]
test eax, eax
jle 0x14008a668
imul rcx, rax, 0x38
mov dword [rcx + r11 + 0x10], edi
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
lea rax, [0x1402885d6]
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 0x14008a6b7
test byte [rbx + 8], 8
jne 0x14008a6b7
movsx eax, word [rbx + 0x48]
cmp dword [r15 + 8], eax
jg 0x14008a6b7
mov edx, dword [rbx + 0x44]
xor r8d, r8d
mov rcx, qword [rbx + 0x10]
mov qword [rbx + 0x18], rdi
mov dword [rbx + 0x20], edi
call fcn.140079230
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008dcc0
mov byte [rbx + 2], 1
jmp 0x14008833f
mov r8d, dword [r15 + 8]
xor r9d, r9d
mov rcx, rsi
call fcn.140087210
mov rbx, rax
test rax, rax
je 0x14008e25e
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.14006d9d0
mov r15d, eax
mov r13d, 1
test eax, eax
jne 0x140089f49
mov rcx, qword [rbx + 0x10]
xor r8d, r8d
mov edx, r13d
call fcn.14006f3c0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008a7b7
mov rax, qword [rsp + 0x48]
mov rcx, qword [rbx + 0x10]
mov r14, qword [rax + 0x10]
mov qword [rbx + 0x38], r14
test r14, r14
je 0x14008a789
movzx r8d, word [rax + 2]
lea rdx, [rbx + 0x44]
or r8d, 2
call fcn.140078ef0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008a783
mov rax, qword [rbx + 0x30]
mov r9, r14
mov edx, dword [rbx + 0x44]
mov r8d, 4
mov rcx, qword [rbx + 0x10]
mov qword [rsp + 0x20], rax
call fcn.140070bb0
mov r15d, eax
mov dword [rsp + 0x54], eax
mov byte [rbx + 4], 0
jmp 0x14008a7b2
mov rax, qword [rbx + 0x30]
xor r9d, r9d
mov r8d, 4
mov qword [rsp + 0x20], rax
mov edx, r13d
mov dword [rbx + 0x44], r13d
call fcn.140070bb0
mov r15d, eax
mov dword [rsp + 0x54], eax
mov byte [rbx + 4], r13b
mov rsi, qword [rsp + 0x78]
mov rax, qword [rsp + 0x48]
xor edi, edi
mov ecx, edi
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 0x14008dec6
mov byte [rbx + 2], 1
jmp 0x14008833f
mov r15, qword [rsp + 0x48]
mov r9b, 1
mov rcx, rsi
mov r8d, dword [r15 + 8]
mov edx, dword [r15 + 4]
call fcn.140087210
test rax, rax
je 0x14008e25e
mov rcx, qword [r15 + 0x10]
mov r8, rax
mov qword [rax + 0x38], rcx
mov rcx, r12
mov edx, dword [r15 + 0xc]
call fcn.14008ff60
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008dcc0
jmp 0x14008833f
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
test rcx, rcx
je 0x140087c2e
jmp 0x1400881c0
mov rax, qword [rsp + 0x48]
mov r9b, 3
mov rcx, rsi
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 4]
call fcn.140087210
test rax, rax
je 0x14008e25e
mov r13, qword [rsp + 0x48]
mov byte [rax + 2], 1
mov ecx, dword [r13 + 8]
mov dword [rax + 0x24], ecx
lea rcx, [0x1402e0a94]
mov qword [rax + 0x30], rcx
mov byte [rax + 4], 1
jmp 0x140088344
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 0x14008a8cd
mov rcx, rsi
call fcn.14007fe90
mov r8, qword [rsp + 0x60]
mov rax, qword [rsp + 0x48]
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], rdi
jmp 0x1400881c0
mov rax, qword [rsi + 0x78]
mov r12d, edi
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], edi
je 0x14008aa23
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 0x14008a943
xor edx, edx
mov rcx, rdi
call fcn.140087350
mov rcx, rdi
call fcn.14007c9d0
movzx ecx, word [rdi + 0x14]
mov r15, rax
mov word [rdi + 0x14], r14w
test cl, 0x24
jne 0x14008a9f1
test cl, 8
jne 0x14008a9cf
test cl, 1
jne 0x14008d3d2
cmp ebx, 0x17
jae 0x14008d3d2
mov rcx, qword [rsi + 0x30]
lea rdx, [rbp + 0x24]
call fcn.140071b30
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008dcb7
xor edi, edi
cmp dword [rbp + 0x24], edi
jne 0x14008ce00
mov r13, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x78]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
test r12d, r12d
je 0x1400881b3
movzx r9d, byte [rsp + 0x40]
add r13, 0x18
mov r8, qword [rsp + 0x60]
jmp 0x1400881c0
movsd xmm1, qword [rdi]
mov rcx, r15
call fcn.140081fc0
test eax, eax
jle 0x14008a9e8
test bl, 1
jne 0x14008a9f1
dec ebx
jmp 0x14008a9f1
jns 0x14008a9f1
test bl, 1
je 0x14008a9f1
inc ebx
mov rcx, qword [rsi + 0x30]
lea rdi, [rsi + 0x30]
lea r9, [rbp + 0x24]
xor r8d, r8d
mov rdx, r15
call fcn.140071b50
mov qword [rsi + 0x50], r15
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x14008dcb7
xor r13d, r13d
jmp 0x14008aaa5
mov rax, qword [rsi + 0x30]
lea rdi, [rsi + 0x30]
mov r13d, 0
lea r8, [rbp + 0x24]
mov ecx, 0xffffffff
mov r12d, r13d
movzx r14d, byte [rax + 3]
mov rax, qword [rsi + 0x38]
and r14b, 2
mov qword [rbp + 0x38], rax
movzx eax, word [r15 + 0x10]
setne r12b
mov word [rbp + 0x54], ax
lea eax, [rbx - 1]
test al, 1
mov byte [rbp + 0x5a], r13b
mov eax, edx
lea rdx, [rbp + 0x38]
cmovne eax, ecx
mov byte [rbp + 0x56], al
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbp + 0x40], rcx
mov rcx, qword [rdi]
call fcn.140071dd0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008dcb7
test r14b, r14b
je 0x14008aaa5
cmp byte [rbp + 0x5a], r13b
je 0x14008a993
mov eax, dword [rbp + 0x24]
cmp ebx, 0x17
jl 0x14008ab08
test eax, eax
js 0x14008aac2
jne 0x14008aab8
cmp ebx, 0x18
je 0x14008aac2
xor edi, edi
mov dword [rbp + 0x24], edi
jmp 0x14008a99e
mov dword [rbp + 0x24], r13d
xor edx, edx
mov rcx, qword [rdi]
call fcn.1400726c0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
je 0x14008a993
cmp eax, 0x65
jne 0x14008dcb7
mov edx, 1
mov dword [rbp + 0x24], edx
mov r13, qword [rsp + 0x48]
xor edi, edi
mov dword [rsp + 0x54], edi
mov r15d, edi
mov r8, qword [rsp + 0x60]
jmp 0x140087c38
test eax, eax
jg 0x14008ab23
jne 0x14008ab13
cmp ebx, 0x15
je 0x14008ab23
mov rcx, qword [rdi]
call fcn.140072450
mov dword [rbp + 0x24], eax
jmp 0x14008a993
mov dword [rbp + 0x24], r13d
xor edx, edx
mov rcx, qword [rdi]
call fcn.140072890
jmp 0x14008aad0
mov rax, qword [rsp + 0x48]
mov r13, qword [rsp + 0x48]
movsxd rcx, dword [rax + 0x1c]
mov rax, qword [rsi + 0x78]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x30]
cmp byte [rax], 0
jne case.0x140087ba0.89
mov rax, qword [rbx + 0x38]
mov rcx, r13
mov qword [rbp + 0x38], rax
mov byte [rbp + 0x56], 0
movzx eax, word [rcx + 0x28]
mov edi, dword [rcx + 4]
mov word [rbp + 0x54], ax
movsxd rax, dword [rcx + 0x24]
imul rcx, rax, 0x38
add rcx, r11
xor r14d, r14d
mov qword [rbp + 0x40], rcx
mov dword [rbp + 0x88], r14d
nop dword [rax]
lea r9, [rbp + 0x88]
mov rdx, rbx
lea r8, [rbp + 0x38]
mov rcx, r12
call fcn.140083050
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008dd62
mov eax, dword [rbp + 0x88]
test eax, eax
jle 0x14008abc8
cmp word [r13 + 2], r14w
je 0x14008ac09
test eax, eax
jns 0x14008d3dc
test edi, edi
jle 0x14008d938
mov rcx, qword [rbx + 0x30]
xor edx, edx
dec edi
mov dword [rbx + 0x20], r14d
call fcn.1400726c0
mov r15d, eax
test eax, eax
je 0x14008ab90
cmp eax, 0x65
jne 0x14008dd62
xor edi, edi
mov r15d, edi
mov dword [rsp + 0x54], edi
add r13, 0x18
jmp 0x140087c2e
xor edi, edi
add r13, 0x18
jmp 0x140087c2e
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 0x14008ac43
mov word [rdx + 0xc], ax
mov r13, qword [rsp + 0x48]
jmp 0x1400881c0
mov rax, qword [rsp + 0x48]
mov r13, qword [rsp + 0x48]
mov eax, dword [rax + 0xc]
cmp ecx, eax
lea rcx, [0x140000000]
jle 0x140088d0e
mov word [rdx + 0xc], ax
mov edx, 1
mov r12, qword [rbp - 0x80]
add r13, 0x18
mov r14, qword [rsp + 0x70]
jmp 0x140087b6e
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.0x140087ba0.9
cmp byte [rdx + 2], 0
je 0x14008ac39
jmp case.0x140087ba0.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.0x140087ba0.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 + 0x54], ax
mov qword [rbp + 0x40], rcx
test ax, ax
je 0x14008ad1a
mov rax, qword [rbx + 0x38]
lea rsi, [rbx + 0x24]
mov qword [rbp + 0x38], rax
lea rdx, [rbp + 0x38]
mov byte [rbp + 0x56], 0
mov r8, rsi
mov rcx, qword [rbx + 0x30]
call fcn.140071dd0
mov r15d, eax
mov dword [rsp + 0x54], eax
jmp 0x14008ad89
mov eax, 0x400
test word [rcx + 0x14], ax
je 0x14008ad32
call fcn.14007c640
test eax, eax
jne 0x14008e25e
mov rcx, qword [rbx + 0x38]
call fcn.140081860
mov rdi, rax
test rax, rax
je 0x14008e25e
mov rdx, qword [rbp + 0x40]
mov r9, rax
mov rcx, qword [rbx + 0x38]
mov r8, qword [rdx + 8]
mov edx, dword [rdx + 0x10]
call fcn.1400818c0
mov byte [rdi + 0x1e], 0
lea rsi, [rbx + 0x24]
mov rcx, qword [rbx + 0x30]
mov r8, rsi
mov rdx, rdi
call fcn.140071dd0
mov rdx, rdi
mov dword [rsp + 0x54], eax
mov rcx, r12
mov r15d, eax
call fcn.140050660
xor edi, edi
test r15d, r15d
jne 0x14008dcbb
mov ecx, dword [rsi]
test ecx, ecx
mov byte [rbx + 3], r15b
setne al
mov dword [rbx + 0x20], edi
mov byte [rbx + 2], al
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax]
cmp al, 0x1d
jne 0x14008adc6
mov r13, qword [rsp + 0x48]
test ecx, ecx
je 0x140087c2e
mov rsi, qword [rsp + 0x78]
jmp 0x140088344
test ecx, ecx
jne 0x14008ce00
cmp al, 0x1b
jne 0x14008ae0f
movzx edx, word [rbp + 0x54]
mov rcx, rdi
test rdx, rdx
je 0x14008d92e
mov rax, qword [rbp + 0x40]
add rax, 0x14
nop word [rax + rax]
test byte [rax], 1
jne 0x14008ce00
inc rcx
add rax, 0x38
cmp rcx, rdx
jl 0x14008adf0
mov rsi, qword [rsp + 0x78]
jmp 0x14008833f
mov r13, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x78]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
cmp byte [r13], 0x1a
jne 0x1400881b3
movzx eax, word [r13 + 0x10]
movzx r9d, byte [rsp + 0x40]
mov r8, qword [rsp + 0x60]
mov word [rbx + 0xc], ax
jmp 0x1400881c0
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, r11
test byte [rcx + 0x14], 0x24
jne case.0x140087ba0.31
movups xmm0, xmmword [rcx]
movzx r8d, r9b
mov dl, 0x43
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rbp + 0x38], xmm0
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rbp + 0x48], xmm1
movsd xmm1, qword [rcx + 0x30]
lea rcx, [rbp + 0x38]
movups xmmword [rbp + 0x58], xmm0
movsd qword [rbp + 0x68], xmm1
call fcn.140087460
test byte [rbp + 0x4c], 4
je 0x14008ce00
mov rdi, qword [rbp + 0x38]
jmp 0x14008aeae
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 + 0x78]
xor r8d, r8d
mov rdx, rdi
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rbx, qword [rax + rcx*8]
xor eax, eax
mov rcx, qword [rbx + 0x30]
mov dword [rbp + 0x78], eax
call fcn.140071b50
mov r13, qword [rsp + 0x48]
mov r15d, eax
mov qword [rbx + 0x50], rdi
xor edi, edi
mov dword [rbx + 0x20], edi
mov word [rbx + 2], 0
mov dword [rsp + 0x54], eax
mov eax, dword [rbp + 0x78]
mov dword [rbx + 0x24], eax
cmp dword [rbp + 0x78], edi
je 0x14008af18
cmp dword [r13 + 8], edi
jne 0x140087c2e
mov ecx, 0x18264
call fcn.14011b5b0
mov r15d, eax
mov dword [rsp + 0x54], eax
test r15d, r15d
jne 0x14008dcc0
jmp 0x140088344
mov rbx, qword [rsp + 0x48]
mov rcx, rsi
mov rdx, rbx
call fcn.140087600
mov rcx, qword [rsi + 0x78]
mov r13, rbx
movsxd rdx, dword [rbx + 4]
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 0x140088344
mov rbx, qword [rsp + 0x48]
mov rcx, rsi
mov rdx, rbx
mov qword [rbp - 0x68], rdi
mov dword [rbp + 0x20], edi
call fcn.140087600
mov r8, qword [rsp + 0x78]
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 0x14008affa
mov rcx, qword [rdi + 0x30]
lea rdx, [rbp + 0x20]
call fcn.140071b30
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008e2a5
cmp dword [rbp + 0x20], eax
je 0x14008afc4
mov r8, qword [rsp + 0x78]
mov r13d, 1
mov qword [rbp - 0x68], r13
jmp 0x14008b000
mov rcx, qword [rdi + 0x30]
call fcn.140070e50
mov r8, qword [rsp + 0x78]
movabs r14, 0x7fffffffffffffff
mov qword [rbp - 0x68], rax
mov r13d, 1
cmp rax, r14
jl 0x14008aff1
or dword [rdi + 8], 2
jmp 0x14008b00a
inc rax
mov qword [rbp - 0x68], rax
jmp 0x14008b00a
mov r13d, 1
movabs r14, 0x7fffffffffffffff
movsxd rax, dword [rbx + 0xc]
test eax, eax
je 0x14008b094
mov rcx, qword [r8 + 0x108]
test rcx, rcx
je 0x14008b04a
mov rax, qword [rcx + 8]
test rax, rax
je 0x14008b03c
nop dword [rax + rax]
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x14008b030
movsxd rax, dword [rbx + 0xc]
imul rbx, rax, 0x38
add rbx, qword [rcx + 0x18]
jmp 0x14008b053
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x58]
mov rcx, rbx
call fcn.14007c9d0
movzx ecx, word [rbx + 0x14]
mov edx, 0xf244
and cx, dx
mov qword [rbx], rax
or cx, 4
mov word [rbx + 0x14], cx
cmp rax, r14
je 0x14008b0ed
test byte [rdi + 8], 2
jne 0x14008b0ed
lea rcx, [rax + 1]
mov rax, qword [rbp - 0x68]
cmp rax, rcx
jge 0x14008b091
mov rax, rcx
mov qword [rbp - 0x68], rcx
mov qword [rbx], rax
test byte [rdi + 8], 2
je 0x14008b102
xor eax, eax
mov ebx, eax
nop
lea rdx, [rbp - 0x68]
mov ecx, 8
call fcn.1400539a0
mov rdx, qword [rbp - 0x68]
lea r9, [rbp + 0x20]
movabs rax, 0x3fffffffffffffff
xor r8d, r8d
and rdx, rax
inc rdx
mov qword [rbp - 0x68], rdx
mov rcx, qword [rdi + 0x30]
call fcn.140071b50
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008b0f3
cmp dword [rbp + 0x20], eax
jne 0x14008b102
inc ebx
cmp ebx, 0x64
jl 0x14008b0a0
mov r15d, reloc.WS2_32.dll_listen
mov rdi, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x78]
jmp 0x14008dccb
xor eax, eax
mov byte [rdi + 3], 0
mov dword [rdi + 0x20], eax
mov rax, qword [rbp - 0x68]
mov qword [rsi], rax
jmp 0x140088064
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 + 0x40], r8
jne 0x14008b170
cmp qword [r12 + 0x140], 0
je 0x14008b170
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 0x14008b176
xor r14d, r14d
mov esi, r14d
test byte [r15 + 2], 1
je 0x14008b192
mov rax, qword [rsp + 0x78]
inc qword [rax + 0x38]
test byte [r15 + 2], 0x20
je 0x14008b192
mov qword [r12 + 0x38], r8
mov rax, qword [rdx + 8]
movzx r8d, word [r15 + 2]
mov qword [rbp + 0x48], rax
mov eax, dword [rdx + 0x10]
mov dword [rbp + 0x5c], eax
test r8b, 0x10
je 0x14008b1b1
mov r9d, dword [rbx + 0x24]
jmp 0x14008b1b4
mov r9d, r14d
mov eax, 0x400
test word [rdx + 0x14], ax
je 0x14008b1c6
mov eax, dword [rdx]
mov dword [rbp + 0x60], eax
jmp 0x14008b1ca
mov dword [rbp + 0x60], r14d
mov qword [rbp + 0x38], r14
lea rdx, [rbp + 0x38]
mov rcx, qword [rbx + 0x30]
and r8d, 0x8a
call fcn.140077650
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 0x14008dcbb
test rdi, rdi
je 0x14008d92e
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 + 0x40]
mov qword [rsp + 0x20], rax
call qword [r12 + 0x140]
jmp 0x140088064
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 0x14008b26a
imul rcx, rax, 0x38
mov r8, qword [rcx + r11]
jmp 0x14008b26d
mov r8, rdi
mov rdx, qword [rdx + 0x30]
mov rcx, qword [r9 + 0x30]
call fcn.140077d30
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008dcc0
jmp 0x14008833f
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 0x14008b2e7
cmp qword [r12 + 0x140], 0
je 0x14008b2e7
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 0x14008b2ea
cmp byte [rbx + 4], 0
je 0x14008b2ea
mov rcx, qword [rbx + 0x30]
call fcn.140070e50
mov qword [rbx + 0x50], rax
jmp 0x14008b2ea
mov rsi, rdi
movzx edx, byte [r15 + 2]
mov rcx, qword [rbx + 0x30]
call fcn.1400782c0
inc dword [rbp - 0x74]
mov r15d, eax
mov dword [rsp + 0x54], eax
xor eax, eax
mov qword [rbx + 0x20], rax
test r15d, r15d
jne 0x14008dcbb
test r14b, 1
je 0x14008d92e
mov rax, qword [rsp + 0x78]
inc qword [rax + 0x38]
mov r10, qword [r12 + 0x140]
test r10, r10
je 0x14008d942
test rdi, rdi
je 0x14008d942
test byte [rdi + 0x30], 0x80
jne 0x14008d942
mov rax, qword [rbx + 0x50]
mov r8, rsi
mov r9, qword [rdi]
mov edx, 9
mov rcx, qword [r12 + 0x138]
mov qword [rsp + 0x20], rax
call r10
jmp 0x140088064
mov rax, qword [rsi + 0x38]
add qword [r12 + 0x80], rax
mov qword [r12 + 0x78], rax
mov qword [rsi + 0x38], rdi
jmp case.0x140087ba0.89
mov r15, qword [rsp + 0x48]
lea r9, [rbp + 0x8c]
mov rax, qword [rsi + 0x78]
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 + 0x8c], edi
add rdx, r11
call fcn.140092ab0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008dcc0
mov r13, qword [rsp + 0x48]
cmp dword [rbp + 0x8c], eax
jne 0x140087c2e
jmp 0x140088344
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.1400929e0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008dcc0
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 0xc]
mov rax, qword [rsi + 0x78]
mov rcx, qword [rax + rcx*8]
mov dword [rcx + 0x20], edi
jmp 0x14008833f
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 0x14008b44f
mov rcx, rbx
call fcn.1400875d0
mov rbx, rax
jmp 0x14008b455
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.140070e10
mov edx, dword [rdi + 0x40]
cmp edx, dword [r12 + 0x88]
ja 0x14008dee1
mov r8, rbx
mov rcx, rdi
call fcn.14007d690
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008dcc0
mov r13, qword [rsp + 0x48]
cmp dword [r13 + 0xc], eax
jne 0x14008d938
mov eax, 0x4000
test word [rbx + 0x14], ax
je 0x14008d938
mov rcx, rbx
call fcn.14007c5b0
test eax, eax
jne 0x14008e25e
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
jmp 0x1400881b9
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 0x14008b50e
mov rcx, rdi
call fcn.1400875d0
mov r8, qword [rsp + 0x60]
mov rdi, rax
mov edx, 1
jmp 0x14008b514
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 0x14008b546
mov r13, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov word [rdi + 0x14], dx
xor edi, edi
jmp case.0x140087ba0.89
cmp byte [rbx + 3], 0
je 0x14008b574
mov rax, qword [rbx + 0x50]
mov r13, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov qword [rbp + 0xa8], rax
mov qword [rdi], rax
jmp 0x1400881b9
cmp byte [rbx], 2
jne 0x14008b5cc
mov rcx, qword [rbx + 0x30]
lea rdx, [rbp + 0xa8]
mov rbx, qword [rcx]
mov rax, qword [rbx]
call qword [rax + 0x60]
mov rdx, rbx
mov rcx, rsi
mov r15d, eax
mov dword [rsp + 0x54], eax
call fcn.1400833f0
test r15d, r15d
jne 0x14008dcc0
mov rax, qword [rbp + 0xa8]
mov r13, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov qword [rdi], rax
jmp 0x1400881b9
mov rcx, rbx
call fcn.1400815b0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008dcc0
cmp byte [rbx + 2], al
je 0x14008b5f6
mov edx, 1
mov word [rdi + 0x14], dx
jmp 0x140088278
mov rcx, qword [rbx + 0x30]
call fcn.140070e50
mov r13, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov qword [rbp + 0xa8], rax
mov qword [rdi], rax
jmp 0x1400881b9
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 0x14008b669
mov r9b, 3
mov r8d, 1
mov rcx, rsi
call fcn.140087210
test rax, rax
je 0x14008e25e
or dword [rax + 8], 8
lea rcx, [0x1402e0a94]
mov qword [rax + 0x30], rcx
mov dword [rax + 0x24], edi
mov byte [rax + 4], 1
cmp byte [rax], 0
mov byte [rax + 2], 1
mov dword [rax + 0x20], edi
jne 0x14008d945
mov rcx, qword [rax + 0x30]
call fcn.14006ba30
jmp 0x14008833f
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 rcx, qword [rdi + 0x30]
mov dword [rbp + 0x70], r14d
cmp bl, 0x89
jne 0x14008b71a
mov dword [rdi + 0x24], 0xffffffff
cmp byte [rcx], r14b
je 0x140088df2
lea rdx, [rbp + 0x70]
call fcn.140071a70
mov r15d, eax
mov dword [rsp + 0x54], eax
movzx eax, byte [rbp + 0x70]
mov byte [rdi + 2], al
mov byte [rdi + 3], r14b
mov dword [rdi + 0x20], r14d
test r15d, r15d
jne 0x14008dcc0
mov r8, qword [rsp + 0x60]
xor edi, edi
mov edx, 1
mov r13, qword [rsp + 0x48]
cmp dword [r13 + 8], r14d
jle 0x14008d938
cmp dword [rbp + 0x70], r14d
jne 0x140087c2e
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp case.0x140087ba0.89
cmp byte [rcx], r14b
jne 0x14008b6b8
test byte [rcx + 1], 8
je 0x14008b6b8
mov dword [rbp + 0x70], r14d
mov word [rdi + 2], r14w
mov dword [rdi + 0x20], r14d
xor edi, edi
mov r15d, edi
mov dword [rsp + 0x54], edi
jmp 0x14008b6ec
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rcx, qword [rax + rcx*8]
mov rdi, qword [rcx + 0x30]
mov rcx, rdi
call fcn.1400717d0
mov r15d, eax
test eax, eax
jne 0x14008b773
xor eax, eax
mov rcx, rdi
mov r14d, eax
call fcn.140071a10
mov r15d, eax
jmp 0x14008b789
cmp eax, 0x10
jne 0x14008b785
mov edx, 1
mov dword [rbp + 0x74], edx
jmp 0x14008aaf0
mov r14d, dword [rbp + 0x74]
mov dword [rbp + 0x74], r14d
mov ebx, r15d
test r15d, r15d
jne 0x14008dcc0
mov dword [rsp + 0x54], ebx
test r14d, r14d
jne 0x14008d3d7
mov rcx, rdi
call fcn.140072460
test rax, rax
js 0x14008b7e1
mov rcx, rax
call fcn.140056c20
mov r13, qword [rsp + 0x48]
movsx ecx, ax
cmp ecx, dword [r13 + 0xc]
jge 0x14008b7e6
mov r8, qword [rsp + 0x60]
mov edx, 1
mov dword [rbp + 0x74], edx
xor edi, edi
mov dword [rsp + 0x54], ebx
jmp 0x140087c38
mov r13, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov dword [rbp + 0x74], r14d
mov dword [rsp + 0x54], ebx
jmp 0x1400881b9
inc dword [rsi + 0xdc]
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rbx, qword [rax + rcx*8]
mov dword [rbp + 0x28], edx
cmp byte [rbx], 1
jne 0x14008b837
lea rdx, [rbp + 0x28]
mov rcx, rbx
call fcn.140092820
mov r15d, eax
mov dword [rsp + 0x54], eax
jmp 0x14008b86b
mov rdi, qword [rbx + 0x30]
mov rcx, rdi
call fcn.1400717d0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008b899
xor eax, eax
mov rcx, rdi
mov dword [rbp + 0x28], eax
call fcn.140071a10
mov r15d, eax
mov dword [rsp + 0x54], eax
xor edi, edi
mov byte [rbx + 3], 0
mov dword [rbx + 0x20], edi
test r15d, r15d
jne 0x14008dcc0
mov r13, qword [rsp + 0x48]
movzx eax, byte [rbp + 0x28]
mov byte [rbx + 2], al
cmp dword [r13 + 8], r15d
jle 0x14008d938
cmp dword [rbp + 0x28], r15d
jne 0x140087c2e
jmp 0x140088344
cmp eax, 0x10
jne 0x14008b862
xor edi, edi
mov eax, 1
mov dword [rbp + 0x28], eax
mov r15d, edi
mov dword [rsp + 0x54], edi
jmp 0x14008b864
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.1400928f0
jmp 0x14008b90d
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.140072890
jmp 0x14008b90d
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.1400726c0
mov r15d, eax
mov dword [rsp + 0x54], eax
mov dword [rbx + 0x20], edi
test eax, eax
jne 0x14008b933
mov byte [rbx + 2], al
mov rax, qword [rsp + 0x48]
movzx eax, word [rax + 2]
inc dword [rsi + rax*4 + 0xd4]
jmp 0x14008d559
cmp r15d, 0x65
jne 0x14008dcc0
mov r15d, edi
mov dword [rsp + 0x54], edi
mov byte [rbx + 2], 1
mov r13, qword [rsp + 0x48]
mov eax, dword [r12 + 0x198]
mov rbx, qword [rsp + 0x68]
test eax, eax
jne 0x14008e245
cmp r14, rbx
jb 0x14008d933
nop dword [rax + rax]
mov rdx, qword [r12 + 0x210]
test rdx, rdx
je 0x14008d933
mov eax, dword [r12 + 0x220]
mov rcx, qword [r12 + 0x218]
add rbx, rax
mov qword [rsp + 0x68], rbx
call rdx
test eax, eax
jne 0x14008e05b
cmp r14, rbx
jae 0x14008b970
jmp 0x140088069
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 0x14008b9d4
inc qword [rsi + 0x38]
mov eax, 0x400
test word [rbx + 0x14], ax
je 0x14008b9fc
mov rcx, rbx
call fcn.14007c640
mov r15d, eax
test eax, eax
jne 0x14008dcc0
mov r15, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movsxd rax, dword [rbx + 0x10]
movzx r8d, word [r15 + 2]
mov qword [rbp + 0x40], rax
mov rax, qword [rbx + 8]
mov qword [rbp + 0x38], rax
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
movzx eax, word [r15 + 0x10]
add rcx, r11
mov word [rbp + 0x58], ax
mov qword [rbp + 0x50], rcx
test r8b, 0x10
je 0x14008ba35
mov r9d, dword [rdi + 0x24]
jmp 0x14008ba3a
xor eax, eax
mov r9d, eax
mov rcx, qword [rdi + 0x30]
lea rdx, [rbp + 0x38]
and r8d, 0x8a
call fcn.140077650
mov r15d, eax
mov dword [rsp + 0x54], eax
xor eax, eax
mov dword [rdi + 0x20], eax
test r15d, r15d
jne 0x14008dcc0
mov r13, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
jmp 0x1400881b9
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 0x14008bab7
mov rcx, rbx
call fcn.14007c640
mov r15d, eax
test eax, eax
jne 0x14008dcc0
mov rdx, rbx
mov rcx, rdi
call fcn.140091300
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008dcc0
mov r13, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
jmp 0x1400881b9
mov r15, qword [rsp + 0x48]
lea r8, [rbp + 0x98]
mov rax, qword [rsi + 0x78]
lea rdx, [rbp + 0x38]
movsxd rcx, dword [r15 + 4]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x38]
mov rdi, qword [rbx + 0x30]
mov qword [rbp + 0x38], rax
movzx eax, word [r15 + 0xc]
mov word [rbp + 0x54], ax
movsxd rax, dword [r15 + 8]
imul rcx, rax, 0x38
mov byte [rbp + 0x56], 0
add rcx, r11
mov qword [rbp + 0x40], rcx
mov rcx, rdi
call fcn.140071dd0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008dcc0
cmp dword [rbp + 0x98], eax
jne 0x14008bb77
mov dl, 4
mov rcx, rdi
call fcn.1400782c0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008dcc0
mov r13, qword [rsp + 0x48]
xor edi, edi
mov qword [rbx + 0x20], rdi
jmp 0x140088344
mov r13, qword [rsp + 0x48]
cmp word [r13 + 2], 0
je 0x14008bb94
mov rcx, r12
call fcn.1400af7e0
test eax, eax
je 0x14008defb
xor edi, edi
mov qword [rbx + 0x20], rdi
jmp 0x140088344
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 0x14008bbd2
mov rcx, rbx
call fcn.140081550
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008dcc0
jmp 0x14008bbd9
mov r15d, edi
mov dword [rsp + 0x54], edi
cmp byte [rbx + 2], 0
jne 0x14008bc68
mov qword [rbp + 0xb0], rdi
lea r8, [rbp + 0xb0]
mov rdx, qword [rbx + 0x30]
mov rcx, r12
call fcn.140082c80
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008dcc0
mov rax, qword [rsp + 0x48]
cmp byte [rax], 0x8d
jne 0x14008bc4e
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 + 0xb0]
mov qword [rdx + 0x50], rax
mov rax, qword [rsp + 0x48]
mov byte [rdx + 3], 1
mov dword [rdx + 0x20], edi
mov rax, qword [rax + 0x10]
mov qword [rdx + 0x10], rax
mov qword [rdx + 0x28], rbx
jmp 0x14008833f
mov rdx, rax
mov rcx, rsi
call fcn.140087600
mov rcx, qword [rbp + 0xb0]
mov qword [rax], rcx
jmp 0x14008833f
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x58]
call fcn.14007cef0
jmp 0x14008833f
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 0x14008c631
call fcn.1400814e0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008dcc0
jmp 0x14008833f
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 + 0x38], rax
movzx eax, word [r15 + 0x10]
mov word [rbp + 0x54], ax
sbb al, al
mov byte [rbp + 0x56], al
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbp + 0x40], rcx
mov rbx, qword [rdx + 0x30]
mov rcx, rbx
call fcn.140070e10
mov edx, dword [rbx + 0x40]
lea rax, [rdx - 1]
cmp rax, 0x7ffffffe
ja 0x14008df1c
lea r8, [rbp - 0x18]
mov word [rbp - 4], di
mov rcx, rbx
mov qword [rbp], r12
mov dword [rbp + 8], edi
call fcn.14007d690
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008dcc0
mov rdx, qword [rbp - 0x10]
lea r8, [rbp + 0x38]
mov ecx, dword [rbp - 8]
xor r9d, r9d
call fcn.140082140
lea rcx, [rbp - 0x18]
mov ebx, eax
call fcn.14007c990
mov r13, qword [rsp + 0x48]
lea ecx, [rbx + 1]
neg ebx
test byte [r13], 1
cmovne ebx, ecx
test ebx, ebx
jg 0x140087c2e
jmp 0x140088344
mov r15, qword [rsp + 0x48]
mov rcx, rsi
mov rdx, r15
call fcn.140087600
mov r13d, 1
mov rbx, rax
mov word [rax + 0x14], r13w
mov ecx, dword [r12 + 0xe8]
inc ecx
cmp dword [r12 + 0xdc], ecx
jg 0x14008df5e
movsxd rdi, dword [r15 + 0xc]
lea r8, [rbp + 0x7c]
mov rcx, qword [r12 + 0x20]
xor eax, eax
mov edx, dword [r15 + 4]
mov r9, rdi
shl r9, 5
mov dword [rbp + 0x7c], eax
mov rcx, qword [r9 + rcx + 8]
call fcn.1400797a0
mov r15d, eax
mov dword [rsp + 0x54], eax
mov word [rbx + 0x14], 4
movsxd rax, dword [rbp + 0x7c]
mov qword [rbx], rax
test r15d, r15d
jne 0x140089f49
mov r8d, dword [rbp + 0x7c]
test r8d, r8d
je 0x14008d945
mov rax, qword [rsp + 0x48]
mov edx, edi
mov rcx, r12
mov r9d, dword [rax + 4]
call fcn.1400b3e60
mov r13, qword [rsp + 0x48]
inc dil
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov byte [rbp - 0x78], dil
jmp 0x1400881b9
mov r15, qword [rsp + 0x48]
lea r8, [rbp + 0x30]
mov rcx, qword [r12 + 0x20]
mov qword [rbp + 0x30], rdi
movsxd rax, dword [r15 + 8]
mov edx, dword [r15 + 4]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.140079230
mov r13, qword [rsp + 0x48]
mov r15d, eax
mov r11, qword [rsp + 0x58]
mov dword [rsp + 0x54], eax
cmp dword [r13 + 0xc], 0
je 0x14008be86
mov rdx, qword [rbp + 0x30]
add qword [rsi + 0x38], rdx
movsxd rax, dword [r13 + 0xc]
test eax, eax
jle 0x14008be86
imul rcx, rax, 0x38
add qword [rcx + r11], rdx
test r15d, r15d
jne 0x14008dd62
mov r10d, dword [rsp + 0x50]
movzx r9d, byte [rsp + 0x40]
mov r8, qword [rsp + 0x60]
jmp 0x1400881c0
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 0x14008becb
mov rdx, qword [rcx + 0x30]
mov rcx, r12
call fcn.1400904b0
jmp 0x14008833f
mov rcx, qword [rcx + 0x30]
call fcn.140079310
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008dcc0
jmp 0x14008833f
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 0x14008bf11
mov rcx, rbx
call fcn.1400875d0
mov rbx, rax
jmp 0x14008bf17
mov word [rbx + 0x14], 4
movsxd rcx, dword [r15 + 4]
lea rdx, [rbp + 0x90]
mov r8d, dword [r15 + 0xc]
shl rcx, 5
add rcx, qword [r12 + 0x20]
mov dword [rbp + 0x90], edi
mov rcx, qword [rcx + 8]
call fcn.140078ef0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008dcc0
mov eax, dword [rbp + 0x90]
mov qword [rbx], rax
jmp 0x14008833f
mov rax, qword [rsp + 0x48]
inc byte [r12 + 0x70]
mov rbx, qword [r12 + 0x200]
mov qword [rbp - 0x68], rdi
cmp dword [rax + 4], 0
movzx edi, byte [r12 + 0x6e]
je 0x14008bf8d
xor r14d, r14d
mov qword [r12 + 0x200], r14
mov byte [r12 + 0x6e], r14b
mov rdx, qword [rax + 0x10]
lea rcx, [rbp - 0x68]
mov qword [rsp + 0x20], rcx
xor r9d, r9d
mov rcx, r12
xor r8d, r8d
call fcn.1400cd010
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
test r8, r8
jne 0x14008df75
test eax, eax
jne 0x14008df75
mov r13, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
jmp 0x1400881b9
mov r15, qword [rsp + 0x48]
mov rcx, qword [r12 + 0x20]
cmp qword [r15 + 0x10], 0
movsxd rbx, dword [r15 + 4]
jne 0x14008c04b
mov rax, rbx
shl rax, 5
mov rcx, qword [rax + rcx + 0x18]
call fcn.1400b97a0
and dword [r12 + 0x2c], 0xffffffef
lea r8, [rsi + 0xa8]
movzx r9d, word [r15 + 2]
mov edx, ebx
mov rcx, r12
call fcn.1400d65e0
or dword [r12 + 0x2c], 1
mov r15d, eax
and dword [rsi + 0xc8], 0xfffffffc
mov dword [rsp + 0x54], eax
jmp 0x14008c113
mov dword [rbp + 0x48], ebx
lea rax, [rsi + 0xa8]
mov qword [rbp + 0x38], r12
mov qword [rbp + 0x40], rax
mov dword [rbp + 0x50], edi
shl rbx, 5
mov rcx, qword [rbx + rcx + 8]
call fcn.14006d6c0
mov r8, qword [r12 + 0x20]
lea r9, str.sqlite_master
mov dword [rbp + 0x58], eax
lea rdx, str.SELECTFROM__w_._s_WHERE__s_ORDER_BY_rowid
mov rax, qword [r15 + 0x10]
mov rcx, r12
mov qword [rsp + 0x20], rax
mov r8, qword [rbx + r8]
call fcn.140053240
mov rbx, rax
mov rcx, r12
test rax, rax
je 0x14008dfb1
lea r9, [rbp + 0x38]
mov byte [r12 + 0xc5], 1
lea r8, [fcn.1400d6250]
mov dword [rbp + 0x4c], edi
mov rdx, rax
mov dword [rbp + 0x54], edi
mov qword [rsp + 0x20], rdi
call fcn.1400cd010
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008c0ff
mov r15d, dword [rbp + 0x4c]
mov dword [rsp + 0x54], r15d
test r15d, r15d
jne 0x14008c0ff
cmp dword [rbp + 0x54], r15d
jne 0x14008c0ff
mov ecx, 0x18897
call fcn.14011b5b0
mov r15d, eax
mov dword [rsp + 0x54], eax
mov rdx, rbx
mov rcx, r12
call fcn.140050660
mov byte [r12 + 0xc5], 0
test r15d, r15d
je 0x14008833f
mov rcx, r12
call fcn.1400aee60
jmp 0x14008df8d
mov rax, qword [rsp + 0x48]
mov rcx, r12
mov edx, dword [rax + 4]
call fcn.1400ac420
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008dcc0
jmp 0x14008833f
mov rax, qword [rsp + 0x48]
mov rcx, r12
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.1400af4e0
jmp 0x14008833f
mov rax, qword [rsp + 0x48]
mov rcx, r12
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.1400aebc0
jmp 0x14008833f
mov rax, qword [rsp + 0x48]
mov rcx, r12
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.1400ebf40
jmp 0x14008833f
mov r15, qword [rsp + 0x48]
lea r9, [rbp - 0x58]
mov rdx, qword [r12 + 0x20]
mov qword [rsp + 0x30], r9
lea r9, [rbp + 0x94]
mov qword [rsp + 0x28], r9
movsxd rax, dword [r15 + 0xc]
mov r8, qword [r15 + 0x10]
mov r9d, dword [r15 + 8]
add r8, 4
imul rdi, rax, 0x38
movsxd rax, dword [r15 + 4]
imul rbx, rax, 0x38
movzx eax, word [r15 + 2]
add rdi, r11
shl rax, 5
add rbx, r11
mov ecx, dword [rdi]
mov rdx, qword [rax + rdx + 8]
inc ecx
mov dword [rsp + 0x20], ecx
mov rcx, r12
call fcn.14007a7e0
mov rcx, rbx
mov dword [rsp + 0x54], eax
mov r15d, eax
call fcn.14007cef0
mov eax, dword [rbp + 0x94]
test eax, eax
je 0x14008c243
test r15d, r15d
jne 0x14008dfbb
dec eax
mov r9b, 1
movsxd rcx, eax
mov r8, 0xffffffffffffffff
sub qword [rdi], rcx
lea rax, [fcn.140050580]
mov rdx, qword [rbp - 0x58]
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.14007d280
movzx edx, byte [rsp + 0x40]
mov rcx, rbx
call fcn.14007c1b0
jmp 0x14008b948
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 0x14008c286
mov rcx, rbx
call fcn.14007d030
test eax, eax
jne 0x14008e25e
mov rdx, qword [rdi]
mov rcx, qword [rbx + 8]
call fcn.140060c90
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov r13, qword [rsp + 0x48]
jmp 0x1400881b9
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, r11
test byte [rbx + 0x14], 0x10
je 0x14008c2f9
mov rcx, qword [rbx + 8]
lea rdx, [rbp + 0xc0]
call fcn.140061120
test eax, eax
je 0x14008c2f9
mov rax, qword [rsp + 0x48]
mov rdx, qword [rbp + 0xc0]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x58]
call fcn.14007cfa0
jmp 0x14008b948
mov rcx, rbx
call fcn.14007cef0
jmp 0x14008d559
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 0x14008c33a
mov rcx, rbx
call fcn.14007d030
test eax, eax
jne 0x14008e259
test esi, esi
je 0x14008c356
mov r8, qword [rdi]
mov edx, esi
mov rcx, qword [rbx + 8]
call fcn.1400611e0
test eax, eax
jne 0x14008d3d7
test esi, esi
js 0x140088064
mov rdx, qword [rdi]
mov rcx, qword [rbx + 8]
call fcn.140060c90
jmp 0x140088064
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 0x14008c3b3
mov rax, qword [rsi + 0x108]
mov rcx, qword [r15 + 0x20]
test rax, rax
je 0x14008c3b3
nop dword [rax + rax]
cmp qword [rax + 0x30], rcx
je 0x14008db82
mov rax, qword [rax + 8]
test rax, rax
jne 0x14008c3a0
mov eax, dword [r12 + 0xb0]
cmp dword [rsi + 0x118], eax
jge 0x14008dfc9
test byte [r14 + 0x14], 0x10
jne 0x14008c4e3
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 0x14008c3f8
add eax, 7
sar eax, 3
lea esi, [rax + rcx*8]
mov rcx, r12
movsxd rdx, esi
call fcn.140050aa0
mov rbx, rax
test rax, rax
je 0x14008e259
mov rcx, r14
call fcn.14007c970
mov rcx, qword [rsp + 0x48]
lea rax, [0x14007f520]
sub rcx, qword [rsp + 0x60]
mov qword [r14 + 0x30], rax
mov dword [r14 + 0x10], esi
mov rsi, qword [rsp + 0x78]
mov word [r14 + 0x14], 0x1010
mov qword [r14 + 8], rbx
mov dword [rbx + 0x58], edi
mov qword [rbx], rsi
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
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
xor edi, edi
add rax, 2
imul rcx, rax, 0x38
lea rax, [rbx + 0x70]
add rcx, rbx
cmp rax, rcx
je 0x14008c4e7
nop dword [rax]
nop word [rax + rax]
mov word [rax + 0x14], di
mov qword [rax + 0x18], r12
add rax, 0x38
cmp rax, rcx
jne 0x14008c4d0
jmp 0x14008c4e7
mov rbx, qword [r14 + 8]
inc dword [rsi + 0x118]
lea rdx, [rbx + 0x70]
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 qword [rsp + 0x58], rdx
mov rcx, qword [rax + 0x78]
mov qword [rbx + 0x68], rcx
mov rax, qword [rsi + 0x128]
mov qword [rbx + 0x40], rax
mov qword [rsi + 0x68], rdx
mov qword [rsi + 0x128], rdi
mov qword [rsi + 0x38], rdi
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
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.140236890
mov r8, qword [r15]
mov r14, qword [rsp + 0x70]
mov qword [rsi + 0x88], r8
mov eax, dword [r15 + 8]
mov r15d, dword [rsp + 0x54]
mov dword [rsi + 0x90], eax
lea rax, [r8 - 0x18]
mov qword [rsp + 0x48], rax
mov r13, rax
mov qword [rsp + 0x60], r8
jmp 0x14008b94d
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul r9, rax, 0x38
mov eax, 0x9000
add r9, qword [rsi + 0x68]
test word [r9 + 0x14], ax
je 0x14008c5db
mov rcx, r9
call fcn.1400875d0
mov r9, rax
jmp 0x14008c5e2
mov word [r9 + 0x14], 4
mov r8, qword [rsi + 0x108]
movsxd rax, dword [r8 + 0x4c]
lea rcx, [rax + rax*2]
mov rax, qword [r8 + 0x10]
mov edx, dword [rax + rcx*8 + 4]
mov rcx, r9
mov rax, qword [rsp + 0x48]
add edx, dword [rax + 4]
movsxd rax, edx
imul rdx, rax, 0x38
add rdx, qword [r8 + 0x18]
jmp 0x140088334
mov eax, dword [r12 + 0x30]
bt rax, 0x13
mov rax, qword [rsp + 0x48]
jae 0x14008c63b
movsxd rax, dword [rax + 8]
add qword [r12 + 0x300], rax
mov r13, qword [rsp + 0x48]
jmp case.0x140087ba0.89
cmp dword [rax + 4], 0
lea rcx, [0x140000000]
movsxd rax, dword [rax + 8]
mov r13, qword [rsp + 0x48]
je 0x14008c66b
add qword [r12 + 0x2f8], rax
mov r12, qword [rbp - 0x80]
add r13, 0x18
mov r14, qword [rsp + 0x70]
jmp 0x140087b6e
add qword [rsi + 0x50], rax
mov r12, qword [rbp - 0x80]
add r13, 0x18
mov r14, qword [rsp + 0x70]
jmp 0x140087b6e
cmp dword [r13 + 4], 0
je 0x14008c6ab
cmp qword [r12 + 0x2f8], 0
jne case.0x140087ba0.89
cmp qword [r12 + 0x300], 0
je 0x140087c38
jmp case.0x140087ba0.89
cmp qword [rsi + 0x50], 0
jmp 0x14008c691
mov rcx, qword [rsi + 0x108]
test rcx, rcx
je 0x14008c6ef
mov rax, qword [rcx + 8]
test rax, rax
je 0x14008c6dc
nop word [rax + rax]
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x14008c6d0
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, qword [rcx + 0x18]
jmp 0x14008c6ff
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, r11
mov rcx, rdi
call fcn.14007c9d0
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.14007c9d0
movzx ecx, word [rbx + 0x14]
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 0x1400881b3
mov qword [rdi], rax
jmp 0x1400881b3
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 0x1400881c0
mov rax, r13
movsxd rax, dword [rax + 0xc]
sub rdx, rax
mov qword [rcx + r11], rdx
jmp 0x140087c33
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul rsi, rax, 0x38
movsxd rax, dword [rcx + 8]
add rdi, r11
imul rbx, rax, 0x38
mov rax, qword [rsp + 0x78]
add rsi, r11
add rbx, qword [rax + 0x68]
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x14008c7e3
mov rcx, rbx
call fcn.1400875d0
mov rbx, rax
jmp 0x14008c7e9
mov word [rbx + 0x14], 4
mov rax, qword [rdi]
mov qword [rbp + 0xb8], rax
test rax, rax
jle 0x14008c82b
mov rdx, qword [rsi]
lea rcx, [rbp + 0xb8]
test rdx, rdx
mov edi, 0
cmovle rdx, rdi
call fcn.140056ac0
test eax, eax
jne 0x14008c82d
mov rax, qword [rbp + 0xb8]
mov rsi, qword [rsp + 0x78]
mov qword [rbx], rax
jmp 0x14008833f
xor edi, edi
mov rsi, qword [rsp + 0x78]
mov qword [rbx], 0xffffffffffffffff
jmp 0x14008833f
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r11]
test rax, rax
je 0x14008c631
mov r13, qword [rsp + 0x48]
jle 0x140087c38
dec rax
mov qword [rcx + r11], rax
jmp 0x140087c38
mov rax, qword [rsp + 0x48]
movabs rbx, 0x8000000000000000
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r11]
cmp rax, rbx
jle 0x14008c896
dec rax
mov qword [rcx + r11], rax
mov r13, qword [rsp + 0x48]
test rax, rax
je 0x140087c38
jmp case.0x140087ba0.89
mov rax, qword [rsp + 0x48]
mov rcx, r12
movzx ebx, word [rax + 2]
lea rdx, [rbx*8 + 0x68]
call fcn.140050b30
mov r8, rax
test rax, rax
je 0x14008e25e
xor r9d, r9d
lea rcx, [rbx + 6]
lea rcx, [rax + rcx*8]
mov qword [rax + 0x10], r9
mov qword [rax], rcx
mov r14d, 1
mov rax, qword [rsp + 0x48]
mov word [rcx + 0x14], r14w
mov qword [rcx + 0x18], r12
mov dword [rcx + 0x20], r9d
mov rcx, qword [rax + 0x10]
mov qword [r8 + 8], rcx
mov rcx, rax
sub rcx, qword [rsp + 0x60]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov qword [r8 + 0x18], rsi
sar rdx, 2
mov rax, rdx
mov byte [r8 + 0x29], r9b
shr rax, 0x3f
add rdx, rax
mov dword [r8 + 0x24], r9d
movzx eax, byte [rsp + 0x40]
mov byte [r8 + 0x28], al
mov rax, qword [rsp + 0x48]
mov dword [r8 + 0x20], edx
mov byte [r8 + 0x2a], bl
mov word [rax], 0xf1a3
mov qword [rax + 0x10], r8
jmp 0x14008c95b
mov rax, qword [rsp + 0x48]
mov r14d, 1
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 0x14008c9c6
movzx eax, byte [rbx + 0x2a]
mov edx, eax
mov qword [rbx + 0x10], r10
sub rdx, 1
lea r9d, [rax - 1]
js 0x14008c9c6
mov r12, qword [rsp + 0x48]
lea r8, [rdx + 6]
lea r8, [rbx + r8*8]
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 0x14008c9a0
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 0x14008c9ea
call qword [rax + Ordinal_50]
jmp 0x14008c9ed
call qword [rax + Ordinal_26]
mov eax, dword [rbx + 0x24]
test eax, eax
je 0x14008d963
jle 0x14008ca1f
mov rcx, qword [rbx]
mov dl, 1
call fcn.14007d7b0
mov r8, rax
lea rdx, [0x14029a558]
mov rcx, rsi
call fcn.14007df50
mov r15d, dword [rbx + 0x24]
mov dword [rsp + 0x54], r15d
cmp byte [rbx + 0x29], 0
je 0x14008ca40
movsxd rax, dword [r13 - 0x14]
test eax, eax
je 0x14008ca3c
imul rcx, rax, 0x38
mov rdx, r14
add rcx, rdi
call fcn.14007cfa0
mov byte [rbx + 0x29], 0
mov rcx, qword [rbx]
mov eax, 0x9000
test word [rcx + 0x14], ax
jne 0x14008ca54
cmp dword [rcx + 0x20], 0
je 0x14008ca59
call fcn.14007c920
mov rax, qword [rbx]
xor edi, edi
mov edx, 1
mov word [rax + 0x14], dx
mov dword [rbx + 0x24], edi
test r15d, r15d
jne 0x14008e298
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov r8, qword [rsp + 0x60]
jmp case.0x140087ba0.89
mov rcx, qword [rsp + 0x48]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
mov rcx, qword [rcx + 0x10]
add rbx, r11
test eax, eax
je 0x14008cad6
imul rdx, rax, 0x38
mov r8, rcx
mov rcx, rbx
add rdx, r11
call fcn.14007c840
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 0x14008cae8
mov rdx, rcx
mov rcx, rbx
call fcn.14007c760
mov r15d, eax
mov dword [rsp + 0x54], eax
mov rcx, rbx
test r15d, r15d
jne 0x14008dfe0
movzx edx, byte [rsp + 0x40]
call fcn.14007c1b0
jmp 0x14008833f
lea rax, [rbp + 0xd0]
mov dword [rbp + 0xc8], edi
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0xcc]
mov rax, qword [rsp + 0x48]
mov rcx, r12
mov qword [rbp + 0xcc], 0xffffffffffffffff
mov r8d, dword [rax + 8]
mov edx, dword [rax + 4]
call fcn.140119480
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
je 0x14008cb65
cmp eax, 5
jne 0x14008dcc0
mov eax, 1
mov dword [rsp + 0x54], edi
mov ecx, eax
mov dword [rbp + 0xc8], eax
mov r15d, edi
jmp 0x14008cb6b
mov ecx, dword [rbp + 0xc8]
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 0x14008cb9f
mov rdx, rax
mov rcx, rbx
call fcn.14007cf60
mov edx, 4
jmp 0x14008cbab
mov edx, 4
mov qword [rbx], rax
mov word [rbx + 0x14], dx
lea rcx, [rbx + 0x38]
movsxd rax, dword [rbp + 0xcc]
test word [rbx + 0x4c], r12w
je 0x14008cbcc
mov rdx, rax
call fcn.14007cf60
mov edx, 4
jmp 0x14008cbd3
mov qword [rcx], rax
mov word [rbx + 0x4c], dx
lea rcx, [rbx + 0x70]
movsxd rax, dword [rbp + 0xd0]
test word [rbx + 0x84], r12w
je 0x14008cbf5
mov rdx, rax
call fcn.14007cf60
jmp 0x14008833f
mov qword [rcx], rax
mov word [rbx + 0x84], dx
jmp 0x14008833f
mov r15, qword [rsp + 0x48]
mov rcx, rsi
mov rdx, r15
call fcn.140087600
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.140079a90
mov rcx, rax
mov rsi, rax
call fcn.140066cc0
cmp ebx, 0xffffffff
mov rcx, rsi
mov edi, eax
cmove ebx, eax
call fcn.140066cd0
test eax, eax
mov r13d, 1
mov edx, r13d
mov rcx, rsi
cmove ebx, edi
call fcn.140066840
cmp ebx, 5
jne 0x14008cc98
mov rcx, rax
call fcn.1400541f0
test eax, eax
je 0x14008cc83
mov rcx, rsi
call fcn.140066d00
test eax, eax
jne 0x14008cc98
mov ebx, edi
mov r15d, dword [rsp + 0x54]
test r15d, r15d
je 0x14008cd24
jmp 0x14008cd22
cmp ebx, edi
je 0x14008cc85
cmp edi, 5
je 0x14008cca6
cmp ebx, 5
jne 0x14008cc85
cmp byte [r12 + 0x65], 0
je 0x14008dffc
cmp dword [r12 + 0xdc], r13d
jg 0x14008dffc
cmp edi, 5
jne 0x14008cce4
mov rdx, r12
mov rcx, rsi
call fcn.140066ed0
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x14008cd1d
mov edx, ebx
mov rcx, rsi
call fcn.140066b30
jmp 0x14008ccfd
cmp edi, 4
jne 0x14008ccf6
mov edx, 2
mov rcx, rsi
call fcn.140066b30
cmp dword [rsp + 0x54], 0
jne 0x14008cd1d
xor eax, eax
mov rcx, r15
mov edx, eax
cmp ebx, 5
sete dl
inc edx
call fcn.14007afa0
mov r15d, eax
mov dword [rsp + 0x54], eax
jmp 0x14008cc8a
mov r15d, dword [rsp + 0x54]
mov ebx, edi
mov edx, ebx
mov rcx, rsi
call fcn.140066b30
mov ecx, eax
mov word [r14 + 0x14], 0x2202
call fcn.1400ce680
mov rcx, rax
mov qword [r14 + 8], rax
call fcn.1400541f0
movzx edx, byte [rsp + 0x40]
mov rcx, r14
mov dword [r14 + 0x10], eax
mov byte [r14 + 0x16], r13b
call fcn.14007c1b0
mov rsi, qword [rsp + 0x78]
test r15d, r15d
jne 0x140089f49
mov r13, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
jmp 0x1400881b9
mov r15, qword [rsp + 0x48]
movsxd rax, dword [r15 + 8]
test eax, eax
je 0x14008cd9b
imul r9, rax, 0x38
add r9, r11
jmp 0x14008cd9e
mov r9, rdi
mov r8d, dword [r15 + 4]
lea rcx, [rsi + 0xa8]
mov rdx, r12
call fcn.1400f20a0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
jne 0x14008dcc0
jmp 0x14008833f
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.14006ff10
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
je 0x14008d945
cmp eax, 0x65
jne 0x14008dcc0
mov r15d, edi
mov dword [rsp + 0x54], edi
mov r13, qword [rsp + 0x48]
jmp 0x140087c2e
mov rcx, qword [rsp + 0x48]
cmp dword [rcx + 4], 0
jne 0x14008ce25
mov edx, dword [rcx + 8]
mov rcx, r12
call fcn.140083190
jmp 0x14008833f
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.0x140087ba0.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.140070e70
jmp 0x14008833f
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.140070e80
jmp 0x14008833f
movzx r8d, byte [r13 + 0xc]
test r8b, r8b
jne 0x14008cea4
movabs rax, 0x400000000
test qword [r12 + 0x30], rax
jne 0x1400883bf
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.14007ada0
mov dword [rsp + 0x54], eax
mov r15d, eax
test eax, eax
je 0x14008833f
mov rdi, qword [rsp + 0x48]
cmp al, 6
jne 0x14008dcc5
mov r8, qword [rdi + 0x10]
lea rdx, str.database_table_is_locked:__s
mov rcx, rsi
call fcn.14007df50
jmp 0x14008dcc5
mov rax, qword [rsp + 0x48]
mov rcx, r12
mov rbx, qword [rax + 0x10]
mov rdx, rbx
call fcn.1400f4370
mov dword [rsp + 0x54], eax
mov r15d, eax
test rbx, rbx
je 0x14008cf24
mov rdx, qword [rbx + 0x10]
mov rcx, rsi
call fcn.1400833f0
test r15d, r15d
jne 0x14008dcc0
jmp 0x14008833f
mov rax, qword [rsp + 0x48]
lea rcx, [rbp + 0x38]
xorps xmm0, xmm0
mov qword [rbp + 0x38], rdi
xorps xmm1, xmm1
mov qword [rbp + 0x68], rdi
movdqu xmmword [rbp + 0x40], xmm0
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
movdqu xmmword [rbp + 0x58], xmm1
mov qword [rbp + 0x50], r12
add rdx, r11
call fcn.14007d1e0
lea rcx, [rbp + 0x38]
mov dword [rsp + 0x54], eax
mov r15d, eax
call fcn.140083a50
test rax, rax
je 0x14008cf9d
mov r8, rax
lea r9, [rsi + 0xa8]
mov rax, qword [rsp + 0x48]
mov rcx, r12
mov edx, dword [rax + 4]
call fcn.1400f3c60
mov r15d, eax
mov dword [rsp + 0x54], eax
lea rcx, [rbp + 0x38]
call fcn.14007c970
test r15d, r15d
jne 0x14008dcc0
jmp 0x14008833f
mov rax, qword [rsp + 0x48]
mov rcx, r12
inc dword [r12 + 0xe8]
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.1400f4120
dec dword [r12 + 0xe8]
mov r15d, eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x14008dcc0
jmp 0x14008833f
mov rax, qword [rsp + 0x48]
mov qword [rbp - 0x68], rdi
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x14008e03a
mov rdi, qword [rbx]
test rdi, rdi
je 0x14008e03a
lea rdx, [rbp - 0x68]
mov rcx, rbx
call qword [rdi + Ordinal_50]
mov rdx, rbx
mov rcx, rsi
mov r15d, eax
mov dword [rsp + 0x54], eax
call fcn.1400833f0
test r15d, r15d
jne 0x14008dcc0
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.140087210
mov rcx, qword [rbp - 0x68]
test rax, rax
je 0x14008e032
mov r13, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov qword [rax + 0x30], rcx
inc dword [rbx + 8]
jmp 0x1400881b9
mov rax, qword [rsp + 0x48]
mov qword [rbp - 0x68], rdi
movsxd rax, dword [rax + 8]
imul rsi, rax, 0x38
mov eax, 0x9000
add rsi, r11
test word [rsi + 0x14], ax
je 0x14008d0b0
mov rcx, rsi
call fcn.14007c8e0
mov r11, qword [rsp + 0x58]
jmp 0x14008d0b4
mov word [rsi + 0x14], dx
mov r13, qword [rsp + 0x48]
mov r14, qword [r13 + 0x10]
mov rcx, qword [r14 + 0x50]
test rcx, rcx
je 0x14008d959
mov rbx, qword [rcx + 0x10]
mov rdi, qword [rbx]
inc dword [r14 + 0x2c]
call fcn.1400f2ce0
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.1400f2cf0
mov rdx, r14
mov rcx, r12
call fcn.1400af4c0
test r15d, r15d
jne 0x14008e045
mov rdx, qword [rbp - 0x68]
test rdx, rdx
je 0x14008d933
lea rax, [fcn.140050580]
mov r9b, 1
mov r8, 0xffffffffffffffff
mov qword [rsp + 0x20], rax
mov rcx, rsi
call fcn.14007d280
jmp 0x140088069
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x78]
mov rdi, qword [rax + rcx*8]
call fcn.140116470
test eax, eax
jne 0x14008e25e
mov ecx, reloc.WS2_32.dll_recv
call fcn.1400503a0
mov rbx, rax
test rax, rax
je 0x14008e25e
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.140087600
lea r9, [0x140084820]
mov rdx, rbx
lea r8, str.ValueList
mov rcx, rax
mov word [rax + 0x14], 1
call fcn.14007cfc0
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov r13, qword [rsp + 0x48]
jmp 0x1400881b9
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 + 0x78]
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 0x14008d350
cmp edi, 8
jb 0x14008d350
cmp dword [reloc.WS2_32.dll_accept], 6
jl 0x14008d350
mov eax, edi
and eax, 0x80000007
jge 0x14008d265
dec eax
or eax, 0xfffffff8
inc eax
mov r10d, edi
lea rcx, [r11 + 0x20]
sub r10d, eax
mov r8d, 4
nop word [rax + rax]
movq xmm3, xmm9
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, xmm8
add r9d, 8
paddd xmm1, xmm0
add rdx, 8
pmovsxdq xmm0, xmm1
vpmullq xmm1, xmm0, xmm7
paddq xmm1, xmm4
movq xmm0, xmm8
paddd xmm2, xmm0
pmovsxdq xmm0, xmm2
movdqu xmmword [rcx - 0x60], xmm1
vpmullq xmm1, xmm0, xmm7
paddq xmm1, xmm4
movd xmm2, r8d
movdqu xmmword [rcx - 0x50], xmm1
add r8d, 8
pshufd xmm2, xmm2, 0
movq xmm0, xmm8
paddd xmm2, xmm3
paddd xmm2, xmm0
pmovsxdq xmm0, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm3
vpmullq xmm1, xmm0, xmm7
paddq xmm1, xmm4
movq xmm0, xmm8
paddd xmm2, xmm0
movdqu xmmword [rcx - 0x40], xmm1
pmovsxdq xmm0, xmm2
vpmullq xmm1, xmm0, xmm7
paddq xmm1, xmm4
movdqu xmmword [rcx - 0x30], xmm1
cmp r9d, r10d
jl 0x14008d280
cmp rdx, rdi
jge 0x14008d379
lea r8d, [r9 + 1]
nop dword [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 0x14008d360
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 + 0x78]
mov rdx, r15
mov dword [rsp + 0x54], eax
call fcn.1400833f0
mov r15d, dword [rsp + 0x54]
test r15d, r15d
jne 0x14008dcb7
mov rcx, rsi
call qword [r14 + 0x50]
mov byte [r13 + 2], r15b
test eax, eax
je 0x140088064
mov r13, qword [rsp + 0x48]
xor edi, edi
jmp 0x140087c2e
mov r15d, dword [rsp + 0x54]
mov r13, qword [rsp + 0x48]
xor edi, edi
jmp 0x140087c2e
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 0x14008d42c
mov rcx, rbx
call fcn.14007cef0
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov r13, qword [rsp + 0x48]
jmp 0x1400881b9
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 + 0x38], xmm0
mov qword [rbp + 0x38], rbx
movups xmmword [rbp + 0x58], xmm0
mov byte [rbp + 0x60], r9b
movups xmmword [rbp + 0x48], xmm0
mov qword [rbp + 0x68], rax
je 0x14008d471
mov rcx, rbx
call fcn.14007cef0
mov rcx, qword [rsp + 0x48]
xor eax, eax
mov dword [rbx], eax
mov eax, 0x401
jmp 0x14008d481
movzx eax, word [rbx + 0x14]
mov edx, 0xf241
and ax, dx
or ax, 1
mov word [rbx + 0x14], ax
lea rdx, [rbp + 0x38]
mov r8d, dword [rcx + 8]
mov rcx, qword [rdi + 0x30]
call qword [r14 + 0x58]
mov rdx, rsi
mov rsi, qword [rsp + 0x78]
mov rcx, rsi
mov dword [rsp + 0x54], eax
mov r15d, eax
call fcn.1400833f0
cmp dword [rbp + 0x5c], 0
jle 0x14008d4d5
mov rcx, rbx
call fcn.140083a50
mov r8, rax
lea rdx, [0x14029a558]
mov rcx, rsi
call fcn.14007df50
mov r15d, dword [rbp + 0x5c]
mov dword [rsp + 0x54], r15d
movzx edx, byte [rsp + 0x40]
mov rcx, rbx
call fcn.14007c1b0
test r15d, r15d
jne 0x14008dcc0
mov r13, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
jmp 0x1400881b9
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 0x14008828d
mov rcx, qword [rdi + 0x30]
mov rbx, qword [rcx]
mov rsi, qword [rbx]
call qword [rsi + 0x48]
mov rcx, qword [rsp + 0x78]
mov rdx, rbx
mov r15d, eax
mov dword [rsp + 0x54], eax
call fcn.1400833f0
test r15d, r15d
jne 0x14008dcbb
mov rcx, qword [rdi + 0x30]
call qword [rsi + 0x50]
test eax, eax
jne 0x14008b948
mov r8, qword [rsp + 0x60]
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea rax, [r8 + rcx*8]
mov qword [rsp + 0x48], rax
mov r13, rax
jmp 0x14008b94d
mov rcx, qword [rsp + 0x48]
mov edi, dword [r12 + 0x30]
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
test byte [rbx + 0x14], 2
jne 0x14008d5b7
mov byte [rbx + 0x16], 1
jmp 0x14008d5d2
cmp byte [rbx + 0x16], 1
je 0x14008d5d2
mov dl, 1
mov rcx, rbx
call fcn.140053be0
mov r15d, eax
test eax, eax
jne 0x14008dcbb
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 0x14008d5f6
and qword [r12 + 0x30], 0xfffffffffbffffff
mov rdx, rsi
mov rsi, qword [rsp + 0x78]
mov rcx, rsi
call fcn.1400833f0
and dword [rsi + 0xc8], 0xfffffffc
test r15d, r15d
jne 0x14008dcc0
mov r13, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
jmp 0x1400881b9
cmp byte [r12 + 0x67], 0
mov qword [rbp + 0x30], rdi
jne 0x14008e25e
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x14008e03a
mov r10, qword [rbx]
test r10, r10
je 0x14008e03a
cmp qword [r10 + 0x68], 0
mov r13, qword [rsp + 0x48]
movsxd rdx, dword [r13 + 8]
je 0x140087d72
movsxd rax, dword [r13 + 0xc]
movzx edi, byte [r12 + 0x6c]
mov r8, qword [rsi + 0x70]
imul rcx, rax, 0x38
xor eax, eax
add rcx, r11
test edx, edx
jle 0x14008d6b0
nop dword [rax]
nop word [rax + rax]
mov qword [r8 + rax*8], rcx
add rcx, 0x38
inc rax
cmp rax, rdx
jl 0x14008d6a0
movzx eax, byte [r13 + 2]
lea r9, [rbp + 0x30]
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.1400833f0
test r15d, r15d
jne 0x14008d712
cmp dword [r13 + 4], r15d
je 0x14008d6f0
mov rax, qword [rbp + 0x30]
mov qword [r12 + 0x38], rax
inc qword [rsi + 0x38]
test r15d, r15d
jne 0x14008dcc0
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
jmp 0x1400881b9
cmp r15b, 0x13
jne 0x14008d6f0
mov rax, qword [r13 + 0x10]
cmp byte [rax + 0x1c], 0
je 0x14008d6f0
movzx ecx, word [r13 + 2]
cmp ecx, 4
jne 0x14008e072
xor edi, edi
mov r15d, edi
mov dword [rsp + 0x54], edi
jmp 0x140088344
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [rsi + 0x68]
test word [rdx + 0x14], ax
je 0x14008d76c
mov rcx, rdx
call fcn.1400875d0
mov r8, qword [rsp + 0x60]
mov rdx, rax
jmp 0x14008d772
mov word [rdx + 0x14], 4
mov rax, qword [rsp + 0x48]
mov r13, qword [rsp + 0x48]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x20]
mov r10d, dword [rsp + 0x50]
shl rcx, 5
mov rcx, qword [rcx + rax + 8]
mov rax, qword [rcx + 8]
mov ecx, dword [rax + 0x40]
mov qword [rdx], rcx
jmp 0x1400881c0
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, qword [rsi + 0x68]
test word [rbx + 0x14], ax
je 0x14008d7d6
mov rcx, rbx
call fcn.1400875d0
mov rbx, rax
jmp 0x14008d7dc
mov word [rbx + 0x14], 4
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x20]
shl rcx, 5
mov rdi, qword [rcx + rax + 8]
xor eax, eax
mov edx, eax
mov rax, qword [rsp + 0x48]
cmp dword [rax + 0xc], edx
je 0x14008d817
mov rcx, rdi
call fcn.14006d6c0
mov edx, eax
mov rax, qword [rsp + 0x48]
cmp edx, dword [rax + 0xc]
cmovb edx, dword [rax + 0xc]
mov rcx, rdi
call fcn.14006e9f0
mov r13, qword [rsp + 0x48]
movzx r9d, byte [rsp + 0x40]
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov eax, eax
mov qword [rbx], rax
jmp 0x1400881b9
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 0x14008d8a6
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 0x14008d8a6
mov r12, qword [rsp + 0x48]
lea r8, [rbx + 0x30]
lea r8, [r8 + rdx*8]
nop
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 0x14008d880
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 + Ordinal_26]
mov eax, dword [rbx + 0x24]
test eax, eax
je 0x14008d945
jle 0x14008d8fa
mov dl, 1
mov rcx, rdi
call fcn.14007d7b0
mov r8, rax
lea rdx, [0x14029a558]
mov rcx, rsi
call fcn.14007df50
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.1400812b0
xor edi, edi
mov dword [rbx + 0x24], edi
test r15d, r15d
jne 0x14008dcc0
jmp 0x14008833f
mov r15d, dword [rsp + 0x54]
mov r13, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x78]
mov r11, qword [rsp + 0x58]
jmp 0x1400881ae
mov rsi, rax
mov r11, qword [rsp + 0x58]
mov r10d, dword [rsp + 0x50]
mov r13, qword [rsp + 0x48]
jmp 0x1400881b3
mov rsi, qword [rsp + 0x78]
jmp 0x1400881ae
mov r11, rdi
jmp 0x1400881ae
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.0x140087ba0.89
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.140087630
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 0x14008833f
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.140087630
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
mov edx, 1
movzx eax, al
bt r8d, eax
mov r8, qword [rsp + 0x60]
jb 0x14008da36
inc dword [rsi + 0xf4]
jmp 0x140087c38
inc dword [rsi + 0xf0]
mov r11, qword [rsp + 0x58]
movzx r9d, byte [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
jmp case.0x140087ba0.89
movzx eax, byte [r12 + 0x6e]
test al, 0x41
je 0x14008db1e
cmp byte [rsi + 0xc5], 0xfe
je 0x14008db1e
mov r9, qword [r13 + 0x10]
test r9, r9
jne 0x14008da85
mov r9, qword [rsi + 0xf8]
test r9, r9
je 0x14008db1e
test al, 0x40
je 0x14008dab4
mov rdx, r9
mov rcx, rsi
call fcn.140086cc0
mov rcx, qword [r12 + 0x100]
mov rdx, rax
mov rbx, rax
call qword [r12 + 0xf8]
mov rcx, rbx
call fcn.140050580
jmp 0x14008db14
cmp dword [r12 + 0xe4], 1
jle 0x14008dafc
mov r8, r9
lea rdx, str.____s
mov rcx, r12
call fcn.140053240
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.140050820
jmp 0x14008db14
mov rdx, qword [r12 + 0x100]
mov r8, rsi
mov ecx, 1
call qword [r12 + 0xf8]
mov r8, qword [rsp + 0x60]
mov edx, 1
mov rax, qword [rsp + 0x48]
mov r13, qword [rsp + 0x48]
mov eax, dword [rax + 4]
cmp eax, dword [0x1402d69c8]
jl 0x14008db71
cmp byte [r13], 0xb6
je 0x140087db4
cmp dword [rsi + 0x90], 1
jle 0x14008db6f
mov eax, Ordinal_26
nop dword [rax]
mov rcx, qword [rsi + 0x88]
cmp byte [rax + rcx], 0xf
jne 0x14008db61
mov dword [rax + rcx + 4], edi
inc edx
add rax, 0x18
cmp edx, dword [rsi + 0x90]
jl 0x14008db50
mov eax, edi
inc eax
mov dword [r13 + 4], eax
inc dword [rsi + 0xec]
jmp 0x140087c33
mov r15d, dword [rsp + 0x54]
mov r13, qword [rsp + 0x48]
jmp case.0x140087ba0.89
mov r15d, dword [rsp + 0x54]
xor edi, edi
mov rsi, qword [rsp + 0x78]
jmp case.0x140087ba0.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 0x14008dc6a
movzx eax, word [r15 + 2]
mov rcx, rsi
test ax, ax
je 0x14008dc14
mov r8d, eax
lea rdx, str._s_constraint_failed
lea rax, [0x140000000]
mov r8, qword [rax + r8*8 + 0x290070]
call fcn.14007df50
mov r9, qword [r15 + 0x10]
test r9, r9
je 0x14008dc24
mov r8, qword [rsi + 0xa8]
lea rdx, str._z:__s
mov rcx, r12
call fcn.140053240
mov qword [rsi + 0xa8], rax
jmp 0x14008dc24
mov r8, qword [r15 + 0x10]
lea rdx, [0x14029a558]
call fcn.14007df50
mov r9, qword [rsi + 0xf8]
mov rcx, r15
sub rcx, qword [rsp + 0x60]
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.140053460
mov rcx, rsi
call fcn.140080cb0
mov rdi, qword [rsp + 0x48]
mov r15d, eax
mov rbx, qword [rsp + 0x68]
mov r13d, 1
mov r14, qword [rsp + 0x70]
cmp eax, 5
jne 0x14008dc97
mov dword [rsi + 0x34], eax
jmp 0x14008de01
cmp dword [rsi + 0x34], 0
mov r15d, 0x65
cmovne r15d, r13d
jmp 0x14008de01
mov ecx, 0x17962
call fcn.14011b5b0
mov r15d, eax
mov r12, qword [rbp - 0x80]
mov rsi, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x48]
mov r13d, 1
mov eax, listen
mov rbx, qword [rsp + 0x68]
mov r14, qword [rsp + 0x70]
cmp byte [r12 + 0x67], 0
je 0x14008e2b2
mov r15d, 7
jmp 0x14008e2e8
mov r12, qword [rbp - 0x80]
cmp eax, 7
je 0x14008e25e
cmp eax, 0x12
je 0x14008dee1
jmp 0x14008dcc0
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.1400879e0
mov rsi, qword [rsp + 0x78]
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, [0x140000000]
mov r9, qword [rax + rbx*8 + 0x2d8590]
call fcn.14007df50
mov r15d, 0xc13
mov rdi, r13
jmp 0x14008dcc5
lea rdx, str.cannot_open_savepoint___SQL_statements_in_progress
mov rcx, rsi
call fcn.14007df50
mov r15d, 5
jmp 0x14008dcc0
lea rdx, str.cannot_release_savepoint___SQL_statements_in_progress
mov rcx, rsi
call fcn.14007df50
mov r15d, 5
jmp 0x14008dcc0
mov byte [r12 + 0x65], 0
jmp 0x14008dcc0
mov rdi, qword [rsp + 0x48]
movabs rax, 0x2aaaaaaaaaaaaaab
mov rcx, rdi
mov r15d, 5
sub rcx, qword [rsp + 0x60]
imul rcx
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 0x14008ddf1
mov r15d, 0x65
mov rdi, qword [rsp + 0x48]
mov r13d, 1
mov rbx, qword [rsp + 0x68]
mov r14, qword [rsp + 0x70]
cmp r14, rbx
jb 0x14008e3c9
mov rdx, qword [r12 + 0x210]
test rdx, rdx
je 0x14008e3c9
mov eax, dword [r12 + 0x220]
mov rcx, qword [r12 + 0x218]
add rbx, rax
call rdx
test eax, eax
je 0x14008de01
mov rbx, 0xffffffffffffffff
mov eax, listen
mov r15d, 9
jmp 0x14008dcda
bt rax, 0x14
mov r15d, 8
mov eax, listen
mov rdi, rcx
cmovae r15d, eax
mov r13d, 1
jmp 0x14008dcd0
mov rdi, qword [rsp + 0x48]
mov r13d, 1
mov rbx, qword [rsp + 0x68]
mov r14, qword [rsp + 0x70]
cmp r15b, 5
jne 0x1400883f7
mov rcx, rdi
mov dword [rsi + 0x34], r15d
sub rcx, qword [rsp + 0x60]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rsi + 0x30], edx
jmp 0x14008de01
mov r15d, 0x204
jmp 0x14008dcc0
mov rcx, qword [rbx + 0x10]
call fcn.14006e4c0
mov rdi, qword [rsp + 0x48]
jmp 0x14008dccb
mov r12, r8
mov rsi, qword [rsp + 0x78]
lea rdx, str.string_or_blob_too_big
mov rcx, rsi
call fcn.14007df50
mov r15d, reloc.WS2_32.dll_select
jmp 0x14008dcc0
lea r8, str.index_corruption
mov edx, 0x186aa
mov ecx, 0x30b
call fcn.14011b580
mov r15d, eax
mov rdi, r13
jmp 0x14008dcc5
lea rax, [0x14029e1d4]
mov r9d, 0x1877a
lea r8, str.database_corruption
mov qword [rsp + 0x20], rax
lea rdx, str._s_at_line__d_of___.10s_
mov ecx, listen
call fcn.140053460
mov rdi, qword [rsp + 0x48]
mov eax, listen
mov r15d, eax
mov r13d, 1
jmp 0x14008dcd0
mov rdi, qword [rsp + 0x48]
mov r15d, 6
mov byte [rsi + 0xc4], 2
jmp 0x14008dccb
lea rdx, [0x14029a558]
mov rcx, rsi
call fcn.14007df50
mov rcx, qword [rbp - 0x68]
call fcn.140050580
mov rbx, qword [rsp + 0x68]
cmp r15d, 7
je 0x14008e263
mov rdi, qword [rsp + 0x48]
mov eax, listen
mov r13d, 1
jmp 0x14008dcd5
call fcn.1400aee60
jmp 0x14008e25e
mov rcx, qword [rbp - 0x58]
call fcn.140050580
jmp 0x14008dcc0
mov r15d, edx
mov rcx, rsi
lea rdx, str.too_many_levels_of_trigger_recursion
call fcn.14007df50
jmp 0x14008dcc0
call fcn.140083a50
mov r8, rax
lea rdx, [0x14029a558]
mov rcx, rsi
call fcn.14007df50
jmp 0x14008dcc0
mov rsi, qword [rsp + 0x78]
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.14007df50
mov rdi, qword [rsp + 0x48]
jmp 0x14008dccb
call qword [rdi + gethostname]
jmp 0x14008e25e
mov r15d, 6
jmp 0x14008dcc0
mov rcx, qword [rbp - 0x68]
call fcn.140050580
mov rsi, qword [rsp + 0x78]
mov rdi, r13
jmp 0x14008dcc5
mov rsi, qword [rsp + 0x78]
mov rbx, 0xffffffffffffffff
mov r15d, 9
jmp 0x14008df9c
movzx eax, cl
cmp ecx, 5
mov ecx, 2
mov rdi, r13
cmove eax, ecx
mov byte [rsi + 0xc4], al
jmp 0x14008dcc5
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 0x14008e25e
test byte [r12 + 0x6e], 4
je 0x14008e0e5
mov rdx, qword [r12 + 0x100]
xor r9d, r9d
mov r8, rsi
mov ecx, 4
call qword [r12 + 0xf8]
mov r8, qword [rsp + 0x60]
mov rcx, r15
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, r8
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 0x14008ddec
mov r15, qword [rsp + 0x48]
movzx eax, byte [r12 + 0x65]
mov ebx, dword [r15 + 4]
mov ecx, dword [r15 + 8]
cmp ebx, eax
je 0x14008e20c
test ecx, ecx
je 0x14008e146
mov edx, 0x204
mov rcx, r12
call fcn.140117ff0
mov al, 1
jmp 0x14008e18a
test ebx, ebx
je 0x14008e16f
cmp dword [r12 + 0xe0], 0
jle 0x14008e16f
lea rdx, str.cannot_commit_transaction___SQL_statements_in_progress
mov rcx, rsi
call fcn.14007df50
mov r15d, 5
jmp 0x14008dcc0
mov rcx, rsi
call fcn.140080c40
mov r15d, eax
test eax, eax
jne 0x14008ddec
mov r15, qword [rsp + 0x48]
movzx eax, bl
mov rcx, rsi
mov byte [r12 + 0x65], al
call fcn.140080cb0
cmp eax, 5
jne 0x14008e1e6
mov rdi, qword [rsp + 0x48]
mov rcx, r15
sub rcx, qword [rsp + 0x60]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov r13d, 1
mov r15d, 5
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 0x14008ddf7
mov rcx, r12
call fcn.140117780
cmp dword [rsi + 0x34], 0
mov r15d, 0x65
mov rdi, qword [rsp + 0x48]
mov r13d, 1
cmovne r15d, r13d
jmp 0x14008ddf7
test ebx, ebx
jne 0x14008e224
lea rdx, str.cannot_start_a_transaction_within_a_transaction
mov rcx, rsi
call fcn.14007df50
jmp 0x140089f40
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.14007df50
jmp 0x140089f40
mov rsi, qword [rsp + 0x78]
mov r15d, 9
jmp 0x14008df9c
mov r12, qword [rbp - 0x80]
mov rsi, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x68]
mov rcx, r12
call fcn.140050e40
lea rdx, str.out_of_memory
mov rcx, rsi
call fcn.14007df50
mov r15d, 7
jmp 0x14008df9c
mov r15d, dword [rsp + 0x54]
jmp 0x14008dcb7
mov r12, qword [rbp - 0x80]
jmp 0x14008dcc0
mov rdi, qword [rsp + 0x48]
mov r13, rdx
jmp 0x14008dccb
mov rsi, qword [rsp + 0x78]
mov rdi, rbx
jmp 0x14008dcc5
cmp r15d, 0x210a
jne 0x14008e2e8
lea rcx, [0x14029e1d4]
mov r9d, 0x19073
mov qword [rsp + 0x20], rcx
lea r8, str.database_corruption
mov ecx, eax
lea rdx, str._s_at_line__d_of___.10s_
call fcn.140053460
mov r15d, recv
cmp qword [rsi + 0xa8], 0
jne 0x14008e315
cmp r15d, 0xc0a
je 0x14008e315
mov ecx, r15d
call fcn.140118160
mov r8, rax
lea rdx, [0x14029a558]
mov rcx, rsi
call fcn.14007df50
mov edx, r15d
mov dword [rsi + 0x34], r15d
mov rcx, r12
call fcn.140054260
mov r9, qword [rsi + 0xf8]
mov rcx, rdi
sub rcx, qword [rsp + 0x60]
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.140053460
cmp byte [rsi + 0xc7], 2
jne 0x14008e37a
mov rcx, rsi
call fcn.140080cb0
cmp r15d, 0xc0a
jne 0x14008e38d
mov rcx, r12
call fcn.140050e40
jmp 0x14008e3aa
cmp r15d, 0xb
jne 0x14008e3aa
cmp byte [r12 + 0x65], 0
jne 0x14008e3aa
movabs rax, 0x200000000
or qword [r12 + 0x30], rax
movzx eax, byte [rbp - 0x78]
mov r15d, r13d
test al, al
je 0x14008de01
lea edx, [rax - 1]
mov rcx, r12
call fcn.1400aedd0
jmp 0x14008de01
add dword [rsi + 0xe4], r14d
cmp dword [rsi + 0xd0], 0
movaps xmm10, xmmword [rsp + 0x1e0]
movaps xmm9, xmmword [rsp + 0x1f0]
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 0x14008e434
mov rcx, rsi
call fcn.14007f3a0
mov eax, r15d
mov rcx, qword [rbp + 0xd8]
xor rcx, rsp
call fcn.1401e2e90
add rsp, 0x240
pop r15
pop rsi
pop rbp
ret