Function at 0x14009de00
Capabilities:
Encode data using xor
Hash data using fnv
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, 0x738
movdqa xmmword [rsp + 0x720], xmm10
movdqa xmmword [rsp + 0x710], xmm9
movdqa xmmword [rsp + 0x700], xmm8
movaps xmmword [rsp + 0x6f0], xmm7
movaps xmmword [rsp + 0x6e0], xmm6
mov rdi, r8
mov rbp, rdx
mov qword [rsp + 0x60], rcx
mov rcx, qword [rdx + 0x140]
test rcx, rcx
je 0x14009de68
mov rdx, rdi
call fcn.14012ba30
test al, al
je 0x1400a0b7e
mov rcx, qword [rbp + 0x148]
test rcx, rcx
je 0x14009de84
mov rdx, rdi
call fcn.14012ba30
test al, al
je 0x1400a0bfb
lea rax, [rbp + 0x20]
mov qword [rsp + 0x260], rax
lea rax, [rbp + 0x88]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0x108]
mov qword [rsp + 0x1b0], rax
lea rax, [rbp + 0x109]
mov qword [rsp + 0x3c8], rax
lea r15, [rsp + 0x3ea]
lea rax, [rbp + 0x28]
mov qword [rsp + 0x40], rax
xorps xmm6, xmm6
movaps xmm7, xmmword [0x140146620]
movdqa xmm8, xmmword [str.uespemosarenegylmodnarodsetybdet]
movdqa xmm9, xmmword [0x140146640]
lea rax, [rbp + 0xc8]
mov qword [rsp + 0x78], rax
lea rax, [rbp + 0xe0]
mov qword [rsp + 0x4c8], rax
lea rax, [rbp + 0x50]
mov qword [rsp + 0x4d8], rax
lea r12, [rsp + 0x80]
lea r13, [rsp + 0x3e0]
mov qword [rsp + 0x38], rbp
mov qword [rsp + 0x1f8], rdi
mov rdx, qword [rbp + 0x128]
mov rax, qword [rbp + 0x130]
lea rcx, [rsp + 0x2f0]
mov r8, rdi
call qword [rax + 0x18]
mov rax, qword [rsp + 0x2f0]
cmp rax, 3
je 0x14009e1e0
cmp eax, 4
je 0x1400a0e28
movzx eax, byte [0x1401aa178]
mov edx, 0x28
xor ecx, ecx
call fcn.14011ab20
test rax, rax
je 0x1400a177b
mov rsi, rax
lea rcx, [rsp + 0x2f8]
mov rax, qword [rcx + 0x88]
mov qword [rsi + 0x20], rax
movups xmm0, xmmword [rcx + 0x68]
movups xmm1, xmmword [rcx + 0x78]
movups xmmword [rsi + 0x10], xmm1
movups xmmword [rsi], xmm0
movups xmm0, xmmword [rsp + 0x350]
movaps xmmword [rsp + 0x640], xmm0
movups xmm0, xmmword [rsp + 0x340]
movaps xmmword [rsp + 0x630], xmm0
movups xmm0, xmmword [rsp + 0x330]
movaps xmmword [rsp + 0x620], xmm0
movdqu xmm0, xmmword [rsp + 0x2f0]
movdqu xmm1, xmmword [rsp + 0x300]
movups xmm2, xmmword [rsp + 0x310]
movups xmm3, xmmword [rsp + 0x320]
movaps xmmword [rsp + 0x610], xmm3
movaps xmmword [rsp + 0x600], xmm2
movdqa xmmword [rsp + 0x5f0], xmm1
movdqa xmmword [rsp + 0x5e0], xmm0
mov qword [rsp + 0x650], rsi
lea rax, [0x140184ae0]
mov qword [rsp + 0x658], rax
movzx edi, word [rsp + 0x648]
movzx eax, di
lea ecx, [rax - 0x12d]
cmp ecx, 3
mov qword [rsp + 0x28], rsi
jae 0x14009e9c3
cmp qword [rbp], 0
je 0x14009e070
mov rax, qword [rbp + 8]
test rax, rax
je 0x14009e070
mov rdx, qword [rbp + 0x10]
mov r8, qword [rbp + 0x18]
mov rcx, qword [rsp + 0x260]
call qword [rax + 0x20]
mov qword [rbp], 0
mov rcx, r12
mov rdx, qword [rsp + 0x40]
lea r8, [0x1401842f8]
call fcn.140096da0
cmp byte [rsp + 0xa0], 2
je 0x14009e0b9
mov rax, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x88]
mov r8, qword [rsp + 0x90]
lea rcx, [rsp + 0x98]
call qword [rax + 0x20]
mov rcx, r12
mov rdx, qword [rsp + 0x40]
lea r8, [0x140184318]
call fcn.140096da0
cmp byte [rsp + 0xa0], 2
je 0x14009e0fa
mov rax, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x88]
mov r8, qword [rsp + 0x90]
lea rcx, [rsp + 0x98]
call qword [rax + 0x20]
mov rcx, r12
mov rdx, qword [rsp + 0x40]
lea r8, [0x140184338]
call fcn.140096da0
cmp byte [rsp + 0xa0], 2
je 0x14009e13b
mov rax, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x88]
mov r8, qword [rsp + 0x90]
lea rcx, [rsp + 0x98]
call qword [rax + 0x20]
mov rcx, r12
mov rdx, qword [rsp + 0x40]
lea r8, [0x140184358]
call fcn.140096da0
cmp byte [rsp + 0xa0], 2
je 0x14009e17c
mov rax, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x88]
mov r8, qword [rsp + 0x90]
lea rcx, [rsp + 0x98]
call qword [rax + 0x20]
mov rax, qword [rsp + 0x1b0]
movzx eax, byte [rax]
mov ecx, eax
or ecx, 4
cmp ecx, 5
je 0x14009e9f0
cmp al, 0xa
jb 0x14009e1bc
cmp qword [rbp + 0x118], 0
je 0x14009e1bc
mov rsi, qword [rbp + 0x110]
call sub.kernel32.dll_GetProcessHeap
mov rcx, rax
xor edx, edx
mov r8, rsi
call sub.kernel32.dll_HeapFree
mov rax, qword [rsp + 0x1b0]
movabs rcx, 0x101010101010101
mov qword [rax + 0x10], rcx
movups xmmword [rax], xmm7
jmp 0x14009e9f0
lea rcx, [rsp + 0x2f8]
mov rax, qword [rcx + 0x30]
mov qword [rsp + 0x230], rax
movups xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
movups xmm2, xmmword [rcx + 0x20]
movaps xmmword [rsp + 0x220], xmm2
movaps xmmword [rsp + 0x210], xmm1
movaps xmmword [rsp + 0x200], xmm0
mov rcx, qword [rsp + 0x200]
test rcx, rcx
je 0x1400a150b
mov rax, qword [rsp + 0x208]
call qword [rax + 0x30]
test rax, rax
je 0x1400a150b
mov rsi, rax
mov rcx, rax
call qword [rdx + 0x38]
movabs rcx, 0x20623b41ad122313
cmp rax, rcx
jne 0x1400a150b
movabs rax, 0x59a0f4260de1d65f
cmp rdx, rax
jne 0x1400a150b
movzx eax, byte [rsi]
test eax, eax
je 0x14009e290
cmp eax, 1
jne 0x1400a150b
cmp byte [rsi + 1], 2
jne 0x1400a150b
xor eax, eax
mov ecx, 4
jmp 0x14009e2a4
cmp byte [rsi + 1], 2
jne 0x1400a150b
mov eax, 7
mov ecx, 8
cmp dword [rsi + rcx], eax
jne 0x1400a150b
test byte [rbp], 1
je 0x14009e2e0
mov rax, qword [rbp + 8]
test rax, rax
je 0x1400a150b
mov r8, qword [rbp + 0x10]
mov r9, qword [rbp + 0x18]
lea rcx, [rsp + 0x190]
mov rdx, qword [rsp + 0x260]
call qword [rax]
jmp 0x14009e306
lea rax, [0x140183e88]
mov qword [rsp + 0x190], rax
mov qword [rsp + 0x198], 1
lea rax, [rsp + 0x1a0]
movups xmmword [rax], xmm6
mov rax, qword [rbp + 0x138]
cmp rax, 1
ja 0x1400a0e48
inc rax
mov qword [rbp + 0x138], rax
mov rcx, r12
mov rdx, qword [rsp + 0x30]
call fcn.1400af040
cmp byte [rsp + 0x80], 3
je 0x1400a1812
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x2c0], rax
movups xmm0, xmmword [rsp + 0xc0]
movaps xmmword [rsp + 0x2b0], xmm0
movups xmm0, xmmword [rsp + 0x80]
movups xmm1, xmmword [rsp + 0x90]
movups xmm2, xmmword [rsp + 0xa0]
movups xmm3, xmmword [rsp + 0xb0]
movaps xmmword [rsp + 0x2a0], xmm3
movaps xmmword [rsp + 0x290], xmm2
movaps xmmword [rsp + 0x280], xmm1
movaps xmmword [rsp + 0x270], xmm0
mov rax, qword [rsp + 0x1b0]
movzx esi, byte [rax]
cmp esi, 9
jae 0x14009ebde
mov rcx, qword [rsp + 0x2e0]
mov r8, qword [rsp + 0x2e6]
mov qword [rsp + 0x2d0], rcx
mov qword [rsp + 0x2d6], r8
movaps xmmword [rsp + 0x1e0], xmm6
mov ecx, dword [rsp + 0x1da]
mov dword [rsp + 0x50], ecx
movzx ecx, word [rsp + 0x1de]
mov word [rsp + 0x54], cx
mov rcx, qword [rsp + 0x390]
mov r8, qword [rsp + 0x397]
mov qword [rsp + 0x3a0], rcx
mov qword [rsp + 0x3a7], r8
movaps xmmword [rsp + 0x3b0], xmm6
mov ecx, dword [rsp + 0x3da]
mov dword [rsp + 0x188], ecx
movzx ecx, word [rsp + 0x3de]
mov word [rsp + 0x18c], cx
mov ecx, dword [rsp + 0x1c0]
mov r8d, dword [rsp + 0x1c3]
mov dword [rsp + 0x73], r8d
mov dword [rsp + 0x70], ecx
mov ecx, dword [rsp + 0x1b8]
mov r8d, dword [rsp + 0x1bb]
mov dword [rsp + 0x6b], r8d
mov dword [rsp + 0x68], ecx
mov qword [rsp + 0x80], 0
mov rcx, qword [rsp + 0x2d0]
mov r8, qword [rsp + 0x2d6]
lea r9, [rsp + 0x8a]
mov qword [r9 + 6], r8
mov qword [r9], rcx
mov qword [rsp + 0x98], 0
mov qword [rsp + 0xa0], 8
movaps xmm0, xmmword [rsp + 0x1e0]
movups xmmword [r9 + 0x1e], xmm0
mov qword [rsp + 0xb8], 8
mov qword [rsp + 0xc0], 0
mov qword [rsp + 0xc8], 2
mov qword [rsp + 0xd0], 0
mov word [rsp + 0xd8], 0
movzx ecx, word [rsp + 0x54]
mov word [r9 + 0x54], cx
mov ecx, dword [rsp + 0x50]
mov dword [r9 + 0x50], ecx
mov byte [rsp + 0xe0], 0
mov rcx, qword [rsp + 0x3a0]
mov r8, qword [rsp + 0x3a7]
mov qword [r9 + 0x5e], r8
mov qword [r9 + 0x57], rcx
lea rcx, [0x140160130]
mov qword [rsp + 0xf0], rcx
mov qword [rsp + 0xf8], 1
movaps xmm0, xmmword [rsp + 0x3b0]
movups xmmword [r9 + 0x76], xmm0
mov qword [rsp + 0x110], rcx
lea rcx, [0x140194e90]
mov qword [rsp + 0x118], rcx
mov qword [rsp + 0x120], 1
mov qword [rsp + 0x128], 0
mov word [rsp + 0x130], 0xffff
movzx ecx, word [rsp + 0x18c]
mov word [r9 + 0xac], cx
mov ecx, dword [rsp + 0x188]
mov dword [r9 + 0xa8], ecx
mov byte [rsp + 0x138], sil
mov ecx, dword [rsp + 0x70]
mov r8d, dword [rsp + 0x73]
mov dword [r9 + 0xb2], r8d
mov dword [r9 + 0xaf], ecx
mov qword [rsp + 0x140], rax
mov qword [rsp + 0x148], rdx
mov qword [rsp + 0x150], 0
mov byte [rsp + 0x158], 2
mov eax, dword [rsp + 0x68]
mov ecx, dword [rsp + 0x6b]
mov dword [r9 + 0xd2], ecx
mov dword [r9 + 0xcf], eax
mov rcx, r13
mov rdx, r12
lea r8, [rsp + 0x270]
call fcn.1400a1a30
movups xmm0, xmmword [rsp + 0x190]
movups xmm1, xmmword [rsp + 0x1a0]
movaps xmmword [rsp + 0x90], xmm1
movaps xmmword [rsp + 0x80], xmm0
cmp qword [rsp + 0x3e0], 3
je 0x1400a17b8
mov rax, qword [r15]
mov rcx, qword [r15 + 6]
mov qword [rsp + 0x1e6], rcx
mov qword [rsp + 0x1e0], rax
mov rax, qword [rsp + 0x3f8]
mov qword [rsp + 0x268], rax
mov rax, qword [rsp + 0x400]
mov qword [rsp + 0x1d0], rax
mov r14, qword [rsp + 0x408]
mov rax, qword [rsp + 0x410]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x418]
mov qword [rsp + 0x48], rax
mov rbp, qword [rsp + 0x420]
mov rax, qword [rsp + 0x428]
mov qword [rsp + 0x1c8], rax
mov r15, qword [rsp + 0x430]
mov r8d, 0x88
lea rcx, [rsp + 0x530]
lea rdx, [rsp + 0x438]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
movdqu xmm0, xmmword [rsp + 0x190]
movdqu xmm1, xmmword [rsp + 0x1a0]
lea rax, [rsp + 0x5b8]
movdqu xmmword [rax], xmm0
movdqu xmmword [rax + 0x10], xmm1
mov rbx, qword [rsp + 0x38]
movzx edi, word [rbx + 0x80]
mov rcx, qword [rbx + 0x70]
mov rdx, qword [rbx + 0x78]
call fcn.14009bfe0
mov r12, rax
mov r13, rdx
mov rdx, qword [rbx + 0x48]
mov r8, qword [rbx + 0x50]
lea rcx, [rsp + 0x98]
call fcn.14008aae0
mov rdx, qword [rbx + 0x60]
mov r8, qword [rbx + 0x68]
lea rcx, [rsp + 0xb0]
call fcn.14008a7f0
mov rcx, qword [rbx + 0x28]
mov rsi, qword [rbx + 0x30]
mov word [rsp + 0xd8], di
mov rdi, r12
mov rax, qword [rbx + 0x38]
mov qword [rsp + 0xc8], r12
mov qword [rsp + 0xd0], r13
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x80], rcx
mov qword [rsp + 0x88], rsi
mov qword [rsp + 0x90], rax
test r15, r15
je 0x14009e79c
call sub.kernel32.dll_GetProcessHeap
mov rcx, rax
xor edx, edx
mov r8, qword [rsp + 0x1c8]
call sub.kernel32.dll_HeapFree
test r14, r14
mov rbx, qword [rsp + 0x48]
mov r15, qword [rsp + 0x1d0]
je 0x14009e800
lea r12, [r15 + 0x30]
jmp 0x14009e7de
mov rax, qword [r12 - 0x18]
mov rdx, qword [r12 - 0x10]
mov r8, qword [r12 - 8]
mov rcx, r12
call qword [rax + 0x20]
add r12, 0x68
dec r14
je 0x14009e800
mov rax, qword [r12 + 0x10]
test rax, rax
je 0x14009e7c0
lea rcx, [r12 + 0x28]
mov rdx, qword [r12 + 0x18]
mov r8, qword [r12 + 0x20]
call qword [rax + 0x20]
jmp 0x14009e7c0
cmp qword [rsp + 0x268], 0
je 0x14009e81d
call sub.kernel32.dll_GetProcessHeap
mov rcx, rax
xor edx, edx
mov r8, r15
call sub.kernel32.dll_HeapFree
test rbp, rbp
lea r12, [rsp + 0x80]
je 0x14009e84b
lea r15, [rbx + 0x38]
nop
mov rax, qword [r15 - 0x18]
mov rdx, qword [r15 - 0x10]
mov r8, qword [r15 - 8]
mov rcx, r15
call qword [rax + 0x20]
add r15, 0x48
dec rbp
jne 0x14009e830
cmp qword [rsp + 0x28], 0
je 0x14009e865
call sub.kernel32.dll_GetProcessHeap
mov rcx, rax
xor edx, edx
mov r8, rbx
call sub.kernel32.dll_HeapFree
mov eax, esi
shr eax, 8
lea r8, [rsp + 0x8a]
mov rcx, qword [r8]
mov rdx, qword [r8 + 6]
mov qword [rsp + 0x1e6], rdx
mov qword [rsp + 0x1e0], rcx
movdqu xmm0, xmmword [rsp + 0x98]
movdqu xmm1, xmmword [rsp + 0xa8]
movups xmm2, xmmword [rsp + 0xb8]
mov rcx, qword [rsp + 0xd8]
mov qword [rsp + 0x530], rcx
mov rbp, qword [rsp + 0x38]
mov r14, qword [rbp + 0x120]
add r14, 0x10
mov rcx, qword [rsp + 0x58]
mov qword [rsp + 0x80], rcx
mov byte [rsp + 0x88], sil
mov byte [rsp + 0x89], al
mov rax, qword [rsp + 0x1e0]
mov rcx, qword [rsp + 0x1e6]
mov qword [r8 + 6], rcx
mov qword [r8], rax
movdqu xmmword [rsp + 0x98], xmm0
movdqu xmmword [rsp + 0xa8], xmm1
movups xmmword [rsp + 0xb8], xmm2
mov qword [rsp + 0xc8], rdi
mov qword [rsp + 0xd0], r13
mov r8d, 0xa8
lea rcx, [rsp + 0xd8]
lea rdx, [rsp + 0x530]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov rcx, r14
mov rdx, r12
call fcn.140079de0
mov rsi, rax
mov rbx, rdx
mov r14, qword [rbp + 0x128]
mov rdi, qword [rbp + 0x130]
mov rax, qword [rdi]
test rax, rax
lea r15, [rsp + 0x3ea]
je 0x14009e96f
mov rcx, r14
call rax
cmp qword [rdi + 8], 0
lea r13, [rsp + 0x3e0]
je 0x14009e99b
cmp qword [rdi + 0x10], 0x11
jb 0x14009e989
mov r14, qword [r14 - 8]
call sub.kernel32.dll_GetProcessHeap
mov rcx, rax
xor edx, edx
mov r8, r14
call sub.kernel32.dll_HeapFree
mov qword [rbp + 0x128], rsi
mov qword [rbp + 0x130], rbx
lea rcx, [rsp + 0x200]
call fcn.140079d30
mov rdi, qword [rsp + 0x1f8]
jmp 0x14009df2b
add eax, 0xfffffecd
cmp eax, 2
jae 0x1400a0ea8
cmp dword [rbp], 1
jne 0x14009e9f0
cmp qword [rbp + 8], 0
je 0x1400a0ea8
nop word cs:[rax + rax]
movups xmm0, xmmword [0x140184388]
movaps xmmword [rsp + 0x90], xmm0
movdqu xmm0, xmmword [0x140184378]
movdqa xmmword [rsp + 0x80], xmm0
lea rcx, [rsp + 0x5e0]
mov rdx, r12
call fcn.140096a00
mov rsi, rax
mov rax, qword [rsp + 0x80]
test rax, rax
je 0x14009ea4b
mov rdx, qword [rsp + 0x88]
mov r8, qword [rsp + 0x90]
lea rcx, [rsp + 0x98]
call qword [rax + 0x20]
test rsi, rsi
je 0x1400a0ea8
mov rdx, qword [rsi + 8]
mov r8, qword [rsi + 0x10]
mov rcx, r13
call fcn.14000b510
cmp dword [rsp + 0x3e0], 1
je 0x1400a0ea8
mov r8, qword [rsp + 0x3e8]
mov r9, qword [rsp + 0x3f0]
mov qword [rsp + 0x3e0], 0
mov qword [rsp + 0x3f0], 0
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x400], rax
mov rcx, r12
mov rdx, r13
call fcn.14012f9d0
mov rsi, qword [rsp + 0x80]
movabs rax, 0x8000000000000000
cmp rsi, rax
je 0x1400a0ea8
lea rax, [rsp + 0x8a]
movups xmm0, xmmword [rax + 0x3e]
movups xmmword [r15 + 0x3e], xmm0
movdqu xmm0, xmmword [rax - 2]
movdqu xmm1, xmmword [rax + 0xe]
movups xmm2, xmmword [rax + 0x1e]
movups xmm3, xmmword [rax + 0x2e]
movups xmmword [r15 + 0x2e], xmm3
movups xmmword [r15 + 0x1e], xmm2
movdqu xmmword [r15 + 0xe], xmm1
movdqu xmmword [r15 - 2], xmm0
mov qword [rsp + 0x3e0], rsi
mov rcx, r12
mov rdx, r13
call fcn.1400af040
movzx ebx, byte [rsp + 0x80]
mov rcx, r12
call fcn.1400a1c50
cmp bl, 3
je 0x1400a0e39
movdqu xmm0, xmmword [r15 + 0x3e]
movdqa xmmword [rsp + 0x570], xmm0
movdqu xmm1, xmmword [r15 - 2]
movups xmm2, xmmword [r15 + 0xe]
movups xmm3, xmmword [r15 + 0x1e]
movups xmm4, xmmword [r15 + 0x2e]
movaps xmmword [rsp + 0x560], xmm4
movaps xmmword [rsp + 0x550], xmm3
movaps xmmword [rsp + 0x540], xmm2
movdqa xmmword [rsp + 0x530], xmm1
lea rax, [rsp + 0x208]
movdqu xmmword [rax + 0x40], xmm0
movups xmmword [rax + 0x30], xmm4
movups xmmword [rax + 0x20], xmm3
movups xmmword [rax + 0x10], xmm2
movdqu xmmword [rax], xmm1
mov qword [rsp + 0x200], rsi
mov rax, qword [rbp + 0x120]
cmp byte [rax + 0x228], 0
je 0x14009f020
mov r9d, dword [rsp + 0x22c]
test r9, r9
je 0x14009ec35
mov rcx, qword [rsp + 0x208]
mov rdx, qword [rsp + 0x210]
cmp rdx, r9
jbe 0x14009ec12
cmp byte [rcx + r9], 0xbf
jg 0x14009ec18
jmp 0x1400a193a
jne 0x14009f7b2
mov rcx, qword [rsp + 0x3c8]
mov eax, dword [rcx]
mov ecx, dword [rcx + 3]
mov dword [rsp + 0x1c3], ecx
mov dword [rsp + 0x1c0], eax
mov rax, qword [rbp + 0x110]
movzx edx, byte [rbp + 0x118]
jmp 0x14009e3b0
jne 0x1400a193a
cmp r9d, 4
jne 0x14009ec35
lea rdx, str.httphttpswswssftpfileC:UsersUser.cargo_registry_srcindex.crates.io_6f17d22bba15001furl_2.5.4_srcparser.rs
mov r8, r9
call sub.api_ms_win_crt_private_l1_1_0.dll_memcmp
test eax, eax
je 0x14009f853
mov rsi, qword [rbp + 0x98]
test rsi, rsi
js 0x1400a1752
mov rbx, qword [rbp + 0x90]
je 0x14009ec6d
movzx eax, byte [0x1401aa178]
xor ecx, ecx
mov rdx, rsi
call fcn.14011ab20
test rax, rax
je 0x1400a178a
mov r14, rax
jmp 0x14009ec73
mov r14d, 1
mov rcx, r14
mov rdx, rbx
mov r8, rsi
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov qword [rsp + 0x80], rsi
mov qword [rsp + 0x88], r14
mov qword [rsp + 0x90], rsi
mov rax, qword [rsp + 0x78]
movups xmm0, xmmword [rax]
lea rcx, [rsp + 0x8a]
movups xmmword [rcx + 0x36], xmm0
movzx eax, byte [rax + 0x10]
mov byte [rcx + 0x46], al
mov eax, dword [rbp + 0xb0]
mov ecx, dword [rbp + 0xc4]
movdqu xmm0, xmmword [rbp + 0xa0]
movdqu xmm1, xmmword [rbp + 0xb4]
movdqu xmmword [rsp + 0xac], xmm1
mov dword [rsp + 0xa8], eax
mov dword [rsp + 0xbc], ecx
movdqu xmmword [rsp + 0x98], xmm0
mov rcx, r12
call fcn.140131180
mov rcx, r12
call fcn.140130fb0
mov rax, qword [rsp + 0x90]
cmp dword [rsp + 0xa0], 1
jne 0x14009ed1f
mov r9d, dword [rsp + 0xa4]
cmp rax, r9
jae 0x14009ed24
mov r9, rax
jmp 0x14009ed4f
test r9, r9
setne cl
cmp rax, r9
seta al
test cl, al
je 0x14009ed47
mov rax, qword [rsp + 0x88]
cmp byte [rax + r9], 0xbf
jle 0x1400a173a
mov qword [rsp + 0x90], r9
mov dword [rsp + 0xa0], 0
mov r8d, dword [rsp + 0xac]
mov rdx, qword [rsp + 0x88]
inc r8d
je 0x14009ed86
cmp r9, r8
jbe 0x14009ed80
cmp byte [rdx + r8], 0xbf
jg 0x14009ed86
jmp 0x1400a1989
jne 0x1400a1989
cmp r9, r8
je 0x14009ed96
cmp byte [rdx + r8], 0x2f
je 0x14009ee70
test byte [rsp + 0x98], 1
jne 0x14009ee70
mov rcx, r9
test r9, r9
je 0x14009ee55
lea rcx, [rdx + r9]
xor eax, eax
nop word cs:[rax + rax]
movsx r8d, byte [rcx - 1]
test r8d, r8d
js 0x14009edd0
dec rcx
jmp 0x14009ee2e
movzx r10d, byte [rcx - 2]
cmp r10b, 0xc0
jge 0x14009edfd
movzx r11d, byte [rcx - 3]
cmp r11b, 0xbf
jg 0x14009ee07
movzx esi, byte [rcx - 4]
add rcx, 0xfffffffffffffffc
and esi, 7
shl esi, 6
and r11d, 0x3f
or r11d, esi
jmp 0x14009ee0f
add rcx, 0xfffffffffffffffe
and r10d, 0x1f
jmp 0x14009ee1a
add rcx, 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 0x14009ee3c
cmp r8d, 0x20
jne 0x14009ee3c
inc rax
cmp rdx, rcx
jne 0x14009edc0
mov rcx, r9
sub rcx, rax
jb 0x14009ee70
je 0x14009ee55
cmp r9, rcx
jbe 0x14009ee55
cmp byte [rdx + rcx], 0xbf
jle 0x1400a173a
cmp r9, rcx
jb 0x14009ee70
mov qword [rsp + 0x90], rcx
mov r9, rcx
nop word cs:[rax + rax]
test r9, r9
je 0x14009eec4
xor eax, eax
jmp 0x14009ee8d
cmp cl, 0x7f
je 0x14009ee9b
inc rax
cmp r9, rax
je 0x14009eec7
movzx ecx, byte [rdx + rax]
cmp cl, 0x1f
ja 0x14009ee80
cmp cl, 9
je 0x14009ee85
cmp qword [rsp + 0x80], 0
je 0x14009f020
mov rsi, rdx
call sub.kernel32.dll_GetProcessHeap
mov rcx, rax
xor edx, edx
mov r8, rsi
call sub.kernel32.dll_HeapFree
jmp 0x14009f020
xor r9d, r9d
mov rcx, r13
mov r8, r9
call fcn.140008890
mov byte [rsp + 0x400], 0
movups xmm0, xmmword [rsp + 0x3e0]
movups xmm1, xmmword [rsp + 0x3f0]
movaps xmmword [rsp + 0x2f0], xmm0
movaps xmmword [rsp + 0x300], xmm1
mov eax, dword [r15 + 0x17]
mov ecx, dword [r15 + 0x1a]
mov dword [rsp + 0x270], eax
mov dword [rsp + 0x273], ecx
cmp qword [rsp + 0x80], 0
je 0x14009ef35
mov rsi, qword [rsp + 0x88]
call sub.kernel32.dll_GetProcessHeap
mov rcx, rax
xor edx, edx
mov r8, rsi
call sub.kernel32.dll_HeapFree
movaps xmm0, xmmword [rsp + 0x2f0]
movaps xmm1, xmmword [rsp + 0x300]
movaps xmmword [rsp + 0x660], xmm0
movaps xmmword [rsp + 0x670], xmm1
mov byte [rsp + 0x680], 0
mov eax, dword [rsp + 0x270]
mov ecx, dword [rsp + 0x273]
lea rdx, [rsp + 0x681]
mov dword [rdx + 3], ecx
mov dword [rdx], eax
movups xmm0, xmmword [0x1401843a8]
movaps xmmword [rsp + 0x540], xmm0
movups xmm0, xmmword [0x140184398]
movaps xmmword [rsp + 0x530], xmm0
mov rcx, r12
mov rdx, qword [rsp + 0x40]
lea r8, [rsp + 0x530]
lea r9, [rsp + 0x660]
call fcn.1400a1d70
cmp byte [rsp + 0xa0], 3
je 0x1400a194e
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x400], rax
movdqu xmm0, xmmword [rsp + 0x80]
movdqu xmm1, xmmword [rsp + 0x90]
movdqa xmmword [rsp + 0x3f0], xmm1
movdqa xmmword [rsp + 0x3e0], xmm0
cmp al, 2
je 0x14009f020
mov rax, qword [rsp + 0x3e0]
mov rdx, qword [rsp + 0x3e8]
mov r8, qword [rsp + 0x3f0]
lea rcx, [rsp + 0x3f8]
call qword [rax + 0x20]
nop dword [rax]
mov rsi, qword [rbp + 0x98]
test rsi, rsi
js 0x1400a1752
mov r14, qword [rbp + 0x90]
mov word [rsp + 0x48], di
je 0x14009f05d
movzx eax, byte [0x1401aa178]
xor ecx, ecx
mov rdx, rsi
call fcn.14011ab20
test rax, rax
je 0x1400a178a
mov rbx, rax
jmp 0x14009f062
mov ebx, 1
mov rcx, rbx
mov rdx, r14
mov r8, rsi
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
movdqu xmm10, xmmword [rbp + 0xb4]
mov rcx, qword [rsp + 0x78]
movzx eax, byte [rcx + 0x10]
mov byte [rsp + 0x520], al
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0x510], xmm0
movzx r10d, word [rbp + 0xb0]
movzx r12d, word [rbp + 0xb2]
mov r8d, dword [rbp + 0xc4]
mov r13d, dword [rbp + 0xa0]
mov edi, dword [rbp + 0xa4]
mov r15d, dword [rbp + 0xa8]
mov rax, rbp
mov ebp, dword [rbp + 0xac]
mov r14, qword [rax + 0xf0]
cmp r14, qword [rax + 0xe0]
jne 0x14009f101
mov rcx, qword [rsp + 0x4c8]
mov dword [rsp + 0x58], r8d
mov word [rsp + 0x1d0], r10w
call fcn.140097ca0
movzx r10d, word [rsp + 0x1d0]
mov r8d, dword [rsp + 0x58]
mov rdx, qword [rsp + 0x38]
mov rax, qword [rdx + 0xe8]
imul rcx, r14, 0x58
mov qword [rax + rcx], rsi
mov qword [rax + rcx + 8], rbx
mov qword [rax + rcx + 0x10], rsi
mov dword [rax + rcx + 0x18], r13d
mov dword [rax + rcx + 0x1c], edi
mov dword [rax + rcx + 0x20], r15d
mov dword [rax + rcx + 0x24], ebp
mov rbp, rdx
mov word [rax + rcx + 0x28], r10w
mov word [rax + rcx + 0x2a], r12w
movdqu xmmword [rax + rcx + 0x2c], xmm10
mov dword [rax + rcx + 0x3c], r8d
movzx edx, byte [rsp + 0x520]
mov byte [rax + rcx + 0x50], dl
movdqa xmm0, xmmword [rsp + 0x510]
movdqu xmmword [rax + rcx + 0x40], xmm0
inc r14
mov qword [rbp + 0xf0], r14
mov rax, qword [rbp + 0x120]
mov rcx, qword [rax + 0x1e8]
test rcx, rcx
je 0x14009f1b0
cmp ecx, 1
lea r12, [rsp + 0x80]
lea r13, [rsp + 0x3e0]
jne 0x1400a0e83
cmp qword [rax + 0x1f0], r14
ja 0x14009f21c
jmp 0x1400a1360
mov rcx, qword [rbp + 0xe8]
lea rdx, [rsp + 0x200]
mov qword [rsp + 0x80], rdx
mov qword [rsp + 0x88], rcx
mov qword [rsp + 0x90], r14
movzx ecx, word [rsp + 0x48]
mov word [rsp + 0x98], cx
mov rdx, qword [rax + 0x1f0]
mov rax, qword [rax + 0x1f8]
lea r13, [rsp + 0x3e0]
mov rcx, r13
lea r12, [rsp + 0x80]
mov r8, r12
call qword [rax + 0x28]
mov rax, qword [rsp + 0x3e0]
test rax, rax
jne 0x1400a0e79
mov esi, dword [rsp + 0x22c]
test rsi, rsi
je 0x1400a0d33
mov r14, qword [rsp + 0x208]
mov rbx, qword [rsp + 0x210]
cmp rbx, rsi
jbe 0x14009f24d
cmp byte [r14 + rsi], 0xbf
jg 0x14009f253
jmp 0x1400a175e
jne 0x1400a175e
cmp esi, 4
jne 0x14009f26e
mov rcx, r14
lea rdx, str.httphttpswswssftpfileC:UsersUser.cargo_registry_srcindex.crates.io_6f17d22bba15001furl_2.5.4_srcparser.rs
mov r8, rsi
call sub.api_ms_win_crt_private_l1_1_0.dll_memcmp
test eax, eax
je 0x14009f2a8
cmp rbx, rsi
jbe 0x14009f27f
cmp byte [r14 + rsi], 0xbf
jg 0x14009f285
jmp 0x1400a175e
jne 0x1400a175e
cmp esi, 5
jne 0x1400a0d33
mov rcx, r14
lea rdx, [0x140194b0c]
mov r8, rsi
call sub.api_ms_win_crt_private_l1_1_0.dll_memcmp
test eax, eax
jne 0x1400a0d33
mov rax, qword [rbp + 0x120]
cmp byte [rax + 0x22a], 0
je 0x14009f2f2
cmp rbx, rsi
jbe 0x14009f2c9
cmp byte [r14 + rsi], 0xbf
jg 0x14009f2cf
jmp 0x1400a175e
jne 0x1400a175e
cmp esi, 5
jne 0x1400a119e
mov rcx, r14
lea rdx, [0x140194b0c]
mov r8, rsi
call sub.api_ms_win_crt_private_l1_1_0.dll_memcmp
test eax, eax
jne 0x1400a119e
mov rax, qword [rsp + 0x250]
mov qword [rsp + 0xd0], rax
movups xmm0, xmmword [rsp + 0x240]
movaps xmmword [rsp + 0xc0], xmm0
movups xmm0, xmmword [rsp + 0x200]
movups xmm1, xmmword [rsp + 0x210]
movups xmm2, xmmword [rsp + 0x220]
movups xmm3, xmmword [rsp + 0x230]
movaps xmmword [rsp + 0xb0], xmm3
movaps xmmword [rsp + 0xa0], xmm2
movaps xmmword [rsp + 0x90], xmm1
movaps xmmword [rsp + 0x80], xmm0
mov rax, qword [rsp + 0x30]
cmp qword [rax], 0
je 0x14009f376
mov rsi, qword [rbp + 0x90]
call sub.kernel32.dll_GetProcessHeap
mov rcx, rax
xor edx, edx
mov r8, rsi
call sub.kernel32.dll_HeapFree
mov rax, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0x30]
mov qword [rcx + 0x50], rax
movaps xmm0, xmmword [rsp + 0xc0]
movups xmmword [rcx + 0x40], xmm0
movaps xmm0, xmmword [rsp + 0x80]
movaps xmm1, xmmword [rsp + 0x90]
movaps xmm2, xmmword [rsp + 0xa0]
movaps xmm3, xmmword [rsp + 0xb0]
movups xmmword [rcx + 0x30], xmm3
movups xmmword [rcx + 0x20], xmm2
movups xmmword [rcx + 0x10], xmm1
movups xmmword [rcx], xmm0
mov rax, qword [rsp + 0x40]
movups xmm0, xmmword [rax + 0x50]
movaps xmmword [rsp + 0x340], xmm0
movups xmm0, xmmword [rax + 0x40]
movaps xmmword [rsp + 0x330], xmm0
movdqu xmm0, xmmword [rax]
movdqu xmm1, xmmword [rax + 0x10]
movups xmm2, xmmword [rax + 0x20]
movups xmm3, xmmword [rax + 0x30]
movaps xmmword [rsp + 0x320], xmm3
movaps xmmword [rsp + 0x310], xmm2
movdqa xmmword [rsp + 0x300], xmm1
movdqa xmmword [rsp + 0x2f0], xmm0
mov qword [rbp + 0x28], 0
mov qword [rbp + 0x40], 0
mov qword [rbp + 0x48], 8
mov rax, qword [rsp + 0x4d8]
movups xmmword [rax], xmm6
mov qword [rbp + 0x60], 8
mov qword [rbp + 0x68], 0
mov qword [rbp + 0x70], 2
mov qword [rbp + 0x78], 0
mov word [rbp + 0x80], 0
mov r9, qword [rbp + 0xf0]
test r9, r9
je 0x14009fe35
mov r10, qword [rbp + 0xe8]
mov rax, qword [rsp + 0x78]
cmp byte [rax], 0
je 0x14009f4b9
mov r8d, dword [rbp + 0xbc]
mov eax, dword [rbp + 0xc0]
mov rcx, qword [rbp + 0x90]
mov rdx, qword [rbp + 0x98]
cmp r8d, eax
ja 0x1400a1882
test r8, r8
je 0x14009f4ed
cmp rdx, r8
jbe 0x14009f4e7
cmp byte [rcx + r8], 0xbf
jg 0x14009f4ed
jmp 0x1400a1882
xor ecx, ecx
imul rdx, r9, 0x58
lea r14, [rdx + r10]
add r14, 0xffffffffffffffa8
cmp byte [r14 + 0x40], 0
jne 0x14009f521
xor edx, edx
test rcx, rcx
jne 0x14009f581
test rdx, rdx
jne 0x14009f59b
jmp 0x14009f785
jne 0x1400a1882
test rax, rax
je 0x14009f508
cmp rdx, rax
jbe 0x14009f502
cmp byte [rcx + rax], 0xbf
jg 0x14009f508
jmp 0x1400a1882
jne 0x1400a1882
sub rax, r8
add rcx, r8
imul rdx, r9, 0x58
lea r14, [rdx + r10]
add r14, 0xffffffffffffffa8
cmp byte [r14 + 0x40], 0
je 0x14009f4ce
mov r8d, dword [r14 + 0x34]
mov r9d, dword [r14 + 0x38]
mov rdx, qword [r14 + 8]
mov r10, qword [r14 + 0x10]
cmp r8d, r9d
ja 0x1400a1896
test r8, r8
je 0x14009f556
cmp r10, r8
jbe 0x14009f550
cmp byte [rdx + r8], 0xbf
jg 0x14009f556
jmp 0x1400a1896
jne 0x1400a1896
test r9, r9
je 0x14009f572
cmp r10, r9
jbe 0x14009f56c
cmp byte [rdx + r9], 0xbf
jg 0x14009f572
jmp 0x1400a1896
jne 0x1400a1896
sub r9, r8
add rdx, r8
test rcx, rcx
je 0x14009f4d9
test rdx, rdx
je 0x14009f59b
cmp rax, r9
jne 0x14009f59b
mov r8, rax
call sub.api_ms_win_crt_private_l1_1_0.dll_memcmp
test eax, eax
je 0x14009f785
movups xmm0, xmmword [0x140188950]
movaps xmmword [rsp + 0x3f0], xmm0
movups xmm0, xmmword [0x140188940]
movaps xmmword [rsp + 0x3e0], xmm0
mov rcx, r12
lea rdx, [rsp + 0x2f0]
mov r8, r13
call fcn.140096b50
cmp byte [rsp + 0xa0], 2
je 0x14009f5f9
mov rax, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x88]
mov r8, qword [rsp + 0x90]
lea rcx, [rsp + 0x98]
call qword [rax + 0x20]
movups xmm0, xmmword [0x140188970]
movaps xmmword [rsp + 0x3f0], xmm0
movdqu xmm0, xmmword [0x140188960]
movdqa xmmword [rsp + 0x3e0], xmm0
mov rcx, r12
lea rdx, [rsp + 0x2f0]
mov r8, r13
call fcn.140096b50
cmp byte [rsp + 0xa0], 2
je 0x14009f659
mov rax, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x88]
mov r8, qword [rsp + 0x90]
lea rcx, [rsp + 0x98]
call qword [rax + 0x20]
lea rax, [0x1401851e0]
mov qword [rsp + 0x20], rax
mov r8d, 7
mov rcx, r12
lea rdx, str.cookie2
mov r9, r13
call fcn.140027c00
movzx r14d, byte [rsp + 0x90]
cmp r14b, 3
jne 0x14009f699
mov byte [rsp + 0x550], 2
jmp 0x14009fd77
mov rdi, qword [rsp + 0x318]
test rdi, rdi
je 0x14009fd5a
mov r13, qword [rsp + 0x80]
mov rbp, qword [rsp + 0x88]
cmp dword [rsp + 0x2f0], 2
mov qword [rsp + 0x48], r13
mov qword [rsp + 0x28], rbp
jne 0x14009f7ca
mov r12, rdi
movdqu xmm0, xmmword [rsp + 0x2f8]
pshufd xmm1, xmm0, 0x44
pxor xmm1, xmm8
movdqa xmmword [rsp + 0x80], xmm1
pshufd xmm1, xmm0, 0xee
pxor xmm1, xmm9
movdqa xmmword [rsp + 0x90], xmm1
movdqa xmmword [rsp + 0xa0], xmm0
lea rax, [rsp + 0xb0]
movaps xmmword [rax], xmm6
mov qword [rax + 0x10], 0
xor eax, eax
cmp r14b, 2
setne al
mov qword [rsp + 0x270], rax
mov r8d, 8
lea rdi, [rsp + 0x80]
mov rcx, rdi
lea rbx, [rsp + 0x270]
mov rdx, rbx
call fcn.14013eef0
cmp r14b, 2
lea r15, [0x1401851e0]
jne 0x14009f88a
movzx eax, r13b
mov qword [rsp + 0x270], rax
mov r8d, 8
mov rcx, rdi
mov rdx, rbx
call fcn.14013eef0
jmp 0x14009f9db
test byte [rbp + 0xb0], 1
je 0x14009f81c
movzx esi, word [rbp + 0xb2]
mov bx, 1
test byte [r14 + 0x28], 1
je 0x14009f918
movzx edx, word [r14 + 0x2a]
jmp 0x14009f94f
mov rcx, qword [rbp + 0x110]
mov rdx, qword [rbp + 0x118]
call fcn.14009bf70
jmp 0x14009e3b0
xor edx, edx
cmp r14b, 2
setne dl
movabs rax, 0xcbf29ce484222325
xor rdx, rax
movabs rcx, 0x1efac7090aef4a21
imul rdx, rcx
cmp r14b, 2
lea r10, [0x1401851e0]
movabs r11, 0x100000001b3
jne 0x14009f8a7
movzx eax, r13b
xor rdx, rax
imul rdx, rcx
mov r15, rdx
jmp 0x14009fade
mov r9d, dword [rbp + 0xb4]
mov rcx, qword [rbp + 0x90]
test r9, r9
je 0x14009f8f1
mov rdx, qword [rbp + 0x98]
cmp rdx, r9
jbe 0x14009f8eb
cmp byte [rcx + r9], 0xbf
jg 0x14009f8f1
jmp 0x1400a193a
mov r9d, dword [rbp + 0xb4]
mov rsi, qword [rbp + 0x98]
test r9, r9
je 0x14009ec3c
mov rcx, qword [rbp + 0x90]
cmp rsi, r9
jbe 0x14009f974
cmp byte [rcx + r9], 0xbf
jg 0x14009f97a
jmp 0x1400a19dc
test r14b, 1
je 0x14009f9a0
mov rcx, rdi
mov rdx, r13
mov r8, rbp
call fcn.14013eef0
jmp 0x14009f9db
mov rax, r13
add rax, rbp
test r14b, 1
je 0x1400a0989
test rbp, rbp
je 0x1400a09be
mov r8, rbp
and r8, 7
je 0x1400a0aa9
mov rcx, r13
movzx r15d, byte [rcx]
inc rcx
xor r15, rdx
imul r15, r11
mov rdx, r15
dec r8
jne 0x14009f8d0
jmp 0x1400a0aaf
jne 0x1400a193a
mov rdx, r9
call fcn.1401316d0
mov ebx, eax
mov esi, edx
test byte [r14 + 0x28], 1
je 0x14009f918
test bx, bx
je 0x14009f59b
movzx edx, word [r14 + 0x2a]
mov bx, 1
jmp 0x14009f94f
mov r9d, dword [r14 + 0x2c]
mov rcx, qword [r14 + 8]
test r9, r9
je 0x14009f940
mov rdx, qword [r14 + 0x10]
cmp rdx, r9
jbe 0x14009f93a
cmp byte [rcx + r9], 0xbf
jg 0x14009f940
jmp 0x1400a193a
jne 0x1400a193a
mov rdx, r9
call fcn.1401316d0
test bx, bx
je 0x14009f966
mov ebx, eax
test bx, bx
je 0x14009f59b
cmp si, dx
je 0x14009fe35
jmp 0x14009f59b
test ax, ax
jne 0x14009f59b
jmp 0x14009fe35
jne 0x1400a19dc
cmp r9d, 5
jne 0x14009ec35
lea rdx, [0x140194b0c]
mov r8, r9
call sub.api_ms_win_crt_private_l1_1_0.dll_memcmp
test eax, eax
jne 0x14009ec35
jmp 0x14009f020
test rbp, rbp
je 0x14009f9db
xor esi, esi
nop word [rax + rax]
movzx eax, byte [r13 + rsi]
movzx eax, byte [rax + r15]
mov byte [rsp + 0x270], al
mov r8d, 1
mov rcx, rdi
mov rdx, rbx
call fcn.14013eef0
inc rsi
cmp rbp, rsi
jne 0x14009f9b0
mov rax, qword [rsp + 0x90]
mov r9, qword [rsp + 0xb0]
shl r9, 0x38
or r9, qword [rsp + 0xb8]
mov rcx, qword [rsp + 0x98]
xor rcx, r9
mov r8, qword [rsp + 0x80]
add r8, rax
mov rdx, qword [rsp + 0x88]
add rdx, rcx
rol rax, 0xd
xor rax, r8
rol rcx, 0x10
rol r8, 0x20
xor rcx, rdx
add rdx, rax
rol rax, 0x11
add r8, rcx
xor rax, rdx
rol rcx, 0x15
xor rcx, r8
rol rdx, 0x20
xor r8, r9
xor rdx, 0xff
add r8, rax
rol rax, 0xd
add rdx, rcx
xor rax, r8
rol rcx, 0x10
xor rcx, rdx
rol r8, 0x20
add rdx, rax
add r8, rcx
rol rax, 0x11
xor rax, rdx
rol rcx, 0x15
rol rdx, 0x20
xor rcx, r8
add r8, rax
rol rax, 0xd
add rdx, rcx
xor rax, r8
rol rcx, 0x10
xor rcx, rdx
rol r8, 0x20
add rdx, rax
add r8, rcx
rol rax, 0x11
xor rax, rdx
rol rcx, 0x15
rol rdx, 0x20
xor rcx, r8
add r8, rax
rol rax, 0xd
add rdx, rcx
xor rax, r8
shl rcx, 0x10
xor rcx, rdx
add rdx, rax
shr rax, 0x2f
shr rcx, 0x2b
xor rcx, rax
mov r15, rdx
shr r15, 0x20
xor r15, rdx
xor r15, rcx
mov rdi, r12
and r15d, 0x7fff
movzx r13d, word [rsp + 0x348]
mov ebx, r15d
and ebx, r13d
mov rsi, qword [rsp + 0x340]
mov r10, qword [rsp + 0x310]
mov rbp, qword [rsp + 0x338]
cmp r14b, 2
jne 0x14009fb9d
xor eax, eax
jmp 0x14009fb26
inc rax
inc rbx
mov rcx, rbx
nop dword [rax]
mov rbx, rcx
mov ecx, 0
cmp rbx, rsi
jae 0x14009fb30
movzx r14d, word [rbp + rbx*4]
cmp r14, 0xffff
je 0x14009fd5a
movzx ecx, word [rbp + rbx*4 + 2]
mov edx, ecx
and edx, r13d
mov r8d, ebx
sub r8d, edx
and r8d, r13d
cmp rax, r8
ja 0x14009fd5a
cmp cx, r15w
jne 0x14009fb20
cmp rdi, r14
jbe 0x1400a17a6
imul rcx, r14, 0x68
cmp qword [r10 + rcx + 0x40], 0
jne 0x14009fb20
add rcx, r10
add rcx, 0x40
mov rdx, qword [rsp + 0x48]
cmp byte [rcx + 8], dl
jne 0x14009fb20
jmp 0x1400a09c9
test r14b, 1
je 0x14009fc52
xor r12d, r12d
mov rax, rbx
mov qword [rsp + 0x58], rdi
jmp 0x14009fbc0
inc r12
inc rbx
mov rax, rbx
nop dword [rax]
mov rbx, rax
mov eax, 0
cmp rbx, rsi
jae 0x14009fbc0
movzx r14d, word [rbp + rbx*4]
cmp r14, 0xffff
je 0x14009fd5a
movzx eax, word [rbp + rbx*4 + 2]
mov ecx, eax
and ecx, r13d
mov edx, ebx
sub edx, ecx
and edx, r13d
cmp r12, rdx
ja 0x14009fd5a
cmp ax, r15w
jne 0x14009fbb4
cmp rdi, r14
jbe 0x1400a17a6
imul rax, r14, 0x68
cmp qword [r10 + rax + 0x40], 0
je 0x14009fbb4
add rax, r10
add rax, 0x40
mov rcx, qword [rsp + 0x28]
cmp qword [rax + 0x10], rcx
jne 0x14009fbb4
mov rcx, qword [rax + 8]
mov rdx, qword [rsp + 0x48]
mov r8, qword [rsp + 0x28]
mov rdi, r10
call sub.api_ms_win_crt_private_l1_1_0.dll_memcmp
mov r10, rdi
mov rdi, qword [rsp + 0x58]
test eax, eax
jne 0x14009fbb4
jmp 0x1400a09c9
mov rax, qword [rsp + 0x28]
dec rax
xor ecx, ecx
jmp 0x14009fc66
inc rcx
inc rbx
mov rdx, rbx
nop dword [rax]
mov rbx, rdx
mov edx, 0
cmp rbx, rsi
jae 0x14009fc70
movzx r14d, word [rbp + rbx*4]
cmp r14, 0xffff
je 0x14009fd5a
movzx edx, word [rbp + rbx*4 + 2]
mov r8d, edx
and r8d, r13d
mov r9d, ebx
sub r9d, r8d
and r9d, r13d
cmp rcx, r9
ja 0x14009fd5a
cmp dx, r15w
jne 0x14009fc60
cmp rdi, r14
jbe 0x1400a17a6
imul rdx, r14, 0x68
cmp qword [r10 + rdx + 0x40], 0
je 0x14009fc60
add rdx, r10
add rdx, 0x40
mov r8, qword [rsp + 0x28]
cmp qword [rdx + 0x10], r8
jne 0x14009fc60
cmp qword [rsp + 0x28], 0
je 0x1400a09c9
mov rdx, qword [rdx + 8]
mov r8, qword [rsp + 0x48]
movzx r8d, byte [r8]
lea r9, [0x1401851e0]
movzx r8d, byte [r8 + r9]
cmp r8b, byte [rdx]
jne 0x14009fc60
mov r12, r10
xor r8d, r8d
lea r11, [0x1401851e0]
nop word cs:[rax + rax]
cmp rax, r8
je 0x1400a09c6
mov r9, qword [rsp + 0x48]
movzx r9d, byte [r9 + r8 + 1]
movzx r10d, byte [r9 + r11]
lea r9, [r8 + 1]
cmp r10b, byte [rdx + r8 + 1]
mov r8, r9
je 0x14009fd20
cmp r9, qword [rsp + 0x28]
mov r10, r12
jb 0x14009fc60
jmp 0x1400a09c9
mov byte [rsp + 0x550], 2
mov rbp, qword [rsp + 0x38]
lea r12, [rsp + 0x80]
lea r13, [rsp + 0x3e0]
movups xmm0, xmmword [0x140188998]
movaps xmmword [rsp + 0x3f0], xmm0
movups xmm0, xmmword [0x140188988]
movaps xmmword [rsp + 0x3e0], xmm0
mov rcx, r12
lea rdx, [rsp + 0x2f0]
mov r8, r13
call fcn.140096b50
cmp byte [rsp + 0xa0], 2
je 0x14009fdd5
mov rax, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x88]
mov r8, qword [rsp + 0x90]
lea rcx, [rsp + 0x98]
call qword [rax + 0x20]
movups xmm0, xmmword [0x1401889b8]
movaps xmmword [rsp + 0x3f0], xmm0
movdqu xmm0, xmmword [0x1401889a8]
movdqa xmmword [rsp + 0x3e0], xmm0
mov rcx, r12
lea rdx, [rsp + 0x2f0]
mov r8, r13
call fcn.140096b50
cmp byte [rsp + 0xa0], 2
je 0x14009fe35
mov rax, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x88]
mov r8, qword [rsp + 0x90]
lea rcx, [rsp + 0x98]
call qword [rax + 0x20]
mov rcx, r12
mov rdx, qword [rsp + 0x30]
call fcn.1400af040
movzx eax, byte [rsp + 0x80]
cmp al, 3
je 0x1400a12af
lea r8, [rsp + 0x8a]
mov ecx, dword [r8 - 9]
mov edx, dword [r8 - 6]
lea r9, [rsp + 0x271]
mov dword [r9 + 3], edx
mov dword [r9], ecx
mov rcx, qword [rsp + 0x88]
movups xmm0, xmmword [r8 + 6]
movups xmm1, xmmword [r8 + 0x16]
movups xmm2, xmmword [r8 + 0x26]
movups xmm3, xmmword [r8 + 0x36]
movups xmmword [r9 + 0x1f], xmm1
movups xmmword [r9 + 0x2f], xmm2
movups xmmword [r9 + 0x3f], xmm3
mov rdx, qword [r8 + 0x46]
mov qword [r9 + 0x4f], rdx
movups xmmword [r9 + 0xf], xmm0
mov byte [rsp + 0x270], al
mov qword [rsp + 0x278], rcx
pxor xmm10, xmm10
mov esi, 1
test byte [rbp], 1
je 0x14009ff09
mov rax, qword [rbp + 8]
lea r14, [0x140183e88]
test rax, rax
je 0x14009ff10
mov r8, qword [rbp + 0x10]
mov r9, qword [rbp + 0x18]
mov rcx, r12
mov rdx, qword [rsp + 0x260]
call qword [rax]
mov r14, qword [rsp + 0x80]
mov rsi, qword [rsp + 0x88]
movdqu xmm10, xmmword [rsp + 0x90]
jmp 0x14009ff10
lea r14, [0x140183e88]
mov rax, qword [rsp + 0x1b0]
movzx ebx, byte [rax]
cmp ebx, 9
jae 0x1400a0917
mov eax, dword [rsp + 0x190]
mov ecx, dword [rsp + 0x193]
mov dword [rsp + 0x6b], ecx
mov dword [rsp + 0x68], eax
mov rax, qword [rsp + 0x2d0]
mov rcx, qword [rsp + 0x2d6]
mov qword [rsp + 0x390], rax
mov qword [rsp + 0x396], rcx
movaps xmmword [rsp + 0x190], xmm6
mov eax, dword [rsp + 0x188]
mov dword [rsp + 0x1b8], eax
movzx eax, word [rsp + 0x18c]
mov word [rsp + 0x1bc], ax
mov rax, qword [rsp + 0x3a0]
mov rcx, qword [rsp + 0x3a7]
mov qword [rsp + 0x3b0], rax
mov qword [rsp + 0x3b7], rcx
movaps xmmword [rsp + 0x1e0], xmm6
mov eax, dword [rsp + 0x1da]
mov dword [rsp + 0x50], eax
movzx eax, word [rsp + 0x1de]
mov word [rsp + 0x54], ax
mov eax, dword [rsp + 0x68]
mov ecx, dword [rsp + 0x6b]
mov dword [rsp + 0x2e3], ecx
mov dword [rsp + 0x2e0], eax
mov eax, dword [rsp + 0x1c0]
mov ecx, dword [rsp + 0x1c3]
mov dword [rsp + 0x73], ecx
mov dword [rsp + 0x70], eax
mov qword [rsp + 0x80], 0
mov rax, qword [rsp + 0x390]
mov rcx, qword [rsp + 0x396]
lea rdx, [rsp + 0x8a]
mov qword [rdx + 6], rcx
mov qword [rdx], rax
mov qword [rsp + 0x98], 0
mov qword [rsp + 0xa0], 8
movaps xmm0, xmmword [rsp + 0x190]
movups xmmword [rdx + 0x1e], xmm0
mov qword [rsp + 0xb8], 8
mov qword [rsp + 0xc0], 0
mov qword [rsp + 0xc8], 2
mov qword [rsp + 0xd0], 0
mov word [rsp + 0xd8], 0
movzx eax, word [rsp + 0x1bc]
mov word [rdx + 0x54], ax
mov eax, dword [rsp + 0x1b8]
mov dword [rdx + 0x50], eax
mov byte [rsp + 0xe0], 0
mov rax, qword [rsp + 0x3b0]
mov rcx, qword [rsp + 0x3b7]
mov qword [rdx + 0x5e], rcx
mov qword [rdx + 0x57], rax
lea rax, [0x140160130]
mov qword [rsp + 0xf0], rax
mov qword [rsp + 0xf8], 1
movaps xmm0, xmmword [rsp + 0x1e0]
movups xmmword [rdx + 0x76], xmm0
mov qword [rsp + 0x110], rax
lea rax, [0x140194e90]
mov qword [rsp + 0x118], rax
mov qword [rsp + 0x120], 1
mov qword [rsp + 0x128], 0
mov word [rsp + 0x130], 0xffff
movzx eax, word [rsp + 0x54]
mov word [rdx + 0xac], ax
mov eax, dword [rsp + 0x50]
mov dword [rdx + 0xa8], eax
mov byte [rsp + 0x138], bl
mov eax, dword [rsp + 0x2e0]
mov ecx, dword [rsp + 0x2e3]
mov dword [rdx + 0xb2], ecx
mov dword [rdx + 0xaf], eax
mov rax, qword [rsp + 0x3d0]
mov qword [rsp + 0x140], rax
mov rax, qword [rsp + 0x258]
mov qword [rsp + 0x148], rax
mov qword [rsp + 0x150], 0
mov byte [rsp + 0x158], 2
mov eax, dword [rsp + 0x70]
mov ecx, dword [rsp + 0x73]
mov dword [rdx + 0xd2], ecx
mov dword [rdx + 0xcf], eax
movzx ebp, byte [rsp + 0x270]
test ebp, ebp
je 0x1400a01fd
cmp ebp, 2
jne 0x1400a01f4
mov rdi, qword [rsp + 0x278]
movzx eax, byte [0x1401aa178]
mov edx, 0x20
xor ecx, ecx
call fcn.14011ab20
test rax, rax
je 0x1400a197a
mov rbx, rax
lea rdx, [rdi + 0x18]
mov rax, qword [rdi]
mov r8, qword [rdi + 8]
mov r9, qword [rdi + 0x10]
lea rcx, [rsp + 0x190]
call qword [rax]
movups xmm0, xmmword [rsp + 0x190]
movups xmm1, xmmword [rsp + 0x1a0]
movups xmmword [rbx + 0x10], xmm1
movups xmmword [rbx], xmm0
jmp 0x1400a01fd
movzx r15d, byte [rsp + 0x271]
mov rax, qword [rsp + 0x280]
mov r8, qword [rsp + 0x288]
mov r9, qword [rsp + 0x290]
lea rcx, [rsp + 0x698]
lea rdx, [rsp + 0x298]
call qword [rax]
mov rax, qword [rsp + 0x2a0]
mov r8, qword [rsp + 0x2a8]
mov r9, qword [rsp + 0x2b0]
lea rcx, [rsp + 0x6b8]
lea rdx, [rsp + 0x2b8]
call qword [rax]
movzx eax, word [rsp + 0x2c0]
mov byte [rsp + 0x688], bpl
mov byte [rsp + 0x689], r15b
mov qword [rsp + 0x690], rbx
mov word [rsp + 0x6d8], ax
mov rcx, r13
mov rdx, r12
lea r8, [rsp + 0x688]
call fcn.1400a1a30
mov rax, qword [rsp + 0x3e0]
movzx ebx, byte [rsp + 0x3e8]
movzx ebp, byte [rsp + 0x3e9]
mov qword [rsp + 0x80], r14
mov qword [rsp + 0x88], rsi
movdqu xmmword [rsp + 0x90], xmm10
cmp rax, 3
je 0x1400a184e
lea rcx, [rsp + 0x3ea]
mov rax, qword [rcx]
mov rcx, qword [rcx + 6]
mov qword [rsp + 0x196], rcx
mov qword [rsp + 0x190], rax
mov rax, qword [rsp + 0x3f8]
mov qword [rsp + 0x4e0], rax
mov rax, qword [rsp + 0x400]
mov qword [rsp + 0x4e8], rax
mov rbx, qword [rsp + 0x408]
mov rax, qword [rsp + 0x410]
mov qword [rsp + 0x1c8], rax
mov r12, qword [rsp + 0x418]
mov rsi, qword [rsp + 0x420]
mov rax, qword [rsp + 0x428]
mov qword [rsp + 0x4d0], rax
mov r13, qword [rsp + 0x430]
mov r8d, 0x88
lea rcx, [rsp + 0x530]
lea rdx, [rsp + 0x438]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
movdqu xmm0, xmmword [rsp + 0x80]
movdqu xmm1, xmmword [rsp + 0x90]
lea rax, [rsp + 0x5b8]
movdqu xmmword [rax + 0x10], xmm1
movdqu xmmword [rax], xmm0
movzx edi, word [rsp + 0x348]
mov rcx, qword [rsp + 0x338]
mov rdx, qword [rsp + 0x340]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x508], rdx
call fcn.14009bfe0
mov r15, rax
mov r14, rdx
mov rdx, qword [rsp + 0x310]
mov r8, qword [rsp + 0x318]
lea rcx, [rsp + 0x98]
mov qword [rsp + 0x48], rdx
mov qword [rsp + 0x500], r8
call fcn.14008aae0
mov rdx, qword [rsp + 0x328]
mov r8, qword [rsp + 0x330]
lea rcx, [rsp + 0xb0]
mov qword [rsp + 0x4f8], rdx
mov qword [rsp + 0x58], r8
call fcn.14008a7f0
mov rax, qword [rsp + 0x2f0]
mov rbp, qword [rsp + 0x2f8]
mov word [rsp + 0xd8], di
mov rcx, qword [rsp + 0x300]
mov qword [rsp + 0x268], r15
mov qword [rsp + 0xc8], r15
mov r15, rax
mov qword [rsp + 0x1d0], r14
mov qword [rsp + 0xd0], r14
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x88], rbp
mov qword [rsp + 0x4f0], rcx
mov qword [rsp + 0x90], rcx
test r13, r13
je 0x1400a0488
call sub.kernel32.dll_GetProcessHeap
mov rcx, rax
xor edx, edx
mov r8, qword [rsp + 0x4d0]
call sub.kernel32.dll_HeapFree
test rbx, rbx
mov r14, r12
mov rdi, qword [rsp + 0x4e8]
je 0x1400a04e0
lea r12, [rdi + 0x30]
jmp 0x1400a04be
mov rax, qword [r12 - 0x18]
mov rdx, qword [r12 - 0x10]
mov r8, qword [r12 - 8]
mov rcx, r12
call qword [rax + 0x20]
add r12, 0x68
dec rbx
je 0x1400a04e0
mov rax, qword [r12 + 0x10]
test rax, rax
je 0x1400a04a0
lea rcx, [r12 + 0x28]
mov rdx, qword [r12 + 0x18]
mov r8, qword [r12 + 0x20]
call qword [rax + 0x20]
jmp 0x1400a04a0
cmp qword [rsp + 0x4e0], 0
je 0x1400a04fd
call sub.kernel32.dll_GetProcessHeap
mov rcx, rax
xor edx, edx
mov r8, rdi
call sub.kernel32.dll_HeapFree
test rsi, rsi
lea rdi, [rsp + 0x80]
je 0x1400a052b
lea rbx, [r14 + 0x38]
nop
mov rax, qword [rbx - 0x18]
mov rdx, qword [rbx - 0x10]
mov r8, qword [rbx - 8]
mov rcx, rbx
call qword [rax + 0x20]
add rbx, 0x48
dec rsi
jne 0x1400a0510
cmp qword [rsp + 0x1c8], 0
je 0x1400a0548
call sub.kernel32.dll_GetProcessHeap
mov rcx, rax
xor edx, edx
mov r8, r14
call sub.kernel32.dll_HeapFree
lea rdx, [rsp + 0x8a]
mov rax, qword [rdx]
mov rcx, qword [rdx + 6]
mov qword [rsp + 0x196], rcx
mov qword [rsp + 0x190], rax
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0x530], rax
mov rcx, qword [rsp + 0x38]
movups xmm0, xmmword [rcx + 0x28]
mov qword [rcx + 0x28], r15
mov qword [rcx + 0x30], rbp
movaps xmmword [rsp + 0x2f0], xmm0
mov rax, qword [rcx + 0x38]
mov r8, qword [rsp + 0x4f0]
mov qword [rcx + 0x38], r8
mov qword [rsp + 0x300], rax
mov r8, qword [rcx + 0x40]
mov rax, qword [rsp + 0x308]
mov qword [rcx + 0x40], rax
mov qword [rsp + 0x1c8], r8
mov qword [rsp + 0x308], r8
mov rax, qword [rcx + 0x48]
mov r8, qword [rsp + 0x48]
mov qword [rcx + 0x48], r8
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x310], rax
mov rbx, qword [rcx + 0x50]
mov rax, qword [rsp + 0x500]
mov qword [rcx + 0x50], rax
mov qword [rsp + 0x318], rbx
mov r8, qword [rcx + 0x58]
mov rax, qword [rsp + 0x320]
mov qword [rcx + 0x58], rax
mov rax, qword [rcx + 0x60]
mov r9, qword [rsp + 0x4f8]
mov qword [rcx + 0x60], r9
mov rsi, qword [rcx + 0x68]
mov r9, qword [rsp + 0x58]
mov qword [rcx + 0x68], r9
mov r14, qword [rcx + 0x70]
mov r9, qword [rsp + 0x28]
mov qword [rcx + 0x70], r9
mov qword [rsp + 0x58], r8
mov qword [rsp + 0x320], r8
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x328], rax
mov qword [rsp + 0x330], rsi
mov qword [rsp + 0x338], r14
movdqu xmm10, xmmword [rcx + 0x78]
mov rax, qword [rsp + 0x508]
mov qword [rcx + 0x78], rax
mov rax, qword [rsp + 0x348]
mov qword [rcx + 0x80], rax
movdqu xmm0, xmmword [rsp + 0x98]
movdqu xmm1, xmmword [rsp + 0xa8]
movups xmm2, xmmword [rsp + 0xb8]
mov qword [rsp + 0x80], r15
mov byte [rsp + 0x88], bpl
mov eax, ebp
mov rbp, rcx
shr eax, 8
mov byte [rsp + 0x89], al
mov rax, qword [rsp + 0x196]
mov qword [rdx + 6], rax
mov rax, qword [rsp + 0x190]
mov qword [rdx], rax
movdqu xmmword [rsp + 0x98], xmm0
movdqu xmmword [rsp + 0xa8], xmm1
movups xmmword [rsp + 0xb8], xmm2
mov rax, qword [rsp + 0x268]
mov qword [rsp + 0xc8], rax
movdqa xmmword [rsp + 0x340], xmm10
mov rax, qword [rsp + 0x1d0]
mov qword [rsp + 0xd0], rax
mov r15, qword [rcx + 0x120]
add r15, 0x10
mov r8d, 0xa8
lea rcx, [rsp + 0xd8]
lea rdx, [rsp + 0x530]
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov rcx, r15
mov rdx, rdi
call fcn.140079de0
mov r15, rax
mov r12, rdx
mov r13, qword [rbp + 0x128]
mov rdi, qword [rbp + 0x130]
mov rax, qword [rdi]
test rax, rax
je 0x1400a0765
mov rcx, r13
call rax
cmp qword [rdi + 8], 0
je 0x1400a0789
cmp qword [rdi + 0x10], 0x11
jb 0x1400a0777
mov r13, qword [r13 - 8]
call sub.kernel32.dll_GetProcessHeap
mov rcx, rax
xor edx, edx
mov r8, r13
call sub.kernel32.dll_HeapFree
mov qword [rbp + 0x128], r15
mov qword [rbp + 0x130], r12
cmp byte [rsp + 0x270], 2
jb 0x1400a07cd
mov r15, qword [rsp + 0x278]
lea rcx, [r15 + 0x18]
mov rax, qword [r15]
mov rdx, qword [r15 + 8]
mov r8, qword [r15 + 0x10]
call qword [rax + 0x20]
call sub.kernel32.dll_GetProcessHeap
mov rcx, rax
xor edx, edx
mov r8, r15
call sub.kernel32.dll_HeapFree
mov rax, qword [rsp + 0x280]
mov rdx, qword [rsp + 0x288]
mov r8, qword [rsp + 0x290]
lea rcx, [rsp + 0x298]
call qword [rax + 0x20]
mov rax, qword [rsp + 0x2a0]
mov rdx, qword [rsp + 0x2a8]
mov r8, qword [rsp + 0x2b0]
lea rcx, [rsp + 0x2b8]
call qword [rax + 0x20]
movq rax, xmm10
test rax, rax
mov rdi, qword [rsp + 0x1f8]
lea r12, [rsp + 0x80]
lea r13, [rsp + 0x3e0]
je 0x1400a0847
call sub.kernel32.dll_GetProcessHeap
mov rcx, rax
xor edx, edx
mov r8, r14
call sub.kernel32.dll_HeapFree
test rbx, rbx
lea r15, [rsp + 0x3ea]
je 0x1400a08a0
mov rax, qword [rsp + 0x48]
lea r14, [rax + 0x30]
jmp 0x1400a087b
mov rax, qword [r14 - 0x18]
mov rdx, qword [r14 - 0x10]
mov r8, qword [r14 - 8]
mov rcx, r14
call qword [rax + 0x20]
add r14, 0x68
dec rbx
je 0x1400a08a0
mov rax, qword [r14 + 0x10]
test rax, rax
je 0x1400a0860
lea rcx, [r14 + 0x28]
mov rdx, qword [r14 + 0x18]
mov r8, qword [r14 + 0x20]
call qword [rax + 0x20]
jmp 0x1400a0860
cmp qword [rsp + 0x1c8], 0
je 0x1400a08bf
call sub.kernel32.dll_GetProcessHeap
mov rcx, rax
xor edx, edx
mov r8, qword [rsp + 0x48]
call sub.kernel32.dll_HeapFree
test rsi, rsi
mov r14, qword [rsp + 0x28]
je 0x1400a08eb
lea rbx, [r14 + 0x38]
nop dword [rax]
mov rax, qword [rbx - 0x18]
mov rdx, qword [rbx - 0x10]
mov r8, qword [rbx - 8]
mov rcx, rbx
call qword [rax + 0x20]
add rbx, 0x48
dec rsi
jne 0x1400a08d0
cmp qword [rsp + 0x58], 0
je 0x1400a0905
call sub.kernel32.dll_GetProcessHeap
mov rcx, rax
xor edx, edx
mov r8, r14
call sub.kernel32.dll_HeapFree
lea rcx, [rsp + 0x5e0]
call fcn.1400a2390
jmp 0x14009df2b
cmp ebx, 0xa
jne 0x1400a0944
mov rcx, qword [rbp + 0x110]
mov rdx, qword [rbp + 0x118]
call fcn.14009bf70
mov qword [rsp + 0x3d0], rax
mov qword [rsp + 0x258], rdx
jmp 0x14009ff24
mov rcx, qword [rsp + 0x3c8]
mov eax, dword [rcx]
mov ecx, dword [rcx + 3]
mov dword [rsp + 0x193], ecx
mov dword [rsp + 0x190], eax
mov rax, qword [rbp + 0x110]
mov qword [rsp + 0x3d0], rax
mov rax, qword [rsp + 0x258]
mov al, byte [rbp + 0x118]
mov qword [rsp + 0x258], rax
jmp 0x14009ff24
test rbp, rbp
je 0x1400a09be
mov r8, rbp
mov rcx, r13
and r8, 3
je 0x1400a0b22
movzx r9d, byte [rcx]
movzx r15d, byte [r9 + r10]
xor r15, rdx
imul r15, r11
inc rcx
mov rdx, r15
dec r8
jne 0x1400a099e
jmp 0x1400a0b25
mov r15, rdx
jmp 0x14009fade
mov r10, r12
cmp r14, rdi
mov rbp, qword [rsp + 0x38]
lea r12, [rsp + 0x80]
lea r13, [rsp + 0x3e0]
jae 0x1400a1a11
imul rax, r14, 0x68
test byte [r10 + rax], 1
je 0x1400a0a06
add r10, rax
mov rdx, qword [r10 + 8]
lea rcx, [rsp + 0x2f0]
call fcn.140033920
mov rcx, r12
lea rdx, [rsp + 0x2f0]
mov r8, rbx
mov r9, r14
call fcn.140033dc0
lea rcx, [rsp + 0x98]
mov rax, qword [rcx + 0x20]
mov qword [rsp + 0x550], rax
movdqu xmm0, xmmword [rcx]
movdqu xmm1, xmmword [rcx + 0x10]
movdqa xmmword [rsp + 0x540], xmm1
movdqa xmmword [rsp + 0x530], xmm0
mov rax, qword [rsp + 0xc0]
test rax, rax
je 0x1400a0a73
mov rdx, qword [rsp + 0xc8]
mov r8, qword [rsp + 0xd0]
lea rcx, [rsp + 0xd8]
call qword [rax + 0x20]
cmp byte [rsp + 0x550], 2
je 0x14009fd77
mov rax, qword [rsp + 0x530]
mov rdx, qword [rsp + 0x538]
mov r8, qword [rsp + 0x540]
lea rcx, [rsp + 0x548]
call qword [rax + 0x20]
jmp 0x14009fd77
mov r15, rdx
mov rcx, r13
cmp rbp, 8
jb 0x14009fade
movzx edx, byte [rcx]
xor rdx, r15
imul rdx, r11
movzx r8d, byte [rcx + 1]
xor r8, rdx
imul r8, r11
movzx edx, byte [rcx + 2]
xor rdx, r8
imul rdx, r11
movzx r8d, byte [rcx + 3]
xor r8, rdx
imul r8, r11
movzx edx, byte [rcx + 4]
xor rdx, r8
imul rdx, r11
movzx r8d, byte [rcx + 5]
xor r8, rdx
imul r8, r11
movzx edx, byte [rcx + 6]
xor rdx, r8
imul rdx, r11
movzx r15d, byte [rcx + 7]
add rcx, 8
xor r15, rdx
imul r15, r11
cmp rcx, rax
jne 0x1400a0ab9
jmp 0x14009fade
mov r15, rdx
cmp rbp, 4
jb 0x14009fade
movzx edx, byte [rcx]
movzx edx, byte [rdx + r10]
xor rdx, r15
imul rdx, r11
movzx r8d, byte [rcx + 1]
movzx r8d, byte [r8 + r10]
xor r8, rdx
imul r8, r11
movzx edx, byte [rcx + 2]
movzx edx, byte [rdx + r10]
xor rdx, r8
imul rdx, r11
movzx r8d, byte [rcx + 3]
movzx r15d, byte [r8 + r10]
xor r15, rdx
imul r15, r11
add rcx, 4
cmp rcx, rax
jne 0x1400a0b2f
jmp 0x14009fade
movzx eax, byte [0x1401aa178]
mov edx, 0x70
xor ecx, ecx
call fcn.14011ab20
test rax, rax
je 0x1400a1797
mov rsi, rax
movabs r13, 0x8000000000000000
mov qword [rax], r13
mov qword [rax + 0x58], 1
lea rax, [0x140182fe0]
mov qword [rsi + 0x60], rax
mov word [rsi + 0x68], 1
mov rbx, qword [rbp + 0x98]
test rbx, rbx
js 0x1400a1752
mov r15, qword [rbp + 0x90]
je 0x1400a0c59
movzx eax, byte [0x1401aa178]
xor ecx, ecx
mov rdx, rbx
call fcn.14011ab20
test rax, rax
je 0x1400a18ad
mov r14, rax
jmp 0x1400a0c5f
movzx eax, byte [0x1401aa178]
mov edx, 0x70
xor ecx, ecx
call fcn.14011ab20
test rax, rax
je 0x1400a1797
mov rsi, rax
movabs r13, 0x8000000000000000
mov qword [rax], r13
mov qword [rax + 0x58], 1
lea rax, [0x140182fe0]
mov qword [rsi + 0x60], rax
mov word [rsi + 0x68], 1
mov rbx, qword [rbp + 0x98]
test rbx, rbx
js 0x1400a1752
mov r15, qword [rbp + 0x90]
jne 0x1400a0bdc
mov r14d, 1
mov rcx, r14
mov rdx, r15
mov r8, rbx
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
movups xmm6, xmmword [rbp + 0xb4]
movups xmm0, xmmword [rbp + 0xc8]
movzx eax, byte [rbp + 0xd8]
mov byte [rsp + 0x90], al
movaps xmmword [rsp + 0x80], xmm0
movzx edx, word [rbp + 0xb0]
movzx r8d, word [rbp + 0xb2]
mov ecx, dword [rbp + 0xc4]
mov r12d, dword [rbp + 0xa0]
mov rax, rbp
mov ebp, dword [rbp + 0xa4]
mov r15d, dword [rax + 0xa8]
mov edi, dword [rax + 0xac]
mov rax, qword [rsi]
cmp rax, r13
je 0x1400a0d05
test rax, rax
je 0x1400a0d05
mov rax, qword [rsi + 8]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], ecx
mov word [rsp + 0x40], dx
mov r13d, r8d
call sub.kernel32.dll_GetProcessHeap
mov rcx, rax
xor edx, edx
mov r8, qword [rsp + 0x38]
call sub.kernel32.dll_HeapFree
mov r8d, r13d
movzx edx, word [rsp + 0x40]
mov ecx, dword [rsp + 0x30]
mov qword [rsi], rbx
mov qword [rsi + 8], r14
mov qword [rsi + 0x10], rbx
mov dword [rsi + 0x18], r12d
mov dword [rsi + 0x1c], ebp
mov dword [rsi + 0x20], r15d
mov dword [rsi + 0x24], edi
mov word [rsi + 0x28], dx
mov word [rsi + 0x2a], r8w
movups xmmword [rsi + 0x2c], xmm6
mov dword [rsi + 0x3c], ecx
jmp 0x1400a16d2
mov rax, qword [rsp + 0x250]
mov qword [rsp + 0xd0], rax
movups xmm0, xmmword [rsp + 0x240]
movaps xmmword [rsp + 0xc0], xmm0
movups xmm0, xmmword [rsp + 0x200]
movups xmm1, xmmword [rsp + 0x210]
movups xmm2, xmmword [rsp + 0x220]
movups xmm3, xmmword [rsp + 0x230]
movaps xmmword [rsp + 0xb0], xmm3
movaps xmmword [rsp + 0xa0], xmm2
movaps xmmword [rsp + 0x90], xmm1
movaps xmmword [rsp + 0x80], xmm0
movzx eax, byte [0x1401aa178]
mov edx, 0x70
xor ecx, ecx
call fcn.14011ab20
test rax, rax
je 0x1400a1797
mov qword [rax + 0x58], 1
lea rcx, [0x1401830d0]
mov qword [rax + 0x60], rcx
mov word [rax + 0x68], 0
movaps xmm0, xmmword [rsp + 0x80]
movdqa xmm1, xmmword [rsp + 0x90]
movaps xmm2, xmmword [rsp + 0xa0]
movaps xmm3, xmmword [rsp + 0xb0]
movups xmmword [rax], xmm0
movdqu xmmword [rax + 0x10], xmm1
movups xmmword [rax + 0x20], xmm2
movups xmmword [rax + 0x30], xmm3
movdqa xmm0, xmmword [rsp + 0xc0]
movdqu xmmword [rax + 0x40], xmm0
mov rcx, qword [rsp + 0xd0]
mov qword [rax + 0x50], rcx
mov rcx, qword [rsp + 0x60]
mov qword [rcx], 3
mov qword [rcx + 8], rax
jmp 0x1400a14c9
mov rax, qword [rsp + 0x60]
mov qword [rax], 4
jmp 0x1400a16fb
test rsi, rsi
je 0x1400a0ea8
mov rsi, qword [rsp + 0x3e8]
jmp 0x1400a0e96
mov rax, qword [rsp + 0x190]
test rax, rax
je 0x1400a14db
lea rcx, [rsp + 0x1a8]
mov rdx, qword [rsp + 0x198]
mov r8, qword [rsp + 0x1a0]
call qword [rax + 0x20]
jmp 0x1400a150b
cmp rax, 1
jne 0x1400a137b
cmp qword [rsp + 0x200], 0
je 0x1400a0ea8
mov rsi, qword [rsp + 0x208]
call sub.kernel32.dll_GetProcessHeap
mov rcx, rax
xor edx, edx
mov r8, rsi
call sub.kernel32.dll_HeapFree
mov rsi, qword [rbp + 0x98]
test rsi, rsi
js 0x1400a1752
mov r14, qword [rbp + 0x90]
je 0x1400a0ee0
movzx eax, byte [0x1401aa178]
xor ecx, ecx
mov rdx, rsi
call fcn.14011ab20
test rax, rax
je 0x1400a178a
mov rbx, rax
jmp 0x1400a0ee5
mov ebx, 1
mov rcx, rbx
mov rdx, r14
mov r8, rsi
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
movups xmm6, xmmword [rbp + 0xb4]
mov rax, qword [rsp + 0x78]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x80], xmm0
movzx eax, byte [rax + 0x10]
mov byte [rsp + 0x90], al
movzx ecx, word [rbp + 0xb0]
movzx edx, word [rbp + 0xb2]
mov r12d, dword [rbp + 0xc4]
mov r8d, dword [rbp + 0xa0]
mov r9d, dword [rbp + 0xa4]
mov r10d, dword [rbp + 0xa8]
mov r11d, dword [rbp + 0xac]
mov r14, qword [rbp + 0x140]
mov qword [rbp + 0x140], 0
mov r15, qword [rbp + 0xf8]
mov ebp, dword [rbp + 0x100]
movzx eax, byte [0x1401aa178]
test r14, r14
mov word [rsp + 0x30], cx
mov word [rsp + 0x40], dx
mov dword [rsp + 0x38], r8d
mov dword [rsp + 0x1b0], r9d
mov dword [rsp + 0x78], r10d
mov dword [rsp + 0x1f8], r11d
je 0x1400a0fd8
cmp ebp, 0x3b9aca00
jne 0x1400a101b
mov edx, 0x18
xor ecx, ecx
call fcn.14011ab20
test rax, rax
je 0x1400a19be
mov rdi, rax
mov rax, qword [rsp + 0x28]
mov qword [rdi], rax
lea rax, [0x140184ae0]
mov qword [rdi + 8], rax
mov qword [rdi + 0x10], r14
lea r13, [0x140184b70]
jmp 0x1400a10b8
cmp ebp, 0x3b9aca00
jne 0x1400a106e
mov edx, 0x10
xor ecx, ecx
call fcn.14011ab20
test rax, rax
je 0x1400a19f3
mov rdi, rax
mov rax, qword [rsp + 0x28]
mov qword [rdi], rax
lea rax, [0x140184ae0]
mov qword [rdi + 8], rax
lea r13, [0x140184b10]
jmp 0x1400a10b8
mov edx, 0xa0
xor ecx, ecx
call fcn.14011ab20
test rax, rax
je 0x1400a19cd
mov rdi, rax
mov qword [rax], 2
mov qword [rax + 0x78], r15
mov dword [rax + 0x80], ebp
mov rax, qword [rsp + 0x28]
mov qword [rdi + 0x88], rax
lea rax, [0x140184ae0]
mov qword [rdi + 0x90], rax
mov qword [rdi + 0x98], r14
lea r13, [0x140184ba0]
jmp 0x1400a10b8
mov edx, 0x98
xor ecx, ecx
call fcn.14011ab20
test rax, rax
je 0x1400a1a02
mov rdi, rax
mov qword [rax], 2
mov qword [rax + 0x78], r15
mov dword [rax + 0x80], ebp
mov rax, qword [rsp + 0x28]
mov qword [rdi + 0x88], rax
lea rax, [0x140184ae0]
mov qword [rdi + 0x90], rax
lea r13, fcn.1400b00c0
movzx eax, byte [0x1401aa178]
mov edx, 0x58
xor ecx, ecx
call fcn.14011ab20
test rax, rax
je 0x1400a19a0
mov qword [rax], rsi
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov ecx, dword [rsp + 0x38]
mov dword [rax + 0x18], ecx
mov ecx, dword [rsp + 0x1b0]
mov dword [rax + 0x1c], ecx
mov ecx, dword [rsp + 0x78]
mov dword [rax + 0x20], ecx
mov ecx, dword [rsp + 0x1f8]
mov dword [rax + 0x24], ecx
movzx ecx, word [rsp + 0x30]
mov word [rax + 0x28], cx
movzx ecx, word [rsp + 0x40]
mov word [rax + 0x2a], cx
movups xmmword [rax + 0x2c], xmm6
mov dword [rax + 0x3c], r12d
movzx ecx, byte [rsp + 0x90]
mov byte [rax + 0x50], cl
movaps xmm0, xmmword [rsp + 0x80]
movups xmmword [rax + 0x40], xmm0
movaps xmm0, xmmword [rsp + 0x5e0]
movaps xmm1, xmmword [rsp + 0x5f0]
movaps xmm2, xmmword [rsp + 0x600]
movaps xmm3, xmmword [rsp + 0x610]
mov rcx, qword [rsp + 0x60]
movups xmmword [rcx], xmm0
movups xmmword [rcx + 0x10], xmm1
movups xmmword [rcx + 0x20], xmm2
movups xmmword [rcx + 0x30], xmm3
movaps xmm0, xmmword [rsp + 0x620]
movups xmmword [rcx + 0x40], xmm0
movaps xmm0, xmmword [rsp + 0x630]
movups xmmword [rcx + 0x50], xmm0
movaps xmm0, xmmword [rsp + 0x640]
movups xmmword [rcx + 0x60], xmm0
mov qword [rcx + 0x70], rdi
mov qword [rcx + 0x78], r13
mov qword [rcx + 0x80], rax
jmp 0x1400a16fb
lea rsi, [rsp + 0x80]
mov rcx, rsi
mov rdx, r14
mov r8, rbx
call fcn.1400076e0
movzx eax, byte [rsp + 0x250]
mov byte [rsp + 0xd0], al
movups xmm0, xmmword [rsp + 0x240]
movups xmmword [rsp + 0xc0], xmm0
mov eax, dword [rsp + 0x228]
mov ecx, dword [rsp + 0x23c]
movups xmm0, xmmword [rsp + 0x218]
movups xmm1, xmmword [rsp + 0x22c]
movups xmmword [rsp + 0xac], xmm1
mov dword [rsp + 0xa8], eax
mov dword [rsp + 0xbc], ecx
movups xmmword [rsp + 0x98], xmm0
mov rcx, rsi
call fcn.14008e190
mov rcx, qword [rsp + 0x250]
mov qword [rsp + 0xd0], rcx
movups xmm0, xmmword [rsp + 0x240]
movaps xmmword [rsp + 0xc0], xmm0
movdqu xmm0, xmmword [rsp + 0x200]
movdqu xmm1, xmmword [rsp + 0x210]
movups xmm2, xmmword [rsp + 0x220]
movups xmm3, xmmword [rsp + 0x230]
movaps xmmword [rsp + 0xb0], xmm3
movaps xmmword [rsp + 0xa0], xmm2
movdqa xmmword [rsp + 0x90], xmm1
movdqa xmmword [rsp + 0x80], xmm0
mov cx, 2
mov rdx, rax
call fcn.14008de90
mov rsi, rax
lea rdx, [rsp + 0x80]
mov rcx, rax
call fcn.14008df30
mov rax, qword [rsp + 0x60]
mov qword [rax], 3
mov qword [rax + 8], rsi
jmp 0x1400a14c9
mov rax, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x60]
mov qword [rcx], 3
mov qword [rcx + 8], rax
cmp qword [rsp + 0x340], 0
je 0x1400a12ec
mov rsi, qword [rsp + 0x338]
call sub.kernel32.dll_GetProcessHeap
mov rcx, rax
xor edx, edx
mov r8, rsi
call sub.kernel32.dll_HeapFree
mov rsi, qword [rsp + 0x310]
mov rdx, qword [rsp + 0x318]
mov rcx, rsi
call fcn.14008ad40
mov rcx, qword [rsp + 0x308]
mov rdx, rsi
call fcn.14001b410
mov rsi, qword [rsp + 0x328]
mov rbx, qword [rsp + 0x330]
test rbx, rbx
je 0x1400a134b
lea rdi, [rsi + 0x38]
nop dword [rax]
mov rax, qword [rdi - 0x18]
mov rdx, qword [rdi - 0x10]
mov r8, qword [rdi - 8]
mov rcx, rdi
call qword [rax + 0x20]
add rdi, 0x48
dec rbx
jne 0x1400a1330
mov rcx, qword [rsp + 0x320]
mov rdx, rsi
call fcn.14001b410
jmp 0x1400a14c9
mov qword [rsp + 0x3e8], 1
lea rax, [0x1401888e8]
mov qword [rsp + 0x3f0], rax
movups xmm6, xmmword [rsp + 0x3e8]
mov rsi, qword [rbp + 0x98]
test rsi, rsi
js 0x1400a1752
mov r14, qword [rbp + 0x90]
je 0x1400a13bb
movzx eax, byte [0x1401aa178]
xor ecx, ecx
mov rdx, rsi
call fcn.14011ab20
test rax, rax
je 0x1400a178a
mov rbx, rax
jmp 0x1400a13c0
mov ebx, 1
mov rcx, rbx
mov rdx, r14
mov r8, rsi
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
movups xmm7, xmmword [rbp + 0xb4]
mov rax, qword [rsp + 0x78]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x80], xmm0
movzx eax, byte [rax + 0x10]
mov byte [rsp + 0x90], al
movzx r14d, word [rbp + 0xb0]
movzx r15d, word [rbp + 0xb2]
mov eax, dword [rbp + 0xc4]
mov dword [rsp + 0x30], eax
mov r12d, dword [rbp + 0xa0]
mov r13d, dword [rbp + 0xa4]
mov rax, rbp
mov ebp, dword [rbp + 0xa8]
mov edi, dword [rax + 0xac]
movzx eax, byte [0x1401aa178]
mov edx, 0x70
xor ecx, ecx
call fcn.14011ab20
test rax, rax
je 0x1400a1797
movups xmmword [rax + 0x58], xmm6
mov word [rax + 0x68], 2
mov qword [rax], rsi
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov dword [rax + 0x18], r12d
mov dword [rax + 0x1c], r13d
mov dword [rax + 0x20], ebp
mov dword [rax + 0x24], edi
mov word [rax + 0x28], r14w
mov word [rax + 0x2a], r15w
movups xmmword [rax + 0x2c], xmm7
mov ecx, dword [rsp + 0x30]
mov dword [rax + 0x3c], ecx
movdqa xmm0, xmmword [rsp + 0x80]
movdqu xmmword [rax + 0x40], xmm0
movzx ecx, byte [rsp + 0x90]
mov byte [rax + 0x50], cl
mov rcx, qword [rsp + 0x60]
mov qword [rcx], 3
mov qword [rcx + 8], rax
cmp qword [rsp + 0x200], 0
je 0x1400a14c9
mov rsi, qword [rsp + 0x208]
call sub.kernel32.dll_GetProcessHeap
mov rcx, rax
xor edx, edx
mov r8, rsi
call sub.kernel32.dll_HeapFree
lea rcx, [rsp + 0x5e0]
call fcn.1400a2390
jmp 0x1400a16fb
mov rsi, qword [rsp + 0x198]
mov rdi, qword [rsp + 0x1a0]
mov rax, qword [rdi]
test rax, rax
je 0x1400a14f8
mov rcx, rsi
call rax
cmp qword [rdi + 8], 0
je 0x1400a150b
mov rdx, qword [rdi + 0x10]
mov rcx, rsi
call fcn.140006a60
movzx esi, byte [rsp + 0x229]
cmp sil, 3
jne 0x1400a151d
xor ebx, ebx
jmp 0x1400a157e
movzx eax, byte [0x1401aa178]
mov edx, 0x38
xor ecx, ecx
call fcn.14011ab20
test rax, rax
je 0x1400a19af
mov rbx, rax
lea rax, [rsp + 0x22a]
movups xmm0, xmmword [rsp + 0x219]
movups xmmword [rbx + 0x19], xmm0
movdqa xmm0, xmmword [rsp + 0x200]
movdqa xmm1, xmmword [rsp + 0x210]
movdqu xmmword [rbx + 0x10], xmm1
movdqu xmmword [rbx], xmm0
mov byte [rbx + 0x29], sil
mov rcx, qword [rax]
mov rax, qword [rax + 6]
mov qword [rbx + 0x2a], rcx
mov qword [rbx + 0x30], rax
movzx eax, byte [0x1401aa178]
mov edx, 0x70
xor ecx, ecx
call fcn.14011ab20
test rax, rax
je 0x1400a1797
mov rsi, rax
movabs rax, 0x8000000000000000
mov qword [rsi], rax
mov qword [rsi + 0x58], rbx
lea rax, str.0u_t_
mov qword [rsi + 0x60], rax
mov word [rsi + 0x68], 1
mov rbx, qword [rbp + 0x98]
test rbx, rbx
js 0x1400a1752
mov r15, qword [rbp + 0x90]
je 0x1400a15f7
movzx eax, byte [0x1401aa178]
xor ecx, ecx
mov rdx, rbx
call fcn.14011ab20
test rax, rax
je 0x1400a18ad
mov r14, rax
jmp 0x1400a15fd
mov r14d, 1
mov rcx, r14
mov rdx, r15
mov r8, rbx
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
movups xmm6, xmmword [rbp + 0xb4]
mov rcx, qword [rsp + 0x78]
movzx eax, byte [rcx + 0x10]
mov byte [rsp + 0x90], al
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0x80], xmm0
movzx r8d, word [rbp + 0xb0]
movzx r12d, word [rbp + 0xb2]
mov edx, dword [rbp + 0xc4]
mov r13d, dword [rbp + 0xa0]
mov rax, rbp
mov ebp, dword [rbp + 0xa4]
mov r15d, dword [rax + 0xa8]
mov edi, dword [rax + 0xac]
mov rax, qword [rsi]
movabs rcx, 0x8000000000000000
cmp rax, rcx
je 0x1400a16a8
test rax, rax
je 0x1400a16a8
mov rax, qword [rsi + 8]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], edx
mov word [rsp + 0x40], r8w
call sub.kernel32.dll_GetProcessHeap
mov rcx, rax
xor edx, edx
mov r8, qword [rsp + 0x38]
call sub.kernel32.dll_HeapFree
movzx r8d, word [rsp + 0x40]
mov edx, dword [rsp + 0x30]
mov qword [rsi], rbx
mov qword [rsi + 8], r14
mov qword [rsi + 0x10], rbx
mov dword [rsi + 0x18], r13d
mov dword [rsi + 0x1c], ebp
mov dword [rsi + 0x20], r15d
mov dword [rsi + 0x24], edi
mov word [rsi + 0x28], r8w
mov word [rsi + 0x2a], r12w
movups xmmword [rsi + 0x2c], xmm6
mov dword [rsi + 0x3c], edx
movdqa xmm0, xmmword [rsp + 0x80]
movdqu xmmword [rsi + 0x40], xmm0
movzx eax, byte [rsp + 0x90]
mov byte [rsi + 0x50], al
mov rax, qword [rsp + 0x60]
mov qword [rax], 3
mov qword [rax + 8], rsi
movaps xmm6, xmmword [rsp + 0x6e0]
movaps xmm7, xmmword [rsp + 0x6f0]
movaps xmm8, xmmword [rsp + 0x700]
movaps xmm9, xmmword [rsp + 0x710]
movaps xmm10, xmmword [rsp + 0x720]
add rsp, 0x738
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, str.assertion_failed:_self.is_char_boundary_new_len_
lea r8, str.C:UsersUser.rustup_toolchains_nightly_x86_64_pc_windows_gnulib_rustlib_src_rustlibrary_alloc_src_string.rs
mov edx, 0x30
call fcn.14000a990
lea rcx, str.library_alloc_src_slice.rs
call fcn.140006e30
lea rax, str.C:UsersUser.cargo_registry_srcindex.crates.io_6f17d22bba15001furl_2.5.4_srclib.rs
mov qword [rsp + 0x20], rax
mov rcx, r14
mov rdx, rbx
xor r8d, r8d
mov r9, rsi
call fcn.14000ded0
mov ecx, 8
mov edx, 0x28
call fcn.140006e69
mov ecx, 1
mov rdx, rsi
call fcn.140006e69
mov ecx, 8
mov edx, 0x70
call fcn.140006e69
lea r8, str.C:UsersUser.cargo_registry_srcindex.crates.io_6f17d22bba15001fhttp_1.1.0_srcheadermap.rs
mov rcx, r14
mov rdx, rdi
call fcn.140009a70
movzx ebx, byte [rsp + 0x3e8]
movzx edi, byte [rsp + 0x3e9]
mov rax, qword [rsp + 0x80]
test rax, rax
jne 0x1400a18ba
mov rsi, qword [rsp + 0x88]
mov r14, qword [rsp + 0x90]
mov rax, qword [r14]
test rax, rax
je 0x1400a17f6
mov rcx, rsi
call rax
cmp qword [r14 + 8], 0
je 0x1400a18d5
mov rdx, qword [r14 + 0x10]
mov rcx, rsi
call fcn.140006a60
jmp 0x1400a18d5
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x3e0], rax
lea rax, [0x140184288]
mov qword [rsp + 0x20], rax
lea rcx, str.URL_was_already_validated_as_URI
lea r9, [0x140183920]
lea r8, [rsp + 0x3e0]
mov edx, 0x20
call fcn.14000bd90
movq rdi, xmm10
test r14, r14
jne 0x1400a18ed
mov rax, qword [rdi]
test rax, rax
je 0x1400a1869
mov rcx, rsi
call rax
cmp qword [rdi + 8], 0
je 0x1400a18ff
mov rdx, qword [rdi + 0x10]
mov rcx, rsi
call fcn.140006a60
jmp 0x1400a18ff
lea r9, str.C:UsersUser.cargo_registry_srcindex.crates.io_6f17d22bba15001furl_2.5.4_srclib.rs
mov qword [rsp + 0x20], r9
mov r9, rax
call fcn.14000ded0
lea rax, str.C:UsersUser.cargo_registry_srcindex.crates.io_6f17d22bba15001furl_2.5.4_srclib.rs
mov qword [rsp + 0x20], rax
mov rcx, rdx
mov rdx, r10
call fcn.14000ded0
mov ecx, 1
mov rdx, rbx
call fcn.140006e69
lea rcx, [rsp + 0x98]
mov rdx, qword [rsp + 0x88]
mov r8, qword [rsp + 0x90]
call qword [rax + 0x20]
mov byte [rsp + 0x80], bl
mov byte [rsp + 0x81], dil
lea rax, [0x1401842a0]
jmp 0x1400a1915
lea rcx, [rsp + 0x98]
mov rdx, rsi
mov r8, rdi
call qword [r14 + 0x20]
mov byte [rsp + 0x80], bl
mov byte [rsp + 0x81], bpl
lea rax, [0x1401843d0]
mov qword [rsp + 0x20], rax
lea rcx, str.valid_request_parts
lea r9, [0x140183900]
lea r8, [rsp + 0x80]
mov edx, 0x13
call fcn.14000bd90
lea rax, str.C:UsersUser.cargo_registry_srcindex.crates.io_6f17d22bba15001furl_2.5.4_srclib.rs
mov qword [rsp + 0x20], rax
xor r8d, r8d
call fcn.14000ded0
lea rax, str.C:UsersUser.cargo_registry_srcindex.crates.io_6f17d22bba15001fhttp_1.1.0_srcheadermap.rs
mov qword [rsp + 0x20], rax
lea rcx, str.size_overflows_MAX_SIZE
lea r9, [0x1401838c0]
lea r8, [rsp + 0x530]
mov edx, 0x17
call fcn.14000bd90
mov ecx, 8
mov edx, 0x20
call fcn.140006e69
lea rax, str.C:UsersUser.cargo_registry_srcindex.crates.io_6f17d22bba15001furl_2.5.4_srclib.rs
mov qword [rsp + 0x20], rax
mov rcx, rdx
mov rdx, r9
call fcn.14000ded0
mov ecx, 8
mov edx, 0x58
call fcn.140006e69
mov ecx, 8
mov edx, 0x38
call fcn.140006e69
mov ecx, 8
mov edx, 0x18
call fcn.140006e69
mov ecx, 8
mov edx, 0xa0
call fcn.140006e69
lea rax, str.C:UsersUser.cargo_registry_srcindex.crates.io_6f17d22bba15001furl_2.5.4_srclib.rs
mov qword [rsp + 0x20], rax
mov rdx, rsi
xor r8d, r8d
call fcn.14000ded0
mov ecx, 8
mov edx, 0x10
call fcn.140006e69
mov ecx, 8
mov edx, 0x98
call fcn.140006e69
lea r8, str.C:UsersUser.cargo_registry_srcindex.crates.io_6f17d22bba15001fhttp_1.1.0_srcheadermap.rs
mov rcx, r14
mov rdx, rdi
call fcn.140009a70
int3