Function at 0x140091e9b
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xbb8
movdqa xmmword [rsp + 0xba0], xmm10
movdqa xmmword [rsp + 0xb90], xmm9
movdqa xmmword [rsp + 0xb80], xmm8
movaps xmmword [rsp + 0xb70], xmm7
movaps xmmword [rsp + 0xb60], xmm6
mov r13, rdx
mov qword [rsp + 0x1e8], rcx
mov rcx, qword [rdx + 0x128]
test rcx, rcx
mov qword [rsp + 0x370], r8
je 0x140091f13
mov rdx, r8
call fcn.1400f45c8
mov r8, qword [rsp + 0x370]
test al, al
je 0x140095b41
mov ecx, 0xc8
lea rax, [rcx + r13]
mov qword [rsp + 0x1f0], rax
mov eax, 0x94
lea r15, [rsp + 0x518]
lea rdx, [r15 + rax]
mov qword [rsp + 0x4c0], rdx
mov edx, pe_nt_image_headers64
lea r9, [rsp + 0x5c0]
lea r10, [r9 + rdx]
mov qword [rsp + 0x500], r10
add rax, r9
mov qword [rsp + 0x508], rax
mov eax, 0xb1
add r9, rax
mov qword [rsp + 0x4f8], r9
lea r11, [rsp + 0x380]
lea r9, [r11 + rcx]
mov qword [rsp + 0x4f0], r9
lea r9, [rsp + 0x8c0]
add rcx, r9
mov qword [rsp + 0x510], rcx
mov ecx, 0xe8
lea r10, [r11 + rcx]
mov qword [rsp + 0x240], r10
add rcx, r9
mov qword [rsp + 0x4e8], rcx
add rax, r11
mov qword [rsp + 0x4a0], rax
lea rbp, [rsp + 0xe0]
add rdx, rbp
mov qword [rsp + 0x4d0], rdx
movaps xmm6, xmmword [0x140103a30]
xorps xmm7, xmm7
pcmpeqd xmm8, xmm8
movabs r12, 0x8000000000000000
lea rax, [r13 + 0x88]
mov qword [rsp + 0x78], rax
lea rax, [r13 + 0x20]
mov qword [rsp + 0x368], rax
lea rbx, [r13 + 0x28]
lea rax, [r13 + 0xf8]
mov qword [rsp + 0x238], rax
lea rax, [r13 + 0xe0]
mov qword [rsp + 0x4c8], rax
lea rax, [r13 + 0xf9]
mov qword [rsp + 0x4b8], rax
mov eax, 0xa8
mov r14, r11
lea rcx, [r11 + rax]
mov qword [rsp + 0x378], rcx
lea rax, [r9 + rax]
mov qword [rsp + 0x4e0], rax
lea rax, [r13 + 0x50]
mov qword [rsp + 0x4d8], rax
mov qword [rsp + 0xb8], r13
mov qword [rsp + 0x50], rbx
mov rdx, qword [r13 + 0x118]
mov rax, qword [r13 + 0x120]
mov rcx, rbp
call qword [rax + 0x18]
mov rax, qword [rsp + 0xe0]
cmp rax, 3
je 0x140095ba3
cmp eax, 4
je 0x140095c49
mov r8d, 0xa0
lea rsi, [rsp + 0x9c0]
mov rcx, rsi
mov rdx, rbp
call sub.msvcrt.dll_memcpy
mov rax, qword [r13 + 0x110]
cmp qword [rax + 0x10], 0
je 0x140092160
mov qword [rsp + 0x88], rax
movups xmm0, xmmword [0x14015ed08]
movaps xmmword [rsp + 0xf0], xmm0
movdqu xmm0, xmmword [0x14015ecf8]
movdqa xmmword [rsp + 0xe0], xmm0
lea rdi, [rsp + 0x250]
mov rcx, rdi
mov rdx, rsi
mov r8, rbp
call fcn.14004294b
mov rdx, qword [rsp + 0x260]
mov r8, qword [rsp + 0x250]
mov r9, qword [rsp + 0x258]
lea rsi, [rsp + 0x710]
mov rcx, rsi
call fcn.140041820
mov qword [rsp + 0x740], 3
mov rcx, rbp
mov rdx, rsi
call fcn.140054cbd
mov rsi, qword [rsp + 0xe0]
cmp rsi, 2
jne 0x14009216d
mov qword [rsp + 0xe0], 2
jmp 0x14009219b
lea rdi, [rsp + 0x250]
jmp 0x140094902
mov r8d, 0xa0
lea rcx, [rsp + 0x258]
lea rdx, [rsp + 0xe8]
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x250], rsi
mov rcx, rbp
mov rdx, rdi
call fcn.140017ed7
mov r8d, 0xa8
lea rcx, [rsp + 0x740]
mov rdx, rbp
call sub.msvcrt.dll_memcpy
cmp qword [rsp + 0x740], 2
je 0x140094902
mov rax, qword [rsp + 0x88]
lea rcx, [rax + 0x18]
mov qword [rsp + 0x360], rcx
call sub.kernel32.dll_AcquireSRWLockExclusive
mov rax, qword [0x14019e158]
lea rcx, [r12 - 1]
test rax, rcx
jne 0x1400952b6
mov dword [rsp + 0xdc], 0
mov rsi, qword [rsp + 0x88]
mov al, byte [rsi + 0x20]
test al, al
jne 0x140096019
mov r8d, 0xd8
lea rcx, [rsp + 0x7e8]
lea rdx, [rsp + 0x710]
call sub.msvcrt.dll_memcpy
lea rax, [rsi + 0x40]
mov qword [rsp + 0x4b0], rax
lea rax, [rsi + 0x78]
mov qword [rsp + 0x4a8], rax
mov rsi, qword [rsp + 0x818]
mov qword [rsp + 0x818], 3
cmp rsi, 3
jne 0x1400922b8
mov rcx, rbp
lea rdx, [rsp + 0x7e8]
call fcn.140054cbd
mov rsi, qword [rsp + 0xe0]
cmp rsi, 2
je 0x1400948d7
mov r8d, 0xa0
lea rcx, [rsp + 0x258]
lea rdx, [rsp + 0xe8]
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x250], rsi
lea rcx, [rsp + 0xab8]
mov rdx, rdi
call fcn.140017ed7
mov rsi, qword [rsp + 0xab8]
jmp 0x1400922db
mov r8d, 0xa0
lea rcx, [rsp + 0xac0]
lea rdx, [rsp + 0x820]
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0xab8], rsi
cmp rsi, 2
je 0x1400948d7
mov r8d, 0xa8
mov rsi, r15
mov rcx, r15
lea rdx, [rsp + 0xab8]
call sub.msvcrt.dll_memcpy
mov al, byte [rsp + 0x5bd]
mov byte [rsp + 0x58], al
and al, 1
mov byte [rsp + 0x68], al
je 0x140092323
mov rcx, qword [rsp + 0x78]
call fcn.140018a14
test al, al
je 0x1400924e0
lea rax, [r12 + 2]
mov qword [rsp + 0x38], rax
cmp qword [rsp + 0x578], rax
je 0x1400923b6
lea rax, [r12 + 1]
cmp qword [rsp + 0x530], rax
lea rdx, [rsp + 0x530]
mov eax, 0
cmove rdx, rax
lea rcx, [rsp + 0x578]
call fcn.140014517
test rax, rax
je 0x1400923b6
mov rcx, rax
call fcn.1400142e2
mov r9, rdx
mov rcx, r14
xor edx, edx
mov r8, rax
call fcn.14004d8f9
cmp qword [rsp + 0x380], r12
jne 0x140092509
lea rdx, [rsp + 0x388]
mov eax, dword [rdx + 8]
lea rcx, [rsp + 0x8c8]
mov dword [rcx + 8], eax
mov rax, qword [rdx]
mov qword [rcx], rax
mov qword [rsp + 0x8c0], r12
jmp 0x14009253c
mov qword [rsp + 0xe0], 2
mov rcx, rdi
mov rdx, qword [rsp + 0x78]
call fcn.14001a008
mov rcx, qword [rsp + 0x250]
mov al, byte [rsp + 0x258]
cmp rcx, 4
jne 0x1400923fc
mov byte [rsp + 0x5c8], al
mov qword [rsp + 0x5c0], 2
jmp 0x1400947f7
mov qword [rsp + 0x40], rcx
mov byte [rsp + 0x48], al
lea rcx, [rsp + 0x258]
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x9f], rax
movups xmm0, xmmword [rcx + 1]
movaps xmmword [rsp + 0x90], xmm0
movdqa xmm0, xmmword [rsp + 0x90]
movdqa xmmword [rsp + 0x200], xmm0
mov rax, qword [rsp + 0x9f]
mov qword [rsp + 0x20f], rax
mov rax, qword [rsp + 0x38]
cmp qword [rsp + 0x590], rax
je 0x1400924bb
lea rax, [r12 + 1]
cmp qword [rsp + 0x530], rax
lea rdx, [rsp + 0x530]
mov eax, 0
cmove rdx, rax
lea rcx, [rsp + 0x590]
call fcn.140014517
test rax, rax
je 0x1400924bb
mov rsi, rdx
test rdx, rdx
je 0x1400924bb
mov rdi, rax
cmp byte [rax], 0x2f
jne 0x1400924bb
mov rcx, rsi
call fcn.1400f4dd8
mov rbx, rax
mov r15, rdx
mov rcx, rdx
mov rdx, rdi
mov r8, rsi
call sub.msvcrt.dll_memcpy
cmp rbx, r12
jne 0x140092ed9
mov r8d, dword [r13 + 0xb4]
mov rcx, qword [r13 + 0x90]
mov rdx, qword [r13 + 0x98]
inc r8d
mov r15, r14
jne 0x1400924ed
mov rax, rdx
jmp 0x14009259b
mov byte [rsp + 0x5c8], 0
jmp 0x1400947f7
mov rax, rdx
sub rax, r8
jbe 0x140092595
cmp byte [rcx + r8], 0xbf
jg 0x14009259b
jmp 0x140095f7d
movdqu xmm0, xmmword [rsp + 0x380]
movdqa xmmword [rsp + 0x8c0], xmm0
mov rax, qword [rsp + 0x390]
mov qword [rsp + 0x8d0], rax
mov rdi, qword [rsp + 0x8c0]
cmp rdi, r12
jne 0x1400927dd
lea rcx, [rsp + 0x8c8]
call fcn.140018aaa
mov qword [rsp + 0xe8], rax
lea rax, [0x140107730]
mov qword [rsp + 0xf0], rax
mov qword [rsp + 0xe0], 4
mov byte [rsp + 0x5c8], 4
mov qword [rsp + 0x5c0], 2
mov rcx, rbp
call fcn.14001a192
lea rdi, [rsp + 0x250]
jmp 0x1400947f7
jne 0x140095f7d
test rax, rax
je 0x140092637
cmp byte [rcx + r8], 0x2f
jne 0x140092637
mov rcx, qword [rsp + 0x78]
call fcn.1400f6c44
mov rbx, rax
mov rdi, rdx
mov qword [rsp + 0xe0], rax
mov qword [rsp + 0xe8], rdx
mov qword [rsp + 0xf0], 0
mov qword [rsp + 0xf8], rdx
mov qword [rsp + 0x100], 1
movabs rax, 0x2f0000002f
mov qword [rsp + 0x108], rax
mov rsi, rdx
mov cl, 0x2f
mov rdx, rbx
mov r8, rsi
call fcn.140020550
cmp rax, 1
jne 0x140092637
mov rsi, rdx
cmp rdx, rdi
jae 0x14009262a
mov al, 0x2f
cmp byte [rbx + rsi], al
je 0x140092ec1
mov qword [rsp + 0xf8], rsi
cmp rsi, rdi
jbe 0x140092604
mov esi, 1
mov ecx, 1
call fcn.1400f4dd8
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0x70], rdx
mov byte [rdx], 0x2f
xor r13d, r13d
lea rcx, [rsp + 0x250]
cmp qword [rsp + 0x518], 0
mov dword [rsp + 0x248], r13d
je 0x1400926aa
mov ebp, dword [rsp + 0x528]
mov r14, qword [rsp + 0x520]
test r14, r14
jne 0x1400926eb
test ebp, ebp
jne 0x1400926eb
mov qword [rsp + 0x380], 0
mov dword [rsp + 0x388], 0xf6401
xor eax, eax
jmp 0x1400928dc
cmp dword [rsp + 0x5a8], 0
je 0x140092d47
mov rcx, qword [rsp + 0x4c0]
movdqu xmm0, xmmword [rcx]
movdqa xmmword [rsp + 0x700], xmm0
lea rdi, [0x140107860]
mov rdx, rdi
call fcn.1400e4d3f
cmp al, 1
lea rax, [rsp + 0x700]
jmp 0x14009292b
call fcn.1400e4c57
mov ebx, dword [rsp + 0x258]
mov ecx, 0x4e1f6d
call fcn.1400e36fb
mov rdi, rax
mov ecx, ebx
call fcn.1400e36fb
sub rdi, rax
imul r9, rdi, 0x15180
mov r8, qword [rsp + 0x250]
mov rax, r8
shr rax, 0x20
mov r10d, 0xff
and rax, r10
mov edx, 0x17
sub rdx, rax
movabs rax, 0x34630b8a000
imul rdx, rax
mov rax, r8
shr rax, 0x28
and rax, r10
mov rcx, r8
shr rcx, 0x30
and rcx, r10
mov r10d, r8d
mov r11d, 0x3b
sub r11, rcx
imul r11, r11, 0x3b9aca00
sub r11, r10
mov ecx, 0x3b
sub rcx, rax
movabs rax, 0xdf8475800
imul rcx, rax
add rcx, rdx
add rcx, r11
mov rax, rcx
movabs rdx, 0x112e0be826d694b3
imul rdx
mov rax, rdx
shr rax, 0x3f
sar rdx, 0x1a
add rdx, rax
add r9, rdx
jo 0x140095f65
imul eax, edx, 0x3b9aca00
sub ecx, eax
test r9, r9
jns 0x14009287f
test ecx, ecx
jle 0x14009287f
inc r9
jo 0x140095f65
add ecx, 0xc4653600
jmp 0x140092897
mov rsi, qword [rsp + 0x8c8]
mov rbx, qword [rsp + 0x8d0]
test rbx, rbx
je 0x140092d57
mov qword [rsp + 0xe0], 1
mov qword [rsp + 0xe8], rdi
mov qword [rsp + 0xf0], rsi
mov qword [rsp + 0xf8], rbx
mov rcx, rbp
mov rdx, qword [rsp + 0x78]
call fcn.1400183e2
test al, al
je 0x140092da6
movdqu xmm0, xmmword [rsp + 0xe0]
movdqu xmm1, xmmword [rsp + 0xf0]
movdqa xmmword [rsp + 0x250], xmm0
movdqa xmmword [rsp + 0x260], xmm1
mov rax, qword [rsp + 0x250]
mov cl, byte [rsp + 0x258]
cmp rax, 4
mov rbx, qword [rsp + 0x50]
je 0x140092ddc
mov qword [rsp + 0x40], rax
mov byte [rsp + 0x48], cl
jmp 0x140092405
test r9, r9
jle 0x140092897
test ecx, ecx
jns 0x140092897
dec r9
jo 0x140095f65
add ecx, 0x3b9aca00
xor eax, eax
cmp r9, r14
setne al
mov r10d, 0xff
cmovl eax, r10d
xor edx, edx
cmp ecx, ebp
setne dl
cmovl edx, r10d
test al, al
cmovne edx, eax
cmp dl, 1
cmove ecx, ebp
cmove r9, r14
mov dword [rsp + 0x20], ecx
mov rcx, r15
mov rdx, r8
mov r8d, ebx
call fcn.1400e34d6
mov eax, dword [rsp + 0x25c]
mov dword [rsp + 0x38c], eax
mov rax, qword [rsp + 0x380]
mov qword [rsp + 0xe0], rax
mov eax, dword [rsp + 0x388]
mov dword [rsp + 0xe8], eax
mov eax, dword [rsp + 0x38c]
mov dword [rsp + 0xec], eax
mov rcx, r15
lea rdi, [0x140107860]
mov rdx, rdi
call fcn.1400e4d3f
cmp al, 1
lea rax, [rsp + 0xe0]
cmove rax, rdi
movdqu xmm0, xmmword [rax]
movdqa xmmword [rsp + 0x6c0], xmm0
mov dword [rsp + 0x1e0], 0
lea r15, [r12 + 1]
cmp qword [rsp + 0x530], r15
lea rdi, [rsp + 0x530]
mov eax, 0
cmove rdi, rax
lea rcx, [rsp + 0x548]
mov rdx, rdi
call fcn.140014517
mov r14, rax
mov rbx, rdx
mov rcx, rdx
call fcn.1400f4dd8
mov qword [rsp + 0xc8], rax
mov rbp, rdx
mov rcx, rdx
mov rdx, r14
mov r8, rbx
call sub.msvcrt.dll_memcpy
lea rcx, [rsp + 0x560]
mov rdx, rdi
call fcn.140014517
mov r13, rax
mov r14, rdx
mov rcx, rdx
call fcn.1400f4dd8
mov rdi, rax
mov r12, rdx
mov rcx, rdx
mov rdx, r13
mov r8, r14
call sub.msvcrt.dll_memcpy
movups xmm0, xmmword [rsp + 0xe0]
lea rcx, [rsp + 0x5c8]
movups xmmword [rcx], xmm0
movups xmm0, xmmword [rsp + 0x250]
movups xmmword [rcx + 0x18], xmm0
movups xmm0, xmmword [rsp + 0x380]
movups xmmword [rcx + 0x60], xmm0
movups xmm0, xmmword [rsp + 0x8c0]
mov rax, qword [rsp + 0x500]
movups xmmword [rax], xmm0
movups xmm0, xmmword [rsp + 0x90]
mov rax, qword [rsp + 0x508]
movups xmmword [rax], xmm0
mov eax, dword [rsp + 0x1e0]
mov dword [rsp + 0x6a8], eax
movaps xmm0, xmmword [rsp + 0x6c0]
movups xmmword [rcx + 0xe4], xmm0
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x688], rax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x690], rax
mov qword [rsp + 0x698], rsi
mov eax, dword [rsp + 0x248]
mov byte [rsp + 0x6a0], al
mov eax, dword [rsp + 0x223]
mov dword [rcx + 0xdc], eax
mov eax, dword [rsp + 0x220]
mov dword [rcx + 0xd9], eax
mov rax, qword [rsp + 0x20f]
mov rcx, qword [rsp + 0x4f8]
mov qword [rcx + 0xf], rax
movaps xmm0, xmmword [rsp + 0x200]
movups xmmword [rcx], xmm0
mov qword [rsp + 0x5c0], 0
mov qword [rsp + 0xd0], r15
mov qword [rsp + 0x5d8], r15
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x5f0], rax
mov qword [rsp + 0x5f8], rbp
mov qword [rsp + 0x600], rbx
mov qword [rsp + 0x608], rdi
mov qword [rsp + 0x610], r12
mov al, byte [rsp + 0x5bc]
mov qword [rsp + 0x618], r14
xor ecx, ecx
test al, al
setne cl
cmp al, 2
mov edx, 2
cmove ecx, edx
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x620], rax
mov qword [rsp + 0x638], rax
mov dword [rsp + 0x650], 0
mov byte [rsp + 0x664], cl
cmp byte [rsp + 0x58], 2
movzx eax, byte [rsp + 0x68]
cmove eax, edx
mov byte [rsp + 0x665], al
mov al, byte [rsp + 0x5be]
mov byte [rsp + 0x666], al
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x668], rax
mov al, byte [rsp + 0x48]
mov byte [rsp + 0x670], al
mov r8d, 0x100
lea rcx, [rsp + 0x8c0]
lea rsi, [rsp + 0x5c0]
mov rdx, rsi
call sub.msvcrt.dll_memcpy
lea r15, [rsp + 0x380]
mov rcx, r15
mov rdx, rsi
call fcn.140017ed7
mov rax, qword [rsp + 0x510]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
mov rax, qword [rsp + 0x4f0]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
mov rax, qword [rsp + 0x4e0]
movups xmm0, xmmword [rax]
movdqu xmm1, xmmword [rax + 0x10]
mov rax, qword [rsp + 0x378]
movdqu xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
mov rcx, qword [rsp + 0x4e8]
mov eax, dword [rcx + 0x10]
mov rdx, qword [rsp + 0x240]
mov dword [rdx + 0x10], eax
movdqu xmm0, xmmword [rcx]
movdqu xmmword [rdx], xmm0
test byte [rsp + 0x425], 1
je 0x140092c1e
mov rcx, qword [rsp + 0x78]
call fcn.140018a14
test al, al
je 0x140092d04
movabs rax, 0x8000000000000000
mov rcx, qword [rsp + 0x88]
cmp qword [rcx + 0x28], rax
mov r13, qword [rsp + 0xb8]
lea rsi, [rsp + 0x518]
mov rbx, qword [rsp + 0x50]
lea rdi, [rsp + 0x250]
jne 0x140092c84
mov rcx, qword [rsp + 0x378]
mov rdx, qword [rsp + 0x78]
call fcn.1400183e2
test al, al
lea rbp, [rsp + 0xe0]
movabs r12, 0x8000000000000000
jne 0x140093069
jmp 0x1400947ec
cmp dword [rsp + 0x428], 1
lea rbp, [rsp + 0xe0]
ja 0x140092d38
mov rbp, r15
mov r15, qword [rsp + 0x438]
mov r14, qword [rsp + 0x440]
test r14, r14
movabs r12, 0x8000000000000000
je 0x140092cc6
cmp byte [r15], 0x2e
je 0x140092fba
mov edx, 0x10100
lea rsi, [rsp + 0xe0]
mov rcx, rsi
mov qword [rsp + 0x48], r15
mov r8, r15
mov r9, r14
call fcn.14004d8f9
mov r15, qword [rsp + 0xe0]
cmp r15, r12
jne 0x140092dff
lea rsi, [rsp + 0x518]
jmp 0x140092fb5
mov r13, qword [rsp + 0xb8]
lea rsi, [rsp + 0x518]
lea rbp, [rsp + 0xe0]
movabs r12, 0x8000000000000000
mov rbx, qword [rsp + 0x50]
lea rdi, [rsp + 0x250]
jmp 0x1400947ec
movabs r12, 0x8000000000000000
jmp 0x140093069
mov dword [rsp + 0x1e0], 1
jmp 0x140092947
test rdi, rdi
je 0x140092d6d
mov rcx, qword [0x14019e0f8]
xor edx, edx
mov r8, rsi
call fcn.1400fdef8
mov qword [rsp + 0xe0], 3
mov qword [rsp + 0xe8], rdi
mov qword [rsp + 0xf0], rsi
mov qword [rsp + 0xf8], rbx
mov rbx, qword [rsp + 0x50]
lea rdi, [rsp + 0x250]
mov rsi, r15
jmp 0x1400923c2
mov byte [rsp + 0x258], 2
mov cl, 2
mov eax, 1
cmp eax, 1
mov rbx, qword [rsp + 0x50]
ja 0x140092ddc
test rdi, rdi
je 0x140092ddc
mov rcx, qword [0x14019e0f8]
xor edx, edx
mov r8, rsi
call fcn.1400fdef8
mov cl, byte [rsp + 0x258]
mov byte [rsp + 0x5c8], cl
mov qword [rsp + 0x5c0], 2
lea rdi, [rsp + 0x250]
mov rsi, r15
jmp 0x1400947f7
mov rbx, qword [rsp + 0xe8]
mov rcx, rdi
mov rdi, qword [rsp + 0xf0]
xor eax, eax
mov qword [rsp + 0xe0], rax
mov qword [rsp + 0xe8], rdi
mov qword [rsp + 0xf0], rbx
mov qword [rsp + 0xf8], rdi
mov qword [rsp + 0x100], rax
mov qword [rsp + 0x108], rdi
mov qword [rsp + 0x110], 1
movabs rax, 0x2e0000002e
mov qword [rsp + 0x118], rax
mov word [rsp + 0x120], 1
mov rdx, rsi
call fcn.1400f5283
test rdi, rdi
mov rbp, rsi
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x38], rbx
mov rsi, r15
je 0x140092f43
cmp byte [rdi + rbx - 1], 0x2e
mov rax, qword [rsp + 0x260]
jne 0x140092f4b
test rax, rax
lea rdi, [rsp + 0x250]
je 0x140093bfd
dec rax
mov qword [rsp + 0x260], rax
jmp 0x140092f53
cmp rsi, 1
adc rsi, 0
cmp rsi, rdi
jae 0x140092f15
cmp byte [rbx + rsi], 0xbf
jg 0x140092f1b
jmp 0x1400960a8
mov qword [rsp + 0x70], r15
mov qword [rsp + 0xd0], rbx
mov eax, dword [rsp + 0xe0]
mov ecx, dword [rsp + 0xe3]
mov dword [rsp + 0x223], ecx
mov dword [rsp + 0x220], eax
mov r13b, 1
lea rcx, [rsp + 0x250]
mov r15, r14
jmp 0x140092661
jne 0x1400960a8
mov rcx, rsi
call fcn.1400f4dd8
mov qword [rsp + 0xd0], rax
mov rcx, rdx
mov qword [rsp + 0x70], rdx
mov rdx, rbx
mov r8, rsi
call sub.msvcrt.dll_memcpy
jmp 0x140092656
mov rax, qword [rsp + 0x260]
lea rdi, [rsp + 0x250]
cmp rax, 0x7f
jbe 0x1400939e3
cmp qword [rsp + 0x250], 0
je 0x140092f7e
mov r8, qword [rsp + 0x258]
mov rcx, qword [0x14019e0f8]
xor edx, edx
call fcn.1400fdef8
test rsi, rsi
lea rbp, [rsp + 0x380]
mov rbx, qword [rsp + 0x50]
lea rsi, [rsp + 0x518]
mov r14, qword [rsp + 0x40]
mov r15, qword [rsp + 0x48]
je 0x140092fba
mov rcx, qword [0x14019e0f8]
xor edx, edx
mov r8, qword [rsp + 0x38]
call fcn.1400fdef8
mov r15, qword [rsp + 0x48]
mov rcx, r14
call fcn.1400f4dd8
mov qword [rsp + 0x80], rax
mov rcx, rdx
mov qword [rsp + 0xb0], rdx
mov rdx, r15
mov r8, r14
call sub.msvcrt.dll_memcpy
mov rdx, qword [rsp + 0xc0]
and rdx, 0xffffffffffffff00
or rdx, 0xa
mov r15, rbp
lea rbp, [rsp + 0xe0]
movzx eax, dl
cmp eax, 8
mov qword [rsp + 0xc0], rdx
jg 0x140093019
test eax, eax
je 0x140093046
cmp eax, 2
je 0x140093023
jmp 0x140093064
cmp eax, 9
je 0x140093023
cmp eax, 0xa
jne 0x140093064
cmp qword [rsp + 0x80], 0
je 0x140093064
mov rcx, qword [0x14019e0f8]
xor edx, edx
mov r8, qword [rsp + 0xb0]
call fcn.1400fdef8
jmp 0x140093064
mov rax, qword [rsp + 0x80]
and eax, 3
lea rcx, [rax - 2]
cmp rcx, 2
jb 0x140093064
test rax, rax
jne 0x140094206
mov qword [rsp + 0x60], r14
mov rax, qword [rsp + 0x428]
cmp rax, 1
ja 0x1400947ec
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x438]
mov qword [rsp + 0x38], rax
mov r13, qword [rsp + 0x440]
mov rax, qword [rsp + 0x450]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0xd0]
cmp qword [rsp + 0x398], rax
mov rdi, qword [rsp + 0x458]
lea rdx, [rsp + 0x398]
mov eax, 0
cmove rdx, rax
lea rcx, [rsp + 0x3b0]
call fcn.140014517
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x88]
cmp qword [rax + 0x90], 0
je 0x140093486
mov r15, rdx
mov rsi, qword [rsp + 0x88]
mov rcx, qword [rsi + 0x98]
mov rdx, qword [rsi + 0xa0]
mov r8, qword [rsp + 0x38]
mov r9, r13
call fcn.140051942
mov rcx, qword [rsi + 0x78]
mov rsi, qword [rsi + 0x80]
mov r14, rsi
and r14, rax
shr rax, 0x39
movd xmm0, eax
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm9, xmm0, 0
lea rbx, [rcx - 0x48]
xor eax, eax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x40], rcx
movdqu xmm10, xmmword [rcx + r14]
movdqa xmm0, xmm10
pcmpeqb xmm0, xmm9
pmovmskb r12d, xmm0
test r12w, r12w
je 0x1400931aa
bsf eax, r12d
lea ecx, [r12 - 1]
and ecx, r12d
mov r12d, ecx
add rax, r14
and rax, rsi
neg rax
lea rbp, [rax + rax*8]
cmp r13, qword [rbx + rbp*8 + 0x10]
jne 0x140093166
lea rax, [rbx + rbp*8]
mov rdx, qword [rax + 8]
mov rcx, qword [rsp + 0x38]
mov r8, r13
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x140093166
jmp 0x1400931de
pcmpeqb xmm10, xmm8
pmovmskb eax, xmm10
test eax, eax
mov rcx, qword [rsp + 0x40]
jne 0x140093486
mov rax, qword [rsp + 0x48]
add r14, rax
add r14, 0x10
add rax, 0x10
mov qword [rsp + 0x48], rax
and r14, rsi
jmp 0x140093151
mov rax, qword [rsp + 0x40]
cmp qword [rax + rbp*8 - 0x18], 0
je 0x140093486
lea rsi, [rax + rbp*8]
mov rcx, qword [rsi - 0x10]
mov rdx, qword [rsi - 8]
mov r8, qword [rsp + 0x58]
mov r9, rdi
call fcn.140051942
mov rcx, qword [rsi - 0x30]
mov r14, qword [rsi - 0x28]
mov rsi, r14
and rsi, rax
shr rax, 0x39
movd xmm0, eax
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm9, xmm0, 0
lea rbx, [rcx - 0x48]
xor eax, eax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x40], rcx
movdqu xmm10, xmmword [rcx + rsi]
movdqa xmm0, xmm10
pcmpeqb xmm0, xmm9
pmovmskb r12d, xmm0
test r12w, r12w
je 0x140093296
bsf eax, r12d
lea ecx, [r12 - 1]
and ecx, r12d
mov r12d, ecx
add rax, rsi
and rax, r14
neg rax
lea rbp, [rax + rax*8]
cmp rdi, qword [rbx + rbp*8 + 0x10]
jne 0x140093252
lea rax, [rbx + rbp*8]
mov rdx, qword [rax + 8]
mov rcx, qword [rsp + 0x58]
mov r8, rdi
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x140093252
jmp 0x1400932ca
pcmpeqb xmm10, xmm8
pmovmskb eax, xmm10
test eax, eax
mov rcx, qword [rsp + 0x40]
jne 0x140093486
mov rax, qword [rsp + 0x48]
add rsi, rax
add rsi, 0x10
add rax, 0x10
mov qword [rsp + 0x48], rax
and rsi, r14
jmp 0x14009323d
mov rax, qword [rsp + 0x40]
cmp qword [rax + rbp*8 - 0x18], 0
je 0x140093486
lea rsi, [rax + rbp*8]
mov rcx, qword [rsi - 0x10]
mov rdx, qword [rsi - 8]
mov r8, qword [rsp + 0x68]
mov r9, r15
call fcn.140051942
mov rcx, qword [rsi - 0x30]
mov r14, qword [rsi - 0x28]
mov rsi, r14
and rsi, rax
shr rax, 0x39
movd xmm0, eax
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm9, xmm0, 0
lea rbx, [rcx - 0x118]
xor eax, eax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x40], rcx
movdqu xmm10, xmmword [rcx + rsi]
movdqa xmm0, xmm10
pcmpeqb xmm0, xmm9
pmovmskb r12d, xmm0
test r12w, r12w
je 0x140093388
bsf eax, r12d
lea ecx, [r12 - 1]
and ecx, r12d
mov r12d, ecx
add rax, rsi
and rax, r14
neg rax
imul rbp, rax, 0x118
cmp r15, qword [rbx + rbp + 0x10]
jne 0x140093341
lea rax, [rbx + rbp]
mov rdx, qword [rax + 8]
mov rcx, qword [rsp + 0x68]
mov r8, r15
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x140093341
jmp 0x1400933bc
pcmpeqb xmm10, xmm8
pmovmskb eax, xmm10
test eax, eax
mov rcx, qword [rsp + 0x40]
jne 0x140093486
mov rax, qword [rsp + 0x48]
add rsi, rax
add rsi, 0x10
add rax, 0x10
mov qword [rsp + 0x48], rax
and rsi, r14
jmp 0x14009332c
mov rbx, qword [rsp + 0x40]
lea rcx, [rbx + rbp]
add rcx, 0xffffffffffffffe8
call fcn.140018781
test al, al
jne 0x140093486
add rbx, rbp
test byte [rbx - 0x5b], 1
je 0x1400933ed
mov rcx, qword [rsp + 0x78]
call fcn.140018a14
test al, al
je 0x14009344a
mov rcx, qword [rsp + 0x240]
call fcn.140018781
test al, al
je 0x140093486
mov qword [rsp + 0xe0], 0
mov qword [rsp + 0xe8], 0xf6401
lea rsi, [rsp + 0xe0]
mov rcx, rsi
lea rdi, [0x140107860]
mov rdx, rdi
call fcn.1400e4d3f
cmp al, 1
cmove rsi, rdi
movdqu xmm0, xmmword [rsi]
movdqu xmmword [rbx - 0x14], xmm0
mov dword [rbx - 0x18], 0
lea rcx, [rsp + 0x380]
mov r14, rcx
call fcn.1400195fd
mov r13, qword [rsp + 0xb8]
lea rsi, [rsp + 0x518]
lea rbp, [rsp + 0xe0]
movabs r12, 0x8000000000000000
mov rbx, qword [rsp + 0x50]
jmp 0x140092588
mov rcx, qword [rsp + 0x240]
call fcn.140018781
test al, al
je 0x140093539
lea r14, [rsp + 0x380]
mov rcx, r14
call fcn.14008c5ec
cmp qword [rsp + 0x448], 0
lea rsi, [rsp + 0x518]
mov rbx, qword [rsp + 0x50]
mov rax, qword [rsp + 0x70]
je 0x1400934e3
mov rcx, qword [0x14019e0f8]
xor edx, edx
mov r8, qword [rsp + 0x58]
call fcn.1400fdef8
mov rax, qword [rsp + 0x428]
cmp rax, 1
mov r13, qword [rsp + 0xb8]
lea rbp, [rsp + 0xe0]
movabs r12, 0x8000000000000000
lea rdi, [rsp + 0x250]
ja 0x1400947f7
cmp qword [rsp + 0x430], 0
je 0x1400947f7
mov r8, qword [rsp + 0x438]
mov rcx, qword [0x14019e0f8]
xor edx, edx
call fcn.1400fdef8
jmp 0x1400947f7
mov rcx, qword [rsp + 0x70]
lea rax, [rcx - 2]
cmp rax, 2
jae 0x140093568
xor eax, eax
mov qword [rsp + 0xe0], rax
mov qword [rsp + 0xe8], 1
mov qword [rsp + 0xf0], rax
jmp 0x140093580
test rcx, rcx
lea rcx, [rsp + 0xe0]
mov rdx, qword [rsp + 0x38]
mov r8, r13
call fcn.140012760
mov r14, qword [rsp + 0x88]
mov rcx, qword [r14 + 0x98]
mov rdx, qword [r14 + 0xa0]
mov rbx, qword [rsp + 0xe8]
mov r15, qword [rsp + 0xf0]
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x70], rdx
mov r8, rbx
mov r9, r15
call fcn.140051602
mov rcx, rax
shr rcx, 0x39
mov rsi, qword [r14 + 0x78]
mov r12, qword [r14 + 0x80]
mov rbp, r12
mov qword [rsp + 0x68], rax
and rbp, rax
mov qword [rsp + 0x48], rcx
movd xmm0, ecx
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm9, xmm0, 0
xor eax, eax
mov qword [rsp + 0x38], rax
movdqu xmm10, xmmword [rsi + rbp]
movdqa xmm0, xmm10
pcmpeqb xmm0, xmm9
pmovmskb r13d, xmm0
test r13w, r13w
je 0x14009364d
bsf eax, r13d
lea ecx, [r13 - 1]
and ecx, r13d
mov r13d, ecx
add rax, rbp
and rax, r12
neg rax
lea rax, [rax + rax*8]
cmp qword [rsi + rax*8 - 0x38], r15
jne 0x14009360c
lea r14, [rsi + rax*8]
mov rcx, qword [r14 - 0x40]
mov rdx, rbx
mov r8, r15
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x14009360c
jmp 0x14009367c
pcmpeqb xmm10, xmm8
pmovmskb eax, xmm10
test eax, eax
jne 0x140094250
mov rax, qword [rsp + 0x38]
add rbp, rax
add rbp, 0x10
add rax, 0x10
mov qword [rsp + 0x38], rax
and rbp, r12
jmp 0x1400935f7
mov rax, qword [rsp + 0xe0]
shl rax, 1
test rax, rax
je 0x1400936b2
mov rcx, qword [0x14019e0f8]
xor edx, edx
mov r8, rbx
call fcn.1400fdef8
mov rax, qword [rsp + 0x450]
mov qword [rsp + 0x58], rax
mov rdi, qword [rsp + 0x458]
lea rcx, [rsp + 0xe0]
lea rax, [r14 - 0x30]
mov qword [rsp + 0x48], rax
mov rdx, qword [rsp + 0x58]
mov r8, rdi
call fcn.140012760
mov rcx, qword [r14 - 0x10]
mov rdx, qword [r14 - 8]
mov rsi, qword [rsp + 0xe8]
mov rdi, qword [rsp + 0xf0]
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x70], rdx
mov r8, rsi
mov r9, rdi
call fcn.140051602
mov rcx, rax
shr rcx, 0x39
mov r12, qword [r14 - 0x30]
mov r15, qword [r14 - 0x28]
mov rbp, r15
mov qword [rsp + 0x58], rax
and rbp, rax
mov qword [rsp + 0x68], rcx
movd xmm0, ecx
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm9, xmm0, 0
xor eax, eax
mov qword [rsp + 0x38], rax
movdqu xmm10, xmmword [r12 + rbp]
movdqa xmm0, xmm10
pcmpeqb xmm0, xmm9
pmovmskb ebx, xmm0
test bx, bx
je 0x140093786
bsf eax, ebx
lea ecx, [rbx - 1]
and ecx, ebx
mov ebx, ecx
add rax, rbp
and rax, r15
neg rax
lea rax, [rax + rax*8]
cmp qword [r12 + rax*8 - 0x38], rdi
jne 0x14009374a
lea r13, [r12 + rax*8]
mov rcx, qword [r13 - 0x40]
mov rdx, rsi
mov r8, rdi
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x14009374a
jmp 0x1400937b2
pcmpeqb xmm10, xmm8
pmovmskb eax, xmm10
test eax, eax
jne 0x14009436a
mov rax, qword [rsp + 0x38]
add rbp, rax
add rbp, 0x10
add rax, 0x10
mov qword [rsp + 0x38], rax
and rbp, r15
jmp 0x140093736
mov rax, qword [rsp + 0xe0]
shl rax, 1
test rax, rax
je 0x1400937d3
mov rcx, qword [0x14019e0f8]
xor edx, edx
mov r8, rsi
call fcn.1400fdef8
lea r15, [rsp + 0x380]
lea rbp, [rsp + 0xe0]
xor eax, eax
mov rcx, qword [rsp + 0xd0]
cmp qword [rsp + 0x398], rcx
lea rdx, [rsp + 0x398]
cmove rdx, rax
lea rcx, [rsp + 0x3b0]
call fcn.140014517
mov r14, rax
mov rbx, rdx
mov rcx, rdx
call fcn.1400f4dd8
mov qword [rsp + 0x68], rax
mov rsi, rdx
mov rcx, rdx
mov rdx, r14
mov r8, rbx
call sub.msvcrt.dll_memcpy
mov r8d, 0x100
mov rcx, rbp
mov rdx, r15
call sub.msvcrt.dll_memcpy
mov r14, qword [r13 - 0x10]
mov r12, qword [r13 - 8]
mov rcx, r14
mov rdx, r12
mov r8, rsi
mov r9, rbx
call fcn.140051602
cmp qword [r13 - 0x20], 0
je 0x140094516
mov r12, qword [r13 - 0x30]
mov r15, qword [r13 - 0x28]
mov rbp, r15
and rbp, rax
shr rax, 0x39
mov qword [rsp + 0x48], rax
movd xmm0, eax
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm9, xmm0, 0
xor eax, eax
mov qword [rsp + 0x58], rax
xor eax, eax
mov qword [rsp + 0x38], rax
movdqu xmm10, xmmword [r12 + rbp]
movdqa xmm0, xmm10
pcmpeqb xmm0, xmm9
pmovmskb edi, xmm0
test di, di
je 0x1400938f7
bsf eax, edi
lea ecx, [rdi - 1]
and ecx, edi
mov edi, ecx
add rax, rbp
and rax, r15
neg rax
imul r14, rax, 0x118
cmp rbx, qword [r12 + r14 - 0x108]
jne 0x1400938b3
add r14, r12
mov rdx, qword [r14 - 0x110]
mov rcx, rsi
mov r8, rbx
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x1400938b3
jmp 0x140093952
cmp qword [rsp + 0x38], 1
mov ecx, 1
je 0x14009391e
pmovmskb eax, xmm10
xor ecx, ecx
test eax, eax
setne cl
bsf eax, eax
add rax, rbp
and rax, r15
mov qword [rsp + 0x40], rax
pcmpeqb xmm10, xmm8
pmovmskb eax, xmm10
test eax, eax
jne 0x140094470
mov qword [rsp + 0x38], rcx
mov rax, qword [rsp + 0x58]
add rbp, rax
add rbp, 0x10
add rax, 0x10
mov qword [rsp + 0x58], rax
and rbp, r15
jmp 0x14009389f
add r14, 0xffffffffffffff00
mov r8d, 0x100
lea rdi, [rsp + 0x250]
mov rcx, rdi
mov rdx, r14
call sub.msvcrt.dll_memcpy
mov r8d, 0x100
mov rcx, r14
lea rbp, [rsp + 0xe0]
mov rdx, rbp
call sub.msvcrt.dll_memcpy
cmp qword [rsp + 0x68], 0
je 0x1400939a4
mov rcx, qword [0x14019e0f8]
xor edx, edx
mov r8, rsi
call fcn.1400fdef8
cmp qword [rsp + 0x250], 2
mov r13, qword [rsp + 0xb8]
lea rsi, [rsp + 0x518]
lea r14, [rsp + 0x380]
mov rbx, qword [rsp + 0x50]
je 0x1400939d4
mov rcx, rdi
call fcn.1400195fd
movabs r12, 0x8000000000000000
jmp 0x1400947f7
mov rbx, qword [rsp + 0x258]
mov r14, rax
shl r14, 4
cmp rax, 2
jb 0x140093a2d
mov rcx, rax
shr rcx, 1
lea rdx, [rbx + 8]
lea r8, [rbx + r14]
add r8, 0xfffffffffffffff8
movdqu xmm0, xmmword [rdx - 8]
movdqu xmm1, xmmword [r8 - 8]
movdqu xmmword [rdx - 8], xmm1
movdqu xmmword [r8 - 8], xmm0
add rdx, 0x10
add r8, 0xfffffffffffffff0
dec rcx
jne 0x140093a0a
test rax, rax
je 0x140093bfd
add r14, rbx
xor r15d, r15d
test r15, r15
jne 0x140093a5e
mov rdx, qword [rbx]
mov r8, qword [rbx + 8]
mov rcx, rbp
call fcn.140021990
cmp byte [rsp + 0xe0], 0
je 0x140092f5d
mov r8, qword [rbx + 8]
test r8, r8
je 0x140092f5d
mov rax, qword [rbx]
movzx edx, byte [rax]
test dl, dl
js 0x140093a7b
lea rcx, [rax + 1]
jmp 0x140093aee
mov r9d, edx
and r9d, 0x1f
movzx r11d, byte [rax + 1]
and r11d, 0x3f
cmp dl, 0xdf
jbe 0x140093ad0
movzx r10d, byte [rax + 2]
shl r11d, 6
and r10d, 0x3f
or r10d, r11d
cmp dl, 0xf0
jb 0x140093ae0
movzx edx, byte [rax + 3]
and r9d, 7
shl r9d, 0x12
shl r10d, 6
and edx, 0x3f
or edx, r10d
or edx, r9d
cmp edx, 0x110000
je 0x140092f5d
lea rcx, [rax + 4]
jmp 0x140093aee
lea rcx, [rax + 2]
shl r9d, 6
or r9d, r11d
mov edx, r9d
jmp 0x140093aee
lea rcx, [rax + 3]
shl r9d, 0xc
or r10d, r9d
mov edx, r10d
lea r9d, [rdx - 0x30]
cmp r9d, 0xa
jb 0x140093b07
and edx, 0xffffffdf
add edx, 0xffffffbf
cmp edx, 0x19
ja 0x140092f5d
add rax, r8
sub r8, 2
mov edx, 0
cmovae rdx, r8
cmp rcx, rax
je 0x140093bed
movzx r8d, byte [rcx]
test r8b, r8b
js 0x140093b31
inc rcx
jmp 0x140093bb7
mov r9d, r8d
and r9d, 0x1f
movzx r11d, byte [rcx + 1]
and r11d, 0x3f
cmp r8b, 0xdf
jbe 0x140093b92
lea rdi, [rcx + 3]
movzx r10d, byte [rcx + 2]
shl r11d, 6
and r10d, 0x3f
or r10d, r11d
cmp r8b, 0xf0
jb 0x140093ba2
movzx r8d, byte [rdi]
and r9d, 7
shl r9d, 0x12
shl r10d, 6
and r8d, 0x3f
or r8d, r10d
or r8d, r9d
cmp r8d, 0x110000
lea rdi, [rsp + 0x250]
je 0x140093bed
add rcx, 4
jmp 0x140093bb7
add rcx, 2
shl r9d, 6
or r9d, r11d
mov r8d, r9d
jmp 0x140093bb7
shl r9d, 0xc
or r10d, r9d
mov r8d, r10d
mov rcx, rdi
lea rdi, [rsp + 0x250]
lea r9d, [r8 - 0x30]
cmp r9d, 0xa
jb 0x140093be5
mov r9d, r8d
and r9d, 0xffffffdf
add r9d, 0xffffffbf
cmp r9d, 0x1a
jb 0x140093be5
test rdx, rdx
je 0x140092f5d
cmp r8d, 0x2d
jne 0x140092f5d
dec rdx
jmp 0x140093b17
add rbx, 0x10
inc r15
cmp rbx, r14
jne 0x140093a3c
cmp qword [rsp + 0x250], 0
je 0x140093c1e
mov r8, qword [rsp + 0x258]
mov rcx, qword [0x14019e0f8]
xor edx, edx
call fcn.1400fdef8
test rsi, rsi
mov rsi, qword [rsp + 0x40]
mov r8, qword [rsp + 0x38]
je 0x140093c3b
mov rcx, qword [0x14019e0f8]
xor edx, edx
call fcn.1400fdef8
mov rcx, qword [rsp + 0x48]
mov rdx, rsi
mov r8d, 0x2e
call fcn.140051577
mov rbx, rax
mov r14, rdx
mov byte [rsp + 0x114], 0
mov dword [rsp + 0x110], 0
xor esi, esi
mov qword [rsp + 0xe0], rsi
mov ecx, 1
mov qword [rsp + 0xe8], rcx
lea rax, [rsp + 0xe8]
movups xmmword [rax + 8], xmm7
mov qword [rsp + 0x100], rcx
mov qword [rsp + 0x108], rsi
mov rcx, rdx
call fcn.1400f4dd8
mov qword [rsp + 0x250], rax
mov qword [rsp + 0x258], rdx
mov qword [rsp + 0x260], rsi
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rbp
lea rcx, [rsp + 0x90]
mov qword [rsp + 0x1f8], rbx
mov rdx, rbx
mov qword [rsp + 0x38], r14
mov r8, r14
xor r9d, r9d
call fcn.14004ace6
mov bl, byte [rsp + 0x91]
or bl, byte [rsp + 0x92]
or bl, byte [rsp + 0x93]
or bl, byte [rsp + 0x94]
or bl, byte [rsp + 0x95]
or bl, byte [rsp + 0x96]
or bl, byte [rsp + 0x97]
or bl, byte [rsp + 0x98]
or bl, byte [rsp + 0x99]
movzx edi, byte [rsp + 0x90]
or bl, byte [rsp + 0x9a]
or bl, dil
mov rcx, rbp
mov bpl, byte [rsp + 0x9b]
mov eax, dword [rsp + 0x91]
mov edx, dword [rsp + 0x97]
movzx r14d, word [rsp + 0x95]
shl r14, 0x20
or r14, rax
movzx r15d, byte [rsp + 0x9b]
shl r15, 0x20
or r15, rdx
mov rax, qword [rsp + 0x250]
mov qword [rsp + 0x358], rax
mov rax, qword [rsp + 0x258]
mov qword [rsp + 0xc8], rax
mov rsi, qword [rsp + 0x260]
call fcn.14004e311
or bpl, bl
mov rax, qword [rsp + 0x498]
cmovne rax, r14
mov rcx, qword [rsp + 0x490]
cmovne rcx, r15
mov qword [rsp + 0x498], rax
mov qword [rsp + 0x490], rcx
jne 0x140094025
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x80], rax
xor eax, eax
mov qword [rsp + 0xe0], rax
mov qword [rsp + 0xe8], rsi
mov rcx, qword [rsp + 0xc8]
mov qword [rsp + 0xf0], rcx
mov qword [rsp + 0xf8], rsi
mov qword [rsp + 0x100], rax
mov qword [rsp + 0x1e0], rsi
mov qword [rsp + 0x108], rsi
mov qword [rsp + 0x110], 1
movabs rax, 0x2e0000002e
mov qword [rsp + 0x118], rax
mov word [rsp + 0x120], 1
xor eax, eax
mov qword [rsp + 0x68], rax
mov rsi, qword [rsp + 0x4b0]
xor eax, eax
mov qword [rsp + 0x38], rax
lea rcx, [rsp + 0xe0]
call fcn.1400455ec
test rax, rax
je 0x1400940b7
cmp qword [rsi + 0x18], 0
je 0x1400940b7
mov rbx, rax
mov r15, rdx
mov rcx, qword [rsi + 0x20]
mov rdx, qword [rsi + 0x28]
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0x248], rdx
mov r8, rax
mov r9, r15
call fcn.140051942
mov rdi, qword [rsi]
mov r14, qword [rsi + 8]
mov r12, r14
and r12, rax
shr rax, 0x39
movd xmm0, eax
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm9, xmm0, 0
xor esi, esi
movdqu xmm10, xmmword [rdi + r12]
movdqa xmm0, xmm10
pcmpeqb xmm0, xmm9
pmovmskb ebp, xmm0
test bp, bp
je 0x140093f1f
bsf eax, ebp
lea ecx, [rbp - 1]
and ecx, ebp
mov ebp, ecx
add rax, r12
and rax, r14
neg rax
lea r13, [rax + rax*4]
shl r13, 4
cmp r15, qword [rdi + r13 - 0x40]
jne 0x140093edd
add r13, rdi
mov rdx, qword [r13 - 0x48]
mov rcx, rbx
mov r8, r15
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x140093edd
jmp 0x140093fe7
pcmpeqb xmm10, xmm8
pmovmskb eax, xmm10
test eax, eax
jne 0x140093f3d
add r12, rsi
add r12, 0x10
add rsi, 0x10
and r12, r14
jmp 0x140093ec9
mov r9d, 1
mov rcx, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x248]
lea r8, [0x14015f315]
call fcn.140051942
mov rcx, r14
and rcx, rax
shr rax, 0x39
movd xmm0, eax
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm0, xmm0, 0
xor eax, eax
movdqu xmm1, xmmword [rdi + rcx]
movdqa xmm2, xmm1
pcmpeqb xmm2, xmm0
pmovmskb edx, xmm2
test dx, dx
je 0x140093fc6
bsf r8d, edx
lea r9d, [rdx - 1]
and r9d, edx
mov edx, r9d
add r8, rcx
and r8, r14
neg r8
lea r13, [r8 + r8*4]
shl r13, 4
cmp qword [rdi + r13 - 0x40], 1
jne 0x140093f8b
add r13, rdi
mov r8, qword [r13 - 0x48]
cmp byte [r8], 0x2a
jne 0x140093f8b
jmp 0x140093fe7
pcmpeqb xmm1, xmm8
pmovmskb edx, xmm1
test edx, edx
jne 0x1400940b7
add rcx, rax
add rcx, 0x10
add rax, 0x10
and rcx, r14
jmp 0x140093f7a
lea rsi, [r13 - 0x38]
mov r8, qword [rsp + 0x68]
inc r8
lea rax, [r13 - 8]
cmp byte [r13 - 8], 2
mov rcx, qword [rsp + 0x58]
mov rdx, r8
mov qword [rsp + 0x68], r8
cmovne rcx, r8
mov qword [rsp + 0x58], rcx
mov rcx, qword [rsp + 0x38]
cmovne rcx, rax
mov qword [rsp + 0x38], rcx
jmp 0x140093e5c
shl rdi, 8
shl rax, 0x10
add rax, rdi
add rax, 0xb
mov qword [rsp + 0xc0], rax
mov rax, rcx
movabs rcx, 0xffffffffff
and rax, rcx
movabs rcx, 0xffffff0000000000
mov rdx, qword [rsp + 0x80]
and rdx, rcx
or rdx, rax
mov qword [rsp + 0x80], rdx
mov qword [rsp + 0x38], r12
cmp qword [rsp + 0x358], 0
lea r15, [rsp + 0x380]
lea rbp, [rsp + 0xe0]
mov rbx, qword [rsp + 0x50]
lea rdi, [rsp + 0x250]
lea rsi, [rsp + 0x518]
mov r14, qword [rsp + 0x40]
mov r8, qword [rsp + 0xc8]
jne 0x14009467b
jmp 0x140094690
mov rax, qword [rsp + 0x38]
test rax, rax
lea r15, [rsp + 0x380]
je 0x1400945f4
movsx rax, byte [rax + 1]
mov r9, qword [rsp + 0x58]
sub r9, rax
lea rcx, [rsp + 0x250]
mov rdx, qword [rsp + 0x1f8]
mov r8, qword [rsp + 0x80]
mov qword [rsp + 0x58], r9
call fcn.140051c63
mov r9, qword [rsp + 0xc8]
mov qword [rsp + 0xe0], r9
mov r10, qword [rsp + 0x1e0]
mov qword [rsp + 0xe8], r10
mov qword [rsp + 0xf8], r10
mov qword [rsp + 0x100], 1
mov dword [rsp + 0x108], 0x2e
mov rdi, qword [rsp + 0xf0]
xor ebx, ebx
xor esi, esi
mov r13, qword [rsp + 0xb8]
lea rbp, [rsp + 0xe0]
movabs r12, 0x8000000000000000
mov rcx, qword [rsp + 0x230]
mov r14, qword [rsp + 0x40]
cmp rbx, r10
ja 0x140094530
mov r8, r10
sub r8, rbx
lea rax, [r9 + rbx]
cmp r8, 0x10
jae 0x1400941a3
xor edx, edx
cmp r10, rbx
je 0x14009419f
cmp byte [rax + rdx], 0x2e
je 0x1400941c7
inc rdx
cmp r8, rdx
jne 0x14009418e
mov rdx, r8
xor eax, eax
jmp 0x1400941cc
mov cl, 0x2e
mov rdx, rax
call fcn.140020450
mov r10, qword [rsp + 0x1e0]
mov r9, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0x230]
jmp 0x1400941cc
mov eax, 1
cmp rax, 1
jne 0x140094530
add rdx, rbx
mov rdi, rdx
inc rdi
je 0x1400941ee
cmp rdi, r10
ja 0x1400941ee
mov al, 0x2e
cmp byte [r9 + rdx], al
je 0x1400941fb
mov rbx, rdi
cmp rdi, r10
jbe 0x140094177
jmp 0x140094530
inc rsi
mov rbx, rdi
jmp 0x14009416e
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x40], r14
mov r14, r15
mov r15, rsi
lea rsi, [rax - 1]
mov rcx, qword [rax - 1]
mov rdx, qword [rax + 7]
call fcn.140001d12
mov rcx, qword [0x14019e0f8]
xor edx, edx
mov r8, rsi
mov rsi, r15
mov r15, r14
call fcn.1400fdef8
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x60], rax
jmp 0x140093069
mov rax, qword [rsp + 0x88]
cmp qword [rax + 0x88], 0
je 0x140094807
mov rbp, qword [rsp + 0xe0]
call fcn.1400e2ab0
test rax, rax
mov r11, qword [rsp + 0x68]
je 0x1400960df
mov rcx, qword [rax]
mov rdx, qword [rax + 8]
lea r8, [rcx + 1]
mov qword [rax], r8
mov r8, qword [rsp + 0x88]
mov rax, qword [r8 + 0x78]
mov r8, qword [r8 + 0x80]
and r11, r8
movdqu xmm0, xmmword [rax + r11]
pmovmskb r9d, xmm0
test r9d, r9d
jne 0x1400942d5
mov r10d, 0x10
add r11, r10
and r11, r8
movdqu xmm0, xmmword [rax + r11]
pmovmskb r9d, xmm0
add r10, 0x10
test r9d, r9d
je 0x1400942bb
bsf r9d, r9d
add r9, r11
and r9, r8
mov r10b, byte [rax + r9]
test r10b, r10b
js 0x1400942f9
movdqa xmm0, xmmword [rax]
pmovmskb r9d, xmm0
bsf r9d, r9d
mov r10b, byte [rax + r9]
lea r11, [r9 - 0x10]
and r11, r8
mov r8, qword [rsp + 0x48]
mov byte [rax + r9], r8b
mov byte [r11 + rax + 0x10], r8b
neg r9
lea r8, [r9 + r9*8]
lea r14, [rax + r8*8]
and r10b, 1
movzx eax, r10b
mov r8, qword [rsp + 0x88]
sub qword [r8 + 0x88], rax
mov qword [r14 - 0x48], rbp
mov qword [r14 - 0x40], rbx
mov qword [r14 - 0x38], r15
movups xmm0, xmmword [0x140164610]
movups xmmword [r14 - 0x30], xmm0
movdqu xmm0, xmmword [0x140164620]
movdqu xmmword [r14 - 0x20], xmm0
mov qword [r14 - 0x10], rcx
mov qword [r14 - 8], rdx
inc qword [r8 + 0x90]
jmp 0x1400936b2
cmp qword [r14 - 0x20], 0
je 0x140094823
mov r12, qword [rsp + 0xe0]
call fcn.1400e2ab0
test rax, rax
lea r15, [rsp + 0x380]
lea rbp, [rsp + 0xe0]
mov r11, qword [rsp + 0x58]
je 0x1400960df
mov rcx, qword [rax]
mov rdx, qword [rax + 8]
lea r8, [rcx + 1]
mov qword [rax], r8
mov rax, qword [r14 - 0x30]
mov r8, qword [r14 - 0x28]
and r11, r8
movdqu xmm0, xmmword [rax + r11]
pmovmskb r9d, xmm0
test r9d, r9d
jne 0x1400943e9
mov r10d, 0x10
add r11, r10
and r11, r8
movdqu xmm0, xmmword [rax + r11]
pmovmskb r9d, xmm0
add r10, 0x10
test r9d, r9d
je 0x1400943cf
bsf r9d, r9d
add r9, r11
and r9, r8
mov r10b, byte [rax + r9]
test r10b, r10b
js 0x14009440d
movdqa xmm0, xmmword [rax]
pmovmskb r9d, xmm0
bsf r9d, r9d
mov r10b, byte [rax + r9]
lea r11, [r9 - 0x10]
and r11, r8
mov r8, qword [rsp + 0x68]
mov byte [rax + r9], r8b
mov byte [r11 + rax + 0x10], r8b
neg r9
lea r8, [r9 + r9*8]
lea r13, [rax + r8*8]
and r10b, 1
movzx eax, r10b
sub qword [r14 - 0x20], rax
mov qword [r13 - 0x48], r12
mov qword [r13 - 0x40], rsi
mov qword [r13 - 0x38], rdi
movups xmm0, xmmword [0x140164610]
movups xmmword [r13 - 0x30], xmm0
movdqu xmm0, xmmword [0x140164620]
movdqu xmmword [r13 - 0x20], xmm0
mov qword [r13 - 0x10], rcx
mov qword [r13 - 8], rdx
inc qword [r14 - 0x18]
jmp 0x1400937e3
mov rcx, qword [rsp + 0x40]
mov al, byte [r12 + rcx]
test al, al
js 0x14009448e
movdqa xmm0, xmmword [r12]
pmovmskb eax, xmm0
bsf ecx, eax
mov al, byte [r12 + rcx]
and al, 1
movzx eax, al
sub qword [r13 - 0x20], rax
lea rax, [rcx - 0x10]
and r15, rax
mov rax, qword [rsp + 0x48]
mov byte [r12 + rcx], al
mov byte [r15 + r12 + 0x10], al
inc qword [r13 - 0x18]
neg rcx
imul rax, rcx, 0x118
lea rcx, [r12 + rax]
add rcx, 0xffffffffffffff00
mov rax, qword [rsp + 0x68]
mov qword [rcx - 0x18], rax
mov qword [rcx - 0x10], rsi
mov qword [rcx - 8], rbx
mov r8d, 0x100
lea rbp, [rsp + 0xe0]
mov rdx, rbp
call sub.msvcrt.dll_memcpy
mov r13, qword [rsp + 0xb8]
lea rsi, [rsp + 0x518]
lea r14, [rsp + 0x380]
mov rbx, qword [rsp + 0x50]
lea rdi, [rsp + 0x250]
jmp 0x1400939d4
lea rcx, [r13 - 0x30]
mov rdx, r14
mov r8, r12
mov rdi, rax
call fcn.140019b18
mov rax, rdi
jmp 0x140093867
mov qword [rsp + 0xf0], rdi
inc rsi
mov qword [rsp + 0x228], r12
mov r9, qword [rsp + 0x58]
cmp rsi, r9
mov rbx, qword [rsp + 0x50]
lea rdi, [rsp + 0x250]
jbe 0x14009458d
inc r9
mov rcx, rbp
mov rdx, qword [rsp + 0x1f8]
mov r8, qword [rsp + 0x80]
call fcn.140051c63
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0x228], rax
mov rcx, qword [rsp + 0xe8]
mov qword [rsp + 0x230], rcx
mov rsi, qword [rsp + 0x80]
mov rcx, rsi
call fcn.1400f4dd8
mov qword [rsp + 0x38], rax
mov rcx, rdx
mov qword [rsp + 0xc0], rdx
mov rdx, qword [rsp + 0x1f8]
mov r8, rsi
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x250]
mov qword [rsp + 0xb0], rax
mov rax, qword [rsp + 0x258]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x260]
mov qword [rsp + 0x488], rax
jmp 0x140094660
mov rdi, qword [rsp + 0x80]
mov rcx, rdi
call fcn.1400f4dd8
mov qword [rsp + 0x38], rax
mov rcx, rdx
mov qword [rsp + 0xc0], rdx
mov rdx, qword [rsp + 0x1f8]
mov r8, rdi
call sub.msvcrt.dll_memcpy
movabs r12, 0x8000000000000000
mov qword [rsp + 0xb0], r12
mov qword [rsp + 0x228], r12
mov r13, qword [rsp + 0xb8]
lea rbp, [rsp + 0xe0]
mov rbx, qword [rsp + 0x50]
lea rdi, [rsp + 0x250]
mov r14, qword [rsp + 0x40]
cmp qword [rsp + 0x358], 0
lea rsi, [rsp + 0x518]
mov r8, qword [rsp + 0xc8]
je 0x140094689
mov rcx, qword [0x14019e0f8]
xor edx, edx
call fcn.1400fdef8
cmp qword [rsp + 0x38], r12
jne 0x1400946a2
mov r14, qword [rsp + 0x60]
mov rdx, qword [rsp + 0xc0]
jmp 0x140092ffe
mov r8, qword [rsp + 0x60]
mov rcx, r8
mov dil, 2
mov rdx, qword [rsp + 0xb0]
cmp rdx, r12
mov eax, 0
cmove rcx, rax
mov rax, qword [rsp + 0x488]
je 0x1400946f4
cmp rax, r14
jne 0x1400946f2
mov rdx, qword [rsp + 0x48]
mov r8, r14
call sub.msvcrt.dll_memcmp
mov r8, qword [rsp + 0x60]
mov rdx, qword [rsp + 0xb0]
test eax, eax
sete dil
jmp 0x1400946f4
xor edi, edi
cmp qword [rsp + 0x38], 0
je 0x14009471f
mov rcx, qword [0x14019e0f8]
xor edx, edx
mov r8, qword [rsp + 0xc0]
call fcn.1400fdef8
mov r8, qword [rsp + 0x60]
mov rdx, qword [rsp + 0xb0]
lea rax, [rdx*2]
test rax, rax
je 0x14009473a
mov rcx, qword [0x14019e0f8]
xor edx, edx
call fcn.1400fdef8
mov rax, qword [rsp + 0x228]
lea rax, [rax*2]
test rax, rax
je 0x140094765
mov rcx, qword [0x14019e0f8]
xor edx, edx
mov r8, qword [rsp + 0x230]
call fcn.1400fdef8
test dil, 1
jne 0x140094778
lea rdi, [rsp + 0x250]
jmp 0x140093069
mov rcx, qword [rsp + 0x78]
call fcn.1400fc71b
test rax, rax
lea rdi, [rsp + 0x250]
je 0x1400947ec
cmp dword [rsp + 0x428], 1
ja 0x1400947ec
mov r8, rdx
cmp qword [rsp + 0x440], rdx
jne 0x1400947ec
mov r14, r15
mov r15, rsi
mov rsi, qword [rsp + 0x438]
mov rcx, rsi
mov rdx, rax
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x1400947e6
mov rcx, rbp
mov rdx, qword [rsp + 0x78]
call fcn.14001a008
mov rdi, qword [rsp + 0xe0]
cmp rdi, 4
jne 0x14009484c
lea rdi, [rsp + 0x250]
mov rsi, r15
mov r15, r14
mov r14, r15
mov rcx, r15
call fcn.1400195fd
mov r15, rsi
mov rcx, rsi
call fcn.14008c5ec
jmp 0x14009223f
mov rcx, qword [rsp + 0x4a8]
mov rdx, qword [rsp + 0x40]
mov r8, qword [rsp + 0x70]
call fcn.14001963d
jmp 0x140094266
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x40]
mov r8, qword [rsp + 0x70]
call fcn.14001963d
mov rsi, qword [rsp + 0xe8]
mov rdi, qword [rsp + 0xf0]
jmp 0x140094375
mov bl, byte [rsp + 0xe8]
lea rax, [rsp + 0xe8]
movups xmm0, xmmword [rax + 1]
movaps xmmword [rsp + 0x200], xmm0
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x20f], rax
cmp qword [rsp + 0x430], 0
je 0x14009488f
mov rcx, qword [0x14019e0f8]
xor edx, edx
mov r8, rsi
call fcn.1400fdef8
mov qword [rsp + 0x428], rdi
mov byte [rsp + 0x430], bl
mov rax, qword [rsp + 0x20f]
mov rcx, qword [rsp + 0x4a0]
mov qword [rcx + 0xf], rax
movdqa xmm0, xmmword [rsp + 0x200]
movdqu xmmword [rcx], xmm0
mov rbx, qword [rsp + 0x50]
lea rdi, [rsp + 0x250]
mov rsi, r15
mov r15, r14
jmp 0x140093069
cmp dword [rsp + 0x818], 1
ja 0x1400948ee
lea rcx, [rsp + 0x818]
call fcn.14008c5ec
mov rcx, qword [rsp + 0x360]
mov edx, dword [rsp + 0xdc]
call fcn.14009616d
movzx ebp, word [rsp + 0xa28]
movzx eax, bp
lea ecx, [rax - 0x12d]
cmp ecx, 3
jae 0x140094a07
cmp qword [r13], 0
lea rdi, [rsp + 0xe0]
je 0x140094947
mov rax, qword [r13 + 8]
test rax, rax
je 0x140094947
mov rdx, qword [r13 + 0x10]
mov r8, qword [r13 + 0x18]
mov rcx, qword [rsp + 0x368]
call qword [rax + 8]
mov qword [r13], 0
xor esi, esi
lea r15, [rsp + 0xf8]
lea rbp, [0x14015e260]
lea r8, [rsi + rbp]
mov rcx, rdi
mov rdx, rbx
call fcn.140042794
cmp byte [rsp + 0x100], 2
je 0x140094997
mov rax, qword [rsp + 0xe0]
mov rdx, qword [rsp + 0xe8]
mov r8, qword [rsp + 0xf0]
mov rcx, r15
call qword [rax + 0x10]
add rsi, 0x20
cmp rsi, 0x80
jne 0x140094960
mov rax, qword [rsp + 0x238]
movzx eax, byte [rax]
mov ecx, eax
or ecx, 4
cmp ecx, 5
lea rsi, [rsp + 0x9c0]
lea rdi, [rsp + 0x250]
je 0x140094a2f
cmp al, 0xa
jb 0x1400949ec
cmp qword [r13 + 0x108], 0
je 0x1400949ec
mov r8, qword [r13 + 0x100]
mov rcx, qword [0x14019e0f8]
xor edx, edx
call fcn.1400fdef8
mov rax, qword [rsp + 0x238]
movabs rcx, 0x101010101010101
mov qword [rax + 0x10], rcx
movups xmmword [rax], xmm6
jmp 0x140094a2f
add eax, 0xfffffecd
cmp eax, 2
jae 0x140095c90
cmp qword [r13], 0
lea rsi, [rsp + 0x9c0]
je 0x140094a2f
cmp qword [r13 + 8], 0
je 0x140095c90
movups xmm0, xmmword [0x14015e2f0]
movaps xmmword [rsp + 0xf0], xmm0
movups xmm0, xmmword [0x14015e2e0]
movaps xmmword [rsp + 0xe0], xmm0
mov rcx, rsi
lea rbp, [rsp + 0xe0]
mov rdx, rbp
call fcn.14002d142
test rax, rax
je 0x140095c88
mov rdx, qword [rax + 8]
mov r8, qword [rax + 0x10]
mov rcx, rdi
call fcn.14001be40
cmp qword [rsp + 0x250], 0
jne 0x140095c88
mov r8, qword [rsp + 0x258]
mov r9, qword [rsp + 0x260]
xor eax, eax
mov qword [rsp + 0x250], rax
mov qword [rsp + 0x260], rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x270], rax
mov rcx, rbp
mov rdx, rdi
call fcn.1400f6d02
mov r14, qword [rsp + 0xe0]
cmp r14, r12
je 0x140095c88
mov rbx, qword [rsp + 0xe8]
mov r15, qword [rsp + 0xf0]
lea rax, [rsp + 0xf8]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmm2, xmmword [rax + 0x20]
movups xmm3, xmmword [rax + 0x30]
movaps xmmword [rsp + 0x380], xmm0
movaps xmmword [rsp + 0x390], xmm1
movaps xmmword [rsp + 0x3a0], xmm2
movaps xmmword [rsp + 0x3b0], xmm3
mov rcx, r15
xor edx, edx
call fcn.140012c31
mov rsi, rax
mov rdi, rdx
mov rcx, rdx
mov rdx, rbx
mov r8, r15
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x5c0], rsi
mov qword [rsp + 0x5c8], rdi
mov qword [rsp + 0x5d0], r15
lea rsi, [rsp + 0x8c0]
mov rcx, rsi
lea rdx, [rsp + 0x5c0]
call fcn.1400130ac
mov rcx, rbp
mov rdx, rsi
call fcn.14003ebe8
cmp byte [rsp + 0xe0], 3
je 0x140095b89
mov ecx, 0xb
lea rax, [rsp + 0x250]
mov rdi, rax
mov rsi, rbp
rep movsq qword [rdi], qword [rsi]
cmp byte [rsp + 0x250], 3
je 0x140095b89
mov rcx, rax
call fcn.1400407d8
movdqa xmm0, xmmword [rsp + 0x380]
movdqa xmm1, xmmword [rsp + 0x390]
movdqa xmm2, xmmword [rsp + 0x3a0]
movaps xmm3, xmmword [rsp + 0x3b0]
lea rax, [rsp + 0x530]
movups xmmword [rax + 0x30], xmm3
movdqu xmmword [rax + 0x20], xmm2
movdqu xmmword [rax + 0x10], xmm1
movdqu xmmword [rax], xmm0
mov qword [rsp + 0x518], r14
mov qword [rsp + 0x520], rbx
mov qword [rsp + 0x528], r15
mov rax, qword [r13 + 0x110]
cmp byte [rax + 0x200], 0
lea r12, [rsp + 0xe8]
mov r14, qword [rsp + 0x78]
je 0x140094fa9
mov r9d, dword [rsp + 0x544]
test r9, r9
je 0x140094c67
cmp r15, r9
jbe 0x140094c41
cmp byte [rbx + r9], 0xbf
jg 0x140094c47
jmp 0x140095fff
jne 0x140095fff
cmp r9d, 4
jne 0x140094c67
mov rcx, rbx
lea rdx, [0x14018c743]
mov r8, r9
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x140095227
mov esi, dword [r13 + 0xb4]
mov rbx, qword [r13 + 0x90]
mov rdi, qword [r13 + 0x98]
mov rcx, rbp
mov rdx, rbx
mov r8, rdi
call fcn.140012760
mov rax, qword [r13 + 0xb8]
mov ecx, dword [r13 + 0xc0]
mov rdx, qword [rsp + 0x1f0]
movups xmm0, xmmword [rdx]
movups xmmword [r12 + 0x38], xmm0
mov dl, byte [rdx + 0x10]
mov byte [r12 + 0x48], dl
mov edx, dword [r13 + 0xb0]
mov r8d, dword [r13 + 0xc4]
movdqu xmm0, xmmword [r13 + 0xa0]
mov dword [rsp + 0x10c], esi
mov qword [rsp + 0x110], rax
mov dword [rsp + 0x118], ecx
mov dword [rsp + 0x108], edx
mov dword [rsp + 0x11c], r8d
movdqu xmmword [rsp + 0xf8], xmm0
mov rcx, rbp
call fcn.1400fc864
mov rcx, rbp
call fcn.1400fcc06
cmp dword [rsp + 0x100], 0
mov rax, qword [rsp + 0xf0]
je 0x140094d25
mov r9d, dword [rsp + 0x104]
cmp rax, r9
jae 0x140094d32
mov r9, rax
lea rcx, [rsp + 0x250]
jmp 0x140094d5f
test r9, r9
lea rcx, [rsp + 0x250]
je 0x140094d57
cmp rax, r9
jbe 0x140094d57
mov rax, qword [rsp + 0xe8]
cmp byte [rax + r9], 0xbf
jle 0x140096090
mov qword [rsp + 0xf0], r9
mov dword [rsp + 0x100], 0
mov r8d, dword [rsp + 0x10c]
mov rdx, qword [rsp + 0xe8]
mov rax, r9
inc r8d
je 0x140094d9c
mov rax, r9
sub rax, r8
jbe 0x140094d96
cmp byte [rdx + r8], 0xbf
jg 0x140094d9c
jmp 0x14009605b
jne 0x14009605b
test rax, rax
je 0x140094dab
cmp byte [rdx + r8], 0x2f
sete al
jmp 0x140094dad
xor eax, eax
test al, al
jne 0x140094e7a
cmp dword [rsp + 0xf8], 0
jne 0x140094e7a
mov r8, r9
test r9, r9
je 0x140094e6a
lea rdi, [rdx + r9]
xor eax, eax
movzx r8d, byte [rdi - 1]
test r8b, r8b
js 0x140094de4
dec rdi
jmp 0x140094e42
movzx r10d, byte [rdi - 2]
cmp r10b, 0xc0
jge 0x140094e11
movzx r11d, byte [rdi - 3]
cmp r11b, 0xbf
jg 0x140094e1b
movzx esi, byte [rdi - 4]
add rdi, 0xfffffffffffffffc
and esi, 7
shl esi, 6
and r11d, 0x3f
or r11d, esi
jmp 0x140094e23
add rdi, 0xfffffffffffffffe
and r10d, 0x1f
jmp 0x140094e2e
add rdi, 0xfffffffffffffffd
and r11d, 0xf
shl r11d, 6
and r10d, 0x3f
or r10d, r11d
shl r10d, 6
and r8d, 0x3f
or r8d, r10d
cmp r8d, 0x110000
je 0x140094e50
cmp r8d, 0x20
jne 0x140094e50
inc rax
cmp rdx, rdi
jne 0x140094dd5
mov r8, r9
sub r8, rax
jb 0x140094e7a
je 0x140094e6a
cmp r9, r8
jbe 0x140094e6a
cmp byte [rdx + r8], 0xbf
jle 0x140096090
cmp r9, r8
jb 0x140094e7a
mov qword [rsp + 0xf0], r8
mov r9, r8
mov r8, r9
call fcn.14002d915
mov al, byte [rsp + 0x270]
mov bl, 2
cmp al, 2
je 0x140094ed1
movdqu xmm0, xmmword [rsp + 0x250]
movdqu xmm1, xmmword [rsp + 0x260]
movdqa xmmword [rsp + 0x390], xmm1
movdqa xmmword [rsp + 0x380], xmm0
lea rdx, [rsp + 0x258]
mov ecx, dword [rdx + 0x19]
mov edx, dword [rdx + 0x1c]
mov dword [rsp + 0x8c0], ecx
mov dword [rsp + 0x8c3], edx
mov ebx, eax
cmp qword [rsp + 0xe0], 0
je 0x140094ef2
mov r8, qword [rsp + 0xe8]
mov rcx, qword [0x14019e0f8]
xor edx, edx
call fcn.1400fdef8
cmp bl, 2
je 0x140094fa9
movaps xmm0, xmmword [rsp + 0x380]
movdqa xmm1, xmmword [rsp + 0x390]
movdqa xmmword [rsp + 0x6e0], xmm1
movaps xmmword [rsp + 0x6d0], xmm0
mov byte [rsp + 0x6f0], bl
mov eax, dword [rsp + 0x8c0]
mov ecx, dword [rsp + 0x8c3]
lea rdx, [rsp + 0x6f1]
mov dword [rdx + 3], ecx
mov dword [rdx], eax
movups xmm0, xmmword [0x14015e310]
movaps xmmword [rsp + 0x260], xmm0
movdqu xmm0, xmmword [0x14015e300]
movdqa xmmword [rsp + 0x250], xmm0
mov rcx, rbp
mov rdx, qword [rsp + 0x50]
lea r8, [rsp + 0x250]
lea r9, [rsp + 0x6d0]
call fcn.140041e78
cmp byte [rsp + 0x100], 2
je 0x140094fa9
mov rax, qword [rsp + 0xe0]
mov rdx, qword [rsp + 0xe8]
mov r8, qword [rsp + 0xf0]
lea rcx, [rsp + 0xf8]
call qword [rax + 0x10]
mov rdx, qword [r13 + 0x90]
mov r8, qword [r13 + 0x98]
lea rsi, [rsp + 0xa60]
mov rcx, rsi
call fcn.140012760
movdqu xmm0, xmmword [r13 + 0xb4]
mov rax, qword [rsp + 0x1f0]
movups xmm1, xmmword [rax]
lea rcx, [rsp + 0xaa0]
movups xmmword [rcx], xmm1
mov al, byte [rax + 0x10]
mov byte [rcx + 0x10], al
mov eax, dword [r13 + 0xb0]
mov ecx, dword [r13 + 0xc4]
movdqu xmm1, xmmword [r13 + 0xa0]
movdqu xmmword [rsp + 0xa8c], xmm0
mov dword [rsp + 0xa88], eax
mov dword [rsp + 0xa9c], ecx
movdqu xmmword [rsp + 0xa78], xmm1
mov rdx, qword [r13 + 0xf0]
cmp rdx, qword [r13 + 0xe0]
jne 0x140095047
mov rcx, qword [rsp + 0x4c8]
call fcn.1400961a4
mov rdx, qword [r13 + 0xf0]
mov rbx, qword [rsp + 0x50]
imul rdi, rdx, 0x58
add rdi, qword [r13 + 0xe8]
mov ecx, 0xb
rep movsq qword [rdi], qword [rsi]
mov rax, qword [r13 + 0xf0]
inc rax
mov qword [r13 + 0xf0], rax
mov rcx, qword [r13 + 0x110]
mov rdx, qword [rcx + 0x1d0]
test rdx, rdx
je 0x1400950af
cmp edx, 1
lea rsi, [rsp + 0x518]
jne 0x140095c67
cmp rax, qword [rcx + 0x1d8]
je 0x140095e60
mov qword [rsp + 0xab8], 0
jmp 0x140095115
mov rdx, qword [r13 + 0xe8]
movzx r8d, word [rsp + 0xa28]
lea rsi, [rsp + 0x518]
mov qword [rsp + 0xe0], rsi
mov qword [rsp + 0xe8], rdx
mov qword [rsp + 0xf0], rax
mov word [rsp + 0xf8], r8w
mov rdx, qword [rcx + 0x1d8]
mov rax, qword [rcx + 0x1e0]
lea rcx, [rsp + 0xab8]
mov r8, rbp
call qword [rax + 0x28]
mov rax, qword [rsp + 0xab8]
test rax, rax
jne 0x140095c5d
mov ecx, 0xb
mov rdi, rbp
rep movsq qword [rdi], qword [rsi]
cmp qword [r14], 0
je 0x14009513b
mov r8, qword [r13 + 0x90]
mov rcx, qword [0x14019e0f8]
xor edx, edx
call fcn.1400fdef8
mov ecx, 0xb
mov rdi, r14
mov rsi, rbp
rep movsq qword [rdi], qword [rsi]
mov ecx, 0xc
lea rdi, [rsp + 0x5c0]
mov rsi, rbx
rep movsq qword [rdi], qword [rsi]
xor ecx, ecx
mov qword [r13 + 0x28], rcx
mov qword [r13 + 0x40], rcx
mov edx, 8
mov qword [r13 + 0x48], rdx
mov rax, qword [rsp + 0x4d8]
movups xmmword [rax], xmm7
mov r14, qword [r13 + 0xe8]
mov r15, qword [r13 + 0xf0]
lea rax, [r15 - 1]
mov qword [r13 + 0x60], rdx
mov qword [r13 + 0x68], rcx
mov qword [r13 + 0x70], 2
mov qword [r13 + 0x78], rcx
mov word [r13 + 0x80], 0
sub r15, 1
jb 0x14009550f
imul rsi, rax, 0x58
add rsi, r14
mov rcx, qword [rsp + 0x78]
call fcn.1400fc71b
mov rdi, rax
mov rbx, rdx
mov rcx, rsi
call fcn.1400fc71b
test rdi, rdi
je 0x1400951fe
test rax, rax
je 0x1400951fe
mov r8, rdx
cmp rbx, rdx
jne 0x140095343
mov rcx, rdi
mov rdx, rax
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x140095343
jmp 0x140095207
or rdi, rax
jne 0x140095343
mov di, 1
cmp word [r13 + 0xb0], 0
je 0x140095251
movzx ebp, word [r13 + 0xb2]
mov bx, 1
jmp 0x1400952db
mov esi, dword [r13 + 0xb4]
mov rbx, qword [r13 + 0x90]
mov rdi, qword [r13 + 0x98]
test rsi, rsi
je 0x14009527c
cmp rdi, rsi
jbe 0x140095283
cmp byte [rbx + rsi], 0xbf
jg 0x140095289
jmp 0x1400960c2
mov r9d, dword [r13 + 0xb4]
mov rcx, qword [r13 + 0x90]
test r9, r9
je 0x1400952cf
mov rdx, qword [r13 + 0x98]
cmp rdx, r9
jbe 0x1400952c9
cmp byte [rcx + r9], 0xbf
jg 0x1400952cf
jmp 0x1400960b1
xor esi, esi
jmp 0x140094c7c
jne 0x1400960c2
cmp esi, 5
jne 0x140094c7c
mov rcx, rbx
lea rdx, [0x14018c747]
mov r8, rsi
call sub.msvcrt.dll_memcmp
mov esi, 5
test eax, eax
jne 0x140094c7c
jmp 0x140094fa9
call fcn.1400b5520
xor al, 1
mov dword [rsp + 0xdc], eax
jmp 0x1400921f9
jne 0x1400960b1
mov rdx, r9
call fcn.1400f7a2a
mov ebx, eax
mov ebp, edx
imul rax, r15, 0x58
cmp word [r14 + rax + 0x28], 0
je 0x1400952f0
movzx edx, word [r14 + rax + 0x2a]
jmp 0x140095323
mov r9d, dword [r14 + rax + 0x2c]
mov rcx, qword [rsi + 8]
test r9, r9
je 0x140095319
mov rdx, qword [rsi + 0x10]
cmp rdx, r9
jbe 0x140095313
cmp byte [rcx + r9], 0xbf
jg 0x140095319
jmp 0x1400960b1
jne 0x1400960b1
mov rdx, r9
call fcn.1400f7a2a
mov edi, eax
test bx, bx
je 0x140095332
test di, di
je 0x140095332
cmp bp, dx
jmp 0x140095335
or di, bx
lea rbp, [rsp + 0xe0]
je 0x14009550f
movups xmm0, xmmword [0x14015e418]
movaps xmmword [rsp + 0x260], xmm0
movups xmm0, xmmword [0x14015e408]
movaps xmmword [rsp + 0x250], xmm0
mov rcx, rbp
lea rdx, [rsp + 0x5c0]
lea rsi, [rsp + 0x250]
mov r8, rsi
call fcn.140042586
cmp byte [rsp + 0x100], 2
je 0x1400953a9
mov rax, qword [rsp + 0xe0]
mov rdx, qword [rsp + 0xe8]
mov r8, qword [rsp + 0xf0]
lea rcx, [rsp + 0xf8]
call qword [rax + 0x10]
movups xmm0, xmmword [0x14015e170]
movaps xmmword [rsp + 0x260], xmm0
movups xmm0, xmmword [0x14015e160]
movaps xmmword [rsp + 0x250], xmm0
mov rcx, rbp
lea rdx, [rsp + 0x5c0]
mov r8, rsi
call fcn.140042586
cmp byte [rsp + 0x100], 2
je 0x140095407
mov rax, qword [rsp + 0xe0]
mov rdx, qword [rsp + 0xe8]
mov r8, qword [rsp + 0xf0]
lea rcx, [rsp + 0xf8]
call qword [rax + 0x10]
mov r9d, 7
mov rcx, rbp
lea rdx, [rsp + 0x5c0]
lea r8, str.cookie2
call fcn.1400422c1
cmp byte [rsp + 0x100], 2
je 0x140095451
mov rax, qword [rsp + 0xe0]
mov rdx, qword [rsp + 0xe8]
mov r8, qword [rsp + 0xf0]
lea rcx, [rsp + 0xf8]
call qword [rax + 0x10]
movups xmm0, xmmword [0x14015e1d8]
movaps xmmword [rsp + 0x260], xmm0
movups xmm0, xmmword [0x14015e1c8]
movaps xmmword [rsp + 0x250], xmm0
mov rcx, rbp
lea rdx, [rsp + 0x5c0]
mov r8, rsi
call fcn.140042586
cmp byte [rsp + 0x100], 2
je 0x1400954af
mov rax, qword [rsp + 0xe0]
mov rdx, qword [rsp + 0xe8]
mov r8, qword [rsp + 0xf0]
lea rcx, [rsp + 0xf8]
call qword [rax + 0x10]
movups xmm0, xmmword [0x14015efd0]
movaps xmmword [rsp + 0x260], xmm0
movdqu xmm0, xmmword [0x14015efc0]
movdqa xmmword [rsp + 0x250], xmm0
mov rcx, rbp
lea rdx, [rsp + 0x5c0]
mov r8, rsi
call fcn.140042586
cmp byte [rsp + 0x100], 2
je 0x14009550f
mov rax, qword [rsp + 0xe0]
mov rdx, qword [rsp + 0xe8]
mov r8, qword [rsp + 0xf0]
lea rcx, [rsp + 0xf8]
call qword [rax + 0x10]
mov rdx, qword [r13 + 0x90]
mov r8, qword [r13 + 0x98]
lea rcx, [rsp + 0x710]
call fcn.140096266
cmp qword [r13], 0
je 0x140095580
mov rax, qword [r13 + 8]
test rax, rax
je 0x140095580
mov r8, qword [r13 + 0x10]
mov r9, qword [r13 + 0x18]
mov rcx, rbp
mov rdx, qword [rsp + 0x368]
call qword [rax]
mov rbx, qword [rsp + 0xe0]
mov r14, qword [rsp + 0xe8]
movdqu xmm0, xmmword [r12 + 8]
movdqa xmmword [rsp + 0x200], xmm0
lea r15, [rsp + 0x380]
lea rcx, [0x14018ced8]
jmp 0x1400955a1
movaps xmmword [rsp + 0x200], xmm7
lea rbx, [0x14015b288]
lea rcx, [0x14018ced8]
mov r14, rcx
lea r15, [rsp + 0x380]
movabs rax, 0x101010101010101
mov qword [r12 + 0xc0], rax
movups xmmword [r12 + 0xb0], xmm6
mov rax, qword [rsp + 0x4d0]
movups xmmword [rax], xmm7
movups xmmword [r12 + 0x20], xmm7
mov byte [rsp + 0x140], 0
lea rax, [0x140145380]
mov qword [rsp + 0x150], rax
mov qword [rsp + 0x158], rcx
mov qword [rsp + 0x170], rax
lea rax, [0x14018cb08]
mov qword [rsp + 0x178], rax
mov qword [rsp + 0x180], 1
xor ecx, ecx
mov qword [rsp + 0x188], rcx
mov word [rsp + 0x190], 0xffff
mov byte [rsp + 0x1b8], 2
mov qword [rsp + 0xe0], rcx
mov qword [rsp + 0xf8], rcx
mov eax, 8
mov qword [rsp + 0x100], rax
mov qword [rsp + 0x118], rax
mov qword [rsp + 0x120], rcx
mov qword [rsp + 0x128], 2
mov qword [rsp + 0x130], rcx
mov word [rsp + 0x138], 0
mov qword [rsp + 0x1b0], rcx
mov rax, qword [rsp + 0x238]
movzx eax, byte [rax]
lea rdx, [0x140103a40]
movsxd rax, dword [rdx + rax*4]
add rax, rdx
jmp rax
mov byte [rsp + 0x7e8], cl
mov ecx, dword [rsp + 0x380]
mov r8d, dword [rsp + 0x383]
lea r9, [rsp + 0x7e9]
mov dword [r9 + 3], r8d
mov dword [r9], ecx
mov qword [rsp + 0x7f0], rax
mov qword [rsp + 0x7f8], rdx
mov rcx, r15
mov rdx, rbp
lea r8, [rsp + 0x7e8]
call fcn.14002d9ed
movzx eax, byte [rsp + 0x710]
test rax, rax
je 0x14009571e
cmp eax, 1
jne 0x140095722
mov dil, 1
mov bpl, byte [rsp + 0x711]
jmp 0x140095720
xor edi, edi
jmp 0x140095765
call fcn.140042b78
mov rsi, rax
mov rax, qword [rsp + 0x718]
lea rdx, [rax + 0x18]
mov r10, qword [rax]
mov r8, qword [rax + 8]
mov r9, qword [rax + 0x10]
mov rcx, rbp
call qword [r10]
movdqu xmm0, xmmword [rsp + 0xe0]
movdqu xmm1, xmmword [rsp + 0xf0]
movdqu xmmword [rsi + 0x10], xmm1
movdqu xmmword [rsi], xmm0
mov dil, 2
mov rax, qword [rsp + 0x720]
mov r8, qword [rsp + 0x728]
mov r9, qword [rsp + 0x730]
lea rcx, [rsp + 0x7f8]
lea rdx, [rsp + 0x738]
call qword [rax]
mov rax, qword [rsp + 0x740]
mov r8, qword [rsp + 0x748]
mov r9, qword [rsp + 0x750]
lea r12, [rsp + 0xe0]
mov rcx, r12
lea rdx, [rsp + 0x758]
call qword [rax]
movzx eax, word [rsp + 0x760]
mov word [rsp + 0x100], ax
mov byte [rsp + 0x7e8], dil
mov byte [rsp + 0x7e9], bpl
mov qword [rsp + 0x7f0], rsi
movups xmm0, xmmword [rsp + 0xe0]
movdqu xmm1, xmmword [rsp + 0xf0]
lea rcx, [rsp + 0x7e9]
movdqu xmmword [rcx + 0x3f], xmm1
movups xmmword [rcx + 0x2f], xmm0
mov rax, qword [rsp + 0x100]
mov qword [rcx + 0x4f], rax
mov ecx, 0xb
mov rdi, r12
lea rsi, [rsp + 0x7e8]
rep movsq qword [rdi], qword [rsi]
lea rcx, [rsp + 0x8c0]
mov rdx, r15
mov r8, r12
call fcn.14009631a
mov rsi, qword [rsp + 0x8c0]
mov bpl, byte [rsp + 0x8c8]
mov dil, byte [rsp + 0x8c9]
mov qword [rsp + 0xe0], rbx
mov qword [rsp + 0xe8], r14
movaps xmm0, xmmword [rsp + 0x200]
lea rax, [rsp + 0xe8]
movups xmmword [rax + 8], xmm0
cmp rsi, 3
je 0x140095f91
mov r8d, 0xd6
lea rcx, [rsp + 0x25a]
lea rdx, [rsp + 0x8ca]
call sub.msvcrt.dll_memcpy
movdqa xmm0, xmmword [rsp + 0x200]
lea rax, [rsp + 0x258]
movdqu xmmword [rax + 0xe8], xmm0
mov qword [rsp + 0x250], rsi
mov byte [rsp + 0x258], bpl
mov byte [rsp + 0x259], dil
mov qword [rsp + 0x330], rbx
mov qword [rsp + 0x338], r14
mov rdi, qword [r13 + 0x110]
cmp qword [rdi + 0x10], 0
movabs r12, 0x8000000000000000
je 0x14009592a
lea rsi, [rdi + 0x18]
mov rcx, rsi
call sub.kernel32.dll_AcquireSRWLockShared
mov al, byte [rdi + 0x20]
add rdi, 0x28
test al, al
jne 0x140095fd4
lea rcx, [rsp + 0x5c0]
mov rdx, rdi
mov r8, qword [rsp + 0x78]
call fcn.14009643b
mov rcx, rsi
call sub.kernel32.dll_ReleaseSRWLockShared
movzx ebp, word [rsp + 0x618]
mov rsi, qword [rsp + 0x608]
mov rdi, qword [rsp + 0x610]
mov rcx, rdi
call fcn.14003a65a
mov rbx, rax
mov r14, rdx
lea r8, [rdi*4]
mov rcx, rdx
mov rdx, rsi
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x380], rbx
mov qword [rsp + 0x388], r14
mov qword [rsp + 0x390], rdi
mov r14, r15
mov rcx, r15
call fcn.14003a5f1
movdqu xmm9, xmmword [rsp + 0x388]
mov rdx, qword [rsp + 0x5e0]
mov r8, qword [rsp + 0x5e8]
lea rcx, [rsp + 0xf8]
call fcn.140097015
mov rdx, qword [rsp + 0x5f8]
mov r8, qword [rsp + 0x600]
lea rcx, [rsp + 0x110]
call fcn.14009722f
movdqu xmm0, xmmword [rsp + 0x5c0]
mov rax, qword [rsp + 0x5d0]
mov word [rsp + 0x138], bp
movdqu xmmword [rsp + 0x128], xmm9
movdqu xmmword [rsp + 0xe0], xmm0
mov qword [rsp + 0xf0], rax
lea rdi, [rsp + 0x250]
mov rcx, rdi
call fcn.140052f4a
mov ecx, 0xc
lea rbp, [rsp + 0xe0]
mov rsi, rbp
rep movsq qword [rdi], qword [rsi]
xor eax, eax
mov rbx, qword [rsp + 0x50]
mov rcx, qword [rbx + rax*8]
mov rdx, qword [rsp + rax*8 + 0x5c0]
mov qword [rbx + rax*8], rdx
mov qword [rsp + rax*8 + 0x5c0], rcx
inc rax
cmp rax, 0xc
jne 0x140095a28
mov rsi, qword [r13 + 0x110]
mov eax, 0xa8
add rsi, rax
mov r8d, 0x100
mov rcx, rbp
lea rdx, [rsp + 0x250]
call sub.msvcrt.dll_memcpy
mov rcx, rsi
mov rdx, rbp
call fcn.14009736d
mov rsi, rax
mov rdi, rdx
mov rcx, qword [r13 + 0x118]
mov rdx, qword [r13 + 0x120]
call fcn.1400625c9
mov qword [r13 + 0x118], rsi
mov qword [r13 + 0x120], rdi
lea rcx, [rsp + 0x710]
call fcn.1400407d8
lea rcx, [rsp + 0x5c0]
call fcn.140052f4a
lea rcx, [rsp + 0x9c0]
call fcn.140052f4a
mov rcx, qword [rsp + 0xa20]
call fcn.140052ef1
lea rcx, [rsp + 0xa30]
call fcn.1400530d4
mov r8, qword [rsp + 0x370]
lea r15, [rsp + 0x518]
jmp 0x14009206d
mov cx, 1
call fcn.140054af8
mov rbx, rax
mov rdx, qword [r13 + 0x90]
mov r8, qword [r13 + 0x98]
lea rsi, [rsp + 0xe0]
mov rcx, rsi
call fcn.140012760
movdqu xmm0, xmmword [r13 + 0xb4]
movups xmm1, xmmword [r13 + 0xc8]
movups xmmword [rsi + 0x40], xmm1
mov al, byte [r13 + 0xd8]
jmp 0x140095bf0
test r14, r14
je 0x140095c88
mov rcx, qword [0x14019e0f8]
xor edx, edx
mov r8, rbx
jmp 0x140095c83
mov rdx, qword [rsp + 0xe8]
mov cx, 1
call fcn.14009610c
mov rbx, rax
mov rdx, qword [r13 + 0x90]
mov r8, qword [r13 + 0x98]
lea rsi, [rsp + 0x250]
mov rcx, rsi
call fcn.140012760
movdqu xmm0, xmmword [r13 + 0xb4]
mov rax, qword [rsp + 0x1f0]
movups xmm1, xmmword [rax]
movups xmmword [rsi + 0x40], xmm1
mov al, byte [rax + 0x10]
mov byte [rsi + 0x50], al
mov eax, dword [r13 + 0xb0]
mov ecx, dword [r13 + 0xc4]
movdqu xmm1, xmmword [r13 + 0xa0]
movdqu xmmword [rsi + 0x2c], xmm0
mov dword [rsi + 0x28], eax
mov dword [rsi + 0x3c], ecx
movdqu xmmword [rsi + 0x18], xmm1
mov rcx, qword [rbx]
mov rdx, qword [rbx + 8]
call fcn.1400a0f0a
mov ecx, 0xb
mov rdi, rbx
rep movsq qword [rdi], qword [rsi]
mov rax, qword [rsp + 0x1e8]
mov qword [rax], 3
mov qword [rax + 8], rbx
jmp 0x140095e21
mov rax, qword [rsp + 0x1e8]
mov qword [rax], 4
jmp 0x140095e21
cmp rax, 1
jne 0x140095e6e
cmp qword [rsp + 0x518], 0
je 0x140095c88
mov r8, qword [rsp + 0x520]
mov rcx, qword [0x14019e0f8]
xor edx, edx
call fcn.1400fdef8
movzx ebp, word [rsp + 0xa28]
lea rdi, [rsp + 0xe0]
lea rax, [rsp + 0x9c0]
mov ecx, 0xc
mov rsi, rax
rep movsq qword [rdi], qword [rsi]
mov r15, qword [rax + 0x60]
mov r14b, byte [rax + 0x6a]
movups xmm0, xmmword [rax + 0x6b]
movaps xmmword [rsp + 0x380], xmm0
movups xmm0, xmmword [rax + 0x7b]
movaps xmmword [rsp + 0x390], xmm0
movups xmm0, xmmword [rax + 0x8b]
movaps xmmword [rsp + 0x3a0], xmm0
mov rax, qword [rax + 0x98]
mov qword [rsp + 0x3ad], rax
mov rdx, qword [r13 + 0x90]
mov r8, qword [r13 + 0x98]
lea rsi, [rsp + 0x250]
mov rcx, rsi
call fcn.140012760
movups xmm0, xmmword [r13 + 0xb4]
mov rax, qword [rsp + 0x1f0]
movups xmm1, xmmword [rax]
movups xmmword [rsi + 0x40], xmm1
mov al, byte [rax + 0x10]
mov byte [rsi + 0x50], al
mov eax, dword [r13 + 0xb0]
mov ecx, dword [r13 + 0xc4]
movups xmm1, xmmword [r13 + 0xa0]
movups xmmword [rsi + 0x2c], xmm0
mov dword [rsi + 0x28], eax
mov dword [rsi + 0x3c], ecx
movups xmmword [rsi + 0x18], xmm1
mov r12, qword [r13 + 0x128]
mov qword [r13 + 0x128], 0
mov al, byte [0x14019e160]
mov edx, 0x30
xor ecx, ecx
call fcn.1400ddfb0
test rax, rax
je 0x140096072
mov rbx, rax
movdqu xmm0, xmmword [rsp + 0x385]
movdqu xmm1, xmmword [rsp + 0x395]
movdqu xmm2, xmmword [rsp + 0x3a5]
movdqu xmmword [rax + 0x20], xmm2
movdqu xmmword [rax + 0x10], xmm1
movdqu xmmword [rax], xmm0
mov al, byte [0x14019e160]
mov edx, 0x58
xor ecx, ecx
call fcn.1400ddfb0
test rax, rax
je 0x140096081
lea rsi, [rsp + 0x250]
mov ecx, 0xb
mov rdi, rax
rep movsq qword [rdi], qword [rsi]
lea rsi, [rsp + 0xe0]
mov ecx, 0xc
mov rdx, qword [rsp + 0x1e8]
mov rdi, rdx
rep movsq qword [rdi], qword [rsi]
mov qword [rdx + 0x60], rax
mov qword [rdx + 0x68], 0
mov qword [rdx + 0x70], rbx
lea rax, str.F_t_
mov qword [rdx + 0x78], rax
mov qword [rdx + 0x80], r12
mov qword [rdx + 0x88], r15
mov word [rdx + 0x90], bp
mov byte [rdx + 0x92], r14b
movaps xmm6, xmmword [rsp + 0xb60]
movaps xmm7, xmmword [rsp + 0xb70]
movaps xmm8, xmmword [rsp + 0xb80]
movaps xmm9, xmmword [rsp + 0xb90]
movaps xmm10, xmmword [rsp + 0xba0]
add rsp, 0xbb8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov edi, 1
lea rbx, [0x1401594d8]
jmp 0x140095e7e
mov rdi, qword [rsp + 0xac0]
mov rbx, qword [rsp + 0xac8]
mov rdx, qword [r13 + 0x90]
mov r8, qword [r13 + 0x98]
lea rsi, [rsp + 0xe0]
mov rcx, rsi
call fcn.140012760
movups xmm0, xmmword [r13 + 0xb4]
mov rax, qword [rsp + 0x1f0]
movups xmm1, xmmword [rax]
movups xmmword [rsi + 0x40], xmm1
mov al, byte [rax + 0x10]
mov byte [rsi + 0x50], al
mov eax, dword [r13 + 0xb0]
mov ecx, dword [r13 + 0xc4]
movups xmm1, xmmword [r13 + 0xa0]
movups xmmword [rsi + 0x2c], xmm0
mov dword [rsi + 0x28], eax
mov dword [rsi + 0x3c], ecx
movups xmmword [rsi + 0x18], xmm1
mov cx, 2
mov rdx, rdi
mov r8, rbx
call fcn.140054b50
mov rbx, rax
mov rcx, qword [rax]
mov rdx, qword [rax + 8]
call fcn.1400a0f0a
mov ecx, 0xb
mov rdi, rbx
rep movsq qword [rdi], qword [rsi]
mov rax, qword [rsp + 0x1e8]
mov qword [rax], 3
mov qword [rax + 8], rbx
cmp qword [rsp + 0x518], 0
je 0x140095f3a
mov r8, qword [rsp + 0x520]
mov rcx, qword [0x14019e0f8]
xor edx, edx
call fcn.1400fdef8
lea rsi, [rsp + 0x9c0]
mov rcx, rsi
call fcn.140052f4a
mov rcx, qword [rsi + 0x60]
call fcn.140052ef1
lea rcx, [rsp + 0xa30]
call fcn.1400530d4
jmp 0x140095e21
lea rcx, [0x140163c1f]
lea r8, [0x140163c40]
mov edx, 0x1e
call fcn.14001e680
lea rax, str._root_.cargo_registry_src_index.crates.io_6f17d22bba15001f_url_2.5.0_src_lib.rs
mov qword [rsp + 0x20], rax
mov r9, rdx
call fcn.14001f890
lea rsi, [rsp + 0xe0]
mov rcx, rsi
call fcn.140052e72
mov byte [rsi], bpl
mov byte [rsi + 1], dil
lea rax, [0x14015e320]
mov qword [rsp + 0x20], rax
lea rcx, str.valid_request_parts
lea r9, [0x14015ad98]
lea r8, [rsp + 0xe0]
mov edx, 0x13
call fcn.14001cff0
lea r8, [rsp + 0xe0]
mov qword [r8], rdi
mov qword [r8 + 8], rsi
lea rax, [0x14015e338]
mov qword [rsp + 0x20], rax
lea rcx, str.called__Result::unwrap____on_an__Err__value
lea r9, [0x14015ae98]
jmp 0x140096051
lea rax, str._root_.cargo_registry_src_index.crates.io_6f17d22bba15001f_url_2.5.0_src_lib.rs
mov qword [rsp + 0x20], rax
mov rcx, rbx
mov rdx, r15
xor r8d, r8d
call fcn.14001f890
lea r8, [rsp + 0xe0]
mov rax, qword [rsp + 0x360]
mov qword [r8], rax
mov eax, dword [rsp + 0xdc]
mov byte [r8 + 8], al
lea rax, [0x14015e248]
mov qword [rsp + 0x20], rax
lea rcx, str.called__Result::unwrap____on_an__Err__value
lea r9, [0x14015ae78]
mov edx, 0x2b
call fcn.14001cff0
lea rax, str._root_.cargo_registry_src_index.crates.io_6f17d22bba15001f_url_2.5.0_src_lib.rs
mov qword [rsp + 0x20], rax
mov rcx, rdx
mov rdx, r9
call fcn.14001f890
mov ecx, 8
mov edx, 0x30
call fcn.140011cc0
mov ecx, 8
mov edx, 0x58
call fcn.140011cc0
lea rcx, str.assertion_failed:_self.is_char_boundary_new_len_
lea r8, [0x14018c500]
mov edx, 0x30
call fcn.14001b470
lea rax, str._root_.cargo_registry_src_index.crates.io_6f17d22bba15001f_cookie_store_0.12.0_src_cookie_path.rs
jmp 0x1400960c9
lea rax, str._root_.cargo_registry_src_index.crates.io_6f17d22bba15001f_url_2.5.0_src_lib.rs
mov qword [rsp + 0x20], rax
jmp 0x140096011
lea rax, str._root_.cargo_registry_src_index.crates.io_6f17d22bba15001f_url_2.5.0_src_lib.rs
mov qword [rsp + 0x20], rax
mov rcx, rbx
mov rdx, rdi
xor r8d, r8d
mov r9, rsi
call fcn.14001f890
lea rax, [0x140166850]
mov qword [rsp + 0x20], rax
lea rcx, [0x1401667b9]
lea r9, [0x140107788]
lea r8, [rsp + 0xe0]
mov edx, 0x46
call fcn.14001cff0
int3