Function at 0x1400628dc
Capabilities:
Encrypt data using speck
Parse credit card information
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, 0x248
movaps xmmword [rsp + 0x230], xmm6
mov r14, rcx
mov rcx, qword [rsp + 0x2b0]
test r9, r9
je 0x140062a3c
lea rax, [r8 + r9]
xor r12d, r12d
movaps xmm0, xmmword [0x140112ba0]
mov r15, r8
mov bl, byte [r15]
movzx r10d, bl
test r10b, r10b
js 0x14006292d
inc r15
jmp 0x14006299f
mov r11d, r10d
and r11d, 0x1f
movzx edi, byte [r15 + 1]
and edi, 0x3f
cmp r10b, 0xdf
jbe 0x140062981
movzx esi, byte [r15 + 2]
shl edi, 6
and esi, 0x3f
or esi, edi
cmp bl, 0xf0
jb 0x140062991
movzx r10d, byte [r15 + 3]
and r11d, 7
shl r11d, 0x12
shl esi, 6
and r10d, 0x3f
or r10d, esi
or r10d, r11d
cmp r10d, 0x110000
je 0x140062a06
add r15, 4
jmp 0x14006299f
add r15, 2
shl r11d, 6
or r11d, edi
mov r10d, r11d
jmp 0x14006299f
add r15, 3
shl r11d, 0xc
or esi, r11d
mov r10d, esi
cmp r10d, 0x2e
jne 0x1400629aa
xor r11d, r11d
jmp 0x1400629fa
test r12, r12
jne 0x1400629b9
cmp r10d, 0x2d
je 0x140062a3c
mov r11d, 5
cmp r12, 5
jae 0x1400629e7
movups xmmword [rsp + 0x70], xmm0
cmp r12, 4
je 0x14006357d
cmp r10d, dword [rsp + r12*4 + 0x70]
jne 0x1400629e7
inc r12
mov r11, r12
cmp r12, 4
je 0x140062a3c
lea esi, [r10 - 0x7b]
cmp esi, 0xffffffe5
ja 0x1400629fa
add r10d, 0xffffffc6
cmp r10d, 0xfffffff6
jb 0x140062a3c
mov r12, r11
cmp r15, rax
jne 0x14006291c
mov rdx, r8
mov r8, r9
call fcn.1400ff169
mov dword [r14 + 8], 0
mov qword [r14], 0
movaps xmm6, xmmword [rsp + 0x230]
add rsp, 0x248
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov qword [rsp + 0x210], r14
mov eax, dword [rdx + 0x30]
movzx r11d, byte [rdx + 0x34]
xor edi, edi
lea rsi, [rsp + 0x30]
add r9, r8
xorps xmm6, xmm6
movups xmmword [rsp + 0x1a0], xmm6
lea rbx, [rsp + 0x128]
movups xmmword [rbx + 2], xmm6
movzx r10d, word [rbx + 0x10]
lea r14, [rsp + 0x74]
mov word [r14 + 0x12], r10w
movups xmm0, xmmword [rbx]
movups xmmword [r14 + 2], xmm0
mov dword [r14 - 4], edi
mov word [r14], di
movups xmm0, xmmword [rsp + 0x198]
movups xmmword [r14 + 0x14], xmm0
mov r10, qword [rsp + 0x1a8]
mov qword [r14 + 0x24], r10
movups xmmword [r14 + 0x2c], xmm6
mov qword [r14 + 0x3c], r9
mov qword [r14 + 0x44], r8
mov qword [r14 + 0x4c], rsi
mov byte [r14 + 0x58], r11b
shl r11, 0x20
or r11, rax
mov qword [rsp + 0x118], r11
mov qword [rsp + 0x68], rdx
mov qword [rdx + 0x10], rdi
mov dword [rsi + 8], edi
mov qword [rsi], rdi
mov rcx, qword [rcx + 0x10]
mov qword [rsp + 0x190], rcx
mov dword [r14 + 0x54], eax
mov dword [r14 + 0x5c], edi
mov word [r14 + 0x60], di
lea rax, [rsp + 0xd8]
mov byte [rax], dil
mov dword [rax + 4], edi
mov byte [rax + 8], dil
mov dword [rax + 0xc], edi
mov byte [rax + 0x10], dil
mov dword [rax + 0x14], edi
mov byte [rax + 0x18], dil
mov dword [rax + 0x1c], edi
mov byte [rax + 0x20], dil
mov qword [rax + 0x28], rdi
mov dword [rax + 0x38], 0x110000
mov byte [rax + 0x3c], dil
lea rbp, [rsp + 0x90]
xor eax, eax
test rax, rax
je 0x140062ce8
cmp rax, 1
jne 0x14006345e
mov rax, qword [rsp + 0x108]
cmp dword [rsp + 0x70], 0
je 0x1400632af
cmp rax, qword [rsp + 0x88]
jae 0x1400634f2
mov rcx, qword [rsp + 0x80]
jmp 0x1400632cc
mov dword [rsp + 0x110], esi
jmp 0x140062ce8
cmp byte [rsp + 0x114], 0
je 0x140062ba3
cmp byte [rsp + 0x115], bl
jae 0x140062bc8
mov ecx, edi
mov edx, esi
call fcn.1400ff39a
cmp eax, 0x110000
je 0x140062bd0
jmp 0x140062bbc
mov ecx, edi
mov edx, esi
call fcn.1400ff39a
cmp eax, 0x110000
jne 0x140062bbc
test bl, bl
jne 0x140062bd0
jmp 0x14006334e
mov dword [rsp + 0x110], eax
jmp 0x140062ce8
test bl, bl
je 0x140063325
cmp dword [rsp + 0x70], 0
je 0x140062c0d
mov rdx, qword [rsp + 0x88]
cmp rdx, qword [rsp + 0x78]
jne 0x140062bf8
lea rcx, [rsp + 0x78]
call fcn.1400622af
mov rdx, qword [rsp + 0x88]
mov rax, qword [rsp + 0x80]
mov dword [rax + rdx*4], esi
inc qword [rsp + 0x88]
jmp 0x140062c23
movzx eax, word [rsp + 0x74]
cmp rax, 3
ja 0x140062c8b
mov dword [rsp + rax*4 + 0x78], esi
inc eax
mov word [rsp + 0x74], ax
mov byte [rsp + 0x114], 1
mov byte [rsp + 0x115], bl
jmp 0x140062ce8
mov ecx, esi
call fcn.1400ff2ed
test rax, rax
je 0x14006304e
mov r15, rdx
test rdx, rdx
je 0x140062ce8
mov rdi, rax
shl r15, 2
xor esi, esi
mov edx, dword [rdi + rsi]
mov rcx, rbp
call fcn.140062559
add rsi, 4
cmp r15, rsi
jne 0x140062c5c
jmp 0x140062ce8
shl ecx, 6
or ecx, r9d
mov esi, ecx
jmp 0x140062f5e
shl ecx, 0xc
or edx, ecx
mov esi, edx
jmp 0x140062f5e
lea rcx, [rsp + 0x128]
lea rdx, [rsp + 0x74]
mov r8d, esi
call fcn.14010b6c5
cmp dword [rsp + 0x70], 0
je 0x140062cc6
cmp qword [rsp + 0x78], 0
je 0x140062cc6
mov r8, qword [rsp + 0x80]
mov rcx, qword [0x1401849b0]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
movups xmm0, xmmword [rsp + 0x128]
movups xmm1, xmmword [rsp + 0x138]
movaps xmmword [rsp + 0x80], xmm1
movaps xmmword [rsp + 0x70], xmm0
jmp 0x140062c23
mov r9, qword [rsp + 0x98]
test r9, r9
jne 0x140062f1a
mov r12b, byte [rsp + 0xc8]
cmp r12b, 2
je 0x140063065
mov rdi, qword [rsp + 0xa0]
mov rax, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xb0]
mov r15, qword [rsp + 0xc0]
mov bl, byte [rsp + 0xc9]
mov r13, qword [rsp + 0xb8]
test rax, rax
je 0x140062de8
cmp rax, rdi
je 0x140062ddc
lea rcx, [rax + 1]
mov qword [rsp + 0xa8], rcx
mov r8b, byte [rax]
movzx esi, r8b
test sil, sil
jns 0x140062f5e
mov ecx, esi
and ecx, 0x1f
lea rdx, [rax + 2]
mov qword [rsp + 0xa8], rdx
movzx r9d, byte [rax + 1]
and r9d, 0x3f
cmp sil, 0xdf
jbe 0x140062c72
lea rdx, [rax + 3]
mov qword [rsp + 0xa8], rdx
movzx edx, byte [rax + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp r8b, 0xf0
jb 0x140062c7f
lea r8, [rax + 4]
mov qword [rsp + 0xa8], r8
movzx esi, byte [rax + 3]
and ecx, 7
shl ecx, 0x12
shl edx, 6
and esi, 0x3f
or esi, edx
or esi, ecx
cmp esi, 0x110000
jne case.0x140062ee2.0
mov qword [rsp + 0xa8], 0
cmp r13, r14
je 0x14006305d
lea rax, [r13 + 1]
mov qword [rsp + 0xb8], rax
mov cl, byte [r13]
movzx esi, cl
test sil, sil
js 0x140062e0e
mov r13, rax
jmp 0x140062e87
mov eax, esi
and eax, 0x1f
lea r8, [r13 + 2]
mov qword [rsp + 0xb8], r8
movzx edx, byte [r13 + 1]
and edx, 0x3f
cmp sil, 0xdf
jbe 0x140062e73
lea r8, [r13 + 3]
mov qword [rsp + 0xb8], r8
movzx esi, byte [r13 + 2]
shl edx, 6
and esi, 0x3f
or esi, edx
cmp cl, 0xf0
jb 0x140062e7f
lea rcx, [r13 + 4]
mov qword [rsp + 0xb8], rcx
movzx edx, byte [r13 + 3]
and eax, 7
shl eax, 0x12
shl esi, 6
and edx, 0x3f
or edx, esi
or edx, eax
mov r13, rcx
mov esi, edx
jmp 0x140062e87
shl eax, 6
or eax, edx
mov r13, r8
mov esi, eax
jmp 0x140062e87
shl eax, 0xc
or esi, eax
mov r13, r8
lea eax, [rsi - 0x2d]
cmp eax, 2
jb 0x140062f5e
cmp esi, 0x110000
je 0x14006305d
lea eax, [rsi - 0x61]
cmp eax, 0x1a
jb 0x140062f5e
lea eax, [rsi - 0x30]
cmp eax, 0xa
jb 0x140062f5e
mov ecx, esi
call fcn.14006276d
mov rcx, rax
movzx edx, byte [rax]
mov eax, 0
cmp edx, 1
je case.default.0x140062ee2
mov eax, edx
lea rdx, [0x140065bdc]
movsxd rax, dword [rdx + rax*4]
add rax, rdx
jmp rax
mov r8d, dword [rsp + 0xd0]
lea rdi, [rsp + 0xd8]
jmp 0x14006310d
cmp esi, 0x110000
je 0x14006305d
cmp byte [rsp + 0xf8], 0
je 0x140062fcc
cmp esi, 0x80
jb 0x14006304e
lea edi, [rsi - 0xac00]
cmp edi, 0x2ba4
jb 0x140062fe6
mov ecx, esi
call fcn.1400ff23a
test rax, rax
jne 0x140062f9e
mov ecx, esi
call fcn.1400ff2ed
test rax, rax
je 0x14006304e
mov rdi, rax
mov r15, rdx
test rdx, rdx
je 0x140062ce8
shl r15, 2
xor esi, esi
mov edx, dword [rdi + rsi]
mov rcx, rbp
call fcn.140062559
add rsi, 4
cmp r15, rsi
jne 0x140062fb3
jmp 0x140062ce8
cmp esi, 0x80
jb 0x14006304e
lea edi, [rsi - 0xac00]
cmp edi, 0x2ba4
jae 0x140062c37
mov esi, edi
mov eax, 0xdee95c4d
imul rsi, rax
shr rsi, 0x29
lea edx, [rsi + 0x1100]
mov rcx, rbp
call fcn.140062559
imul eax, esi, 0x24c
mov ecx, edi
sub ecx, eax
imul eax, ecx, 0x925
shr eax, 0x10
add eax, 0x1161
movzx edx, ax
mov rcx, rbp
call fcn.140062559
mov eax, edi
shr eax, 2
imul rax, rax, 0x24924925
shr rax, 0x20
lea ecx, [rax + rax*8]
lea ecx, [rcx + rcx*2]
add ecx, eax
sub edi, ecx
je 0x140062ce8
add edi, 0x11a7
mov esi, edi
mov rcx, rbp
mov edx, esi
call fcn.140062559
jmp 0x140062ce8
mov byte [rsp + 0xc8], 2
mov r9d, dword [rsp + 0xd0]
test r9d, r9d
mov rdx, qword [rsp + 0xe8]
movzx r8d, word [rsp + 0xd4]
movzx eax, r8w
mov rcx, rdx
cmove rcx, rax
test rcx, rcx
je 0x1400632e8
mov rcx, qword [rsp + 0x98]
test r9d, r9d
je 0x1400630b4
mov r8, qword [rsp + 0xe0]
lea rdi, [rsp + 0xd8]
jmp 0x1400630cd
cmp r8w, 5
lea rdi, [rsp + 0xd8]
jae 0x140065a0c
mov r8, rdi
mov rdx, rax
mov rax, rdx
sub rax, rcx
jb 0x1400659e9
lea rcx, [r8 + rcx*8]
mov rdx, rax
call fcn.140061bd8
mov r8d, dword [rsp + 0xd0]
test r8d, r8d
je 0x1400630fc
mov r9, qword [rsp + 0xe8]
jmp 0x140063105
movzx r9d, word [rsp + 0xd4]
mov qword [rsp + 0x98], r9
mov rcx, qword [rsp + 0x90]
test r8d, r8d
je 0x14006312c
mov rdx, qword [rsp + 0xe0]
mov rax, qword [rsp + 0xe8]
jmp 0x140063141
movzx eax, word [rsp + 0xd4]
cmp rax, 5
jae 0x1400659e0
mov rdx, rdi
cmp rax, rcx
jbe 0x14006353a
mov esi, dword [rdx + rcx*8 + 4]
inc rcx
cmp rcx, r9
jne 0x140063165
test r8d, r8d
je 0x140063172
mov rdx, qword [rsp + 0xe8]
jmp 0x14006317a
mov qword [rsp + 0x90], rcx
jmp 0x140063235
movzx edx, word [rsp + 0xd4]
sub rdx, r9
je 0x140063203
xor ecx, ecx
mov rax, qword [rsp + 0x98]
add rax, rcx
cmp dword [rsp + 0xd0], 0
je 0x1400631b5
mov r9, qword [rsp + 0xe8]
cmp r9, rax
jbe 0x14006351d
mov r8, qword [rsp + 0xe0]
jmp 0x1400631d4
movzx r9d, word [rsp + 0xd4]
cmp r9, 5
jae 0x1400659ba
mov r8, rdi
cmp rax, r9
jae 0x14006351d
cmp r9, rcx
jbe 0x140063529
mov r9b, byte [r8 + rax*8]
mov eax, dword [r8 + rax*8 + 4]
mov byte [r8 + rcx*8], r9b
mov dword [r8 + rcx*8 + 4], eax
lea rax, [rcx + 1]
mov rcx, rax
cmp rdx, rax
jne 0x140063185
mov r8d, dword [rsp + 0xd0]
test r8d, r8d
je 0x14006321c
cmp qword [rsp + 0xe8], rdx
jb 0x140063231
mov qword [rsp + 0xe8], rdx
jmp 0x140063231
movzx eax, word [rsp + 0xd4]
cmp rdx, rax
jae 0x140063231
mov word [rsp + 0xd4], dx
movups xmmword [rbp], xmm6
imul eax, esi, 0x9e3779b9
imul ecx, esi, 0x31415926
xor eax, ecx
imul rax, rax, 0x39a
shr rax, 0x1f
and eax, 0xfffffffe
lea rdx, [0x140159248]
movzx eax, word [rax + rdx]
add eax, esi
imul eax, eax, 0x9e3779b9
xor eax, ecx
imul rax, rax, 0x39a
shr rax, 0x1e
and eax, 0xfffffffc
lea rcx, [0x14015997c]
mov ebx, dword [rax + rcx]
mov eax, ebx
shr eax, 8
cmp eax, esi
mov eax, 0
cmovne ebx, eax
mov edi, dword [rsp + 0x110]
cmp edi, 0x110000
jne 0x140062b7e
test bl, bl
je 0x140062b72
mov edi, esi
jmp 0x140063355
movzx ecx, word [rsp + 0x74]
cmp rcx, 5
jae 0x140065a1d
cmp rax, rcx
jae 0x140063500
lea rcx, [rsp + 0x78]
mov edi, dword [rcx + rax*4]
inc rax
mov qword [rsp + 0x100], 1
mov qword [rsp + 0x108], rax
jmp 0x140063355
mov qword [rsp + 0x100], 2
mov qword [rsp + 0x108], 0
mov edi, dword [rsp + 0x110]
mov eax, 2
cmp edi, 0x110000
je 0x140062b31
mov dword [rsp + 0x110], 0x110000
jmp 0x140063355
mov dword [rsp + 0x110], esi
mov byte [rsp + 0x114], 0
mov qword [rsp + 0x100], 1
mov qword [rsp + 0x108], 0
jmp 0x140063355
mov dword [rsp + 0x110], esi
cmp edi, 0x7f
ja 0x140063388
mov rsi, qword [rsp + 0x68]
mov rdx, qword [rsi + 0x10]
cmp rdx, qword [rsi]
jne 0x140063374
mov rcx, rsi
call fcn.14007a079
mov rdx, qword [rsi + 0x10]
mov rax, qword [rsi + 8]
mov byte [rax + rdx], dil
inc rdx
mov qword [rsi + 0x10], rdx
jmp 0x140063451
mov dword [rsp + 0x128], 0
mov eax, edi
cmp edi, 0x800
jae 0x1400633c1
shr eax, 6
or al, 0xc0
mov byte [rsp + 0x128], al
and dil, 0x3f
or dil, 0x80
mov byte [rsp + 0x129], dil
mov r8d, 2
jmp 0x14006343f
cmp edi, 0x10000
jae 0x1400633fd
shr eax, 0xc
or al, 0xe0
mov byte [rsp + 0x128], al
mov eax, edi
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x129], al
and dil, 0x3f
or dil, 0x80
mov byte [rsp + 0x12a], dil
mov r8d, 3
jmp 0x14006343f
shr eax, 0x12
or al, 0xf0
mov byte [rsp + 0x128], al
mov eax, edi
shr eax, 0xc
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x129], al
mov eax, edi
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x12a], al
and dil, 0x3f
or dil, 0x80
mov byte [rsp + 0x12b], dil
mov r8d, 4
mov rcx, qword [rsp + 0x68]
lea rdx, [rsp + 0x128]
call fcn.1400ff169
mov rax, qword [rsp + 0x100]
jmp 0x140062b31
mov rdx, qword [rsp + 0x108]
mov eax, dword [rsp + 0x70]
test eax, eax
je 0x140063482
cmp rdx, qword [rsp + 0x88]
jae 0x1400634bb
mov r8, qword [rsp + 0x80]
jmp 0x14006349b
movzx ecx, word [rsp + 0x74]
cmp rcx, 5
jae 0x140065a1d
lea r8, [rsp + 0x78]
cmp rdx, rcx
jae 0x1400634c9
mov edi, dword [r8 + rdx*4]
inc rdx
mov qword [rsp + 0x100], 2
mov qword [rsp + 0x108], rdx
jmp 0x140063355
mov qword [rsp + 0x88], 0
jmp 0x1400634d5
test cx, cx
je 0x1400634d5
mov word [rsp + 0x74], 0
mov edi, dword [rsp + 0x110]
mov ecx, 0x110000
mov dword [rsp + 0x110], ecx
cmp edi, ecx
jne 0x140063355
jmp 0x140063546
mov qword [rsp + 0x88], 0
jmp 0x14006350c
test cx, cx
je 0x14006350c
mov word [rsp + 0x74], 0
mov qword [rsp + 0x100], 0
jmp 0x140062b2f
lea r8, [0x14012fbc8]
mov rcx, rax
jmp 0x140063530
lea r8, [0x14012fbe0]
mov rdx, r9
call fcn.1401091b0
ud2
lea r8, [0x14012fbb0]
mov rdx, rax
jmp 0x140063533
cmp dword [rsp + 0xd0], 0
je 0x140063590
cmp qword [rsp + 0xd8], 0
mov rsi, qword [rsp + 0x68]
je 0x140063595
mov r8, qword [rsp + 0xe0]
mov rcx, qword [0x1401849b0]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov eax, dword [rsp + 0x70]
jmp 0x140063595
lea r8, str.C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001fidna_0.3.0_srcuts46.rs
mov ecx, 4
mov edx, 4
jmp 0x140063533
mov rsi, qword [rsp + 0x68]
test eax, eax
je 0x1400635b8
cmp qword [rsp + 0x78], 0
je 0x1400635b8
mov r8, qword [rsp + 0x80]
mov rcx, qword [0x1401849b0]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
xor edx, edx
lea rax, [rsp + 0x198]
mov qword [rax], rdx
mov qword [rax + 8], 8
mov qword [rax + 0x10], rdx
mov rax, qword [rsp + 0x118]
and rax, 0xffffffffffff00ff
mov qword [rsp + 0x1f0], rax
mov rax, qword [rsi + 8]
mov rcx, qword [rsi + 0x10]
lea rbx, [rsp + 0x128]
mov qword [rbx], rax
mov qword [rbx + 8], rcx
mov qword [rbx + 0x10], rdx
mov qword [rbx + 0x18], rcx
mov qword [rbx + 0x20], 1
movabs rax, 0x2e0000002e
mov qword [rbx + 0x28], rax
mov qword [rbx + 0x30], rdx
mov qword [rbx + 0x38], rcx
mov word [rbx + 0x40], 1
lea r15, [rsp + 0x30]
xorps xmm6, xmm6
xor edi, edi
xor r12d, r12d
mov rcx, rbx
call fcn.140065bfc
test rax, rax
je 0x140064cf4
mov r13, rax
mov rsi, rdx
test dil, 1
mov rdi, qword [rsp + 0x2b0]
je 0x140063680
mov rdx, qword [rdi + 0x10]
cmp rdx, qword [rdi]
jne 0x140063671
mov rcx, rdi
call fcn.14007a079
mov rdx, qword [rdi + 0x10]
mov rax, qword [rdi + 8]
mov byte [rax + rdx], 0x2e
inc rdx
mov qword [rdi + 0x10], rdx
cmp rsi, 4
jb 0x140063690
cmp dword [r13], 0x2d2d6e78
je 0x1400636d0
test r12b, 1
jne 0x1400636a4
mov rcx, r13
mov rdx, rsi
call fcn.140065f14
mov r12d, eax
mov rcx, r13
mov rdx, rsi
mov r8, qword [rsp + 0x118]
mov r9, r15
call fcn.140065d30
mov rcx, rdi
mov rdx, r13
mov r8, rsi
call fcn.1400ff169
mov dil, 1
jmp 0x140063637
add r13, 4
add rsi, 0xfffffffffffffffc
mov qword [rsp + 0x1a8], 0
mov rbp, rsi
mov cl, 0x2d
mov rdx, r13
mov r8, rbp
call fcn.1400382a0
cmp rax, 1
jne 0x14006371b
mov rbp, rdx
mov r14, rdx
inc r14
je 0x140063716
cmp rsi, r14
jb 0x140063716
cmp byte [r13 + rbp], 0x2d
je 0x1400639f2
cmp rbp, rsi
jbe 0x1400636e7
lea rax, str.Tried_to_shrink_to_a_larger_capacity
xor ebp, ebp
mov r14, r13
xor ecx, ecx
cmp rbp, rcx
je 0x140063755
cmp byte [rax + rcx], 0
lea rcx, [rcx + 1]
jns 0x140063729
mov byte [rsp + 0x30], 1
mov dil, 1
mov r12b, 1
lea rbx, [rsp + 0x128]
lea r15, [rsp + 0x30]
jmp 0x140063637
mov r13, rax
mov rbx, rsi
test rbx, rbx
je 0x140063a21
add rbx, r14
xor eax, eax
mov qword [rsp + 0x48], rax
mov r15d, 0x48
mov dword [rsp + 0x40], 0x80
mov eax, ebp
mov dword [rsp + 0x58], ebp
xor esi, esi
lea r9d, [r15 + 0x1a]
inc r14
mov r10d, r15d
neg r10d
mov r11d, 0x24
mov edi, 1
mov ecx, esi
mov al, byte [r14 - 1]
lea edx, [rax - 0x30]
cmp dl, 0xa
jae 0x1400637b0
add al, 0xea
mov edx, eax
jmp 0x1400637c4
lea edx, [rax - 0x41]
cmp dl, 0x1a
jb 0x1400637c4
add al, 0x9f
mov edx, eax
cmp al, 0x1a
jae 0x140063738
test edi, edi
je 0x1400659f7
movzx r8d, dl
mov eax, ecx
not eax
xor edx, edx
div edi
cmp eax, r8d
jb 0x140063738
mov eax, edi
imul eax, r8d
add ecx, eax
lea eax, [r10 + r11]
cmp r11d, r9d
mov edx, 0x1a
cmovae eax, edx
cmp r11d, r15d
mov edx, 1
cmovbe eax, edx
cmp eax, r8d
ja 0x140063835
mov r8d, 0x24
sub r8d, eax
mov eax, r8d
mul edi
jo 0x140063738
cmp r14, rbx
je 0x140063738
add r11d, 0x24
imul edi, r8d
inc r14
jmp 0x14006379e
mov r10d, dword [rsp + 0x58]
inc r10d
je 0x1400659d0
mov eax, ecx
sub eax, esi
test esi, esi
mov r8d, 2
mov edx, 0x2bc
cmove r8d, edx
xor r15d, r15d
xor edx, edx
div r8d
mov r8d, eax
xor edx, edx
div r10d
add eax, r8d
cmp eax, 0x1c8
jb 0x1400638a5
xor r15d, r15d
mov r9d, 0xd41d41d5
mov edx, eax
imul rdx, r9
shr rdx, 0x20
mov r8d, eax
sub r8d, edx
shr r8d, 1
add r8d, edx
shr r8d, 5
add r15d, 0x24
cmp eax, 0x3e57
mov eax, r8d
ja 0x14006387b
jmp 0x1400638a8
mov r8d, eax
lea eax, [r8*4]
lea eax, [rax + rax*8]
add r8d, 0x26
xor edx, edx
div r8w
mov edi, eax
mov eax, ecx
xor edx, edx
mov dword [rsp + 0x58], r10d
div r10d
add dword [rsp + 0x40], eax
jb 0x140063738
mov eax, ecx
xor edx, edx
div dword [rsp + 0x58]
mov eax, dword [rsp + 0x40]
xor eax, 0xd800
add eax, 0xffef0000
cmp eax, 0xffef0800
jb 0x140063738
cmp dword [rsp + 0x40], 0x110000
je 0x140063738
mov esi, edx
mov qword [rsp + 0x180], r12
mov r8, qword [rsp + 0x1a0]
mov r12d, edx
mov rdx, qword [rsp + 0x48]
test rdx, rdx
je 0x140063945
mov rax, rdx
shl rax, 4
xor ecx, ecx
mov r9, qword [r8 + rcx]
cmp r9, r12
jb 0x14006393c
inc r9
mov qword [r8 + rcx], r9
add rcx, 0x10
cmp rax, rcx
jne 0x14006392c
cmp rdx, qword [rsp + 0x198]
jne 0x14006396c
lea rcx, [rsp + 0x198]
call fcn.140067ea9
mov r8, qword [rsp + 0x1a0]
mov rdx, qword [rsp + 0x1a8]
movzx eax, di
add r15d, eax
mov rax, rdx
shl rax, 4
mov qword [r8 + rax], r12
mov ecx, dword [rsp + 0x40]
mov dword [r8 + rax + 8], ecx
lea rcx, [rdx + 1]
mov rax, rcx
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x1a8], rcx
inc esi
cmp r14, rbx
mov r12, qword [rsp + 0x180]
jne 0x140063784
mov qword [rsp + 0x1b0], r13
mov qword [rsp + 0x40], r8
cmp qword [rsp + 0x48], 0x15
jae 0x140064677
cmp qword [rsp + 0x48], 2
jb 0x140064cda
mov r8d, 1
mov rsi, qword [rsp + 0x40]
mov rcx, rsi
mov rdx, qword [rsp + 0x48]
call fcn.1400624a5
mov r11, rsi
jmp 0x140064cd0
test rbp, rbp
je 0x140063c8d
cmp rbp, rsi
ja 0x140065b04
mov rbx, rsi
sub rbx, r14
jbe 0x140063c95
cmp byte [r13 + r14], 0xbf
jg 0x140063c9b
jmp 0x140065b1e
mov r11, qword [rsp + 0x1a0]
mov rsi, qword [rsp + 0x1a8]
lea r8, [rsi + rbp]
mov rcx, qword [rsp + 0x2b0]
mov rax, qword [rcx]
mov rcx, qword [rcx + 0x10]
mov qword [rsp + 0x58], rcx
sub rax, rcx
cmp rax, r8
mov qword [rsp + 0x40], r11
jb 0x14006465b
add rbp, r13
xor ebx, ebx
xor r14d, r14d
mov rcx, rbx
shl rcx, 4
add rcx, r11
cmp rbx, rsi
mov eax, 0
cmovae rcx, rax
mov rax, r13
cmp rbx, rsi
jae 0x140063a89
cmp qword [rcx], r14
je 0x140063b3c
mov rdx, rbp
cmp rax, rbp
je 0x140063af4
mov r9b, byte [rax]
movzx r15d, r9b
test r15b, r15b
jns 0x140063b05
mov edx, r15d
and edx, 0x1f
movzx r10d, byte [rax + 1]
and r10d, 0x3f
cmp r15b, 0xdf
jbe 0x140063b13
movzx r8d, byte [rax + 2]
shl r10d, 6
and r8d, 0x3f
or r8d, r10d
cmp r9b, 0xf0
jb 0x140063b25
movzx r15d, byte [rax + 3]
add rax, 4
and edx, 7
shl edx, 0x12
shl r8d, 6
and r15d, 0x3f
or r15d, r8d
or r15d, edx
mov r13, rax
mov rdx, rax
cmp r15d, 0x110000
jne 0x140063b37
mov rax, rdx
cmp rbx, rsi
jb 0x140063a7b
jmp 0x140063c48
mov rdi, r12
inc rax
inc r14
mov r13, rax
jmp 0x140063b4f
add rax, 2
shl edx, 6
or edx, r10d
mov r13, rax
mov r15d, edx
jmp 0x140063b43
add rax, 3
shl edx, 0xc
or r8d, edx
mov r13, rax
mov r15d, r8d
jmp 0x140063b43
mov r13, rax
jmp 0x140063b43
inc rbx
mov r15d, dword [rcx + 8]
inc r14
cmp r15d, 0x7f
ja 0x140063b8d
mov rdi, r12
mov r12, qword [rsp + 0x2b0]
mov rdx, qword [r12 + 0x10]
cmp rdx, qword [r12]
jne 0x140063b74
mov rcx, r12
call fcn.14007a079
mov r11, qword [rsp + 0x40]
mov rdx, qword [r12 + 0x10]
mov rax, qword [r12 + 8]
mov byte [rax + rdx], r15b
inc rdx
mov qword [r12 + 0x10], rdx
mov r12, rdi
jmp 0x140063a62
mov dword [rsp + 0x70], 0
mov eax, r15d
cmp r15d, 0x800
jae 0x140063bbf
shr eax, 6
or al, 0xc0
mov byte [rsp + 0x70], al
and r15b, 0x3f
or r15b, 0x80
mov byte [rsp + 0x71], r15b
mov r8d, 2
jmp 0x140063c2c
cmp r15d, 0x10000
jae 0x140063bf4
shr eax, 0xc
or al, 0xe0
mov byte [rsp + 0x70], al
mov eax, r15d
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x71], al
and r15b, 0x3f
or r15b, 0x80
mov byte [rsp + 0x72], r15b
mov r8d, 3
jmp 0x140063c2c
shr eax, 0x12
or al, 0xf0
mov byte [rsp + 0x70], al
mov eax, r15d
shr eax, 0xc
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x71], al
mov eax, r15d
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x72], al
and r15b, 0x3f
or r15b, 0x80
mov byte [rsp + 0x73], r15b
mov r8d, 4
mov rcx, qword [rsp + 0x2b0]
lea rdx, [rsp + 0x70]
call fcn.1400ff169
mov r11, qword [rsp + 0x40]
jmp 0x140063a62
mov rax, qword [rsp + 0x2b0]
mov rbp, qword [rax + 8]
mov rsi, qword [rax + 0x10]
mov r8, qword [rsp + 0x58]
test r8, r8
lea rbx, [rsp + 0x128]
lea r15, [rsp + 0x30]
je 0x140063d10
cmp rsi, r8
jbe 0x140063d0a
cmp byte [rbp + r8], 0xbf
jg 0x140063d10
jmp 0x140065b35
mov rax, r13
jmp 0x140063722
jne 0x140065b1e
add r14, r13
cmp rbp, 8
jb 0x140063cff
lea rcx, [r13 + 7]
and rcx, 0xfffffffffffffff8
mov rax, rcx
sub rax, r13
cmp rax, rbp
ja 0x140063cff
movabs rdx, 0x8080808080808080
test qword [r13], rdx
jne 0x140063738
cmp rcx, r13
mov ecx, 8
cmove rax, rcx
lea rcx, [rbp - 8]
cmp rax, rcx
jae 0x140064641
movabs rdx, 0x8080808080808080
test qword [r13 + rax], rdx
jne 0x140063738
add rax, 8
jmp 0x140063cdb
mov rax, r13
mov rsi, rbx
jmp 0x140063727
jne 0x140065b35
lea r14, [r8 + rbp]
mov r13, rsi
sub r13, r8
test r12b, 1
jne 0x140063d2e
mov rcx, r14
mov rdx, r13
call fcn.140065f14
mov r12d, eax
mov al, byte [rsp + 0x32]
or al, byte [rsp + 0x30]
or al, byte [rsp + 0x33]
or al, byte [rsp + 0x34]
or al, byte [rsp + 0x35]
or al, byte [rsp + 0x36]
or al, byte [rsp + 0x37]
or al, byte [rsp + 0x38]
or al, byte [rsp + 0x39]
or al, byte [rsp + 0x3a]
mov dil, 1
jne 0x140063637
cmp byte [rsp + 0x31], 0
jne 0x140063637
cmp byte [rsp + 0x3b], 0
jne 0x140063637
add rbp, rsi
xor edx, edx
mov rax, r14
xor ecx, ecx
mov r8d, edx
cmp rax, rbp
je 0x14006445e
mov edx, ecx
mov r11b, byte [rax]
movzx r9d, r11b
test r9b, r9b
js 0x140063d9e
inc rax
jmp 0x140063e0d
mov ecx, r9d
and ecx, 0x1f
movzx esi, byte [rax + 1]
and esi, 0x3f
cmp r9b, 0xdf
jbe 0x140063df2
movzx r10d, byte [rax + 2]
shl esi, 6
and r10d, 0x3f
or r10d, esi
cmp r11b, 0xf0
jb 0x140063e00
movzx r9d, byte [rax + 3]
and ecx, 7
shl ecx, 0x12
shl r10d, 6
and r9d, 0x3f
or r9d, r10d
or r9d, ecx
cmp r9d, 0x110000
je 0x14006445e
add rax, 4
jmp 0x140063e0d
add rax, 2
shl ecx, 6
or ecx, esi
mov r9d, ecx
jmp 0x140063e0d
add rax, 3
shl ecx, 0xc
or r10d, ecx
mov r9d, r10d
xor ecx, ecx
cmp r9d, 0x80
jb 0x140063d82
imul ecx, r9d, 0x9e3779b9
imul r10d, r9d, 0x31415926
xor ecx, r10d
imul rcx, rcx, 0x39a
shr rcx, 0x1f
and ecx, 0xfffffffe
lea r11, [0x140159248]
movzx ecx, word [rcx + r11]
add ecx, r9d
imul ecx, ecx, 0x9e3779b9
xor ecx, r10d
imul rcx, rcx, 0x39a
shr rcx, 0x1e
and ecx, 0xfffffffc
lea r10, [0x14015997c]
mov ecx, dword [rcx + r10]
mov r10d, ecx
shr r10d, 8
cmp r10d, r9d
mov r10d, 0
cmovne ecx, r10d
cmp dl, cl
jbe 0x140063e8c
test cl, cl
jne 0x14006461c
lea edx, [r9 - 0x340]
cmp edx, 4
ja 0x140063ea1
cmp edx, 2
jne 0x14006461c
mov dl, 2
cmp r9d, 0x102d
jg 0x140063f07
cmp r9d, 0xc55
jle 0x140063f57
cmp r9d, 0xf42
jle 0x1400640e2
lea r10d, [r9 - 0xf43]
cmp r10d, 0x3e
ja 0x140063ee7
movabs r11, 0x4021004002108401
bt r11, r10
jb 0x14006461c
lea r10d, [r9 - 0xf93]
cmp r10d, 0x26
ja 0x140064228
movabs r11, 0x4002108401
jmp 0x140063ffa
cmp r9d, 0x2125
jg 0x140063f9b
cmp r9d, 0x1fba
jg 0x140064009
lea r10d, [r9 - 0x1f71]
cmp r10d, 0xc
ja 0x140063f3e
mov r11d, 0x1555
bt r11d, r10d
jb 0x14006461c
cmp r9d, 0x102e
je 0x140064444
cmp r9d, 0x1b35
jmp 0x140064215
cmp r9d, 0x9d6
jg 0x14006403c
cmp r9d, 0x373
jg 0x140064118
lea r10d, [r9 - 0x30f]
cmp r10d, 0x36
ja 0x140064228
movabs r11, 0x48020000001005
bt r11, r10
jb 0x140063d7f
jmp 0x140064228
cmp r9d, 0x110b9
jg 0x14006409f
cmp r9d, 0xfa0f
jle 0x140064186
lea r10d, [r9 - 0xfa10]
cmp r10d, 0x12
lea rbx, [rsp + 0x128]
lea r15, [rsp + 0x30]
ja 0x140063fdf
mov r11d, 0x50005
bt r11d, r10d
jb 0x14006461c
lea r10d, [r9 - 0xfb1d]
cmp r10d, 0x21
ja 0x140064228
movabs r11, 0x200000005
bt r11, r10
jb 0x14006461c
jmp 0x140064228
lea r10d, [r9 - 0x1fbe]
cmp r10d, 0x3f
ja 0x14006402a
movabs r11, 0xa800202020202801
bt r11, r10
jb 0x14006461c
cmp r9d, 0x1fbb
jne 0x140064228
jmp 0x14006461c
mov r11, r12
cmp r9d, 0xb3d
jg 0x14006414e
lea r10d, [r9 - 0xa33]
cmp r10d, 0x2b
lea rbx, [rsp + 0x128]
lea r15, [rsp + 0x30]
ja 0x14006407d
mov r12, r11
movabs rsi, 0x80000000009
bt rsi, r10
jb 0x14006461c
cmp r9d, 0x9d7
je 0x140064456
cmp r9d, 0x9df
mov r12, r11
jne 0x140064228
jmp 0x14006461c
cmp r9d, 0x114af
jle 0x1400641bf
lea r10d, [r9 - 0x114b0]
cmp r10d, 0xd
ja 0x1400640c9
mov r11d, 0x2401
bt r11d, r10d
jb 0x140064444
cmp r9d, 0x115af
je 0x140064444
cmp r9d, 0x11930
jmp 0x140064215
cmp r9d, 0xd56
jle 0x1400641de
lea r10d, [r9 - 0xdca]
cmp r10d, 0x15
ja 0x14006410c
mov r11d, 0x200021
bt r11d, r10d
jb 0x140064444
cmp r9d, 0xd57
jmp 0x140064215
lea r10d, [r9 - 0x374]
cmp r10d, 0x13
ja 0x140064135
mov r11d, 0x80401
bt r11d, r10d
jb 0x14006461c
cmp r9d, 0x93c
je 0x140064444
cmp r9d, 0x9be
jmp 0x140064215
lea r10d, [r9 - 0xb3e]
cmp r10d, 0x19
ja 0x14006416a
mov esi, 0x3000001
bt esi, r10d
jb 0x140064441
cmp r9d, 0xbbe
je 0x140064441
cmp r9d, 0xbd7
mov r12, r11
jmp 0x140064215
lea r10d, [r9 - 0x2329]
cmp r10d, 2
lea rbx, [rsp + 0x128]
lea r15, [rsp + 0x30]
jb 0x14006461c
cmp r9d, 0x2126
je 0x14006461c
cmp r9d, 0x2adc
jne 0x140064228
jmp 0x14006461c
cmp r9d, 0x1133d
jg 0x140064201
cmp r9d, 0x110ba
je 0x140064444
cmp r9d, 0x11127
jmp 0x140064215
cmp r9d, 0xc56
je 0x140064444
cmp r9d, 0xcc2
je 0x140064444
cmp r9d, 0xd3e
jmp 0x140064215
cmp r9d, 0x1133e
je 0x140064444
cmp r9d, 0x11357
lea rbx, [rsp + 0x128]
lea r15, [rsp + 0x30]
je 0x140063d7f
lea r10d, [r9 - 0x2f800]
cmp r10d, 0x21e
jb 0x14006461c
lea r10d, [r9 - 0x1d1bb]
cmp r10d, 6
jb 0x14006461c
lea r10d, [r9 - 0x1d15e]
cmp r10d, 7
jb 0x14006461c
lea r10d, [r9 - 0xfb46]
cmp r10d, 9
jb 0x14006461c
lea r10d, [r9 - 0xfb43]
cmp r10d, 2
jb 0x14006461c
mov r10d, r9d
and r10d, 0xfffffffe
cmp r10d, 0xfb40
je 0x14006461c
lea r11d, [r9 - 0xfb38]
cmp r11d, 5
jb 0x14006461c
lea r11d, [r9 - 0xfb2a]
cmp r11d, 0xd
jb 0x14006461c
lea r11d, [r9 - 0xfa70]
cmp r11d, 0x6a
jb 0x14006461c
lea r11d, [r9 - 0xfa2a]
cmp r11d, 0x44
jb 0x14006461c
lea r11d, [r9 - 0xfa25]
cmp r11d, 2
jb 0x14006461c
lea r11d, [r9 - 0xfa15]
cmp r11d, 0xa
jb 0x14006461c
lea r11d, [r9 - 0xf900]
cmp r11d, 0x10e
jb 0x14006461c
cmp r10d, 0x212a
je 0x14006461c
cmp r10d, 0x2000
je 0x14006461c
cmp r10d, 0x1fee
je 0x14006461c
lea r11d, [r9 - 0xf75]
cmp r11d, 2
jb 0x14006461c
cmp r10d, 0xb5c
je 0x14006461c
lea r11d, [r9 - 0xa59]
cmp r11d, 3
jb 0x14006461c
mov r11d, r9d
and r11d, 0xfffffff8
cmp r11d, 0x958
je 0x14006461c
cmp r10d, 0x9dc
je 0x14006461c
lea r11d, [r9 - 0x11a8]
cmp r11d, 0x1b
jb 0x140063d7f
lea r11d, [r9 - 0x1161]
cmp r11d, 0x15
jb 0x140063d7f
lea r11d, [r9 - 0xcd5]
cmp r11d, 2
jb 0x140063d7f
lea r11d, [r9 - 0x653]
cmp r11d, 3
jb 0x140063d7f
cmp r10d, 0x330
je 0x140063d7f
lea r10d, [r9 - 0x32d]
cmp r10d, 2
jb 0x140063d7f
lea r10d, [r9 - 0x323]
cmp r10d, 6
jb 0x140063d7f
lea r10d, [r9 - 0x313]
cmp r10d, 2
jb 0x140063d7f
lea r10d, [r9 - 0x300]
cmp r10d, 5
jb 0x140063d7f
lea r10d, [r9 - 0x306]
cmp r10d, 7
jb 0x140063d7f
add r9d, 0xffffcf67
cmp r9d, 2
jae 0x140063d82
jmp 0x140063d7f
mov r12, r11
lea rbx, [rsp + 0x128]
lea r15, [rsp + 0x30]
jmp 0x140063d7f
mov r12, r11
jmp 0x140063d7f
test r8b, r8b
je 0x140064626
lea rdx, [rsp + 0x76]
movups xmmword [rdx + 0x2a], xmm6
xor ecx, ecx
mov qword [rdx + 0x38], rcx
movups xmmword [rsp + 0x220], xmm6
movzx eax, word [rsp + 0x22e]
mov word [rdx + 0x10], ax
movups xmm0, xmmword [rsp + 0x21e]
movups xmmword [rdx], xmm0
mov dword [rsp + 0x70], ecx
mov word [rsp + 0x74], 0
mov qword [rsp + 0x90], rbp
mov qword [rsp + 0x98], r14
mov byte [rsp + 0xb8], cl
mov dword [rsp + 0xbc], ecx
mov byte [rsp + 0xc0], cl
mov dword [rsp + 0xc4], ecx
mov byte [rsp + 0xc8], cl
mov dword [rsp + 0xcc], ecx
mov byte [rsp + 0xd0], cl
mov dword [rsp + 0xd4], ecx
mov byte [rsp + 0xd8], cl
mov qword [rsp + 0xe0], rcx
mov dword [rsp + 0xf0], 0x110000
mov byte [rsp + 0xf4], cl
mov rsi, r14
cmp rsi, rbp
je 0x1400645a2
mov dl, byte [rsi]
movzx ebx, dl
test bl, bl
js 0x140064523
inc rsi
jmp 0x140064584
mov eax, ebx
and eax, 0x1f
movzx r8d, byte [rsi + 1]
and r8d, 0x3f
cmp bl, 0xdf
jbe 0x14006456b
movzx ecx, byte [rsi + 2]
shl r8d, 6
and ecx, 0x3f
or ecx, r8d
cmp dl, 0xf0
jb 0x140064579
movzx ebx, byte [rsi + 3]
and eax, 7
shl eax, 0x12
shl ecx, 6
and ebx, 0x3f
or ebx, ecx
or ebx, eax
cmp ebx, 0x110000
je 0x1400645a2
add rsi, 4
jmp 0x140064584
add rsi, 2
shl eax, 6
or eax, r8d
mov ebx, eax
jmp 0x140064584
add rsi, 3
shl eax, 0xc
or ecx, eax
mov ebx, ecx
lea rcx, [rsp + 0x70]
call fcn.14006131a
mov r15b, 1
cmp eax, 0x110000
je 0x1400645b8
cmp eax, ebx
je 0x14006450c
jmp 0x1400645b8
lea rcx, [rsp + 0x70]
call fcn.14006131a
cmp eax, 0x110000
setne r15b
neg r15b
cmp dword [rsp + 0xb0], 0
je 0x1400645e4
cmp qword [rsp + 0xb8], 0
je 0x1400645e4
mov r8, qword [rsp + 0xc0]
mov rcx, qword [0x1401849b0]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp dword [rsp + 0x70], 0
je 0x14006460a
cmp qword [rsp + 0x78], 0
je 0x14006460a
mov r8, qword [rsp + 0x80]
mov rcx, qword [0x1401849b0]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
test r15b, r15b
lea rbx, [rsp + 0x128]
lea r15, [rsp + 0x30]
je 0x140064626
mov byte [rsp + 0x35], 1
jmp 0x140063637
mov rcx, r14
mov rdx, r13
mov r8, qword [rsp + 0x1f0]
mov r9, r15
call fcn.140065d30
jmp 0x140063637
movabs rax, 0x8080808080808080
test qword [r13 + rcx], rax
jne 0x140063738
jmp 0x14006375b
mov rcx, qword [rsp + 0x2b0]
mov rdx, qword [rsp + 0x58]
call fcn.140111de1
mov r11, qword [rsp + 0x40]
jmp 0x140063a5a
mov rsi, rdx
mov rax, qword [rsp + 0x48]
lea rcx, [rax*8]
movabs rax, 0x7ffffffffffffff0
and rcx, rax
mov edx, 8
call fcn.14002d260
mov qword [rsp + 0x60], rax
test rax, rax
je 0x140065bb4
mov ecx, 0x100
mov edx, 8
call fcn.14002d260
test rax, rax
je 0x140065bc7
mov r14, rax
mov eax, 1
sub rax, rsi
mov qword [rsp + 0x1c8], rax
mov r10, qword [rsp + 0x40]
lea rax, [r10 + 0x20]
mov qword [rsp + 0x1c0], rax
lea rax, [r10 + 8]
mov qword [rsp + 0x1e0], rax
lea rax, [r10 - 8]
mov qword [rsp + 0x1d8], rax
lea rax, [r10 - 0x10]
mov qword [rsp + 0x1e8], rax
mov eax, 0x10
mov qword [rsp + 0x1d0], rax
xor r15d, r15d
xor esi, esi
mov rdx, qword [rsp + 0x48]
mov r12, qword [rsp + 0x60]
mov r8, rdx
sub r8, rsi
mov rax, rsi
shl rax, 4
lea rcx, [r10 + rax]
cmp r8, 2
jae 0x140064747
mov r11, rdx
jmp 0x1400648d3
mov qword [rsp + 0x58], r15
mov r15, qword [rcx]
mov r9, qword [rcx + 0x10]
cmp r9, r15
jae 0x140064772
cmp r8, 2
jne 0x14006478c
lea r11, [rsi + 2]
mov r8d, 2
mov r15, qword [rsp + 0x58]
jmp 0x140064858
cmp r8, 2
jne 0x1400647db
lea r11, [rsi + 2]
mov r8d, 2
mov r15, qword [rsp + 0x58]
jmp 0x1400648d3
mov qword [rsp + 0x120], r14
mov rdx, qword [rsp + 0x1c8]
mov qword [rsp + 0x50], rsi
lea r11, [rdx + rsi]
mov rdx, qword [rsp + 0x1c0]
lea rdi, [rdx + rax]
mov r10d, 2
mov rbx, r9
mov r14, rbx
mov rbx, qword [rdi]
cmp rbx, r14
jae 0x14006482b
lea r14, [r11 + r10]
inc r14
inc r10
add rdi, 0x10
cmp r14, 2
jne 0x1400647ba
jmp 0x140064828
mov qword [rsp + 0x120], r14
mov rdx, qword [rsp + 0x1c8]
mov qword [rsp + 0x50], rsi
lea r11, [rdx + rsi]
mov rdx, qword [rsp + 0x1c0]
lea rdi, [rdx + rax]
mov r10d, 2
mov rbx, r9
mov r14, rbx
mov rbx, qword [rdi]
cmp rbx, r14
jb 0x14006482b
lea r14, [r11 + r10]
inc r14
inc r10
add rdi, 0x10
cmp r14, 2
jne 0x140064809
mov r10, r8
mov rdx, qword [rsp + 0x48]
mov r12, qword [rsp + 0x60]
mov r14, qword [rsp + 0x120]
mov rsi, qword [rsp + 0x50]
lea r11, [r10 + rsi]
mov r8, r10
cmp r9, r15
mov r10, qword [rsp + 0x40]
mov r15, qword [rsp + 0x58]
jae 0x1400648d3
cmp r11, rsi
jb 0x140065b93
cmp r11, rdx
ja 0x140065ba5
cmp r8, 2
jb 0x1400648d3
mov r9, rsi
mov qword [rsp + 0x170], r11
mov rdx, r8
shr rdx, 1
add rax, qword [rsp + 0x1e0]
lea r9, [rsi + r8]
shl r9, 4
add r9, qword [rsp + 0x1d8]
mov r10, qword [rax - 8]
mov r11d, dword [rax]
mov rdi, qword [r9 - 8]
mov ebx, dword [r9]
mov qword [rax - 8], rdi
mov dword [rax], ebx
mov qword [r9 - 8], r10
mov dword [r9], r11d
add rax, 0x10
add r9, 0xfffffffffffffff0
dec rdx
jne 0x140064899
mov r10, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x48]
mov r11, qword [rsp + 0x170]
mov rdi, r11
sub rdi, rsi
jb 0x140065b51
cmp r11, rdx
ja 0x140065b51
jae 0x14006492d
cmp r8, 0xa
jae 0x14006492d
lea rdi, [rsi + 0xa]
cmp rdi, rdx
cmovae rdi, rdx
mov qword [rsp + 0x170], rdi
sub rdi, rsi
jb 0x140065b69
cmp r8, 2
mov eax, 1
cmovb r8, rax
mov rdx, rdi
call fcn.1400624a5
mov r10, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x48]
jmp 0x140064935
mov qword [rsp + 0x170], r11
mov rbx, qword [rsp + 0x1d0]
cmp r15, rbx
jne 0x1400649ac
mov qword [rsp + 0x50], rsi
mov rsi, r15
mov r15, r14
mov rcx, rbx
shl rcx, 5
mov edx, 8
call fcn.14002d260
test rax, rax
je 0x140065b80
mov r14, rax
lea r13, [rbx + rbx]
shl rbx, 4
mov rcx, rax
mov rdx, r15
mov r8, rbx
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [0x1401849b0]
xor edx, edx
mov r8, r15
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rsp + 0x1d0], r13
mov r10, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x48]
mov r15, rsi
mov rsi, qword [rsp + 0x50]
mov rax, r15
shl rax, 4
mov qword [r14 + rax], rdi
mov qword [r14 + rax + 8], rsi
inc r15
mov rbx, r15
cmp r15, 2
mov qword [rsp + 0x120], r14
jb 0x140064c97
mov r15, rbx
lea rsi, [rbx - 1]
mov rcx, rsi
shl rcx, 4
mov rax, qword [r14 + rcx]
mov rcx, qword [r14 + rcx + 8]
add rcx, rax
cmp rcx, rdx
je 0x140064a3f
mov r11, r15
shl r11, 4
mov r8, qword [r11 + r14 - 0x20]
cmp r8, rax
jbe 0x140064a3f
cmp r15, 3
jb 0x140064c97
lea rdi, [r15 - 3]
mov rcx, rdi
shl rcx, 4
mov rcx, qword [r14 + rcx]
lea r9, [r8 + rax]
cmp rcx, r9
jbe 0x140064a54
cmp r15, 4
jb 0x140064c97
add r8, rcx
cmp qword [r11 + r14 - 0x40], r8
jbe 0x140064a54
jmp 0x140064c97
cmp r15, 3
jb 0x140064a59
lea rdi, [r15 - 3]
mov rcx, rdi
shl rcx, 4
mov rcx, qword [r14 + rcx]
cmp rcx, rax
jb 0x140064a5d
lea rdi, [r15 - 2]
cmp r15, rdi
jbe 0x140065a5d
lea rax, [rdi + 1]
mov qword [rsp + 0x58], r15
cmp r15, rax
jbe 0x140065a92
mov r8, rdi
shl r8, 4
mov rcx, qword [r14 + r8 + 8]
shl rax, 4
mov r9, qword [r14 + rax]
mov r15, qword [r14 + rax + 8]
add r15, r9
mov r12, r15
sub r12, rcx
jb 0x140065acc
mov qword [rsp + 0x188], rdi
mov qword [rsp + 0x50], rsi
cmp r15, rdx
ja 0x140065add
mov qword [rsp + 0x1b8], r9
lea rdx, [r14 + r8]
mov qword [rsp + 0x208], rdx
mov r13, qword [r14 + r8]
lea rdx, [r14 + rax]
mov qword [rsp + 0x200], rdx
lea rax, [r14 + rax + 8]
mov qword [rsp + 0x1f8], rax
mov qword [rsp + 0x178], rcx
mov r14, rcx
shl r14, 4
add r14, r10
mov rdi, r13
shl rdi, 4
lea rsi, [r14 + rdi]
shl r15, 4
mov rbx, r12
sub rbx, r13
cmp rbx, r13
jae 0x140064b86
mov rdi, rbx
shl rdi, 4
mov r12, qword [rsp + 0x60]
mov rcx, r12
mov rdx, rsi
mov r8, rdi
call sub.VCRUNTIME140.dll_memcpy
add rdi, r12
test r13, r13
jle 0x140064bfa
test rbx, rbx
jle 0x140064bfa
add r15, qword [rsp + 0x1e8]
mov rbx, qword [rsp + 0x50]
mov rax, qword [rdi - 0x10]
cmp rax, qword [rsi - 0x10]
jb 0x140064b62
add rdi, 0xfffffffffffffff0
mov rax, rdi
jmp 0x140064b69
add rsi, 0xfffffffffffffff0
mov rax, rsi
movups xmm0, xmmword [rax]
movups xmmword [r15], xmm0
cmp rsi, r14
jbe 0x140064b7e
add r15, 0xfffffffffffffff0
cmp rdi, r12
ja 0x140064b4f
mov r14, rsi
jmp 0x140064c13
mov rbx, qword [rsp + 0x60]
mov rcx, rbx
mov rdx, r14
mov r8, rdi
call sub.VCRUNTIME140.dll_memcpy
add rdi, rbx
test r13, r13
jle 0x140064bff
cmp r12, r13
mov rbx, qword [rsp + 0x50]
jle 0x140064c0e
add r15, qword [rsp + 0x40]
mov r12, qword [rsp + 0x60]
mov rdx, r12
mov r8, rdx
mov rcx, qword [rsi]
xor edx, edx
xor eax, eax
cmp rcx, qword [r8]
setae dl
setb cl
mov r9, r8
cmovb r9, rsi
shl rdx, 4
add rdx, r8
movups xmm0, xmmword [r9]
movups xmmword [r14], xmm0
add r14, 0x10
cmp rdx, rdi
jae 0x140064c16
mov al, cl
shl rax, 4
add rsi, rax
cmp rsi, r15
jb 0x140064bb8
jmp 0x140064c16
mov r14, rsi
jmp 0x140064c04
mov r12, qword [rsp + 0x60]
mov rdx, r12
mov rbx, qword [rsp + 0x50]
jmp 0x140064c16
mov r12, qword [rsp + 0x60]
mov rdx, r12
sub rdi, rdx
mov rcx, r14
mov r8, rdi
call sub.VCRUNTIME140.dll_memcpy
mov rax, qword [rsp + 0x1b8]
add rax, r13
mov rcx, qword [rsp + 0x200]
mov qword [rcx], rax
mov rax, qword [rsp + 0x178]
mov rcx, qword [rsp + 0x1f8]
mov qword [rcx], rax
mov rcx, qword [rsp + 0x208]
lea rdx, [rcx + 0x10]
mov rax, qword [rsp + 0x188]
not rax
mov r8, qword [rsp + 0x58]
add r8, rax
shl r8, 4
call sub.VCRUNTIME140.dll_memmove
cmp rbx, 1
mov r10, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x48]
mov r14, qword [rsp + 0x120]
ja 0x1400649d4
mov r15d, 1
mov rsi, qword [rsp + 0x170]
cmp rsi, rdx
jb 0x140064728
mov rcx, qword [0x1401849b0]
xor edx, edx
mov r8, r14
mov rsi, qword [sym.imp.KERNEL32.dll_HeapFree]
call rsi
mov rcx, qword [0x1401849b0]
xor edx, edx
mov r8, r12
call rsi
mov r11, qword [rsp + 0x40]
mov r12, qword [rsp + 0x180]
jmp 0x140064ce7
mov r12, qword [rsp + 0x180]
mov r11, qword [rsp + 0x40]
mov r13, qword [rsp + 0x1b0]
jmp 0x140063a29
mov rax, qword [rsp + 0x2b0]
mov rcx, qword [rax + 8]
mov rdx, qword [rax + 0x10]
mov r8, qword [rsp + 0x190]
test r8, r8
je 0x140064d33
cmp rdx, r8
jbe 0x140064d31
cmp byte [rcx + r8], 0xbf
jg 0x140064d33
lea rax, str.C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001fidna_0.3.0_srcuts46.rs
mov qword [rsp + 0x20], rax
mov r9, rdx
jmp 0x140065b4a
jne 0x140064d1d
mov rbp, r12
add rcx, r8
mov qword [rsp + 0x118], rdx
mov rax, rdx
sub rax, r8
lea r15, [rsp + 0x70]
mov qword [r15], rcx
mov qword [r15 + 8], rax
xor ecx, ecx
mov qword [r15 + 0x10], rcx
mov qword [r15 + 0x18], rax
mov qword [r15 + 0x20], 1
movabs rdx, 0x2e0000002e
mov qword [r15 + 0x28], rdx
mov qword [r15 + 0x30], rcx
mov qword [r15 + 0x38], rax
mov word [r15 + 0x40], 1
mov ebx, 1
mov rcx, r15
call fcn.140065bfc
test rax, rax
je 0x140065127
test bpl, 1
je 0x140064d87
mov r13, rdx
test rdx, rdx
je 0x140064d87
mov r12, rax
mov r8b, byte [rax]
movzx ecx, r8b
test cl, cl
js 0x140064dbb
lea rsi, [r12 + 1]
jmp 0x140064e25
mov eax, ecx
and eax, 0x1f
movzx r9d, byte [r12 + 1]
and r9d, 0x3f
cmp cl, 0xdf
jbe 0x140064e0a
movzx edx, byte [r12 + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp r8b, 0xf0
jb 0x140064e19
movzx ecx, byte [r12 + 3]
and eax, 7
shl eax, 0x12
shl edx, 6
and ecx, 0x3f
or ecx, edx
or ecx, eax
cmp ecx, 0x110000
je 0x140064d87
lea rsi, [r12 + 4]
jmp 0x140064e25
lea rsi, [r12 + 2]
shl eax, 6
or eax, r9d
mov ecx, eax
jmp 0x140064e25
lea rsi, [r12 + 3]
shl eax, 0xc
or edx, eax
mov ecx, edx
add r13, r12
call fcn.1400ff1c1
test al, al
je 0x140064eed
movzx eax, al
cmp eax, 0x11
je 0x140064eed
cmp eax, 9
jne 0x140065122
cmp rsi, r13
je 0x140064fa9
mov r8b, byte [rsi]
movzx ecx, r8b
test cl, cl
js 0x140064e63
inc rsi
jmp 0x140064ec9
mov eax, ecx
and eax, 0x1f
movzx r9d, byte [rsi + 1]
and r9d, 0x3f
cmp cl, 0xdf
jbe 0x140064eb0
movzx edx, byte [rsi + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp r8b, 0xf0
jb 0x140064ebe
movzx ecx, byte [rsi + 3]
and eax, 7
shl eax, 0x12
shl edx, 6
and ecx, 0x3f
or ecx, edx
or ecx, eax
cmp ecx, 0x110000
je 0x140064fa9
add rsi, 4
jmp 0x140064ec9
add rsi, 2
shl eax, 6
or eax, r9d
mov ecx, eax
jmp 0x140064ec9
add rsi, 3
shl eax, 0xc
or edx, eax
mov ecx, edx
call fcn.1400ff1c1
cmp al, 0xe
ja 0x140065122
movzx eax, al
mov ecx, 0x62f8
bt rcx, rax
jb 0x140064e4a
jmp 0x140065122
cmp rsi, r13
je 0x140064fb9
xor r14d, r14d
xor edi, edi
mov r8b, byte [rsi]
movzx ecx, r8b
test cl, cl
js 0x140064f0b
inc rsi
jmp 0x140064f6d
mov eax, ecx
and eax, 0x1f
movzx r9d, byte [rsi + 1]
and r9d, 0x3f
cmp cl, 0xdf
jbe 0x140064f54
movzx edx, byte [rsi + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp r8b, 0xf0
jb 0x140064f62
movzx ecx, byte [rsi + 3]
and eax, 7
shl eax, 0x12
shl edx, 6
and ecx, 0x3f
or ecx, edx
or ecx, eax
cmp ecx, 0x110000
je 0x140064fbe
add rsi, 4
jmp 0x140064f6d
add rsi, 2
shl eax, 6
or eax, r9d
mov ecx, eax
jmp 0x140064f6d
add rsi, 3
shl eax, 0xc
or edx, eax
mov ecx, edx
call fcn.1400ff1c1
cmp al, 5
jne 0x140064f7b
mov r14b, 1
jmp 0x140064f9e
cmp al, 1
movzx edi, dil
cmove edi, ebx
cmp al, 0x11
ja 0x140065122
movzx eax, al
mov ecx, 0x260fb
bt rcx, rax
jae 0x140065122
cmp rsi, r13
jne 0x140064efb
jmp 0x140064fbe
mov al, byte [r13 - 1]
test al, al
js 0x140064ff9
dec r13
movzx esi, al
jmp 0x140064fd5
xor edi, edi
xor r14d, r14d
mov al, byte [r13 - 1]
test al, al
js 0x14006509c
dec r13
movzx esi, al
jmp 0x140065078
mov ecx, esi
call fcn.1400ff1c1
cmp al, 0xd
jne 0x140065055
cmp r12, r13
je 0x140064d87
mov al, byte [r13 - 1]
test al, al
js 0x140064ff9
dec r13
movzx esi, al
jmp 0x140065048
movzx ecx, byte [r13 - 2]
cmp cl, 0xc0
jge 0x140065026
movzx edx, byte [r13 - 3]
cmp dl, 0xc0
jge 0x14006502f
movzx r8d, byte [r13 - 4]
add r13, 0xfffffffffffffffc
and r8d, 7
shl r8d, 6
and edx, 0x3f
or edx, r8d
jmp 0x140065036
add r13, 0xfffffffffffffffe
and ecx, 0x1f
jmp 0x14006503e
add r13, 0xfffffffffffffffd
and edx, 0xf
shl edx, 6
and ecx, 0x3f
or ecx, edx
shl ecx, 6
and al, 0x3f
movzx esi, al
or esi, ecx
cmp esi, 0x110000
jne 0x140064fd5
jmp 0x140064d87
mov ecx, esi
call fcn.1400ff1c1
cmp al, 9
je 0x140064d87
mov ecx, esi
call fcn.1400ff1c1
cmp al, 5
je 0x140064d87
jmp 0x140065122
mov ecx, esi
call fcn.1400ff1c1
cmp al, 0xd
jne 0x1400650f5
cmp r12, r13
je 0x140065122
mov al, byte [r13 - 1]
test al, al
js 0x14006509c
dec r13
movzx esi, al
jmp 0x1400650eb
movzx ecx, byte [r13 - 2]
cmp cl, 0xc0
jge 0x1400650c9
movzx edx, byte [r13 - 3]
cmp dl, 0xc0
jge 0x1400650d2
movzx r8d, byte [r13 - 4]
add r13, 0xfffffffffffffffc
and r8d, 7
shl r8d, 6
and edx, 0x3f
or edx, r8d
jmp 0x1400650d9
add r13, 0xfffffffffffffffe
and ecx, 0x1f
jmp 0x1400650e1
add r13, 0xfffffffffffffffd
and edx, 0xf
shl edx, 6
and ecx, 0x3f
or ecx, edx
shl ecx, 6
and al, 0x3f
movzx esi, al
or esi, ecx
cmp esi, 0x110000
jne 0x140065078
jmp 0x140065122
mov ecx, esi
call fcn.1400ff1c1
cmp al, 0x11
ja 0x140065122
movzx eax, al
mov ecx, 0x20023
bt rcx, rax
jae 0x140065122
test dil, 1
je 0x140064d87
and r14b, 1
je 0x140064d87
mov byte [rsp + 0x32], 1
cmp qword [rsp + 0x198], 0
mov r14, qword [rsp + 0x2b0]
mov rcx, qword [rsp + 0x118]
je 0x14006515d
mov r8, qword [rsp + 0x1a0]
mov rcx, qword [0x1401849b0]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rcx, qword [r14 + 0x10]
call fcn.1400674de
mov rcx, qword [r14 + 0x10]
mov qword [rsp + 0x80], rcx
movups xmm0, xmmword [r14]
movaps xmmword [rsp + 0x70], xmm0
mov qword [r14], rax
mov qword [r14 + 8], rdx
mov qword [r14 + 0x10], 0
mov rdi, qword [rsp + 0x68]
lea rsi, [rdi + 0x18]
cmp qword [rdi + 0x18], 0
movabs r15, 0x8080808080808080
je 0x1400651b3
mov r8, qword [rdi + 0x20]
mov rcx, qword [0x1401849b0]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
lea r12, [rsp + 0x70]
mov rax, qword [r12 + 0x10]
mov qword [rsi + 0x10], rax
movaps xmm0, xmmword [r12]
movups xmmword [rsi], xmm0
mov rax, qword [rdi + 0x20]
mov rcx, qword [rdi + 0x28]
mov qword [r12], rax
mov qword [r12 + 8], rcx
xor ebx, ebx
mov qword [r12 + 0x10], rbx
mov qword [r12 + 0x18], rcx
mov qword [r12 + 0x20], 1
movabs rax, 0x2e0000002e
mov qword [r12 + 0x28], rax
mov qword [r12 + 0x30], rbx
mov qword [r12 + 0x38], rcx
mov word [r12 + 0x40], 1
mov rcx, r12
call fcn.140065bfc
test rax, rax
je 0x14006599e
mov rbp, rax
mov rsi, rdx
test bl, 1
je 0x140065250
mov rdx, qword [r14 + 0x10]
cmp rdx, qword [r14]
jne 0x140065241
mov rcx, r14
call fcn.14007a079
mov rdx, qword [r14 + 0x10]
mov rax, qword [r14 + 8]
mov byte [rax + rdx], 0x2e
inc rdx
mov qword [r14 + 0x10], rdx
cmp rsi, 8
jb 0x140065292
lea rcx, [rbp + 7]
and rcx, 0xfffffffffffffff8
mov rax, rcx
sub rax, rbp
cmp rax, rsi
ja 0x140065292
test qword [rbp], r15
je 0x1400652aa
mov rax, qword [r14 + 0x10]
mov qword [rsp + 0x178], rax
mov r8d, 4
mov rcx, r14
lea rdx, str.xn__
call fcn.1400ff169
jmp 0x140065303
xor eax, eax
cmp rsi, rax
je 0x140065418
cmp byte [rbp + rax], 0
lea rax, [rax + 1]
jns 0x140065294
jmp 0x1400652d7
cmp rcx, rbp
mov ecx, 8
cmove rax, rcx
lea rcx, [rsi - 8]
cmp rax, rcx
jae 0x1400652cc
test qword [rbp + rax], r15
jne 0x1400652d7
add rax, 8
jmp 0x1400652ba
test qword [rbp + rcx], r15
je 0x140065418
mov rax, qword [r14 + 0x10]
mov qword [rsp + 0x178], rax
mov r8d, 4
mov rcx, r14
lea rdx, str.xn__
call fcn.1400ff169
mov bl, 1
test rsi, rsi
je 0x140065210
mov rdi, rbp
add rdi, rsi
xor r8d, r8d
xor r13d, r13d
mov rsi, rbp
mov qword [rsp + 0x118], rdi
mov dl, byte [rsi]
movzx edi, dl
test dil, dil
js 0x14006532c
inc rsi
inc r8d
jmp 0x1400653a6
mov r9d, r8d
mov eax, edi
and eax, 0x1f
movzx r8d, byte [rsi + 1]
and r8d, 0x3f
cmp dil, 0xdf
jbe 0x14006537f
movzx ecx, byte [rsi + 2]
shl r8d, 6
and ecx, 0x3f
or ecx, r8d
cmp dl, 0xf0
jb 0x14006538d
movzx edi, byte [rsi + 3]
and eax, 7
shl eax, 0x12
shl ecx, 6
and edi, 0x3f
or edi, ecx
or edi, eax
cmp edi, 0x110000
mov r8d, r9d
je 0x14006594a
add rsi, 4
jmp 0x14006539b
add rsi, 2
shl eax, 6
or eax, r8d
mov edi, eax
jmp 0x140065398
add rsi, 3
shl eax, 0xc
or ecx, eax
mov edi, ecx
mov r8d, r9d
inc r8d
cmp edi, 0x80
jae 0x1400653d3
mov rdx, qword [r14 + 0x10]
cmp rdx, qword [r14]
jne 0x1400653c1
mov rcx, r14
mov ebx, r8d
call fcn.14007a079
mov r8d, ebx
mov rdx, qword [r14 + 0x10]
mov rax, qword [r14 + 8]
mov byte [rax + rdx], dil
inc rdx
mov qword [r14 + 0x10], rdx
inc r13d
mov rdi, qword [rsp + 0x118]
cmp rsi, rdi
jne 0x14006531a
test r13d, r13d
je 0x14006542d
mov rdx, qword [r14 + 0x10]
cmp rdx, qword [r14]
jne 0x140065404
mov rcx, r14
mov esi, r8d
call fcn.14007a079
mov r8d, esi
mov rdx, qword [r14 + 0x10]
mov rax, qword [r14 + 8]
mov byte [rax + rdx], 0x2d
inc rdx
mov qword [r14 + 0x10], rdx
mov ecx, r13d
jmp 0x14006542f
mov rcx, r14
mov rdx, rbp
mov r8, rsi
call fcn.1400ff169
mov bl, 1
jmp 0x140065210
xor ecx, ecx
mov bl, 1
cmp ecx, r8d
jae 0x140065210
mov dword [rsp + 0x1b8], r8d
mov eax, 0x48
mov qword [rsp + 0x68], rax
xor r8d, r8d
mov eax, 0x80
mov ebx, ecx
mov r13d, 0x1a
mov r14d, ecx
mov qword [rsp + 0x188], rbp
mov dword [rsp + 0x50], ecx
mov rcx, rbp
cmp rcx, rdi
je 0x140065a45
mov r10b, byte [rcx]
movzx ebp, r10b
test bpl, bpl
js 0x140065488
inc rcx
jmp 0x1400654f5
mov edx, ebp
and edx, 0x1f
movzx r11d, byte [rcx + 1]
and r11d, 0x3f
cmp bpl, 0xdf
jbe 0x1400654da
movzx r9d, byte [rcx + 2]
shl r11d, 6
and r9d, 0x3f
or r9d, r11d
cmp r10b, 0xf0
jb 0x1400654e8
movzx ebp, byte [rcx + 3]
and edx, 7
shl edx, 0x12
shl r9d, 6
and ebp, 0x3f
or ebp, r9d
or ebp, edx
cmp ebp, 0x110000
je 0x140065a45
add rcx, 4
jmp 0x1400654f5
add rcx, 2
shl edx, 6
or edx, r11d
mov ebp, edx
jmp 0x1400654f5
add rcx, 3
shl edx, 0xc
or r9d, edx
mov ebp, r9d
cmp eax, ebp
ja 0x14006546e
jmp 0x140065532
add rcx, 4
jmp 0x140065523
add rcx, 2
shl r9d, 6
or r9d, esi
mov edx, r9d
jmp 0x140065523
add rcx, 3
shl r9d, 0xc
or r10d, r9d
mov edx, r10d
cmp ebp, edx
mov r9d, edx
cmovb r9d, ebp
cmp eax, edx
cmovbe ebp, r9d
cmp rcx, rdi
je 0x140065594
mov r11b, byte [rcx]
movzx edx, r11b
test dl, dl
js 0x140065547
inc rcx
jmp 0x140065523
mov r9d, edx
and r9d, 0x1f
movzx esi, byte [rcx + 1]
and esi, 0x3f
cmp dl, 0xdf
jbe 0x140065505
movzx r10d, byte [rcx + 2]
shl esi, 6
and r10d, 0x3f
or r10d, esi
cmp r11b, 0xf0
jb 0x140065515
movzx edx, byte [rcx + 3]
and r9d, 7
shl r9d, 0x12
shl r10d, 6
and edx, 0x3f
or edx, r10d
or edx, r9d
cmp edx, 0x110000
jne 0x1400654ff
mov r10d, ebp
sub r10d, eax
lea ecx, [rbx + 1]
mov eax, r8d
not eax
xor edx, edx
div ecx
cmp r10d, eax
ja 0x1400658f9
imul r10d, ecx
add r10d, r8d
mov r11, qword [rsp + 0x188]
mov r8b, byte [r11]
movzx eax, r8b
test al, al
js 0x1400655ce
inc r11
jmp 0x140065634
mov ecx, eax
and ecx, 0x1f
movzx r9d, byte [r11 + 1]
and r9d, 0x3f
cmp al, 0xdf
jbe 0x14006561b
movzx edx, byte [r11 + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp r8b, 0xf0
jb 0x140065629
movzx eax, byte [r11 + 3]
and ecx, 7
shl ecx, 0x12
shl edx, 6
and eax, 0x3f
or eax, edx
or eax, ecx
cmp eax, 0x110000
je 0x1400658f1
add r11, 4
jmp 0x140065634
add r11, 2
shl ecx, 6
or ecx, r9d
mov eax, ecx
jmp 0x140065634
add r11, 3
shl ecx, 0xc
or edx, ecx
mov eax, edx
cmp eax, ebp
jae 0x140065641
inc r10d
je 0x1400658f9
cmp eax, ebp
jne 0x1400657d3
mov qword [rsp + 0x58], r11
mov qword [rsp + 0x40], rbx
mov rax, qword [rsp + 0x68]
lea edi, [rax + 0x1a]
lea ecx, [rax - 0x24]
neg ecx
cmp edi, 0x25
cmovb ecx, r13d
cmp eax, 0x24
mov eax, 1
cmovae ecx, eax
mov esi, r10d
mov dword [rsp + 0x190], r10d
cmp r10d, ecx
jb 0x140065777
mov r15, qword [rsp + 0x68]
neg r15d
mov r12d, 0x48
mov esi, dword [rsp + 0x190]
mov r14d, ecx
sub r14d, 0x24
je 0x140065984
sub esi, ecx
neg r14d
mov eax, esi
xor edx, edx
div r14d
add edx, ecx
mov ebx, 0x61
cmp edx, 0x1a
jb 0x1400656ce
mov ebx, 0x16
cmp edx, 0x24
jae 0x140065a2b
add ebx, edx
cmp ebx, 0x7f
ja 0x140065709
mov r13, qword [rsp + 0x2b0]
mov rdx, qword [r13 + 0x10]
cmp rdx, qword [r13]
jne 0x1400656f3
mov rcx, r13
call fcn.14007a079
mov rdx, qword [r13 + 0x10]
mov rax, qword [r13 + 8]
mov byte [rax + rdx], bl
inc rdx
mov qword [r13 + 0x10], rdx
mov r13d, 0x1a
jmp 0x14006574a
mov dword [rsp + 0x128], 0
mov eax, ebx
shr eax, 6
or al, 0xc0
mov byte [rsp + 0x128], al
and bl, 0x3f
or bl, 0x80
mov byte [rsp + 0x129], bl
mov r8d, 2
mov rcx, qword [rsp + 0x2b0]
lea rdx, [rsp + 0x128]
call fcn.1400ff169
mov eax, esi
xor edx, edx
div r14d
lea ecx, [r15 + r12]
cmp r12d, edi
cmovae ecx, r13d
cmp r12d, dword [rsp + 0x68]
mov edx, 1
cmovbe ecx, edx
add r12d, 0x24
mov esi, eax
cmp eax, ecx
jae 0x14006569b
mov edi, 0x61
cmp esi, 0x1a
jb 0x14006578f
mov edi, 0x16
cmp esi, 0x24
jae 0x140065a2b
add edi, esi
cmp edi, 0x7f
mov r14d, dword [rsp + 0x50]
mov r15, qword [rsp + 0x40]
ja 0x1400657de
mov rsi, qword [rsp + 0x2b0]
mov rdx, qword [rsi + 0x10]
cmp rdx, qword [rsi]
mov ebx, 0xd41d41d5
jne 0x1400657c2
mov rcx, rsi
call fcn.14007a079
mov rdx, qword [rsi + 0x10]
mov rax, qword [rsi + 8]
mov byte [rax + rdx], dil
inc rdx
mov qword [rsi + 0x10], rdx
jmp 0x140065827
mov r9d, ebx
mov r8d, r10d
jmp 0x1400658c6
mov dword [rsp + 0x128], 0
mov eax, edi
shr eax, 6
or al, 0xc0
mov byte [rsp + 0x128], al
and dil, 0x3f
or dil, 0x80
mov byte [rsp + 0x129], dil
mov r8d, 2
mov rcx, qword [rsp + 0x2b0]
lea rdx, [rsp + 0x128]
call fcn.1400ff169
mov ebx, 0xd41d41d5
mov r9d, r15d
inc r9d
mov rdi, qword [rsp + 0x118]
je 0x1400659d0
cmp r15d, r14d
mov ecx, 2
mov eax, 0x2bc
cmove ecx, eax
xor r8d, r8d
mov eax, dword [rsp + 0x190]
xor edx, edx
div ecx
mov ecx, eax
xor edx, edx
div r9d
add eax, ecx
xor ecx, ecx
cmp eax, 0x1c8
jb 0x140065899
mov r11, qword [rsp + 0x58]
mov edx, eax
imul rdx, rbx
shr rdx, 0x20
mov r10d, eax
sub r10d, edx
shr r10d, 1
add r10d, edx
shr r10d, 5
add ecx, 0x24
cmp eax, 0x3e57
mov eax, r10d
ja 0x140065870
jmp 0x1400658a1
mov r10d, eax
mov r11, qword [rsp + 0x58]
lea eax, [r10*4]
lea eax, [rax + rax*8]
add r10d, 0x26
xor edx, edx
div r10w
movzx eax, ax
add eax, ecx
mov qword [rsp + 0x68], rax
mov r10d, r8d
mov ebx, r9d
cmp r11, rdi
jne 0x1400655be
inc r8d
inc ebp
mov eax, ebp
mov ebx, r9d
cmp r9d, dword [rsp + 0x1b8]
mov rbp, qword [rsp + 0x188]
jb 0x14006546b
jmp 0x140065966
mov r9d, ebx
mov r8d, r10d
jmp 0x1400658cf
mov byte [rsp + 0x30], 1
mov r14, qword [rsp + 0x2b0]
mov rax, qword [r14 + 0x10]
cmp rax, qword [rsp + 0x178]
movabs r15, 0x8080808080808080
lea r12, [rsp + 0x70]
mov bl, 1
jb 0x140065210
mov rcx, qword [rsp + 0x178]
test rcx, rcx
je 0x14006595d
cmp rax, rcx
jbe 0x140065957
mov rax, qword [r14 + 8]
cmp byte [rax + rcx], 0xc0
jge 0x14006595d
jmp 0x140065aec
mov rdi, qword [rsp + 0x118]
jmp 0x1400653e4
jne 0x140065aec
mov qword [r14 + 0x10], rcx
jmp 0x140065210
mov r14, qword [rsp + 0x2b0]
movabs r15, 0x8080808080808080
lea r12, [rsp + 0x70]
mov bl, 1
jmp 0x140065210
lea rcx, str.attempt_to_calculate_the_remainder_with_a_divisor_of_zero
lea r8, str.C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001fidna_0.3.0_srcpunycode.rs
mov edx, 0x39
call fcn.140109250
ud2
mov eax, dword [rsp + 0x38]
mov rcx, qword [rsp + 0x210]
mov dword [rcx + 8], eax
mov rax, qword [rsp + 0x30]
mov qword [rcx], rax
jmp 0x140062a20
lea r8, [0x14012fcc0]
mov edx, 4
mov rcx, r9
call fcn.140109240
ud2
lea rcx, str.attempt_to_divide_by_zeroC:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001f_tinyvec_1.6.0_src_arrayvec.rsY
lea r8, str.C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001fidna_0.3.0_srcpunycode.rs
jmp 0x140065a05
lea r8, [0x14012fcc0]
jmp 0x140065a13
lea r8, [0x14012fbf8]
call fcn.140109230
ud2
lea rcx, str.attempt_to_divide_by_zeroC:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001f_tinyvec_1.6.0_src_arrayvec.rsY
lea r8, str.C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001fidna_0.3.0_srcpunycode.rs
mov edx, 0x19
jmp 0x140065997
lea r8, [0x14012fcd8]
mov edx, 4
mov rcx, rax
jmp 0x1400659c9
lea r8, [0x14012fcc0]
mov edx, 4
jmp 0x1400659c9
lea rcx, str.explicit_panic
lea r8, str.C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001fidna_0.3.0_srcpunycode.rs
mov edx, 0xe
call fcn.14010b6a7
ud2
lea rcx, str.called__Option::unwrap____on_a__None__valueC:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001fwinapi_util_0.1.5_srcwin.rs
lea r8, str.C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001fidna_0.3.0_srcpunycode.rs
mov edx, 0x2b
jmp 0x140065997
lea rax, str.Index_out_of_bounds
lea rcx, [rsp + 0x70]
mov qword [rcx + 0x10], rax
mov qword [rcx + 0x18], 1
xor eax, eax
mov qword [rcx], rax
lea rdx, str.Tried_to_shrink_to_a_larger_capacity
mov qword [rcx + 0x20], rdx
mov qword [rcx + 0x28], rax
lea rdx, [0x140151ba0]
jmp 0x140065ac5
lea rax, str.Index_out_of_bounds
lea rcx, [rsp + 0x70]
mov qword [rcx + 0x10], rax
mov qword [rcx + 0x18], 1
xor eax, eax
mov qword [rcx], rax
lea rdx, str.Tried_to_shrink_to_a_larger_capacity
mov qword [rcx + 0x20], rdx
mov qword [rcx + 0x28], rax
lea rdx, [0x140151bb8]
call fcn.140109170
ud2
lea r8, [0x140151bd0]
mov rdx, r15
call fcn.1401094d0
ud2
lea r8, [0x140151bd0]
mov rcx, r15
jmp 0x1400659c9
lea rcx, str.assertion_failed:_self.is_char_boundary_new_len_
lea r8, [0x140177c90]
mov edx, 0x30
jmp 0x140065997
lea rax, str.C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001fidna_0.3.0_srcpunycode.rs
mov qword [rsp + 0x20], rax
mov rcx, r13
mov rdx, rsi
xor r8d, r8d
mov r9, rbp
jmp 0x140065b4a
lea rax, str.C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001fidna_0.3.0_srcpunycode.rs
mov qword [rsp + 0x20], rax
mov rcx, r13
mov rdx, rsi
mov r8, r14
jmp 0x140065b47
lea rax, str.C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001fidna_0.3.0_srcuts46.rs
mov qword [rsp + 0x20], rax
mov rcx, rbp
mov rdx, rsi
mov r9, rsi
call fcn.140109740
ud2
lea rcx, str.assertion_failed:_end___start__end___len
lea r8, [0x140151c60]
mov edx, 0x2c
jmp 0x140065997
lea r8, [0x140151c78]
mov rcx, rsi
mov rdx, qword [rsp + 0x170]
jmp 0x140065ad6
lea rcx, str.called__Option::unwrap____on_a__None__valueC:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001fwinapi_util_0.1.5_srcwin.rs
lea r8, [0x140151c18]
jmp 0x140065a53
lea r8, [0x140151b88]
mov rcx, rsi
mov rdx, r11
jmp 0x140065ad6
lea r8, [0x140151b88]
mov rcx, r11
jmp 0x1400659c9
lea rcx, str.called__Option::unwrap____on_a__None__valueC:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001fwinapi_util_0.1.5_srcwin.rs
lea r8, [0x140151be8]
jmp 0x140065a53
lea rcx, str.called__Option::unwrap____on_a__None__valueC:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001fwinapi_util_0.1.5_srcwin.rs
lea r8, [0x140151c00]
jmp 0x140065a53