Function at 0x1401ef420
Capabilities:
Reference sql statements
Resolve function by parsing pe exports

Disassembly:
mov r11, rsp
push rbp
push rbx
lea rbp, [r11 - 0x2a8]
sub rsp, 0x398
mov rax, qword [0x1402cecf8]
xor rax, rsp
mov qword [rbp + 0x260], rax
mov qword [r11 + 0x10], rsi
mov rax, rcx
mov qword [r11 + 0x18], rdi
xor edx, edx
mov qword [r11 + 0x20], r12
mov edi, edx
mov qword [rsp + 0x48], rcx
mov ebx, edx
mov rcx, qword [rcx + 0x88]
mov r12, qword [rax]
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x38], rcx
xor cl, cl
mov qword [r11 - 0x18], r13
movzx esi, byte [r12 + 0x5e]
mov qword [r11 - 0x20], r14
mov r14, qword [rax + 0x68]
mov byte [rsp + 0x70], cl
mov rcx, rax
mov byte [rsp + 0x30], sil
mov qword [r11 - 0x28], r15
mov dword [rsp + 0x40], edx
mov qword [rsp + 0x68], r12
mov dword [rsp + 0x50], edx
mov dword [rbp - 0x64], edx
mov qword [rsp + 0x60], r14
call fcn.1401ef2d0
mov eax, 0xffffffff
mov r11, qword [rsp + 0x48]
cmp qword [r12 + 0x1e0], rbx
je 0x1401ef4e2
mov r13d, dword [r12 + 0x1f0]
xor edx, edx
mov eax, dword [r11 + 0xe4]
div r13d
sub r13d, edx
mov dword [rsp + 0x54], r13d
jmp 0x1401ef4e9
mov r13d, eax
mov dword [rsp + 0x54], eax
cmp dword [r11 + 0x38], 7
mov r8d, 1
movaps xmmword [rsp + 0x370], xmm6
je 0x1401f67cd
xor r10d, r10d
mov dword [r11 + 0x38], r10d
mov qword [r11 + 0x48], r10
mov qword [r11 + 0xa0], r10
mov dword [r12 + 0x268], r10d
mov eax, dword [r12 + 0x170]
test eax, eax
jne 0x1401f6794
movsxd rax, dword [r11 + 0x34]
xorps xmm6, xmm6
mov r9, qword [rsp + 0x58]
mov edx, dword [rbp - 0x30]
mov dword [rbp - 0x70], edx
lea rcx, [rax + rax*2]
lea r15, [r9 + rcx*8]
lea rcx, [0x140000000]
inc ebx
mov qword [rsp + 0x38], r15
mov dword [rbp - 0x64], ebx
movzx ebx, byte [r15]
cmp ebx, 0xaa
ja case.default.0x1401ef578
mov ecx, dword [rcx + rbx*4 + 0x1f69a8]
lea rax, [0x140000000]
add rcx, rax
jmp rcx
mov rcx, qword [rsp + 0x38]
mov r15, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
sub rcx, r9
imul r8, rax, 0x38
mov eax, 4
mov word [r8 + r14 + 8], ax
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
movsxd rax, edx
mov qword [r8 + r14], rax
jmp 0x1401f0e21
movsxd rax, dword [r15 + 4]
imul rdx, rax, 0x38
add rdx, r14
mov rax, qword [rdx]
lea rcx, [rax + rax*2]
mov eax, 0x80
mov word [rdx + 8], ax
lea r15, [r9 + rcx*8]
jmp case.0x1401ef578.85
movsxd rax, dword [r15 + 4]
imul rcx, rax, 0x38
mov eax, dword [r15 + 0xc]
dec eax
cdqe
mov qword [rcx + r14], rax
mov eax, 4
mov word [rcx + r14 + 8], ax
cmp dword [r15 + 8], 0
jne 0x1401f277c
jmp case.0x1401ef578.85
movsxd rax, dword [r15 + 4]
imul rdx, rax, 0x38
add rdx, r14
mov rax, qword [rdx]
lea rcx, [rax + rax*2]
mov eax, dword [r9 + rcx*8 + 8]
dec eax
cdqe
jmp 0x1401ef5cf
mov rbx, qword [rsp + 0x38]
movsxd rax, dword [rbx + 4]
sub rbx, r9
imul r8, rax, 0x38
mov eax, 4
mov word [r8 + r14 + 8], ax
movabs rax, 0x2aaaaaaaaaaaaaab
movsxd rcx, dword [r8 + r14]
imul rbx
lea rcx, [rcx + rcx*2]
sar rdx, 2
lea r15, [r9 + rcx*8]
mov rax, rdx
shr rax, 0x3f
add rdx, rax
movsxd rax, edx
mov qword [r8 + r14], rax
jmp 0x1401efe77
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
test byte [rcx + r14 + 8], 1
je case.0x1401ef578.85
mov rcx, r15
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, r9
imul rcx
mov rbx, rdx
mov rdx, qword [rsp + 0x38]
sar rbx, 2
mov rax, rbx
shr rax, 0x3f
add rbx, rax
mov eax, dword [rdx + 4]
test eax, eax
jne 0x1401f601b
mov rcx, qword [r11 + 0x100]
test rcx, rcx
je 0x1401f601b
mov rax, qword [rcx + 8]
mov qword [r11 + 0x100], rax
dec dword [r11 + 0x110]
mov eax, dword [r11 + 0x3c]
mov dword [r12 + 0x74], eax
add dword [r12 + 0x78], eax
call fcn.1401f7670
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov r9, qword [r11 + 0x88]
cmp dword [r15 + 8], 4
mov qword [rsp + 0x58], r9
jne 0x1401ef726
cdqe
lea rcx, [rax + rax*2]
mov eax, dword [r9 + rcx*8 + 8]
dec eax
mov r14, qword [r11 + 0x68]
cdqe
mov qword [rsp + 0x60], r14
lea rcx, [rax + rax*2]
lea r15, [r9 + rcx*8]
jmp 0x1401efe74
movsxd rax, dword [r15 + 8]
imul rcx, rax, 0x38
mov eax, 0x2400
add rcx, qword [r11 + 0x68]
test word [rcx + 8], ax
je 0x1401ef77a
call fcn.1401acef0
mov r11, qword [rsp + 0x48]
mov rcx, rax
movsxd rax, dword [r15 + 4]
xor r10d, r10d
mov r9, qword [rsp + 0x58]
mov qword [rcx], rax
lea r8d, [r10 + 1]
jmp case.0x1401ef578.85
mov eax, 4
mov word [rcx + 8], ax
movsxd rax, dword [r15 + 4]
mov qword [rcx], rax
jmp case.0x1401ef578.85
movsxd rax, dword [r15 + 8]
imul rdx, rax, 0x38
mov eax, 0x2400
add rdx, qword [r11 + 0x68]
test word [rdx + 8], ax
je 0x1401ef7d1
mov rcx, rdx
call fcn.1401acef0
mov r11, qword [rsp + 0x48]
mov rdx, rax
mov rax, qword [r15 + 0x10]
xor r10d, r10d
mov r9, qword [rsp + 0x58]
mov rcx, qword [rax]
lea r8d, [r10 + 1]
mov qword [rdx], rcx
jmp case.0x1401ef578.85
mov eax, 4
mov word [rdx + 8], ax
mov rax, qword [r15 + 0x10]
mov rcx, qword [rax]
mov qword [rdx], rcx
jmp case.0x1401ef578.85
movsxd rax, dword [r15 + 8]
imul rdx, rax, 0x38
mov eax, 0x2400
add rdx, qword [r11 + 0x68]
test word [rdx + 8], ax
je 0x1401ef81c
mov rcx, rdx
call fcn.1401acef0
mov r11, qword [rsp + 0x48]
xor r10d, r10d
mov r9, qword [rsp + 0x58]
mov rdx, rax
lea r8d, [r10 + 1]
mov eax, 8
mov word [rdx + 8], ax
mov rax, qword [r15 + 0x10]
mov rcx, qword [rax]
mov qword [rdx], rcx
jmp case.0x1401ef578.85
movsxd rax, dword [r15 + 8]
mov r13d, 0x2400
imul rsi, rax, 0x38
add rsi, qword [r11 + 0x68]
test word [rsi + 8], r13w
je 0x1401ef861
mov rcx, rsi
call fcn.1401acef0
xor r10d, r10d
mov rsi, rax
lea r8d, [r10 + 1]
jmp 0x1401ef86a
mov eax, 4
mov word [rsi + 8], ax
mov r11, qword [rsp + 0x38]
mov rcx, qword [r11 + 0x10]
test rcx, rcx
jne 0x1401ef87d
mov eax, r10d
jmp 0x1401ef892
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x1401ef884
and eax, 0x3fffffff
movzx ebx, byte [rsp + 0x30]
mov dword [r11 + 4], eax
cmp bl, 1
je 0x1401ef99a
mov rdi, rcx
test rcx, rcx
jne 0x1401ef8c4
test word [rsi + 8], r13w
je 0x1401ef8bd
mov rcx, rsi
call fcn.14020a910
jmp 0x1401ef92f
mov word [rsi + 8], r8w
jmp 0x1401ef92f
mov rax, qword [rsi + 0x28]
test rax, rax
je 0x1401ef8d3
mov r14d, dword [rax + 0x7c]
jmp 0x1401ef8d9
mov r14d, 0x3b9aca00
mov rbx, 0xffffffffffffffff
inc rbx
cmp byte [rcx + rbx], 0
jne 0x1401ef8e0
btr ebx, 0x1f
test word [rsi + 8], r13w
jne 0x1401ef8fa
cmp dword [rsi + 0x20], 0
je 0x1401ef902
mov rcx, rsi
call fcn.14020a840
mov qword [rsi + 0x10], rdi
xor edx, edx
mov qword [rsi + 0x30], rdx
mov eax, 0xa02
mov dword [rsi + 0xc], ebx
mov word [rsi + 8], ax
mov byte [rsi + 0xa], 1
cmp ebx, r14d
jg 0x1401f64b9
mov r14, qword [rsp + 0x60]
movzx ebx, byte [rsp + 0x30]
test byte [rsi + 8], 2
je 0x1401ef94d
cmp byte [rsi + 0xa], bl
je 0x1401ef94d
movzx edx, bl
mov rcx, rsi
call fcn.1401f9840
test eax, eax
jne 0x1401f67cd
mov r11, qword [rsp + 0x38]
xor r10d, r10d
mov dword [rsi + 0x20], r10d
mov eax, 0x800
or word [rsi + 8], ax
cmp byte [r11 + 1], 0xf9
jne 0x1401ef97d
mov rdx, qword [r11 + 0x10]
mov rcx, r12
call fcn.1401c5d90
mov r11, qword [rsp + 0x38]
xor r10d, r10d
mov edi, dword [rsp + 0x50]
mov byte [r11 + 1], 0xf9
mov rax, qword [rsi + 0x10]
mov qword [r11 + 0x10], rax
mov eax, dword [rsi + 0xc]
mov dword [r11 + 4], eax
mov dword [rsp + 0x40], r10d
cmp eax, dword [r12 + 0x7c]
jg 0x1401f64b9
mov r15, qword [rsp + 0x38]
movzx esi, byte [rsp + 0x30]
mov byte [r11], 0x47
mov r11, qword [rsp + 0x48]
jmp 0x1401ef9c0
mov r13d, 0x2400
movsxd rax, dword [r15 + 8]
imul rdx, rax, 0x38
add rdx, qword [r11 + 0x68]
test word [rdx + 8], r13w
je 0x1401ef9e3
mov rcx, rdx
call fcn.1401acef0
mov r11, qword [rsp + 0x48]
mov rdx, rax
mov eax, 0xa02
xor r10d, r10d
mov word [rdx + 8], ax
mov rax, qword [r15 + 0x10]
mov qword [rdx + 0x10], rax
mov eax, dword [r15 + 4]
mov dword [rdx + 0xc], eax
mov byte [rdx + 0xa], sil
movsxd rax, dword [r15 + 0xc]
test eax, eax
jle 0x1401f5dbc
imul rcx, rax, 0x38
movzx eax, word [r15 + 2]
cmp qword [rcx + r14], rax
jne 0x1401f5dbc
mov r9, qword [rsp + 0x58]
mov eax, 0xa10
mov word [rdx + 8], ax
jmp 0x1401efe77
mov rbx, qword [rsp + 0x38]
mov r13d, 0x2400
movsxd rax, dword [rbx + 8]
imul rcx, rax, 0x38
add rcx, qword [r11 + 0x68]
test word [rcx + 8], r13w
je 0x1401efa68
call fcn.1401acef0
mov r11, qword [rsp + 0x48]
xor r10d, r10d
mov rcx, rax
lea r8d, [r10 + 1]
jmp 0x1401efa71
mov eax, 4
mov word [rcx + 8], ax
cmp dword [rbx + 4], 0
mov esi, r8d
mov edi, dword [rbx + 0xc]
mov edx, 0x101
mov eax, dword [rbx + 8]
cmovne si, dx
sub edi, eax
mov word [rcx + 8], si
mov dword [rcx + 0xc], r10d
lea rbx, [rcx + 8]
test edi, edi
jle 0x1401f5e33
nop dword [rax]
test word [rbx + 0x38], r13w
lea rbx, [rbx + 0x38]
je 0x1401efab7
lea rcx, [rbx - 8]
call fcn.14020a910
xor r10d, r10d
dec edi
mov word [rbx], si
mov dword [rbx + 4], r10d
test edi, edi
jg 0x1401efaa0
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
movzx esi, byte [rsp + 0x30]
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
jmp 0x1401efe77
movsxd rax, dword [r15 + 4]
imul rcx, rax, 0x38
mov eax, 0xff41
add rcx, r14
and word [rcx + 8], ax
or word [rcx + 8], 1
jmp case.0x1401ef578.85
mov rbx, qword [rsp + 0x38]
mov r13d, 0x2400
movsxd rax, dword [rbx + 8]
imul r14, rax, 0x38
add r14, qword [r11 + 0x68]
test word [r14 + 8], r13w
je 0x1401efb31
mov rcx, r14
call fcn.1401acef0
xor r10d, r10d
mov r14, rax
lea r8d, [r10 + 1]
jmp 0x1401efb3b
mov eax, 4
mov word [r14 + 8], ax
mov rdi, qword [rbx + 0x10]
mov ebx, dword [rbx + 4]
test rdi, rdi
jne 0x1401efb65
test word [r14 + 8], r13w
je 0x1401efb5b
mov rcx, r14
call fcn.14020a910
jmp 0x1401efbe5
mov word [r14 + 8], r8w
jmp 0x1401efbeb
mov rax, qword [r14 + 0x28]
test rax, rax
je 0x1401efb73
mov ecx, dword [rax + 0x7c]
jmp 0x1401efb78
mov ecx, 0x3b9aca00
mov esi, reloc.WS2_32.dll_recv
test ebx, ebx
jns 0x1401efbaf
movsxd rdx, ecx
mov ebx, r10d
test ecx, ecx
js 0x1401efbaa
mov rcx, rdi
nop
movzx eax, byte [rcx + 1]
or al, byte [rcx]
je 0x1401efbaa
add rcx, 2
add ebx, 2
mov rax, rcx
sub rax, rdi
cmp rax, rdx
jle 0x1401efb90
mov esi, 0x210
test word [r14 + 8], r13w
jne 0x1401efbbd
cmp dword [r14 + 0x20], 0
je 0x1401efbc5
mov rcx, r14
call fcn.14020a840
mov qword [r14 + 0x10], rdi
xor edx, edx
mov qword [r14 + 0x30], rdx
mov eax, 0x800
or si, ax
mov dword [r14 + 0xc], ebx
mov word [r14 + 8], si
movzx esi, byte [rsp + 0x30]
mov r8d, 1
mov r11, qword [rsp + 0x48]
xor r10d, r10d
mov r15, qword [rsp + 0x38]
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
mov byte [r14 + 0xa], sil
mov r14, qword [rsp + 0x60]
jmp case.0x1401ef578.85
mov rbx, qword [rsp + 0x38]
mov rsi, qword [r11 + 0x80]
movsxd rax, dword [rbx + 4]
imul rdi, rax, 0x38
movzx eax, word [rdi + rsi - 0x30]
test al, 0x12
je 0x1401efc4c
mov ecx, dword [rdi + rsi - 0x2c]
mov edx, 0x4000
test dx, ax
je 0x1401efc3e
add ecx, dword [rdi + rsi - 0x38]
mov rax, qword [rdi + rsi - 0x10]
cmp ecx, dword [rax + 0x7c]
jg 0x1401f64be
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
mov eax, 0x2400
add rbx, r14
test word [rbx + 8], ax
je 0x1401efc7b
mov rcx, rbx
call fcn.14020a910
mov r11, qword [rsp + 0x48]
xor r10d, r10d
mov r9, qword [rsp + 0x58]
lea r8d, [r10 + 1]
movups xmm0, xmmword [rdi + rsi - 0x38]
mov r15, qword [rsp + 0x38]
mov ecx, 0xebff
movups xmmword [rbx], xmm0
movsd xmm1, qword [rdi + rsi - 0x28]
movzx esi, byte [rsp + 0x30]
mov edi, dword [rsp + 0x50]
movsd qword [rbx + 0x10], xmm1
movzx eax, word [rbx + 8]
and ax, cx
mov ecx, 0x840
or ax, cx
mov word [rbx + 8], ax
jmp case.0x1401ef578.85
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
mov esi, dword [rcx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rdi, r14
add rbx, r14
nop word [rax + rax]
mov rdx, rdi
mov rcx, rbx
call fcn.1401f90a0
mov eax, 0x1000
test word [rbx + 8], ax
je 0x1401efd06
mov rcx, rbx
call fcn.1401f9040
test eax, eax
jne 0x1401f67cd
add rdi, 0x38
add rbx, 0x38
sub esi, 1
jne 0x1401efce0
mov r15, qword [rsp + 0x38]
movzx esi, byte [rsp + 0x30]
jmp 0x1401efe66
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
mov esi, dword [rcx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
add rdi, r14
imul rbx, rax, 0x38
add rbx, r14
mov r14d, 0x1000
nop word [rax + rax]
mov r8d, r14d
mov rdx, rdi
mov rcx, rbx
call fcn.1401f96a0
test word [rbx + 8], r14w
je 0x1401efd75
mov rcx, rbx
call fcn.1401f9040
test eax, eax
jne 0x1401f67cd
mov eax, esi
dec esi
test eax, eax
je 0x1401f5da6
add rbx, 0x38
add rdi, 0x38
jmp 0x1401efd50
mov rcx, qword [rsp + 0x38]
mov r8d, 0x1000
movsxd rax, dword [rcx + 4]
imul rdx, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
add rdx, r14
add rcx, r14
call fcn.1401f96a0
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
jmp 0x1401efe6f
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 8]
imul r8, rax, 0x38
movsxd rax, dword [rcx + 4]
imul rcx, rax, 0x38
add r8, r14
mov rax, qword [rcx + r14]
mov ecx, 0x2400
test word [r8 + 8], cx
je 0x1401efdff
mov rdx, rax
mov rcx, r8
call fcn.14020b9e0
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
jmp 0x1401efe6f
mov r15, qword [rsp + 0x38]
mov qword [r8], rax
mov eax, 4
mov word [r8 + 8], ax
jmp 0x1401efe77
mov rbx, qword [rsp + 0x38]
movsxd rax, dword [rbx + 4]
imul r15, rax, 0x38
movsxd rax, dword [rbx + 8]
imul rdi, rax, 0x38
movsxd rax, dword [rbx + 0xc]
add r15, r14
imul rbx, rax, 0x38
add rdi, r14
add rbx, r14
movzx r14d, word [r15 + 8]
movzx eax, byte [rdi + 8]
or al, r14b
test al, 1
je 0x1401efeaf
mov eax, 0x2400
test word [rbx + 8], ax
je 0x1401efe9a
mov rcx, rbx
call fcn.14020a910
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0x38]
mov r11, qword [rsp + 0x48]
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
xor r10d, r10d
mov r8d, 1
lea rcx, [0x140000000]
mov r12, qword [rsp + 0x68]
add r15, 0x18
mov r13d, dword [rsp + 0x54]
mov ebx, dword [rbp - 0x64]
jmp 0x1401ef54d
mov r15, qword [rsp + 0x38]
mov r14, qword [rsp + 0x60]
mov edi, dword [rsp + 0x50]
mov word [rbx + 8], r8w
jmp case.0x1401ef578.85
test r14b, 0x12
jne 0x1401efee2
xor r8d, r8d
movzx edx, sil
mov rcx, r15
call fcn.1401f96e0
test eax, eax
jne 0x1401f67cd
movzx r14d, word [r15 + 8]
mov r13d, 0xfffd
and r14w, r13w
mov eax, 0x4000
jmp 0x1401efefd
mov eax, 0x4000
test ax, r14w
je 0x1401efef7
mov rcx, r15
call fcn.1401f8b00
jmp 0x1401efec4
mov r13d, 0xfffd
movzx esi, word [rdi + 8]
test sil, 0x12
jne 0x1401eff19
movzx edx, byte [rsp + 0x30]
xor r8d, r8d
mov rcx, rdi
call fcn.1401f96e0
jmp 0x1401eff26
test ax, si
je 0x1401eff36
mov rcx, rdi
call fcn.1401f8b00
test eax, eax
jne 0x1401f67cd
movzx esi, word [rdi + 8]
and si, r13w
mov r8, qword [rsp + 0x68]
mov r13d, dword [rdi + 0xc]
add r13d, dword [r15 + 0xc]
movsxd r12, r13d
movsxd rax, dword [r8 + 0x7c]
cmp r12, rax
jg 0x1401f64b6
xor edx, edx
mov rcx, rbx
mov r8d, edx
cmp rbx, rdi
lea edx, [r13 + 3]
sete r8b
call fcn.1401f8de0
test eax, eax
jne 0x1401f67c8
mov eax, 0x3e40
and word [rbx + 8], ax
or word [rbx + 8], 2
cmp rbx, rdi
je 0x1401eff9b
movsxd r8, dword [rdi + 0xc]
mov rdx, qword [rdi + 0x10]
mov rcx, qword [rbx + 0x10]
call sub.VCRUNTIME140.dll_memcpy
mov word [rdi + 8], si
movsxd rcx, dword [rdi + 0xc]
add rcx, qword [rbx + 0x10]
movsxd r8, dword [r15 + 0xc]
mov rdx, qword [r15 + 0x10]
call sub.VCRUNTIME140.dll_memcpy
movzx esi, byte [rsp + 0x30]
mov word [r15 + 8], r14w
mov rax, qword [rbx + 0x10]
mov byte [r12 + rax], 0
mov rax, qword [rbx + 0x10]
mov byte [r12 + rax + 1], 0
mov rax, qword [rbx + 0x10]
mov byte [r12 + rax + 2], 0
mov eax, 0x200
or word [rbx + 8], ax
mov dword [rbx + 0xc], r13d
mov byte [rbx + 0xa], sil
jmp 0x1401efe5c
mov r11, qword [rsp + 0x38]
movsxd rax, dword [r11 + 4]
imul rsi, rax, 0x38
add rsi, r14
movzx eax, word [rsi + 8]
movzx ebx, ax
and bx, 0x2c
jne 0x1401f0026
test al, 0x12
je 0x1401f0023
mov rcx, rsi
call fcn.1401995c0
mov r11, qword [rsp + 0x38]
movzx ebx, ax
xor r10d, r10d
jmp 0x1401f0026
mov ebx, r10d
movsxd rax, dword [r11 + 8]
imul rdi, rax, 0x38
add rdi, r14
movzx edx, word [rdi + 8]
test dl, 0x2c
je 0x1401f0040
movzx r8d, dx
jmp 0x1401f005f
test dl, 0x12
je 0x1401f005c
mov rcx, rdi
call fcn.1401995c0
movzx edx, word [rdi + 8]
movzx r8d, ax
mov r11, qword [rsp + 0x38]
jmp 0x1401f005f
mov r8d, r10d
movsxd rax, dword [r11 + 0xc]
and r8b, bl
movzx r10d, word [rsi + 8]
imul rcx, rax, 0x38
movzx eax, r10w
add r14, rcx
or ax, dx
test r8b, 4
je 0x1401f0287
movzx ecx, byte [r11]
mov r9, qword [rsi]
mov r8, qword [rdi]
sub ecx, 0x69
je 0x1401f021e
sub ecx, 1
je 0x1401f01a0
sub ecx, 1
je 0x1401f0102
cmp ecx, 1
je 0x1401f00d0
test r9, r9
je 0x1401f03c8
cmp r9, 0xffffffffffffffff
mov rax, r8
mov r12d, 1
cqo
cmove r9, r12
idiv r9
mov r8, rdx
jmp 0x1401f025a
test r9, r9
je 0x1401f03c8
cmp r9, 0xffffffffffffffff
jne 0x1401f00f2
movabs rax, 0x8000000000000000
cmp r8, rax
je 0x1401f028f
mov rax, r8
cqo
idiv r9
mov r8, rax
jmp 0x1401f025a
test r9, r9
jle 0x1401f0138
movabs rax, 0x7fffffffffffffff
cqo
idiv r9
cmp r8, rax
jg 0x1401f028f
movabs rax, 0x8000000000000000
cqo
idiv r9
cmp r8, rax
jge 0x1401f0197
jmp 0x1401f028f
jns 0x1401f0197
test r8, r8
jle 0x1401f0158
movabs rax, 0x8000000000000000
cqo
idiv r8
cmp r9, rax
jge 0x1401f0197
jmp 0x1401f028f
jns 0x1401f0197
movabs rax, 0x8000000000000000
cmp r9, rax
je 0x1401f028f
cmp r8, rax
je 0x1401f028f
movabs rax, 0x8000000000000001
cqo
idiv r9
mov rcx, rax
mov rax, r8
neg rax
cmp rax, rcx
jg 0x1401f028f
imul r8, r9
jmp 0x1401f025a
movabs rax, 0x8000000000000000
cmp r9, rax
jne 0x1401f01c0
test r8, r8
jns 0x1401f028f
sub r8, rax
jmp 0x1401f025a
neg r9
js 0x1401f01e7
test r8, r8
jle 0x1401f020d
movabs rax, 0x7fffffffffffffff
sub rax, r8
cmp rax, r9
jge 0x1401f020d
mov r12d, 1
mov eax, r12d
jmp 0x1401f0218
test r8, r8
jns 0x1401f020d
movabs rax, 0x8000000000000001
lea rcx, [r9 + 1]
sub rax, r8
cmp rax, rcx
jle 0x1401f020d
mov r12d, 1
mov eax, r12d
jmp 0x1401f0218
add r8, r9
xor edx, edx
mov eax, edx
lea r12d, [rdx + 1]
test eax, eax
jne 0x1401f0295
jmp 0x1401f025a
test r9, r9
js 0x1401f023c
test r8, r8
jle 0x1401f0257
movabs rax, 0x7fffffffffffffff
sub rax, r8
cmp rax, r9
jge 0x1401f0257
jmp 0x1401f028f
test r8, r8
jns 0x1401f0257
movabs rax, 0x8000000000000001
lea rcx, [r9 + 1]
sub rax, r8
cmp rax, rcx
jg 0x1401f028f
add r8, r9
mov r15, qword [rsp + 0x38]
mov ecx, 0x3e40
movzx esi, byte [rsp + 0x30]
mov qword [r14], r8
movzx eax, word [r14 + 8]
and ax, cx
or ax, 4
mov word [r14 + 8], ax
mov r14, qword [rsp + 0x60]
jmp 0x1401efe66
test al, 1
jne 0x1401f03c8
mov r12d, 1
test r10b, 8
je 0x1401f02a1
movsd xmm2, qword [rsi]
jmp 0x1401f02cc
test r10b, 0x24
je 0x1401f02b1
xorps xmm2, xmm2
cvtsi2sd xmm2, qword [rsi]
jmp 0x1401f02cc
test r10b, 0x12
je 0x1401f02c9
mov rcx, rsi
call fcn.1401a9e40
mov r11, qword [rsp + 0x38]
movaps xmm2, xmm0
jmp 0x1401f02cc
movaps xmm2, xmm6
movzx eax, word [rdi + 8]
test al, 8
je 0x1401f02da
movsd xmm0, qword [rdi]
jmp 0x1401f02fe
test al, 0x24
je 0x1401f02e8
xorps xmm0, xmm0
cvtsi2sd xmm0, qword [rdi]
jmp 0x1401f02fe
test al, 0x12
je 0x1401f02fb
mov rcx, rdi
call fcn.1401a9e40
mov r11, qword [rsp + 0x38]
jmp 0x1401f02fe
movaps xmm0, xmm6
movzx ecx, byte [r11]
sub ecx, 0x69
je 0x1401f0363
sub ecx, 1
je 0x1401f035d
sub ecx, 1
je 0x1401f0357
cmp ecx, 1
je 0x1401f0349
mov rcx, rsi
call fcn.140182db0
mov rcx, rdi
mov rbx, rax
call fcn.140182db0
test rbx, rbx
je 0x1401f03c8
cmp rbx, 0xffffffffffffffff
cqo
xorps xmm0, xmm0
cmove rbx, r12
idiv rbx
cvtsi2sd xmm0, rdx
jmp 0x1401f0367
ucomisd xmm2, xmm6
jp 0x1401f0351
je 0x1401f03c8
divsd xmm0, xmm2
jmp 0x1401f0367
mulsd xmm0, xmm2
jmp 0x1401f0367
subsd xmm0, xmm2
jmp 0x1401f0367
addsd xmm0, xmm2
movabs rcx, 0xfffffffffffff
movsd qword [rsp + 0x78], xmm0
mov rax, qword [rsp + 0x78]
movabs rdx, 0x7ff0000000000000
test rcx, rax
setne cl
and rax, rdx
cmp rax, rdx
sete al
test al, cl
jne 0x1401f03c8
mov r15, qword [rsp + 0x38]
mov ecx, 0x3e40
movzx esi, byte [rsp + 0x30]
movsd qword [r14], xmm0
movzx eax, word [r14 + 8]
and ax, cx
or ax, 8
mov word [r14 + 8], ax
mov r14, qword [rsp + 0x60]
jmp 0x1401efe66
mov eax, 0x2400
test word [r14 + 8], ax
je 0x1401f03f0
mov rcx, r14
call fcn.14020a910
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0x38]
movzx esi, byte [rsp + 0x30]
jmp 0x1401efe66
mov r11, qword [rsp + 0x48]
mov r8d, 1
mov r15, qword [rsp + 0x38]
xor r10d, r10d
movzx esi, byte [rsp + 0x30]
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
mov word [r14 + 8], r8w
mov r14, qword [rsp + 0x60]
jmp case.0x1401ef578.85
movsxd rax, dword [r15 + 4]
test eax, eax
je case.0x1401ef578.85
imul rcx, rax, 0x38
mov eax, 0x2400
add rcx, r14
test word [rcx + 8], ax
je 0x1401f044f
xor edx, edx
call fcn.14020b9e0
mov r11, qword [rsp + 0x48]
jmp 0x1401efe6f
mov eax, 4
mov qword [rcx], r10
mov word [rcx + 8], ax
jmp case.0x1401ef578.85
mov rcx, qword [rsp + 0x38]
mov r15, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
movsxd rax, dword [r15 + 0xc]
add rdi, r14
imul rsi, rax, 0x38
add rcx, r14
add rsi, r14
movzx eax, byte [rcx + 8]
or al, byte [rdi + 8]
test al, 1
je 0x1401f04c6
mov eax, 0x2400
test word [rsi + 8], ax
je 0x1401f04b3
mov rcx, rsi
call fcn.14020a910
movzx esi, byte [rsp + 0x30]
jmp 0x1401efe66
mov edi, dword [rsp + 0x50]
mov word [rsi + 8], r8w
movzx esi, byte [rsp + 0x30]
jmp case.0x1401ef578.85
call fcn.140182db0
mov rcx, rdi
mov rbx, rax
call fcn.140182db0
movzx edx, byte [r15]
mov rcx, rax
cmp dl, 0x65
jne 0x1401f04e7
and rbx, rax
jmp 0x1401f055c
cmp dl, 0x66
jne 0x1401f04f1
or rbx, rcx
jmp 0x1401f055c
test rcx, rcx
je 0x1401f055c
jns 0x1401f050b
mov eax, 0xcf
sub al, dl
movzx edx, al
cmp rcx, 0xffffffffffffffc0
jle 0x1401f0511
neg rcx
cmp rcx, 0x40
jl 0x1401f052a
test rbx, rbx
jns 0x1401f0524
cmp dl, 0x67
je 0x1401f0524
mov rbx, 0xffffffffffffffff
jmp 0x1401f055c
xor edx, edx
mov ebx, edx
jmp 0x1401f055c
cmp dl, 0x67
jne 0x1401f0537
shl rbx, cl
mov r8, rbx
jmp 0x1401f0559
mov r8, rbx
shr r8, cl
test rbx, rbx
jns 0x1401f0559
mov eax, 0x40
mov rdx, 0xffffffffffffffff
sub al, cl
movzx ecx, al
shl rdx, cl
or r8, rdx
mov rbx, r8
mov qword [rsi], rbx
mov eax, 0x3e40
and word [rsi + 8], ax
or word [rsi + 8], 4
movzx esi, byte [rsp + 0x30]
jmp 0x1401efe66
movsxd rax, dword [r15 + 4]
imul rbx, rax, 0x38
add rbx, r14
mov rcx, rbx
call fcn.1401f8fe0
movsxd rax, dword [r15 + 8]
add qword [rbx], rax
mov r11, qword [rsp + 0x48]
jmp 0x1401efe6f
movsxd rax, dword [r15 + 4]
imul rbx, rax, 0x38
add rbx, r14
movzx eax, word [rbx + 8]
test al, 4
jne 0x1401f05f9
test al, 8
jne 0x1401f05d4
test al, 2
je 0x1401f05dc
mov edx, r8d
mov rcx, rbx
call fcn.1401907f0
mov r11, qword [rsp + 0x48]
xor r10d, r10d
mov r9, qword [rsp + 0x58]
lea r8d, [r10 + 1]
jmp 0x1401f05dc
mov rcx, rbx
call fcn.1401f7f20
movzx eax, word [rbx + 8]
test al, 4
jne 0x1401f05f9
cmp dword [r15 + 8], 0
jne 0x1401f0e27
mov eax, shutdown
jmp 0x1401f6375
mov ecx, 0x3e40
and ax, cx
or ax, 4
mov word [rbx + 8], ax
jmp case.0x1401ef578.85
movsxd rax, dword [r15 + 4]
imul rcx, rax, 0x38
add rcx, r14
test byte [rcx + 8], 0x24
je case.0x1401ef578.85
call fcn.1401f91f0
mov r11, qword [rsp + 0x48]
jmp 0x1401efe6f
movsxd rax, dword [r15 + 4]
imul rbx, rax, 0x38
mov eax, 0x4000
add rbx, r14
test word [rbx + 8], ax
je 0x1401f0658
mov rcx, rbx
call fcn.1401f8b00
test eax, eax
jne 0x1401f6375
movzx edx, byte [r15 + 8]
movzx r8d, sil
mov rcx, rbx
call fcn.1401f8940
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f6375
mov r11, qword [rsp + 0x48]
jmp 0x1401efe6f
mov rcx, qword [rsp + 0x38]
mov r8, qword [rsp + 0x60]
mov r15, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
imul r14, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
movzx ebx, word [rcx + r8 + 8]
lea rsi, [rcx + r8]
add r14, r8
movzx edx, bx
movzx edi, word [r14 + 8]
or dx, di
test dl, 1
je 0x1401f074a
movzx eax, word [r15 + 2]
test al, al
jns 0x1401f06f9
movzx eax, bl
and al, dil
test al, 1
je 0x1401f06e4
mov eax, pe_nt_image_headers64
test ax, bx
jne 0x1401f06e4
mov eax, r10d
jmp 0x1401f0865
movzx eax, bx
not ax
and eax, 1
lea eax, [rax*2 - 1]
jmp 0x1401f0865
test al, 0x20
je 0x1401f0731
movsxd rax, dword [r15 + 8]
mov r14, r8
movzx esi, byte [rsp + 0x30]
imul rcx, rax, 0x38
mov eax, 0x3e40
add rcx, r8
mov r8d, 1
mov edi, r8d
mov dword [rsp + 0x50], r8d
and word [rcx + 8], ax
or word [rcx + 8], r8w
jmp case.0x1401ef578.85
test al, 0x10
jne 0x1401f0e21
movzx esi, byte [rsp + 0x30]
mov r14, r8
mov edi, dword [rsp + 0x50]
jmp 0x1401efe77
movzx eax, byte [r15 + 2]
and al, 0x47
cmp al, 0x43
jb 0x1401f07d4
movzx ecx, bx
test dl, 2
je 0x1401f078f
movzx eax, dil
and al, 0x2e
cmp al, 2
jne 0x1401f0775
xor edx, edx
mov rcx, r14
call fcn.1401907f0
movzx ebx, word [rsi + 8]
movzx eax, bl
movzx ecx, bx
and al, 0x2e
cmp al, 2
jne 0x1401f078f
xor edx, edx
mov rcx, rsi
call fcn.1401907f0
movzx ecx, word [rsi + 8]
movzx eax, byte [r14 + 8]
and al, cl
test al, 4
je 0x1401f0849
mov rcx, qword [rsi]
xor r10d, r10d
mov rdx, qword [r14]
mov r8d, 1
mov r11, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
cmp rcx, rdx
jle 0x1401f07c4
mov eax, r8d
jmp 0x1401f086b
cmp rcx, rdx
mov eax, r10d
setge al
dec eax
jmp 0x1401f086b
cmp al, 0x42
jne 0x1401f0849
movzx r12d, byte [rsp + 0x30]
test dil, 2
jne 0x1401f081c
test dil, 0x2c
je 0x1401f081c
mov r8b, 1
movzx edx, r12b
mov rcx, r14
call fcn.1401f96e0
movzx eax, word [r14 + 8]
mov r13d, 0x3e40
xor ax, di
and ax, r13w
xor di, ax
cmp r14, rsi
jne 0x1401f0822
movzx ebx, di
or bx, 2
jmp 0x1401f0822
mov r13d, 0x3e40
test bl, 2
jne 0x1401f0849
test bl, 0x2c
je 0x1401f0849
mov r8b, 1
movzx edx, r12b
mov rcx, rsi
call fcn.1401f96e0
movzx eax, bx
xor ax, word [rsi + 8]
and ax, r13w
xor bx, ax
mov r8, qword [r15 + 0x10]
mov rdx, r14
mov rcx, rsi
call fcn.1401da410
mov r11, qword [rsp + 0x48]
xor r10d, r10d
mov r9, qword [rsp + 0x58]
mov r8d, 1
movzx ecx, byte [r15]
lea rdx, [0x140000000]
test eax, eax
jns 0x1401f0884
movzx ecx, byte [rcx + rdx + 0x2b4e50]
jmp 0x1401f0898
jne 0x1401f0890
movzx ecx, byte [rcx + rdx + 0x2b4f00]
jmp 0x1401f0898
movzx ecx, byte [rcx + rdx + 0x2b4f54]
mov word [rsi + 8], bx
mov word [r14 + 8], di
movzx edx, cl
movzx ecx, word [r15 + 2]
test cl, 0x20
je 0x1401f08f6
mov dword [rsp + 0x50], eax
mov edi, eax
test cl, 8
je 0x1401f08cb
cmp byte [r15], 0x35
mov eax, r10d
sete al
cmp eax, edx
je 0x1401f5db7
movsxd rax, dword [r15 + 8]
mov r14, qword [rsp + 0x60]
movzx esi, byte [rsp + 0x30]
imul rcx, rax, 0x38
mov eax, 0x3e40
add rcx, r14
and word [rcx + 8], ax
or word [rcx + 8], 4
mov qword [rcx], rdx
jmp case.0x1401ef578.85
test edx, edx
jne 0x1401f277c
mov r14, qword [rsp + 0x60]
movzx esi, byte [rsp + 0x30]
mov edi, dword [rsp + 0x50]
jmp case.0x1401ef578.85
test edi, edi
jne 0x1401f0e27
jmp case.0x1401ef578.85
mov rax, qword [rsp + 0x38]
test byte [rax + 2], 1
jne 0x1401f092e
mov r13, r10
jmp 0x1401f0936
mov r13, qword [rax - 8]
add r13, 4
mov rdx, qword [rax + 0x10]
mov esi, r10d
mov r8d, dword [rax + 4]
mov rbx, r10
mov r9d, dword [rax + 8]
movsxd rax, dword [rax + 0xc]
mov qword [rsp + 0x78], rdx
mov dword [rbp - 0x60], r8d
mov dword [rbp - 0x80], r9d
mov qword [rbp - 0x78], rax
test rax, rax
jle 0x1401f6007
lea r12, [rdx + 0x20]
nop word [rax + rax]
test r13, r13
je 0x1401f097c
mov ecx, dword [r13 + rbx*4]
jmp 0x1401f097e
mov ecx, esi
mov rax, qword [rdx + 0x18]
movzx edi, byte [rbx + rax]
lea eax, [rcx + r9]
movsxd r15, eax
and edi, 1
lea eax, [rcx + r8]
mov r8, qword [r12]
movsxd r14, eax
imul rcx, r14, 0x38
imul rdx, r15, 0x38
add rcx, qword [rsp + 0x60]
add rdx, qword [rsp + 0x60]
call fcn.1401da410
mov dword [rsp + 0x50], eax
mov r8d, eax
test eax, eax
jne 0x1401f09f4
mov rdx, qword [rsp + 0x78]
inc esi
mov r8d, dword [rbp - 0x60]
inc rbx
mov r9d, dword [rbp - 0x80]
add r12, 8
cmp rbx, qword [rbp - 0x78]
jl 0x1401f0970
mov r11, qword [rsp + 0x48]
mov edi, eax
mov r15, qword [rsp + 0x38]
mov r14, qword [rsp + 0x60]
movzx esi, byte [rsp + 0x30]
jmp 0x1401efe6f
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x18]
test byte [rbx + rax], 2
je 0x1401f0a2a
imul rax, r14, 0x38
mov r14, qword [rsp + 0x60]
test byte [rax + r14 + 8], 1
jne 0x1401f0a20
imul rax, r15, 0x38
test byte [rax + r14 + 8], 1
je 0x1401f0a2f
neg r8d
mov dword [rsp + 0x50], r8d
jmp 0x1401f0a2f
mov r14, qword [rsp + 0x60]
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
movzx esi, byte [rsp + 0x30]
test edi, edi
je 0x1401f5d90
neg r8d
mov dword [rsp + 0x50], r8d
mov edi, r8d
jmp 0x1401efe6f
mov r8d, dword [rsp + 0x50]
test r8d, r8d
jns 0x1401f0a66
mov eax, dword [r15 + 4]
jmp 0x1401f0a72
jne 0x1401f0a6e
mov eax, dword [r15 + 8]
jmp 0x1401f0a72
mov eax, dword [r15 + 0xc]
dec eax
mov edi, r8d
movsxd rcx, eax
lea rax, [rcx + rcx*2]
lea r15, [r9 + rax*8]
jmp 0x1401efe77
mov r12, qword [rsp + 0x38]
mov r15d, 2
mov edx, r15d
movsxd rax, dword [r12 + 4]
imul rcx, rax, 0x38
add rcx, r14
call fcn.1401ee600
movsxd rcx, dword [r12 + 8]
mov edx, r15d
imul rcx, rcx, 0x38
mov ebx, eax
add rcx, r14
call fcn.1401ee600
lea rdx, [0x140000000]
lea eax, [rax + rbx*2]
add eax, ebx
cmp byte [r12], 0x2c
cdqe
jne 0x1401f0adb
movzx edx, byte [rax + rdx + 0x2b52b8]
jmp 0x1401f0ae3
movzx edx, byte [rax + rdx + 0x2b52c8]
movsxd rax, dword [r12 + 0xc]
imul rcx, rax, 0x38
add rcx, r14
cmp dl, r15b
jne 0x1401f0b15
movzx eax, word [rcx + 8]
mov edx, 0x3e40
mov r11, qword [rsp + 0x48]
and ax, dx
or ax, 1
mov r15, r12
mov word [rcx + 8], ax
jmp 0x1401efe6f
mov r11, qword [rsp + 0x48]
mov r15, r12
movzx eax, dl
mov edx, 0x3e40
mov qword [rcx], rax
movzx eax, word [rcx + 8]
and ax, dx
or ax, 4
mov word [rcx + 8], ax
jmp 0x1401efe6f
mov r11, qword [rsp + 0x38]
movsxd rax, dword [r11 + 4]
mov edx, dword [r11 + 0xc]
imul rcx, rax, 0x38
add rcx, r14
call fcn.1401ee600
movsxd rcx, eax
mov rax, qword [rsp + 0x38]
movsxd rdx, dword [rax + 0x10]
movsxd rax, dword [rax + 8]
xor rdx, rcx
imul rcx, rax, 0x38
mov eax, 0x2400
add rcx, r14
test word [rcx + 8], ax
je 0x1401f0b8e
call fcn.14020b9e0
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
jmp 0x1401efe6f
mov r11, qword [rsp + 0x48]
mov eax, 4
mov r15, qword [rsp + 0x38]
mov qword [rcx], rdx
mov word [rcx + 8], ax
jmp 0x1401efe6f
mov rbx, qword [rsp + 0x38]
movsxd rax, dword [rbx + 4]
imul rcx, rax, 0x38
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
add rcx, r14
add rbx, r14
test byte [rcx + 8], 1
jne 0x1401f0c21
xor edx, edx
call fcn.1401ee600
xor r10d, r10d
test eax, eax
mov ecx, r10d
mov eax, 0x2400
sete cl
test word [rbx + 8], ax
je 0x1401f0c01
mov rdx, rcx
mov rcx, rbx
call fcn.14020b9e0
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
jmp 0x1401efe6f
mov r11, qword [rsp + 0x48]
mov eax, 4
mov r15, qword [rsp + 0x38]
mov r9, qword [rsp + 0x58]
mov qword [rbx], rcx
mov word [rbx + 8], ax
jmp 0x1401efe77
mov eax, 0x2400
test word [rbx + 8], ax
je 0x1401f0c43
mov rcx, rbx
call fcn.14020a910
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
jmp 0x1401efe6f
mov word [rbx + 8], r8w
mov r15, qword [rsp + 0x38]
jmp case.0x1401ef578.85
mov rbx, qword [rsp + 0x38]
movsxd rax, dword [rbx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
add rdi, r14
mov eax, 0x2400
add rbx, r14
test word [rbx + 8], ax
je 0x1401f0c8a
mov rcx, rbx
call fcn.14020a910
mov r11, qword [rsp + 0x48]
xor r10d, r10d
jmp 0x1401f0c8f
mov word [rbx + 8], r8w
test byte [rdi + 8], 1
jne 0x1401f5d6e
mov eax, 4
mov rcx, rdi
mov word [rbx + 8], ax
call fcn.140182db0
not rax
mov qword [rbx], rax
jmp 0x1401efe61
mov r8, qword [r11 + 0x100]
test r8, r8
je 0x1401f0d20
mov r9, qword [r8 + 0x30]
mov rcx, r15
sub rcx, qword [r11 + 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 0x1401f0e1c
bts eax, edx
mov byte [rcx + r9], al
mov rcx, qword [r11 + 0x88]
mov r9, qword [rsp + 0x58]
mov eax, dword [rcx + 4]
mov dword [r15 + 4], eax
jmp 0x1401efe77
mov rcx, qword [r11 + 0x88]
mov eax, dword [r15 + 4]
cmp dword [rcx + 4], eax
je 0x1401f0e21
mov eax, dword [rcx + 4]
mov dword [r15 + 4], eax
jmp 0x1401efe77
mov r11, qword [rsp + 0x38]
movsxd rax, dword [r11 + 4]
mov edx, dword [r11 + 0xc]
imul rcx, rax, 0x38
add rcx, r14
call fcn.1401ee600
mov r15, qword [rsp + 0x38]
xor r10d, r10d
lea r8d, [r10 + 1]
test eax, eax
jne 0x1401f277c
mov r11, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
jmp case.0x1401ef578.85
mov rax, qword [rsp + 0x38]
mov edx, r10d
cmp dword [rax + 0xc], 0
movsxd rax, dword [rax + 4]
sete dl
imul rcx, rax, 0x38
add rcx, r14
call fcn.1401ee600
mov r15, qword [rsp + 0x38]
xor r10d, r10d
lea r8d, [r10 + 1]
test eax, eax
je 0x1401f277c
mov r11, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
jmp case.0x1401ef578.85
movsxd rax, dword [r15 + 4]
imul rcx, rax, 0x38
test byte [rcx + r14 + 8], 1
jne 0x1401f0e27
jmp case.0x1401ef578.85
movsxd rax, dword [r15 + 4]
imul rcx, rax, 0x38
test byte [rcx + r14 + 8], 1
je 0x1401f0e27
jmp case.0x1401ef578.85
movsxd rcx, dword [r15 + 4]
mov rax, qword [r11 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx + 2], 0
je case.0x1401ef578.85
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
mov eax, 0x2400
add rcx, r14
test word [rcx + 8], ax
je 0x1401f0e59
call fcn.14020a910
xor r10d, r10d
mov r9, qword [rsp + 0x58]
mov r8d, 1
mov eax, dword [r15 + 8]
mov r14, qword [rsp + 0x60]
dec eax
movzx esi, byte [rsp + 0x30]
mov edi, dword [rsp + 0x50]
cdqe
lea rcx, [rax + rax*2]
lea r11, [r9 + rcx*8]
mov qword [rsp + 0x38], r11
mov r15, qword [rsp + 0x38]
mov r11, qword [rsp + 0x48]
jmp case.0x1401ef578.85
mov word [rcx + 8], r8w
jmp 0x1401f0e27
movsxd rcx, dword [r15 + 4]
mov rax, qword [r11 + 0x78]
movsxd rsi, dword [r15 + 8]
mov dword [rbp - 0x60], esi
mov r14, qword [rax + rcx*8]
cmp byte [r14 + 3], 0
je 0x1401f0f1a
mov rcx, qword [r14 + 0x20]
test rcx, rcx
je 0x1401f0f10
mov edx, dword [rcx + rsi*4 + 4]
test edx, edx
jle 0x1401f0f10
cmp byte [r14 + 2], 0
jne 0x1401f0f10
mov r14, qword [r14 + 0x30]
lea esi, [rdx - 1]
mov dword [rbp - 0x60], esi
mov dword [rsp + 0x40], r10d
mov rax, qword [rsp + 0x38]
mov r8, qword [rsp + 0x60]
mov r12, qword [r14 + 0x60]
mov qword [rsp + 0x78], r12
movsxd rax, dword [rax + 0xc]
imul r15, rax, 0x38
mov eax, dword [r11 + 0x30]
add r15, r8
mov qword [rbp + 0x80], r15
cmp dword [r14 + 0x28], eax
je 0x1401f106e
cmp byte [r14 + 2], 0
je 0x1401f0f95
cmp byte [r14], 3
jne 0x1401f0f49
movsxd rax, dword [r14 + 0x2c]
imul rcx, rax, 0x38
mov eax, dword [rcx + r8 + 0xc]
mov dword [r14 + 0x74], eax
mov dword [r14 + 0x70], eax
mov rax, qword [rcx + r8 + 0x10]
mov qword [r14 + 0x68], rax
jmp 0x1401f0fed
mov rcx, r14
call fcn.1401f7400
jmp 0x1401f0f2b
mov rax, qword [r14 + 0x38]
cmp byte [rax], 0
je 0x1401f0ea4
mov rcx, r14
call fcn.1401a6760
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f6375
mov r11, qword [rsp + 0x48]
xor r10d, r10d
mov r9, qword [rsp + 0x58]
jmp 0x1401f0ea9
mov eax, 0x2400
test word [r15 + 8], ax
je 0x1401f0f76
mov rcx, r15
call fcn.14020a910
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov r14, qword [rsp + 0x60]
movzx esi, byte [rsp + 0x30]
jmp 0x1401efe6f
mov r14, qword [rsp + 0x60]
mov r8d, 1
movzx esi, byte [rsp + 0x30]
mov word [r15 + 8], r8w
mov r15, qword [rsp + 0x38]
jmp case.0x1401ef578.85
mov rbx, qword [r14 + 0x38]
mov rcx, rbx
call fcn.1401a5b30
mov eax, dword [rbx + 0x40]
mov dword [r14 + 0x70], eax
mov rax, qword [rbx + 0x88]
movzx ecx, word [rbx + 0x44]
mov edx, dword [rax + 0x58]
sub edx, dword [rbx + 0x38]
cmp ecx, edx
jle 0x1401f0fc9
mov ecx, edx
test edx, edx
mov edx, 0
cmovs ecx, edx
mov r8, qword [rsp + 0x68]
mov r11, qword [rsp + 0x48]
mov dword [r14 + 0x74], ecx
mov rax, qword [rbx + 0x38]
mov qword [r14 + 0x68], rax
mov eax, dword [r8 + 0x7c]
cmp dword [r14 + 0x70], eax
ja 0x1401f64d7
mov eax, dword [r11 + 0x30]
mov dword [r14 + 0x28], eax
mov rcx, qword [r14 + 0x68]
movzx eax, byte [rcx]
cmp al, 0x80
jae 0x1401f100b
movzx eax, al
mov dword [r12], eax
mov al, 1
jmp 0x1401f1013
mov rdx, r12
call fcn.1401d5210
lea rbx, [r14 + 0x52]
movzx eax, al
mov dword [r14 + 0x48], eax
xor r10d, r10d
mov word [rbx], r10w
mov ecx, dword [r12]
mov qword [rbp - 0x80], rbx
cmp dword [r14 + 0x74], ecx
jae 0x1401f1059
mov qword [r14 + 0x68], r10
mov dword [r14 + 0x74], r10d
mov eax, dword [r12]
cmp eax, 0x18003
ja 0x1401f124c
mov qword [rbp - 0x80], rbx
cmp eax, dword [r14 + 0x70]
jbe 0x1401f1076
jmp 0x1401f124c
mov r9, qword [r14 + 0x68]
movzx eax, r10w
mov edx, dword [r14 + 0x48]
mov qword [rbp - 0x78], r9
jmp 0x1401f114f
lea rbx, [r14 + 0x52]
mov qword [rbp - 0x80], rbx
movzx eax, word [rbx]
cmp eax, esi
jg 0x1401f1355
mov edx, dword [r14 + 0x48]
mov ecx, dword [r12]
cmp edx, ecx
jae 0x1401f12cf
mov r9, qword [r14 + 0x68]
mov qword [rbp - 0x78], r9
test r9, r9
jne 0x1401f114b
xor eax, eax
mov qword [rbp + 0x10], rax
mov qword [rbp + 0x18], rax
mov qword [rbp + 0x20], rax
mov qword [rbp + 0x28], rax
mov qword [rbp + 0x30], rax
mov qword [rbp + 0x38], rax
mov qword [rbp + 0x40], rax
mov r10, qword [r14 + 0x38]
mov r8d, dword [r12]
mov rax, qword [r10 + 0x88]
movzx ecx, word [r10 + 0x44]
mov edx, dword [rax + 0x58]
sub edx, dword [r10 + 0x38]
cmp ecx, edx
jle 0x1401f10eb
test edx, edx
mov ecx, edx
mov rax, r9
cmovs ecx, eax
jmp 0x1401f10ed
xor eax, eax
mov r9, qword [r10 + 0x38]
mov qword [rbp - 0x78], r9
mov qword [rbp + 0x20], r9
cmp r8d, ecx
ja 0x1401f111c
mov dword [rbp + 0x1c], r8d
mov ecx, 0x1010
mov word [rbp + 0x18], cx
mov ecx, dword [r12]
mov edx, dword [r14 + 0x48]
mov dword [rsp + 0x40], eax
movzx eax, word [rbx]
jmp 0x1401f114f
lea r9, [rbp + 0x10]
xor edx, edx
mov rcx, r10
call fcn.1401f8c70
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f6129
mov r9, qword [rbp + 0x20]
movzx eax, word [rbx]
mov ecx, dword [r12]
mov edx, dword [r14 + 0x48]
mov qword [rbp - 0x78], r9
jmp 0x1401f114f
mov qword [rbp - 0x80], rbx
movzx r15d, ax
mov ebx, edx
mov esi, r15d
add rbx, r9
mov r13d, ecx
add r13, r9
mov r12d, dword [r12 + r15*4]
nop word [rax + rax]
movzx edi, byte [rbx]
mov eax, 0x80
mov dword [rbp - 0x6c], edi
mov dword [r14 + rsi*4 + 0x78], edi
cmp edi, eax
jae 0x1401f1198
lea rcx, [0x140000000]
inc rbx
movzx ecx, byte [rdi + rcx + 0x2b3a00]
jmp 0x1401f11d3
lea rdx, [rbp - 0x6c]
mov rcx, rbx
call fcn.1401d5210
mov edi, dword [rbp - 0x6c]
movzx eax, al
add rbx, rax
mov dword [r14 + rsi*4 + 0x78], edi
mov eax, 0x80
cmp edi, eax
jb 0x1401f11c2
lea eax, [rdi - 0xc]
shr eax, 1
jmp 0x1401f11d1
lea rcx, [0x140000000]
movzx eax, byte [rdi + rcx + 0x2b3a00]
mov ecx, eax
mov rax, qword [rsp + 0x78]
inc r15d
add r12, rcx
movsxd rsi, r15d
mov dword [rax + rsi*4], r12d
cmp r15d, dword [rbp - 0x60]
jg 0x1401f11f2
cmp rbx, r13
jb 0x1401f1170
jmp 0x1401f11f7
cmp rbx, r13
jb 0x1401f1205
cmp rbx, r13
ja 0x1401f120e
mov eax, dword [r14 + 0x70]
cmp r12, rax
jne 0x1401f120e
mov eax, dword [r14 + 0x70]
cmp r12, rax
jbe 0x1401f1288
mov r12, qword [rsp + 0x78]
cmp dword [r12], 0
jne 0x1401f1224
xor edx, edx
mov rbx, r13
mov r15d, edx
jmp 0x1401f128d
cmp qword [r14 + 0x68], 0
jne 0x1401f1245
mov eax, 0x2400
test word [rbp + 0x18], ax
jne 0x1401f123c
cmp dword [rbp + 0x30], 0
je 0x1401f1245
lea rcx, [rbp + 0x10]
call fcn.14020a840
mov edi, dword [rsp + 0x50]
xor r10d, r10d
mov r9, qword [rsp + 0x58]
mov eax, dword [r9 + 0xc]
test eax, eax
jle 0x1401f611f
mov r14, qword [rsp + 0x60]
dec eax
movzx esi, byte [rsp + 0x30]
movsxd rcx, eax
lea rax, [rcx + rcx*2]
lea r11, [r9 + rax*8]
mov qword [rsp + 0x38], r11
mov r15, qword [rsp + 0x38]
mov r11, qword [rsp + 0x48]
jmp 0x1401efe77
mov r12, qword [rsp + 0x78]
sub ebx, dword [rbp - 0x78]
mov rsi, qword [rbp - 0x80]
mov word [rsi], r15w
mov dword [r14 + 0x48], ebx
cmp qword [r14 + 0x68], 0
jne 0x1401f12bd
mov eax, 0x2400
test word [rbp + 0x18], ax
jne 0x1401f12b4
cmp dword [rbp + 0x30], 0
je 0x1401f12bd
lea rcx, [rbp + 0x10]
call fcn.14020a840
movzx eax, word [rsi]
xor r10d, r10d
mov esi, dword [rbp - 0x60]
mov r15, qword [rbp + 0x80]
jmp 0x1401f12d6
mov edi, r10d
mov dword [rbp - 0x6c], r10d
movzx eax, ax
cmp eax, esi
jg 0x1401f1350
mov r11, qword [rsp + 0x38]
cmp byte [r11 + 1], 0xf5
jne 0x1401f130f
mov rdx, qword [r11 + 0x10]
mov r8d, 0x800
mov rcx, r15
call fcn.1401f96a0
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0x38]
movzx esi, byte [rsp + 0x30]
jmp 0x1401efe66
mov eax, 0x2400
test word [r15 + 8], ax
je 0x1401f1323
mov rcx, r15
jmp 0x1401f03d7
mov r11, qword [rsp + 0x48]
mov r8d, 1
mov r14, qword [rsp + 0x60]
movzx esi, byte [rsp + 0x30]
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
mov word [r15 + 8], r8w
mov r15, qword [rsp + 0x38]
jmp case.0x1401ef578.85
movsxd rbx, esi
jmp 0x1401f1360
movsxd rbx, esi
mov edi, dword [r14 + rbx*4 + 0x78]
mov dword [rbp - 0x6c], edi
mov eax, 0x2400
test word [r15 + 8], ax
je 0x1401f1374
mov rcx, r15
call fcn.14020a910
mov eax, dword [r12 + rbx*4 + 4]
cmp dword [r14 + 0x74], eax
jb 0x1401f1467
mov esi, dword [r12 + rbx*4]
add rsi, qword [r14 + 0x68]
cmp edi, 0xc
jae 0x1401f13b1
mov r8, r15
mov edx, edi
mov rcx, rsi
call fcn.1401fadf0
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0x38]
movzx esi, byte [rsp + 0x30]
jmp 0x1401efe66
movzx eax, byte [rsp + 0x30]
lea ebx, [rdi - 0xc]
shr ebx, 1
mov dword [r15 + 0xc], ebx
mov byte [r15 + 0xa], al
lea edx, [rbx + 2]
cmp dword [r15 + 0x20], edx
jge 0x1401f13f0
mov r12d, 1
xor r8d, r8d
mov rcx, r15
mov word [r15 + 8], r12w
call fcn.1401f8de0
test eax, eax
jne 0x1401f67c8
mov rcx, qword [r15 + 0x10]
jmp 0x1401f13f8
mov rcx, qword [r15 + 0x18]
mov qword [r15 + 0x10], rcx
mov r8, rbx
mov rdx, rsi
call sub.VCRUNTIME140.dll_memcpy
mov rax, qword [r15 + 0x10]
lea rcx, [0x140000000]
mov r11, qword [rsp + 0x48]
mov r14, qword [rsp + 0x60]
movzx esi, byte [rsp + 0x30]
mov r9, qword [rsp + 0x58]
mov byte [rbx + rax], 0
mov rax, qword [r15 + 0x10]
mov byte [rax + rbx + 1], 0
mov eax, edi
mov edi, dword [rsp + 0x50]
and eax, 1
xor r10d, r10d
movzx eax, word [rcx + rax*2 + 0x2b4e24]
mov word [r15 + 8], ax
lea r8d, [r10 + 1]
mov r15, qword [rsp + 0x38]
mov r12, qword [rsp + 0x68]
add r15, 0x18
mov r13d, dword [rsp + 0x54]
mov ebx, dword [rbp - 0x64]
jmp 0x1401ef54d
mov rax, qword [rsp + 0x38]
movzx esi, byte [rsp + 0x30]
mov byte [r15 + 0xa], sil
movzx eax, word [rax + 2]
test al, 0xc0
je 0x1401f148c
cmp edi, 0xc
jb 0x1401f1488
test dil, 1
je 0x1401f14b5
test al, al
js 0x1401f14b5
mov eax, 0x80
cmp edi, eax
jb 0x1401f149e
lea r8d, [rdi - 0xc]
shr r8d, 1
jmp 0x1401f14b0
mov eax, edi
lea rcx, [0x140000000]
movzx r8d, byte [rax + rcx + 0x2b3a00]
test r8d, r8d
jne 0x1401f14cb
mov r8, r15
lea rcx, [0x1402b3b90]
mov edx, edi
call fcn.1401fadf0
jmp 0x1401efe5c
mov edx, dword [r12 + rbx*4]
mov r9, r15
mov rcx, qword [r14 + 0x38]
call fcn.1401f8c70
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f6129
mov rcx, qword [r15 + 0x10]
mov r8, r15
mov edx, edi
call fcn.1401fadf0
mov eax, 0xefff
and word [r15 + 8], ax
jmp 0x1401efe5c
mov rax, qword [rsp + 0x38]
mov rdi, qword [rax + 0x10]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
movzx eax, byte [rdi]
add rbx, r14
nop dword [rax + rax]
movzx r8d, sil
movzx edx, al
mov rcx, rbx
call fcn.140190770
cmp byte [rdi], 0x45
jne 0x1401f158e
movzx ecx, word [rbx + 8]
test cl, 4
je 0x1401f158e
mov rdx, qword [rbx]
movabs rax, 0x800000000000
add rax, rdx
movabs r8, 0xffffffffffff
cmp rax, r8
ja 0x1401f156e
mov eax, 0xfffb
and cx, ax
or cx, 0x20
mov word [rbx + 8], cx
jmp 0x1401f158e
xorps xmm0, xmm0
mov ecx, 0xfffb
cvtsi2sd xmm0, rdx
movsd qword [rbx], xmm0
movzx eax, word [rbx + 8]
and ax, cx
or ax, 8
mov word [rbx + 8], ax
movzx eax, byte [rdi + 1]
inc rdi
test al, al
je 0x1401f5d86
add rbx, 0x38
jmp 0x1401f1520
mov rbx, qword [rsp + 0x38]
mov rcx, r10
mov r15, r10
mov qword [rbp - 0x78], rcx
mov r12d, r10d
movsxd rax, dword [rbx + 4]
mov rdi, qword [rbx + 0x10]
imul r11, rax, 0x38
mov eax, dword [rbx + 8]
add r11, r14
dec eax
mov r14, qword [rsp + 0x48]
cdqe
imul rsi, rax, 0x38
movsxd rax, dword [rbx + 0xc]
movzx r13d, byte [r14 + 0xc3]
add rsi, r11
imul rdx, rax, 0x38
mov qword [rsp + 0x78], r11
add rdx, qword [rsp + 0x60]
mov qword [rbp - 0x60], rsi
mov qword [rbp - 0x80], rdx
test rdi, rdi
je 0x1401f1662
movzx eax, byte [rdi]
lea rbx, [r11 + 8]
movzx r14d, byte [rsp + 0x30]
mov esi, 0xfffb
nop dword [rax]
nop word [rax + rax]
lea rcx, [rbx - 8]
movzx r8d, r14b
movzx edx, al
call fcn.140190770
cmp byte [rdi], 0x45
jne 0x1401f1646
movzx eax, word [rbx]
test al, 4
je 0x1401f1646
and ax, si
or ax, 0x20
mov word [rbx], ax
movzx eax, byte [rdi + 1]
inc rdi
add rbx, 0x38
test al, al
jne 0x1401f1620
mov rcx, qword [rbp - 0x78]
mov r11, qword [rsp + 0x78]
mov rsi, qword [rbp - 0x60]
lea r14, [rsi + 0x24]
movzx edx, word [r14 - 0x1c]
test dl, 1
je 0x1401f168b
mov eax, 0x4000
and dx, ax
neg dx
sbb eax, eax
and eax, 0xa
mov dword [r14], eax
inc r12d
jmp 0x1401f1816
test dl, 0x24
je 0x1401f1787
mov r8, qword [r14 - 0x24]
mov rcx, r8
test r8, r8
jns 0x1401f16a3
not rcx
inc r12d
cmp rcx, 0x7f
ja 0x1401f16d8
mov rax, r8
and eax, 1
cmp rax, r8
jne 0x1401f16c8
cmp r13b, 4
jb 0x1401f16c8
lea eax, [rcx + 8]
mov dword [r14], eax
jmp 0x1401f1816
mov eax, 1
inc r15
mov dword [r14], eax
jmp 0x1401f1816
cmp rcx, 0x7fff
ja 0x1401f16f2
mov eax, 2
add r15, 2
mov dword [r14], eax
jmp 0x1401f1816
cmp rcx, 0x7fffff
ja 0x1401f170c
mov eax, 3
add r15, 3
mov dword [r14], eax
jmp 0x1401f1816
cmp rcx, 0x7fffffff
ja 0x1401f1726
mov eax, 4
add r15, 4
mov dword [r14], eax
jmp 0x1401f1816
movabs rax, 0x7fffffffffff
cmp rcx, rax
ja 0x1401f1746
mov eax, 5
add r15, 6
mov dword [r14], eax
jmp 0x1401f1816
add r15, 8
test dl, 0x20
je 0x1401f177a
mov eax, 0xffdf
xorps xmm0, xmm0
cvtsi2sd xmm0, r8
movsd qword [r14 - 0x24], xmm0
and word [r14 - 0x1c], ax
mov eax, 7
or word [r14 - 0x1c], 8
mov dword [r14], eax
jmp 0x1401f1816
mov eax, 6
mov dword [r14], eax
jmp 0x1401f1816
test dl, 8
je 0x1401f179d
inc r12d
mov eax, 7
add r15, 8
mov dword [r14], eax
jmp 0x1401f1816
mov edi, dword [r14 - 0x18]
mov esi, edx
shr esi, 1
mov eax, 0x4000
and esi, 1
add esi, 0xc
lea esi, [rsi + rdi*2]
test ax, dx
je 0x1401f17e2
movsxd rax, dword [r14 - 0x24]
lea esi, [rsi + rax*2]
test r15, r15
je 0x1401f17db
lea rcx, [r14 - 0x24]
call fcn.1401f8b00
test eax, eax
jne 0x1401f67c8
add edi, dword [r14 - 0x24]
jmp 0x1401f17e2
add rcx, rax
mov qword [rbp - 0x78], rcx
mov eax, edi
mov ecx, 1
add r15, rax
mov eax, esi
shr rax, 7
test rax, rax
je 0x1401f180b
nop word [rax + rax]
inc ecx
shr rax, 7
test rax, rax
jne 0x1401f1800
mov r11, qword [rsp + 0x78]
add r12d, ecx
mov dword [r14], esi
lea rax, [r14 - 0x24]
cmp rax, r11
je 0x1401f182c
mov rcx, qword [rbp - 0x78]
sub r14, 0x38
jmp 0x1401f1666
mov r13d, 1
cmp r12d, 0x7e
jle 0x1401f187f
movsxd rax, r12d
mov edx, r13d
shr rax, 7
test rax, rax
je 0x1401f185b
nop word [rax + rax]
inc edx
shr rax, 7
test rax, rax
jne 0x1401f1850
add r12d, edx
mov ecx, r13d
movsxd rax, r12d
shr rax, 7
test rax, rax
je 0x1401f187b
nop dword [rax]
inc ecx
shr rax, 7
test rax, rax
jne 0x1401f1870
cmp edx, ecx
jge 0x1401f1882
inc r12d
mov r9, qword [rbp - 0x80]
mov rdi, qword [rbp - 0x78]
movsxd rsi, r12d
movsxd rdx, dword [r9 + 0x20]
lea rbx, [rsi + r15]
lea rcx, [rbx + rdi]
cmp rcx, rdx
jg 0x1401f18a8
mov rax, qword [r9 + 0x18]
mov qword [r9 + 0x10], rax
jmp 0x1401f18f0
mov r8, qword [rsp + 0x68]
movsxd rax, dword [r8 + 0x7c]
cmp rcx, rax
jg 0x1401f64b6
cmp edx, ebx
jge 0x1401f18d6
xor r8d, r8d
mov edx, ebx
mov rcx, r9
call fcn.1401f8de0
mov r11, qword [rsp + 0x78]
mov r9, qword [rbp - 0x80]
jmp 0x1401f18e8
mov rax, qword [r9 + 0x18]
mov qword [r9 + 0x10], rax
and word [r9 + 8], 0x2d
xor edx, edx
mov eax, edx
test eax, eax
jne 0x1401f67c8
mov dword [r9 + 0xc], ebx
mov eax, reloc.WS2_32.dll_recv
mov word [r9 + 8], ax
test rdi, rdi
je 0x1401f1910
mov eax, 0x4000
mov dword [r9], edi
or word [r9 + 8], ax
mov r14, qword [r9 + 0x10]
mov ecx, 0x80
lea rdi, [r14 + rsi]
cmp r12d, ecx
jae 0x1401f192a
mov byte [r14], r12b
mov eax, r13d
jmp 0x1401f193a
mov rdx, rsi
mov rcx, r14
call fcn.1401e1c90
mov ecx, 0x80
mov r15, qword [rbp - 0x60]
lea rsi, [r11 + 0xc]
movzx eax, al
add r14, rax
nop dword [rax + rax]
mov r11d, dword [rsi + 0x18]
cmp r11d, ecx
jae 0x1401f1961
mov byte [r14], r11b
mov eax, r13d
jmp 0x1401f196c
mov rdx, r11
mov rcx, r14
call fcn.1401e1c90
movzx eax, al
add r14, rax
lea eax, [r11 - 1]
cmp eax, 6
ja 0x1401f19b7
mov rdx, qword [rsi - 0xc]
lea rcx, [0x140000000]
movzx ecx, byte [r11 + rcx + 0x2b3a00]
mov r13d, 0xffffffff
mov ebx, ecx
nop word [rax + rax]
add ecx, r13d
mov byte [rcx + rdi], dl
shr rdx, 8
test ecx, ecx
jne 0x1401f19a0
xor r10d, r10d
lea r13d, [rcx + 1]
jmp 0x1401f19dd
cmp r11d, 0xc
jb 0x1401f19d7
mov ebx, dword [rsi]
test ebx, ebx
je 0x1401f19d2
mov rdx, qword [rsi + 4]
mov r8d, ebx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
xor r10d, r10d
jmp 0x1401f19dd
xor r10d, r10d
mov ebx, r10d
add rsi, 0x38
mov eax, ebx
add rdi, rax
mov ecx, 0x80
lea rax, [rsi - 0xc]
cmp rax, r15
jbe 0x1401f1950
mov r14, qword [rsp + 0x60]
jmp 0x1401efac4
mov rbx, qword [rsp + 0x38]
mov rax, qword [r11 + 0x78]
cmp dword [rbx + 0xc], 0
movsxd rcx, dword [rbx + 4]
mov rcx, qword [rax + rcx*8]
mov rdx, qword [rcx + 0x38]
je 0x1401f1a2e
mov rcx, rdx
call fcn.1401c0950
mov rbx, rax
mov qword [rbp - 0x10], rax
jmp 0x1401f1a53
lea r8, [rbp - 0x10]
mov qword [rbp - 0x10], r10
mov rcx, r12
call fcn.1401be630
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f6809
mov rbx, qword [rbp - 0x10]
mov r11, qword [rsp + 0x48]
mov rax, qword [rsp + 0x38]
mov ecx, 0x2400
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
add rax, qword [r11 + 0x68]
test word [rax + 8], cx
je 0x1401f1a84
mov rcx, rax
call fcn.1401acef0
mov r11, qword [rsp + 0x48]
mov qword [rax], rbx
jmp 0x1401f5927
mov ecx, 4
mov word [rax + 8], cx
mov qword [rax], rbx
jmp 0x1401f5927
mov rax, qword [rsp + 0x38]
mov r14d, dword [rax + 4]
mov rdi, qword [rax + 0x10]
mov dword [rbp - 0x80], r14d
test r14d, r14d
jne 0x1401f1b98
cmp dword [r12 + 0xd0], r14d
jg 0x1401f6133
test rdi, rdi
jne 0x1401f1ac7
mov ebx, r10d
jmp 0x1401f1adf
mov rbx, 0xffffffffffffffff
nop
inc rbx
cmp byte [rdi + rbx], 0
jne 0x1401f1ad0
and ebx, 0x3fffffff
mov r8d, dword [r12 + 0x2c4]
xor edx, edx
add r8d, dword [r12 + 0x2c0]
mov rcx, r12
call fcn.1401fc6f0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f6375
mov edx, ebx
mov rcx, r12
add rdx, 0x21
call fcn.1401c5f00
mov rsi, rax
test rax, rax
je 0x1401f5da6
lea r9, [rax + 0x20]
mov rdx, rdi
mov rcx, r9
mov qword [rax], r9
lea r8d, [rbx + 1]
call sub.VCRUNTIME140.dll_memcpy
cmp byte [r12 + 0x5f], 0
je 0x1401f1b4b
mov byte [r12 + 0x5f], 0
mov byte [r12 + 0x67], 1
jmp 0x1401f1b53
inc dword [r12 + 0x2c0]
mov rax, qword [r12 + 0x2b0]
mov qword [rsi + 0x18], rax
mov qword [r12 + 0x2b0], rsi
mov rax, qword [r12 + 0x2c8]
mov qword [rsi + 8], rax
mov rax, qword [r12 + 0x2d0]
mov qword [rsi + 0x10], rax
mov r14, qword [rsp + 0x60]
mov r11, qword [rsp + 0x48]
movzx esi, byte [rsp + 0x30]
mov r15, qword [rsp + 0x38]
jmp 0x1401efe6b
mov rsi, qword [r12 + 0x2b0]
mov r15d, r10d
test rsi, rsi
je 0x1401f1bcb
nop dword [rax + rax]
mov rcx, qword [rsi]
mov rdx, rdi
call fcn.1401e9fc0
test eax, eax
je 0x1401f1bee
mov rsi, qword [rsi + 0x18]
inc r15d
test rsi, rsi
jne 0x1401f1bb0
mov r8, rdi
lea rdx, str.no_such_savepoint:__s
mov rcx, r11
call fcn.1401ef370
mov r14, qword [rsp + 0x48]
mov ebx, 1
mov eax, ebx
jmp 0x1401f637f
cmp dword [r12 + 0xd0], 0
jle 0x1401f1c03
cmp r14d, 1
je 0x1401f614c
cmp qword [rsi + 0x18], 0
jne 0x1401f1c75
cmp byte [r12 + 0x67], 0
je 0x1401f1c75
mov ebx, 1
mov r13d, ebx
cmp r14d, ebx
jne 0x1401f1c7c
mov rax, qword [r11]
mov rcx, qword [rax + 0x2d0]
add rcx, qword [rax + 0x2c8]
test rcx, rcx
mov rcx, r11
jg 0x1401f61b5
mov byte [r12 + 0x5f], bl
call fcn.1401f7900
cmp eax, 5
je 0x1401f6165
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 0x38]
mov dword [rsp + 0x40], eax
test eax, eax
je 0x1401f1c6a
mov byte [r12 + 0x5f], 0
jmp 0x1401f1d79
mov byte [r12 + 0x67], 0
jmp 0x1401f1d81
xor edx, edx
mov r13d, edx
jmp 0x1401f1c7e
xor edx, edx
mov eax, dword [r12 + 0x2c0]
mov rcx, qword [rsp + 0x68]
sub eax, r15d
lea r15d, [rax - 1]
mov eax, dword [rcx + 0x28]
cmp r14d, 2
jne 0x1401f1cf0
mov r12d, dword [r12 + 0x2c]
mov edi, edx
and r12d, 1
test eax, eax
jle 0x1401f1cf3
mov r14d, r12d
mov rbx, rdx
xor r14d, 1
mov rcx, qword [rcx + 0x20]
mov r8d, r14d
mov edx, 0x204
mov rcx, qword [rbx + rcx + 8]
call fcn.1401c0ff0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f6129
mov rcx, qword [rsp + 0x68]
inc edi
add rbx, 0x20
mov eax, dword [rcx + 0x28]
cmp edi, eax
jl 0x1401f1cb4
mov r14d, dword [rbp - 0x80]
xor edx, edx
jmp 0x1401f1cf3
mov r12d, edx
mov edi, edx
test eax, eax
jle 0x1401f1d32
mov rbx, rdx
nop dword [rax]
mov rcx, qword [rcx + 0x20]
mov r8d, r15d
mov edx, r14d
mov rcx, qword [rbx + rcx + 8]
call fcn.1401c09b0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f6129
mov rcx, qword [rsp + 0x68]
inc edi
add rbx, 0x20
cmp edi, dword [rcx + 0x28]
jl 0x1401f1d00
jmp 0x1401f1d36
mov eax, dword [rsp + 0x40]
test r12d, r12d
mov r12, qword [rsp + 0x68]
je 0x1401f1d79
mov rax, qword [r12 + 8]
test rax, rax
je 0x1401f1d67
nop word [rax + rax]
and dword [rax + 0xc8], 0xfffffffd
or dword [rax + 0xc8], 1
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x1401f1d50
mov rcx, r12
call fcn.1401e2e50
or dword [r12 + 0x2c], 1
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x1401f6375
cmp qword [r12 + 0x2b0], rsi
je 0x1401f1dbe
nop dword [rax + rax]
mov rdx, qword [r12 + 0x2b0]
mov rcx, r12
mov rax, qword [rdx + 0x18]
mov qword [r12 + 0x2b0], rax
call fcn.1401c5d90
dec dword [r12 + 0x2c0]
cmp qword [r12 + 0x2b0], rsi
jne 0x1401f1d90
cmp r14d, 1
jne 0x1401f1dee
mov rax, qword [rsi + 0x18]
mov rdx, rsi
mov rcx, r12
mov qword [r12 + 0x2b0], rax
call fcn.1401c5d90
test r13d, r13d
jne 0x1401f5da6
dec dword [r12 + 0x2c0]
jmp 0x1401f1e15
mov rax, qword [rsi + 8]
mov qword [r12 + 0x2c8], rax
mov rax, qword [rsi + 0x10]
mov qword [r12 + 0x2d0], rax
test r13d, r13d
je 0x1401f1e15
cmp r14d, 2
jne 0x1401f5da6
mov r8d, r15d
mov edx, r14d
mov rcx, r12
call fcn.1401fc6f0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f6375
jmp 0x1401f1b7f
mov rcx, qword [rsp + 0x38]
mov dword [rbp - 0x54], r10d
mov edx, dword [rcx + 8]
test edx, edx
je 0x1401f1e54
mov eax, dword [r12 + 0x30]
bt rax, 0x14
jb 0x1401f61e3
movsxd rcx, dword [rcx + 4]
mov rax, qword [r12 + 0x20]
shl rcx, 5
mov rbx, qword [rcx + rax + 8]
test rbx, rbx
je 0x1401f1fe3
lea r8, [rbp - 0x54]
mov rcx, rbx
call fcn.1401bda70
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f61f8
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
test byte [r11 + 0xc8], 0x40
je 0x1401f1f7e
cmp dword [r15 + 8], eax
je 0x1401f1f7e
cmp byte [r12 + 0x5f], al
je 0x1401f1ebf
cmp dword [r12 + 0xcc], 1
jle 0x1401f1f7e
mov r8d, dword [r11 + 0x40]
test r8d, r8d
jne 0x1401f1ee4
inc dword [r12 + 0x2c4]
mov r8d, dword [r12 + 0x2c0]
add r8d, dword [r12 + 0x2c4]
mov dword [r11 + 0x40], r8d
dec r8d
xor edx, edx
mov rcx, r12
call fcn.1401fc6f0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f1f5d
cmp byte [rbx + 0x11], 0
mov rax, qword [rsp + 0x48]
mov rsi, qword [rbx + 8]
mov edi, dword [rax + 0x40]
je 0x1401f1f1c
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x1401f1f1c
mov rcx, rbx
call fcn.1401942f0
mov rcx, qword [rsi]
cmp edi, dword [rcx + 0x80]
jle 0x1401f1f3a
cmp byte [rcx + 0xa], 0
je 0x1401f1f3a
mov edx, edi
call fcn.1401ad8a0
mov dword [rsp + 0x40], eax
jmp 0x1401f1f40
xor edx, edx
mov dword [rsp + 0x40], edx
cmp byte [rbx + 0x11], 0
je 0x1401f1f54
sub dword [rbx + 0x14], 1
jne 0x1401f1f54
mov rcx, rbx
call fcn.140207ec0
movzx esi, byte [rsp + 0x30]
mov edi, dword [rsp + 0x50]
mov rax, qword [r12 + 0x2c8]
mov r11, qword [rsp + 0x48]
mov qword [r11 + 0x58], rax
mov rax, qword [r12 + 0x2d0]
mov qword [r11 + 0x60], rax
mov eax, dword [rsp + 0x40]
mov r9, qword [rsp + 0x58]
mov r8d, 1
xor r10d, r10d
cmp word [r15 + 2], 0
je 0x1401f1fd6
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0xc]
cmp dword [rbp - 0x54], eax
jne 0x1401f6242
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0x10]
cmp dword [rcx + 4], eax
jne 0x1401f6242
mov eax, dword [rsp + 0x40]
mov r15, qword [rsp + 0x38]
test eax, eax
jne 0x1401f6375
jmp case.0x1401ef578.85
mov eax, dword [rsp + 0x40]
mov r15, qword [rsp + 0x38]
jmp 0x1401f1f8c
mov r11, qword [rsp + 0x38]
lea r8, [rbp - 0x18]
mov rcx, qword [r12 + 0x20]
movsxd rax, dword [r11 + 4]
mov edx, dword [r11 + 0xc]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.1401bede0
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x48]
call fcn.1401acec0
movsxd rcx, dword [rbp - 0x18]
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov qword [rax], rcx
jmp 0x1401efe6f
mov rax, qword [rsp + 0x38]
movsxd rbx, dword [rax + 4]
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 8]
shl rbx, 5
add rbx, qword [r12 + 0x20]
mov rcx, qword [rbx + 8]
call fcn.1401c1140
mov r11, qword [rsp + 0x38]
mov dword [rsp + 0x40], eax
mov eax, dword [r11 + 8]
cmp eax, 1
jne 0x1401f207d
mov rcx, qword [rbx + 0x18]
mov eax, dword [r11 + 0xc]
mov dword [rcx], eax
or dword [r12 + 0x2c], 1
jmp 0x1401f208e
cmp eax, 2
jne 0x1401f208e
mov rcx, qword [rbx + 0x18]
movzx eax, byte [r11 + 0xc]
mov byte [rcx + 0x70], al
cmp dword [r11 + 4], 1
jne 0x1401f20ae
xor edx, edx
mov rcx, r12
call fcn.1401c8640
mov r11, qword [rsp + 0x48]
and dword [r11 + 0xc8], 0xfffffffc
jmp 0x1401f20b3
mov r11, qword [rsp + 0x48]
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x1401f6375
mov r15, qword [rsp + 0x38]
jmp 0x1401efe6f
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rdi, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x38]
test rdi, rdi
je 0x1401f20f7
mov eax, dword [rcx + 8]
cmp dword [rdi + 0x4c], eax
je 0x1401f221b
jmp 0x1401f20f7
mov rcx, qword [rsp + 0x38]
mov eax, dword [r11 + 0xc8]
and al, 3
cmp al, 1
je 0x1401f62d2
movsxd r12, dword [rcx + 0xc]
mov edi, r10d
mov r8, qword [rsp + 0x68]
mov rax, r12
movsxd r15, dword [rcx + 8]
mov r14, r10
shl rax, 5
add rax, qword [r8 + 0x20]
mov r13, qword [rax + 8]
cmp bl, 0x61
jne 0x1401f2190
movzx esi, word [rcx + 2]
mov rax, qword [rax + 0x18]
and esi, 8
or esi, 4
movzx ecx, byte [rax + 0x70]
cmp cl, byte [r11 + 0xc3]
jae 0x1401f2151
mov byte [r11 + 0xc3], cl
mov rcx, qword [rsp + 0x38]
test byte [rcx + 2], 0x10
je 0x1401f217d
imul rbx, r15, 0x38
mov rax, r15
add rbx, qword [rsp + 0x60]
mov rcx, rbx
call fcn.1401f8fe0
mov r11, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x38]
mov r15d, dword [rbx]
movzx eax, byte [rcx + 1]
cmp al, 0xf7
jne 0x1401f2195
mov r14, qword [rcx + 0x10]
movzx edi, word [r14 + 8]
jmp 0x1401f219c
mov esi, r10d
jmp 0x1401f2156
cmp al, 0xfd
jne 0x1401f219c
mov edi, dword [rcx + 0x10]
mov edx, dword [rcx + 4]
mov r9d, r12d
mov rcx, r11
mov byte [rsp + 0x20], 0
mov r8d, edi
call fcn.14018efe0
mov rdi, rax
test rax, rax
je 0x1401f67c8
mov byte [rax + 2], 1
mov r9, r14
or dword [rax + 8], 4
mov r8d, esi
mov dword [rax + 0x4c], r15d
mov edx, r15d
mov rcx, qword [rax + 0x38]
mov qword [rsp + 0x20], rcx
mov rcx, r13
call fcn.1401be860
mov rcx, qword [rsp + 0x38]
mov r12, qword [rsp + 0x68]
mov r11, qword [rsp + 0x48]
movzx esi, byte [rsp + 0x30]
mov r9, qword [rsp + 0x58]
mov qword [rdi + 0x40], r14
cmp byte [rcx + 1], 0xf7
mov r14, qword [rsp + 0x60]
mov dword [rsp + 0x40], eax
setne al
xor r10d, r10d
mov byte [rdi + 4], al
lea r8d, [r10 + 1]
mov rax, qword [rdi + 0x38]
movzx ecx, byte [rcx + 2]
and cl, 3
mov byte [rax + 3], cl
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x1401f6375
mov r15, qword [rsp + 0x38]
mov edi, dword [rsp + 0x50]
jmp case.0x1401ef578.85
mov rax, qword [rsp + 0x38]
mov r9d, 0xffffffff
mov byte [rsp + 0x20], 0
movsxd rcx, dword [rax + 8]
mov rax, qword [r11 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, r11
mov rax, qword [rsp + 0x38]
movsx r8d, word [rbx + 0x50]
mov edx, dword [rax + 4]
call fcn.14018efe0
mov rdx, rax
test rax, rax
je 0x1401f67cd
mov byte [rax + 2], 1
mov r8d, 4
or dword [rax + 8], 1
mov rcx, qword [rbx + 0x40]
mov qword [rax + 0x40], rcx
movzx ecx, byte [rbx + 4]
mov byte [rax + 4], cl
mov ecx, dword [rbx + 0x4c]
mov dword [rax + 0x4c], ecx
mov eax, dword [rbx + 8]
xor eax, dword [rdx + 8]
and eax, 4
xor dword [rdx + 8], eax
mov rax, qword [rdx + 0x38]
mov r9, qword [rdx + 0x40]
mov edx, ecx
mov rcx, qword [rbx + 0x10]
mov qword [rsp + 0x20], rax
call fcn.1401be860
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov dword [rsp + 0x40], eax
jmp 0x1401efe6f
mov rax, qword [rsp + 0x38]
movsxd rdx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rbx, qword [rax + rdx*8]
test rbx, rbx
je 0x1401f231a
cmp qword [rbx + 0x10], 0
je 0x1401f231a
mov qword [rbx + 0x18], r10
xor r8d, r8d
mov dword [rbx + 0x28], r10d
mov edx, dword [rbx + 0x4c]
mov rcx, qword [rbx + 0x10]
call fcn.1401bddb0
mov dword [rsp + 0x40], eax
xor r10d, r10d
jmp 0x1401f2451
mov rax, qword [rsp + 0x38]
mov r9d, 0xffffffff
mov rcx, r11
mov byte [rsp + 0x20], 0
mov r8d, dword [rax + 8]
call fcn.14018efe0
mov rbx, rax
test rax, rax
je 0x1401f67cd
or dword [rax + 8], 1
lea r9, [rbx + 0x10]
mov rax, qword [rsp + 0x38]
mov r8, r12
mov dword [rsp + 0x28], 0x41e
xor edx, edx
movzx ecx, word [rax + 2]
or ecx, 5
mov dword [rsp + 0x20], ecx
mov rcx, qword [r12]
call fcn.1401bff90
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f2426
mov rcx, qword [rbx + 0x10]
mov r15d, 1
mov edx, r15d
xor r8d, r8d
call fcn.1401bda70
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f2426
mov rax, qword [rsp + 0x38]
lea rsi, [rbx + 0x4c]
mov r14, qword [rax + 0x10]
mov qword [rbx + 0x40], r14
test r14, r14
je 0x1401f23f5
movzx r8d, word [rax + 2]
mov rdx, rsi
mov rcx, qword [rbx + 0x10]
or r8d, 2
call fcn.1401be7f0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f23ef
mov rax, qword [rbx + 0x38]
lea r8d, [r15 + 3]
mov edx, dword [rsi]
mov r9, r14
mov rcx, qword [rbx + 0x10]
mov qword [rsp + 0x20], rax
call fcn.1401be860
mov dword [rsp + 0x40], eax
mov byte [rbx + 4], 0
jmp 0x1401f241c
mov dword [rsi], r15d
xor r9d, r9d
mov rax, qword [rbx + 0x38]
mov edx, r15d
mov rcx, qword [rbx + 0x10]
mov qword [rsp + 0x20], rax
lea r8d, [r9 + 4]
call fcn.1401be860
mov dword [rsp + 0x40], eax
mov byte [rbx + 4], r15b
movzx esi, byte [rsp + 0x30]
mov r14, qword [rsp + 0x60]
mov rax, qword [rsp + 0x38]
xor r10d, r10d
mov edi, dword [rsp + 0x50]
mov ecx, r10d
cmp word [rax + 2], 8
mov eax, 4
cmovne ecx, eax
mov eax, dword [rbx + 8]
and eax, 0xfffffffb
or ecx, eax
mov eax, dword [rsp + 0x40]
mov dword [rbx + 8], ecx
test eax, eax
jne 0x1401f6375
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov r9, qword [rsp + 0x58]
mov byte [rbx + 2], 1
jmp 0x1401efe77
mov rax, qword [rsp + 0x38]
mov r9d, 0xffffffff
mov rcx, r11
mov byte [rsp + 0x20], 1
mov r8d, dword [rax + 8]
mov edx, dword [rax + 4]
call fcn.14018efe0
test rax, rax
je 0x1401f67cd
mov rdx, qword [rsp + 0x38]
mov r8, rax
mov rcx, qword [rdx + 0x10]
mov qword [rax + 0x40], rcx
mov rcx, r12
mov edx, dword [rdx + 0xc]
call fcn.1401fb150
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f6375
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
jmp 0x1401efe6f
mov rax, qword [rsp + 0x38]
mov r15, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 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 0x1401f277c
jmp case.0x1401ef578.85
mov rax, qword [rsp + 0x38]
mov r9d, 0xffffffff
mov rcx, r11
mov byte [rsp + 0x20], 3
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 4]
call fcn.14018efe0
test rax, rax
je 0x1401f67cd
mov r15, qword [rsp + 0x38]
mov r11, qword [rsp + 0x48]
mov byte [rax + 2], 1
mov ecx, dword [r15 + 8]
mov dword [rax + 0x2c], ecx
lea rcx, [0x1402cf293]
mov byte [rax + 4], 1
mov qword [rax + 0x38], rcx
jmp 0x1401efe6f
mov rdx, qword [r11 + 0x78]
mov rcx, r11
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
mov rdx, qword [rdx + rax*8]
call fcn.1401f7720
mov rax, qword [rsp + 0x38]
xor r10d, r10d
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov r9, qword [rsp + 0x58]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov qword [rax + rcx*8], r10
jmp 0x1401efe77
mov rax, qword [rsp + 0x38]
mov r12d, r10d
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov r14, qword [rax + rcx*8]
mov word [r14 + 2], 0
mov dword [r14 + 0x28], r10d
cmp byte [r14 + 4], 0
je 0x1401f269d
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rdi, rax, 0x38
add rdi, qword [rsp + 0x60]
movzx esi, word [rdi + 8]
movzx eax, sil
and al, 0x2e
cmp al, 2
jne 0x1401f25e5
xor edx, edx
mov rcx, rdi
call fcn.1401907f0
mov rcx, rdi
call fcn.140182db0
movzx edx, word [rdi + 8]
mov r15, rax
mov word [rdi + 8], si
test dl, 0x24
jne 0x1401f266d
test dl, 8
jne 0x1401f2641
test dl, 1
jne 0x1401f572f
cmp ebx, 0x18
jae 0x1401f572f
mov rcx, qword [r14 + 0x38]
lea rdx, [rsp + 0x74]
call fcn.1401bf9b0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f6129
xor r10d, r10d
cmp dword [rsp + 0x74], 0
jne 0x1401f5732
jmp 0x1401f27c2
movsd xmm0, qword [rdi]
xorps xmm1, xmm1
cvtsi2sd xmm1, r15
comisd xmm1, xmm0
jbe 0x1401f2660
test bl, 1
lea eax, [rbx - 1]
cmove eax, ebx
mov ebx, eax
jmp 0x1401f266d
comisd xmm0, xmm1
jbe 0x1401f266d
test bl, 1
jne 0x1401f266d
inc ebx
mov rcx, qword [r14 + 0x38]
lea rax, [rsp + 0x74]
xor r9d, r9d
mov qword [rsp + 0x20], rax
mov r8, r15
xor edx, edx
call fcn.1401bfa30
mov dword [rsp + 0x40], eax
mov qword [r14 + 0x58], r15
test eax, eax
jne 0x1401f6129
jmp 0x1401f271f
mov rax, qword [r14 + 0x38]
lea rdx, [rbp + 0x48]
mov r11, qword [rsp + 0x38]
movzx edi, byte [rax + 3]
mov rax, qword [r14 + 0x40]
and dil, 2
mov ecx, dword [r11 + 0x10]
setne r12b
mov qword [rbp + 0x48], rax
mov word [rbp + 0x58], cx
mov eax, r8d
mov ecx, 0xffffffff
test bl, 1
cmovne eax, ecx
xor r9d, r9d
mov byte [rbp + 0x5a], al
xor r8d, r8d
movsxd rax, dword [r11 + 0xc]
imul rcx, rax, 0x38
mov byte [rbp + 0x5e], 0
lea rax, [rsp + 0x74]
add rcx, qword [rsp + 0x60]
mov qword [rbp + 0x50], rcx
mov rcx, qword [r14 + 0x38]
mov qword [rsp + 0x20], rax
call fcn.1401bfa30
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f6129
test dil, dil
je 0x1401f271f
cmp byte [rbp + 0x5e], al
je 0x1401f262e
mov eax, dword [rsp + 0x74]
cmp ebx, 0x18
jl 0x1401f2786
test eax, eax
js 0x1401f2740
jne 0x1401f2733
cmp ebx, 0x19
je 0x1401f2740
xor r10d, r10d
mov dword [rsp + 0x74], r10d
jmp 0x1401f27c2
mov rcx, qword [r14 + 0x38]
xor r13d, r13d
xor edx, edx
mov dword [rsp + 0x74], r13d
call fcn.1401bff50
mov dword [rsp + 0x40], eax
test eax, eax
je 0x1401f27bf
cmp eax, 0x65
jne 0x1401f67f0
mov r15, qword [rsp + 0x38]
xor r10d, r10d
mov r8d, 1
mov dword [rsp + 0x40], r10d
mov dword [rsp + 0x74], r8d
mov r9, qword [rsp + 0x58]
jmp 0x1401f0e27
test eax, eax
jg 0x1401f27aa
jne 0x1401f2791
cmp ebx, 0x16
je 0x1401f27aa
mov rax, qword [r14 + 0x38]
xor r10d, r10d
mov ecx, r10d
cmp byte [rax], r10b
setne cl
mov dword [rsp + 0x74], ecx
jmp 0x1401f2631
mov rcx, qword [r14 + 0x38]
xor r13d, r13d
xor edx, edx
mov dword [rsp + 0x74], r13d
call fcn.1401c06e0
jmp 0x1401f2753
xor r10d, r10d
mov r11, qword [rsp + 0x38]
test r12d, r12d
mov r14, qword [rsp + 0x60]
movzx esi, byte [rsp + 0x30]
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
lea r15, [r11 + 0x18]
cmove r15, r11
mov r11, qword [rsp + 0x48]
jmp 0x1401efe77
mov rax, qword [rsp + 0x38]
mov r15, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 8]
shl eax, 3
xor eax, dword [rdx + 8]
and eax, 8
xor dword [rdx + 8], eax
jmp case.0x1401ef578.85
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
cmp qword [rax + rcx*8], 0
je case.0x1401ef578.11
mov r15, qword [rsp + 0x38]
jmp case.0x1401ef578.85
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rcx, qword [rax + rcx*8]
test byte [rcx + 8], 8
jne 0x1401f0c48
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rsi, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 0xc]
imul rbx, rax, 0x38
add rbx, r14
cmp dword [rcx + 0x10], 0
jle 0x1401f28ab
mov rax, qword [rsi + 0x40]
lea rdi, [rbp + 0x1d0]
mov qword [rbp + 0x1d0], rax
mov r14, r10
movzx eax, word [rcx + 0x10]
mov word [rbp + 0x1e0], ax
mov qword [rbp + 0x1d8], rbx
jmp 0x1401f28fd
mov eax, 0x4000
test word [rbx + 8], ax
je 0x1401f28c6
mov rcx, rbx
call fcn.1401f8b00
test eax, eax
jne 0x1401f67cd
mov rcx, qword [rsi + 0x40]
call fcn.1401ee560
mov rdi, rax
mov r14, rax
test rax, rax
je 0x1401f67cd
mov r8, qword [rbx + 0x10]
mov r9, rax
mov edx, dword [rbx + 0xc]
mov rcx, qword [rsi + 0x40]
call fcn.1401fab00
mov rcx, qword [rsp + 0x38]
xor r10d, r10d
lea r8d, [r10 + 1]
mov byte [rdi + 0x12], 0
mov ebx, r10d
cmp byte [rcx], 0x1c
jne 0x1401f2937
movzx eax, word [rdi + 0x10]
mov rcx, r10
cmp r10w, ax
jae 0x1401f2937
movzx edx, ax
mov rax, qword [rdi + 8]
add rax, 8
test byte [rax], 1
jne 0x1401f2934
inc rcx
add rax, 0x38
cmp rcx, rdx
jl 0x1401f2921
jmp 0x1401f2937
mov ebx, r8d
mov rcx, qword [rsi + 0x38]
lea rax, [rbp - 0x20]
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, rdi
call fcn.1401bfa30
mov dword [rsp + 0x40], eax
test r14, r14
je 0x1401f296a
mov rdx, r14
mov rcx, r12
call fcn.1401c5df0
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x1401f6375
mov eax, dword [rbp - 0x20]
xor r10d, r10d
mov r15, qword [rsp + 0x38]
test eax, eax
mov dword [rsi + 0x2c], eax
mov ecx, r10d
sete cl
test eax, eax
setne al
mov byte [rsi + 2], al
mov byte [rsi + 3], r10b
mov dword [rsi + 0x28], r10d
cmp byte [r15], 0x1e
jne 0x1401f29c9
test ecx, ecx
mov r8d, 1
jne 0x1401f277c
mov r14, qword [rsp + 0x60]
movzx esi, byte [rsp + 0x30]
mov r11, qword [rsp + 0x48]
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
jmp case.0x1401ef578.85
test ebx, ebx
jne 0x1401f5737
lea r8d, [rbx + 1]
test ecx, ecx
je 0x1401f277c
jmp 0x1401f29ac
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, r14
test byte [rcx + 8], 0x24
jne case.0x1401ef578.32
movups xmm2, xmmword [rcx]
movups xmmword [rbp + 0xc8], xmm2
movups xmm0, xmmword [rcx + 0x10]
psrldq xmm2, 8
movups xmmword [rbp + 0xd8], xmm0
movups xmm1, xmmword [rcx + 0x20]
movd edx, xmm2
movups xmmword [rbp + 0xe8], xmm1
movsd xmm0, qword [rcx + 0x30]
movsd qword [rbp + 0xf8], xmm0
test dl, 4
jne 0x1401f2acc
test dl, 8
jne 0x1401f2a68
test dl, 2
je 0x1401f2ac3
mov edx, r8d
lea rcx, [rbp + 0xc8]
call fcn.1401907f0
mov r11, qword [rsp + 0x48]
xor r10d, r10d
mov r9, qword [rsp + 0x58]
lea r8d, [r10 + 1]
jmp 0x1401f2abc
movsd xmm4, qword [rbp + 0xc8]
movaps xmm0, xmm4
call fcn.14019c8e0
xorps xmm3, xmm3
cvtsi2sd xmm3, rax
ucomisd xmm4, xmm3
jp 0x1401f2ac3
jne 0x1401f2ac3
movabs rcx, 0x7fffffffffffffff
add rcx, rax
cmp rcx, 0xfffffffffffffffd
ja 0x1401f2ac3
mov qword [rbp + 0xc8], rax
mov ecx, 0x3e40
movzx eax, word [rbp + 0xd0]
and ax, cx
or ax, 4
mov word [rbp + 0xd0], ax
movzx edx, byte [rbp + 0xd0]
test dl, 4
je 0x1401f5fd2
mov rdi, qword [rbp + 0xc8]
jmp 0x1401f2ae6
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov rdi, qword [rcx + r14]
mov rax, qword [rsp + 0x38]
xor r9d, r9d
mov r8, rdi
mov dword [rbp - 0x48], r10d
xor edx, edx
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rbx, qword [rax + rcx*8]
lea rax, [rbp - 0x48]
mov qword [rsp + 0x20], rax
mov rcx, qword [rbx + 0x38]
call fcn.1401bfa30
mov r15, qword [rsp + 0x38]
xor r10d, r10d
mov qword [rbx + 0x58], rdi
mov word [rbx + 2], 0
mov dword [rsp + 0x40], eax
mov eax, dword [rbp - 0x48]
mov dword [rbx + 0x28], r10d
mov dword [rbx + 0x2c], eax
test eax, eax
je 0x1401f2b56
cmp dword [r15 + 8], r10d
jne 0x1401f5737
mov ecx, 0x15ebf
call fcn.1401c4050
mov dword [rsp + 0x40], eax
xor r10d, r10d
jmp 0x1401f2b5a
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x1401f6375
mov r11, qword [rsp + 0x48]
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
jmp 0x1401efe77
mov rbx, qword [rsp + 0x38]
mov rcx, r11
mov rdx, rbx
call fcn.1401acec0
movsxd rdx, dword [rbx + 4]
mov r15, rbx
mov r11, qword [rsp + 0x48]
mov rcx, qword [r11 + 0x78]
mov rdx, qword [rcx + rdx*8]
mov rcx, qword [rdx + 0x18]
mov qword [rax], rcx
movsxd rcx, dword [rbx + 4]
mov rax, qword [r11 + 0x78]
mov rdx, qword [rax + rcx*8]
inc qword [rdx + 0x18]
jmp 0x1401efe6f
mov rdx, qword [rsp + 0x38]
mov rbx, r10
mov rcx, r11
mov qword [rbp - 0x50], rbx
mov dword [rbp - 0x68], r10d
call fcn.1401acec0
mov r14, rax
mov rax, qword [rsp + 0x38]
movsxd rdx, dword [rax + 4]
mov rax, qword [rsp + 0x48]
mov rcx, qword [rax + 0x78]
mov rsi, qword [rcx + rdx*8]
test byte [rsi + 8], 2
jne 0x1401f2c1a
mov rcx, qword [rsi + 0x38]
lea rdx, [rbp - 0x68]
call fcn.1401bf9b0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f6375
cmp dword [rbp - 0x68], eax
je 0x1401f2c66
mov eax, 1
mov ebx, eax
mov qword [rbp - 0x50], rax
mov rax, qword [rsp + 0x48]
movabs r13, 0x7fffffffffffffff
mov r15, qword [rsp + 0x38]
movsxd rdx, dword [r15 + 0xc]
test edx, edx
je 0x1401f2cd5
mov rcx, qword [rax + 0x100]
test rcx, rcx
je 0x1401f2c9d
mov rax, qword [rcx + 8]
test rax, rax
je 0x1401f2c5c
nop word [rax + rax]
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x1401f2c50
imul rdi, rdx, 0x38
add rdi, qword [rcx + 0x20]
jmp 0x1401f2ca6
mov rbx, qword [rsi + 0x38]
mov rcx, rbx
call fcn.1401a5b30
mov rbx, qword [rbx + 0x30]
movabs r13, 0x7fffffffffffffff
mov rax, qword [rsp + 0x48]
mov qword [rbp - 0x50], rbx
cmp rbx, r13
jl 0x1401f2c94
or dword [rsi + 8], 2
jmp 0x1401f2c24
inc rbx
mov qword [rbp - 0x50], rbx
jmp 0x1401f2c24
imul rdi, rdx, 0x38
add rdi, qword [rsp + 0x60]
mov rcx, rdi
call fcn.1401f8fe0
mov rax, qword [rdi]
cmp rax, r13
je 0x1401f62dc
test byte [rsi + 8], 2
jne 0x1401f62dc
inc rax
cmp rbx, rax
cmovl rbx, rax
mov qword [rbp - 0x50], rbx
mov qword [rdi], rbx
test byte [rsi + 8], 2
je 0x1401f2d4d
xor r13d, r13d
mov edi, r13d
lea rdx, [rbp - 0x50]
mov ecx, 8
call fcn.140180410
mov rbx, qword [rbp - 0x50]
movabs rax, 0x3fffffffffffffff
mov rcx, qword [rsi + 0x38]
and rbx, rax
inc rbx
lea rax, [rbp - 0x68]
mov r8, rbx
mov qword [rbp - 0x50], rbx
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor edx, edx
call fcn.1401bfa30
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f2d3b
cmp dword [rbp - 0x68], r13d
jne 0x1401f2d4d
inc edi
cmp edi, 0x64
jl 0x1401f2ce1
mov eax, recv
mov r14, qword [rsp + 0x48]
mov rdi, r15
mov ebx, 1
jmp 0x1401f6387
mov r11, qword [rsp + 0x48]
xor r10d, r10d
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
mov byte [rsi + 3], 0
mov dword [rsi + 0x28], r10d
movzx esi, byte [rsp + 0x30]
mov qword [r14], rbx
mov r14, qword [rsp + 0x60]
jmp 0x1401efe77
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 8]
movsxd rcx, dword [rcx + 4]
imul rdx, rax, 0x38
mov rax, qword [r11 + 0x78]
add rdx, r14
mov rbx, qword [rax + rcx*8]
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov r8, qword [rcx + r14]
mov rcx, qword [rsp + 0x38]
mov qword [rbp + 0x1a8], r8
cmp byte [rcx + 1], 0xfa
jne 0x1401f2ddf
cmp qword [r12 + 0x130], 0
je 0x1401f2ddf
movsx rcx, byte [rbx + 1]
mov rax, qword [r12 + 0x20]
shl rcx, 5
mov rsi, qword [rcx + rax]
mov rcx, qword [rsp + 0x38]
mov rdi, qword [rcx + 0x10]
jmp 0x1401f2de5
mov rdi, r10
mov rsi, r10
movzx eax, word [rcx + 2]
test al, 1
je 0x1401f2dfc
inc dword [r11 + 0x3c]
movzx eax, word [rcx + 2]
mov r8, qword [rbp + 0x1a8]
test al, 0x20
je 0x1401f2e05
mov qword [r12 + 0x38], r8
mov rax, qword [rdx + 0x10]
mov qword [rbp + 0x1b0], rax
mov eax, dword [rdx + 0xc]
mov dword [rbp + 0x1c4], eax
test byte [rcx + 2], 0x10
je 0x1401f2e25
mov r9d, dword [rbx + 0x2c]
jmp 0x1401f2e28
mov r9d, r10d
mov eax, 0x4000
test word [rdx + 8], ax
je 0x1401f2e3d
mov eax, dword [rdx]
mov dword [rbp + 0x1c8], eax
jmp 0x1401f2e44
mov dword [rbp + 0x1c8], r10d
mov qword [rbp + 0x1a0], r10
lea rdx, [rbp + 0x1a0]
movzx r8d, word [rcx + 2]
mov rcx, qword [rbx + 0x38]
and r8d, 0xa
call fcn.1401beee0
xor r10d, r10d
mov byte [rbx + 3], 0
mov dword [rsp + 0x40], eax
mov dword [rbx + 0x28], r10d
test eax, eax
jne 0x1401f6375
test rdi, rdi
je 0x1401f5e2e
mov rax, qword [rsp + 0x38]
mov edx, send
mov r9, qword [rdi]
mov r8, rsi
mov rcx, qword [r12 + 0x128]
test byte [rax + 2], 4
mov eax, 0x17
cmovne edx, eax
mov rax, qword [rbp + 0x1a8]
mov qword [rsp + 0x20], rax
call qword [r12 + 0x130]
mov r11, qword [rsp + 0x48]
movzx esi, byte [rsp + 0x30]
mov r15, qword [rsp + 0x38]
jmp 0x1401efe6b
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov r15d, dword [rax + 8]
mov rax, qword [r11 + 0x78]
mov r11, qword [rsp + 0x38]
mov rdi, qword [rax + rcx*8]
cmp byte [r11 + 1], 0xfa
jne 0x1401f2f3a
cmp qword [r12 + 0x130], 0
je 0x1401f2f3a
movsx rcx, byte [rdi + 1]
mov rax, qword [r12 + 0x20]
mov rsi, qword [r11 + 0x10]
shl rcx, 5
test byte [r11 + 2], 2
mov r14, qword [rcx + rax]
je 0x1401f2f40
cmp byte [rdi + 4], 0
je 0x1401f2f40
mov rbx, qword [rdi + 0x38]
mov rcx, rbx
call fcn.1401a5b30
mov rax, qword [rbx + 0x30]
mov r11, qword [rsp + 0x38]
mov qword [rdi + 0x58], rax
jmp 0x1401f2f40
mov r14, r10
mov rsi, r10
movzx edx, byte [r11 + 2]
mov rcx, qword [rdi + 0x38]
call fcn.1401be8f0
xor r10d, r10d
mov dword [rsp + 0x40], eax
mov qword [rdi + 0x28], r10
test eax, eax
jne 0x1401f6375
mov r11, qword [rsp + 0x48]
test r15b, 1
je 0x1401f5e33
inc dword [r11 + 0x3c]
mov r10, qword [r12 + 0x130]
test r10, r10
je 0x1401f5dab
test byte [rsi + 0x40], 0x80
jne 0x1401f5dab
mov rax, qword [rdi + 0x58]
mov r8, r14
mov r9, qword [rsi]
mov edx, 9
mov rcx, qword [r12 + 0x128]
mov qword [rsp + 0x20], rax
call r10
jmp 0x1401f1b7f
mov eax, dword [r11 + 0x3c]
mov dword [r12 + 0x74], eax
add dword [r12 + 0x78], eax
mov dword [r11 + 0x3c], r10d
jmp case.0x1401ef578.85
mov rbx, qword [rsp + 0x38]
mov rax, qword [r11 + 0x78]
movsxd rcx, dword [rbx + 4]
mov edi, dword [rbx + 0x10]
mov rdx, qword [rax + rcx*8]
movsxd rax, dword [rbx + 0xc]
imul r15, rax, 0x38
mov rbx, qword [rdx + 0x38]
mov rsi, qword [rdx + 0x40]
add r15, r14
mov r14, qword [rbx + 0x30]
test r14, r14
jne 0x1401f3016
mov rcx, rsi
call fcn.1401ee560
mov qword [rbx + 0x30], rax
mov r14, rax
test rax, rax
je 0x1401f67e6
mov word [rax + 0x10], di
cmp byte [rbx + 0x58], 0
je 0x1401f3052
cmp byte [rbx + 0x59], 0
je 0x1401f3030
mov rax, qword [rbx + 0x10]
mov r8, qword [rax + 0x28]
add rax, 0x14
jmp 0x1401f305a
mov rdx, qword [rbx + 0x18]
mov rax, qword [rdx + 0x10]
movsxd rcx, dword [rax + 4]
lea rax, [rcx + rcx*4]
shl rax, 4
add rax, qword [rdx + 0x18]
mov r8, qword [rax + 0x28]
add rax, 0x14
jmp 0x1401f305a
mov rax, qword [rbx + 0x38]
lea r8, [rax + 0x10]
mov edx, dword [rax]
mov r9, r14
mov rcx, rsi
call fcn.1401fab00
xor r10d, r10d
mov ecx, r10d
test edi, edi
jle 0x1401f3093
mov rax, qword [r14 + 8]
add rax, 8
nop dword [rax]
test byte [rax], 1
jne 0x1401f4fe8
inc ecx
add rax, 0x38
cmp ecx, edi
jl 0x1401f3080
mov rdx, qword [r15 + 0x10]
xor r9d, r9d
mov ecx, dword [r15 + 0xc]
mov r8, r14
call fcn.1401fa260
mov r15, qword [rsp + 0x38]
xor r10d, r10d
mov dword [rsp + 0x40], r10d
test eax, eax
jmp 0x1401f29a0
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 8]
movsxd rcx, dword [rcx + 4]
imul rbx, rax, 0x38
mov rax, qword [r11 + 0x78]
add rbx, r14
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x38]
cmp byte [rax + 0x58], 0
je 0x1401f3116
cmp byte [rax + 0x59], 0
je 0x1401f30f4
mov rax, qword [rax + 0x10]
mov rsi, qword [rax + 0x28]
add rax, 0x14
jmp 0x1401f311e
mov rdx, qword [rax + 0x18]
mov rax, qword [rdx + 0x10]
movsxd rcx, dword [rax + 4]
lea rax, [rcx + rcx*4]
shl rax, 4
add rax, qword [rdx + 0x18]
mov rsi, qword [rax + 0x28]
add rax, 0x14
jmp 0x1401f311e
mov rax, qword [rax + 0x38]
lea rsi, [rax + 0x10]
movsxd rdi, dword [rax]
cmp dword [rbx + 0x20], edi
jge 0x1401f313d
xor r8d, r8d
mov edx, edi
mov rcx, rbx
call fcn.1401f8de0
test eax, eax
jne 0x1401f67e6
jmp 0x1401f314a
mov rax, qword [rbx + 0x18]
mov qword [rbx + 0x10], rax
and word [rbx + 8], 0x2d
mov dword [rbx + 0xc], edi
mov eax, 0x3e40
and word [rbx + 8], ax
mov r8, rdi
or word [rbx + 8], 0x10
mov rdx, rsi
mov rcx, qword [rbx + 0x10]
call sub.VCRUNTIME140.dll_memcpy
mov rax, qword [rsp + 0x38]
xor r10d, r10d
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
movzx esi, byte [rsp + 0x30]
movsxd rcx, dword [rax + 0xc]
mov rax, qword [r11 + 0x78]
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
mov dword [rsp + 0x40], r10d
mov rcx, qword [rax + rcx*8]
mov dword [rcx + 0x28], r10d
jmp 0x1401efe77
mov rbx, qword [rsp + 0x38]
mov rcx, r11
mov rdx, rbx
call fcn.1401acec0
movsxd rdx, dword [rbx + 4]
mov rdi, rax
mov rax, qword [rsp + 0x48]
mov rcx, qword [rax + 0x78]
mov rdx, qword [rcx + rdx*8]
mov rbx, qword [rdx + 0x38]
mov rcx, rbx
call fcn.1401a5b30
mov edx, dword [rbx + 0x40]
cmp edx, dword [r12 + 0x7c]
ja 0x1401f64b9
mov r8, rdi
mov rcx, rbx
call fcn.1401f8d80
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f6375
mov r15, qword [rsp + 0x38]
cmp dword [r15 + 0xc], eax
jne 0x1401f5e13
mov eax, 0x1000
test word [rdi + 8], ax
je 0x1401f5e13
mov rcx, rdi
call fcn.1401f9040
test eax, eax
jne 0x1401f67cd
jmp 0x1401efe66
mov rbx, qword [rsp + 0x38]
mov rcx, r11
mov rdx, rbx
call fcn.1401acec0
mov r11, qword [rsp + 0x48]
mov rdi, rax
movsxd rdx, dword [rbx + 4]
mov rcx, qword [r11 + 0x78]
mov rbx, qword [rcx + rdx*8]
cmp byte [rbx + 2], 0
je 0x1401f3277
mov r15, qword [rsp + 0x38]
mov r8d, 1
mov edi, dword [rsp + 0x50]
xor r10d, r10d
mov r9, qword [rsp + 0x58]
mov word [rax + 8], r8w
jmp case.0x1401ef578.85
cmp byte [rbx + 3], 0
je 0x1401f3292
mov rax, qword [rbx + 0x58]
mov r15, qword [rsp + 0x38]
mov qword [rbp - 8], rax
mov qword [rdi], rax
jmp 0x1401efe6b
cmp byte [rbx], 2
jne 0x1401f32db
mov rcx, qword [rbx + 0x38]
lea rdx, [rbp - 8]
mov rbx, qword [rcx]
mov rax, qword [rbx]
call qword [rax + 0x60]
mov rcx, qword [rsp + 0x48]
mov rdx, rbx
mov dword [rsp + 0x40], eax
call fcn.1401fc410
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x1401f6375
mov rax, qword [rbp - 8]
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov qword [rdi], rax
jmp 0x1401efe6b
mov rax, qword [rbx + 0x38]
cmp byte [rax], 0
je 0x1401f3302
mov rcx, rbx
call fcn.1401a6760
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f6375
mov r11, qword [rsp + 0x48]
xor r10d, r10d
jmp 0x1401f330a
xor r10d, r10d
mov dword [rsp + 0x40], r10d
cmp byte [rbx + 2], 0
je 0x1401f332e
mov r15, qword [rsp + 0x38]
mov r8d, 1
mov r9, qword [rsp + 0x58]
mov word [rdi + 8], r8w
mov edi, dword [rsp + 0x50]
jmp case.0x1401ef578.85
mov rbx, qword [rbx + 0x38]
mov rcx, rbx
call fcn.1401a5b30
mov rax, qword [rbx + 0x30]
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov qword [rbp - 8], rax
mov qword [rdi], rax
jmp 0x1401efe6b
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rbx, qword [rax + rcx*8]
mov byte [rbx + 2], 1
mov dword [rbx + 0x28], r10d
cmp byte [rbx], 0
jne 0x1401f5e50
mov rbx, qword [rbx + 0x38]
mov rcx, qword [rbx + 0x18]
call fcn.1401802c0
mov r11, qword [rsp + 0x48]
xor r10d, r10d
mov r15, qword [rsp + 0x38]
mov r9, qword [rsp + 0x58]
mov qword [rbx + 0x18], r10
mov byte [rbx], 1
jmp 0x1401efe77
mov rax, qword [rsp + 0x38]
mov dword [rbp - 0x44], r10d
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rdi, qword [rax + rcx*8]
mov rcx, qword [rdi + 0x38]
cmp bl, 0x81
jne 0x1401f33cf
mov dword [rdi + 0x2c], 0xffffffff
cmp byte [rcx], 0
je 0x1401f5d6e
lea rdx, [rbp - 0x44]
call fcn.1401bf9b0
mov dword [rsp + 0x40], eax
xor r10d, r10d
mov eax, dword [rbp - 0x44]
mov byte [rdi + 2], al
mov byte [rdi + 3], 0
mov dword [rdi + 0x28], r10d
cmp dword [rsp + 0x40], r10d
jne 0x1401f6371
mov r15, qword [rsp + 0x38]
cmp dword [r15 + 8], r10d
jle 0x1401f5dfb
lea r8d, [r10 + 1]
test eax, eax
jne 0x1401f277c
mov r11, qword [rsp + 0x48]
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
jmp case.0x1401ef578.85
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rbx, qword [rcx + 0x38]
mov rcx, rbx
call fcn.1401aa400
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f34af
xor edx, edx
mov rcx, rbx
mov dword [rbp - 0x70], edx
call fcn.1401aa160
mov dword [rsp + 0x40], eax
mov edx, dword [rbp - 0x70]
mov r13d, 1
xor r10d, r10d
test eax, eax
jne 0x1401f6375
test edx, edx
jne 0x1401f5732
mov rcx, rbx
call fcn.1401c0950
test rax, rax
js 0x1401f5ddf
mov rcx, rax
call fcn.1401d9cc0
mov r15, qword [rsp + 0x38]
xor r10d, r10d
movsx ecx, ax
cmp ecx, dword [r15 + 0xc]
jge 0x1401f5dcb
mov dword [rbp - 0x70], r13d
jmp 0x1401f0e1c
cmp eax, 0x10
jne 0x1401f345c
mov r13d, 1
xor r10d, r10d
mov edx, r13d
mov eax, r10d
mov dword [rbp - 0x70], edx
mov dword [rsp + 0x40], eax
jmp 0x1401f3468
inc dword [r11 + 0xdc]
mov rax, qword [rsp + 0x38]
mov r13d, 1
mov edi, r13d
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rsi, qword [rax + rcx*8]
mov rbx, qword [rsi + 0x38]
cmp byte [rsi], r13b
jne 0x1401f354f
cmp byte [rbx + 0x58], 0
mov dword [rsp + 0x40], r10d
jne 0x1401f3521
cmp qword [rbx + 0x38], 0
lea rdx, [rbx + 0x38]
je 0x1401f357a
lea rcx, [rbx + 0x60]
mov edi, r10d
call fcn.14020cf50
mov dword [rsp + 0x40], eax
xor r10d, r10d
jmp 0x1401f357a
mov rcx, rbx
call fcn.14020c140
mov edx, eax
mov rcx, rbx
call fcn.14020c2b0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f351c
mov rcx, rbx
call fcn.14020cd10
xor r10d, r10d
mov dword [rsp + 0x40], eax
mov edi, r10d
jmp 0x1401f357a
mov rcx, rbx
call fcn.1401aa400
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f35b2
xor edx, edx
mov rcx, rbx
mov edi, edx
call fcn.1401aa160
mov dword [rsp + 0x40], eax
xor r10d, r10d
mov byte [rsi + 3], 0
mov dword [rsi + 0x28], r10d
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x1401f6375
mov r15, qword [rsp + 0x38]
mov r8, r13
mov byte [rsi + 2], dil
test edi, edi
jne 0x1401f277c
movzx esi, byte [rsp + 0x30]
mov r11, qword [rsp + 0x48]
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
jmp case.0x1401ef578.85
cmp eax, 0x10
jne 0x1401f356f
xor r10d, r10d
mov dword [rsp + 0x40], r10d
jmp 0x1401f3572
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rdi, qword [rax + rcx*8]
mov rbx, qword [rdi + 0x38]
cmp byte [rbx + 0x58], 0
je 0x1401f3631
cmp byte [rbx + 0x59], 0
je 0x1401f3609
mov rcx, qword [rbx + 0x10]
call fcn.14020b420
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f3669
mov rax, qword [rbx + 0x10]
xor r10d, r10d
cmp qword [rax + 0x18], r10
jne 0x1401f3663
lea eax, [r10 + 0x65]
jmp 0x1401f3691
mov rcx, qword [rbx + 0x18]
lea rdx, [rbp - 0x40]
mov dword [rbp - 0x40], r10d
call fcn.14020ae70
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f3669
xor r10d, r10d
cmp dword [rbp - 0x40], r10d
je 0x1401f3695
lea eax, [r10 + 0x65]
jmp 0x1401f3691
mov rdx, qword [rbx + 0x38]
mov rax, qword [rdx + 8]
mov qword [rbx + 0x38], rax
mov qword [rdx + 8], r10
cmp qword [rbx + 0x40], 0
jne 0x1401f3653
mov rcx, r12
call fcn.14020cc80
xor r10d, r10d
cmp qword [rbx + 0x38], 0
mov eax, 0x65
cmovne eax, r10d
jmp 0x1401f3691
mov eax, dword [rsp + 0x40]
jmp 0x1401f3695
xor r10d, r10d
jmp 0x1401f3695
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rsp + 0x38]
mov rcx, qword [rdi + 0x38]
mov edx, dword [rax + 0xc]
call qword [rax + reloc.WS2_32.dll_recv]
xor r10d, r10d
mov dword [rsp + 0x40], eax
mov dword [rdi + 0x28], r10d
test eax, eax
jne 0x1401f36ba
mov rcx, qword [rsp + 0x48]
mov byte [rdi + 2], al
mov rax, qword [rsp + 0x38]
movzx eax, word [rax + 2]
inc dword [rcx + rax*4 + 0xd4]
jmp case.0x1401ef578.11
cmp eax, 0x65
jne 0x1401f6375
mov dword [rsp + 0x40], r10d
mov byte [rdi + 2], 1
jmp 0x1401f5922
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rdi, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rbx, r14
test byte [rcx + 2], 1
je 0x1401f36fc
inc dword [r11 + 0x3c]
mov eax, 0x4000
test word [rbx + 8], ax
je 0x1401f371a
mov rcx, rbx
call fcn.1401f8b00
test eax, eax
jne 0x1401f6375
xor r10d, r10d
movsxd rax, dword [rbx + 0xc]
mov r11, qword [rsp + 0x38]
mov qword [rbp + 0x228], rax
mov rax, qword [rbx + 0x10]
mov qword [rbp + 0x220], rax
movsxd rax, dword [r11 + 0xc]
imul rcx, rax, 0x38
add rcx, r14
mov qword [rbp + 0x238], rcx
movzx eax, word [r11 + 0x10]
mov word [rbp + 0x240], ax
movzx r8d, word [r11 + 2]
test r8b, 0x10
je 0x1401f3764
mov r9d, dword [rdi + 0x2c]
jmp 0x1401f3767
mov r9d, r10d
mov rcx, qword [rdi + 0x38]
lea rdx, [rbp + 0x220]
and r8d, 0xa
call fcn.1401beee0
xor r10d, r10d
mov dword [rsp + 0x40], eax
mov dword [rdi + 0x28], r10d
test eax, eax
jne 0x1401f6375
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
jmp 0x1401efe77
mov rbx, qword [rsp + 0x38]
mov rax, qword [r11 + 0x78]
movsxd rcx, dword [rbx + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
mov eax, 0x4000
add rbx, r14
test word [rbx + 8], ax
je 0x1401f37dd
mov rcx, rbx
call fcn.1401f8b00
test eax, eax
jne 0x1401f6375
mov rdx, rbx
mov rcx, rdi
call fcn.1401fb7c0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f6375
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
jmp 0x1401efe6b
mov rax, qword [rsp + 0x38]
lea rdx, [rbp + 0x170]
xor r9d, r9d
xor r8d, r8d
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x38]
mov rax, qword [rbx + 0x40]
mov rdi, qword [rbx + 0x38]
mov qword [rbp + 0x170], rax
movzx eax, word [rcx + 0xc]
mov word [rbp + 0x180], ax
mov byte [rbp + 0x182], 0
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
lea rax, [rbp - 0x1c]
add rcx, r14
mov qword [rsp + 0x20], rax
mov qword [rbp + 0x178], rcx
mov rcx, rdi
call fcn.1401bfa30
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f6375
cmp dword [rbp - 0x1c], eax
jne 0x1401f38b0
mov dl, 4
mov rcx, rdi
call fcn.1401be8f0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f6375
mov r15, qword [rsp + 0x38]
xor r10d, r10d
mov r11, qword [rsp + 0x48]
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
mov qword [rbx + 0x28], r10
jmp 0x1401efe77
mov r15, qword [rsp + 0x38]
cmp word [r15 + 2], 0
jne 0x1401f62f3
mov r11, qword [rsp + 0x48]
xor r10d, r10d
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
mov qword [rbx + 0x28], r10
jmp 0x1401efe77
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x38]
cmp byte [rax], 0
je 0x1401f391c
mov rcx, rbx
call fcn.1401a6760
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f6375
mov r11, qword [rsp + 0x48]
lea r8d, [rax + 1]
mov r9, qword [rsp + 0x58]
xor r10d, r10d
jmp 0x1401f3921
mov dword [rsp + 0x40], r10d
cmp byte [rbx + 2], 0
jne 0x1401f39b2
mov rdx, qword [rbx + 0x38]
lea r8, [rbp]
mov rcx, r12
mov qword [rbp], r10
call fcn.1401f7cf0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f6375
mov rax, qword [rsp + 0x38]
cmp byte [rax], 0x85
jne 0x1401f398f
movsxd rcx, dword [rax + 0xc]
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov rax, qword [r11 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rbp]
mov word [rdx + 2], pe_nt_image_headers64
mov qword [rdx + 0x58], rax
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x10]
mov qword [rdx + 0x20], rax
mov qword [rdx + 0x30], rbx
jmp 0x1401efe6f
mov rcx, qword [rsp + 0x48]
mov rdx, rax
call fcn.1401acec0
mov rcx, qword [rbp]
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov qword [rax], rcx
jmp 0x1401efe6f
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
mov eax, 0x2400
add rcx, r14
test word [rcx + 8], ax
je 0x1401f39e1
call fcn.14020a910
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
jmp 0x1401efe6f
mov r15, qword [rsp + 0x38]
mov word [rcx + 8], r8w
jmp case.0x1401ef578.85
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx + 3], 0
je 0x1401f0c48
call fcn.1401f7400
jmp 0x1401f24b4
mov rax, qword [rsp + 0x38]
cmp bl, 0x28
mov edi, r10d
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x38]
mov rax, qword [rdx + 0x40]
mov rbx, qword [rdx + 0x38]
mov qword [rbp + 0x188], rax
movzx eax, word [rcx + 0x10]
mov word [rbp + 0x198], ax
sbb al, al
mov byte [rbp + 0x19a], al
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
add rcx, r14
mov qword [rbp + 0x190], rcx
mov rcx, rbx
call fcn.1401a5b30
mov r10d, dword [rbx + 0x40]
lea rax, [r10 - 1]
cmp rax, 0x7ffffffe
ja 0x1401f3b4d
mov qword [rbp + 0x128], r12
xor r8d, r8d
mov word [rbp + 0x108], r8w
mov dword [rbp + 0x120], r8d
mov rax, qword [rbx + 0x88]
movzx ecx, word [rbx + 0x44]
mov edx, dword [rax + 0x58]
sub edx, dword [rbx + 0x38]
cmp ecx, edx
jle 0x1401f3ab7
test edx, edx
mov ecx, edx
cmovs ecx, r8d
mov rdx, qword [rbx + 0x38]
mov qword [rbp + 0x110], rdx
cmp r10d, ecx
ja 0x1401f3adc
mov eax, 0x1010
mov dword [rbp + 0x10c], r10d
mov word [rbp + 0x108], ax
jmp 0x1401f3b0c
lea r9, [rbp + 0x100]
mov r8d, r10d
xor edx, edx
mov rcx, rbx
call fcn.1401f8c70
mov dword [rsp + 0x40], eax
mov ecx, eax
test eax, eax
jne 0x1401f3b83
mov rdx, qword [rbp + 0x110]
mov r10d, dword [rbp + 0x10c]
xor r9d, r9d
lea r8, [rbp + 0x188]
mov ecx, r10d
call fcn.1401fa260
mov edi, eax
mov eax, 0x2400
test word [rbp + 0x108], ax
jne 0x1401f3b37
cmp dword [rbp + 0x120], 0
je 0x1401f3b43
lea rcx, [rbp + 0x100]
call fcn.14020a840
xor r10d, r10d
mov dword [rsp + 0x40], r10d
jmp 0x1401f3b86
xor edx, edx
lea rax, [0x1402bbed4]
mov edi, edx
mov qword [rsp + 0x20], rax
lea rdx, str._s_at_line__d_of___.10s_
mov r9d, 0x1425f
lea r8, str.database_corruption
mov ecx, 0xb
call fcn.140188ec0
mov dword [rsp + 0x40], recv
xor r10d, r10d
mov rax, qword [rsp + 0x38]
movzx ecx, byte [rax]
mov eax, dword [rsp + 0x40]
and cl, 1
test eax, eax
jne 0x1401f6375
mov r15, qword [rsp + 0x38]
lea eax, [rdi + 1]
neg edi
mov r8d, 1
test cl, cl
cmovne edi, eax
test edi, edi
jg 0x1401f277c
mov r11, qword [rsp + 0x48]
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
jmp case.0x1401ef578.85
mov rbx, qword [rsp + 0x38]
mov rcx, r11
mov rdx, rbx
call fcn.1401acec0
mov rsi, rax
xor r13d, r13d
mov eax, 1
mov word [rsi + 8], ax
mov ecx, dword [r12 + 0xd8]
inc ecx
cmp dword [r12 + 0xcc], ecx
jg 0x1401f62fa
movsxd r15, dword [rbx + 0xc]
mov rax, qword [r12 + 0x20]
mov r14, r15
mov edi, dword [rbx + 4]
shl r14, 5
mov dword [rbp - 0x3c], r13d
mov rbx, qword [r14 + rax + 8]
cmp byte [rbx + 0x11], r13b
je 0x1401f3c37
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], r13b
jne 0x1401f3c37
mov rcx, rbx
call fcn.1401942f0
lea r8, [rbp - 0x3c]
mov edx, edi
mov rcx, rbx
call fcn.140193a90
mov dword [rsp + 0x40], eax
cmp byte [rbx + 0x11], r13b
je 0x1401f3c5d
sub dword [rbx + 0x14], 1
jne 0x1401f3c5d
mov rcx, rbx
call fcn.140207ec0
movsxd rdx, dword [rbp - 0x3c]
mov eax, 4
mov word [rsi + 8], ax
mov eax, dword [rsp + 0x40]
mov qword [rsi], rdx
test eax, eax
jne 0x1401f67f5
test edx, edx
je 0x1401f5da6
mov rax, qword [rsp + 0x38]
mov r9, qword [r12 + 0x20]
mov r8d, dword [rax + 4]
mov rcx, qword [r14 + r9 + 0x18]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x1401f3cba
nop dword [rax]
mov rcx, qword [rax + 0x10]
cmp dword [rcx + 0x38], edx
jne 0x1401f3cad
mov dword [rcx + 0x38], r8d
mov rax, qword [rax]
test rax, rax
jne 0x1401f3ca0
mov rcx, qword [r14 + r9 + 0x18]
mov rax, qword [rcx + 0x28]
test rax, rax
je 0x1401f3cd8
mov rcx, qword [rax + 0x10]
cmp dword [rcx + 0x58], edx
jne 0x1401f3cd0
mov dword [rcx + 0x58], r8d
mov rax, qword [rax]
test rax, rax
jne 0x1401f3cc3
lea ecx, [r15 + 1]
mov byte [rsp + 0x70], cl
jmp 0x1401f1b7f
mov r11, qword [rsp + 0x38]
lea r8, [rbp - 0x58]
mov dword [rbp - 0x58], r10d
mov rcx, qword [r12 + 0x20]
cmp dword [r11 + 0xc], 0
movsxd rax, dword [r11 + 8]
mov edx, dword [r11 + 4]
cmove r8, r10
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.1401bddb0
mov r15, qword [rsp + 0x38]
mov r11, qword [rsp + 0x48]
mov dword [rsp + 0x40], eax
cmp dword [r15 + 0xc], 0
je 0x1401f3d4a
mov eax, dword [rbp - 0x58]
add dword [r11 + 0x3c], eax
movsxd rax, dword [r15 + 0xc]
test eax, eax
jle 0x1401f3d46
imul rcx, rax, 0x38
movsxd rax, dword [rbp - 0x58]
add qword [rcx + r14], rax
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x1401f6375
jmp 0x1401efe6f
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx], 1
jne 0x1401f3d88
mov rdx, qword [rcx + 0x38]
mov rcx, r12
call fcn.1401fb330
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
jmp 0x1401efe6f
mov rcx, qword [rcx + 0x38]
xor r8d, r8d
mov edx, dword [rcx + 0x50]
mov rcx, qword [rcx + 8]
call fcn.1401bddb0
jmp 0x1401f24b4
mov rdx, qword [rsp + 0x38]
mov rcx, r11
call fcn.1401acec0
mov rbx, rax
lea rdx, [rbp - 0x38]
mov rax, qword [rsp + 0x38]
xor r13d, r13d
mov dword [rbp - 0x38], r13d
movsxd rcx, dword [rax + 4]
mov r8d, dword [rax + 0xc]
shl rcx, 5
add rcx, qword [r12 + 0x20]
mov rcx, qword [rcx + 8]
call fcn.1401be7f0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f67f5
movsxd rax, dword [rbp - 0x38]
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov qword [rbx], rax
jmp 0x1401efe6f
mov rax, qword [rsp + 0x38]
xor r9d, r9d
inc byte [r12 + 0x6a]
xor r8d, r8d
mov rcx, r12
mov qword [rsp + 0x20], r10
mov rdx, qword [rax + 0x10]
call fcn.14017ed30
dec byte [r12 + 0x6a]
jmp 0x1401f24b4
mov rax, qword [rsp + 0x38]
cmp qword [rax + 0x10], 0
movsxd rbx, dword [rax + 4]
jne 0x1401f3e8b
mov rcx, qword [r12 + 0x20]
mov rax, rbx
shl rax, 5
mov rcx, qword [rax + rcx + 0x18]
call fcn.1401e46a0
mov r8, qword [rsp + 0x48]
mov r9d, 1
and dword [r12 + 0x2c], 0xffffffef
add r8, 0xa8
mov edx, ebx
mov rcx, r12
call fcn.1401d60c0
mov r11, qword [rsp + 0x48]
or dword [r12 + 0x2c], 1
mov dword [rsp + 0x40], eax
and dword [r11 + 0xc8], 0xfffffffc
jmp 0x1401f3f50
mov qword [rbp + 0x60], r12
lea rax, [r11 + 0xa8]
mov qword [rbp + 0x68], rax
lea r9, str.sqlite_master
mov rax, qword [rsp + 0x38]
lea rdx, str.SELECTFROM__w_._s_WHERE__s_ORDER_BY_rowid
mov dword [rbp + 0x70], ebx
mov rcx, rbx
mov dword [rbp + 0x78], r10d
mov r8, qword [r12 + 0x20]
mov rax, qword [rax + 0x10]
shl rcx, 5
mov qword [rsp + 0x20], rax
mov r8, qword [rcx + r8]
mov rcx, r12
call fcn.1401d9e90
mov rbx, rax
test rax, rax
je 0x1401f6314
xor eax, eax
mov byte [r12 + 0xb5], 1
lea r9, [rbp + 0x60]
mov dword [rbp + 0x74], eax
lea r8, [fcn.1401d5e70]
mov dword [rbp + 0x7c], eax
mov rdx, rbx
mov qword [rsp + 0x20], rax
mov rcx, r12
call fcn.14017ed30
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f3f33
mov eax, dword [rbp + 0x74]
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f3f33
cmp dword [rbp + 0x7c], eax
jne 0x1401f3f33
mov ecx, 0x1646e
call fcn.1401c4050
mov dword [rsp + 0x40], eax
mov rdx, rbx
mov rcx, r12
call fcn.1401c5df0
mov eax, dword [rsp + 0x40]
mov r11, qword [rsp + 0x48]
mov byte [r12 + 0xb5], 0
test eax, eax
jne 0x1401f631d
mov r15, qword [rsp + 0x38]
jmp 0x1401efe6f
mov rax, qword [rsp + 0x38]
mov rcx, r12
mov edx, dword [rax + 4]
call fcn.1401bb770
jmp 0x1401f24b4
mov rax, qword [rsp + 0x38]
xor r8d, r8d
movsxd rcx, dword [rax + 4]
mov rdx, qword [rax + 0x10]
shl rcx, 5
add rcx, qword [r12 + 0x20]
mov rcx, qword [rcx + 0x18]
add rcx, 8
call fcn.1401d54e0
test rax, rax
je 0x1401f3fc2
cmp qword [r12 + 0x2d8], 0
jne 0x1401f3fb7
mov ecx, 0xffffffff
add dword [rax + 0x3c], ecx
jne 0x1401f3fc2
mov rdx, rax
mov rcx, r12
call fcn.14019c150
or dword [r12 + 0x2c], 1
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
jmp 0x1401efe6f
mov r11, qword [rsp + 0x38]
xor r8d, r8d
mov rax, qword [r12 + 0x20]
movsxd rcx, dword [r11 + 4]
mov rdx, qword [r11 + 0x10]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
add rcx, 0x20
call fcn.1401d54e0
mov rdx, rax
test rax, rax
je 0x1401f3fc2
mov rax, qword [rax + 0x18]
mov rcx, qword [rax + 0x10]
cmp rcx, rdx
jne 0x1401f4038
mov rcx, qword [rdx + 0x28]
mov qword [rax + 0x10], rcx
mov rcx, r12
call fcn.1401d0f80
or dword [r12 + 0x2c], 1
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
jmp 0x1401efe6f
test rcx, rcx
je 0x1401f4076
nop dword [rax]
mov rax, qword [rcx + 0x28]
cmp rax, rdx
je 0x1401f406e
mov rcx, rax
test rax, rax
jne 0x1401f4040
mov rcx, r12
call fcn.1401d0f80
or dword [r12 + 0x2c], 1
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
jmp 0x1401efe6f
mov rax, qword [rdx + 0x28]
mov qword [rcx + 0x28], rax
mov rcx, r12
call fcn.1401d0f80
or dword [r12 + 0x2c], 1
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
jmp 0x1401efe6f
mov rax, qword [rsp + 0x38]
mov rcx, r12
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.1401eaa50
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
jmp 0x1401efe6f
mov r11, qword [rsp + 0x38]
lea r9, [rbp - 0x30]
mov rdx, qword [r12 + 0x20]
mov qword [rsp + 0x28], r9
movsxd rax, dword [r11 + 0xc]
mov r8, qword [r11 + 0x10]
mov r9d, dword [r11 + 8]
add r8, 4
imul rdi, rax, 0x38
movsxd rax, dword [r11 + 4]
imul rbx, rax, 0x38
mov ecx, dword [rdi + r14]
movzx eax, word [r11 + 2]
inc ecx
shl rax, 5
add rbx, r14
mov dword [rsp + 0x20], ecx
mov rcx, r12
mov rdx, qword [rax + rdx + 8]
call fcn.1401bf330
mov rsi, rax
mov eax, 0x2400
test word [rbx + 8], ax
je 0x1401f4120
mov rcx, rbx
call fcn.14020a910
jmp 0x1401f4129
mov eax, 1
mov word [rbx + 8], ax
mov eax, dword [rbp - 0x30]
test eax, eax
je 0x1401f4162
test rsi, rsi
je 0x1401f67cd
dec eax
mov r9b, 1
movsxd rcx, eax
mov r8d, 0xffffffff
sub qword [rdi + r14], rcx
lea rax, [fcn.1401802c0]
mov rcx, rbx
mov qword [rsp + 0x20], rax
mov rdx, rsi
call fcn.1401f93e0
test byte [rbx + 8], 2
movzx esi, byte [rsp + 0x30]
je 0x1401f5922
cmp byte [rbx + 0xa], sil
je 0x1401f5922
movzx edx, sil
mov rcx, rbx
call fcn.1401f9840
jmp 0x1401f5922
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 8]
add rbx, r14
imul rdi, rax, 0x38
test byte [rbx + 8], 0x10
jne 0x1401f41ba
mov rcx, rbx
call fcn.1401f92d0
test eax, eax
jne 0x1401f67cd
mov rdx, qword [rdi + r14]
mov rcx, qword [rbx + 0x10]
call fcn.1401e37c0
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
jmp 0x1401efe6b
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, r14
movzx eax, word [rdi + 8]
test al, 0x10
je 0x1401f427f
mov rbx, qword [rdi + 0x10]
movzx eax, word [rbx + 0x32]
test al, 2
jne 0x1401f4221
test al, 1
jne 0x1401f4219
mov rcx, qword [rbx + 0x10]
call fcn.1401b6ca0
mov qword [rbx + 0x10], rax
mov r8d, 1
movzx eax, word [rbx + 0x32]
or ax, 3
mov word [rbx + 0x32], ax
mov rax, qword [rbx + 0x10]
test rax, rax
je 0x1401f427b
mov rdi, qword [rax]
mov rax, qword [rax + 8]
mov qword [rbx + 0x10], rax
test rax, rax
jne 0x1401f4242
mov rcx, rbx
call fcn.1401e3670
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov eax, 0x2400
add rcx, r14
test word [rcx + 8], ax
je 0x1401f426a
mov rdx, rdi
call fcn.14020b9e0
jmp 0x1401f5922
mov eax, 4
mov qword [rcx], rdi
mov word [rcx + 8], ax
jmp 0x1401f5922
movzx eax, word [rdi + 8]
mov ecx, 0x2400
test cx, ax
je 0x1401f4296
mov rcx, rdi
call fcn.14020a910
jmp case.0x1401ef578.11
mov word [rdi + 8], r8w
jmp case.0x1401ef578.11
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
mov edi, dword [rcx + 0x10]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul rsi, rax, 0x38
add rbx, r14
add rsi, r14
test byte [rbx + 8], 0x10
jne 0x1401f42d4
mov rcx, rbx
call fcn.1401f92d0
test eax, eax
jne 0x1401f67cd
test edi, edi
je 0x1401f42f0
mov r8, qword [rsi]
mov edx, edi
mov rcx, qword [rbx + 0x10]
call fcn.1401e3830
test eax, eax
jne 0x1401f572f
test edi, edi
js 0x1401f1b84
mov rdx, qword [rsi]
mov rcx, qword [rbx + 0x10]
call fcn.1401e37c0
mov r11, qword [rsp + 0x48]
movzx esi, byte [rsp + 0x30]
mov r15, qword [rsp + 0x38]
jmp 0x1401efe6b
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 0xc]
mov r15, qword [rcx + 0x10]
imul r14, rax, 0x38
add r14, qword [rsp + 0x60]
cmp word [rcx + 2], 0
je 0x1401f4356
mov rax, qword [r11 + 0x100]
mov rcx, qword [r15 + 0x20]
test rax, rax
je 0x1401f4356
cmp qword [rax + 0x38], rcx
je 0x1401f5ff8
mov rax, qword [rax + 8]
test rax, rax
jne 0x1401f4343
mov eax, dword [r11 + 0x110]
cmp eax, dword [r12 + 0xa4]
jge 0x1401f6334
test byte [r14 + 8], 0x10
jne 0x1401f44ad
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 0x1401f439c
add eax, 7
sar eax, 3
lea ebx, [rax + rcx*8]
mov rcx, r12
movsxd rdx, ebx
call fcn.1401c6000
mov rsi, rax
test rax, rax
je 0x1401f67cd
mov eax, 0x2400
test word [r14 + 8], ax
jne 0x1401f43cc
cmp dword [r14 + 0x20], 0
je 0x1401f43d4
mov rcx, r14
call fcn.14020a840
mov r11, qword [rsp + 0x48]
mov eax, 0x410
mov rcx, qword [rsp + 0x38]
sub rcx, qword [rsp + 0x58]
mov word [r14 + 8], ax
lea rax, [0x1401f7650]
mov qword [r14 + 0x10], rsi
mov dword [r14 + 0xc], ebx
mov qword [r14 + 0x30], rax
mov qword [rsi], r11
mov dword [rsi + 0x60], edi
mov eax, dword [r15 + 0x10]
mov dword [rsi + 0x64], eax
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rsi + 0x54], edx
mov rax, qword [r11 + 0x68]
mov qword [rsi + 0x20], rax
mov eax, dword [r11 + 0x28]
mov dword [rsi + 0x5c], eax
mov rax, qword [r11 + 0x78]
mov qword [rsi + 0x28], rax
mov eax, dword [r11 + 0x2c]
mov dword [rsi + 0x50], eax
mov rax, qword [r11 + 0x88]
mov qword [rsi + 0x10], rax
mov eax, dword [r11 + 0x90]
mov dword [rsi + 0x58], eax
mov rax, qword [r15 + 0x20]
mov qword [rsi + 0x38], rax
movsxd rax, dword [rsi + 0x60]
add rax, 2
imul rcx, rax, 0x38
lea rax, [rsi + 0x70]
add rcx, rsi
cmp rax, rcx
je 0x1401f44a1
mov edx, 0x80
nop dword [rax]
nop word [rax + rax]
mov word [rax + 8], dx
mov qword [rax + 0x28], r12
add rax, 0x38
cmp rax, rcx
jne 0x1401f4490
mov eax, dword [r11 + 0x110]
xor r10d, r10d
jmp 0x1401f44b1
mov rsi, qword [r14 + 0x10]
inc eax
lea r14, [rsi + 0x70]
mov dword [r11 + 0x110], eax
mov rax, qword [r11 + 0x100]
mov qword [rsi + 8], rax
mov rax, qword [r12 + 0x38]
mov qword [rsi + 0x40], rax
mov eax, dword [r11 + 0x3c]
mov dword [rsi + 0x68], eax
mov rax, qword [r11]
mov qword [rsp + 0x60], r14
mov ecx, dword [rax + 0x74]
mov dword [rsi + 0x6c], ecx
mov rax, qword [r11 + 0x120]
mov qword [rsi + 0x48], rax
mov qword [r11 + 0x120], r10
mov dword [r11 + 0x3c], r10d
mov qword [r11 + 0x100], rsi
mov qword [r11 + 0x68], r14
mov eax, dword [rsi + 0x60]
mov dword [r11 + 0x28], eax
movzx eax, word [rsi + 0x64]
mov dword [r11 + 0x2c], eax
movsxd rax, dword [r11 + 0x28]
imul rdx, rax, 0x38
add rdx, r14
mov qword [r11 + 0x78], rdx
movsxd rax, dword [r15 + 0x10]
lea rcx, [rdx + rax*8]
mov qword [rsi + 0x30], 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 sub.VCRUNTIME140.dll_memset
mov rcx, qword [r15]
mov r11, qword [rsp + 0x48]
movzx esi, byte [rsp + 0x30]
mov qword [rsp + 0x58], rcx
mov qword [r11 + 0x88], rcx
mov eax, dword [r15 + 8]
mov dword [r11 + 0x90], eax
lea rax, [rcx - 0x18]
mov qword [rsp + 0x38], rax
jmp 0x1401f5927
mov rdx, qword [rsp + 0x38]
mov rcx, r11
call fcn.1401acec0
mov r14, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov r9, qword [r14 + 0x100]
movsxd rcx, dword [r9 + 0x54]
lea rdx, [rcx + rcx*2]
mov rcx, qword [r9 + 0x10]
mov r8d, dword [rcx + rdx*8 + 4]
add r8d, dword [r15 + 4]
movsxd rcx, r8d
mov r8d, 0x1000
imul rdx, rcx, 0x38
mov rcx, rax
add rdx, qword [r9 + 0x20]
call fcn.1401f96a0
mov r11, r14
mov r14, qword [rsp + 0x60]
jmp 0x1401efe6f
mov eax, dword [r12 + 0x30]
bt rax, 0x13
mov rax, qword [rsp + 0x38]
mov r15, rax
jae 0x1401f45fc
movsxd rax, dword [rax + 8]
add qword [r12 + 0x2d0], rax
jmp case.0x1401ef578.85
cmp dword [rax + 4], 0
lea rcx, [0x140000000]
movsxd rax, dword [rax + 8]
je 0x1401f462b
add qword [r12 + 0x2c8], rax
mov r12, qword [rsp + 0x68]
add r15, 0x18
mov r13d, dword [rsp + 0x54]
mov ebx, dword [rbp - 0x64]
jmp 0x1401ef54d
add qword [r11 + 0x50], rax
mov r12, qword [rsp + 0x68]
add r15, 0x18
mov r13d, dword [rsp + 0x54]
mov ebx, dword [rbp - 0x64]
jmp 0x1401ef54d
cmp dword [r15 + 4], 0
je 0x1401f466f
cmp qword [r12 + 0x2c8], 0
jne case.0x1401ef578.85
cmp qword [r12 + 0x2d0], 0
je 0x1401f0e27
jmp case.0x1401ef578.85
cmp qword [r11 + 0x50], 0
jmp 0x1401f4655
mov rcx, qword [r11 + 0x100]
test rcx, rcx
je 0x1401f46af
mov rax, qword [rcx + 8]
test rax, rax
je 0x1401f469c
nop dword [rax + rax]
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x1401f4690
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, qword [rcx + 0x20]
jmp 0x1401f46bf
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, r14
mov rcx, rdi
call fcn.1401f8fe0
mov r15, qword [rsp + 0x38]
movsxd rax, dword [r15 + 8]
imul rbx, rax, 0x38
add rbx, r14
mov rcx, rbx
call fcn.1401f8fe0
mov rax, qword [rbx]
xor r10d, r10d
mov r11, qword [rsp + 0x48]
cmp qword [rdi], rax
jge 0x1401f5d73
mov r9, qword [rsp + 0x58]
mov qword [rdi], rax
mov edi, dword [rsp + 0x50]
jmp 0x1401efe77
mov rax, qword [rsp + 0x38]
mov r15, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rdx, qword [rcx + r14]
test rdx, rdx
jle case.0x1401ef578.85
mov rax, r15
movsxd rax, dword [rax + 0xc]
sub rdx, rax
mov qword [rcx + r14], rdx
jmp 0x1401f0e27
mov rcx, qword [rsp + 0x38]
mov rdx, rcx
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
mov rcx, r11
imul rdi, rax, 0x38
call fcn.1401acec0
mov rcx, qword [rbx + r14]
mov r10, rax
mov qword [rbp + 8], rcx
test rcx, rcx
jle 0x1401f4799
mov rdx, qword [rdi + r14]
lea rcx, [rbp + 8]
mov eax, 0
test rdx, rdx
cmovle rdx, rax
call fcn.1401ba2c0
test eax, eax
jne 0x1401f4799
mov rax, qword [rbp + 8]
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov qword [r10], rax
jmp 0x1401efe6b
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov qword [r10], 0xffffffffffffffff
jmp 0x1401efe6b
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r14]
test rax, rax
je 0x1401f0c48
mov r15, qword [rsp + 0x38]
jle 0x1401f0e27
dec rax
mov qword [rcx + r14], rax
jmp 0x1401f0e27
mov rax, qword [rsp + 0x38]
movabs rdx, 0x8000000000000000
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r14]
cmp rax, rdx
jle 0x1401f4807
dec rax
mov qword [rcx + r14], rax
mov r15, qword [rsp + 0x38]
test rax, rax
je 0x1401f0e27
jmp case.0x1401ef578.85
mov rax, qword [rsp + 0x38]
mov rcx, r12
movzx ebx, word [rax + 2]
mov edi, ebx
lea rdx, [rbx*8 + 0x68]
call fcn.1401c5f00
mov r8, rax
test rax, rax
je 0x1401f67cd
mov r11, qword [rsp + 0x38]
xor r9d, r9d
mov qword [rax + 0x10], r9
add rdi, 6
lea rcx, [rax + rdi*8]
mov r13d, 1
mov rdi, qword [rsp + 0x48]
mov qword [rax], rcx
mov word [rcx + 8], r13w
mov qword [rcx + 0x28], r12
mov dword [rcx + 0x20], r9d
mov rcx, qword [r11 + 0x10]
mov qword [rax + 8], rcx
mov rcx, r11
sub rcx, qword [rsp + 0x58]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [r8 + 0x20], edx
mov qword [r8 + 0x18], rdi
mov byte [r8 + 0x28], r9b
mov dword [r8 + 0x24], r9d
mov byte [r8 + 0x29], bl
mov word [r11], 0xf09b
mov qword [r11 + 0x10], r8
jmp 0x1401f48cb
mov rdi, qword [rsp + 0x48]
mov r13d, 1
mov r11, qword [rsp + 0x38]
movsxd rax, dword [r11 + 0xc]
mov rbx, qword [r11 + 0x10]
imul r10, rax, 0x38
add r10, r14
cmp qword [rbx + 0x10], r10
je 0x1401f4921
mov qword [rbx + 0x10], r10
movzx eax, byte [rbx + 0x29]
mov edx, eax
sub rdx, 1
lea r9d, [rax - 1]
js 0x1401f4921
lea r8, [rdx + 6]
lea r8, [rbx + r8*8]
nop dword [rax]
mov eax, dword [r11 + 8]
lea r8, [r8 - 8]
add eax, r9d
dec r9d
cdqe
imul rcx, rax, 0x38
add rcx, r14
sub rdx, 1
mov qword [r8 + 8], rcx
jns 0x1401f4900
inc dword [r10 + 0xc]
lea r8, [rbx + 0x30]
cmp dword [r11 + 4], 0
mov rcx, rbx
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x29]
je 0x1401f4940
call qword [rax + 0x30]
jmp 0x1401f4943
call qword [rax + 0x18]
mov eax, dword [rbx + 0x24]
test eax, eax
je 0x1401f5d86
jle 0x1401f4971
mov rcx, qword [rbx]
call fcn.140182e30
mov r8, rax
lea rdx, [0x1402b7950]
mov rcx, rdi
call fcn.1401ef370
mov eax, dword [rbx + 0x24]
mov dword [rsp + 0x40], eax
cmp byte [rbx + 0x28], 0
je 0x1401f49b0
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax - 0x14]
test eax, eax
je 0x1401f49ac
imul rcx, rax, 0x38
mov eax, 0x2400
add rcx, r14
test word [rcx + 8], ax
je 0x1401f49a0
mov rdx, r13
call fcn.14020b9e0
jmp 0x1401f49ac
mov eax, 4
mov qword [rcx], r13
mov word [rcx + 8], ax
mov byte [rbx + 0x28], 0
mov rax, qword [rbx]
mov ecx, 0x2400
test word [rax + 8], cx
jne 0x1401f49c4
cmp dword [rax + 0x20], 0
je 0x1401f49cf
mov rcx, rax
call fcn.14020a840
mov rax, qword [rbx]
mov word [rax + 8], r13w
xor r10d, r10d
mov eax, dword [rsp + 0x40]
mov dword [rbx + 0x24], r10d
jmp 0x1401f3786
mov rcx, qword [rsp + 0x38]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
add rbx, r14
test eax, eax
je 0x1401f4a9c
mov rsi, qword [rcx + 0x10]
imul rdi, rax, 0x38
xor eax, eax
mov qword [rbp + 0x138], rax
add rdi, r14
mov qword [rbp + 0x140], rax
mov qword [rbp + 0x148], rax
mov qword [rbp + 0x150], rax
mov qword [rbp + 0x158], rax
mov qword [rbp + 0x160], rax
mov qword [rbp + 0x168], rax
mov eax, 0x2400
test word [rdi + 8], ax
je 0x1401f4a53
mov rcx, rdi
call fcn.14020a910
jmp 0x1401f4a58
mov word [rdi + 8], r8w
lea rcx, [rbp + 0x138]
mov qword [rbp + 0x138], rdi
mov qword [rbp + 0x148], rbx
mov qword [rbp + 0x140], rsi
call qword [rsi + 0x28]
mov rax, qword [rsp + 0x38]
mov ecx, dword [rbp + 0x15c]
movzx esi, byte [rsp + 0x30]
mov edi, dword [rsp + 0x50]
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
mov dword [rsp + 0x40], ecx
add rbx, r14
jmp 0x1401f4aae
mov rdx, qword [rcx + 0x10]
mov rcx, rbx
call fcn.1401f8b60
mov ecx, eax
mov dword [rsp + 0x40], eax
test ecx, ecx
jne 0x1401f6355
test byte [rbx + 8], 2
je 0x1401f4ace
cmp byte [rbx + 0xa], sil
je 0x1401f4ace
movzx edx, sil
mov rcx, rbx
call fcn.1401f9840
mov rcx, rbx
call fcn.1401f9810
mov r11, qword [rsp + 0x48]
test eax, eax
jne 0x1401f64be
mov r15, qword [rsp + 0x38]
jmp 0x1401efe6f
mov rbx, qword [rsp + 0x38]
lea rax, [rbp + 0x258]
lea r9, [rbp + 0x254]
mov dword [rbp + 0x250], r10d
mov rcx, r12
mov qword [rbp + 0x254], 0xffffffffffffffff
mov qword [rsp + 0x20], rax
mov r8d, dword [rbx + 8]
mov edx, dword [rbx + 4]
call fcn.1401c1470
mov dword [rsp + 0x40], eax
test eax, eax
je 0x1401f4b48
cmp eax, 5
jne 0x1401f6809
xor eax, eax
mov dword [rsp + 0x40], eax
mov eax, 1
mov dword [rbp + 0x250], eax
movsxd rax, dword [rbx + 0xc]
mov r13d, 0x2400
imul rbx, rax, 0x38
add rbx, r14
xor eax, eax
mov edi, eax
lea esi, [rax + 4]
movsxd rax, dword [rbp + rdi*4 + 0x250]
test word [rbx + 8], r13w
je 0x1401f4b7c
mov rdx, rax
mov rcx, rbx
call fcn.14020b9e0
jmp 0x1401f4b83
mov qword [rbx], rax
mov word [rbx + 8], si
inc rdi
add rbx, 0x38
cmp rdi, 3
jl 0x1401f4b60
mov r11, qword [rsp + 0x48]
movzx esi, byte [rsp + 0x30]
mov r15, qword [rsp + 0x38]
jmp 0x1401efe6b
mov rbx, qword [rsp + 0x38]
mov rcx, r11
mov rdx, rbx
call fcn.1401acec0
mov r8d, dword [rbx + 0xc]
mov r15, rax
movsxd rdx, dword [rbx + 4]
mov rcx, qword [r12 + 0x20]
shl rdx, 5
cmp r8d, 0xffffffff
mov r14, qword [rdx + rcx + 8]
mov rcx, qword [r14 + 8]
mov rbx, qword [rcx]
movzx esi, byte [rbx + 9]
mov ecx, esi
cmovne ecx, r8d
cmp byte [rbx + 0x14], 3
jb 0x1401f4bf4
xor r13d, r13d
mov eax, r13d
lea r8d, [r13 + 1]
jmp 0x1401f4c11
mov rax, qword [rbx + 0x50]
cmp qword [rax], 0
je 0x1401f4c05
cmp qword [rbx + 0x60], 0
jg 0x1401f4be8
mov r8d, 1
xor r13d, r13d
mov eax, r8d
test eax, eax
mov edi, esi
cmovne edi, ecx
cmp byte [rbx + 0x13], 0
lea rcx, [0x1402b3a84]
jne 0x1401f4c2c
mov rcx, qword [rbx + 0xd0]
cmp edi, 5
jne 0x1401f4c63
test rcx, rcx
je 0x1401f4c5c
mov rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x1401f4c40
and eax, 0x3fffffff
je 0x1401f4c5c
mov rcx, rbx
call fcn.1401dc950
test eax, eax
jne 0x1401f4c63
mov eax, esi
jmp 0x1401f4de6
mov eax, edi
cmp edi, esi
je 0x1401f4de6
cmp esi, 5
je 0x1401f4c7b
cmp edi, 5
jne 0x1401f4de6
cmp byte [r12 + 0x5f], 0
je 0x1401f6412
cmp dword [r12 + 0xcc], 1
jg 0x1401f6412
cmp esi, 5
jne 0x1401f4db3
cmp qword [rbx + 0x120], 0
mov dword [rsp + 0x40], r13d
jne 0x1401f4d41
mov dword [rbp - 0x34], r13d
movzx eax, byte [rbx + 0x15]
mov dword [rsp + 0x40], r13d
cmp al, 1
jb 0x1401f4cc8
cmp al, sil
jne 0x1401f4cf4
cmp byte [rbx + 0x11], 0
je 0x1401f4cd5
mov dword [rsp + 0x40], r13d
jmp 0x1401f4cea
mov rcx, qword [rbx + 0x48]
mov edx, r8d
mov rax, qword [rcx]
call qword [rax + 0x38]
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f4cf4
cmp byte [rbx + 0x15], 5
je 0x1401f4cf4
mov byte [rbx + 0x15], 1
cmp dword [rsp + 0x40], 0
jne 0x1401f4da5
mov rax, qword [rbx]
lea r9, [rbp - 0x34]
mov rdx, qword [rbx + 0x128]
xor r8d, r8d
mov rcx, rax
call qword [rax + 0x38]
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f4da5
cmp dword [rbp - 0x34], eax
je 0x1401f4d37
mov rcx, rbx
call fcn.1401ada00
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f4da5
cmp qword [rbx + 0x120], 0
je 0x1401f4da5
mov rcx, rbx
call fcn.1401ad710
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f4da5
mov rax, qword [rbx + 0x110]
mov rdx, r12
movzx r8d, byte [rbx + 0xf]
mov r9d, dword [rbx + 0xbc]
mov rcx, qword [rbx + 0x120]
mov qword [rsp + 0x20], rax
call fcn.1401fcf90
mov rcx, rbx
mov dword [rsp + 0x40], eax
mov qword [rbx + 0x120], r13
call fcn.1401ad790
cmp dword [rsp + 0x40], 0
je 0x1401f4da5
cmp byte [rbx + 8], 0
jne 0x1401f4da5
mov edx, 1
mov rcx, rbx
call fcn.1401ae350
mov ecx, dword [rsp + 0x40]
mov eax, edi
test ecx, ecx
jne 0x1401f4dec
mov edx, edi
jmp 0x1401f4dbb
cmp esi, 4
jne 0x1401f4dc3
lea edx, [rsi - 2]
mov rcx, rbx
call fcn.1401dc1e0
mov ecx, dword [rsp + 0x40]
mov eax, edi
test ecx, ecx
jne 0x1401f4dec
mov edx, r13d
cmp edi, 5
mov rcx, r14
sete dl
inc edx
call fcn.1401c0ef0
mov dword [rsp + 0x40], eax
mov eax, edi
mov ecx, dword [rsp + 0x40]
test ecx, ecx
cmove esi, eax
mov rcx, rbx
mov edx, esi
call fcn.1401dc1e0
mov ecx, 0xa02
mov word [r15 + 8], cx
cmp eax, 6
jne 0x1401f4e0d
mov rcx, r13
jmp 0x1401f4e1e
cdqe
lea rcx, [0x140000000]
mov rcx, qword [rcx + rax*8 + 0x2b4d78]
mov qword [r15 + 0x10], rcx
test rcx, rcx
jne 0x1401f4e2c
mov eax, r13d
jmp 0x1401f4e41
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x1401f4e33
and eax, 0x3fffffff
movzx esi, byte [rsp + 0x30]
mov dword [r15 + 0xc], eax
mov byte [r15 + 0xa], 1
test byte [r15 + 8], 2
je 0x1401f4e68
cmp sil, 1
je 0x1401f4e68
movzx edx, sil
mov rcx, r15
call fcn.1401f9840
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x1401f67f5
mov r11, qword [rsp + 0x48]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0x38]
jmp 0x1401efe6b
mov rax, qword [rsp + 0x38]
movsxd rax, dword [rax + 8]
test eax, eax
je 0x1401f4e9e
imul r9, rax, 0x38
add r9, r14
jmp 0x1401f4ea1
mov r9, r10
mov rax, qword [rsp + 0x38]
lea rcx, [r11 + 0xa8]
mov rdx, r12
mov r8d, dword [rax + 4]
call fcn.1401e4120
jmp 0x1401f24b4
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x20]
shl rcx, 5
mov rsi, qword [rcx + rax + 8]
cmp byte [rsi + 0x11], 0
mov rdi, qword [rsi + 8]
je 0x1401f4ef0
inc dword [rsi + 0x14]
cmp byte [rsi + 0x12], 0
jne 0x1401f4ef0
mov rcx, rsi
call fcn.1401942f0
cmp byte [rdi + 0x21], 0
je 0x1401f4fb4
mov rax, qword [rdi + 0x18]
mov r14d, dword [rdi + 0x40]
mov edx, r14d
mov rcx, qword [rax + 0x50]
mov ebx, dword [rcx + 0x24]
mov rcx, rdi
bswap ebx
mov r8d, ebx
call fcn.1401a09a0
mov r15d, eax
cmp r14d, eax
jae 0x1401f4f39
mov ecx, 0x10a76
call fcn.1401c4050
mov r14, qword [rsp + 0x60]
mov dword [rsp + 0x40], eax
jmp 0x1401f4fbc
test ebx, ebx
je 0x1401f4faf
mov rcx, qword [rdi + 0x10]
test rcx, rcx
je 0x1401f4f58
xor r8d, r8d
xor edx, edx
call fcn.1401b7220
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f4fa8
mov rax, qword [rdi + 0x10]
test rax, rax
je 0x1401f4f6e
and byte [rax + 1], 0xfb
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x1401f4f61
xor r9d, r9d
mov r8d, r14d
mov edx, r15d
mov rcx, rdi
call fcn.1401a6f30
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f4fa8
mov rcx, qword [rdi + 0x18]
mov rcx, qword [rcx + 0x70]
call fcn.1401dc980
mov edx, dword [rdi + 0x40]
mov dword [rsp + 0x40], eax
mov rax, qword [rdi + 0x18]
bswap edx
mov rcx, qword [rax + 0x50]
mov dword [rcx + 0x1c], edx
mov r14, qword [rsp + 0x60]
jmp 0x1401f4fbc
mov r14, qword [rsp + 0x60]
mov dword [rsp + 0x40], 0x65
cmp byte [rsi + 0x11], 0
je 0x1401f4fd0
sub dword [rsi + 0x14], 1
jne 0x1401f4fd0
mov rcx, rsi
call fcn.140207ec0
mov eax, dword [rsp + 0x40]
test eax, eax
je 0x1401f1b84
cmp eax, 0x65
jne 0x1401f6375
xor r10d, r10d
mov r15, qword [rsp + 0x38]
mov dword [rsp + 0x40], r10d
jmp 0x1401f0e1c
mov rax, qword [rsp + 0x38]
cmp dword [rax + 4], 0
jne 0x1401f5017
mov edx, dword [rax + 8]
mov rcx, r12
call fcn.1401c8640
mov r15, qword [rsp + 0x38]
jmp case.0x1401ef578.85
mov eax, dword [rax + 8]
mov r15, qword [rsp + 0x38]
inc eax
xor eax, dword [r11 + 0xc8]
and eax, 3
xor dword [r11 + 0xc8], eax
jmp case.0x1401ef578.85
mov rax, qword [rsp + 0x38]
mov r15, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x38]
or byte [rax + 1], 0x40
jmp case.0x1401ef578.85
mov rax, qword [rsp + 0x38]
mov r15, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x38]
and byte [rax + 1], 0xbf
jmp case.0x1401ef578.85
mov rax, qword [rsp + 0x38]
movzx esi, byte [rax + 0xc]
test sil, sil
jne 0x1401f50a0
mov eax, dword [r12 + 0x30]
bt rax, 0xa
jb 0x1401f5fe9
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov edi, dword [rax + 8]
mov rax, qword [r12 + 0x20]
shl rcx, 5
mov rbx, qword [rcx + rax + 8]
mov eax, r10d
mov dword [rsp + 0x40], eax
cmp byte [rbx + 0x11], 0
je 0x1401f51a1
inc dword [rbx + 0x14]
inc sil
cmp byte [rbx + 0x12], 0
jne 0x1401f50dd
mov rcx, rbx
call fcn.1401942f0
xor r10d, r10d
movzx r8d, sil
mov edx, edi
mov rcx, rbx
call fcn.1401b25d0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f5176
mov r14, qword [rbx + 8]
mov rcx, qword [r14 + 0x78]
test rcx, rcx
je 0x1401f5117
cmp dword [rcx + 8], edi
jne 0x1401f510e
cmp qword [rcx], rbx
je 0x1401f515b
mov rcx, qword [rcx + 0x10]
test rcx, rcx
jne 0x1401f5104
mov ecx, 0x18
call fcn.1401d9ec0
mov rcx, rax
test rax, rax
je 0x1401f5136
xor eax, eax
mov qword [rcx], rax
mov qword [rcx + 8], rax
mov qword [rcx + 0x10], rax
test rcx, rcx
jne 0x1401f5149
mov eax, 7
xor r10d, r10d
mov dword [rsp + 0x40], eax
jmp 0x1401f516d
mov dword [rcx + 8], edi
mov qword [rcx], rbx
mov rax, qword [r14 + 0x78]
mov qword [rcx + 0x10], rax
mov qword [r14 + 0x78], rcx
cmp sil, byte [rcx + 0xc]
jbe 0x1401f5165
mov byte [rcx + 0xc], sil
xor r10d, r10d
mov dword [rsp + 0x40], r10d
mov r14, qword [rsp + 0x60]
mov eax, dword [rsp + 0x40]
cmp byte [rbx + 0x11], 0
je 0x1401f5191
sub dword [rbx + 0x14], 1
jne 0x1401f5191
mov rcx, rbx
call fcn.140207ec0
mov eax, dword [rsp + 0x40]
xor r10d, r10d
mov r11, qword [rsp + 0x48]
mov r8d, 1
mov r9, qword [rsp + 0x58]
test eax, eax
jne 0x1401f6452
mov r15, qword [rsp + 0x38]
movzx esi, byte [rsp + 0x30]
mov edi, dword [rsp + 0x50]
jmp case.0x1401ef578.85
movsxd rdx, dword [r12 + 0x1f4]
mov rbx, qword [r15 + 0x10]
mov dword [rsp + 0x40], r10d
test edx, edx
jle 0x1401f51e9
cmp qword [r12 + 0x218], 0
jne 0x1401f51e9
mov dword [rsp + 0x40], 6
jmp 0x1401f52ad
test rbx, rbx
jne 0x1401f51f8
mov dword [rsp + 0x40], r10d
jmp case.0x1401ef578.85
mov rax, qword [rbx + 0x10]
mov rdi, qword [rax]
cmp qword [rdi + 0x70], 0
je 0x1401f52a9
mov rcx, r10
test edx, edx
jle 0x1401f5235
mov rax, qword [r12 + 0x218]
nop dword [rax]
cmp qword [rax], rbx
je 0x1401f52d4
inc rcx
add rax, 8
cmp rcx, rdx
jl 0x1401f5220
mov rcx, r12
call fcn.1401a6690
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f52a4
mov rcx, qword [rbx + 0x10]
call qword [rdi + 0x70]
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f52a4
mov edx, dword [r12 + 0x2c4]
add edx, dword [r12 + 0x2c0]
movsxd rcx, dword [r12 + 0x1f4]
mov rax, qword [r12 + 0x218]
mov qword [rax + rcx*8], rbx
inc dword [r12 + 0x1f4]
inc dword [rbx + 0x18]
test edx, edx
je 0x1401f52a4
cmp qword [rdi + 0xa0], 0
je 0x1401f52a4
mov dword [rbx + 0x20], edx
dec edx
mov rcx, qword [rbx + 0x10]
call qword [rdi + 0xa0]
mov dword [rsp + 0x40], eax
mov r11, qword [rsp + 0x48]
mov edi, dword [rsp + 0x50]
test rbx, rbx
je 0x1401f52be
mov rdx, qword [rbx + 0x10]
mov rcx, r11
call fcn.1401fc410
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x1401f6375
mov r11, qword [rsp + 0x48]
jmp 0x1401efe6f
mov dword [rsp + 0x40], r10d
jmp 0x1401f52a9
mov rax, qword [rsp + 0x38]
lea rcx, [rbp + 0x90]
xorps xmm0, xmm0
mov qword [rbp + 0x90], r10
xorps xmm1, xmm1
mov qword [rbp + 0xc0], r10
movdqu xmmword [rbp + 0x98], xmm0
mov qword [rbp + 0xb8], r12
movdqu xmmword [rbp + 0xa8], xmm1
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
add rdx, r14
call fcn.1401f8a60
mov rcx, qword [rbp + 0x98]
mov edx, 0x202
mov dword [rsp + 0x40], eax
movzx eax, cx
and ax, dx
cmp ax, dx
jne 0x1401f534f
cmp byte [rbp + 0x9a], 1
jne 0x1401f534f
mov rax, qword [rbp + 0xa0]
jmp 0x1401f536d
test cl, 1
jne 0x1401f54bf
mov dl, 1
lea rcx, [rbp + 0x90]
call fcn.1402094c0
mov rcx, qword [rbp + 0x98]
mov r14, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
test rax, rax
je 0x1401f54c9
movsxd rcx, dword [r15 + 4]
lea rbx, [r14 + 0xa8]
mov r8, qword [r12 + 0x20]
mov rdx, rax
shl rcx, 5
mov r8, qword [rcx + r8]
mov rcx, r12
call fcn.1401ced50
xor r8d, r8d
mov rsi, rax
mov rcx, qword [rax + 0x58]
mov rdi, qword [rcx]
lea rcx, [r12 + 0x1f8]
mov rdx, rdi
call fcn.1401a0d30
mov r8, qword [rax + 0x10]
test r8, r8
je 0x1401f548f
mov rcx, qword [r8]
mov r9, qword [rcx + 8]
test r9, r9
je 0x1401f548f
cmp qword [rcx + 0x28], 0
je 0x1401f548f
mov rdx, rsi
mov qword [rsp + 0x20], rbx
mov rcx, r12
call fcn.14020d2f0
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f54ad
mov rax, qword [rsi + 0x60]
test rax, rax
je 0x1401f54ad
cmp qword [rax], r12
je 0x1401f5434
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x1401f5411
mov rcx, qword [rbp + 0x98]
movzx esi, byte [rsp + 0x30]
mov edi, dword [rsp + 0x50]
jmp 0x1401f54c9
mov rcx, r12
call fcn.1401a6690
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f54ad
mov rdx, qword [rsi + 0x60]
test rdx, rdx
je 0x1401f545e
nop dword [rax]
cmp qword [rdx], r12
je 0x1401f545e
mov rdx, qword [rdx + 0x28]
test rdx, rdx
jne 0x1401f5450
movsxd rcx, dword [r12 + 0x1f4]
mov rax, qword [r12 + 0x218]
movzx esi, byte [rsp + 0x30]
mov edi, dword [rsp + 0x50]
mov qword [rax + rcx*8], rdx
inc dword [r12 + 0x1f4]
inc dword [rdx + 0x18]
mov rcx, qword [rbp + 0x98]
jmp 0x1401f54c9
mov r8, rdi
lea rdx, str.no_such_module:__s
mov rcx, r12
call fcn.1401d9e90
mov qword [rbx], rax
mov eax, 1
mov dword [rsp + 0x40], eax
mov rcx, qword [rbp + 0x98]
movzx esi, byte [rsp + 0x30]
mov edi, dword [rsp + 0x50]
jmp 0x1401f54c9
mov r14, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov eax, 0x2400
test ax, cx
jne 0x1401f54dc
cmp dword [rbp + 0xb0], 0
je 0x1401f54e8
lea rcx, [rbp + 0x90]
call fcn.14020a840
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x1401f637a
mov r11, qword [rsp + 0x48]
mov r14, qword [rsp + 0x60]
jmp 0x1401efe6f
inc dword [r12 + 0xd8]
mov rcx, qword [rsp + 0x38]
mov r8, qword [r12 + 0x20]
mov dword [rsp + 0x40], r10d
movsxd rax, dword [rcx + 4]
mov rdx, qword [rcx + 0x10]
mov rcx, r12
shl rax, 5
mov r8, qword [rax + r8]
call fcn.1401ced50
mov rdi, rax
test rax, rax
je 0x1401f55c8
mov rdx, qword [rax + 0x60]
test rdx, rdx
je 0x1401f55c8
nop dword [rax + rax]
mov rcx, qword [rdx + 0x10]
cmp dword [rcx + 8], 0
jg 0x1401f55d9
mov rdx, qword [rdx + 0x28]
test rdx, rdx
jne 0x1401f5550
mov rdx, rdi
mov rcx, r12
call fcn.14020d920
mov rbx, rax
mov rcx, qword [rax + 8]
mov rdx, qword [rcx]
mov rax, qword [rdx + 0x28]
test rax, rax
jne 0x1401f5585
mov rax, qword [rdx + 0x20]
inc dword [rdi + 0x3c]
mov rcx, qword [rbx + 0x10]
call rax
mov dword [rsp + 0x40], eax
test eax, eax
jne 0x1401f55a8
xor eax, eax
mov rcx, rbx
mov qword [rbx + 0x10], rax
mov qword [rdi + 0x60], rax
call fcn.1401fc7e0
cmp qword [r12 + 0x2d8], 0
jne 0x1401f55bd
mov eax, 0xffffffff
add dword [rdi + 0x3c], eax
jne 0x1401f55c8
mov rdx, rdi
mov rcx, r12
call fcn.14019c150
mov eax, dword [rsp + 0x40]
dec dword [r12 + 0xd8]
jmp 0x1401f37ec
dec dword [r12 + 0xd8]
mov eax, 6
mov dword [rsp + 0x40], eax
jmp 0x1401f37ec
mov rax, qword [rsp + 0x38]
mov qword [rbp - 0x28], r10
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x1401f648d
mov rdi, qword [rbx]
test rdi, rdi
je 0x1401f648d
lea rdx, [rbp - 0x28]
mov rcx, rbx
call qword [rdi + 0x30]
mov rcx, qword [rsp + 0x48]
mov rdx, rbx
mov dword [rsp + 0x40], eax
call fcn.1401fc410
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x1401f6375
mov rax, qword [rbp - 0x28]
mov r9d, 0xffffffff
mov rcx, qword [rsp + 0x48]
xor r8d, r8d
mov byte [rsp + 0x20], 2
mov qword [rax], rbx
mov rax, qword [rsp + 0x38]
mov edx, dword [rax + 4]
call fcn.14018efe0
mov rcx, qword [rbp - 0x28]
test rax, rax
je 0x1401f6485
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov qword [rax + 0x38], rcx
inc dword [rbx + 8]
jmp 0x1401efe6b
mov r8, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x38]
mov rdi, qword [r8 + 0x70]
movsxd rax, dword [rcx + 0xc]
movsxd rcx, dword [rcx + 4]
imul rdx, rax, 0x38
mov rax, qword [r8 + 0x78]
mov r8, r10
add rdx, r14
movsxd r9, dword [rdx + 0x38]
lea r11, [rdx + 0x38]
mov r13, qword [rax + rcx*8]
mov edx, dword [rdx]
mov rsi, qword [r13 + 0x38]
mov r15, qword [rsi]
mov r14, qword [r15]
test r9d, r9d
jle 0x1401f56e9
mov r10d, 1
nop dword [rax]
movsxd rax, r10d
inc r10d
imul rcx, rax, 0x38
add rcx, r11
mov qword [rdi + r8*8], rcx
inc r8
cmp r8, r9
jl 0x1401f56d0
mov rax, qword [rsp + 0x38]
mov rcx, rsi
mov qword [rsp + 0x20], rdi
mov r8, qword [rax + 0x10]
call qword [r14 + 0x40]
mov rcx, qword [rsp + 0x48]
mov rdx, r15
mov dword [rsp + 0x40], eax
call fcn.1401fc410
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x1401f6375
mov rcx, rsi
call qword [r14 + 0x50]
mov byte [r13 + 2], 0
test eax, eax
je 0x1401f1b7f
xor r10d, r10d
mov r15, qword [rsp + 0x38]
mov r9, qword [rsp + 0x58]
mov r8d, 1
jmp 0x1401f0e27
mov rbx, qword [rsp + 0x38]
mov rax, qword [r11 + 0x78]
movsxd rcx, dword [rbx + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [rbx + 0xc]
imul rbx, rax, 0x38
add rbx, r14
cmp byte [rdi + 2], 0
je 0x1401f579e
mov eax, 0x2400
test word [rbx + 8], ax
je 0x1401f578b
mov rcx, rbx
call fcn.14020a910
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
jmp 0x1401efe6b
mov r15, qword [rsp + 0x38]
mov edi, dword [rsp + 0x50]
mov word [rbx + 8], r8w
jmp case.0x1401ef578.85
mov rax, qword [rdi + 0x38]
xorps xmm0, xmm0
xorps xmm1, xmm1
mov rsi, qword [rax]
mov rax, qword [rsp + 0x38]
mov r14, qword [rsi]
movdqu xmmword [rbp + 0x1f0], xmm0
mov qword [rbp + 0x1e8], rbx
movdqu xmmword [rbp + 0x200], xmm1
movdqu xmmword [rbp + 0x210], xmm0
test byte [rax + 2], 1
je 0x1401f5801
mov ecx, 0x2400
test word [rbx + 8], cx
je 0x1401f57f3
mov rcx, rbx
call fcn.14020a910
mov rax, qword [rsp + 0x38]
xor r10d, r10d
mov ecx, 0x4001
mov word [rbx + 8], cx
mov dword [rbx], r10d
jmp 0x1401f580f
mov ecx, 0x3e40
and word [rbx + 8], cx
or word [rbx + 8], 1
mov r8d, dword [rax + 8]
lea rdx, [rbp + 0x1e8]
mov rcx, qword [rdi + 0x38]
call qword [r14 + 0x58]
mov rcx, qword [rsp + 0x48]
mov rdx, rsi
mov dword [rsp + 0x40], eax
call fcn.1401fc410
cmp dword [rbp + 0x20c], 0
jle 0x1401f5862
mov rcx, rbx
call fcn.140182e30
mov rcx, qword [rsp + 0x48]
lea rdx, [0x1402b7950]
mov r8, rax
call fcn.1401ef370
mov eax, dword [rbp + 0x20c]
mov dword [rsp + 0x40], eax
test byte [rbx + 8], 2
movzx esi, byte [rsp + 0x30]
je 0x1401f587f
cmp byte [rbx + 0xa], sil
je 0x1401f587f
movzx edx, sil
mov rcx, rbx
call fcn.1401f9840
mov rcx, rbx
call fcn.1401f9810
test eax, eax
jne 0x1401f64b9
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x1401f6375
mov r11, qword [rsp + 0x48]
mov r14, qword [rsp + 0x60]
mov r15, qword [rsp + 0x38]
jmp 0x1401efe6b
mov rax, qword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r11 + 0x78]
mov rdi, qword [rax + rcx*8]
cmp byte [rdi + 2], 0
jne 0x1401f2235
mov rcx, qword [rdi + 0x38]
mov rbx, qword [rcx]
mov rsi, qword [rbx]
call qword [rsi + 0x48]
mov rcx, qword [rsp + 0x48]
mov rdx, rbx
mov dword [rsp + 0x40], eax
call fcn.1401fc410
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x1401f6375
mov rcx, qword [rdi + 0x38]
call qword [rsi + 0x50]
movzx esi, byte [rsp + 0x30]
test eax, eax
jne 0x1401f5922
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rsp + 0x58]
lea rax, [rax + rcx*8]
mov qword [rsp + 0x38], rax
mov r11, qword [rsp + 0x48]
mov eax, dword [r12 + 0x170]
test eax, eax
jne 0x1401f6794
mov r15d, dword [rbp - 0x64]
cmp r15d, r13d
jb 0x1401f5d8b
mov rax, qword [r12 + 0x1e0]
test rax, rax
je 0x1401f5d86
add r13d, dword [r12 + 0x1f0]
mov rcx, qword [r12 + 0x1e8]
mov dword [rsp + 0x54], r13d
call rax
test eax, eax
jne 0x1401f6497
cmp r15d, r13d
jae 0x1401f5944
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
jmp 0x1401efe6b
mov rcx, qword [rsp + 0x38]
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, r14
test byte [rbx + 8], 2
je 0x1401f59d2
cmp byte [rbx + 0xa], 1
je 0x1401f59d2
mov dl, 1
mov rcx, rbx
call fcn.1401f9840
test eax, eax
jne 0x1401f6375
mov rax, qword [rsi]
mov rcx, rsi
mov rdx, qword [rbx + 0x10]
call qword [rax + 0x98]
mov dword [rsp + 0x40], eax
test edi, edi
jne 0x1401f59f3
and qword [r12 + 0x30], 0xfffffffffbffffff
mov rcx, qword [rsp + 0x48]
mov rdx, rsi
call fcn.1401fc410
mov r11, qword [rsp + 0x48]
mov eax, dword [rsp + 0x40]
and dword [r11 + 0xc8], 0xfffffffc
test eax, eax
je 0x1401f1b89
mov r14, r11
jmp 0x1401f637a
cmp byte [r12 + 0x61], 0
jne 0x1401f67cd
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x1401f648d
mov r10, qword [rbx]
test r10, r10
je 0x1401f648d
cmp qword [r10 + 0x68], 0
je 0x1401f5fdc
mov r8, qword [r11 + 0x70]
xor r13d, r13d
mov r11, qword [rsp + 0x38]
movzx edi, byte [r12 + 0x66]
movsxd rax, dword [r11 + 0xc]
movsxd rdx, dword [r11 + 8]
imul rcx, rax, 0x38
mov eax, r13d
add rcx, r14
test edx, edx
jle 0x1401f5aa0
nop dword [rax]
nop word [rax + rax]
mov qword [r8 + rax*8], rcx
add rcx, 0x38
inc rax
cmp rax, rdx
jl 0x1401f5a90
movzx eax, byte [r11 + 2]
lea r9, [rbp + 0x88]
mov rcx, rbx
mov byte [r12 + 0x66], al
call qword [r10 + 0x68]
mov rcx, qword [rsp + 0x48]
mov rdx, rbx
mov dword [rsp + 0x40], eax
mov byte [r12 + 0x66], dil
call fcn.1401fc410
mov eax, dword [rsp + 0x40]
mov rcx, qword [rsp + 0x38]
test eax, eax
jne 0x1401f5af1
cmp dword [rcx + 4], r13d
je 0x1401f5af1
mov rax, qword [rbp + 0x88]
mov qword [r12 + 0x38], rax
mov eax, dword [rsp + 0x40]
cmp al, 0x13
jne 0x1401f5b41
mov rax, qword [rcx + 0x10]
cmp byte [rax + 0x1c], r13b
je 0x1401f5b41
movzx ecx, word [rcx + 2]
mov r11, qword [rsp + 0x48]
cmp cx, 4
jne 0x1401f5b29
mov r15, qword [rsp + 0x38]
xor r10d, r10d
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
mov dword [rsp + 0x40], r10d
jmp 0x1401efe77
movzx eax, cl
cmp cx, 5
mov ecx, 2
cmove eax, ecx
mov byte [r11 + 0xc2], al
jmp 0x1401f5b4a
mov r11, qword [rsp + 0x48]
inc dword [r11 + 0x3c]
mov eax, dword [rsp + 0x40]
test eax, eax
jne 0x1401f67f5
mov r15, qword [rsp + 0x38]
jmp 0x1401efe6b
mov rdx, qword [rsp + 0x38]
mov rcx, r11
call fcn.1401acec0
mov rcx, qword [r12 + 0x20]
mov r15, qword [rsp + 0x38]
mov r11, qword [rsp + 0x48]
movsxd rdx, dword [r15 + 4]
shl rdx, 5
mov rdx, qword [rdx + rcx + 8]
mov rcx, qword [rdx + 8]
mov edx, dword [rcx + 0x40]
btr edx, 0x1f
mov qword [rax], rdx
jmp 0x1401efe6f
mov rdx, qword [rsp + 0x38]
mov rcx, r11
call fcn.1401acec0
mov rcx, qword [r12 + 0x20]
mov rsi, rax
mov rax, qword [rsp + 0x38]
movsxd rdx, dword [rax + 4]
shl rdx, 5
mov rbx, qword [rdx + rcx + 8]
xor edx, edx
mov edi, edx
mov edx, dword [rax + 0xc]
test edx, edx
je 0x1401f5bde
mov rcx, qword [rbx + 8]
mov edi, dword [rcx + 0x40]
btr edi, 0x1f
cmp edi, edx
cmovb edi, edx
cmp byte [rbx + 0x11], 0
je 0x1401f5bf5
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x1401f5bf5
mov rcx, rbx
call fcn.1401942f0
mov rax, qword [rbx + 8]
mov rcx, qword [rax]
test edi, edi
jle 0x1401f5c08
mov dword [rcx + 0xc0], edi
jmp 0x1401f5c0e
mov edi, dword [rcx + 0xc0]
cmp byte [rbx + 0x11], 0
je 0x1401f5c22
sub dword [rbx + 0x14], 1
jne 0x1401f5c22
mov rcx, rbx
call fcn.140207ec0
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
movsxd rax, edi
mov qword [rsi], rax
movzx esi, byte [rsp + 0x30]
jmp 0x1401efe6b
mov rax, qword [rsp + 0x38]
mov rbx, qword [rax + 0x10]
movsxd rax, dword [rax + 0xc]
imul rdi, rax, 0x38
add rdi, r14
cmp qword [rbx], rdi
je 0x1401f5ca7
mov qword [rbx + 0x18], r11
mov qword [rbx], rdi
movzx eax, byte [rbx + 0x29]
mov edx, eax
sub rdx, 1
lea r9d, [rax - 1]
js 0x1401f5ca7
mov r12, qword [rsp + 0x38]
lea r8, [rbx + 0x30]
lea r8, [r8 + rdx*8]
nop dword [rax]
mov eax, dword [r12 + 8]
lea r8, [r8 - 8]
add eax, r9d
dec r9d
cdqe
imul rcx, rax, 0x38
add rcx, r14
sub rdx, 1
mov qword [r8 + 8], rcx
jns 0x1401f5c80
mov r12, qword [rsp + 0x68]
mov eax, 0x3e40
lea r8, [rbx + 0x30]
and word [rdi + 8], ax
mov rcx, rbx
or word [rdi + 8], 1
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x29]
call qword [rax + 0x18]
mov eax, dword [rbx + 0x24]
test eax, eax
je 0x1401f5d29
jle 0x1401f5cf3
mov rcx, rdi
call fcn.140182e30
mov rcx, qword [rsp + 0x48]
lea rdx, [0x1402b7950]
mov r8, rax
call fcn.1401ef370
mov eax, dword [rbx + 0x24]
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x38]
mov rcx, r12
mov rdx, qword [rsp + 0x48]
mov r8d, dword [rbx + 0x20]
add rdx, 0x120
mov r9d, dword [rax + 4]
call fcn.1401eecd0
mov eax, dword [rsp + 0x40]
xor r10d, r10d
mov dword [rbx + 0x24], r10d
test eax, eax
jne 0x1401f6375
jmp 0x1401f5d2c
xor r10d, r10d
movzx eax, word [rdi + 8]
test al, 0x12
je 0x1401f5d69
test al, 2
je 0x1401f5d4a
cmp byte [rdi + 0xa], sil
je 0x1401f5d4a
movzx edx, sil
mov rcx, rdi
call fcn.1401f9840
mov rcx, rdi
call fcn.1401f9810
mov r11, qword [rsp + 0x48]
test eax, eax
jne 0x1401f64be
mov r15, qword [rsp + 0x38]
jmp 0x1401efe6b
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov edi, dword [rsp + 0x50]
mov r14, qword [rsp + 0x60]
mov r9, qword [rsp + 0x58]
jmp 0x1401efe77
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov edi, dword [rsp + 0x50]
xor r10d, r10d
mov r14, qword [rsp + 0x60]
mov r9, qword [rsp + 0x58]
jmp 0x1401efe77
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
xor r10d, r10d
mov edi, dword [rsp + 0x50]
movzx esi, byte [rsp + 0x30]
mov r14, qword [rsp + 0x60]
mov r9, qword [rsp + 0x58]
jmp 0x1401efe77
mov r11, qword [rsp + 0x48]
mov r14, qword [rsp + 0x60]
mov r9, qword [rsp + 0x58]
jmp 0x1401efe77
mov r11, qword [rsp + 0x48]
xor r10d, r10d
mov r15, qword [rsp + 0x38]
mov r14, qword [rsp + 0x60]
mov r9, qword [rsp + 0x58]
jmp 0x1401efe77
mov r11, qword [rsp + 0x48]
mov edi, dword [rsp + 0x50]
mov r14, qword [rsp + 0x60]
mov r9, qword [rsp + 0x58]
jmp 0x1401efe77
mov r11, qword [rsp + 0x48]
xor r10d, r10d
mov edi, dword [rsp + 0x50]
mov r14, qword [rsp + 0x60]
mov r9, qword [rsp + 0x58]
jmp 0x1401efe77
mov r11, qword [rsp + 0x48]
mov r15, qword [rsp + 0x38]
mov edi, dword [rsp + 0x50]
movzx esi, byte [rsp + 0x30]
mov r14, qword [rsp + 0x60]
mov r9, qword [rsp + 0x58]
jmp 0x1401efe77
mov r15, qword [rsp + 0x38]
mov r14, qword [rsp + 0x60]
mov r9, qword [rsp + 0x58]
jmp 0x1401efe77
movzx eax, byte [r12 + 0x68]
test al, 0x41
je 0x1401f5ed1
cmp byte [r11 + 0xc5], 0
jne 0x1401f5ed1
mov r9, qword [r15 + 0x10]
test r9, r9
jne 0x1401f5e8d
mov r9, qword [r11 + 0xf0]
test r9, r9
je 0x1401f5ecc
test al, 0x40
je 0x1401f5f46
mov rdi, qword [r12 + 0xe8]
mov rdx, r9
mov rcx, r11
call fcn.1401f6c60
mov rcx, qword [r12 + 0xf0]
mov rdx, rax
mov rbx, rax
call rdi
mov rcx, rbx
call fcn.1401802c0
mov r11, qword [rsp + 0x48]
xor r10d, r10d
mov edi, dword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
mov r13d, 1
mov rax, qword [rsp + 0x38]
mov r15, qword [rsp + 0x38]
mov eax, dword [rax + 4]
cmp eax, dword [0x1402cc5c4]
jl 0x1401f5f34
cmp byte [r15], 0xaa
je 0x1401efe77
cmp dword [r11 + 0x90], 1
mov edx, r13d
jle 0x1401f5f31
mov eax, 0x18
nop dword [rax + rax]
mov rcx, qword [r11 + 0x88]
cmp byte [rax + rcx], 0x11
jne 0x1401f5f22
mov dword [rax + rcx + 4], r10d
inc edx
add rax, 0x18
cmp edx, dword [r11 + 0x90]
jl 0x1401f5f10
mov eax, r10d
inc eax
mov dword [r15 + 4], eax
inc dword [r11 + 0xec]
jmp 0x1401f0e21
cmp dword [r12 + 0xd4], 1
jle 0x1401f5fa4
mov r8, r9
lea rdx, str.____s
mov rcx, r12
call fcn.1401d9e90
mov r8, qword [rsp + 0x48]
mov r13d, 1
mov rdx, qword [r12 + 0xf0]
mov ecx, r13d
mov r9, rax
mov rbx, rax
call qword [r12 + 0xe8]
mov rdx, rbx
mov rcx, r12
call fcn.1401c5d90
mov r11, qword [rsp + 0x48]
xor r10d, r10d
mov r9, qword [rsp + 0x58]
jmp 0x1401f5ed7
mov rdx, qword [r12 + 0xf0]
mov r13d, 1
mov ecx, r13d
mov r8, r11
call qword [r12 + 0xe8]
mov r11, qword [rsp + 0x48]
xor r10d, r10d
mov r9, qword [rsp + 0x58]
jmp 0x1401f5ed7
mov r15, qword [rsp + 0x38]
jmp 0x1401f0e27
mov r15, qword [rsp + 0x38]
xor r10d, r10d
jmp case.0x1401ef578.85
mov r15, qword [rsp + 0x38]
movzx esi, byte [rsp + 0x30]
jmp case.0x1401ef578.85
mov r15, qword [rsp + 0x38]
mov r14, qword [rsp + 0x60]
jmp 0x1401efe77
mov r15, qword [rsp + 0x38]
movzx esi, byte [rsp + 0x30]
mov r9, qword [rsp + 0x58]
jmp 0x1401efe77
mov dword [r11 + 0x38], eax
movzx eax, byte [rdx + 8]
mov byte [r11 + 0xc2], al
mov dword [r11 + 0x34], ebx
cmp dword [r11 + 0x38], 0
je 0x1401f60da
movzx eax, word [rdx + 2]
mov rcx, r11
test ax, ax
je 0x1401f6096
movzx r8d, ax
lea rdx, str._s_constraint_failed
lea rax, [0x140000000]
mov r8, qword [rax + r8*8 + 0x2b5138]
call fcn.1401ef370
mov rax, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x48]
mov r9, qword [rax + 0x10]
test r9, r9
je 0x1401f60ab
mov r8, qword [rdi + 0xa8]
lea rdx, str._z:__s
mov rcx, r12
call fcn.1401d9e90
mov qword [rdi + 0xa8], rax
jmp 0x1401f60ab
mov r8, qword [rdx + 0x10]
lea rdx, [0x1402b7950]
call fcn.1401ef370
mov rdi, qword [rsp + 0x48]
mov rax, qword [rdi + 0xa8]
lea rdx, str.abort_at__d_in___s_:__s
mov r9, qword [rdi + 0xf0]
mov r8d, ebx
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x38]
mov ecx, dword [rax + 4]
call fcn.140188ec0
mov r11, qword [rsp + 0x48]
mov rcx, r11
call fcn.1401f7900
mov rdi, qword [rsp + 0x38]
cmp eax, 5
mov esi, dword [rsp + 0x54]
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x48]
jne 0x1401f6105
mov dword [rax + 0x38], 5
jmp 0x1401f68eb
cmp dword [rax + 0x38], 0
mov ecx, 0x65
mov eax, 1
cmovne ecx, eax
mov dword [rsp + 0x40], ecx
jmp 0x1401f68eb
mov ecx, 0x157a8
call fcn.1401c4050
mov r12, qword [rsp + 0x68]
jmp 0x1401f6375
lea rdx, str.cannot_open_savepoint___SQL_statements_in_progress
mov rcx, r11
call fcn.1401ef370
mov eax, 5
jmp 0x1401f6375
lea rdx, str.cannot_release_savepoint___SQL_statements_in_progress
mov rcx, r11
call fcn.1401ef370
mov eax, 5
jmp 0x1401f6375
mov r8, qword [rsp + 0x48]
movabs rax, 0x2aaaaaaaaaaaaaab
mov rdi, qword [rsp + 0x38]
mov esi, dword [rsp + 0x54]
mov rcx, rdi
sub rcx, qword [rsp + 0x58]
imul rcx
mov dword [rsp + 0x40], 5
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [r8 + 0x34], edx
mov byte [r12 + 0x5f], 0
mov dword [r8 + 0x38], 5
jmp 0x1401f68eb
mov dword [r11 + 0x38], 0x313
lea rdx, str.FOREIGN_KEY_constraint_failed
mov byte [r11 + 0xc2], 2
call fcn.1401ef370
mov rdi, qword [rsp + 0x38]
mov esi, dword [rsp + 0x54]
mov dword [rsp + 0x40], ebx
jmp 0x1401f68eb
mov r14, qword [rsp + 0x48]
mov eax, 8
mov rdi, rcx
lea ebx, [rax - 7]
jmp 0x1401f6384
mov rdi, qword [rsp + 0x38]
mov esi, dword [rsp + 0x54]
cmp al, 5
jne 0x1401f6925
mov r8, qword [rsp + 0x48]
mov rcx, rdi
sub rcx, qword [rsp + 0x58]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov ecx, dword [rsp + 0x40]
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [r8 + 0x34], edx
mov dword [r8 + 0x38], ecx
jmp 0x1401f68eb
mov rdx, qword [r11 + 0xa8]
mov rcx, r12
call fcn.1401c5d90
mov edx, 0x1c
mov rcx, r12
call fcn.1401c5f00
test rax, rax
je 0x1401f6283
movups xmm0, xmmword [str.database_schema_has_changed]
movups xmmword [rax], xmm0
movsd xmm1, qword [0x1402b7788]
movsd qword [rax + 0x10], xmm1
mov ecx, dword [0x1402b7790]
mov dword [rax + 0x18], ecx
mov r14, qword [rsp + 0x48]
mov qword [r14 + 0xa8], rax
mov rax, qword [rsp + 0x38]
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 - 0x54]
cmp dword [rcx], eax
je 0x1401f62b8
mov rcx, r12
call fcn.1401e2ef0
and dword [r14 + 0xc8], 0xfffffffd
mov eax, send
or dword [r14 + 0xc8], 1
jmp 0x1401f637a
mov eax, 0x204
jmp 0x1401f6375
mov eax, recv
mov rdi, r15
mov r14, qword [rsp + 0x48]
mov ebx, 1
jmp 0x1401f6384
mov eax, 0x30b
jmp 0x1401f62e1
mov r14, qword [rsp + 0x48]
mov eax, 6
mov rdi, rbx
mov byte [r14 + 0xc2], 2
lea ebx, [rax - 5]
jmp 0x1401f6387
mov eax, 7
mov dword [rsp + 0x40], eax
mov rcx, r12
call fcn.1401e2e50
mov eax, dword [rsp + 0x40]
cmp eax, 7
je 0x1401f67cd
jmp 0x1401f6375
mov ebx, 1
lea rdx, str.too_many_levels_of_trigger_recursion
mov rcx, r11
mov dword [rsp + 0x40], ebx
call fcn.1401ef370
mov r14, qword [rsp + 0x48]
mov eax, ebx
jmp 0x1401f637f
mov rcx, rbx
call fcn.140182e30
mov rcx, qword [rsp + 0x48]
lea rdx, [0x1402b7950]
mov r8, rax
call fcn.1401ef370
mov eax, dword [rsp + 0x40]
mov r14, qword [rsp + 0x48]
mov ebx, 1
mov rdi, qword [rsp + 0x38]
xor r13d, r13d
mov esi, dword [rsp + 0x54]
cmp byte [r12 + 0x61], 0
mov ecx, 7
cmovne eax, ecx
cmp qword [r14 + 0xa8], 0
mov dword [rsp + 0x40], eax
jne 0x1401f63d2
cmp eax, 0xc0a
je 0x1401f63d2
mov ecx, eax
call fcn.140181390
mov rcx, qword [rsp + 0x48]
lea rdx, [0x1402b7950]
mov r8, rax
call fcn.1401ef370
mov eax, dword [rsp + 0x40]
mov r14, qword [rsp + 0x48]
mov dword [r14 + 0x38], eax
cmp eax, 0xc0a
je 0x1401f6823
movzx eax, al
sub eax, 0xa
test eax, 0xfffffffb
jne 0x1401f6823
mov rcx, qword [r12]
mov rax, qword [rcx + 0x80]
test rax, rax
je 0x1401f681b
xor r8d, r8d
xor edx, edx
call rax
jmp 0x1401f681e
mov rcx, qword [rsp + 0x48]
lea rax, str.into
cmp edi, 5
lea r8, str.out_of
mov ebx, 1
lea rdx, str.cannot_change__s_wal_mode_from_within_a_transaction
cmove r8, rax
mov dword [rsp + 0x40], ebx
call fcn.1401ef370
mov r14, qword [rsp + 0x48]
mov eax, ebx
mov rdi, qword [rsp + 0x38]
jmp 0x1401f6387
mov rdi, qword [rsp + 0x38]
cmp al, 6
jne 0x1401f62e4
mov r8, qword [rdi + 0x10]
lea rdx, str.database_table_is_locked:__s
mov rcx, r11
call fcn.1401ef370
mov eax, dword [rsp + 0x40]
mov ebx, 1
mov r14, qword [rsp + 0x48]
jmp 0x1401f6384
call qword [rdi + 0x38]
jmp 0x1401f67cd
mov eax, 6
jmp 0x1401f6375
mov r14, qword [rsp + 0x48]
mov eax, 9
mov rdi, qword [rsp + 0x38]
mov esi, 0xffffffff
xor r13d, r13d
lea ebx, [rax - 8]
jmp 0x1401f638b
mov r12, r8
mov r11, qword [rsp + 0x48]
lea rdx, str.string_or_blob_too_big
mov rcx, r11
call fcn.1401ef370
mov eax, send
jmp 0x1401f6375
mov r12, r8
jmp 0x1401f64be
cmp qword [r11 + 0x50], 0
jle 0x1401f6507
mov dword [r11 + 0x38], 0x313
lea rdx, str.FOREIGN_KEY_constraint_failed
mov rcx, r11
mov byte [r11 + 0xc2], 2
call fcn.1401ef370
jmp 0x1401f1bdd
mov rax, qword [r11]
cmp dword [rax + 0x2c4], 0
je 0x1401f652d
cmp dword [r11 + 0x40], 0
je 0x1401f652d
mov edx, r8d
mov rcx, r11
call fcn.140209670
mov r11, qword [rsp + 0x48]
xor r10d, r10d
mov eax, dword [r11 + 0x30]
mov edi, r10d
mov rbx, qword [rsp + 0x38]
add eax, 2
or eax, 1
mov dword [r11 + 0x30], eax
movsxd rax, dword [rbx + 4]
imul rsi, rax, 0x38
add rsi, r14
mov qword [r11 + 0xa0], rsi
cmp dword [rbx + 8], 0
jle 0x1401f65b1
lea rbx, [rsi + 8]
mov r14d, 0x202
mov eax, 0x1000
test word [rbx], ax
je 0x1401f6586
movsxd rax, edi
imul rcx, rax, 0x38
add rcx, rsi
call fcn.1401f9040
test eax, eax
jne 0x1401f67cd
movzx eax, word [rbx]
and ax, r14w
cmp ax, 2
jne 0x1401f659c
lea rcx, [rbx - 8]
call fcn.14020a7e0
mov rax, qword [rsp + 0x38]
inc edi
add rbx, 0x38
cmp edi, dword [rax + 8]
jl 0x1401f6565
mov r11, qword [rsp + 0x48]
cmp byte [r12 + 0x61], 0
jne 0x1401f67cd
test byte [r12 + 0x68], 4
je 0x1401f65df
mov rdx, qword [r12 + 0xf0]
xor r9d, r9d
mov r8, r11
lea ecx, [r9 + 4]
call qword [r12 + 0xe8]
mov rdi, qword [rsp + 0x38]
movabs rax, 0x2aaaaaaaaaaaaaab
mov esi, dword [rsp + 0x54]
mov rcx, rdi
sub rcx, qword [rsp + 0x58]
mov ebx, 0x64
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov rax, qword [rsp + 0x48]
inc edx
mov dword [rax + 0x34], edx
jmp 0x1401f68ef
mov rax, qword [rsp + 0x38]
mov ebx, dword [rax + 4]
mov ecx, dword [rax + 8]
movzx eax, byte [r12 + 0x5f]
cmp ebx, eax
je 0x1401f675b
test ecx, ecx
je 0x1401f66b5
mov edx, 0x204
mov rcx, r12
call fcn.1401e3510
mov r11, qword [rsp + 0x48]
mov dl, 1
mov rcx, r11
mov byte [r12 + 0x5f], dl
call fcn.1401f7900
cmp eax, 5
jne 0x1401f672b
mov rcx, qword [rsp + 0x38]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x38]
mov esi, dword [rsp + 0x54]
imul rcx
mov rcx, qword [rsp + 0x48]
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov eax, 1
sub al, bl
mov dword [rcx + 0x34], edx
mov ebx, 5
mov byte [r12 + 0x5f], al
mov dword [rcx + 0x38], ebx
jmp 0x1401f68ef
test ebx, ebx
je 0x1401f66dd
cmp dword [r12 + 0xd0], 0
jle 0x1401f66dd
lea rdx, str.cannot_commit_transaction___SQL_statements_in_progress
mov rcx, r11
call fcn.1401ef370
mov eax, 5
jmp 0x1401f6375
mov rax, qword [r11]
mov edx, ebx
mov rcx, qword [rax + 0x2d0]
add rcx, qword [rax + 0x2c8]
test rcx, rcx
jle 0x1401f6650
mov dword [r11 + 0x38], 0x313
lea rdx, str.FOREIGN_KEY_constraint_failed
mov rcx, r11
mov byte [r11 + 0xc2], 2
call fcn.1401ef370
mov rdi, qword [rsp + 0x38]
mov ebx, 1
mov esi, dword [rsp + 0x54]
jmp 0x1401f68ef
mov rcx, r12
call fcn.1401c1dd0
mov rax, qword [rsp + 0x48]
mov ecx, 0x65
mov rdi, qword [rsp + 0x38]
mov esi, dword [rsp + 0x54]
cmp dword [rax + 0x38], 0
mov eax, 1
cmovne ecx, eax
mov dword [rsp + 0x40], ecx
jmp 0x1401f68eb
test ebx, ebx
jne 0x1401f6773
lea rdx, str.cannot_start_a_transaction_within_a_transaction
mov rcx, r11
call fcn.1401ef370
jmp 0x1401f1bdd
test ecx, ecx
lea rax, str.cannot_rollback___no_transaction_is_active
lea rdx, str.cannot_commit___no_transaction_is_active
mov rcx, r11
cmovne rdx, rax
call fcn.1401ef370
jmp 0x1401f1bdd
cmp byte [r12 + 0x61], 0
mov ecx, 7
mov eax, 9
cmovne eax, ecx
mov ecx, eax
mov dword [rsp + 0x40], eax
mov dword [r11 + 0x38], eax
call fcn.140181390
mov r8, rax
lea rdx, [0x1402b7950]
mov rcx, r11
jmp 0x1401f636c
mov r12, qword [rsp + 0x68]
mov rcx, r12
call fcn.1401da8a0
mov rcx, qword [rsp + 0x48]
lea rdx, str.out_of_memory
call fcn.1401ef370
mov eax, 7
jmp 0x1401f6375
mov r12, qword [rsp + 0x68]
mov r14, qword [rsp + 0x48]
mov ebx, 1
mov rdi, qword [rsp + 0x38]
jmp 0x1401f6387
mov r14, qword [rsp + 0x48]
mov rdi, rbx
mov ebx, 1
jmp 0x1401f6384
mov eax, r13d
mov dword [r12 + 0x58], eax
mov rcx, rdi
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x58]
imul rcx
mov rcx, qword [rsp + 0x48]
sar rdx, 2
mov r8, rdx
shr r8, 0x3f
mov rax, qword [rcx + 0xa8]
add r8, rdx
mov r9, qword [rcx + 0xf0]
lea rdx, str.statement_aborts_at__d:___s___s
mov ecx, dword [rsp + 0x40]
mov qword [rsp + 0x20], rax
call fcn.140188ec0
mov rcx, qword [rsp + 0x48]
call fcn.1401f7900
cmp dword [rsp + 0x40], 0xc0a
jne 0x1401f68d1
cmp byte [r12 + 0x61], 0
jne 0x1401f68d1
cmp byte [r12 + 0x62], 0
jne 0x1401f68d1
mov byte [r12 + 0x61], 1
cmp dword [r12 + 0xd4], 0
jle 0x1401f68ab
mov dword [r12 + 0x170], ebx
inc dword [r12 + 0x178]
mov word [r12 + 0x17c], r13w
mov rax, qword [r12 + 0x138]
test rax, rax
je 0x1401f68d1
mov ecx, 7
mov dword [rax + 0x18], ecx
movzx eax, byte [rsp + 0x70]
mov dword [rsp + 0x40], ebx
test al, al
je 0x1401f68eb
movzx edx, al
mov rcx, r12
dec edx
call fcn.1401e2ef0
mov ebx, dword [rsp + 0x40]
mov r15d, dword [rbp - 0x64]
cmp r15d, esi
jb 0x1401f6936
mov rax, qword [r12 + 0x1e0]
test rax, rax
je 0x1401f6936
mov rcx, qword [r12 + 0x1e8]
add esi, dword [r12 + 0x1f0]
call rax
test eax, eax
je 0x1401f68f3
mov esi, 0xffffffff
mov eax, 9
mov r14, qword [rsp + 0x48]
xor r13d, r13d
lea ebx, [r13 + 1]
jmp 0x1401f638b
mov r8, qword [rsp + 0x48]
movaps xmm6, xmmword [rsp + 0x370]
mov r14, qword [rsp + 0x388]
mov r13, qword [rsp + 0x390]
add dword [r8 + 0xe4], r15d
cmp dword [r8 + 0xd0], 0
mov r15, qword [rsp + 0x380]
mov r12, qword [rsp + 0x3c8]
mov rdi, qword [rsp + 0x3c0]
mov rsi, qword [rsp + 0x3b8]
je 0x1401f698c
mov rcx, r8
call fcn.14020a750
mov eax, ebx
mov rcx, qword [rbp + 0x260]
xor rcx, rsp
call fcn.14021e8a0
add rsp, 0x398
pop rbx
pop rbp
ret