Function at 0x468790
Capabilities:
Encode data using base64

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x428
movaps xmmword [rsp + 0x410], xmm8
movaps xmmword [rsp + 0x400], xmm7
movdqa xmmword [rsp + 0x3f0], xmm6
mov qword [rsp + 0xe8], r8
mov qword [rsp + 0x48], rdx
mov qword [rsp + 0x1f8], r9
mov qword [rsp + 0x228], 0
mov qword [rsp + 0x50], rcx
mov rax, qword [rcx + 0x20]
mov r8, qword [rax + 0xa8]
test r8, r8
je 0x468822
mov rcx, qword [rax + 0xa0]
mov rdx, r8
shl rdx, 5
dec r8
movabs r9, 0x7ffffffffffffff
and r9, r8
cmp r9, 4
jae 0x46882a
xor r10d, r10d
mov r8, rcx
jmp 0x4688cd
xor r10d, r10d
jmp 0x4688e9
inc r9
mov r8d, r9d
and r8d, 3
mov r10d, 4
cmovne r10, r8
sub r9, r10
mov r8, r9
shl r8, 5
add r8, rcx
lea r10, [rcx + 0x68]
pxor xmm0, xmm0
movdqa xmm2, xmmword [0x006769e0]
movdqa xmm3, xmmword [0x006769f0]
pxor xmm1, xmm1
nop word [rax + rax]
movd xmm4, dword [r10 - 0x40]
movd xmm5, dword [r10 - 0x60]
punpckldq xmm5, xmm4
movd xmm4, dword [r10]
movd xmm6, dword [r10 - 0x20]
punpckldq xmm6, xmm4
pshufd xmm4, xmm5, 0xd4
pcmpeqd xmm4, xmm2
pand xmm4, xmm3
paddq xmm0, xmm4
pshufd xmm4, xmm6, 0xd4
pcmpeqd xmm4, xmm2
pand xmm4, xmm3
paddq xmm1, xmm4
sub r10, 0xffffffffffffff80
add r9, 0xfffffffffffffffc
jne 0x468870
paddq xmm1, xmm0
pshufd xmm0, xmm1, 0xee
paddq xmm0, xmm1
movq r10, xmm0
add rcx, rdx
xor edx, edx
cmp dword [r8 + 8], 2
lea r9, [r8 + 0x20]
sete dl
add r10, rdx
mov r8, r9
cmp r9, rcx
jne 0x4688d0
mov qword [rsp + 0x298], r10
mov rcx, qword [rsp + 0x50]
add rcx, 0x20
mov qword [rsp + 0x58], rcx
mov rcx, qword [rax + 0x88]
imul rax, qword [rax + 0x90], 0x228
nop word cs:[rax + rax]
mov rdx, rax
test rax, rax
je 0x46893f
test byte [rcx + 0x219], 0x40
lea rcx, [rcx + 0x228]
lea rax, [rdx - 0x228]
je 0x468920
mov qword [rsp + 0x3b8], rdx
mov rax, qword [rsp + 0x50]
lea rcx, [rax + 0x18]
mov qword [rsp + 0x320], rcx
add rax, 0x10
mov qword [rsp + 0x318], rax
mov rax, qword [rsp + 0x48]
lea rax, [rax + 0x20]
mov qword [rsp + 0x328], rax
mov eax, 1
mov qword [rsp + 0x68], rax
lea rax, str._usr_local_cargo_registry_src_index.crates.io_6f17d22bba15001f_clap_4.0.3_src_parser_parser.rs
mov qword [rsp + 0x308], rax
lea rax, [0x00679478]
mov qword [rsp + 0x310], rax
mov eax, 0
mov qword [rsp + 0x178], rax
xor esi, esi
mov dword [rsp + 0x168], 0
nop word [rax + rax]
mov rdx, qword [rsp + 0xe8]
lea rcx, [rsp + 0x3c0]
lea r8, [rsp + 0x1f8]
call fcn.004958b0
cmp dword [rsp + 0x3c0], 2
mov qword [rsp + 0x170], rsi
je 0x46b573
movdqu xmm0, xmmword [rsp + 0x3c0]
movdqu xmm1, xmmword [rsp + 0x3d0]
movdqu xmm2, xmmword [rsp + 0x3e0]
movdqa xmmword [rsp + 0x2d0], xmm2
movdqa xmmword [rsp + 0x2c0], xmm1
movdqa xmmword [rsp + 0x2b0], xmm0
lea rcx, [rsp + 0xf0]
lea rdx, [rsp + 0x2b0]
call fcn.00496420
cmp qword [rsp + 0xf0], 0
jne 0x468a59
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0xe0], rax
mov rax, qword [rsp + 0x58]
mov r12, qword [rax]
jne 0x468ba0
mov rdi, qword [rsp + 0xf8]
test rdi, rdi
je 0x468ba0
mov rbx, qword [r12 + 0xc0]
test rbx, rbx
je 0x468ba0
mov r15, qword [r12 + 0xb8]
shl rbx, 4
mov r13d, 0x10
xor ebp, ebp
xor esi, esi
jmp 0x468ac4
add r13, 0x18
add rbp, 0x10
inc rsi
cmp rbx, rbp
je 0x468ba0
mov rax, qword [rsp + 0xe0]
cmp qword [r15 + rbp + 8], rax
jne 0x468ab0
mov rcx, qword [r15 + rbp]
mov rdx, rdi
mov r8, qword [rsp + 0xe0]
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x468ab0
mov rdx, qword [r12 + 0xd8]
cmp rsi, rdx
jae 0x46cdac
mov rax, qword [r12 + 0xd0]
mov r15, qword [rax + r13 - 8]
mov rbp, qword [rax + r13]
mov rdi, qword [rsp + 0x1f8]
mov rbx, rbp
shl rbx, 4
lea r13, [r15 + rbx]
mov rax, qword [rsp + 0xe8]
mov rdx, qword [rax + 0x10]
mov r12, rdx
sub r12, rdi
jb 0x46cea7
mov qword [rax + 0x10], rdi
mov rcx, qword [rax + 8]
mov qword [rsp + 0x110], rdi
mov qword [rsp + 0x118], r12
mov qword [rsp + 0x120], rax
mov qword [rsp + 0xf0], r13
mov qword [rsp + 0xf8], r15
lea r8, [0x00679478]
mov qword [rsp + 0x100], r8
mov qword [rsp + 0x108], r8
jne 0x469465
mov rcx, rax
lea rdx, [rsp + 0xf0]
call fcn.0044e080
jmp 0x46a7ec
test byte [rsp + 0x168], 1
jne 0x46a9c4
movabs rax, 0x10000000000
test qword [r12 + 0x240], rax
jne 0x468beb
mov rax, qword [r12 + 0x248]
movabs rcx, 0x10000000000
and rax, rcx
jne 0x468beb
mov rax, qword [rsp + 0x170]
add rax, 0xfffffffffffffffd
cmp rax, 0xfffffffffffffffe
jae 0x468c2a
lea rcx, [rsp + 0xf0]
lea rdx, [rsp + 0x2b0]
call fcn.00496420
cmp byte [rsp + 0x178], 0
setne r8b
mov rcx, qword [rsp + 0x50]
lea rdx, [rsp + 0xf0]
call fcn.0046f610
mov rsi, rax
test rax, rax
jne 0x46b672
lea rcx, [rsp + 0x2b0]
call fcn.00495c30
test al, al
je 0x468cd0
mov rsi, qword [rsp + 0x170]
cmp rsi, 2
je 0x468f15
cmp rsi, 1
jne 0x468f86
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax]
mov rax, qword [rcx + 0x90]
test rax, rax
je 0x46cdda
mov rsi, qword [rcx + 0x88]
imul rdi, rax, 0x228
xor ebx, ebx
jmp 0x468ca0
add rbx, 0x228
cmp rdi, rbx
je 0x46cdda
cmp qword [rsi + rbx + 0x28], r14
jne 0x468c90
mov rcx, qword [rsi + rbx + 0x20]
mov rdx, qword [rsp + 0xd8]
mov r8, r14
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x468c90
jmp 0x468f70
lea rcx, [rsp + 0x338]
lea rdx, [rsp + 0x2b0]
call fcn.00495cf0
mov rsi, qword [rsp + 0x338]
cmp rsi, 2
jne 0x468e60
lea rcx, [rsp + 0x240]
lea rdx, [rsp + 0x2b0]
call fcn.00496080
cmp qword [rsp + 0x250], 0
je case.0x46a9a8.5
mov rax, qword [rsp + 0x270]
mov qword [rsp + 0x3b0], rax
movdqu xmm0, xmmword [rsp + 0x240]
movdqu xmm1, xmmword [rsp + 0x250]
movdqu xmm2, xmmword [rsp + 0x260]
movdqa xmmword [rsp + 0x3a0], xmm2
movdqa xmmword [rsp + 0x390], xmm1
movdqa xmmword [rsp + 0x380], xmm0
mov rax, qword [rsp + 0x170]
cmp rax, 1
je 0x4694fa
cmp rax, 2
jne 0x4695d1
mov rax, qword [rsp + 0x58]
mov rdi, qword [rax]
mov rax, qword [rdi + 0x90]
test rax, rax
je 0x46cdec
mov rsi, qword [rdi + 0x88]
imul rbx, rax, 0x228
xor r15d, r15d
jmp 0x468dc0
add r15, 0x228
cmp rbx, r15
je 0x46cdec
cmp qword [rsi + r15 + 0x28], r14
jne 0x468db0
mov rcx, qword [rsi + r15 + 0x20]
mov rdx, qword [rsp + 0xd8]
mov r8, r14
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x468db0
test byte [rsi + r15 + 0x219], 0x10
jne case.0x46a9a8.5
xor r15d, r15d
jmp 0x468e10
add r15, 0x228
cmp rbx, r15
je 0x46cdf5
cmp qword [rsi + r15 + 0x28], r14
jne 0x468e00
mov rcx, qword [rsi + r15 + 0x20]
mov rdx, qword [rsp + 0xd8]
mov r8, r14
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x468e00
test byte [rsi + r15 + 0x218], 0x40
je 0x4695d9
lea rcx, [rsp + 0x380]
call fcn.004965c0
jmp 0x4695c8
mov rax, qword [rsp + 0x340]
mov qword [rsp + 0x60], rax
mov rbp, qword [rsp + 0x348]
mov r12, qword [rsp + 0x350]
mov rax, qword [rsp + 0x358]
mov qword [rsp + 0x1d8], rax
mov rax, qword [rsp + 0x170]
cmp rax, 2
je 0x468fb4
cmp rax, 1
jne 0x46901f
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax]
mov rax, qword [rcx + 0x90]
test rax, rax
je 0x46cde3
mov rdi, qword [rcx + 0x88]
imul rbx, rax, 0x228
xor r15d, r15d
jmp 0x468ef0
add r15, 0x228
cmp rbx, r15
je 0x46cde3
cmp qword [rdi + r15 + 0x28], r14
jne 0x468ee0
mov rcx, qword [rdi + r15 + 0x20]
mov rdx, qword [rsp + 0xd8]
mov r8, r14
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x468ee0
jmp 0x469010
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax]
mov rax, qword [rcx + 0x90]
test rax, rax
je 0x46cdda
mov rsi, qword [rcx + 0x88]
imul rdi, rax, 0x228
xor ebx, ebx
jmp 0x468f50
add rbx, 0x228
cmp rdi, rbx
je 0x46cdda
cmp qword [rsi + rbx + 0x28], r14
jne 0x468f40
mov rcx, qword [rsi + rbx + 0x20]
mov rdx, qword [rsp + 0xd8]
mov r8, r14
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x468f40
test byte [rsi + rbx + 0x219], 0x10
mov rsi, qword [rsp + 0x170]
jne 0x469e87
mov al, 1
mov dword [rsp + 0x168], eax
mov rcx, qword [rsp + 0x48]
cmp qword [rcx + 0x10], 0
jne 0x46a152
mov rax, qword [rcx + 0x30]
mov qword [rcx + 0x10], 1
mov qword [rcx + 0x18], rax
jmp 0x46a152
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax]
mov rax, qword [rcx + 0x90]
test rax, rax
je 0x46cde3
mov rdi, qword [rcx + 0x88]
imul rbx, rax, 0x228
xor r15d, r15d
jmp 0x468ff0
add r15, 0x228
cmp rbx, r15
je 0x46cde3
cmp qword [rdi + r15 + 0x28], r14
jne 0x468fe0
mov rcx, qword [rdi + r15 + 0x20]
mov rdx, qword [rsp + 0xd8]
mov r8, r14
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x468fe0
test byte [rdi + r15 + 0x219], 0x10
jne case.0x469273.5
test rsi, rsi
jne 0x46bbf9
mov rax, qword [rsp + 0x58]
mov r15, qword [rax]
mov rsi, qword [r15 + 0xa8]
test rsi, rsi
mov qword [rsp + 0x1d0], r12
je 0x4690b4
mov rdi, qword [r15 + 0xa0]
shl rsi, 5
xor ebx, ebx
jmp 0x469069
add rbx, 0x20
cmp rsi, rbx
je 0x4690b4
cmp dword [rdi + rbx + 8], 1
jne 0x469060
cmp qword [rdi + rbx + 0x18], rbp
jne 0x469060
mov rcx, qword [rdi + rbx + 0x10]
mov rdx, qword [rsp + 0x60]
mov r8, rbp
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x469060
mov rdx, qword [r15 + 0x90]
mov rsi, qword [rdi + rbx]
cmp rsi, rdx
jae 0x46cda3
imul r12, rsi, 0x228
add r12, qword [r15 + 0x88]
jmp 0x46918d
mov rsi, qword [r15 + 0x248]
or rsi, qword [r15 + 0x240]
bt rsi, 0x2b
mov qword [rsp + 0x2a0], r15
jae 0x469294
mov rax, qword [r15 + 0x90]
test rax, rax
je 0x469294
mov r12, qword [r15 + 0x88]
imul rdi, rax, 0x228
add rdi, r12
jmp 0x469118
add r12, 0x228
cmp r12, rdi
mov r15, qword [rsp + 0x2a0]
je 0x469294
mov rdx, qword [r12]
test rdx, rdx
je 0x469139
cmp qword [r12 + 8], rbp
jb 0x469139
mov rcx, qword [rsp + 0x60]
mov r8, rbp
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x46918d
mov rax, qword [r12 + 0x150]
test rax, rax
je 0x469100
mov rbx, qword [r12 + 0x148]
shl rax, 3
lea r15, [rax + rax*2]
xor r13d, r13d
jmp 0x469169
add r13, 0x18
cmp r15, r13
je 0x469100
cmp rbp, qword [rbx + r13 + 8]
ja 0x469160
mov rdx, qword [rbx + r13]
mov rcx, qword [rsp + 0x60]
mov r8, rbp
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x469160
mov r15, qword [rsp + 0x2a0]
movzx eax, byte [r12 + 0x225]
cmp eax, 7
ja 0x46a32a
mov ecx, 0x83
bt ecx, eax
jae 0x46a32a
mov r9, qword [rsp + 0x1d0]
test r9, r9
setne byte [rsp + 0x38]
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], r12
mov rax, qword [rsp + 0x1d8]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0xf0]
mov rdx, qword [rsp + 0x50]
mov r8b, 1
call fcn.0046fd00
mov rax, qword [rsp + 0xf0]
mov r12, qword [rsp + 0xf8]
cmp rax, 9
je case.default.0x469273
mov rbx, qword [rsp + 0x100]
mov rbp, qword [rsp + 0x108]
lea rcx, [rsp + 0x110]
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0x360], xmm0
mov rcx, qword [rcx + 0x10]
mov qword [rsp + 0x370], rcx
lea rcx, [rsp + 0x100]
movdqu xmm0, xmmword [rcx + 0x28]
movdqa xmmword [rsp + 0x2e0], xmm0
mov rcx, qword [rcx + 0x38]
mov qword [rsp + 0x2f0], rcx
mov cl, 1
mov qword [rsp + 0x178], rcx
lea rdx, [0x0046d5e8]
movsxd rcx, dword [rdx + rax*4]
add rcx, rdx
xor eax, eax
jmp rcx
mov eax, 1
mov cl, 1
mov qword [rsp + 0x178], rcx
mov r14, rbx
mov qword [rsp + 0xd8], r12
jmp 0x46aab6
bt rsi, 0x24
jae 0x469c4b
mov rax, qword [r15 + 0x2a8]
test rax, rax
je 0x469e03
mov r15, qword [r15 + 0x2a0]
imul rax, rax, 0x2e8
add rax, r15
mov qword [rsp + 0x1d8], rax
mov r12d, 8
xor ebx, ebx
xor r13d, r13d
jmp 0x469308
mov r12, r13
add r15, 0x2e8
mov rbx, qword [rsp + 0x70]
mov rax, qword [rsp + 0x78]
cmp r15, qword [rsp + 0x1d8]
mov r13, r12
mov r12, rax
je 0x469d8b
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x78], r12
mov qword [rsp + 0x80], r13
mov qword [rsp + 0x88], r15
mov rdi, qword [r15]
test rdi, rdi
je 0x4692e0
mov rsi, qword [r15 + 8]
cmp rsi, rbp
jb 0x46934b
mov rcx, qword [rsp + 0x60]
mov rdx, rdi
mov r8, rbp
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x46940b
mov qword [rsp + 0x1d0], r12
mov r12, r13
mov rax, qword [r15 + 0x260]
test rax, rax
je 0x4692e3
mov rbx, qword [r15 + 0x258]
lea rax, [rax + rax*2]
lea r13, [rbx + rax*8]
jmp 0x46938d
add rbx, 0x18
cmp rbx, r13
je 0x4692e3
mov rsi, qword [rbx + 8]
cmp rsi, rbp
jb 0x469380
mov rdi, qword [rbx]
mov rcx, qword [rsp + 0x60]
mov rdx, rdi
mov r8, rbp
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x469380
mov rdx, r12
cmp r12, qword [rsp + 0x70]
jne 0x4693d7
mov r8d, 1
lea rcx, [rsp + 0x70]
call fcn.0044c8f0
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x1d0], rax
mov rdx, r12
add rbx, 0x18
mov rax, rdx
shl rax, 4
mov rcx, qword [rsp + 0x1d0]
mov qword [rcx + rax], rdi
mov qword [rcx + rax + 8], rsi
inc rdx
mov r12, rdx
mov qword [rsp + 0x80], rdx
cmp rbx, r13
jne 0x46938d
jmp 0x4692e3
cmp r13, rbx
jne 0x46942a
lea rcx, [rsp + 0x70]
mov rdx, rbx
call fcn.0044c260
mov r12, qword [rsp + 0x78]
mov r13, qword [rsp + 0x80]
mov rax, r13
shl rax, 4
mov qword [r12 + rax], rdi
mov qword [rsp + 0x1d0], r12
mov qword [r12 + rax + 8], rsi
inc r13
mov qword [rsp + 0x80], r13
mov r12, r13
mov rax, qword [r15 + 0x260]
test rax, rax
jne 0x469362
jmp 0x4692e3
test rbp, rbp
je 0x469ddd
mov rsi, qword [rsp + 0xe8]
mov rax, qword [rsi]
sub rax, rdx
cmp rax, rbp
jae 0x469498
mov rcx, rsi
mov r8, rbp
call fcn.0044c820
mov rsi, qword [rsp + 0xe8]
mov rcx, qword [rsi + 8]
mov qword [rsp + 0x1d8], rbp
add rbp, rdi
mov qword [rsp + 0x60], rbp
shl rdi, 5
add rdi, rcx
shl rbp, 5
add rcx, rbp
shl r12, 5
mov rdx, rdi
mov r8, r12
call sub.msvcrt.dll_memmove
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x110], rax
mov rdi, qword [rsi + 0x10]
cmp rdi, rax
jne 0x46a24e
mov rsi, qword [rsp + 0x1d8]
mov eax, 8
cmp r13, r15
jne 0x46a597
jmp 0x46a5c5
mov rax, qword [rsp + 0x58]
mov rdi, qword [rax]
mov rax, qword [rdi + 0x90]
test rax, rax
je 0x46cdec
mov rsi, qword [rdi + 0x88]
imul rbx, rax, 0x228
xor r15d, r15d
jmp 0x469540
add r15, 0x228
cmp rbx, r15
je 0x46cdec
cmp qword [rsi + r15 + 0x28], r14
jne 0x469530
mov rcx, qword [rsi + r15 + 0x20]
mov rdx, qword [rsp + 0xd8]
mov r8, r14
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x469530
test byte [rsi + r15 + 0x219], 0x10
jne case.0x46a9a8.5
xor r15d, r15d
jmp 0x469590
add r15, 0x228
cmp rbx, r15
je 0x46cdf5
cmp qword [rsi + r15 + 0x28], r14
jne 0x469580
mov rcx, qword [rsi + r15 + 0x20]
mov rdx, qword [rsp + 0xd8]
mov r8, r14
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x469580
test byte [rsi + r15 + 0x218], 0x40
je 0x4695d9
lea rcx, [rsp + 0x380]
call fcn.004965c0
test al, al
je 0x4695d9
jmp case.0x46a9a8.5
mov rax, qword [rsp + 0x58]
mov rdi, qword [rax]
mov rax, qword [rdi + 0xa0]
mov rcx, qword [rdi + 0xa8]
mov rdx, rcx
shl rdx, 5
xor r8d, r8d
nop word cs:[rax + rax]
cmp rdx, r8
je 0x469671
mov r9, r8
add r8, 0x20
cmp dword [rax + r9 + 8], 2
jne 0x469600
mov r10, qword [rsp + 0x68]
cmp qword [rax + r9 + 0x10], r10
jne 0x469600
mov rdx, qword [rdi + 0x90]
mov rsi, qword [rax + r8 - 0x20]
cmp rsi, rdx
jae 0x46cda3
mov rdx, qword [rdi + 0x88]
imul r8, rsi, 0x228
test byte [rdx + r8 + 0x218], 0x40
je 0x469671
lea rcx, [rsp + 0x380]
call fcn.004965c0
test al, al
jne case.0x46a9a8.5
mov rax, qword [rdi + 0xa0]
mov rcx, qword [rdi + 0xa8]
shl rcx, 5
xor r8d, r8d
nop dword [rax + rax]
cmp rcx, r8
je 0x4697ab
mov rdx, r8
add r8, 0x20
cmp dword [rax + rdx + 8], 2
jne 0x469680
mov r9, qword [rsp + 0x68]
cmp qword [rax + rdx + 0x10], r9
jne 0x469680
mov rdx, qword [rdi + 0x90]
mov rsi, qword [rax + r8 - 0x20]
cmp rsi, rdx
jae 0x46cda3
mov rax, qword [rdi + 0x88]
imul rcx, rsi, 0x228
mov eax, dword [rax + rcx + 0x218]
mov ecx, 0x5000
and eax, ecx
cmp eax, 0x1000
jne 0x4697ab
mov rax, qword [rsp + 0x3b0]
movdqa xmm0, xmmword [rsp + 0x380]
movdqa xmm1, xmmword [rsp + 0x390]
movdqa xmm2, xmmword [rsp + 0x3a0]
movdqu xmmword [rsp + 0x100], xmm1
movdqu xmmword [rsp + 0x110], xmm2
mov qword [rsp + 0x120], rax
movdqu xmmword [rsp + 0xf0], xmm0
lea rcx, [rsp + 0x70]
lea rdx, [rsp + 0xf0]
call fcn.004967e0
cmp qword [rsp + 0x70], 0
je 0x4697ab
mov rsi, qword [rdi + 0xa0]
mov rdi, qword [rdi + 0xa8]
shl rdi, 5
cmp qword [rsp + 0x78], 0
jne case.0x46a9a8.5
mov eax, dword [rsp + 0x80]
mov rcx, rdi
mov rdx, rsi
nop word [rax + rax]
test rcx, rcx
je case.0x46a9a8.5
mov r8, rdx
add rdx, 0x20
add rcx, 0xffffffffffffffe0
cmp dword [r8 + 8], 0
jne 0x469770
cmp dword [r8 + 0xc], eax
jne 0x469770
lea rcx, [rsp + 0x70]
lea rdx, [rsp + 0xf0]
call fcn.004967e0
cmp qword [rsp + 0x70], 0
jne 0x469751
mov qword [rsp + 0x70], 8
mov rax, qword [rsp + 0x320]
mov rdx, qword [rax]
mov qword [rax], 0
lea rcx, [rsp + 0x380]
call fcn.004964c0
lea rcx, [rsp + 0x360]
lea rdx, [rsp + 0x380]
call fcn.00496600
cmp qword [rsp + 0x360], 0
je 0x46ac08
mov rdx, qword [rsp + 0x368]
mov r8, qword [rsp + 0x370]
test rdx, rdx
jne 0x46ac5b
mov dword [rsp + 0x290], r8d
mov rax, qword [rsp + 0x58]
mov rax, qword [rax]
mov rcx, qword [rax + 0xa0]
mov rdx, qword [rax + 0xa8]
shl rdx, 5
xor r9d, r9d
nop word cs:[rax + rax]
cmp rdx, r9
je 0x469b40
mov r10, r9
add r9, 0x20
cmp dword [rcx + r10 + 8], 0
jne 0x469840
cmp dword [rcx + r10 + 0xc], r8d
jne 0x469840
mov rdx, qword [rax + 0x90]
mov rcx, qword [rcx + r9 - 0x20]
cmp rcx, rdx
jae 0x46cdc9
mov rax, qword [rax + 0x88]
imul rcx, rcx, 0x228
lea r15, [rax + rcx]
movzx eax, byte [rax + rcx + 0x225]
cmp eax, 7
ja 0x4699bd
mov ecx, 0x83
bt ecx, eax
jae 0x4699bd
mov rax, qword [rsp + 0x3b0]
movdqa xmm0, xmmword [rsp + 0x380]
movdqa xmm1, xmmword [rsp + 0x390]
movdqa xmm2, xmmword [rsp + 0x3a0]
movdqu xmmword [rsp + 0x100], xmm1
movdqu xmmword [rsp + 0x110], xmm2
mov qword [rsp + 0x120], rax
movdqu xmmword [rsp + 0xf0], xmm0
lea rcx, [rsp + 0xf0]
call fcn.004966e0
mov rsi, rax
test rax, rax
je 0x46990e
mov rbx, rdx
test rdx, rdx
cmove rsi, rdx
jne 0x46992b
jmp 0x469968
lea rcx, [0x00679478]
xor edx, edx
call fcn.00498ac0
mov rsi, rax
mov rbx, rdx
test rdx, rdx
cmove rsi, rdx
je 0x469968
lea rcx, [rsp + 0xf0]
mov edx, 0x3d
call fcn.004988a0
lea rcx, [rsp + 0xf0]
call fcn.00498860
mov rdi, rdx
cmp rbx, rdx
jb 0x469968
mov rcx, rsi
mov rdx, rax
mov r8, rdi
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x469acb
xor eax, eax
test rax, rax
cmovne rsi, rax
cmovne rbx, rdx
setne byte [rsp + 0x38]
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], rbx
lea rcx, [rsp + 0xf0]
mov rdx, qword [rsp + 0x50]
xor r8d, r8d
mov r9, rsi
call fcn.0046fd00
mov rsi, qword [rsp + 0xf0]
cmp rsi, 3
je 0x469abc
jmp 0x46b37c
mov qword [rsp + 0x1e0], 0
mov qword [rsp + 0x1e8], 8
mov qword [rsp + 0x1f0], 0
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0x1e0]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r15
mov qword [rsp + 0x30], 0
lea rcx, [rsp + 0xf0]
mov rdx, qword [rsp + 0x50]
xor r8d, r8d
mov r9b, 2
call fcn.00470ad0
cmp dword [rsp + 0xf0], 9
add byte [rax], al
or dword [rdi], ecx
test byte [rbx], ch
sbb eax, dword [rax]
invalid
add byte [rax], al
or dword [rdi], ecx
test byte [rbx], ch
sbb eax, dword [rax]
add byte [rax - 0x75], cl
and al, 0x70
mov rax, qword [rsp + 0x70]
cmp rax, 7
ja case.0x469a45.1
lea rcx, [0x0046d60c]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov rdx, qword [rsp + 0x78]
lea rax, [rsp + 0x80]
test rdx, rdx
je case.0x469a45.1
mov rcx, qword [rax]
mov r8d, 1
call fcn.00442170
movups xmm0, xmmword [rsp + 0x130]
movaps xmmword [rsp + 0xb0], xmm0
movdqu xmm0, xmmword [rsp + 0xf0]
movdqu xmm1, xmmword [rsp + 0x100]
movdqu xmm2, xmmword [rsp + 0x110]
movdqu xmm3, xmmword [rsp + 0x120]
movdqa xmmword [rsp + 0xa0], xmm3
movdqa xmmword [rsp + 0x90], xmm2
movdqa xmmword [rsp + 0x80], xmm1
movdqa xmmword [rsp + 0x70], xmm0
mov al, 1
mov qword [rsp + 0x178], rax
jmp 0x4697d3
mov rdx, rbx
sub rdx, rdi
add rdi, rsi
mov rcx, rdi
call fcn.00498ac0
jmp 0x46996a
mov rdx, qword [rsp + 0x78]
test rdx, rdx
je 0x469afe
mov rcx, qword [rsp + 0x80]
mov r8d, 1
call fcn.00442170
mov rdx, qword [rsp + 0x90]
test rdx, rdx
je 0x469b22
mov rcx, qword [rsp + 0x98]
shl rdx, 4
mov r8d, 8
call fcn.00442170
mov rdx, qword [rsp + 0xa8]
lea rax, [rsp + 0xb0]
test rdx, rdx
jne 0x469a59
jmp case.0x469a45.1
mov rcx, qword [rax + 0x2a8]
test rcx, rcx
je 0x469bb8
mov rax, qword [rax + 0x2a0]
imul rcx, rcx, 0x2e8
add rcx, rax
mov edx, dword [rax + 0x2e0]
cmp edx, 0x110000
je 0x469b74
cmp edx, r8d
je 0x469d5e
lea rdx, [rax + 0x2e8]
mov r9, qword [rax + 0x270]
mov r10, qword [rax + 0x278]
shl r10, 3
xor r11d, r11d
cmp r10, r11
je 0x469bb0
lea rsi, [r11 + 8]
cmp dword [r9 + r11], r8d
mov r11, rsi
jne 0x469b90
jmp 0x469d5e
mov rax, rdx
cmp rdx, rcx
jne 0x469b5d
lea rax, [rsp + 0x290]
mov qword [rsp + 0x278], rax
lea rax, [fcn.0053a480]
mov qword [rsp + 0x280], rax
lea rax, [0x00679818]
mov qword [rsp + 0x100], rax
mov qword [rsp + 0x108], 1
mov qword [rsp + 0xf0], 0
lea rax, [rsp + 0x278]
mov qword [rsp + 0x110], rax
mov qword [rsp + 0x118], 1
lea rcx, [rsp + 0x200]
lea rdx, [rsp + 0xf0]
call fcn.0052f740
mov rbp, qword [rsp + 0x200]
movdqu xmm8, xmmword [rsp + 0x208]
mov esi, 7
jmp 0x46a909
mov rax, qword [r15 + 0x2a8]
test rax, rax
je 0x469e03
mov rsi, qword [r15 + 0x2a0]
imul rdi, rax, 0x2e8
add rdi, rsi
jmp 0x469c88
add rsi, 0x2e8
cmp rsi, rdi
mov r15, qword [rsp + 0x2a0]
je 0x469e03
mov rcx, qword [rsi]
test rcx, rcx
je 0x469d00
cmp qword [rsi + 8], rbp
jne 0x469cab
mov rdx, qword [rsp + 0x60]
mov r8, rbp
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x46b5a7
mov rax, qword [rsi + 0x290]
test rax, rax
je 0x469c70
mov rbx, qword [rsi + 0x288]
shl rax, 3
lea r15, [rax + rax*2]
xor r12d, r12d
jmp 0x469cd9
add r12, 0x18
cmp r15, r12
je 0x469c70
cmp qword [rbx + r12 + 8], rbp
jne 0x469cd0
mov rcx, qword [rbx + r12]
mov rdx, qword [rsp + 0x60]
mov r8, rbp
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x469cd0
jmp 0x46b5a7
mov rax, qword [rsi + 0x290]
test rax, rax
je 0x469c70
mov rbx, qword [rsi + 0x288]
shl rax, 3
lea r15, [rax + rax*2]
xor r12d, r12d
jmp 0x469d3d
add r12, 0x18
cmp r15, r12
je 0x469c70
cmp qword [rbx + r12 + 8], rbp
jne 0x469d30
mov rcx, qword [rbx + r12]
mov rdx, qword [rsp + 0x60]
mov r8, rbp
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x469d30
jmp 0x46b5a7
mov rsi, qword [rax + 0x70]
mov rbp, qword [rax + 0x78]
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x48]
call fcn.00470880
test rax, rax
je 0x46a4d4
mov esi, 9
mov rbp, rax
jmp 0x46a909
cmp r13, 1
je 0x46c7b8
test r13, r13
mov r15, qword [rsp + 0x2a0]
je 0x469de9
shl r13, 4
xor esi, esi
jmp 0x469db9
add rsi, 0x10
cmp r13, rsi
je 0x469de9
cmp qword [r12 + rsi + 8], rbp
jne 0x469db0
mov rdi, qword [r12 + rsi]
mov rcx, rdi
mov rdx, qword [rsp + 0x60]
mov r8, rbp
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x469db0
jmp 0x46c7c1
mov eax, 8
xor esi, esi
jmp 0x46a5c5
test rbx, rbx
je 0x469e03
shl rbx, 4
mov r8d, 8
mov rcx, r12
mov rdx, rbx
call fcn.00442170
mov rax, qword [r15 + 0xa0]
mov rcx, qword [r15 + 0xa8]
shl rcx, 5
xor r8d, r8d
nop dword [rax + rax]
cmp rcx, r8
je 0x46b57a
mov rdx, r8
add r8, 0x20
cmp dword [rax + rdx + 8], 2
jne 0x469e20
mov r9, qword [rsp + 0x68]
cmp qword [rax + rdx + 0x10], r9
jne 0x469e20
mov rdx, qword [r15 + 0x90]
mov rsi, qword [rax + r8 - 0x20]
cmp rsi, rdx
jae 0x46cda3
mov rax, qword [r15 + 0x88]
imul rcx, rsi, 0x228
mov eax, dword [rax + rcx + 0x218]
mov ecx, 0x5000
and eax, ecx
cmp eax, 0x1000
jne 0x46b57a
mov rsi, qword [rsp + 0x170]
mov rax, qword [rsp + 0x58]
mov r12, qword [rax]
cmp rsi, 1
jne 0x46a9c4
mov rax, qword [r12 + 0x90]
test rax, rax
je 0x46cdc0
mov rbx, qword [r12 + 0x88]
imul rsi, rax, 0x228
xor r12d, r12d
jmp 0x469ed0
add r12, 0x228
cmp rsi, r12
je 0x46cdc0
cmp qword [rbx + r12 + 0x28], r14
jne 0x469ec0
mov rcx, qword [rbx + r12 + 0x20]
mov rdx, qword [rsp + 0xd8]
mov r8, r14
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x469ec0
lea rcx, [rsp + 0x2b0]
call fcn.004963f0
mov rcx, qword [rbx + r12 + 0x10]
test rcx, rcx
je 0x469f37
mov rdi, rax
mov rsi, rdx
mov rdx, qword [rbx + r12 + 0x18]
call fcn.00498ac0
test rax, rax
je 0x469f37
cmp rdx, rsi
jne 0x469f37
mov rcx, rdi
mov rdx, rax
mov r8, rsi
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x46a18a
mov qword [rsp + 0xf0], 9
mov rax, qword [rsp + 0x48]
cmp dword [rax + 0x10], 2
jne 0x469f86
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0xd8]
mov qword [rax], rcx
mov qword [rax + 8], r14
mov qword [rax + 0x10], 0
mov qword [rax + 0x20], 0
mov qword [rax + 0x28], 8
mov qword [rax + 0x30], 0
mov byte [rax + 0x38], 3
lea rcx, [rsp + 0x2b0]
call fcn.004963f0
lea rsi, [rsp + 0x70]
mov r14, qword [rsp + 0x2a8]
mov r8, rdx
mov rcx, rsi
mov rdx, rax
call fcn.00497e50
movzx eax, byte [rsp + 0x88]
cmp al, 3
je 0x46ce4c
mov rdx, qword [rsp + 0x70]
movdqu xmm0, xmmword [rsp + 0x78]
lea r8, [rsp + 0x89]
mov ecx, dword [r8]
mov r8d, dword [r8 + 3]
mov dword [rsp + 0x240], ecx
mov dword [rsp + 0x243], r8d
cmp al, 2
jne 0x46a02f
movq r8, xmm0
mov rcx, rsi
call fcn.004fcdc0
movdqu xmm0, xmmword [rsp + 0x70]
movdqu xmm1, xmmword [rsp + 0x80]
movdqa xmmword [rsp + 0x190], xmm1
movdqa xmmword [rsp + 0x180], xmm0
mov rax, qword [rsp + 0x48]
mov rdx, qword [rax + 0x30]
cmp rdx, qword [rax + 0x20]
je 0x46a072
mov rsi, qword [rsp + 0x48]
jmp 0x46a088
mov qword [rsp + 0x180], rdx
movdqu xmmword [rsp + 0x188], xmm0
mov byte [rsp + 0x198], al
mov eax, dword [rsp + 0x240]
mov ecx, dword [rsp + 0x243]
lea rdx, [rsp + 0x188]
mov dword [rdx + 0x14], ecx
mov dword [rdx + 0x11], eax
mov rax, qword [rsp + 0x48]
mov rdx, qword [rax + 0x30]
cmp rdx, qword [rax + 0x20]
jne 0x46a028
mov rcx, qword [rsp + 0x328]
call fcn.0044c410
mov rsi, qword [rsp + 0x48]
mov rdx, qword [rsi + 0x30]
mov rax, qword [rsi + 0x28]
mov rcx, rdx
shl rcx, 5
movdqa xmm0, xmmword [rsp + 0x180]
movdqa xmm1, xmmword [rsp + 0x190]
movdqu xmmword [rax + rcx + 0x10], xmm1
movdqu xmmword [rax + rcx], xmm0
inc rdx
mov qword [rsi + 0x30], rdx
mov rcx, qword [rsi + 0x10]
cmp rcx, 2
mov eax, 0
cmove rsi, rax
mov eax, 0
cmp ecx, 2
je 0x46a106
mov r8, qword [rbx + r12 + 0x28]
cmp qword [rsi + 8], r8
jne 0x46a104
mov rdx, qword [rbx + r12 + 0x20]
mov rcx, qword [rsi]
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x46a21f
xor eax, eax
cmp qword [rbx + r12 + 0x1e8], 0
jne 0x46a115
jmp 0x46ce2f
xor eax, eax
cmp qword [rbx + r12 + 0x1e8], 0
je 0x46ce2f
cmp qword [rbx + r12 + 0x1f8], rax
jbe 0x46a130
mov rcx, qword [rbx + r12 + 0x20]
mov r14, qword [rbx + r12 + 0x28]
mov esi, 1
jmp 0x46a13a
xor esi, esi
mov rcx, qword [rsp + 0x330]
mov qword [rsp + 0x2a8], r14
mov qword [rsp + 0x330], rcx
mov qword [rsp + 0xd8], rcx
cmp qword [rsp + 0x2b0], 0
je 0x4689c0
mov rdx, qword [rsp + 0x2b8]
test rdx, rdx
je 0x4689c0
mov rcx, qword [rsp + 0x2c0]
mov r8d, 1
call fcn.00442170
jmp 0x4689c0
mov qword [rsp + 0xf0], 2
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0xf8]
mov qword [rsp + 0x78], rax
movdqu xmm0, xmmword [rsp + 0x100]
movdqu xmm1, xmmword [rsp + 0x110]
movdqu xmm2, xmmword [rsp + 0x120]
movdqu xmm3, xmmword [rsp + 0x130]
movdqa xmmword [rsp + 0x80], xmm0
movdqa xmmword [rsp + 0x90], xmm1
movdqa xmmword [rsp + 0xa0], xmm2
movdqa xmmword [rsp + 0xb0], xmm3
mov rax, qword [rsp + 0x70]
cmp rax, 2
je 0x46a237
cmp rax, 1
jne 0x46cf29
mov rcx, qword [rsp + 0x78]
mov r14, qword [rsp + 0x80]
jmp 0x46a129
mov rax, qword [rsi + 0x30]
cmp qword [rbx + r12 + 0x1e8], 0
jne 0x46a115
jmp 0x46ce2f
xor esi, esi
mov rcx, qword [rsp + 0x330]
mov r14, qword [rsp + 0x2a8]
jmp 0x46a13a
mov rax, qword [rsi + 8]
add rbp, rax
shl rdi, 5
add rdi, rax
add r15, 0x10
mov r12d, 0x10
nop word cs:[rax + rax]
mov rdx, qword [r15 - 0x10]
mov r8, qword [r15 - 8]
lea rcx, [rsp + 0x70]
call fcn.004fcdc0
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x80]
movzx r8d, byte [rsp + 0x88]
lea r10, [rsp + 0x89]
mov r9d, dword [r10]
mov r10d, dword [r10 + 3]
mov dword [rsp + 0x180], r9d
mov dword [rsp + 0x183], r10d
cmp r8b, 2
je 0x46a7ec
lea r9, [rdi + r12*2]
add r9, 0xffffffffffffffe0
mov qword [r9], rax
mov qword [r9 + 8], rcx
mov qword [r9 + 0x10], rdx
mov byte [r9 + 0x18], r8b
mov eax, dword [rsp + 0x180]
mov ecx, dword [rsp + 0x183]
mov dword [r9 + 0x19], eax
mov dword [r9 + 0x1c], ecx
mov rax, qword [rsp + 0xe8]
inc qword [rax + 0x10]
add r9, 0x20
cmp r9, rbp
je 0x46a56f
lea rax, [r15 - 0x10]
add r12, 0x10
add r15, 0x10
add rax, 0x10
cmp rax, r13
jne 0x46a270
jmp 0x46a7ec
cmp qword [rsp + 0x1d0], 0
je 0x46a512
lea rcx, [rsp + 0x278]
mov rdx, r15
call fcn.004590f0
mov rdx, qword [rsp + 0x48]
mov rax, qword [rdx + 0x48]
mov rcx, qword [rdx + 0x50]
shl rcx, 4
add rcx, rax
mov qword [rsp + 0x180], r15
lea r8, [rsp + 0x278]
mov qword [rsp + 0x188], r8
mov qword [rsp + 0x190], rcx
mov qword [rsp + 0x198], rax
mov qword [rsp + 0x1a0], rdx
lea rcx, [rsp + 0x180]
call fcn.00442d10
mov rdi, rax
test rax, rax
je 0x46ab1d
mov rbx, rdx
mov ecx, 0x40
mov edx, 8
call fcn.00442160
test rax, rax
je 0x46d0d4
mov rsi, rax
mov qword [rax], rdi
mov qword [rax + 8], rbx
mov qword [rsp + 0x240], 4
mov qword [rsp + 0x248], rax
mov qword [rsp + 0x250], 1
mov rax, qword [rsp + 0x1a0]
mov qword [rsp + 0x90], rax
movdqu xmm0, xmmword [rsp + 0x180]
movdqu xmm1, xmmword [rsp + 0x190]
movdqa xmmword [rsp + 0x80], xmm1
movdqa xmmword [rsp + 0x70], xmm0
lea rcx, [rsp + 0x70]
call fcn.00442d10
mov rdi, rax
test rax, rax
je 0x46a495
mov rbx, rdx
mov r13d, 1
mov r15d, 0x18
nop dword [rax]
cmp r13, qword [rsp + 0x240]
jne 0x46a468
mov r8d, 1
lea rcx, [rsp + 0x240]
mov rdx, r13
call fcn.0044c8f0
mov rsi, qword [rsp + 0x248]
mov qword [rsi + r15 - 8], rdi
mov qword [rsi + r15], rbx
inc r13
mov qword [rsp + 0x250], r13
lea rcx, [rsp + 0x70]
call fcn.00442d10
mov rdi, rax
mov rbx, rdx
add r15, 0x10
test rax, rax
jne 0x46a440
movdqu xmm0, xmmword [rsp + 0x240]
movdqa xmmword [rsp + 0x1e0], xmm0
mov rdx, qword [rsp + 0x250]
mov qword [rsp + 0x1f0], rdx
mov rsi, qword [r12 + 0x20]
mov rdi, qword [r12 + 0x28]
cmp rdx, qword [rsp + 0x1e0]
je 0x46ab4d
jmp 0x46ab62
mov rax, qword [rsp + 0x318]
mov rbx, qword [rax]
inc rbx
mov qword [rax], rbx
test rbp, rbp
je 0x46a895
js 0x46d0be
mov edx, 1
mov rcx, rbp
call fcn.00442160
mov rdi, rax
test rax, rax
jne 0x46a89a
jmp 0x46d0c5
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x78], 8
mov qword [rsp + 0x80], 0
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0x70]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r12
mov qword [rsp + 0x30], 0
lea rcx, [rsp + 0xf0]
mov rdx, qword [rsp + 0x50]
mov r8b, 1
mov r9b, 2
call fcn.00470ad0
jmp 0x4691ee
mov qword [rsp + 0xf8], r15
mov rbx, qword [rsp + 0x1d8]
shl rbx, 4
sub rbx, r12
mov rsi, rbx
shr rsi, 4
mov eax, 8
cmp r13, r15
je 0x46a5c5
movabs rcx, 0x3ffffffffffffff1
cmp rbx, rcx
jae 0x46d06d
add rbx, rbx
je 0x46a5c5
mov edx, 8
mov rcx, rbx
call fcn.00442160
test rax, rax
je 0x46d0af
mov qword [rsp + 0x180], rsi
mov qword [rsp + 0x188], rax
mov qword [rsp + 0x190], 0
lea rcx, [rsp + 0x180]
lea rdx, [rsp + 0xf0]
call fcn.0044e080
mov rbx, qword [rsp + 0x180]
mov rbp, qword [rsp + 0x188]
mov r12, qword [rsp + 0x190]
mov r15, r12
shl r15, 5
lea rax, [r15 + rbp]
mov qword [rsp + 0x88], rbp
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x78], rbp
mov qword [rsp + 0x80], rax
test r12, r12
je 0x46a792
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x1d0], rbp
mov qword [rsp + 0x1d8], rbx
mov r13, qword [rsp + 0x120]
mov rdi, qword [rsp + 0x110]
mov rbp, qword [rsp + 0x118]
lea rdx, [rdi + rbp]
mov rax, qword [r13]
sub rax, rdx
cmp rax, r12
jae 0x46a684
mov rcx, r13
mov r8, r12
call fcn.0044c820
lea rbx, [rdi + r12]
mov rcx, qword [r13 + 8]
shl rdi, 5
add rdi, rcx
mov rsi, rbx
shl rsi, 5
add rcx, rsi
shl rbp, 5
mov rdx, rdi
mov r8, rbp
call sub.msvcrt.dll_memmove
mov qword [rsp + 0x110], rbx
mov rcx, qword [r13 + 0x10]
mov rbp, qword [rsp + 0x1d0]
mov rdi, rbp
cmp rcx, rbx
mov rbx, qword [rsp + 0x1d8]
mov rax, qword [rsp + 0x60]
je 0x46a78b
mov rax, qword [r13 + 8]
add rsi, rax
shl rcx, 5
add rcx, rax
lea r8, [rbp + 0x20]
mov r9d, 0x20
nop word cs:[rax + rax]
mov rax, r9
mov rdi, r8
movzx edx, byte [r8 - 8]
cmp dl, 2
je 0x46a777
lea r8, [rcx + rax]
add r8, 0xffffffffffffffe0
mov r9, qword [rdi - 0x10]
movdqu xmm0, xmmword [rdi - 0x20]
mov r10d, dword [rdi - 7]
mov r11d, dword [rdi - 4]
mov dword [rsp + 0x183], r11d
mov dword [rsp + 0x180], r10d
movdqu xmmword [r8], xmm0
mov qword [r8 + 0x10], r9
mov byte [r8 + 0x18], dl
mov edx, dword [rsp + 0x180]
mov r9d, dword [rsp + 0x183]
mov dword [r8 + 0x19], edx
mov dword [r8 + 0x1c], r9d
inc qword [r13 + 0x10]
add r8, 0x20
cmp r8, rsi
je 0x46a777
lea r9, [rax + 0x20]
lea r8, [rdi + 0x20]
cmp r15, rax
jne 0x46a700
sub r15, rax
shr r15, 5
mov qword [rsp + 0x78], rdi
mov r12, r15
mov rax, qword [rsp + 0x60]
cmp rax, rdi
jne 0x46a79d
jmp 0x46a7d2
xor r12d, r12d
mov rdi, rbp
cmp rax, rdi
je 0x46a7d2
add rdi, 8
jmp 0x46a7b9
add rdi, 0x20
dec r12
je 0x46a7d2
mov rdx, qword [rdi - 8]
test rdx, rdx
je 0x46a7b0
mov rcx, qword [rdi]
mov r8d, 1
call fcn.00442170
jmp 0x46a7b0
test rbx, rbx
je 0x46a7ec
shl rbx, 5
mov r8d, 8
mov rcx, rbp
mov rdx, rbx
call fcn.00442170
mov rdi, qword [rsp + 0x100]
mov rbx, qword [rsp + 0x108]
mov rsi, qword [rsp + 0x120]
sub rdi, rbx
je 0x46a842
shr rdi, 5
add rbx, 8
jmp 0x46a829
add rbx, 0x20
dec rdi
je 0x46a842
mov rdx, qword [rbx - 8]
test rdx, rdx
je 0x46a820
mov rcx, qword [rbx]
mov r8d, 1
call fcn.00442170
jmp 0x46a820
mov rdi, qword [rsp + 0x118]
test rdi, rdi
je 0x46a888
mov rbx, qword [rsi + 0x10]
mov rdx, qword [rsp + 0x110]
cmp rdx, rbx
je 0x46a881
mov rax, qword [rsi + 8]
shl rdx, 5
add rdx, rax
mov rcx, rbx
shl rcx, 5
add rcx, rax
mov r8, rdi
shl r8, 5
call sub.msvcrt.dll_memmove
add rbx, rdi
mov qword [rsi + 0x10], rbx
mov rsi, qword [rsp + 0x170]
jmp 0x46a152
mov edi, 1
mov rcx, rdi
mov rdx, rsi
mov r8, rbp
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0xf0], rbp
mov qword [rsp + 0xf8], rdi
mov qword [rsp + 0x100], rbp
mov rax, qword [rsp + 0x50]
cmp qword [rax], 0
jne 0x46a8db
mov rax, qword [rsp + 0x50]
mov qword [rax], 1
mov qword [rax + 8], rbx
lea rcx, [rsp + 0x380]
call fcn.004965b0
test al, al
je 0x46a8f8
mov rax, qword [rsp + 0x50]
mov qword [rax], 0
movq xmm0, rbp
movq xmm8, rdi
punpcklqdq xmm8, xmm0
xor esi, esi
mov rax, qword [rsp + 0x70]
cmp rax, 7
ja case.0x46a922.1
lea rcx, [0x0046d62c]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov rdx, qword [rsp + 0x78]
lea rax, [rsp + 0x80]
test rdx, rdx
je case.0x46a922.1
mov rcx, qword [rax]
mov r8d, 1
call fcn.00442170
cmp rsi, 9
je 0x46b9f8
mov qword [rsp + 0x180], rsi
mov qword [rsp + 0x188], rbp
movdqu xmmword [rsp + 0x190], xmm8
mov rax, qword [rsp + 0x2f8]
mov qword [rsp + 0x1a0], rax
mov rax, qword [rsp + 0x300]
mov qword [rsp + 0x1a8], rax
movups xmmword [rsp + 0x1b0], xmm6
movups xmmword [rsp + 0x1c0], xmm7
lea rax, [0x0046d64c]
movsxd rcx, dword [rax + rsi*4]
add rcx, rax
xor eax, eax
jmp rcx
mov rsi, qword [rsp + 0x170]
mov rax, qword [rsp + 0x58]
mov r12, qword [rax]
cmp rsi, 1
je 0x469e99
test byte [rsp + 0x168], 1
sete al
mov rcx, qword [rsp + 0x68]
lea rbx, [rcx + 1]
cmp rbx, qword [rsp + 0x298]
jne 0x46ad67
mov rdx, qword [r12 + 0x90]
test rdx, rdx
je 0x46ad67
mov rcx, qword [r12 + 0x88]
imul rdx, rdx, 0x228
add rdx, rcx
lea r8, [rcx + 0x225]
jmp 0x46aa4c
cmp qword [rsp + 0x298], r9
jne 0x46ad21
lea r9, [r8 - 0x225]
add r8, 0x228
add r9, 0x228
cmp r9, rdx
je 0x46ad67
cmp qword [r8 - 0x225], 0
jne 0x46aa2e
cmp dword [r8 - 9], 0x110000
jne 0x46aa2e
cmp qword [r8 - 0x3d], 0
mov r9d, 1
mov r10d, 1
je 0x46aa7b
mov r9, qword [r8 - 0x2d]
mov r10, qword [r8 - 0x35]
cmp r10, 1
ja 0x46aa8c
cmp r10, r9
jne 0x46aa8c
cmp byte [r8], 1
jne 0x46aa2e
mov r9, qword [r8 - 0x1e5]
test r9, r9
je 0x46aa20
mov r9, qword [r8 - 0x1dd]
jmp 0x46aa20
mov eax, 1
movq r14, xmm8
mov qword [rsp + 0xd8], rbp
mov rsi, rax
jmp 0x46a152
mov rdx, qword [rsp + 0x78]
test rdx, rdx
je 0x46aadb
mov rcx, qword [rsp + 0x80]
mov r8d, 1
call fcn.00442170
mov rdx, qword [rsp + 0x90]
test rdx, rdx
je 0x46aaff
mov rcx, qword [rsp + 0x98]
shl rdx, 4
mov r8d, 8
call fcn.00442170
mov rdx, qword [rsp + 0xa8]
lea rax, [rsp + 0xb0]
test rdx, rdx
jne 0x46a936
jmp case.0x46a922.1
mov qword [rsp + 0x1e0], 0
mov qword [rsp + 0x1e8], 8
mov qword [rsp + 0x1f0], 0
mov rsi, qword [r12 + 0x20]
mov rdi, qword [r12 + 0x28]
xor edx, edx
lea rcx, [rsp + 0x1e0]
call fcn.0044c260
mov rdx, qword [rsp + 0x1f0]
mov rax, qword [rsp + 0x1e8]
mov rcx, rdx
shl rcx, 4
mov qword [rax + rcx], rsi
mov qword [rax + rcx + 8], rdi
inc rdx
mov qword [rsp + 0x1f0], rdx
lea rcx, [rsp + 0x70]
mov rdx, qword [rsp + 0x1d0]
mov r8, qword [rsp + 0x1d8]
call fcn.00530bf0
cmp qword [rsp + 0x70], 0
je 0x46abce
lea rcx, [rsp + 0x89]
mov rax, qword [rcx - 1]
mov qword [rsp + 0x210], rax
movdqu xmm0, xmmword [rcx - 0x11]
movdqa xmmword [rsp + 0x200], xmm0
jmp 0x46b3fd
mov rdi, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x80]
test rsi, rsi
je 0x46b3d2
js 0x46d106
mov edx, 1
mov rcx, rsi
call fcn.00442160
mov rbx, rax
test rax, rax
jne 0x46b3d7
jmp 0x46d10d
mov rsi, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x78]
movdqa xmm8, xmmword [rsp + 0x80]
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x2f8], rax
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x300], rax
movaps xmm6, xmmword [rsp + 0xa0]
movaps xmm7, xmmword [rsp + 0xb0]
cmp rsi, 9
jne 0x46a94e
jmp 0x46b9f8
lea rcx, [rsp + 0x200]
call fcn.00530bf0
lea rax, [rsp + 0x200]
mov qword [rsp + 0x2e0], rax
lea rax, [0x0044d480]
mov qword [rsp + 0x2e8], rax
lea rax, [0x00679818]
mov qword [rsp + 0x100], rax
mov qword [rsp + 0x108], 1
mov qword [rsp + 0xf0], 0
lea rax, [rsp + 0x2e0]
mov qword [rsp + 0x110], rax
mov qword [rsp + 0x118], 1
lea rcx, [rsp + 0x278]
lea rdx, [rsp + 0xf0]
call fcn.0052f740
cmp qword [rsp + 0x200], 0
je 0x46ad0a
mov rdx, qword [rsp + 0x208]
test rdx, rdx
je 0x46ad0a
mov rcx, qword [rsp + 0x210]
mov r8d, 1
call fcn.00442170
mov rbp, qword [rsp + 0x278]
movdqu xmm8, xmmword [rsp + 0x280]
jmp 0x469c41
xor r8d, r8d
nop word cs:[rax + rax]
mov r9, r8
cmp dword [rcx + 0x21c], 0x110000
cmove r8, rcx
cmp qword [rcx], 0
cmovne r8, r9
add rcx, 0x228
cmp rcx, rdx
jne 0x46ad30
test r8, r8
je 0x46ad67
test byte [r8 + 0x219], 0x40
sete cl
jmp 0x46ad69
xor ecx, ecx
cmp rbx, qword [rsp + 0x298]
sete r8b
mov edx, dword [r12 + 0x240]
or edx, dword [r12 + 0x248]
sets dl
test cl, cl
jne 0x46adcd
and r8b, al
and r8b, dl
jne 0x46adcd
test byte [rsp + 0x168], 1
je 0x46afc8
test dl, 1
mov rax, qword [rsp + 0x298]
mov rcx, qword [rsp + 0x68]
cmovne rcx, rax
cmp qword [rsp + 0x3b8], 0
cmovne rcx, rax
mov qword [rsp + 0x68], rcx
jmp 0x46afc8
lea rcx, [rsp + 0x70]
mov rdx, qword [rsp + 0xe8]
lea r8, [rsp + 0x1f8]
call fcn.004959d0
cmp dword [rsp + 0x70], 2
je 0x46afc3
movdqu xmm0, xmmword [rsp + 0x70]
movdqu xmm1, xmmword [rsp + 0x80]
movdqu xmm2, xmmword [rsp + 0x90]
movdqa xmmword [rsp + 0x110], xmm2
movdqa xmmword [rsp + 0x100], xmm1
movdqa xmmword [rsp + 0xf0], xmm0
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax]
mov rax, qword [rcx + 0x90]
mov bpl, 1
test rax, rax
je 0x46af93
mov r15, qword [rcx + 0x88]
imul r12, rax, 0x228
lea rcx, [r15 + r12]
lea rax, [r15 + 0x48]
jmp 0x46ae7a
lea rdx, [rax - 0x48]
add rax, 0x228
add rdx, 0x228
cmp rdx, rcx
je 0x46af93
cmp qword [rax - 0x48], 0
jne 0x46ae60
cmp dword [rax + 0x1d4], 0x110000
jne 0x46ae60
cmp qword [rax - 8], 0
je 0x46ae60
mov rdx, qword [rsp + 0x68]
cmp qword [rax], rdx
jne 0x46ae60
mov rsi, qword [rax - 0x28]
mov rdi, qword [rax - 0x20]
xor r13d, r13d
jmp 0x46aec0
add r13, 0x228
cmp r12, r13
je 0x46ceca
cmp qword [r15 + r13 + 0x28], rdi
jne 0x46aeb0
mov rcx, qword [r15 + r13 + 0x20]
mov rdx, rsi
mov r8, rdi
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x46aeb0
test byte [r15 + r13 + 0x219], 0x10
jne 0x46af59
xor r13d, r13d
jmp 0x46af00
add r13, 0x228
cmp r12, r13
je 0x46cebb
cmp qword [r15 + r13 + 0x28], rdi
jne 0x46aef0
mov rcx, qword [r15 + r13 + 0x20]
mov rdx, rsi
mov r8, rdi
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x46aef0
test byte [r15 + r13 + 0x218], 0x40
je 0x46af37
lea rcx, [rsp + 0xf0]
call fcn.00495c90
test al, al
jne 0x46af59
lea rcx, [rsp + 0xf0]
call fcn.00495fb0
test al, al
jne 0x46af93
lea rcx, [rsp + 0xf0]
call fcn.004962c0
test al, al
jne 0x46af93
lea rcx, [rsp + 0x180]
lea rdx, [rsp + 0xf0]
call fcn.00496420
cmp byte [rsp + 0x178], 0
setne r8b
mov rcx, qword [rsp + 0x50]
lea rdx, [rsp + 0x180]
call fcn.0046f610
test rax, rax
setne bpl
cmp qword [rsp + 0xf0], 0
je 0x46afbe
mov rdx, qword [rsp + 0xf8]
test rdx, rdx
je 0x46afbe
mov rcx, qword [rsp + 0x100]
mov r8d, 1
call fcn.00442170
test bpl, bpl
je 0x46afc8
mov qword [rsp + 0x68], rbx
mov rax, qword [rsp + 0x58]
mov rax, qword [rax]
mov rcx, qword [rax + 0xa0]
mov rdx, qword [rax + 0xa8]
shl rdx, 5
xor r8d, r8d
nop word cs:[rax + rax]
cmp rdx, r8
je 0x46b5dc
mov r9, r8
add r8, 0x20
cmp dword [rcx + r9 + 8], 2
jne 0x46aff0
mov r10, qword [rsp + 0x68]
cmp qword [rcx + r9 + 0x10], r10
jne 0x46aff0
mov rdx, qword [rax + 0x90]
mov rsi, qword [rcx + r8 - 0x20]
cmp rsi, rdx
jae 0x46cda3
mov rbx, qword [rax + 0x88]
imul r14, rsi, 0x228
mov eax, dword [rbx + r14 + 0x218]
test byte [rsp + 0x168], 1
jne 0x46b057
mov ecx, eax
and ecx, 0x4000
jne 0x46c7e4
test al, 0x20
mov eax, dword [rsp + 0x168]
movzx eax, al
mov ecx, 1
cmovne eax, ecx
mov dword [rsp + 0x168], eax
mov rdx, qword [rsp + 0x48]
mov rcx, qword [rdx + 0x10]
cmp rcx, 2
mov eax, 0
cmovne rax, rdx
lea r15, [rbx + r14]
add r15, 0x20
cmp ecx, 2
je 0x46b0de
mov r8, qword [rax + 8]
cmp r8, qword [r15 + 8]
jne 0x46b0de
mov rdx, qword [r15]
mov rcx, qword [rax]
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x46b0de
cmp qword [rbx + r14 + 0x1e8], 0
mov eax, 1
mov ecx, 1
je 0x46b0d3
mov rax, qword [rbx + r14 + 0x1f8]
mov rcx, qword [rbx + r14 + 0x1f0]
cmp rcx, 1
ja 0x46b0f9
cmp rcx, rax
jne 0x46b0f9
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x48]
call fcn.00470880
mov rbp, rax
test rax, rax
jne 0x46b9f8
lea rcx, [rsp + 0x2b0]
call fcn.004963f0
mov rcx, qword [rbx + r14 + 0x10]
test rcx, rcx
je 0x46b140
mov rdi, rax
mov rsi, rdx
mov rdx, qword [rbx + r14 + 0x18]
call fcn.00498ac0
test rax, rax
je 0x46b140
cmp rdx, rsi
jne 0x46b140
mov rcx, rdi
mov rdx, rax
mov r8, rsi
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x46b2de
mov rcx, qword [rsp + 0x48]
mov rax, qword [rcx + 0x10]
cmp rax, 2
jne 0x46b18f
movdqu xmm0, xmmword [r15]
movdqu xmmword [rcx], xmm0
mov qword [rcx + 0x10], 0
mov qword [rcx + 0x20], 0
mov qword [rcx + 0x28], 8
mov qword [rcx + 0x30], 0
mov byte [rcx + 0x38], 2
test byte [rsp + 0x168], 1
je 0x46b1b3
xor eax, eax
mov rcx, qword [rsp + 0x48]
jmp 0x46b1a7
test byte [rsp + 0x168], 1
je 0x46b1b3
test rax, rax
jne 0x46b1b3
mov rcx, qword [rsp + 0x48]
mov rax, qword [rcx + 0x30]
mov qword [rcx + 0x10], 1
mov qword [rcx + 0x18], rax
lea rcx, [rsp + 0x2b0]
call fcn.004963f0
mov r8, rdx
lea rcx, [rsp + 0xf0]
mov rdx, rax
call fcn.00497e50
movzx eax, byte [rsp + 0x108]
cmp al, 3
je 0x46d02c
mov rdx, qword [rsp + 0xf0]
movdqu xmm0, xmmword [rsp + 0xf8]
lea r8, [rsp + 0x100]
mov ecx, dword [r8 + 9]
mov r8d, dword [r8 + 0xc]
mov dword [rsp + 0x180], ecx
mov dword [rsp + 0x183], r8d
cmp al, 2
jne 0x46b260
movq r8, xmm0
lea rcx, [rsp + 0xf0]
call fcn.004fcdc0
movdqu xmm0, xmmword [rsp + 0xf0]
movdqu xmm1, xmmword [rsp + 0x100]
movdqa xmmword [rsp + 0x80], xmm1
movdqa xmmword [rsp + 0x70], xmm0
mov rax, qword [rsp + 0x48]
mov rdx, qword [rax + 0x30]
cmp rdx, qword [rax + 0x20]
je 0x46b29c
mov r8, qword [rsp + 0x48]
jmp 0x46b2b2
mov qword [rsp + 0x70], rdx
movdqu xmmword [rsp + 0x78], xmm0
mov byte [rsp + 0x88], al
mov eax, dword [rsp + 0x180]
mov ecx, dword [rsp + 0x183]
lea rdx, [rsp + 0x89]
mov dword [rdx + 3], ecx
mov dword [rdx], eax
mov rax, qword [rsp + 0x48]
mov rdx, qword [rax + 0x30]
cmp rdx, qword [rax + 0x20]
jne 0x46b259
mov rcx, qword [rsp + 0x328]
call fcn.0044c410
mov r8, qword [rsp + 0x48]
mov rdx, qword [r8 + 0x30]
mov rax, qword [r8 + 0x28]
mov rcx, rdx
shl rcx, 5
movdqa xmm0, xmmword [rsp + 0x70]
movdqa xmm1, xmmword [rsp + 0x80]
movdqu xmmword [rax + rcx + 0x10], xmm1
movdqu xmmword [rax + rcx], xmm0
inc rdx
mov qword [r8 + 0x30], rdx
cmp qword [rbx + r14 + 0x1e8], 0
mov eax, 1
mov ecx, 1
je 0x46b303
mov rax, qword [rbx + r14 + 0x1f8]
mov rcx, qword [rbx + r14 + 0x1f0]
cmp rcx, 1
ja 0x46b319
cmp rcx, rax
jne 0x46b319
cmp byte [rbx + r14 + 0x225], 1
jne 0x46b33b
mov rax, qword [r15]
mov qword [rsp + 0xd8], rax
mov r14, qword [rbx + r14 + 0x28]
mov esi, 2
cmp qword [rsp + 0x2b0], 0
jne 0x46b34d
jmp 0x46b36d
inc qword [rsp + 0x68]
xor esi, esi
cmp qword [rsp + 0x2b0], 0
je 0x46b36d
mov rdx, qword [rsp + 0x2b8]
test rdx, rdx
je 0x46b36d
mov rcx, qword [rsp + 0x2c0]
mov r8d, 1
call fcn.00442170
mov al, 1
mov qword [rsp + 0x178], rax
jmp 0x4689c0
cmp esi, 9
je 0x46b3bb
movups xmm7, xmmword [rsp + 0x130]
movups xmm6, xmmword [rsp + 0x120]
mov rax, qword [rsp + 0x118]
mov qword [rsp + 0x300], rax
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x2f8], rax
movdqu xmm8, xmmword [rsp + 0x100]
mov rbp, qword [rsp + 0xf8]
mov al, 1
mov qword [rsp + 0x178], rax
jmp 0x46a909
mov ebx, 1
mov rcx, rbx
mov rdx, rdi
mov r8, rsi
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x200], rsi
mov qword [rsp + 0x208], rbx
mov qword [rsp + 0x210], rsi
mov rax, qword [rsp + 0x1f0]
mov qword [rsp + 0x250], rax
movdqa xmm0, xmmword [rsp + 0x1e0]
movdqa xmmword [rsp + 0x240], xmm0
mov qword [rsp + 0x180], 0
mov qword [rsp + 0x188], 1
mov qword [rsp + 0x190], 0
lea rsi, [rsp + 0x70]
mov rcx, rsi
lea rdx, [rsp + 0x180]
lea r8, fcn.00446c10
call fcn.00537b60
mov rcx, r12
mov rdx, rsi
call fcn.00450cd0
test al, al
jne 0x46d081
mov rax, qword [rsp + 0x210]
lea rcx, [rsp + 0x100]
mov qword [rcx + 8], rax
movaps xmm0, xmmword [rsp + 0x200]
movups xmmword [rcx - 8], xmm0
mov rax, qword [rsp + 0x1f0]
lea rdx, [rsp + 0x110]
mov qword [rdx + 0x10], rax
movaps xmm0, xmmword [rsp + 0x1e0]
movups xmmword [rdx], xmm0
mov rax, qword [rsp + 0x190]
mov qword [rcx + 0x38], rax
movdqu xmm0, xmmword [rsp + 0x180]
movdqu xmmword [rcx + 0x28], xmm0
mov qword [rsp + 0xf0], 4
mov rsi, qword [rsp + 0x288]
test rsi, rsi
je 0x46b526
mov rdi, qword [rsp + 0x280]
add rdi, 0x18
jmp 0x46b509
add rdi, 0x28
dec rsi
je 0x46b526
mov rdx, qword [rdi - 8]
test rdx, rdx
je 0x46b500
mov rcx, qword [rdi]
shl rdx, 3
mov r8d, 8
call fcn.00442170
jmp 0x46b500
mov rax, qword [rsp + 0x278]
test rax, rax
je 0x4691ee
mov rcx, qword [rsp + 0x280]
shl rax, 3
lea rdx, [rax + rax*4]
mov r8d, 8
call fcn.00442170
jmp 0x4691ee
mov rbp, qword [rsp + 0xf8]
mov al, 1
mov qword [rsp + 0x178], rax
mov esi, 9
jmp 0x46a909
xor esi, esi
jmp 0x46bad1
test rbp, rbp
je 0x46b84d
js 0x46cee8
mov edx, 1
mov rcx, rbp
call fcn.00442160
mov rbx, rax
test rax, rax
jne 0x46b852
jmp 0x46c1fd
mov rdi, qword [rsi + 0x70]
mov rbp, qword [rsi + 0x78]
test rbp, rbp
je 0x46b7e4
js 0x46cee8
mov edx, 1
mov rcx, rbp
call fcn.00442160
mov rbx, rax
test rax, rax
jne 0x46b7e9
jmp 0x46c1fd
mov edx, dword [rax + 0x240]
or edx, dword [rax + 0x248]
lea rcx, [rax + 0x2c8]
cmp qword [rax + 0x2c8], 5
lea rbx, [0x00678128]
cmove rcx, rbx
test edx, 0x4000
jne 0x46b6de
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x48]
call fcn.00470880
mov rdi, rax
test rax, rax
je 0x46b640
mov rcx, rdi
call fcn.00447340
mov edx, 0x78
mov r8d, 8
mov rcx, rdi
call fcn.00442170
mov r9d, dword [rsp + 0x168]
and r9b, 1
cmp byte [rsp + 0x178], 0
setne r8b
lea rdx, [rsp + 0x2b0]
mov rcx, qword [rsp + 0x50]
call fcn.0046d6a0
mov rbp, rax
jmp 0x46b9f8
mov rbp, rdx
test rdx, rdx
je 0x46ba30
cmp rbp, 4
jne 0x46ba37
cmp dword [rsi], 0x706c6568
jne 0x46ba40
mov rax, qword [rsp + 0x58]
mov rax, qword [rax]
mov ecx, dword [rax + 0x240]
or ecx, dword [rax + 0x248]
test ecx, 0x8000000
jne 0x46ba40
lea rdx, [rsp + 0x1f8]
mov rcx, qword [rsp + 0xe8]
call fcn.00495ac0
mov r8, rdx
mov rcx, qword [rsp + 0x58]
mov rcx, qword [rcx]
mov rdx, rax
call fcn.0046f950
jmp 0x46b66a
shl rdx, 0x31
sar rdx, 0x3f
and rdx, rcx
mov rcx, qword [rdx]
mov rax, rcx
mov qword [rsp + 0xe0], rcx
cmp rcx, 4
jb 0x46b712
mov rcx, qword [rdx + 8]
mov rax, qword [rdx + 0x10]
call qword [rax + 0x40]
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x60], rdx
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0x200], rax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x208], rax
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x210], rax
lea rcx, [rsp + 0x70]
lea rdx, [rsp + 0x2b0]
call fcn.00496420
cmp qword [rsp + 0x70], 0
je 0x46bc31
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x48]
call fcn.00470880
mov rdi, rax
test rax, rax
je 0x46b78c
mov rcx, rdi
call fcn.00447340
mov edx, 0x78
mov r8d, 8
mov rcx, rdi
call fcn.00442170
mov rax, qword [rsp + 0x58]
mov rsi, qword [rax]
mov qword [rsp + 0x180], 0
mov qword [rsp + 0x188], rsi
lea r8, [0x00679478]
lea rcx, [rsp + 0xf0]
lea rdx, [rsp + 0x180]
xor r9d, r9d
call fcn.00484c70
lea rdx, [rsp + 0xf0]
mov rcx, rsi
call fcn.004651b0
mov rbp, rax
mov rdi, qword [rsp + 0x60]
jmp 0x46c788
mov ebx, 1
mov rcx, rbx
mov rdx, rdi
mov r8, rbp
call sub.msvcrt.dll_memcpy
mov r12, rbp
mov rcx, qword [rsp + 0x228]
test rcx, rcx
je 0x46b81f
mov rdx, qword [rsp + 0x220]
test rdx, rdx
je 0x46b81f
mov r8d, 1
call fcn.00442170
mov qword [rsp + 0x220], r12
mov qword [rsp + 0x228], rbx
mov qword [rsp + 0x230], rbp
xor esi, esi
cmp qword [rsp + 0x2b0], 0
jne 0x46bab1
jmp 0x46bad1
mov ebx, 1
mov rcx, rbx
mov rdx, qword [rsp + 0x60]
mov r8, rbp
call sub.msvcrt.dll_memcpy
mov rax, rbp
mov r12, rbp
mov rbp, rax
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x78], rbx
mov qword [rsp + 0x80], rbp
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x48]
call fcn.00470880
mov rdi, rax
test rax, rax
je 0x46b8af
mov rcx, rdi
call fcn.00447340
mov edx, 0x78
mov r8d, 8
mov rcx, rdi
call fcn.00442170
lea rdx, [rsp + 0x1f8]
mov rcx, qword [rsp + 0xe8]
call fcn.00495ac0
mov rsi, rax
mov r14, rdx
mov r15, rax
sub r15, rdx
shr r15, 5
mov rdi, rax
sub rdi, rdx
mov qword [rsp + 0xd8], r12
je 0x46b97a
mov qword [rsp + 0xe0], r14
mov r14, rdi
shr r14, 1
mov edx, 8
mov rcx, r14
call fcn.00442160
test rax, rax
je 0x46cf46
mov r12, rax
mov qword [rsp + 0xf0], r15
mov qword [rsp + 0xf8], rax
mov qword [rsp + 0x100], 0
mov r15, rax
add r15, 8
xor r13d, r13d
mov r14, qword [rsp + 0xe0]
nop dword [rax]
mov rcx, r14
call fcn.004fc770
mov rcx, rax
call fcn.004fcd10
test rax, rax
je 0x46ce12
add r14, 0x20
mov qword [r15 - 8], rax
mov qword [r15], rdx
inc r13
add r15, 0x10
cmp r14, rsi
jne 0x46b940
mov r14, qword [rsp + 0xe0]
jmp 0x46b997
mov qword [rsp + 0xf0], r15
mov qword [rsp + 0xf8], 8
mov r12d, 8
xor r13d, r13d
mov qword [rsp + 0x100], r13
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], r12
mov rcx, qword [rsp + 0x50]
mov rdx, rbx
mov r8, rbp
mov r9, qword [rsp + 0x48]
call fcn.00473fb0
mov rbp, rax
cmp rsi, r14
mov rsi, qword [rsp + 0xd8]
je 0x46b9e2
shr rdi, 1
mov r8d, 8
mov rcx, r12
mov rdx, rdi
call fcn.00442170
test rsi, rsi
je 0x46b9f8
mov r8d, 1
mov rcx, rbx
mov rdx, rsi
call fcn.00442170
cmp qword [rsp + 0x2b0], 0
je 0x46c01f
mov rdx, qword [rsp + 0x2b8]
test rdx, rdx
je 0x46c01f
mov rcx, qword [rsp + 0x2c0]
mov r8d, 1
call fcn.00442170
jmp 0x46c01f
mov edi, 1
jmp 0x46ba59
test rbp, rbp
js 0x46cee8
mov edx, 1
mov rcx, rbp
call fcn.00442160
mov rdi, rax
test rax, rax
je 0x46c1fd
mov rcx, rdi
mov rdx, rsi
mov r8, rbp
call sub.msvcrt.dll_memcpy
mov rcx, qword [rsp + 0x228]
test rcx, rcx
je 0x46ba8c
mov rdx, qword [rsp + 0x220]
test rdx, rdx
je 0x46ba8c
mov r8d, 1
call fcn.00442170
mov qword [rsp + 0x220], rbp
mov qword [rsp + 0x228], rdi
mov qword [rsp + 0x230], rbp
xor esi, esi
cmp qword [rsp + 0x2b0], 0
je 0x46bad1
mov rdx, qword [rsp + 0x2b8]
test rdx, rdx
je 0x46bad1
mov rcx, qword [rsp + 0x2c0]
mov r8d, 1
call fcn.00442170
mov rdi, qword [rsp + 0x228]
test rdi, rdi
je 0x46bff1
mov dword [rsp + 0x68], esi
mov rax, qword [rsp + 0x58]
mov rax, qword [rax]
mov qword [rsp + 0x60], rax
mov rax, qword [rax + 0x2a8]
test rax, rax
je 0x46ce8a
mov rcx, qword [rsp + 0x60]
mov r15, qword [rcx + 0x2a0]
mov r12, qword [rsp + 0x230]
imul rax, rax, 0x2e8
add rax, r15
mov qword [rsp + 0xe0], rax
jmp 0x46bb45
add r15, 0x2e8
cmp r15, qword [rsp + 0xe0]
je 0x46ce8a
mov rbp, qword [r15 + 0x78]
cmp rbp, r12
jne 0x46bb68
mov r13, qword [r15 + 0x70]
mov rcx, rdi
mov rdx, r13
mov r8, r12
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x46bc77
mov rax, qword [r15 + 0x260]
test rax, rax
je 0x46bb30
mov r13, qword [r15 + 0x258]
shl rax, 3
lea rbx, [rax + rax*2]
xor esi, esi
jmp 0x46bb99
add rsi, 0x18
cmp rbx, rsi
je 0x46bb30
cmp qword [r13 + rsi + 8], r12
jne 0x46bb90
mov rdx, qword [r13 + rsi]
mov rcx, rdi
mov r8, r12
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x46bb90
mov r13, qword [r15 + 0x70]
mov rbx, rbp
test rbx, rbx
mov rsi, qword [rsp + 0x60]
je 0x46bc88
setns al
js 0x46cef2
movzx esi, al
mov rcx, rbx
mov rdx, rsi
call fcn.00442160
test rax, rax
je 0x46cefc
mov r12, rax
mov rax, qword [rsp + 0x58]
mov rsi, qword [rax]
jmp 0x46bc8e
lea rcx, [rsp + 0x70]
mov rdx, qword [rsp + 0x60]
mov r8, rbp
call fcn.00530bf0
cmp qword [rsp + 0x70], 0
je 0x46c1c8
mov rbp, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x80]
mov rax, qword [rsp + 0x88]
jmp 0x46b865
mov rsi, qword [rsp + 0x78]
mov r15, qword [rsp + 0x80]
test r15, r15
je 0x46c20f
setns al
js 0x46d0ff
movzx edi, al
mov rcx, r15
mov rdx, rdi
call fcn.00442160
test rax, rax
jne 0x46c214
mov rcx, r15
mov rdx, rdi
call fcn.0052ffb0
jmp 0x46d121
mov rbx, r12
test rbx, rbx
mov rsi, qword [rsp + 0x60]
jne 0x46bbc9
mov r12d, 1
mov rcx, r12
mov rdx, r13
mov r8, rbx
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x240], rbx
mov qword [rsp + 0x248], r12
mov qword [rsp + 0x250], rbx
mov r13, qword [rsp + 0x1f8]
mov r15, qword [rsi + 0x240]
or r15, qword [rsi + 0x248]
mov rcx, rsi
mov rdx, r12
mov r8, rbx
call fcn.00457410
mov rsi, rax
test rax, rax
je 0x46bfdb
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x140], xmm0
mov qword [rsp + 0x130], 0
mov qword [rsp + 0x138], 8
mov qword [rsp + 0x150], 8
movdqu xmmword [rsp + 0x158], xmm0
mov qword [rsp + 0x100], 2
mov qword [rsp + 0x90], rsi
mov qword [rsp + 0x70], 0
movdqa xmmword [rsp + 0x80], xmm0
cmp byte [rsp + 0x68], 0
je 0x46bd66
mov rax, qword [rsp + 0x50]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x70], xmm0
movdqu xmm0, xmmword [rax + 0x10]
movdqa xmmword [rsp + 0x80], xmm0
lea rcx, [rsp + 0x70]
lea rdx, [rsp + 0xf0]
mov r8, qword [rsp + 0xe8]
mov r9, r13
call fcn.00468790
mov rbp, rax
test rax, rax
je 0x46bdb3
shr r15, 0x2c
and r15d, 1
test r15b, r15b
je 0x46bdf4
mov rcx, rbp
call fcn.00447340
mov edx, 0x78
mov r8d, 8
mov rcx, rbp
call fcn.00442170
mov rbp, qword [rsi + 0x70]
mov rsi, qword [rsi + 0x78]
test rsi, rsi
je 0x46be56
setns al
js 0x46d077
movzx r15d, al
mov rcx, rsi
mov rdx, r15
call fcn.00442160
mov r13, rax
test rax, rax
jne 0x46be5c
mov rcx, rsi
mov rdx, r15
call fcn.0052ffb0
jmp 0x46d121
lea rcx, [rsp + 0x130]
call fcn.00448900
cmp dword [rsp + 0x100], 2
je 0x46c1a6
mov rsi, qword [rsp + 0x120]
test rsi, rsi
je 0x46c182
mov rdi, qword [rsp + 0x118]
add rdi, 8
jmp 0x46be3d
add rdi, 0x20
dec rsi
je 0x46c182
mov rdx, qword [rdi - 8]
test rdx, rdx
je 0x46be30
mov rcx, qword [rdi]
mov r8d, 1
call fcn.00442170
jmp 0x46be30
mov r13d, 1
mov rcx, r13
mov rdx, rbp
mov r8, rsi
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x100]
mov rdx, qword [rsp + 0x110]
mov r8, qword [rsp + 0x118]
mov r15, qword [rsp + 0x120]
movups xmm0, xmmword [rsp + 0x128]
movaps xmmword [rsp + 0x70], xmm0
movups xmm0, xmmword [rsp + 0x138]
movaps xmmword [rsp + 0x80], xmm0
movups xmm0, xmmword [rsp + 0x148]
movaps xmmword [rsp + 0x90], xmm0
movups xmm0, xmmword [rsp + 0x158]
movaps xmmword [rsp + 0xa0], xmm0
movups xmm0, xmmword [rsp + 0x78]
movaps xmmword [rsp + 0x180], xmm0
movups xmm0, xmmword [rsp + 0x88]
movaps xmmword [rsp + 0x190], xmm0
movups xmm0, xmmword [rsp + 0x98]
movaps xmmword [rsp + 0x1a0], xmm0
mov rcx, qword [rsp + 0xa8]
mov qword [rsp + 0x1b0], rcx
cmp rax, 2
je 0x46bf74
mov qword [rsp + 0xe0], r8
mov qword [rsp + 0x60], rdx
test r15, r15
je 0x46bf53
mov rax, qword [rsp + 0xe0]
lea rbp, [rax + 8]
jmp 0x46bf39
add rbp, 0x20
dec r15
je 0x46bf53
mov rdx, qword [rbp - 8]
test rdx, rdx
je 0x46bf30
mov rcx, qword [rbp]
mov r8d, 1
call fcn.00442170
jmp 0x46bf30
mov rdx, qword [rsp + 0x60]
test rdx, rdx
mov rcx, qword [rsp + 0xe0]
je 0x46bf74
shl rdx, 5
mov r8d, 8
call fcn.00442170
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x78], r13
mov qword [rsp + 0x80], rsi
movdqa xmm0, xmmword [rsp + 0x180]
movdqa xmm1, xmmword [rsp + 0x190]
movdqa xmm2, xmmword [rsp + 0x1a0]
movdqu xmmword [rsp + 0x88], xmm0
movdqu xmmword [rsp + 0x98], xmm1
movdqu xmmword [rsp + 0xa8], xmm2
mov rax, qword [rsp + 0x1b0]
mov qword [rsp + 0xb8], rax
lea rdx, [rsp + 0x70]
mov rcx, qword [rsp + 0x48]
call fcn.00466dd0
test rbx, rbx
je 0x46bff1
mov r8d, 1
mov rcx, r12
mov rdx, rbx
call fcn.00442170
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x48]
call fcn.00470880
mov rbp, rax
test rax, rax
jne 0x46c01f
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x48]
call fcn.00473430
mov rbp, rax
test rax, rax
je 0x46c074
mov rcx, qword [rsp + 0x228]
test rcx, rcx
je 0x46c044
mov rdx, qword [rsp + 0x220]
test rdx, rdx
je 0x46c044
mov r8d, 1
call fcn.00442170
mov rax, rbp
movaps xmm6, xmmword [rsp + 0x3f0]
movaps xmm7, xmmword [rsp + 0x400]
movaps xmm8, xmmword [rsp + 0x410]
add rsp, 0x428
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rax, qword [rsp + 0x58]
mov rsi, qword [rax]
lea rcx, [rsp + 0x70]
mov rdx, rsi
call fcn.004590f0
mov qword [rsp + 0xf0], rsi
movdqu xmm0, xmmword [rsp + 0x70]
movdqu xmmword [rsp + 0xf8], xmm0
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x108], rax
mov rax, qword [rsp + 0x170]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x80], r14
lea rcx, [rsp + 0xf0]
lea rdx, [rsp + 0x70]
mov r8, qword [rsp + 0x48]
call fcn.00476080
mov rbp, rax
test rdi, rdi
je 0x46c10c
mov rdx, qword [rsp + 0x220]
test rdx, rdx
je 0x46c10c
mov r8d, 1
mov rcx, rdi
call fcn.00442170
mov rsi, qword [rsp + 0x108]
test rsi, rsi
je 0x46c156
mov rdi, qword [rsp + 0x100]
add rdi, 0x18
jmp 0x46c139
add rdi, 0x28
dec rsi
je 0x46c156
mov rdx, qword [rdi - 8]
test rdx, rdx
je 0x46c130
mov rcx, qword [rdi]
shl rdx, 3
mov r8d, 8
call fcn.00442170
jmp 0x46c130
mov rax, qword [rsp + 0xf8]
test rax, rax
je 0x46c044
mov rcx, qword [rsp + 0x100]
shl rax, 3
lea rdx, [rax + rax*4]
mov r8d, 8
jmp 0x46c03f
mov rdx, qword [rsp + 0x110]
test rdx, rdx
je 0x46c1a6
mov rcx, qword [rsp + 0x118]
shl rdx, 5
mov r8d, 8
call fcn.00442170
test rbx, rbx
je 0x46c01f
mov r8d, 1
mov rcx, r12
mov rdx, rbx
jmp 0x46ba26
mov rbp, r12
jmp 0x46b9f8
mov rsi, qword [rsp + 0x78]
mov rbp, qword [rsp + 0x80]
test rbp, rbp
je 0x46c895
js 0x46cee8
mov edx, 1
mov rcx, rbp
call fcn.00442160
mov rbx, rax
test rax, rax
jne 0x46c89a
mov edx, 1
mov rcx, rbp
call fcn.0052ffb0
jmp 0x46d121
mov eax, 1
mov rcx, rax
mov rdi, rax
mov rdx, rsi
mov r8, r15
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x338], r15
mov qword [rsp + 0x2a8], rdi
mov qword [rsp + 0x340], rdi
mov qword [rsp + 0x168], r15
mov qword [rsp + 0x348], r15
lea rax, [rsp + 0x130]
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x140], xmm0
mov qword [rsp + 0x130], 0
mov qword [rsp + 0x138], 8
mov qword [rsp + 0x150], 8
movdqu xmmword [rsp + 0x158], xmm0
mov qword [rsp + 0x100], 2
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rcx]
lea rcx, [0x00679478]
mov qword [rsp + 0x240], rcx
mov qword [rsp + 0x248], 0
mov qword [rsp + 0x250], rax
mov qword [rsp + 0x180], 0
mov qword [rsp + 0x188], 8
mov qword [rsp + 0x190], 0
mov ecx, dword [rdx + 0x240]
or ecx, dword [rdx + 0x248]
cmp qword [rdx + 0x2c8], 5
lea r8, [rdx + 0x2c8]
cmove r8, rbx
test ecx, 0x4000
je case.default.0x46c338
shl rcx, 0x31
sar rcx, 0x3f
and rcx, r8
mov rax, qword [rcx]
lea rdx, [0x00678608]
lea r8, [0x0046d670]
movsxd rax, dword [r8 + rax*4]
add rax, r8
jmp rax
lea rdx, [0x006785a8]
jmp case.0x46c338.0
mov rax, qword [rcx + 8]
mov qword [rsp + 0x310], rax
mov rdx, qword [rcx + 0x10]
jmp case.0x46c338.0
lea rdx, [0x00678560]
jmp case.0x46c338.0
lea rdx, [0x00678518]
mov rcx, qword [rsp + 0x310]
call qword [rdx + 0x30]
mov word [rsp + 0xc8], 3
movdqu xmm0, xmmword [rsp + 0x180]
movdqu xmmword [rsp + 0x80], xmm0
mov rcx, qword [rsp + 0x190]
mov qword [rsp + 0x90], rcx
mov qword [rsp + 0x70], 1
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x98], 0
mov qword [rsp + 0xa0], 8
pxor xmm0, xmm0
movdqu xmmword [rsp + 0xa8], xmm0
mov qword [rsp + 0xb8], 8
mov qword [rsp + 0xc0], 0
lea rcx, [rsp + 0x240]
lea rdx, [rsp + 0x70]
call fcn.00488e20
movzx edx, byte [rax + 0x58]
mov cl, 2
cmp dl, 3
je 0x46c40f
movzx edx, dl
mov ecx, 2
cmovae ecx, edx
mov byte [rax + 0x58], cl
mov rcx, rax
call fcn.00468460
lea rdx, [rsp + 0x1f8]
mov rcx, qword [rsp + 0xe8]
call fcn.00495ac0
mov rsi, rax
mov rbp, rdx
cmp rdx, rax
je 0x46c565
lea r13, [0x00679478]
lea r15, [0x0046d684]
lea rdi, [rsp + 0x70]
nop word cs:[rax + rax]
mov rcx, rbp
call fcn.004fc770
mov r12, rax
test rax, rax
je 0x46c565
mov rbx, rdx
mov rax, qword [rsp + 0xe0]
movsxd rcx, dword [r15 + rax*4]
add rcx, r15
lea rax, [0x00678608]
mov rdx, r13
jmp rcx
lea rax, [0x006785a8]
jmp 0x46c4b7
adc ecx, dword [rax - 0x73]
add eax, 0x20c0b2
jmp 0x46c4b7
mov rdx, r13
mov rcx, qword [rsp + 0x58]
mov r8, qword [rcx]
mov rax, qword [rax + 0x20]
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], r12
mov rcx, rdi
xor r9d, r9d
call rax
cmp qword [rsp + 0x70], 0
je 0x46c751
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x250], rax
movups xmm0, xmmword [rsp + 0x70]
movaps xmmword [rsp + 0x240], xmm0
mov rcx, rdi
mov rdx, r12
mov r8, rbx
call fcn.004fcdc0
movdqu xmm0, xmmword [rsp + 0x70]
movdqu xmm1, xmmword [rsp + 0x80]
movdqa xmmword [rsp + 0x190], xmm1
movdqa xmmword [rsp + 0x180], xmm0
lea rax, [rsp + 0x180]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0xf0]
mov rdx, r13
xor r8d, r8d
lea r9, [rsp + 0x240]
call fcn.00467030
add rbp, 0x20
cmp rbp, rsi
jne 0x46c460
mov rax, qword [rsp + 0x348]
mov qword [rsp + 0x80], rax
movups xmm0, xmmword [rsp + 0x338]
movaps xmmword [rsp + 0x70], xmm0
mov rax, qword [rsp + 0x100]
mov rsi, qword [rsp + 0x110]
mov rdi, qword [rsp + 0x118]
mov rbx, qword [rsp + 0x120]
movups xmm0, xmmword [rsp + 0x158]
movaps xmmword [rsp + 0x1b0], xmm0
movups xmm0, xmmword [rsp + 0x148]
movaps xmmword [rsp + 0x1a0], xmm0
movups xmm0, xmmword [rsp + 0x138]
movaps xmmword [rsp + 0x190], xmm0
movups xmm0, xmmword [rsp + 0x128]
movaps xmmword [rsp + 0x180], xmm0
mov rcx, qword [rsp + 0x1b8]
mov qword [rsp + 0xb8], rcx
movups xmm0, xmmword [rsp + 0x1a8]
movups xmmword [rsp + 0xa8], xmm0
movups xmm0, xmmword [rsp + 0x198]
movups xmmword [rsp + 0x98], xmm0
movdqu xmm0, xmmword [rsp + 0x188]
movdqu xmmword [rsp + 0x88], xmm0
cmp rax, 2
je 0x46c67c
test rbx, rbx
je 0x46c662
lea r15, [rdi + 8]
jmp 0x46c649
add r15, 0x20
dec rbx
je 0x46c662
mov rdx, qword [r15 - 8]
test rdx, rdx
je 0x46c640
mov rcx, qword [r15]
mov r8d, 1
call fcn.00442170
jmp 0x46c640
test rsi, rsi
je 0x46c67c
shl rsi, 5
mov r8d, 8
mov rcx, rdi
mov rdx, rsi
call fcn.00442170
lea rdx, [rsp + 0x70]
mov rsi, qword [rsp + 0x48]
mov rcx, rsi
call fcn.00466dd0
mov rdi, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x50]
mov rdx, rsi
call fcn.00470880
mov rbp, rax
test rax, rax
jne 0x46c788
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x48]
call fcn.00473430
mov rbp, rax
test rax, rax
jne 0x46c788
mov rax, qword [rsp + 0x58]
mov rsi, qword [rax]
lea rcx, [rsp + 0x180]
mov rdx, rsi
call fcn.004590f0
mov r8, qword [rsp + 0x48]
mov qword [rsp + 0x70], rsi
movdqu xmm0, xmmword [rsp + 0x180]
movdqu xmmword [rsp + 0x78], xmm0
mov rax, qword [rsp + 0x190]
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0x170]
mov qword [rsp + 0x180], rax
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0x188], rax
mov qword [rsp + 0x190], r14
lea rcx, [rsp + 0x70]
lea rdx, [rsp + 0x180]
call fcn.00476080
mov rbp, rax
lea rcx, [rsp + 0x70]
call fcn.00448420
jmp 0x46c788
mov rbp, qword [rsp + 0x78]
lea rcx, [rsp + 0xf0]
call fcn.004484c0
mov rdx, qword [rsp + 0x168]
test rdx, rdx
mov rdi, qword [rsp + 0x60]
je 0x46c788
mov r8d, 1
mov rcx, qword [rsp + 0x2a8]
call fcn.00442170
cmp dword [rsp + 0xe0], 4
jb 0x46b9f8
mov rcx, qword [rsp + 0x68]
call qword [rdi]
mov rdx, qword [rdi + 8]
test rdx, rdx
je 0x46b9f8
mov r8, qword [rdi + 0x10]
mov rcx, qword [rsp + 0x68]
jmp 0x46b9f3
mov rdi, qword [r12]
mov rbp, qword [r12 + 8]
test rbx, rbx
je 0x46b5af
shl rbx, 4
mov r8d, 8
mov rcx, r12
mov rdx, rbx
call fcn.00442170
jmp 0x46b5af
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x48]
call fcn.00470880
mov rdi, rax
test rax, rax
je 0x46c816
mov rcx, rdi
call fcn.00447340
mov edx, 0x78
mov r8d, 8
mov rcx, rdi
call fcn.00442170
mov rax, qword [rsp + 0x58]
mov rbp, qword [rax]
lea rcx, [rsp + 0x70]
lea rdx, [rsp + 0x2b0]
call fcn.00496480
mov rbx, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x80]
mov r15, rsi
mov r14, rdi
test rbx, rbx
je 0x46c858
mov r14, qword [rsp + 0x88]
mov r15, rdi
test r14, r14
je 0x46cced
setns al
js 0x46d11c
movzx r13d, al
mov rcx, r14
mov rdx, r13
call fcn.00442160
mov r12, rax
test rax, rax
jne 0x46ccf3
mov rcx, r14
mov rdx, r13
call fcn.0052ffb0
jmp 0x46d121
mov ebx, 1
mov rcx, rbx
mov rdx, rsi
jmp 0x46b85a
mov qword [rsp + 0x1e0], r12
mov qword [rsp + 0x1e8], rbx
mov qword [rsp + 0x1f0], rbp
mov rax, qword [rsp + 0x370]
mov qword [rsp + 0x210], rax
movaps xmm0, xmmword [rsp + 0x360]
movaps xmmword [rsp + 0x200], xmm0
mov rax, qword [rsp + 0x2f0]
mov qword [rsp + 0x250], rax
movaps xmm0, xmmword [rsp + 0x2e0]
movaps xmmword [rsp + 0x240], xmm0
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x48]
call fcn.00470880
mov rdi, rax
test rax, rax
je 0x46c92f
mov rcx, rdi
call fcn.00447340
mov edx, 0x78
mov r8d, 8
mov rcx, rdi
call fcn.00442170
mov rax, qword [rsp + 0x58]
mov rdi, qword [rax]
mov qword [rsp + 0x180], r12
mov qword [rsp + 0x188], rbx
mov qword [rsp + 0x190], rbp
mov rax, qword [rsp + 0x2f0]
mov qword [rsp + 0x80], rax
movaps xmm0, xmmword [rsp + 0x2e0]
movaps xmmword [rsp + 0x70], xmm0
mov qword [rsp + 0x278], 0
mov qword [rsp + 0x280], rdi
mov rsi, qword [rsp + 0x208]
mov r9, qword [rsp + 0x210]
lea rcx, [rsp + 0xf0]
lea rdx, [rsp + 0x278]
mov r8, rsi
call fcn.00484c70
lea rdx, [rsp + 0x180]
lea r8, [rsp + 0x70]
lea r9, [rsp + 0xf0]
mov rcx, rdi
call fcn.004653a0
mov rbp, rax
mov rdx, qword [rsp + 0x200]
test rdx, rdx
je 0x46b9f8
shl rdx, 4
mov r8d, 8
mov rcx, rsi
jmp 0x46b9f3
mov qword [rsp + 0x180], r12
mov qword [rsp + 0x188], rbx
mov qword [rsp + 0x190], rbp
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x48]
call fcn.00470880
mov rdi, rax
test rax, rax
je 0x46ca35
mov rcx, rdi
call fcn.00447340
mov edx, 0x78
mov r8d, 8
mov rcx, rdi
call fcn.00442170
mov rax, qword [rsp + 0x58]
mov rsi, qword [rax]
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x78], rbx
mov qword [rsp + 0x80], rbp
mov qword [rsp + 0x240], 0
mov qword [rsp + 0x248], rsi
lea r8, [0x00679478]
lea rcx, [rsp + 0xf0]
lea rdx, [rsp + 0x240]
xor r9d, r9d
call fcn.00484c70
lea rdx, [rsp + 0x70]
lea r8, [rsp + 0xf0]
mov rcx, rsi
call fcn.00463930
jmp 0x46b66a
lea rcx, [rsp + 0x188]
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x80], rax
movdqu xmm0, xmmword [rcx]
movdqa xmmword [rsp + 0x70], xmm0
mov rax, qword [rsp + 0x50]
mov rcx, qword [rax]
mov rdx, qword [rax + 8]
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0xf0], rax
lea rax, [rsp + 0x1f8]
mov qword [rsp + 0xf8], rax
mov rax, qword [rsp + 0x318]
mov qword [rsp + 0x100], rax
mov rax, qword [rsp + 0x320]
mov qword [rsp + 0x108], rax
lea r8, [rsp + 0xf0]
call fcn.0044a620
mov esi, eax
mov rcx, qword [rsp + 0x228]
test rcx, rcx
je 0x46cb3a
mov rdx, qword [rsp + 0x220]
test rdx, rdx
je 0x46cb3a
mov r8d, 1
call fcn.00442170
lea rcx, [rsp + 0x188]
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x230], rax
movdqu xmm0, xmmword [rcx]
movdqa xmmword [rsp + 0x220], xmm0
cmp qword [rsp + 0x2b0], 0
jne 0x46bab1
jmp 0x46bad1
lea rcx, [rsp + 0x188]
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x1f0], rax
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0x1e0], xmm0
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x48]
call fcn.00470880
mov qword [rsp + 0xf0], rax
lea rcx, [rsp + 0xf0]
call fcn.00448f00
mov rax, qword [rsp + 0x58]
mov rsi, qword [rax]
lea rcx, [rsp + 0x188]
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x210], rax
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0x200], xmm0
mov qword [rsp + 0xf8], 0
mov qword [rsp + 0x278], 0
mov qword [rsp + 0x280], rsi
lea r8, [0x00679478]
lea rcx, [rsp + 0x70]
lea rdx, [rsp + 0x278]
xor r9d, r9d
call fcn.00484c70
lea rdx, [rsp + 0x200]
lea r8, [rsp + 0xf0]
lea r9, [rsp + 0x70]
mov rcx, rsi
call fcn.00465940
jmp 0x46b66a
lea rcx, [rsp + 0x188]
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x210], rax
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0x200], xmm0
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x48]
call fcn.00470880
mov qword [rsp + 0xf0], rax
lea rcx, [rsp + 0xf0]
call fcn.00448f00
mov rax, qword [rsp + 0x58]
mov rsi, qword [rax]
lea rcx, [rsp + 0x188]
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x80], rax
movdqu xmm0, xmmword [rcx]
movdqa xmmword [rsp + 0x70], xmm0
mov qword [rsp + 0x1e0], 0
mov qword [rsp + 0x1e8], rsi
lea r8, [0x00679478]
lea rcx, [rsp + 0xf0]
lea rdx, [rsp + 0x1e0]
xor r9d, r9d
call fcn.00484c70
lea rdx, [rsp + 0x70]
lea r8, [rsp + 0xf0]
mov rcx, rsi
call fcn.00463930
jmp 0x46b66a
mov r12d, 1
mov rcx, r12
mov rdx, r15
mov r8, r14
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x240], r14
mov qword [rsp + 0x248], r12
mov qword [rsp + 0x250], r14
mov qword [rsp + 0xf8], 0
mov rax, qword [rsp + 0x58]
mov rax, qword [rax]
mov qword [rsp + 0x338], 0
mov qword [rsp + 0x340], rax
lea r8, [0x00679478]
lea rcx, [rsp + 0x180]
lea rdx, [rsp + 0x338]
xor r9d, r9d
call fcn.00484c70
lea rdx, [rsp + 0x240]
lea r8, [rsp + 0xf0]
lea r9, [rsp + 0x180]
mov rcx, rbp
call fcn.00465940
mov rbp, rax
test rbx, rbx
je 0x46b9f8
test rsi, rsi
je 0x46b9f8
mov r8d, 1
mov rcx, rdi
jmp 0x46b9f0
lea r8, str._usr_local_cargo_registry_src_index.crates.io_6f17d22bba15001f_clap_4.0.3_src_mkeymap.rsP
jmp 0x46cdb3
lea r8, str._usr_local_cargo_registry_src_index.crates.io_6f17d22bba15001f_clap_4.0.3_src_util_flat_map.rs
mov rcx, rsi
call fcn.005526f0
jmp 0x46d121
lea r8, str._usr_local_cargo_registry_src_index.crates.io_6f17d22bba15001f_clap_4.0.3_src_parser_parser.rs
jmp 0x46cdfc
lea r8, str._usr_local_cargo_registry_src_index.crates.io_6f17d22bba15001f_clap_4.0.3_src_mkeymap.rsP
call fcn.005526f0
jmp 0x46d121
lea r8, str._usr_local_cargo_registry_src_index.crates.io_6f17d22bba15001f_clap_4.0.3_src_parser_parser.rs
jmp 0x46cdfc
lea r8, str._usr_local_cargo_registry_src_index.crates.io_6f17d22bba15001f_clap_4.0.3_src_parser_parser.rs
jmp 0x46cdfc
lea r8, str._usr_local_cargo_registry_src_index.crates.io_6f17d22bba15001f_clap_4.0.3_src_parser_parser.rs
jmp 0x46cdfc
lea r8, str._usr_local_cargo_registry_src_index.crates.io_6f17d22bba15001f_clap_4.0.3_src_parser_parser.rs
lea rcx, [0x00677b39]
mov edx, 0x63
call fcn.0053c820
jmp 0x46d121
lea rcx, str.unexpected_invalid_UTF_8_code_point
lea r8, str._usr_local_cargo_registry_src_index.crates.io_6f17d22bba15001f_clap_4.0.3_src_parser_parser.rs
mov edx, 0x23
call fcn.0053c820
jmp 0x46d121
lea rcx, [0x00677b39]
lea r8, str._usr_local_cargo_registry_src_index.crates.io_6f17d22bba15001f_clap_4.0.3_src_parser_arg_matcher.rs
mov edx, 0x63
call fcn.0053c820
jmp 0x46d121
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x240], rax
lea rax, [0x006796b0]
mov qword [rsp + 0x20], rax
lea rcx, str.invalid_raw_bytes
lea r9, [0x00677338]
lea r8, [rsp + 0x240]
mov edx, 0x11
call fcn.0053e7f0
jmp 0x46d121
lea rcx, [0x00677b39]
lea r8, str._usr_local_cargo_registry_src_index.crates.io_6f17d22bba15001f_clap_4.0.3_src_parser_parser.rs
mov edx, 0x63
call fcn.0053c820
jmp 0x46d121
lea r8, [0x00677528]
mov rcx, rdi
call fcn.0055dfa0
jmp 0x46d121
lea rax, str._usr_local_cargo_registry_src_index.crates.io_6f17d22bba15001f_clap_4.0.3_src_parser_parser.rs
mov qword [rsp + 0x308], rax
lea rcx, [0x00677b39]
mov edx, 0x63
mov r8, qword [rsp + 0x308]
call fcn.0053c820
jmp 0x46d121
call fcn.0052e5b0
jmp 0x46d121
call fcn.0052e5b0
jmp 0x46d121
mov rcx, rbx
mov rdx, rsi
call fcn.0052ffb0
jmp 0x46d121
lea rcx, [0x00676cb0]
lea r8, str._usr_local_cargo_registry_src_index.crates.io_6f17d22bba15001f_clap_4.0.3_src_parser_parser.rs
mov edx, 0x28
call fcn.00552640
jmp 0x46d121
lea rcx, [0x00676cb0]
lea r8, str._usr_local_cargo_registry_src_index.crates.io_6f17d22bba15001f_clap_4.0.3_src_parser_parser.rs
mov edx, 0x28
call fcn.00552640
jmp 0x46d121
mov edx, 8
mov rcx, r14
call fcn.0052ffb0
jmp 0x46d121
lea rcx, [0x00676cb0]
lea r8, str._usr_local_cargo_registry_src_index.crates.io_6f17d22bba15001f_clap_4.0.3_src_parser_parser.rs
mov edx, 0x28
call fcn.00552640
jmp 0x46d121
lea rax, str._to_long__always_has_the_flag_specified
mov qword [rsp + 0x100], rax
mov qword [rsp + 0x108], 1
mov qword [rsp + 0xf0], 0
lea rax, [0x00679478]
mov qword [rsp + 0x110], rax
mov qword [rsp + 0x118], 0
lea rax, [rsp + 0xf0]
mov qword [rsp + 0x180], rax
lea rax, [0x00537bb0]
mov qword [rsp + 0x188], rax
lea rax, [0x00679620]
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x88], 1
mov qword [rsp + 0x70], 0
lea rax, [rsp + 0x180]
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x98], 1
lea rdx, str._usr_local_cargo_registry_src_index.crates.io_6f17d22bba15001f_clap_4.0.3_src_parser_parser.rs
lea rcx, [rsp + 0x70]
call fcn.005525c0
jmp 0x46d121
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0x180], rax
lea rax, [0x006796b0]
mov qword [rsp + 0x20], rax
lea rcx, str.invalid_raw_bytes
lea r9, [0x00677338]
lea r8, [rsp + 0x180]
mov edx, 0x11
call fcn.0053e7f0
jmp 0x46d121
call fcn.0052e5b0
jmp 0x46d121
call fcn.0052e5b0
jmp 0x46d121
lea rax, [0x00676db0]
mov qword [rsp + 0x20], rax
lea rcx, [0x00676d48]
lea r9, [0x00677358]
lea r8, [rsp + 0x290]
mov edx, 0x37
call fcn.0053e7f0
jmp 0x46d121
mov edx, 8
mov rcx, rbx
call fcn.0052ffb0
jmp 0x46d121
call fcn.0052e5b0
jmp 0x46d121
mov edx, 1
mov rcx, rbp
call fcn.0052ffb0
jmp 0x46d121
mov ecx, 0x40
mov edx, 8
call fcn.0052ffb0
jmp 0x46d121
lea rcx, [0x00677b39]
lea r8, str._usr_local_cargo_registry_src_index.crates.io_6f17d22bba15001f_clap_4.0.3_src_parser_matches_matched_arg.rs
mov edx, 0x63
call fcn.0053c820
jmp 0x46d121
call fcn.0052e5b0
jmp 0x46d121
call fcn.0052e5b0
jmp 0x46d121
mov edx, 1
mov rcx, rsi
call fcn.0052ffb0
jmp 0x46d121
call fcn.0052e5b0
ud2