Function at 0x1400d7ddd
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 qword [rsp + 0x180], rcx
test r9, r9
je 0x1400d7f42
lea rax, [r8 + r9]
xor r14d, r14d
movaps xmm0, xmmword [0x14033e570]
mov rcx, r8
mov bl, byte [rcx]
movzx r10d, bl
test r10b, r10b
js 0x1400d7e2a
inc rcx
jmp 0x1400d7e9a
mov r11d, r10d
and r11d, 0x1f
movzx edi, byte [rcx + 1]
and edi, 0x3f
cmp r10b, 0xdf
jbe 0x1400d7e7c
movzx esi, byte [rcx + 2]
shl edi, 6
and esi, 0x3f
or esi, edi
cmp bl, 0xf0
jb 0x1400d7e8c
movzx r10d, byte [rcx + 3]
and r11d, 7
shl r11d, 0x12
shl esi, 6
and r10d, 0x3f
or r10d, esi
or r10d, r11d
cmp r10d, 0x110000
je 0x1400d7efd
add rcx, 4
jmp 0x1400d7e9a
add rcx, 2
shl r11d, 6
or r11d, edi
mov r10d, r11d
jmp 0x1400d7e9a
add rcx, 3
shl r11d, 0xc
or esi, r11d
mov r10d, esi
cmp r10d, 0x2e
jne 0x1400d7ea5
xor r11d, r11d
jmp 0x1400d7ef1
test r14, r14
jne 0x1400d7eb4
cmp r10d, 0x2d
je 0x1400d7f42
mov r11d, 5
cmp r14, 4
ja 0x1400d7ede
movups xmmword [rsp + 0x60], xmm0
je 0x1400dae63
cmp r10d, dword [rsp + r14*4 + 0x60]
jne 0x1400d7ede
inc r14
mov r11, r14
cmp r14, 4
je 0x1400d7f42
lea esi, [r10 - 0x61]
cmp esi, 0x1a
jb 0x1400d7ef1
add r10d, 0xffffffd0
cmp r10d, 0xa
jae 0x1400d7f42
mov r14, r11
cmp rcx, rax
jne 0x1400d7e1a
mov rcx, qword [rsp + 0x2b0]
mov rdx, r8
mov r8, r9
call fcn.1400e5263
mov rax, qword [rsp + 0x180]
mov dword [rax + 8], 0
mov qword [rax], 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 eax, dword [rdx + 0x30]
movzx ecx, byte [rdx + 0x34]
xor esi, esi
lea r11, [rsp + 0x38]
add r9, r8
xorps xmm6, xmm6
lea rdi, [rsp + 0x188]
movups xmmword [rdi + 2], xmm6
movzx r10d, word [rdi + 0x10]
lea r13, [rsp + 0x70]
mov word [r13 + 0x86], r10w
movups xmm0, xmmword [rdi]
movups xmmword [r13 + 0x76], xmm0
mov qword [r13 - 0x10], rsi
mov dword [r13], esi
mov word [r13 + 4], si
lea r10, [rsp + 0x78]
mov byte [r10], sil
mov dword [r10 + 4], esi
mov byte [r10 + 8], sil
mov dword [r10 + 0xc], esi
mov byte [r10 + 0x10], sil
mov dword [r10 + 0x14], esi
mov byte [r10 + 0x18], sil
mov dword [r10 + 0x1c], esi
mov qword [r10 + 0x20], r8
mov qword [r10 + 0x28], r9
mov qword [r10 + 0x30], r11
mov qword [r10 + 0x38], rsi
mov byte [r10 + 0x4c], cl
shl rcx, 0x20
or rcx, rax
mov qword [rsp + 0x118], rcx
mov qword [rsp + 0x58], rdx
mov qword [rdx + 0x10], rsi
mov dword [r11 + 8], esi
mov qword [r11], rsi
mov rcx, qword [rsp + 0x2b0]
mov rcx, qword [rcx + 0x10]
mov qword [rsp + 0x148], rcx
mov byte [rsp + 0x13b], sil
movups xmmword [rsp + 0x12b], xmm6
mov dword [r10 + 0x48], eax
mov eax, dword [rsp + 0x138]
mov dword [r10 + 0x5d], eax
movups xmm0, xmmword [rsp + 0x128]
movups xmmword [r10 + 0x4d], xmm0
mov dword [r10 + 0x68], esi
lea rax, [rsp + 0xe4]
mov word [rax], si
mov dword [rax + 0x1c], 0x110000
mov byte [rax + 0x20], sil
xor ecx, ecx
mov edx, dword [rsp + 0xe0]
mov r8, qword [rsp + 0xf0]
mov r10, qword [rsp + 0xf8]
movzx r9d, word [rsp + 0xe4]
cmp rcx, 1
jne 0x1400d80b8
test edx, edx
je 0x1400d8080
cmp rax, r10
jb 0x1400d884b
mov qword [rsp + 0xf8], 0
xor r10d, r10d
jmp 0x1400d80ab
movzx ecx, r9w
cmp r9w, 5
jae 0x1400daea5
cmp rax, rcx
jb 0x1400d8843
test r9w, r9w
je 0x1400d80a8
mov word [rsp + 0xe4], 0
xor r9d, r9d
mov qword [rsp + 0x60], 0
xor ecx, ecx
jmp 0x1400d805c
cmp rcx, 2
jne 0x1400d80e0
test edx, edx
je 0x1400d880e
cmp rax, r10
jb 0x1400d8829
mov qword [rsp + 0xf8], 0
jmp 0x1400d88b0
mov r9, qword [rsp + 0xd0]
test r9, r9
jne 0x1400d8316
mov dil, byte [rsp + 0xc0]
cmp dil, 2
je 0x1400d845d
mov rax, qword [rsp + 0xb0]
mov r12, qword [rsp + 0x98]
mov rbp, qword [rsp + 0xa0]
mov r14, qword [rsp + 0xa8]
mov bl, byte [rsp + 0xc1]
mov r15, qword [rsp + 0xb8]
test rax, rax
je 0x1400d81e0
cmp rax, r15
je 0x1400d81d4
lea rcx, [rax + 1]
mov qword [rsp + 0xb0], rcx
mov r8b, byte [rax]
movzx esi, r8b
test sil, sil
jns 0x1400d8354
mov ecx, esi
and ecx, 0x1f
lea rdx, [rax + 2]
mov qword [rsp + 0xb0], rdx
movzx r9d, byte [rax + 1]
and r9d, 0x3f
cmp sil, 0xdf
jbe 0x1400d878f
lea rdx, [rax + 3]
mov qword [rsp + 0xb0], rdx
movzx edx, byte [rax + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp r8b, 0xf0
jb 0x1400d879c
lea r8, [rax + 4]
mov qword [rsp + 0xb0], 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 0x1400d8348
mov qword [rsp + 0xb0], 0
cmp r12, rbp
je 0x1400d8455
lea rax, [r12 + 1]
mov qword [rsp + 0x98], rax
mov cl, byte [r12]
movzx esi, cl
test sil, sil
js 0x1400d8207
mov r12, rax
jmp 0x1400d8286
mov eax, esi
and eax, 0x1f
lea r8, [r12 + 2]
mov qword [rsp + 0x98], r8
movzx edx, byte [r12 + 1]
and edx, 0x3f
cmp sil, 0xdf
jbe 0x1400d8272
lea r8, [r12 + 3]
mov qword [rsp + 0x98], r8
movzx esi, byte [r12 + 2]
shl edx, 6
and esi, 0x3f
or esi, edx
cmp cl, 0xf0
jb 0x1400d827e
lea rcx, [r12 + 4]
mov qword [rsp + 0x98], rcx
movzx edx, byte [r12 + 3]
and eax, 7
shl eax, 0x12
shl esi, 6
and edx, 0x3f
or edx, esi
or edx, eax
mov r12, rcx
mov esi, edx
jmp 0x1400d8286
shl eax, 6
or eax, edx
mov r12, r8
mov esi, eax
jmp 0x1400d8286
shl eax, 0xc
or esi, eax
mov r12, r8
lea eax, [rsi - 0x2d]
cmp eax, 2
jb 0x1400d8354
cmp esi, 0x110000
je 0x1400d8455
lea eax, [rsi - 0x61]
cmp eax, 0x1a
jb 0x1400d8354
lea eax, [rsi - 0x30]
cmp eax, 0xa
jb 0x1400d8354
mov ecx, esi
call fcn.1400d7c99
mov rcx, rax
movzx edx, byte [rax]
mov eax, 0
cmp edx, 1
je 0x1400d8132
mov eax, edx
lea rdx, [0x1403eb134]
movsxd rax, dword [rdx + rax*4]
add rax, rdx
jmp rax
mov r8d, dword [rsp + 0x70]
lea rdi, [rsp + 0x78]
jmp 0x1400d84ee
cmp esi, 0x110000
je 0x1400d8455
cmp byte [rsp + 0xd8], 0
je 0x1400d83c3
cmp esi, 0x80
jb 0x1400d8446
lea edi, [rsi - 0xac00]
cmp edi, 0x2ba4
jb 0x1400d83dd
mov ecx, esi
call fcn.1401d8311
test rax, rax
jne 0x1400d8394
mov ecx, esi
call fcn.1401d83c1
test rax, rax
je 0x1400d8446
mov r15, rax
mov r14, rdx
test rdx, rdx
je 0x1400d80e0
shl r14, 2
xor esi, esi
mov edx, dword [r15 + rsi]
mov rcx, r13
call fcn.1400d7a9e
add rsi, 4
cmp r14, rsi
jne 0x1400d83a9
jmp 0x1400d80e0
cmp esi, 0x80
jb 0x1400d8446
lea edi, [rsi - 0xac00]
cmp edi, 0x2ba4
jae 0x1400d8750
mov esi, edi
mov ebp, 0xffff
and esi, ebp
imul ebx, esi, 0x6f75
shr ebx, 0x18
lea edx, [rbx + 0x1100]
mov rcx, r13
call fcn.1400d7a9e
imul eax, ebx, 0x24c
mov ecx, edi
sub ecx, eax
and ecx, ebp
imul edx, ecx, 0x925
shr edx, 0x10
add edx, 0x1161
mov rcx, r13
call fcn.1400d7a9e
shr esi, 2
imul eax, esi, 0x4925
shr eax, 0x11
lea ecx, [rax + rax*8]
lea ecx, [rcx + rcx*2]
add ecx, eax
sub di, cx
je 0x1400d80e0
add edi, 0x11a7
movzx esi, di
mov rcx, r13
mov edx, esi
call fcn.1400d7a9e
jmp 0x1400d80e0
mov byte [rsp + 0xc0], 2
mov r9d, dword [rsp + 0x70]
test r9d, r9d
mov rdx, qword [rsp + 0x88]
movzx r8d, word [rsp + 0x74]
movzx eax, r8w
mov rcx, rdx
cmove rcx, rax
test rcx, rcx
je 0x1400d8862
mov rcx, qword [rsp + 0xd0]
test r9d, r9d
lea rdi, [rsp + 0x78]
je 0x1400d84a3
mov r8, qword [rsp + 0x80]
jmp 0x1400d84b4
cmp r8w, 5
jae 0x1400daeef
mov r8, rdi
mov rdx, rax
mov rax, rdx
sub rax, rcx
jb 0x1400daebf
lea rcx, [r8 + rcx*8]
mov rdx, rax
call fcn.1400d6f6d
mov r8d, dword [rsp + 0x70]
test r8d, r8d
je 0x1400d84e0
mov r9, qword [rsp + 0x88]
jmp 0x1400d84e6
movzx r9d, word [rsp + 0x74]
mov qword [rsp + 0xd0], r9
mov rcx, qword [rsp + 0xc8]
test r8d, r8d
je 0x1400d850d
mov rdx, qword [rsp + 0x80]
mov rax, qword [rsp + 0x88]
jmp 0x1400d851f
movzx eax, word [rsp + 0x74]
cmp rax, 5
jae 0x1400daeb6
mov rdx, rdi
cmp rax, rcx
jbe 0x1400d8a6e
mov esi, dword [rdx + rcx*8 + 4]
inc rcx
cmp rcx, r9
jne 0x1400d8543
test r8d, r8d
je 0x1400d8550
mov rdx, qword [rsp + 0x88]
jmp 0x1400d8555
mov qword [rsp + 0xc8], rcx
jmp 0x1400d85fe
movzx edx, word [rsp + 0x74]
sub rdx, r9
je 0x1400d85d1
xor ecx, ecx
mov rax, qword [rsp + 0xd0]
add rax, rcx
cmp dword [rsp + 0x70], 0
je 0x1400d8589
mov r9, qword [rsp + 0x88]
cmp r9, rax
jbe 0x1400d8a17
mov r8, qword [rsp + 0x80]
jmp 0x1400d85a5
movzx r9d, word [rsp + 0x74]
cmp r9, 5
jae 0x1400dae91
cmp rax, r9
jae 0x1400d8a17
mov r8, rdi
cmp r9, rcx
jbe 0x1400d8a23
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 0x1400d855c
mov r8d, dword [rsp + 0x70]
test r8d, r8d
je 0x1400d85ea
cmp qword [rsp + 0x88], rdx
jb 0x1400d85f9
mov qword [rsp + 0x88], rdx
jmp 0x1400d85f9
movzx eax, word [rsp + 0x74]
cmp rdx, rax
jae 0x1400d85f9
mov word [rsp + 0x74], dx
movups xmmword [r13 + 0x58], xmm6
imul eax, esi, 0x9e3779b9
imul ecx, esi, 0x31415926
xor eax, ecx
imul rax, rax, 0x39a
shr rax, 0x1f
and eax, 0xfffffffe
lea rdx, [0x1403c4940]
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, [0x1403c5074]
mov r14d, dword [rax + rcx]
mov eax, r14d
shr eax, 8
cmp eax, esi
mov eax, 0
cmovne r14d, eax
mov r15d, dword [rsp + 0x100]
cmp r15d, 0x110000
jne 0x1400d867f
test r14b, r14b
jne 0x1400d883b
mov dword [rsp + 0x100], esi
jmp 0x1400d80e0
cmp byte [rsp + 0x104], 0
je 0x1400d86a6
cmp byte [rsp + 0x105], r14b
jae 0x1400d86cd
mov ecx, r15d
mov edx, esi
call fcn.1401d846b
cmp eax, 0x110000
je 0x1400d86d6
jmp 0x1400d86c1
mov ecx, r15d
mov edx, esi
call fcn.1401d846b
cmp eax, 0x110000
jne 0x1400d86c1
test r14b, r14b
jne 0x1400d86d6
jmp 0x1400d8a0b
mov dword [rsp + 0x100], eax
jmp 0x1400d80e0
test r14b, r14b
je 0x1400d89e5
cmp dword [rsp + 0xe0], 0
je 0x1400d871c
mov rdx, qword [rsp + 0xf8]
cmp rdx, qword [rsp + 0xe8]
jne 0x1400d8707
lea rcx, [rsp + 0xe8]
call fcn.1400d780e
mov rdx, qword [rsp + 0xf8]
mov rax, qword [rsp + 0xf0]
mov dword [rax + rdx*4], esi
inc qword [rsp + 0xf8]
jmp 0x1400d873b
movzx eax, word [rsp + 0xe4]
cmp rax, 3
ja 0x1400d87a8
mov dword [rsp + rax*4 + 0xe8], esi
inc eax
mov word [rsp + 0xe4], ax
mov byte [rsp + 0x104], 1
mov byte [rsp + 0x105], r14b
jmp 0x1400d80e0
mov ecx, esi
call fcn.1401d83c1
test rax, rax
je 0x1400d8446
mov r15, rdx
test rdx, rdx
je 0x1400d80e0
mov r14, rax
shl r15, 2
xor esi, esi
mov edx, dword [r14 + rsi]
mov rcx, r13
call fcn.1400d7a9e
add rsi, 4
cmp r15, rsi
jne 0x1400d8775
jmp 0x1400d80e0
shl ecx, 6
or ecx, r9d
mov esi, ecx
jmp 0x1400d8354
shl ecx, 0xc
or edx, ecx
mov esi, edx
jmp 0x1400d8354
lea rcx, [rsp + 0x188]
lea rdx, [rsp + 0xe4]
mov r8d, esi
call fcn.140335ef8
cmp dword [rsp + 0xe0], 0
je 0x1400d87ec
cmp qword [rsp + 0xe8], 0
je 0x1400d87ec
mov r8, qword [rsp + 0xf0]
mov rcx, qword [0x1404845c0]
xor edx, edx
call qword [0x14033d4d0]
movups xmm0, xmmword [rsp + 0x188]
movups xmm1, xmmword [rsp + 0x198]
movups xmmword [r13 + 0x80], xmm1
movups xmmword [r13 + 0x70], xmm0
jmp 0x1400d873b
movzx ecx, r9w
cmp cx, 5
jae 0x1400daea5
lea r8, [rsp + 0xe8]
cmp rax, rcx
jae 0x1400d88a0
mov r15d, dword [r8 + rax*4]
inc rax
mov qword [rsp + 0x60], 2
jmp 0x1400d885b
mov r15d, esi
jmp 0x1400d88cd
lea r8, [rsp + 0xe8]
mov r15d, dword [r8 + rax*4]
inc rax
mov qword [rsp + 0x60], 1
mov qword [rsp + 0x68], rax
jmp 0x1400d88cd
mov qword [rsp + 0x60], 2
mov qword [rsp + 0x68], 0
mov r15d, dword [rsp + 0x100]
mov ecx, 2
mov eax, 0
cmp r15d, 0x110000
je 0x1400d803c
mov dword [rsp + 0x100], 0x110000
jmp 0x1400d88cd
test r9w, r9w
je 0x1400d88b0
mov word [rsp + 0xe4], 0
mov r15d, dword [rsp + 0x100]
mov eax, 0x110000
mov dword [rsp + 0x100], eax
cmp r15d, eax
je 0x1400d8a32
cmp r15d, 0x80
jae 0x1400d8904
mov rsi, qword [rsp + 0x58]
mov rdx, qword [rsi + 0x10]
cmp rdx, qword [rsi]
jne 0x1400d88f0
mov rcx, rsi
call fcn.1400e52bb
mov rdx, qword [rsi + 0x10]
mov rax, qword [rsi + 8]
mov byte [rax + rdx], r15b
inc rdx
mov qword [rsi + 0x10], rdx
jmp 0x1400d89d6
mov dword [rsp + 0x188], 0
mov eax, r15d
cmp r15d, 0x800
jae 0x1400d8942
shr eax, 6
or al, 0xc0
mov byte [rsp + 0x188], al
and r15b, 0x3f
or r15b, 0x80
mov byte [rsp + 0x189], r15b
mov r8d, 2
jmp 0x1400d89c4
cmp r15d, 0x10000
jae 0x1400d8980
shr eax, 0xc
or al, 0xe0
mov byte [rsp + 0x188], al
mov eax, r15d
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x189], al
and r15b, 0x3f
or r15b, 0x80
mov byte [rsp + 0x18a], r15b
mov r8d, 3
jmp 0x1400d89c4
shr eax, 0x12
or al, 0xf0
mov byte [rsp + 0x188], al
mov eax, r15d
shr eax, 0xc
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x189], al
mov eax, r15d
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x18a], al
and r15b, 0x3f
or r15b, 0x80
mov byte [rsp + 0x18b], r15b
mov r8d, 4
mov rcx, qword [rsp + 0x58]
lea rdx, [rsp + 0x188]
call fcn.1400e5263
mov rcx, qword [rsp + 0x60]
mov rax, qword [rsp + 0x68]
jmp 0x1400d803c
mov dword [rsp + 0x100], esi
mov byte [rsp + 0x104], 0
mov qword [rsp + 0x60], 1
mov qword [rsp + 0x68], 0
jmp 0x1400d88cd
mov dword [rsp + 0x100], esi
jmp 0x1400d88cd
lea r8, [0x14038e148]
mov rcx, rax
jmp 0x1400d8a2a
lea r8, [0x14038e160]
mov rdx, r9
call fcn.140334130
cmp dword [rsp + 0x70], 0
je 0x1400d8a7d
cmp qword [rsp + 0x78], 0
mov rsi, qword [rsp + 0x58]
mov r13, qword [rsp + 0x118]
je 0x1400d8a8a
mov r8, qword [rsp + 0x80]
mov rcx, qword [0x1404845c0]
xor edx, edx
call qword [0x14033d4d0]
mov edx, dword [rsp + 0xe0]
jmp 0x1400d8a8a
lea r8, [0x14038e130]
mov rdx, rax
call fcn.140334130
mov rsi, qword [rsp + 0x58]
mov r13, qword [rsp + 0x118]
test edx, edx
je 0x1400d8ab0
cmp qword [rsp + 0xe8], 0
je 0x1400d8ab0
mov r8, qword [rsp + 0xf0]
mov rcx, qword [0x1404845c0]
xor edx, edx
call qword [0x14033d4d0]
xor edx, edx
lea rax, [rsp + 0x128]
mov qword [rax], rdx
mov qword [rax + 8], 8
mov qword [rax + 0x10], rdx
mov rax, r13
and rax, 0xffffffffffff00ff
mov qword [rsp + 0x1e8], rax
mov rax, qword [rsi + 8]
mov rcx, qword [rsi + 0x10]
lea r8, [rsp + 0x188]
mov qword [r8], rdx
mov qword [r8 + 8], rcx
mov qword [r8 + 0x10], rax
mov qword [r8 + 0x18], rcx
mov qword [r8 + 0x20], rdx
mov qword [r8 + 0x28], rcx
mov qword [r8 + 0x30], 1
movabs rax, 0x2e0000002e
mov qword [r8 + 0x38], rax
mov word [r8 + 0x40], 1
mov dil, 1
xorps xmm6, xmm6
xor ebx, ebx
lea rcx, [rsp + 0x188]
call fcn.1400db04e
test rax, rax
je 0x1400da102
mov rsi, rax
mov r15, rdx
test dil, 1
mov rcx, qword [rsp + 0x2b0]
jne 0x1400d8b79
mov rdx, qword [rcx + 0x10]
cmp rdx, qword [rcx]
jne 0x1400d8b6a
call fcn.1400e52bb
mov rcx, qword [rsp + 0x2b0]
mov rdx, qword [rcx + 0x10]
mov rax, qword [rcx + 8]
mov byte [rax + rdx], 0x2e
inc rdx
mov qword [rcx + 0x10], rdx
cmp r15, 4
jb 0x1400d8b96
mov eax, dword [rsi]
bswap eax
xor ecx, ecx
xor edx, edx
cmp eax, 0x786e2d2d
setb cl
seta dl
cmp ecx, edx
je 0x1400d8bd5
test bl, 1
jne 0x1400d8ba8
mov rcx, rsi
mov rdx, r15
call fcn.1400db170
mov ebx, eax
mov rcx, rsi
mov rdx, r15
mov r8, r13
lea r9, [rsp + 0x38]
call fcn.1400db22c
mov rcx, qword [rsp + 0x2b0]
mov rdx, rsi
mov r8, r15
call fcn.1400e5263
xor edi, edi
jmp 0x1400d8b26
add rsi, 4
add r15, 0xfffffffffffffffc
mov qword [rsp + 0x138], 0
mov r14, r15
mov qword [rsp + 0x110], rbx
mov cl, 0x2d
mov rdx, rsi
mov r8, r14
call fcn.14009c0d0
cmp rax, 1
jne 0x1400d8c1f
mov r14, rdx
cmp rdx, r15
jae 0x1400d8c1a
cmp byte [rsi + r14], 0x2d
je 0x1400d8c9a
cmp r14, r15
jbe 0x1400d8bf4
lea rdi, [0x1403e58f0]
xor r14d, r14d
mov rbx, r15
mov rcx, r14
cmp r14, 8
jb 0x1400d8c85
lea rdx, [rdi + 7]
and rdx, 0xfffffffffffffff8
mov rax, rdx
sub rax, rdi
mov rcx, r14
cmp rax, r14
ja 0x1400d8c85
movabs rcx, 0x8080808080808080
test qword [rdi], rcx
jne 0x1400d8cd8
cmp rdx, rdi
mov ecx, 8
cmove rax, rcx
lea rcx, [r14 - 8]
cmp rax, rcx
jae 0x1400d8cc8
movabs rdx, 0x8080808080808080
test qword [rdi + rax], rdx
jne 0x1400d8cd8
add rax, 8
jmp 0x1400d8c6a
mov rax, rcx
sub rax, 1
jb 0x1400d8cee
cmp byte [rdi + rcx - 1], 0
mov rcx, rax
jns 0x1400d8c85
jmp 0x1400d8cd8
test r14, r14
je 0x1400d9187
lea r8, [r14 + 1]
mov rbx, r15
sub rbx, r8
jbe 0x1400d8cba
cmp byte [rsi + r8], 0xbf
jle 0x1400dafbf
add r8, rsi
mov rdi, rsi
mov rsi, r8
jmp 0x1400d8c2c
movabs rax, 0x8080808080808080
test qword [rdi + rcx], rax
je 0x1400d8cee
mov byte [rsp + 0x38], 1
mov bl, 1
xor edi, edi
mov r13, qword [rsp + 0x118]
jmp 0x1400d8b26
test rbx, rbx
je 0x1400d8f52
add rbx, rsi
xor edx, edx
mov r13d, 0x48
mov dword [rsp + 0x30], 0x80
mov r15d, r14d
xor ebp, ebp
mov r12d, r15d
mov qword [rsp + 0x48], rdx
lea r9d, [r13 + 0x1a]
inc rsi
mov r10d, r13d
neg r10d
mov r11d, 1
mov r15d, 0x24
mov ecx, ebp
mov al, byte [rsi - 1]
lea edx, [rax - 0x30]
cmp dl, 0xa
jae 0x1400d8d43
add al, 0xea
mov edx, eax
jmp 0x1400d8d53
lea edx, [rax - 0x41]
cmp dl, 0x1a
jb 0x1400d8d53
add al, 0x9f
mov edx, eax
cmp al, 0x19
ja 0x1400d8cd8
test r11d, r11d
je 0x1400dae79
movzx r8d, dl
mov eax, ecx
not eax
xor edx, edx
div r11d
cmp eax, r8d
jb 0x1400d8cd8
mov eax, r11d
imul eax, r8d
add ecx, eax
lea eax, [r10 + r15]
cmp r15d, r9d
mov edx, 0x1a
cmovae eax, edx
cmp r15d, r13d
mov edx, 1
cmovbe eax, edx
cmp eax, r8d
ja 0x1400d8dc8
mov r8d, 0x24
sub r8d, eax
mov eax, r8d
mul r11d
jo 0x1400d8cd8
cmp rsi, rbx
je 0x1400d8cd8
add r15d, 0x24
imul r11d, r8d
inc rsi
jmp 0x1400d8d32
inc r12d
je 0x1400dae53
mov eax, ecx
sub eax, ebp
test ebp, ebp
mov r8d, 2
mov edx, 0x2bc
cmove r8d, edx
xor r13d, r13d
xor edx, edx
div r8d
mov r8d, eax
xor edx, edx
div r12d
add eax, r8d
cmp eax, 0x1c8
mov r9d, 0xd41d41d5
jb 0x1400d8e33
xor r13d, r13d
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 r13d, 0x24
cmp eax, 0x3e57
mov eax, r8d
ja 0x1400d8e09
jmp 0x1400d8e36
mov r8d, eax
lea eax, [r8*4]
lea eax, [rax + rax*8]
add r8d, 0x26
xor edx, edx
div r8w
mov r10d, eax
mov eax, ecx
xor edx, edx
div r12d
add dword [rsp + 0x30], eax
jb 0x1400d8cd8
cmp dword [rsp + 0x30], 0x110000
je 0x1400d8cd8
mov eax, dword [rsp + 0x30]
xor eax, 0xd800
add eax, 0xffef0000
cmp eax, 0xffef0800
jb 0x1400d8cd8
mov r15d, r12d
mov ebp, edx
mov rcx, qword [rsp + 0x130]
mov r12d, edx
mov rdx, qword [rsp + 0x48]
test rdx, rdx
je 0x1400d8ec3
mov rax, rdx
shl rax, 4
xor r8d, r8d
mov r9, qword [rcx + r8]
cmp r9, r12
jb 0x1400d8eba
inc r9
mov qword [rcx + r8], r9
add r8, 0x10
cmp rax, r8
jne 0x1400d8eaa
cmp rdx, qword [rsp + 0x128]
jne 0x1400d8ef8
lea rcx, [rsp + 0x128]
mov word [rsp + 0x50], r10w
call fcn.1401cae2a
movzx r10d, word [rsp + 0x50]
mov rcx, qword [rsp + 0x130]
mov r8, qword [rsp + 0x138]
jmp 0x1400d8efb
mov r8, rdx
movzx eax, r10w
add r13d, eax
mov rax, r8
shl rax, 4
mov qword [rcx + rax], r12
mov edx, dword [rsp + 0x30]
mov dword [rcx + rax + 8], edx
lea rdx, [r8 + 1]
mov qword [rsp + 0x138], rdx
inc ebp
cmp rsi, rbx
jne 0x1400d8d0f
cmp rdx, 0x15
jae 0x1400d9ab1
cmp rdx, 1
jbe 0x1400da0f8
mov r8d, 1
mov qword [rsp + 0x30], rcx
call fcn.1400d79ef
jmp 0x1400d8f5f
mov rax, qword [rsp + 0x130]
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x2b0]
mov rbx, qword [rsp + 0x138]
lea r8, [rbx + r14]
mov rax, qword [rcx]
mov rsi, qword [rcx + 0x10]
sub rax, rsi
cmp rax, r8
jb 0x1400d9a9c
add r14, rdi
xor r15d, r15d
xor r12d, r12d
mov r13, qword [rsp + 0x118]
mov r11, r15
shl r11, 4
add r11, qword [rsp + 0x30]
mov rax, rdi
cmp r15, rbx
jae 0x1400d8fb4
cmp qword [r11], r12
je 0x1400d906e
mov rdx, r14
cmp rax, r14
je 0x1400d9022
mov r9b, byte [rax]
movzx ebp, r9b
test bpl, bpl
jns 0x1400d9033
mov edx, ebp
and edx, 0x1f
movzx r10d, byte [rax + 1]
and r10d, 0x3f
cmp bpl, 0xdf
jbe 0x1400d903e
movzx r8d, byte [rax + 2]
shl r10d, 6
and r8d, 0x3f
or r8d, r10d
cmp r9b, 0xf0
jb 0x1400d904f
movzx ebp, byte [rax + 3]
add rax, 4
and edx, 7
shl edx, 0x12
shl r8d, 6
and ebp, 0x3f
or ebp, r8d
or ebp, edx
mov rdi, rax
mov rdx, rax
cmp ebp, 0x110000
mov rcx, qword [rsp + 0x2b0]
jne 0x1400d9069
mov rax, rdx
cmp r15, rbx
jb 0x1400d8fa6
jmp 0x1400d915e
inc rax
inc r12
mov rdi, rax
jmp 0x1400d9080
add rax, 2
shl edx, 6
or edx, r10d
mov rdi, rax
mov ebp, edx
jmp 0x1400d905f
add rax, 3
shl edx, 0xc
or r8d, edx
mov rdi, rax
mov ebp, r8d
mov rcx, qword [rsp + 0x2b0]
jmp 0x1400d9075
mov rdi, rax
jmp 0x1400d9075
inc r15
mov ebp, dword [r11 + 8]
inc r12
cmp ebp, 0x80
jae 0x1400d90ae
mov rdx, qword [rcx + 0x10]
cmp rdx, qword [rcx]
jne 0x1400d909a
call fcn.1400e52bb
mov rcx, qword [rsp + 0x2b0]
mov rdx, qword [rcx + 0x10]
mov rax, qword [rcx + 8]
mov byte [rax + rdx], bpl
inc rdx
mov qword [rcx + 0x10], rdx
jmp 0x1400d8f97
mov dword [rsp + 0x60], 0
mov eax, ebp
cmp ebp, 0x800
jae 0x1400d90de
shr eax, 6
or al, 0xc0
mov byte [rsp + 0x60], al
and bpl, 0x3f
or bpl, 0x80
mov byte [rsp + 0x61], bpl
mov r8d, 2
jmp 0x1400d9147
cmp ebp, 0x10000
jae 0x1400d9111
shr eax, 0xc
or al, 0xe0
mov byte [rsp + 0x60], al
mov eax, ebp
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x61], al
and bpl, 0x3f
or bpl, 0x80
mov byte [rsp + 0x62], bpl
mov r8d, 3
jmp 0x1400d9147
shr eax, 0x12
or al, 0xf0
mov byte [rsp + 0x60], al
mov eax, ebp
shr eax, 0xc
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x61], al
mov eax, ebp
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x62], al
and bpl, 0x3f
or bpl, 0x80
mov byte [rsp + 0x63], bpl
mov r8d, 4
lea rdx, [rsp + 0x60]
call fcn.1400e5263
mov rcx, qword [rsp + 0x2b0]
jmp 0x1400d8f97
mov r14, qword [rcx + 8]
mov rdx, qword [rcx + 0x10]
test rsi, rsi
je 0x1400d918f
mov rbp, rdx
sub rbp, rsi
mov rbx, qword [rsp + 0x110]
jbe 0x1400d919c
cmp byte [r14 + rsi], 0xbf
jg 0x1400d91a2
jmp 0x1400dafa5
mov rdi, rsi
jmp 0x1400d8c26
mov rbp, rdx
mov rbx, qword [rsp + 0x110]
jmp 0x1400d91a2
jne 0x1400dafa5
add r14, rsi
test bl, 1
jne 0x1400d91b7
mov rcx, r14
mov rdx, rbp
call fcn.1400db170
mov ebx, eax
mov al, byte [rsp + 0x39]
or al, byte [rsp + 0x38]
or al, byte [rsp + 0x3a]
or al, byte [rsp + 0x3b]
or al, byte [rsp + 0x3c]
or al, byte [rsp + 0x3d]
or al, byte [rsp + 0x3e]
or al, byte [rsp + 0x3f]
or al, byte [rsp + 0x40]
or al, byte [rsp + 0x41]
or al, byte [rsp + 0x42]
xor edi, edi
or al, byte [rsp + 0x43]
jne 0x1400d8b26
lea rsi, [r14 + rbp]
xor edx, edx
mov rax, r14
xor ecx, ecx
mov r8d, edx
cmp rax, rsi
je 0x1400d98a6
mov edx, ecx
mov r11b, byte [rax]
movzx r9d, r11b
test r9b, r9b
js 0x1400d9219
inc rax
jmp 0x1400d9288
mov ecx, r9d
and ecx, 0x1f
movzx edi, byte [rax + 1]
and edi, 0x3f
cmp r9b, 0xdf
jbe 0x1400d926d
movzx r10d, byte [rax + 2]
shl edi, 6
and r10d, 0x3f
or r10d, edi
cmp r11b, 0xf0
jb 0x1400d927b
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 0x1400d98a6
add rax, 4
jmp 0x1400d9288
add rax, 2
shl ecx, 6
or ecx, edi
mov r9d, ecx
jmp 0x1400d9288
add rax, 3
shl ecx, 0xc
or r10d, ecx
mov r9d, r10d
xor ecx, ecx
cmp r9d, 0x80
jb 0x1400d91fd
imul ecx, r9d, 0x9e3779b9
imul r10d, r9d, 0x31415926
xor ecx, r10d
imul rcx, rcx, 0x39a
shr rcx, 0x1f
and ecx, 0xfffffffe
lea r11, [0x1403c4940]
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, [0x1403c5074]
mov ecx, dword [rcx + r10]
mov r10d, ecx
shr r10d, 8
cmp r10d, r9d
mov r10d, 0
cmovne ecx, r10d
cmp dl, cl
jbe 0x1400d9307
test cl, cl
jne 0x1400d9a71
lea edx, [r9 - 0x340]
cmp edx, 4
ja 0x1400d931c
cmp edx, 2
jne 0x1400d9a71
mov dl, 2
cmp r9d, 0x102d
jg 0x1400d9382
cmp r9d, 0xc55
jle 0x1400d93d8
cmp r9d, 0xf42
jle 0x1400d9546
lea r10d, [r9 - 0xf43]
cmp r10d, 0x3e
ja 0x1400d9362
movabs r11, 0x4021004002108401
bt r11, r10
jb 0x1400d9a71
lea r10d, [r9 - 0xf93]
cmp r10d, 0x26
ja 0x1400d968d
movabs r11, 0x4002108401
jmp 0x1400d946e
cmp r9d, 0x2125
jg 0x1400d941c
cmp r9d, 0x1fba
jg 0x1400d947d
lea r10d, [r9 - 0x1f71]
cmp r10d, 0xc
ja 0x1400d93b9
mov r11d, 0x1555
bt r11d, r10d
jb 0x1400d9a71
cmp r9d, 0x102e
je 0x1400d91fa
cmp r9d, 0x1b35
jne 0x1400d968d
jmp 0x1400d91fa
cmp r9d, 0x9d6
jg 0x1400d94b0
cmp r9d, 0x373
jg 0x1400d9582
lea r10d, [r9 - 0x30f]
cmp r10d, 0x36
ja 0x1400d968d
movabs r11, 0x48020000001005
bt r11, r10
jb 0x1400d91fa
jmp 0x1400d968d
cmp r9d, 0x110b9
jg 0x1400d94fd
cmp r9d, 0xfa0f
jle 0x1400d95fa
lea r10d, [r9 - 0xfa10]
cmp r10d, 0x12
ja 0x1400d9453
mov r11d, 0x50005
bt r11d, r10d
jb 0x1400d9a71
lea r10d, [r9 - 0xfb1d]
cmp r10d, 0x21
ja 0x1400d968d
movabs r11, 0x200000005
bt r11, r10
jb 0x1400d9a71
jmp 0x1400d968d
lea r10d, [r9 - 0x1fbe]
cmp r10d, 0x3f
ja 0x1400d949e
movabs r11, 0xa800202020202801
bt r11, r10
jb 0x1400d9a71
cmp r9d, 0x1fbb
jne 0x1400d968d
jmp 0x1400d9a71
cmp r9d, 0xb3d
jg 0x1400d95be
lea r10d, [r9 - 0xa33]
cmp r10d, 0x2b
ja 0x1400d94de
movabs r11, 0x80000000009
bt r11, r10
jb 0x1400d9a71
cmp r9d, 0x9d7
je 0x1400d91fa
cmp r9d, 0x9df
jne 0x1400d968d
jmp 0x1400d9a71
cmp r9d, 0x114af
jle 0x1400d9626
lea r10d, [r9 - 0x114b0]
cmp r10d, 0xd
ja 0x1400d9527
mov r11d, 0x2401
bt r11d, r10d
jb 0x1400d91fa
cmp r9d, 0x115af
je 0x1400d91fa
cmp r9d, 0x11930
jne 0x1400d968d
jmp 0x1400d91fa
cmp r9d, 0xd56
jle 0x1400d964b
lea r10d, [r9 - 0xdca]
cmp r10d, 0x15
ja 0x1400d9570
mov r11d, 0x200021
bt r11d, r10d
jb 0x1400d91fa
cmp r9d, 0xd57
jne 0x1400d968d
jmp 0x1400d91fa
lea r10d, [r9 - 0x374]
cmp r10d, 0x13
ja 0x1400d959f
mov r11d, 0x80401
bt r11d, r10d
jb 0x1400d9a71
cmp r9d, 0x93c
je 0x1400d91fa
cmp r9d, 0x9be
jne 0x1400d968d
jmp 0x1400d91fa
lea r10d, [r9 - 0xb3e]
cmp r10d, 0x19
ja 0x1400d95db
mov r11d, 0x3000001
bt r11d, r10d
jb 0x1400d91fa
cmp r9d, 0xbbe
je 0x1400d91fa
cmp r9d, 0xbd7
jne 0x1400d968d
jmp 0x1400d91fa
lea r10d, [r9 - 0x2329]
cmp r10d, 2
jb 0x1400d9a71
cmp r9d, 0x2126
je 0x1400d9a71
cmp r9d, 0x2adc
jne 0x1400d968d
jmp 0x1400d9a71
cmp r9d, 0x1133d
jg 0x1400d9673
cmp r9d, 0x110ba
je 0x1400d91fa
cmp r9d, 0x11127
je 0x1400d91fa
jmp 0x1400d968d
cmp r9d, 0xc56
je 0x1400d91fa
cmp r9d, 0xcc2
je 0x1400d91fa
cmp r9d, 0xd3e
jne 0x1400d968d
jmp 0x1400d91fa
cmp r9d, 0x1133e
je 0x1400d91fa
cmp r9d, 0x11357
je 0x1400d91fa
lea r10d, [r9 - 0x2f800]
cmp r10d, 0x21e
jb 0x1400d9a71
lea r10d, [r9 - 0x1d1bb]
cmp r10d, 6
jb 0x1400d9a71
lea r10d, [r9 - 0x1d15e]
cmp r10d, 7
jb 0x1400d9a71
lea r10d, [r9 - 0xfb46]
cmp r10d, 9
jb 0x1400d9a71
lea r10d, [r9 - 0xfb43]
cmp r10d, 2
jb 0x1400d9a71
mov r10d, r9d
and r10d, 0xfffffffe
cmp r10d, 0xfb40
je 0x1400d9a71
lea r11d, [r9 - 0xfb38]
cmp r11d, 5
jb 0x1400d9a71
lea r11d, [r9 - 0xfb2a]
cmp r11d, 0xd
jb 0x1400d9a71
lea r11d, [r9 - 0xfa70]
cmp r11d, 0x6a
jb 0x1400d9a71
lea r11d, [r9 - 0xfa2a]
cmp r11d, 0x44
jb 0x1400d9a71
lea r11d, [r9 - 0xfa25]
cmp r11d, 2
jb 0x1400d9a71
lea r11d, [r9 - 0xfa15]
cmp r11d, 0xa
jb 0x1400d9a71
lea r11d, [r9 - 0xf900]
cmp r11d, 0x10e
jb 0x1400d9a71
cmp r10d, 0x212a
je 0x1400d9a71
cmp r10d, 0x2000
je 0x1400d9a71
cmp r10d, 0x1fee
je 0x1400d9a71
lea r11d, [r9 - 0xf75]
cmp r11d, 2
jb 0x1400d9a71
cmp r10d, 0xb5c
je 0x1400d9a71
lea r11d, [r9 - 0xa59]
cmp r11d, 3
jb 0x1400d9a71
mov r11d, r9d
and r11d, 0xfffffff8
cmp r11d, 0x958
je 0x1400d9a71
cmp r10d, 0x9dc
je 0x1400d9a71
lea r11d, [r9 - 0x3099]
cmp r11d, 2
jb 0x1400d91fa
lea r11d, [r9 - 0x11a8]
cmp r11d, 0x1b
jb 0x1400d91fa
lea r11d, [r9 - 0x1161]
cmp r11d, 0x15
jb 0x1400d91fa
lea r11d, [r9 - 0xcd5]
cmp r11d, 2
jb 0x1400d91fa
lea r11d, [r9 - 0x653]
cmp r11d, 3
jb 0x1400d91fa
cmp r10d, 0x330
je 0x1400d91fa
lea r10d, [r9 - 0x32d]
cmp r10d, 2
jb 0x1400d91fa
lea r10d, [r9 - 0x323]
cmp r10d, 6
jb 0x1400d91fa
lea r10d, [r9 - 0x313]
cmp r10d, 2
jb 0x1400d91fa
lea r10d, [r9 - 0x300]
cmp r10d, 5
jb 0x1400d91fa
add r9d, 0xfffffcfa
cmp r9d, 7
jae 0x1400d91fd
jmp 0x1400d91fa
test r8b, r8b
je 0x1400d9a7d
mov qword [rsp + 0x110], rbx
lea rcx, [rsp + 0xa8]
movups xmmword [rcx], xmm6
lea rax, [rsp + 0x220]
movups xmmword [rax], xmm6
movzx eax, word [rsp + 0x22e]
mov word [rcx + 0x2e], ax
movups xmm0, xmmword [rsp + 0x21e]
movups xmmword [rcx + 0x1e], xmm0
mov qword [rsp + 0x60], 0
xor eax, eax
mov dword [rsp + 0x70], eax
mov word [rsp + 0x74], ax
mov byte [rsp + 0x78], al
mov dword [rsp + 0x7c], eax
mov byte [rsp + 0x80], al
mov dword [rsp + 0x84], eax
mov byte [rsp + 0x88], al
mov dword [rsp + 0x8c], eax
mov byte [rsp + 0x90], al
mov dword [rsp + 0x94], eax
mov qword [rsp + 0x98], r14
mov qword [rsp + 0xa0], rsi
mov byte [rsp + 0xb8], al
mov dword [rsp + 0xc0], eax
mov word [rsp + 0xc4], ax
mov dword [rsp + 0xe0], 0x110000
mov byte [rsp + 0xe4], al
mov rdi, r14
cmp rdi, rsi
je 0x1400d99fc
mov dl, byte [rdi]
movzx ebx, dl
test bl, bl
js 0x1400d997d
inc rdi
jmp 0x1400d99de
mov eax, ebx
and eax, 0x1f
movzx r8d, byte [rdi + 1]
and r8d, 0x3f
cmp bl, 0xdf
jbe 0x1400d99c5
movzx ecx, byte [rdi + 2]
shl r8d, 6
and ecx, 0x3f
or ecx, r8d
cmp dl, 0xf0
jb 0x1400d99d3
movzx ebx, byte [rdi + 3]
and eax, 7
shl eax, 0x12
shl ecx, 6
and ebx, 0x3f
or ebx, ecx
or ebx, eax
cmp ebx, 0x110000
je 0x1400d99fc
add rdi, 4
jmp 0x1400d99de
add rdi, 2
shl eax, 6
or eax, r8d
mov ebx, eax
jmp 0x1400d99de
add rdi, 3
shl eax, 0xc
or ecx, eax
mov ebx, ecx
lea rcx, [rsp + 0x60]
call fcn.1400d68b9
mov r15b, 1
cmp eax, 0x110000
je 0x1400d9a12
cmp eax, ebx
je 0x1400d9966
jmp 0x1400d9a12
lea rcx, [rsp + 0x60]
call fcn.1400d68b9
cmp eax, 0x110000
setne r15b
neg r15b
cmp dword [rsp + 0x70], 0
je 0x1400d9a38
cmp qword [rsp + 0x78], 0
je 0x1400d9a38
mov r8, qword [rsp + 0x80]
mov rcx, qword [0x1404845c0]
xor edx, edx
call qword [0x14033d4d0]
cmp dword [rsp + 0xc0], 0
mov rbx, qword [rsp + 0x110]
je 0x1400d9a6c
cmp qword [rsp + 0xc8], 0
je 0x1400d9a6c
mov r8, qword [rsp + 0xd0]
mov rcx, qword [0x1404845c0]
xor edx, edx
call qword [0x14033d4d0]
test r15b, r15b
je 0x1400d9a7d
mov byte [rsp + 0x3d], 1
xor edi, edi
jmp 0x1400d8b26
mov rcx, r14
mov rdx, rbp
mov r8, qword [rsp + 0x1e8]
lea r9, [rsp + 0x38]
call fcn.1400db22c
xor edi, edi
jmp 0x1400d8b26
mov rdx, rsi
call fcn.140334d41
mov rcx, qword [rsp + 0x2b0]
jmp 0x1400d8f86
mov rsi, r8
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x48], rdx
lea rdx, [rdx*8]
movabs rax, 0x7ffffffffffffff0
and rdx, rax
mov al, byte [0x1404846a0]
xor ecx, ecx
call fcn.1401b6fc0
test rax, rax
je 0x1400db035
mov r12, rax
mov al, byte [0x1404846a0]
mov edx, 0x100
xor ecx, ecx
call fcn.1401b6fc0
test rax, rax
je 0x1400db041
mov rbp, rax
mov eax, 1
sub rax, rsi
mov qword [rsp + 0x170], rax
mov r10, qword [rsp + 0x30]
lea rax, [r10 + 0x20]
mov qword [rsp + 0x168], rax
lea rax, [r10 + 8]
mov qword [rsp + 0x1d8], rax
lea rax, [r10 - 8]
mov qword [rsp + 0x1d0], rax
lea rax, [r10 - 0x10]
mov qword [rsp + 0x1e0], rax
mov eax, 0x10
mov qword [rsp + 0x178], rax
xor r13d, r13d
xor r15d, r15d
mov qword [rsp + 0x120], rdi
mov rdx, qword [rsp + 0x48]
mov qword [rsp + 0x140], r12
mov rbx, rdx
sub rbx, r15
mov rax, r15
shl rax, 4
lea rcx, [r10 + rax]
cmp rbx, 2
jae 0x1400d9b96
mov r8, rbx
jmp 0x1400d9cba
mov r9, qword [rcx + 0x10]
cmp r9, qword [rcx]
jae 0x1400d9c6e
mov r8d, 2
cmp rbx, 2
je 0x1400d9bf3
mov rdx, qword [rsp + 0x170]
lea r10, [rdx + r15]
mov rdx, qword [rsp + 0x168]
lea r11, [rdx + rax]
mov rsi, r9
mov r9, qword [r11]
cmp r9, rsi
jae 0x1400d9be9
lea rsi, [r10 + r8]
inc rsi
inc r8
add r11, 0x10
cmp rsi, 2
jne 0x1400d9bc7
mov r8, rbx
mov r10, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x48]
mov r9, r8
add r9, r15
jb 0x1400db014
mov rbx, r9
cmp r9, rdx
ja 0x1400db026
cmp r8, 2
jb 0x1400d9cbe
mov rdx, r8
shr rdx, 1
add rax, qword [rsp + 0x1d8]
mov r9, rbx
shl r9, 4
add r9, qword [rsp + 0x1d0]
mov r10, qword [rax - 8]
mov r11d, dword [rax]
mov rsi, qword [r9 - 8]
mov edi, dword [r9]
mov qword [rax - 8], rsi
mov dword [rax], edi
mov qword [r9 - 8], r10
mov dword [r9], r11d
add rax, 0x10
add r9, 0xfffffffffffffff0
dec rdx
jne 0x1400d9c32
mov rdi, qword [rsp + 0x120]
mov r10, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x48]
jmp 0x1400d9cbe
mov r8d, 2
cmp rbx, 2
je 0x1400d9cba
mov rdx, qword [rsp + 0x170]
lea r10, [rdx + r15]
add rax, qword [rsp + 0x168]
mov r11, r9
mov r9, qword [rax]
cmp r9, r11
jb 0x1400d9cb0
lea r11, [r10 + r8]
inc r11
inc r8
add rax, 0x10
cmp r11, 2
jne 0x1400d9c8e
mov r8, rbx
mov r10, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x48]
lea rbx, [r8 + r15]
mov rsi, rbx
sub rsi, r15
jb 0x1400dafd9
cmp rbx, rdx
ja 0x1400dafd9
jae 0x1400d9d13
cmp r8, 0xa
jae 0x1400d9d13
lea rsi, [r15 + 0xa]
cmp rsi, rdx
cmovae rsi, rdx
mov qword [rsp + 0x160], rsi
sub rsi, r15
jb 0x1400daff1
cmp r8, 1
adc r8, 0
mov rdx, rsi
call fcn.1400d79ef
mov r10, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x48]
jmp 0x1400d9d1b
mov qword [rsp + 0x160], rbx
mov rbx, qword [rsp + 0x178]
cmp r13, rbx
jne 0x1400d9d97
mov qword [rsp + 0x50], r15
mov rdx, rbx
shl rdx, 5
mov al, byte [0x1404846a0]
xor ecx, ecx
call fcn.1401b6fc0
test rax, rax
je 0x1400db008
mov r15, rax
lea rdi, [rbx + rbx]
shl rbx, 4
mov rcx, rax
mov rdx, rbp
mov r8, rbx
call fcn.140330ef0
mov rcx, qword [0x1404845c0]
xor edx, edx
mov r8, rbp
call qword [0x14033d4d0]
mov rbp, r15
mov qword [rsp + 0x178], rdi
mov rdi, qword [rsp + 0x120]
mov r10, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x48]
mov r15, qword [rsp + 0x50]
mov rax, r13
shl rax, 4
mov qword [rbp + rax], rsi
mov qword [rbp + rax + 8], r15
inc r13
mov rax, r13
cmp r13, 2
mov qword [rsp + 0x1f0], rbp
jb 0x1400da0bf
mov r13, rax
lea rsi, [rax - 1]
mov rcx, rsi
shl rcx, 4
mov rax, qword [rbp + rcx]
mov rcx, qword [rbp + rcx + 8]
add rcx, rax
cmp rcx, rdx
je 0x1400d9e2d
mov r11, r13
shl r11, 4
mov r8, qword [r11 + rbp - 0x20]
cmp r8, rax
jbe 0x1400d9e2d
cmp r13, 2
jbe 0x1400da0bf
lea r15, [r13 - 3]
mov rcx, r15
shl rcx, 4
mov rcx, qword [rbp + rcx]
lea r9, [r8 + rax]
cmp rcx, r9
jbe 0x1400d9e43
cmp r13, 3
jbe 0x1400da0bf
add r8, rcx
cmp qword [r11 + rbp - 0x40], r8
jbe 0x1400d9e43
jmp 0x1400da0bf
cmp r13, 3
jb 0x1400d9e48
lea r15, [r13 - 3]
mov rcx, r15
shl rcx, 4
mov rcx, qword [rbp + rcx]
cmp rcx, rax
jb 0x1400d9e4c
lea r15, [r13 - 2]
cmp r13, r15
jbe 0x1400daf03
lea r9, [r15 + 1]
mov qword [rsp + 0x50], r13
cmp r13, r9
jbe 0x1400daf38
mov rax, r15
shl rax, 4
mov rcx, qword [rbp + rax + 8]
shl r9, 4
mov r8, qword [rbp + r9]
mov r13, qword [rbp + r9 + 8]
add r13, r8
mov r12, r13
sub r12, rcx
jb 0x1400daf6d
mov qword [rsp + 0x150], r15
mov qword [rsp + 0x158], rsi
cmp r13, rdx
ja 0x1400daf7c
mov qword [rsp + 0x208], r8
lea rdx, [rax + rbp]
mov qword [rsp + 0x200], rdx
mov rbx, qword [rbp + rax]
add r9, rbp
mov qword [rsp + 0x1f8], r9
mov qword [rsp + 0x210], rcx
mov r15, rcx
shl r15, 4
add r15, r10
mov rsi, rbx
shl rsi, 4
lea rbp, [r15 + rsi]
shl r13, 4
mov rdi, r12
sub rdi, rbx
cmp rdi, rbx
jae 0x1400d9f9a
mov rsi, rdi
shl rsi, 4
mov r12, qword [rsp + 0x140]
mov rcx, r12
mov rdx, rbp
mov r8, rsi
call fcn.140330ef0
add rsi, r12
test rbx, rbx
jle 0x1400da018
test rdi, rdi
jle 0x1400da018
add r13, qword [rsp + 0x1e0]
mov rdi, qword [rsp + 0x120]
mov rax, rbp
mov rcx, rsi
mov rdx, qword [rsi - 0x10]
mov r8, qword [rbp - 0x10]
cmp rdx, r8
mov ebp, 0
sbb rbp, rbp
cmp rdx, r8
mov esi, 0
adc rsi, 0xffffffffffffffff
shl rbp, 4
add rbp, rax
shl rsi, 4
add rsi, rcx
cmp rdx, r8
mov rax, rsi
cmovb rax, rbp
movups xmm0, xmmword [rax]
movups xmmword [r13], xmm0
cmp rbp, r15
jbe 0x1400d9f92
add r13, 0xfffffffffffffff0
cmp rsi, r12
ja 0x1400d9f3f
mov r15, rbp
jmp 0x1400da03a
mov rdi, qword [rsp + 0x140]
mov rcx, rdi
mov rdx, r15
mov r8, rsi
call fcn.140330ef0
add rsi, rdi
test rbx, rbx
jle 0x1400da01d
cmp r12, rbx
mov rdi, qword [rsp + 0x120]
jle 0x1400da032
add r13, qword [rsp + 0x30]
mov r12, qword [rsp + 0x140]
mov rdx, r12
mov r8, rdx
mov rcx, qword [rbp]
xor edx, edx
xor eax, eax
cmp rcx, qword [r8]
setae dl
setb cl
mov r9, r8
cmovb r9, rbp
movups xmm0, xmmword [r9]
movups xmmword [r15], xmm0
add r15, 0x10
shl rdx, 4
add rdx, r8
cmp rdx, rsi
jae 0x1400da03d
mov al, cl
shl rax, 4
add rbp, rax
cmp rbp, r13
jb 0x1400d9fd5
jmp 0x1400da03d
mov r15, rbp
jmp 0x1400da025
mov r12, qword [rsp + 0x140]
mov rdx, r12
mov rdi, qword [rsp + 0x120]
jmp 0x1400da03d
mov r12, qword [rsp + 0x140]
mov rdx, r12
sub rsi, rdx
mov rcx, r15
mov r8, rsi
call fcn.140330ef0
mov rax, qword [rsp + 0x208]
add rax, rbx
mov rcx, qword [rsp + 0x1f8]
mov qword [rcx], rax
mov rax, qword [rsp + 0x210]
mov qword [rcx + 8], rax
mov rcx, qword [rsp + 0x200]
lea rdx, [rcx + 0x10]
mov rax, qword [rsp + 0x150]
not rax
mov r8, qword [rsp + 0x50]
add r8, rax
shl r8, 4
call fcn.140330ef0
mov rax, qword [rsp + 0x158]
cmp rax, 1
mov r10, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x48]
mov rbp, qword [rsp + 0x1f0]
ja 0x1400d9dc0
mov r13d, 1
mov r15, qword [rsp + 0x160]
cmp r15, rdx
jb 0x1400d9b77
mov rcx, qword [0x1404845c0]
xor edx, edx
mov r8, rbp
mov rsi, qword [0x14033d4d0]
call rsi
mov rcx, qword [0x1404845c0]
xor edx, edx
mov r8, r12
call rsi
jmp 0x1400d8f5f
mov qword [rsp + 0x30], rcx
jmp 0x1400d8f5f
mov rax, qword [rsp + 0x2b0]
mov rcx, qword [rax + 8]
mov rdx, qword [rax + 0x10]
mov rax, rdx
mov r8, qword [rsp + 0x148]
test r8, r8
je 0x1400da144
mov rax, rdx
sub rax, r8
jbe 0x1400da142
cmp byte [rcx + r8], 0xbf
jg 0x1400da144
lea rax, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001fidna_0.5.0_srcuts46.rs
mov qword [rsp + 0x20], rax
jmp 0x1400dafb7
jne 0x1400da131
mov qword [rsp + 0x118], rdx
add rcx, r8
xor edx, edx
lea r14, [rsp + 0x60]
mov qword [r14], rdx
mov qword [r14 + 8], rax
mov qword [r14 + 0x10], rcx
mov qword [r14 + 0x18], rax
mov qword [r14 + 0x20], rdx
mov qword [r14 + 0x28], rax
mov qword [r14 + 0x30], 1
movabs rax, 0x2e0000002e
mov qword [r14 + 0x38], rax
mov word [r14 + 0x40], 1
mov r12d, 1
mov rcx, r14
call fcn.1400db04e
mov r10, qword [rsp + 0x2b0]
test rax, rax
je 0x1400da5b4
test bl, 1
je 0x1400da190
mov r13, rdx
test rdx, rdx
je 0x1400da190
mov r15, rax
mov r8b, byte [rax]
movzx ecx, r8b
test cl, cl
js 0x1400da1ca
lea rbp, [r15 + 1]
jmp 0x1400da22e
mov eax, ecx
and eax, 0x1f
movzx r9d, byte [r15 + 1]
and r9d, 0x3f
cmp cl, 0xdf
jbe 0x1400da215
movzx edx, byte [r15 + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp r8b, 0xf0
jb 0x1400da223
movzx ecx, byte [r15 + 3]
and eax, 7
shl eax, 0x12
shl edx, 6
and ecx, 0x3f
or ecx, edx
or ecx, eax
cmp ecx, 0x110000
je 0x1400da190
lea rbp, [r15 + 4]
jmp 0x1400da22e
lea rbp, [r15 + 2]
shl eax, 6
or eax, r9d
mov ecx, eax
jmp 0x1400da22e
lea rbp, [r15 + 3]
shl eax, 0xc
or edx, eax
mov ecx, edx
add r13, r15
call fcn.1401d82b8
test al, al
je 0x1400da307
movzx eax, al
cmp eax, 0x11
je 0x1400da307
cmp eax, 9
mov r10, qword [rsp + 0x2b0]
jne 0x1400da5af
cmp rbp, r13
je 0x1400da3e0
mov r8b, byte [rbp]
movzx ecx, r8b
test cl, cl
js 0x1400da275
inc rbp
jmp 0x1400da2db
mov eax, ecx
and eax, 0x1f
movzx r9d, byte [rbp + 1]
and r9d, 0x3f
cmp cl, 0xdf
jbe 0x1400da2c2
movzx edx, byte [rbp + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp r8b, 0xf0
jb 0x1400da2d0
movzx ecx, byte [rbp + 3]
and eax, 7
shl eax, 0x12
shl edx, 6
and ecx, 0x3f
or ecx, edx
or ecx, eax
cmp ecx, 0x110000
je 0x1400da3e0
add rbp, 4
jmp 0x1400da2db
add rbp, 2
shl eax, 6
or eax, r9d
mov ecx, eax
jmp 0x1400da2db
add rbp, 3
shl eax, 0xc
or edx, eax
mov ecx, edx
call fcn.1401d82b8
cmp al, 0xe
mov r10, qword [rsp + 0x2b0]
ja 0x1400da5af
movzx eax, al
mov ecx, 0x62f8
bt rcx, rax
jb 0x1400da25b
jmp 0x1400da5af
cmp rbp, r13
je 0x1400da3f0
xor edi, edi
xor esi, esi
mov r10, qword [rsp + 0x2b0]
mov r8b, byte [rbp]
movzx ecx, r8b
test cl, cl
js 0x1400da32d
inc rbp
jmp 0x1400da393
mov eax, ecx
and eax, 0x1f
movzx r9d, byte [rbp + 1]
and r9d, 0x3f
cmp cl, 0xdf
jbe 0x1400da37a
movzx edx, byte [rbp + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp r8b, 0xf0
jb 0x1400da388
movzx ecx, byte [rbp + 3]
and eax, 7
shl eax, 0x12
shl edx, 6
and ecx, 0x3f
or ecx, edx
or ecx, eax
cmp ecx, 0x110000
je 0x1400da3fc
add rbp, 4
jmp 0x1400da393
add rbp, 2
shl eax, 6
or eax, r9d
mov ecx, eax
jmp 0x1400da393
add rbp, 3
shl eax, 0xc
or edx, eax
mov ecx, edx
call fcn.1401d82b8
cmp al, 5
jne 0x1400da3a9
mov sil, 1
mov r10, qword [rsp + 0x2b0]
jmp 0x1400da3d5
cmp al, 1
movzx edi, dil
cmove edi, r12d
cmp al, 0x11
mov r10, qword [rsp + 0x2b0]
ja 0x1400da5af
movzx eax, al
mov ecx, 0x260fb
bt rcx, rax
jae 0x1400da5af
cmp rbp, r13
jne 0x1400da31c
jmp 0x1400da3fc
mov al, byte [r13 - 1]
test al, al
js 0x1400da437
dec r13
movzx ebp, al
jmp 0x1400da458
xor esi, esi
xor edi, edi
mov r10, qword [rsp + 0x2b0]
mov al, byte [r13 - 1]
test al, al
js 0x1400da40f
dec r13
movzx ebp, al
jmp 0x1400da4fa
movzx ecx, byte [r13 - 2]
cmp cl, 0xc0
jge 0x1400da571
movzx edx, byte [r13 - 3]
cmp dl, 0xbf
jle 0x1400da53e
add r13, 0xfffffffffffffffd
and edx, 0xf
jmp 0x1400da555
movzx ecx, byte [r13 - 2]
cmp cl, 0xc0
jge 0x1400da4c6
movzx edx, byte [r13 - 3]
cmp dl, 0xbf
jle 0x1400da490
add r13, 0xfffffffffffffffd
and edx, 0xf
jmp 0x1400da4a7
mov ecx, ebp
call fcn.1401d82b8
cmp al, 0xd
jne 0x1400da4cf
cmp r13, r15
je 0x1400da190
mov al, byte [r13 - 1]
test al, al
js 0x1400da47c
dec r13
movzx ebp, al
jmp 0x1400da4b9
movzx ecx, byte [r13 - 2]
cmp cl, 0xc0
jge 0x1400da4c6
movzx edx, byte [r13 - 3]
cmp dl, 0xc0
jge 0x1400da44f
movzx r8d, byte [r13 - 4]
add r13, 0xfffffffffffffffc
and r8d, 7
shl r8d, 6
and edx, 0x3f
or edx, r8d
shl edx, 6
and ecx, 0x3f
or ecx, edx
shl ecx, 6
and al, 0x3f
movzx ebp, al
or ebp, ecx
cmp ebp, 0x110000
jne 0x1400da458
jmp 0x1400da190
add r13, 0xfffffffffffffffe
and ecx, 0x1f
jmp 0x1400da4af
mov ecx, ebp
call fcn.1401d82b8
cmp al, 9
je 0x1400da190
mov ecx, ebp
call fcn.1401d82b8
mov r10, qword [rsp + 0x2b0]
cmp al, 5
je 0x1400da190
jmp 0x1400da5af
mov ecx, ebp
call fcn.1401d82b8
cmp al, 0xd
jne 0x1400da57a
cmp r13, r15
mov r10, qword [rsp + 0x2b0]
je 0x1400da5af
mov al, byte [r13 - 1]
test al, al
js 0x1400da526
dec r13
movzx ebp, al
jmp 0x1400da567
movzx ecx, byte [r13 - 2]
cmp cl, 0xc0
jge 0x1400da571
movzx edx, byte [r13 - 3]
cmp dl, 0xc0
jge 0x1400da42b
movzx r8d, byte [r13 - 4]
add r13, 0xfffffffffffffffc
and r8d, 7
shl r8d, 6
and edx, 0x3f
or edx, r8d
shl edx, 6
and ecx, 0x3f
or ecx, edx
shl ecx, 6
and al, 0x3f
movzx ebp, al
or ebp, ecx
cmp ebp, 0x110000
jne 0x1400da4fa
jmp 0x1400da5af
add r13, 0xfffffffffffffffe
and ecx, 0x1f
jmp 0x1400da55d
mov ecx, ebp
call fcn.1401d82b8
cmp al, 0x11
mov r10, qword [rsp + 0x2b0]
ja 0x1400da5af
movzx eax, al
mov ecx, 0x20023
bt rcx, rax
jae 0x1400da5af
test dil, 1
je 0x1400da190
and sil, 1
je 0x1400da190
mov byte [rsp + 0x3a], 1
mov al, byte [rsp + 0x38]
mov byte [rsp + 0x150], al
lea rcx, [rsp + 0x39]
mov rax, qword [rcx]
mov qword [rsp + 0x188], rax
mov eax, dword [rcx + 7]
mov dword [rsp + 0x18f], eax
cmp qword [rsp + 0x128], 0
mov rsi, r10
mov rcx, qword [rsp + 0x118]
je 0x1400da60a
mov r8, qword [rsp + 0x130]
mov rcx, qword [0x1404845c0]
xor edx, edx
call qword [0x14033d4d0]
mov rcx, qword [rsi + 0x10]
call fcn.1401e779c
movups xmm0, xmmword [rsi]
movaps xmmword [rsp + 0x60], xmm0
mov rcx, qword [rsi + 0x10]
mov qword [rsp + 0x70], rcx
mov qword [rsi], rax
mov qword [rsi + 8], rdx
mov qword [rsi + 0x10], 0
mov rdi, qword [rsp + 0x58]
lea rsi, [rdi + 0x18]
cmp qword [rdi + 0x18], 0
je 0x1400da652
mov r8, qword [rdi + 0x20]
mov rcx, qword [0x1404845c0]
xor edx, edx
call qword [0x14033d4d0]
lea r8, [rsp + 0x60]
mov rax, qword [r8 + 0x10]
mov qword [rsi + 0x10], rax
movaps xmm0, xmmword [r8]
movups xmmword [rsi], xmm0
mov rax, qword [rdi + 0x20]
mov rcx, qword [rdi + 0x28]
xor edx, edx
mov qword [r8], rdx
mov qword [r8 + 8], rcx
mov qword [r8 + 0x10], rax
mov qword [r8 + 0x18], rcx
mov qword [r8 + 0x20], rdx
mov qword [r8 + 0x28], rcx
mov qword [r8 + 0x30], 1
movabs rax, 0x2e0000002e
mov qword [r8 + 0x38], rax
mov word [r8 + 0x40], 1
mov dil, 1
lea rcx, [rsp + 0x60]
call fcn.1400db04e
test rax, rax
je 0x1400dae0f
mov r14, rax
mov rsi, rdx
test dil, 1
mov rcx, qword [rsp + 0x2b0]
movabs rdi, 0x8080808080808080
jne 0x1400da701
mov rdx, qword [rcx + 0x10]
cmp rdx, qword [rcx]
jne 0x1400da6f2
call fcn.1400e52bb
mov rcx, qword [rsp + 0x2b0]
mov rdx, qword [rcx + 0x10]
mov rax, qword [rcx + 8]
mov byte [rax + rdx], 0x2e
inc rdx
mov qword [rcx + 0x10], rdx
mov r8, rsi
cmp rsi, 8
jb 0x1400da745
lea rdx, [r14 + 7]
and rdx, 0xfffffffffffffff8
mov rax, rdx
sub rax, r14
mov r8, rsi
cmp rax, rsi
ja 0x1400da745
test qword [r14], rdi
je 0x1400da75f
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x158], rax
mov r8d, 4
lea rdx, str.xn__
call fcn.1400e5263
jmp 0x1400da7b3
mov rax, r8
sub rax, 1
jb 0x1400da8b6
cmp byte [r14 + r8 - 1], 0
mov r8, rax
jns 0x1400da745
jmp 0x1400da78a
cmp rdx, r14
mov edx, 8
cmove rax, rdx
lea rdx, [rsi - 8]
cmp rax, rdx
jae 0x1400da780
test qword [r14 + rax], rdi
jne 0x1400da78a
add rax, 8
jmp 0x1400da76f
test qword [r14 + rdx], rdi
je 0x1400da8b6
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x158], rax
mov r8d, 4
lea rdx, str.xn__
call fcn.1400e5263
xor edi, edi
test rsi, rsi
je 0x1400da6a7
mov r15, r14
add r15, rsi
xor esi, esi
xor ebp, ebp
mov rdi, r14
mov rcx, qword [rsp + 0x2b0]
mov dl, byte [rdi]
movzx ebx, dl
test bl, bl
js 0x1400da7d6
inc rdi
jmp 0x1400da841
mov eax, ebx
and eax, 0x1f
movzx r8d, byte [rdi + 1]
and r8d, 0x3f
cmp bl, 0xdf
jbe 0x1400da826
movzx r9d, byte [rdi + 2]
shl r8d, 6
and r9d, 0x3f
or r9d, r8d
cmp dl, 0xf0
jb 0x1400da834
movzx ebx, byte [rdi + 3]
and eax, 7
shl eax, 0x12
shl r9d, 6
and ebx, 0x3f
or ebx, r9d
or ebx, eax
cmp ebx, 0x110000
je 0x1400dae07
add rdi, 4
jmp 0x1400da841
add rdi, 2
shl eax, 6
or eax, r8d
mov ebx, eax
jmp 0x1400da841
add rdi, 3
shl eax, 0xc
or r9d, eax
mov ebx, r9d
mov r13d, esi
inc r13d
je 0x1400dadc5
cmp ebx, 0x7f
ja 0x1400da87c
mov rdx, qword [rcx + 0x10]
cmp rdx, qword [rcx]
jne 0x1400da86c
call fcn.1400e52bb
mov rcx, qword [rsp + 0x2b0]
mov rdx, qword [rcx + 0x10]
mov rax, qword [rcx + 8]
mov byte [rax + rdx], bl
inc rdx
mov qword [rcx + 0x10], rdx
inc ebp
inc esi
cmp rdi, r15
jne 0x1400da7c8
test ebp, ebp
je 0x1400da8c8
mov rdx, qword [rcx + 0x10]
cmp rdx, qword [rcx]
jne 0x1400da8a5
call fcn.1400e52bb
mov rcx, qword [rsp + 0x2b0]
mov rdx, qword [rcx + 0x10]
mov rax, qword [rcx + 8]
mov byte [rax + rdx], 0x2d
inc rdx
mov qword [rcx + 0x10], rdx
jmp 0x1400da8ca
mov rdx, r14
mov r8, rsi
call fcn.1400e5263
xor edi, edi
jmp 0x1400da6a7
xor ebp, ebp
xor r8d, r8d
mov edi, 0
cmp ebp, r13d
jae 0x1400da6a7
mov r12d, 0x48
mov eax, 0x80
mov ecx, ebp
mov qword [rsp + 0x148], r14
mov qword [rsp + 0x110], r15
mov dword [rsp + 0x30], ebp
mov dword [rsp + 0x50], r13d
mov qword [rsp + 0x58], rcx
mov rbx, r14
cmp rbx, r15
je 0x1400daee3
mov r10b, byte [rbx]
movzx esi, r10b
test sil, sil
js 0x1400da923
inc rbx
jmp 0x1400da998
mov edx, esi
and edx, 0x1f
movzx r11d, byte [rbx + 1]
and r11d, 0x3f
cmp sil, 0xdf
jbe 0x1400da97d
movzx r9d, byte [rbx + 2]
shl r11d, 6
and r9d, 0x3f
or r9d, r11d
cmp r10b, 0xf0
jb 0x1400da98b
movzx esi, byte [rbx + 3]
and edx, 7
shl edx, 0x12
shl r9d, 6
and esi, 0x3f
or esi, r9d
or esi, edx
cmp esi, 0x110000
mov rcx, qword [rsp + 0x2b0]
je 0x1400daee3
add rbx, 4
jmp 0x1400da9a0
add rbx, 2
shl edx, 6
or edx, r11d
mov esi, edx
jmp 0x1400da998
add rbx, 3
shl edx, 0xc
or r9d, edx
mov esi, r9d
mov rcx, qword [rsp + 0x2b0]
cmp eax, esi
ja 0x1400da909
jmp 0x1400da9e5
add rbx, 4
jmp 0x1400da9ce
add rbx, 2
shl r9d, 6
or r9d, edi
mov edx, r9d
jmp 0x1400da9d6
add rbx, 3
shl r9d, 0xc
or r10d, r9d
mov edx, r10d
mov rcx, qword [rsp + 0x2b0]
cmp esi, edx
mov r9d, edx
cmovb r9d, esi
cmp eax, edx
cmovbe esi, r9d
cmp rbx, r15
je 0x1400daa4f
mov r11b, byte [rbx]
movzx edx, r11b
test dl, dl
js 0x1400da9fa
inc rbx
jmp 0x1400da9d6
mov r9d, edx
and r9d, 0x1f
movzx edi, byte [rbx + 1]
and edi, 0x3f
cmp dl, 0xdf
jbe 0x1400da9b0
movzx r10d, byte [rbx + 2]
shl edi, 6
and r10d, 0x3f
or r10d, edi
cmp r11b, 0xf0
jb 0x1400da9c0
movzx edx, byte [rbx + 3]
and r9d, 7
shl r9d, 0x12
shl r10d, 6
and edx, 0x3f
or edx, r10d
or edx, r9d
cmp edx, 0x110000
jne 0x1400da9aa
mov rcx, qword [rsp + 0x2b0]
mov edi, esi
sub edi, eax
mov r11, qword [rsp + 0x58]
lea r9d, [r11 + 1]
mov eax, r8d
not eax
xor edx, edx
div r9d
cmp edi, eax
ja 0x1400dadc5
imul edi, r9d
add edi, r8d
mov rbx, r14
mov r8b, byte [rbx]
movzx eax, r8b
test al, al
js 0x1400daa88
inc rbx
jmp 0x1400daaf5
mov r10d, eax
and r10d, 0x1f
movzx r9d, byte [rbx + 1]
and r9d, 0x3f
cmp al, 0xdf
jbe 0x1400daad8
movzx edx, byte [rbx + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp r8b, 0xf0
jb 0x1400daae8
movzx eax, byte [rbx + 3]
and r10d, 7
shl r10d, 0x12
shl edx, 6
and eax, 0x3f
or eax, edx
or eax, r10d
cmp eax, 0x110000
je 0x1400dadbd
add rbx, 4
jmp 0x1400daaf5
add rbx, 2
shl r10d, 6
or r10d, r9d
mov eax, r10d
jmp 0x1400daaf5
add rbx, 3
shl r10d, 0xc
or edx, r10d
mov eax, edx
cmp eax, esi
jae 0x1400dab01
inc edi
je 0x1400dadc5
cmp eax, esi
jne 0x1400dac9e
mov qword [rsp + 0x118], rbx
mov qword [rsp + 0x58], r11
lea ebx, [r12 + 0x1a]
lea r9d, [r12 - 0x24]
neg r9d
cmp ebx, 0x25
mov eax, 0x1a
cmovb r9d, eax
cmp r12d, 0x24
mov eax, 1
cmovae r9d, eax
mov ebp, edi
cmp edi, r9d
jb 0x1400dac33
mov r14d, r12d
neg r14d
mov r13d, 0x48
mov ebp, edi
mov r8d, r9d
sub r8d, 0x24
je 0x1400dae3b
sub ebp, r9d
neg r8d
mov eax, ebp
xor edx, edx
div r8d
add edx, r9d
mov r15d, 0x61
mov ebp, eax
cmp edx, 0x1a
jb 0x1400dab8e
mov r15d, 0x16
cmp edx, 0x24
jae 0x1400daecb
add r15d, edx
cmp r15d, 0x80
jae 0x1400dabc5
mov rdx, qword [rcx + 0x10]
cmp rdx, qword [rcx]
jne 0x1400dabb4
call fcn.1400e52bb
mov rcx, qword [rsp + 0x2b0]
mov rdx, qword [rcx + 0x10]
mov rax, qword [rcx + 8]
mov byte [rax + rdx], r15b
inc rdx
mov qword [rcx + 0x10], rdx
jmp 0x1400dac0a
mov dword [rsp + 0x128], 0
mov eax, r15d
shr eax, 6
or al, 0xc0
mov byte [rsp + 0x128], al
and r15b, 0x3f
or r15b, 0x80
mov byte [rsp + 0x129], r15b
mov r8d, 2
lea rdx, [rsp + 0x128]
call fcn.1400e5263
mov rcx, qword [rsp + 0x2b0]
lea r9d, [r14 + r13]
cmp r13d, ebx
mov eax, 0x1a
cmovae r9d, eax
cmp r13d, r12d
mov eax, 1
cmovbe r9d, eax
add r13d, 0x24
cmp ebp, r9d
jae 0x1400dab55
mov ebx, 0x61
cmp ebp, 0x1a
jb 0x1400dac4b
mov ebx, 0x16
cmp ebp, 0x24
jae 0x1400daecb
add ebx, ebp
cmp ebx, 0x80
jae 0x1400daca9
mov rdx, qword [rcx + 0x10]
cmp rdx, qword [rcx]
jne 0x1400dac6f
call fcn.1400e52bb
mov rcx, qword [rsp + 0x2b0]
mov rdx, qword [rcx + 0x10]
mov r11d, 0xd41d41d5
mov r14, qword [rsp + 0x148]
mov r15, qword [rsp + 0x110]
mov ebp, dword [rsp + 0x30]
mov r13d, dword [rsp + 0x50]
mov rax, qword [rcx + 8]
mov byte [rax + rdx], bl
inc rdx
mov qword [rcx + 0x10], rdx
jmp 0x1400dad01
mov r9d, r11d
mov r8d, edi
jmp 0x1400dad9a
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
lea rdx, [rsp + 0x128]
call fcn.1400e5263
mov r11d, 0xd41d41d5
mov r14, qword [rsp + 0x148]
mov r15, qword [rsp + 0x110]
mov ebp, dword [rsp + 0x30]
mov r13d, dword [rsp + 0x50]
mov rax, qword [rsp + 0x58]
mov r9d, eax
inc r9d
mov rbx, qword [rsp + 0x118]
je 0x1400dae53
cmp eax, ebp
mov ecx, 2
mov eax, 0x2bc
cmove ecx, eax
xor r8d, r8d
mov eax, edi
xor edx, edx
div ecx
mov ecx, eax
xor edx, edx
div r9d
add eax, ecx
xor ecx, ecx
cmp eax, 0x1c8
jb 0x1400dad6d
mov edx, eax
imul rdx, r11
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 0x1400dad44
jmp 0x1400dad70
mov r10d, eax
lea eax, [r10*4]
lea eax, [rax + rax*8]
add r10d, 0x26
xor edx, edx
div r10w
movzx r12d, ax
add r12d, ecx
mov edi, r8d
mov r11d, r9d
mov rcx, qword [rsp + 0x2b0]
cmp rbx, r15
jne 0x1400daa78
inc r8d
inc esi
xor edi, edi
mov eax, esi
mov ecx, r9d
cmp r9d, r13d
jb 0x1400da901
jmp 0x1400da6a7
mov r9d, r11d
mov r8d, edi
jmp 0x1400dada3
mov rax, qword [rcx + 0x10]
mov byte [rsp + 0x150], 1
xor edi, edi
mov rdx, qword [rsp + 0x158]
cmp rax, rdx
jb 0x1400da6a7
test rdx, rdx
je 0x1400dadfc
cmp rax, rdx
jbe 0x1400dadfc
mov rax, qword [rcx + 8]
cmp byte [rax + rdx], 0xbf
jle 0x1400daf8d
mov qword [rcx + 0x10], rdx
xor edi, edi
jmp 0x1400da6a7
mov r13d, esi
jmp 0x1400da887
mov rcx, qword [rsp + 0x180]
mov al, byte [rsp + 0x150]
mov byte [rcx], al
mov rax, qword [rsp + 0x188]
mov qword [rcx + 1], rax
mov eax, dword [rsp + 0x18f]
mov dword [rcx + 8], eax
jmp 0x1400d7f26
lea rcx, str.attempt_to_calculate_the_remainder_with_a_divisor_of_zero
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001fidna_0.5.0_srcpunycode.rs
mov edx, 0x39
call fcn.140334230
lea rcx, [0x1403e57f0]
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001fidna_0.5.0_srcpunycode.rs
jmp 0x1400dae87
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001fidna_0.5.0_srcuts46.rs
mov ecx, 4
mov edx, 4
call fcn.140334130
lea rcx, [0x1403e57f0]
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001fidna_0.5.0_srcpunycode.rs
mov edx, 0x19
call fcn.140334230
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_tinyvec_1.6.0_src_arrayvec.rs
mov edx, 4
mov rcx, r9
call fcn.1403341b0
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_tinyvec_1.6.0_src_arrayvec.rs
mov edx, 4
call fcn.1403341b0
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_tinyvec_1.6.0_src_arrayvec.rs
jmp 0x1400daef6
lea r8, [0x14038e178]
call fcn.1403340b0
lea rcx, str.explicit_panic
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001fidna_0.5.0_srcpunycode.rs
mov edx, 0xe
call fcn.140334230
lea rcx, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001fidna_0.5.0_srcpunycode.rs
call fcn.140334660
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_tinyvec_1.6.0_src_arrayvec.rs
mov edx, 4
mov rcx, rax
call fcn.1403341b0
lea rax, [0x1403e41f0]
lea rcx, [rsp + 0x60]
mov qword [rcx], rax
mov qword [rcx + 8], 1
lea rax, [0x1403e58f0]
mov qword [rcx + 0x10], rax
xorps xmm0, xmm0
movups xmmword [rcx + 0x18], xmm0
lea rdx, [0x1403e4268]
call fcn.140334070
lea rax, [0x1403e41f0]
lea rcx, [rsp + 0x60]
mov qword [rcx], rax
mov qword [rcx + 8], 1
lea rax, [0x1403e58f0]
mov qword [rcx + 0x10], rax
xorps xmm0, xmm0
movups xmmword [rcx + 0x18], xmm0
lea rdx, [0x1403e4280]
call fcn.140334070
lea r8, [0x1403e4298]
mov rdx, r13
call fcn.140334480
lea r8, [0x1403e4298]
mov rcx, r13
call fcn.1403341b0
ud2
lea rcx, [0x1403e3588]
lea r8, [0x1403e35b8]
mov edx, 0x30
call fcn.140334230
lea rax, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001fidna_0.5.0_srcuts46.rs
mov qword [rsp + 0x20], rax
mov rcx, r14
mov r8, rsi
mov r9, rdx
call fcn.140334880
lea rax, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001fidna_0.5.0_srcpunycode.rs
mov qword [rsp + 0x20], rax
mov rcx, rsi
mov rdx, r15
mov r9, r15
call fcn.140334880
lea rcx, [0x1403e42f8]
lea r8, [0x1403e4328]
mov edx, 0x2c
call fcn.140334230
lea r8, [0x1403e4340]
mov rcx, r15
mov rdx, qword [rsp + 0x160]
call fcn.140334480
lea rcx, [0x1403e42e0]
call fcn.140334660
lea r8, [0x1403e4250]
mov rcx, r15
mov rdx, r9
call fcn.140334480
lea r8, [0x1403e4250]
mov rcx, rbx
call fcn.1403341b0
lea rcx, [0x1403e42b0]
call fcn.140334660
lea rcx, [0x1403e42c8]
call fcn.140334660
int3