Function at 0x1400fa2b0
Capabilities:
Encrypt data using speck

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x818
movdqa xmmword [rsp + 0x800], xmm7
movaps xmmword [rsp + 0x7f0], xmm6
mov qword [rsp + 0xe0], rdx
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0xd8], r9
test r9, r9
je 0x1400fa3ea
mov r12, r8
mov rcx, qword [rsp + 0xd8]
lea r9, [r8 + rcx]
lea rax, [r8 + 1]
jmp 0x1400fa322
mov rdx, r12
inc rax
mov r12, rdx
dec rcx
je 0x1400fa3ea
movzx r8d, byte [rax - 1]
lea edx, [r8 - 0x61]
cmp dl, 0x1a
jb 0x1400fa310
mov rdx, rax
cmp r8b, 0x2e
je 0x1400fa313
movabs rax, 0x900000007fffffff
mov qword [rsp + 0x298], rax
movabs rax, 0xd4008029ffffffff
mov qword [rsp + 0x290], rax
mov rax, qword [rsp + 0xe0]
cmp qword [rax + 0xa0], 0
jne 0x1400fa424
mov rcx, qword [rax + 0xa8]
mov qword [rsp + 0x180], rcx
cmp qword [rax + 0xf0], 0
je 0x1400fa441
lea rcx, [rax + 0xf8]
mov qword [rsp + 0x178], rcx
cmp qword [rax + 8], 0
je 0x1400fa45b
lea rcx, [rax + 0x10]
mov qword [rsp + 0x168], rcx
cmp qword [rax + 0x130], 0
je 0x1400fa475
lea rcx, [rax + 0x138]
mov qword [rsp + 0x170], rcx
sub r9, r12
cmp qword [rax + 0x48], 0
je 0x1400fa492
lea rcx, [rax + 0x50]
jmp 0x1400fa496
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0xd8]
mov qword [rax], rcx
mov word [rax + 8], 0
movaps xmm6, xmmword [rsp + 0x7f0]
movaps xmm7, xmmword [rsp + 0x800]
add rsp, 0x818
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, [rax + 0xa8]
mov qword [rsp + 0x180], rcx
cmp qword [rax + 0xf0], 0
jne 0x1400fa390
mov rcx, qword [rax + 0xf8]
mov qword [rsp + 0x178], rcx
cmp qword [rax + 8], 0
jne 0x1400fa3aa
mov rcx, qword [rax + 0x10]
mov qword [rsp + 0x168], rcx
cmp qword [rax + 0x130], 0
jne 0x1400fa3c4
mov rcx, qword [rax + 0x138]
mov qword [rsp + 0x170], rcx
sub r9, r12
cmp qword [rax + 0x48], 0
jne 0x1400fa3e1
mov rcx, qword [rax + 0x50]
mov qword [rsp + 0x160], rcx
mov rdx, rax
sub qword [rsp + 0xd8], r9
mov rcx, qword [rsp + 0x880]
lea r14, [rcx + 0x3f8]
lea rax, [rcx + 4]
mov qword [rsp + 0x80], rax
lea rax, [rcx + 8]
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0x888]
lea rcx, [rax + 0xc8]
mov qword [rsp + 0x100], rcx
add rax, 8
mov qword [rsp + 0x68], rax
mov rax, qword [rdx]
mov qword [rsp + 0x3b8], rax
mov rax, qword [rdx + 0x40]
mov qword [rsp + 0x3b0], rax
movzx eax, byte [rdx + 0x12a]
mov dword [rsp + 0x15c], eax
movzx eax, word [rdx + 0x128]
mov dword [rsp + 0x158], eax
mov rdx, r9
xorps xmm6, xmm6
movdqa xmm7, xmmword [str.xn_____]
mov al, 1
lea rcx, str._usr_local_cargo_registry_src_index.crates.io_6f17d22bba15001f_smallvec_1.13.2_src_lib.rsrootAttributename
mov qword [rsp + 0x130], rcx
lea rcx, str.assertion_failed:_end___len
mov qword [rsp + 0x138], rcx
lea rcx, str._usr_local_cargo_registry_src_index.crates.io_6f17d22bba15001f_idna_1.0.0_src_uts46.rsPunycode_overflows_should_not_be_possible_due_to_PUNYCODE_ENCODE_MAX_INPUT_LENGTH
mov qword [rsp + 0x140], rcx
lea rcx, [rsp + 0x2a0]
mov qword [rsp + 0x3a8], rcx
lea rcx, [0x140341f48]
mov qword [rsp + 0x120], rcx
lea rcx, str.called__Option::unwrap____on_a__None__value
mov qword [rsp + 0x118], rcx
lea rcx, [0x140341ee8]
mov qword [rsp + 0x110], rcx
xor ecx, ecx
mov qword [rsp + 0x28], r14
test rdx, rdx
je 0x1400fa5e0
xor r13d, r13d
nop dword [rax]
cmp byte [r12 + r13], 0x2e
je 0x1400fa617
inc r13
cmp rdx, r13
jne 0x1400fa5b0
mov r8b, 1
mov dword [rsp + 0xc4], r8d
mov qword [rsp + 0x108], r12
mov r13, rdx
jmp 0x1400fa63e
mov dl, 1
mov dword [rsp + 0xc4], edx
mov edx, 0
mov qword [rsp + 0x108], r12
mov r13d, 0
test al, 1
je 0x1400fa64f
mov qword [rsp + 0x108], r12
xor edx, edx
mov qword [rsp + 0xc8], rdx
jmp 0x1400fa760
mov r8, rdx
lea rdx, [r13 + 1]
sub r8, rdx
mov rdx, r8
lea r8, [r12 + r13]
inc r8
mov qword [rsp + 0x108], r8
mov dword [rsp + 0xc4], 0
test r12, r12
je 0x1400fd597
test al, 1
jne 0x1400fa6ea
test cl, 1
je 0x1400fa690
mov rdi, rdx
mov r8, qword [r14]
cmp r8, 0xfe
jb 0x1400fa7df
mov rcx, qword [rsp + 0x880]
mov rax, qword [rcx + 8]
mov rcx, qword [rcx + 0x10]
mov rdx, qword [rsp + 0x90]
jmp 0x1400fa7f3
mov rax, qword [r14]
cmp rax, 0xfe
jb 0x1400fa820
mov rax, qword [rsp + 0x90]
mov rax, qword [rax]
test r13, r13
jne 0x1400fa829
mov qword [rsp + 0xc8], rdx
mov rdx, qword [rsp + 0x100]
mov r8, qword [rdx]
cmp r8, 9
jb 0x1400fa784
mov rcx, qword [rsp + 0x888]
mov rax, qword [rcx + 8]
mov rcx, qword [rcx + 0x10]
mov rdx, qword [rsp + 0x68]
jmp 0x1400fa792
cmp r13, 3
mov qword [rsp + 0xc8], rdx
jbe 0x1400fa70d
cmp byte [r12 + 2], 0x2d
jne 0x1400fa712
cmp byte [r12 + 3], 0x2d
jne 0x1400fa712
jmp 0x1400fc7f7
test r13, r13
je 0x1400fa760
movzx edx, byte [r12]
add dl, 0x9f
cmp dl, 0x19
ja 0x1400fc7f7
mov edx, 1
nop dword [rax + rax]
cmp r13, rdx
je 0x1400fc7eb
movzx r8d, byte [r12 + rdx]
inc rdx
cmp r8b, 0x2d
je 0x1400fa730
lea r9d, [r8 - 0x61]
cmp r9b, 0x1a
jb 0x1400fa730
add r8b, 0xd0
cmp r8b, 0xa
jb 0x1400fa730
jmp 0x1400fc7f7
xor r13d, r13d
movzx ecx, cl
and ecx, 1
mov rdx, qword [rsp + 0xd8]
add rdx, r13
add rdx, rcx
mov qword [rsp + 0xd8], rdx
jmp 0x1400fc858
mov rax, r8
mov rcx, qword [rsp + 0x68]
mov r8d, 8
cmp rax, r8
je 0x1400fc8ef
lea rax, [rax + rax*2]
mov qword [rcx + rax*8], 0
mov qword [rcx + rax*8 + 8], r12
mov qword [rcx + rax*8 + 0x10], 0
inc qword [rdx]
mov cl, 1
xor eax, eax
mov r12, qword [rsp + 0x108]
cmp byte [rsp + 0xc4], 0
mov rdx, qword [rsp + 0xc8]
je 0x1400fa5a4
jmp 0x1400fd597
mov rax, r8
mov rcx, qword [rsp + 0x80]
mov rdx, r14
mov r8d, 0xfd
cmp rax, r8
je 0x1400fc911
mov dword [rcx + rax*4], 0x2e
inc qword [rdx]
mov rdx, rdi
mov rax, qword [r14]
cmp rax, 0xfe
jae 0x1400fa69f
nop dword [rax + rax]
test r13, r13
je 0x1400fa6b3
xor r15d, r15d
mov qword [rsp + 0xb8], r12
mov qword [rsp + 0x58], rax
nop dword [rax]
cmp byte [r12 + r15], 0
js 0x1400fa87d
inc r15
cmp r13, r15
jne 0x1400fa840
lea rdi, [0x140347980]
mov r15, r13
cmp r15, 4
mov qword [rsp + 0x50], r13
jae 0x1400fa8bb
mov bpl, 1
xor ecx, ecx
mov qword [rsp + 0x60], rcx
xor ebx, ebx
test r15, r15
je 0x1400fa8ab
mov r13, rdx
jmp 0x1400fa97e
test r15, r15
je 0x1400fa95b
lea rdi, [r12 + r15]
dec rdi
dec r15
mov rbx, r13
sub rbx, r15
je 0x1400fa859
mov qword [rsp + 0x50], r13
xor ebp, ebp
mov cl, 1
mov qword [rsp + 0x60], rcx
test r15, r15
jne 0x1400fa875
mov cl, 1
test bpl, bpl
jne 0x1400faa7f
jmp 0x1400faab6
mov eax, dword [r12]
mov ecx, 0xffffdfdf
and eax, ecx
cmp eax, 0x2d2d4e58
jne 0x1400fa96f
mov qword [rsp + 0xc8], rdx
cmp byte [r15 + r12 - 1], 0x2d
je 0x1400fdf61
lea rdx, [r15 - 4]
cmp rdx, 0x7d1
jae 0x1400fdf61
mov qword [rsp + 0x430], 0
mov qword [rsp + 0x7e8], 0
lea rdi, [r12 + 4]
add r15, r12
mov rax, rdx
nop dword [rax]
mov rsi, rax
sub rax, 1
jb 0x1400fc87d
cmp byte [r12 + rsi + 3], 0x2d
jne 0x1400fa920
test rax, rax
je 0x1400fc936
mov rcx, rax
mov rax, rdx
sub rax, rsi
jb 0x1400fe35b
add rsi, rdi
mov rdx, rax
mov rax, rcx
jmp 0x1400fc882
mov cl, 1
mov qword [rsp + 0x60], rcx
mov rbx, r13
mov rdi, r12
mov cl, 1
jmp 0x1400faab6
mov r13, rdx
mov bpl, 1
xor ebx, ebx
xor eax, eax
mov qword [rsp + 0x60], rax
xor r14d, r14d
jmp 0x1400fa9c8
mov rcx, qword [rsp + 0x880]
mov rax, qword [rcx + 8]
mov rcx, qword [rcx + 0x10]
mov rdx, qword [rsp + 0x90]
cmp rax, r8
je 0x1400faa41
movzx r8d, sil
mov dword [rcx + rax*4], r8d
inc qword [rdx]
inc r14
cmp r15, r14
je 0x1400faa70
movzx esi, byte [r12 + r14]
xor eax, eax
mov ecx, esi
mov edx, 1
shld rax, rdx, cl
shl rdx, cl
test sil, 0x40
cmovne rax, rdx
mov ecx, 0
cmovne rdx, rcx
and rax, qword [rsp + 0x298]
and rdx, qword [rsp + 0x290]
or rdx, rax
je 0x1400faa12
lea eax, [rsi - 0x41]
cmp al, 0x19
ja 0x1400fdf61
add sil, 0x20
mov rdx, qword [rsp + 0x28]
mov r8, qword [rdx]
cmp r8, 0xfe
jae 0x1400fa990
mov rax, r8
mov rcx, qword [rsp + 0x80]
mov r8d, 0xfd
cmp rax, r8
jne 0x1400fa9b1
mov r12, qword [rsp + 0x880]
mov rcx, r12
call fcn.1400fe7d0
mov rax, qword [r12 + 8]
mov rcx, qword [r12 + 0x10]
mov r12, qword [rsp + 0xb8]
mov rdx, qword [rsp + 0x90]
jmp 0x1400fa9b1
xor ecx, ecx
mov rdx, r13
mov r14, qword [rsp + 0x28]
test bpl, bpl
je 0x1400faab6
mov qword [rsp + 0xc8], rdx
mov rdx, qword [rsp + 0x100]
mov r8, qword [rdx]
cmp r8, 9
jb 0x1400fc821
mov rcx, qword [rsp + 0x888]
mov rax, qword [rcx + 8]
mov rcx, qword [rcx + 0x10]
mov rdx, qword [rsp + 0x68]
jmp 0x1400fc82f
mov dword [rsp + 0x30], ecx
mov qword [rsp + 0xc8], rdx
mov rdx, qword [rsp + 0x100]
mov r8, qword [rdx]
cmp r8, 9
jb 0x1400faaea
mov rcx, qword [rsp + 0x888]
mov rax, qword [rcx + 8]
mov rcx, qword [rcx + 0x10]
mov rdx, qword [rsp + 0x68]
jmp 0x1400faaf8
mov rax, r8
mov rcx, qword [rsp + 0x68]
mov r8d, 8
cmp rax, r8
je 0x1400fcbdd
lea rax, [rax + rax*2]
mov qword [rcx + rax*8], 2
movdqu xmm0, xmmword [rsp + 0x430]
movdqu xmmword [rcx + rax*8 + 8], xmm0
inc qword [rdx]
cmp qword [rsp + 0x3b0], 2
jne 0x1400fab30
xor ecx, ecx
xor eax, eax
jmp 0x1400fab3e
mov rcx, qword [rsp + 0x160]
movzx eax, byte [rcx + 0x4a]
and al, 1
mov r10, qword [rsp + 0x178]
mov rdx, qword [r10]
mov r8, qword [r10 + 8]
mov r9, qword [r10 + 0x18]
mov r10, qword [r10 + 0x20]
cmp qword [rsp + 0x3b8], 0
je 0x1400fab79
mov r15, qword [rsp + 0x168]
mov rsi, qword [r15]
mov r11, qword [r15 + 8]
mov r14, qword [r15 + 0x18]
mov r15, qword [r15 + 0x20]
jmp 0x1400fab89
xor r11d, r11d
lea r14, [0x140347980]
mov rsi, r14
xor r15d, r15d
mov qword [rsp + 0x480], rdi
mov qword [rsp + 0x488], rbx
mov dword [rsp + 0x430], 0
mov qword [rsp + 0x478], 0
mov qword [rsp + 0x4d8], 0
mov dword [rsp + 0x4ec], 0
mov byte [rsp + 0x4f0], 0
mov rdi, qword [rsp + 0x180]
mov qword [rsp + 0x490], rdi
mov qword [rsp + 0x4e0], rcx
mov qword [rsp + 0x498], rdx
mov qword [rsp + 0x4a0], r8
mov qword [rsp + 0x4a8], r9
mov qword [rsp + 0x4b0], r10
mov qword [rsp + 0x4b8], rsi
mov qword [rsp + 0x4c0], r11
mov qword [rsp + 0x4c8], r14
mov qword [rsp + 0x4d0], r15
mov byte [rsp + 0x4f8], al
mov eax, dword [rsp + 0x15c]
mov dword [rsp + 0x4f4], eax
mov byte [rsp + 0x4f9], 1
mov dword [rsp + 0x4e8], 0x110000
lea rcx, [rsp + 0x430]
mov edx, 0xffff
xor r8d, r8d
call fcn.140100a10
mov eax, dword [rsp + 0x430]
lea r8, [rsp + 0x480]
mov ecx, dword [r8 - 0x44]
mov dword [rsp + 0x288], ecx
mov rcx, qword [r8 - 0x4c]
mov qword [rsp + 0x280], rcx
mov rcx, qword [rsp + 0x440]
movups xmm0, xmmword [r8 - 0x38]
movups xmm1, xmmword [r8 - 0x28]
movups xmm2, xmmword [r8 - 0x18]
movaps xmmword [rsp + 0x3c0], xmm0
movaps xmmword [rsp + 0x3d0], xmm1
movaps xmmword [rsp + 0x3e0], xmm2
mov rdx, qword [rsp + 0x478]
movups xmm0, xmmword [r8]
movups xmm1, xmmword [r8 + 0x10]
movups xmm2, xmmword [r8 + 0x20]
movups xmm3, xmmword [r8 + 0x30]
movaps xmmword [rsp + 0x2a0], xmm0
movaps xmmword [rsp + 0x2b0], xmm1
movaps xmmword [rsp + 0x2c0], xmm2
movaps xmmword [rsp + 0x2d0], xmm3
movups xmm0, xmmword [r8 + 0x40]
movaps xmmword [rsp + 0x2e0], xmm0
movups xmm0, xmmword [r8 + 0x50]
movaps xmmword [rsp + 0x2f0], xmm0
movups xmm0, xmmword [r8 + 0x60]
movaps xmmword [rsp + 0x300], xmm0
movups xmm0, xmmword [r8 + 0x70]
movaps xmmword [rsp + 0x310], xmm0
mov r8, qword [rsp + 0x170]
movdqu xmm0, xmmword [r8]
mov dword [rsp + 0x188], eax
mov eax, dword [rsp + 0x288]
lea r8, [rsp + 0x18c]
mov dword [r8 + 8], eax
mov rax, qword [rsp + 0x280]
mov qword [r8], rax
mov qword [rsp + 0x198], rcx
movaps xmm1, xmmword [rsp + 0x3c0]
movaps xmm2, xmmword [rsp + 0x3d0]
movaps xmm3, xmmword [rsp + 0x3e0]
movups xmmword [r8 + 0x34], xmm3
movups xmmword [r8 + 0x24], xmm2
movups xmmword [r8 + 0x14], xmm1
mov qword [rsp + 0x1d0], rdx
movaps xmm1, xmmword [rsp + 0x310]
movups xmmword [r8 + 0xbc], xmm1
movaps xmm1, xmmword [rsp + 0x300]
movups xmmword [r8 + 0xac], xmm1
movaps xmm1, xmmword [rsp + 0x2f0]
movups xmmword [r8 + 0x9c], xmm1
movaps xmm1, xmmword [rsp + 0x2e0]
movups xmmword [r8 + 0x8c], xmm1
movaps xmm1, xmmword [rsp + 0x2a0]
movaps xmm2, xmmword [rsp + 0x2b0]
movaps xmm3, xmmword [rsp + 0x2c0]
movaps xmm4, xmmword [rsp + 0x2d0]
movups xmmword [r8 + 0x7c], xmm4
movups xmmword [r8 + 0x6c], xmm3
movups xmmword [r8 + 0x5c], xmm2
movups xmmword [r8 + 0x4c], xmm1
movdqu xmmword [rsp + 0x258], xmm0
mov qword [rsp + 0x268], 0
mov dword [rsp + 0x270], 0x110000
mov eax, dword [rsp + 0x158]
mov dword [rsp + 0x274], eax
lea rax, [rsp + 0x290]
mov qword [rsp + 0x278], rax
mov eax, 0x110000
mov r14, qword [rsp + 0x28]
cmp eax, 0x110000
je 0x1400fb4c2
nop dword [rax + rax]
xor r15d, r15d
xor ebx, ebx
xor edi, edi
xor esi, esi
jmp 0x1400fae89
mov r15, rsi
mov rbx, qword [rsp + 0x244]
mov dword [rsp + 0x240], 0x110000
mov sil, 1
mov eax, dword [rsp + 0x270]
mov dword [rsp + 0x270], 0x110000
cmp eax, 0x110000
jne 0x1400faf30
lea rcx, [rsp + 0x188]
mov edx, edi
mov r8d, ebx
call fcn.140100a10
mov edi, eax
mov r13, qword [rsp + 0x258]
mov rbx, qword [rsp + 0x260]
test sil, 1
je 0x1400faf50
mov qword [rsp + 0x450], r13
mov qword [rsp + 0x458], rbx
mov qword [rsp + 0x430], 1
lea eax, [rdi - 0x1161]
lea rcx, [rsp + 0x438]
movups xmmword [rcx], xmm6
cmp eax, 0x9e
jbe 0x1400fb3cc
lea rcx, [rsp + 0x430]
mov rsi, r15
mov edx, esi
mov r8d, edi
call fcn.1400fa070
cmp eax, 0x110000
jne 0x1400faf52
jmp 0x1400fb464
mov r13, qword [rsp + 0x258]
mov rbx, qword [rsp + 0x260]
jmp 0x1400faf52
mov eax, edi
mov r15, qword [rsp + 0x1d0]
mov rdi, qword [rsp + 0x190]
mov r12, qword [rsp + 0x198]
mov r14, qword [rsp + 0x230]
jmp 0x1400fafa5
lea rcx, [rsp + 0x430]
mov edx, esi
call fcn.1400fa070
cmp eax, 0x110000
je 0x1400fb0a0
inc r14
mov qword [rsp + 0x230], r14
mov esi, eax
cmp r15, 0x12
jb 0x1400fafc0
mov rax, r12
cmp r14, rdi
jb 0x1400fafd1
jmp 0x1400fb1f0
lea rax, [rsp + 0x18c]
cmp r14, r15
jae 0x1400fb140
mov ebp, dword [rax + r14*4]
mov r8d, ebp
and r8d, 0xffffff
mov qword [rsp + 0x450], r13
mov qword [rsp + 0x458], rbx
mov qword [rsp + 0x430], 1
lea eax, [r8 - 0x1161]
lea rcx, [rsp + 0x438]
movups xmmword [rcx], xmm6
cmp eax, 0x9e
ja 0x1400faf80
cmp eax, 0x15
jae 0x1400fb050
lea ecx, [rsi - 0x1100]
cmp ecx, 0x13
jae 0x1400fb0a0
imul ecx, ecx, 0x24c
lea edx, [rax + rax*8]
lea edx, [rdx + rdx*2]
add edx, eax
lea eax, [rcx + rdx]
add eax, 0xac00
jmp 0x1400faf9a
lea eax, [r8 - 0x11a8]
cmp eax, 0x1b
jae 0x1400fb0a0
lea eax, [rsi - 0xac00]
cmp eax, 0x2ba3
ja 0x1400fb0a0
mov ecx, eax
shr ecx, 2
imul rcx, rcx, 0x24924925
shr rcx, 0x20
lea edx, [rcx + rcx*8]
lea edx, [rdx + rdx*2]
add edx, ecx
sub eax, edx
jne 0x1400fb0a0
lea eax, [rsi + r8]
add eax, 0xffffee59
jmp 0x1400faf9a
cmp r15, 0x12
mov qword [rsp + 0x88], rsi
jb 0x1400fb0c0
lea rax, [rsp + 0x190]
cmp rdi, r14
jae 0x1400fb0d4
jmp 0x1400fe188
mov rdi, r15
lea rax, [rsp + 0x1d0]
cmp r15, r14
jb 0x1400fe188
mov qword [rax], 0
mov rsi, qword [rsp + 0x1d0]
cmp rsi, 0x12
jb 0x1400fb110
cmp rdi, r14
je 0x1400fb244
mov rsi, qword [rsp + 0x190]
cmp r14, rsi
je 0x1400fb239
jmp 0x1400fb20b
cmp rdi, r14
je 0x1400fb244
lea r12, [rsp + 0x18c]
cmp r14, rsi
jne 0x1400fb20b
lea rax, [rsp + 0x1d0]
jmp 0x1400fb241
mov rdi, r15
lea rax, [rsp + 0x1d0]
test rdi, rdi
mov r14, qword [rsp + 0x28]
je 0x1400fb164
mov qword [rax], 0
mov r15, qword [rsp + 0x1d0]
mov qword [rsp + 0x230], 0
cmp r15, 0x12
jb 0x1400fb17e
mov r15, qword [rsp + 0x190]
test r15, r15
jne 0x1400fb460
mov edi, dword [rsp + 0x240]
cmp edi, 0x110000
je 0x1400fb460
cmp edi, dword [rsp + 0x274]
jb 0x1400fb460
mov eax, dword [rsp + 0x244]
cmp eax, 2
je 0x1400fae70
mov ecx, eax
and ecx, 0xffffff00
cmp ecx, 0xd800
je 0x1400fae70
cmp eax, 1
je 0x1400fae70
add eax, 0xffffee9f
cmp eax, 0x61
jbe 0x1400fae70
jmp 0x1400fb460
lea rax, [rsp + 0x190]
test rdi, rdi
mov r14, qword [rsp + 0x28]
jne 0x1400fb155
jmp 0x1400fb164
sub rdi, r14
lea rdx, [r12 + r14*4]
lea rcx, [r12 + rsi*4]
lea r8, [rdi*4]
call sub.msvcrt.dll_memmove
add rdi, rsi
cmp qword [rsp + 0x1d0], 0x12
lea rax, [rsp + 0x1d0]
jb 0x1400fb241
lea rax, [rsp + 0x190]
mov qword [rax], rdi
shr ebp, 0x18
mov qword [rsp + 0x230], 0
test bpl, bpl
je 0x1400fb440
mov r14d, 1
mov r15, qword [rsp + 0x1d0]
cmp r15, 0x12
mov rax, qword [rsp + 0x190]
mov rcx, qword [rsp + 0x198]
mov rdx, qword [rsp + 0x258]
mov qword [rsp + 0xb0], rdx
mov r12, r15
mov qword [rsp + 0xa8], rax
cmovae r12, rax
mov r13, qword [rsp + 0x260]
lea rsi, [rsp + 0x18c]
mov qword [rsp + 0x98], rcx
cmovae rsi, rcx
jmp 0x1400fb2c5
inc r14
mov ebp, ebx
cmp r14, r12
jae 0x1400fb3b0
mov r8d, dword [rsi + r14*4]
mov ebx, r8d
shr ebx, 0x18
je 0x1400fb440
cmp bpl, bl
je 0x1400fb2c0
and r8d, 0xffffff
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0x450], rax
mov qword [rsp + 0x458], r13
mov qword [rsp + 0x430], 1
lea rax, [rsp + 0x438]
movups xmmword [rax], xmm6
lea rcx, [rsp + 0x430]
mov rdx, qword [rsp + 0x88]
call fcn.1400fa070
cmp eax, 0x110000
je 0x1400fb2c0
cmp r15, 0x12
mov r9, qword [rsp + 0xa8]
cmovb r9, r15
cmp r9, r14
jbe 0x1400fe20f
mov edi, eax
xor eax, eax
cmp r15, 0x12
setb al
lea rcx, [rsp + 0x18c]
mov rdx, qword [rsp + 0x98]
cmovb rdx, rcx
shl rax, 6
lea rcx, [r9 - 1]
mov qword [rsp + rax + 0x190], rcx
lea rcx, [rdx + r14*4]
lea rdx, [rdx + r14*4]
add rdx, 4
mov r8, r14
not r8
add r8, r9
shl r8, 2
call sub.msvcrt.dll_memmove
mov eax, edi
mov qword [rsp + 0x88], rax
jmp 0x1400fb262
mov r14, qword [rsp + 0x28]
mov rsi, qword [rsp + 0x88]
cmp r15, 0x12
jae 0x1400fb176
jmp 0x1400fb17e
cmp eax, 0x15
mov rsi, r15
jae 0x1400fb3fe
lea ecx, [rsi - 0x1100]
cmp ecx, 0x13
jae 0x1400fb464
imul ecx, ecx, 0x24c
lea edx, [rax + rax*8]
lea edx, [rdx + rdx*2]
add edx, eax
lea eax, [rcx + rdx]
add eax, 0xac00
jmp 0x1400faf52
lea eax, [rdi - 0x11a8]
cmp eax, 0x1b
jae 0x1400fb464
lea eax, [rsi - 0xac00]
cmp eax, 0x2ba3
ja 0x1400fb464
mov ecx, eax
shr ecx, 2
imul rcx, rcx, 0x24924925
shr rcx, 0x20
lea edx, [rcx + rcx*8]
lea edx, [rdx + rdx*2]
add edx, ecx
sub eax, edx
jne 0x1400fb464
lea eax, [rsi + rdi]
add eax, 0xffffee59
jmp 0x1400faf52
mov rdi, qword [rsp + 0x88]
mov r14, qword [rsp + 0x28]
mov cl, 1
cmp edi, 0x110000
je 0x1400fb710
jmp 0x1400fb680
mov edi, esi
jmp 0x1400fb44d
mov dword [rsp + 0x270], edi
mov edi, esi
jmp 0x1400fb448
mov rcx, qword [rsp + 0x888]
mov rax, qword [rcx + 8]
mov rcx, qword [rcx + 0x10]
mov rdx, qword [rsp + 0x68]
lea rax, [rax + rax*2]
mov qword [rcx + rax*8], 2
movdqu xmm0, xmmword [rsp + 0x430]
movdqu xmmword [rcx + rax*8 + 8], xmm0
inc qword [rdx]
mov al, 1
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x270]
mov cl, 1
mov qword [rsp + 0x60], rcx
cmp eax, 0x110000
jne 0x1400fae60
mov rax, qword [rsp + 0x1d0]
lea rcx, [rsp + 0x18c]
mov r8, rax
cmp rax, 0x12
jb 0x1400fb4eb
mov r8, qword [rsp + 0x190]
mov rcx, qword [rsp + 0x198]
mov rdx, qword [rsp + 0x230]
cmp rdx, r8
jae 0x1400fb52b
mov ecx, dword [rcx + rdx*4]
inc rdx
mov qword [rsp + 0x230], rdx
cmp rax, 0x12
jb 0x1400fb631
lea r8, [rsp + 0x190]
cmp rdx, qword [rsp + 0x190]
je 0x1400fb643
jmp 0x1400fb656
mov edi, dword [rsp + 0x240]
mov rbx, qword [rsp + 0x244]
mov dword [rsp + 0x240], 0x110000
mov cl, 1
cmp edi, 0x110000
je 0x1400fb710
xor r15d, r15d
cmp edi, dword [rsp + 0x274]
jb 0x1400fb5d5
mov eax, ebx
and eax, 0xfffffffe
je 0x1400fb5d5
mov rax, rbx
shr rax, 0x20
test al, al
jne 0x1400fae67
mov eax, ebx
shr eax, 0x10
je 0x1400fae67
test bx, bx
je 0x1400fb5d5
movzx ecx, bx
cmp ecx, 1
je 0x1400fae67
mov ecx, eax
and ecx, 0x7f
cmp cx, 0x3c
setne cl
add eax, 0xfffff400
movzx eax, ax
cmp eax, 0xfd00
setb al
lea edx, [rdi - 0xfb4f]
cmp edx, 0xffffffcd
ja 0x1400fae67
or cl, al
je 0x1400fae67
lea eax, [rdi - 0x1ffc]
cmp eax, 0xffffff74
ja 0x1400fae67
lea rcx, [rsp + 0x430]
lea rdx, [rsp + 0x188]
call fcn.140101a90
mov eax, dword [rsp + 0x430]
cmp eax, 0x110000
je 0x1400fb44d
mov edx, dword [rsp + 0x434]
mov ecx, dword [rsp + 0x438]
cmp eax, dword [rsp + 0x274]
jae 0x1400fc29c
mov dword [rsp + 0x240], eax
mov dword [rsp + 0x244], edx
mov dword [rsp + 0x248], ecx
jmp 0x1400fb44d
cmp rdx, rax
jne 0x1400fb656
lea r8, [rsp + 0x1d0]
test rax, rax
je 0x1400fb64a
mov qword [r8], 0
mov qword [rsp + 0x230], 0
mov edi, ecx
and edi, 0xffffff
cmp ecx, 0xffffff
ja 0x1400fb680
xor r15d, r15d
mov dword [rsp + 0x270], edi
jmp 0x1400fae63
xor eax, eax
mov ecx, edi
mov edx, 1
shld rax, rdx, cl
mov rdx, qword [rsp + 0x278]
mov r8d, 1
shl r8, cl
xor ecx, ecx
test dil, 0x40
cmovne rax, r8
cmovne r8, rcx
and rax, qword [rdx + 8]
and r8, qword [rdx]
or r8, rax
mov esi, 0xfffd
cmove esi, edi
cmp edi, 0x80
cmovae esi, edi
cmp esi, 0x2e
je 0x1400fb710
cmp esi, 0xfffd
je 0x1400fd4c2
mov r8, qword [r14]
cmp r8, 0xfe
jb 0x1400fb871
mov rcx, qword [rsp + 0x880]
mov rax, qword [rcx + 8]
mov rcx, qword [rcx + 0x10]
mov rdx, qword [rsp + 0x90]
cmp rax, r8
je 0x1400fb88a
jmp 0x1400fb8af
mov qword [rsp + 0x150], rcx
mov rsi, qword [r14]
mov rax, qword [rsp + 0x80]
mov rdx, rsi
cmp rsi, 0xfe
jb 0x1400fb73f
mov rax, qword [rsp + 0x880]
mov rdx, qword [rax + 8]
mov rax, qword [rax + 0x10]
mov rcx, rdx
sub rcx, qword [rsp + 0x58]
jb 0x1400fe1a1
cmp rcx, 4
jb 0x1400fc650
mov rcx, qword [rsp + 0x58]
movdqu xmm0, xmmword [rax + rcx*4]
pcmpeqb xmm0, xmm7
pmovmskb eax, xmm0
cmp eax, 0xffff
jne 0x1400fc655
mov rdx, rsi
mov rax, qword [rsp + 0x80]
cmp rsi, 0xfe
jb 0x1400fb798
mov rax, qword [rsp + 0x880]
mov rdx, qword [rax + 8]
mov rax, qword [rax + 0x10]
add rcx, 4
cmp rdx, rcx
jb 0x1400fe271
je 0x1400fb7d4
shl rdx, 2
mov r8, qword [rsp + 0x58]
lea r8, [r8*4 + 0x10]
nop dword [rax + rax]
cmp dword [rax + r8], 0x7f
ja 0x1400fd4c2
add r8, 4
cmp rdx, r8
jne 0x1400fb7c0
mov rax, qword [rsp + 0x80]
mov rdx, r14
cmp rsi, 0xfe
jb 0x1400fb7fc
mov rax, qword [rsp + 0x880]
mov rax, qword [rax + 0x10]
mov rdx, qword [rsp + 0x90]
mov rdx, qword [rdx]
test rdx, rdx
je 0x1400fe2b8
cmp dword [rax + rdx*4 - 4], 0x2d
je 0x1400fd4c2
mov rdx, qword [r14]
cmp rdx, 0xfe
jb 0x1400fb8cc
mov rax, qword [rsp + 0x90]
mov rdx, qword [rax]
mov rax, rdx
sub rax, qword [rsp + 0x58]
add rax, 0xfffffffffffff82b
cmp rax, 0xfffffffffffff82f
jb 0x1400fd4c2
mov qword [rsp + 0x430], 0
mov qword [rsp + 0x7e8], 0
mov rax, qword [rsp + 0x880]
mov r8, qword [rax + 0x10]
jmp 0x1400fb906
mov rax, r8
mov rcx, qword [rsp + 0x80]
mov rdx, r14
mov r8d, 0xfd
cmp rax, r8
jne 0x1400fb8af
mov rcx, qword [rsp + 0x880]
call fcn.1400fe7d0
mov rcx, qword [rsp + 0x880]
mov rax, qword [rcx + 8]
mov rcx, qword [rcx + 0x10]
mov rdx, qword [rsp + 0x90]
mov dword [rcx + rax*4], esi
inc qword [rdx]
mov eax, dword [rsp + 0x270]
cmp eax, 0x110000
jne 0x1400fae60
jmp 0x1400fb4c2
mov rax, rdx
sub rax, qword [rsp + 0x58]
add rax, 0xfffffffffffff82b
cmp rax, 0xfffffffffffff82e
jbe 0x1400fd4c2
mov qword [rsp + 0x430], 0
mov qword [rsp + 0x7e8], 0
mov r8, qword [rsp + 0x80]
mov rax, rdx
sub rax, rcx
jb 0x1400fe2f5
lea rcx, [r8 + rcx*4]
mov qword [rsp + 0x50], rcx
lea rbx, [r8 + rdx*4]
shl rdx, 2
mov rcx, qword [rsp + 0x58]
lea r9, [rcx*4 + 0x10]
mov r10, rax
nop word cs:[rax + rax]
cmp r9, rdx
je 0x1400fb972
mov rcx, r10
dec r10
cmp dword [r8 + rdx - 4], 0x2d
lea rdx, [rdx - 4]
jne 0x1400fb940
test r10, r10
je 0x1400fb9d0
mov qword [rsp + 0xa0], r10
sub rax, rcx
mov rdx, qword [rsp + 0x50]
lea r14, [rdx + rcx*4]
jmp 0x1400fb981
xor ecx, ecx
mov qword [rsp + 0xa0], rcx
mov r14, qword [rsp + 0x50]
test rax, rax
je 0x1400fb98c
lea rbx, [r14 + rax*4]
jmp 0x1400fb9df
xor r13d, r13d
lea rax, [rsp + 0x438]
mov qword [rsp + 0x70], rax
mov rbx, qword [rsp + 0xa0]
cmp r13, 0x15
jae 0x1400fbc6e
cmp r13, 1
jbe 0x1400fc316
mov r8d, 1
mov rcx, qword [rsp + 0x70]
mov rdx, r13
call fcn.1400fecb0
jmp 0x1400fc316
mov r14, qword [rsp + 0x50]
xor eax, eax
mov qword [rsp + 0xa0], rax
xor esi, esi
mov r12d, 0x48
mov ebp, pe_nt_image_headers64
mov rax, qword [rsp + 0xa0]
mov r15d, eax
lea eax, [r12 + 0x1a]
add r14, 4
mov edx, r12d
neg edx
mov r8d, 1
mov r9d, 0x24
mov ecx, esi
mov r10d, dword [r14 - 4]
lea r11d, [r10 - 0x30]
cmp r11d, 9
jbe 0x1400fba40
nop word cs:[rax + rax]
add r10d, 0xffffff9f
cmp r10d, 0x19
jbe 0x1400fba44
jmp 0x1400fd4e1
add r10d, 0xffffffea
mov r11d, r10d
imul r11d, r8d
add ecx, r11d
lea r11d, [rdx + r9]
cmp r9d, eax
mov edi, 0x1a
cmovae r11d, edi
cmp r9d, r12d
mov edi, 1
cmovbe r11d, edi
cmp r10d, r11d
jb 0x1400fba9d
cmp r14, rbx
je 0x1400fd4e1
add r9d, 0x24
mov r10d, 0x24
sub r10d, r11d
imul r8d, r10d
add r14, 4
mov r10d, dword [r14 - 4]
lea r11d, [r10 - 0x30]
cmp r11d, 9
ja 0x1400fba30
jmp 0x1400fba40
inc r15d
je 0x1400fdff0
mov eax, ecx
sub eax, esi
test esi, esi
mov r8d, 2
mov edx, 0x2bc
cmove r8d, edx
xor r12d, r12d
xor edx, edx
div r8d
mov r8d, eax
xor edx, edx
div r15d
add eax, r8d
cmp eax, 0x1c8
jb 0x1400fbb0a
xor r12d, r12d
mov r9d, 0xd41d41d5
nop
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 r12d, 0x24
cmp eax, 0x3e57
mov eax, r8d
ja 0x1400fbae0
jmp 0x1400fbb0d
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
div r15d
add ebp, eax
cmp ebp, 0x110000
je 0x1400fd4e1
mov eax, ebp
xor eax, 0xd800
add eax, 0xffef0000
cmp eax, 0xffef0800
jb 0x1400fd4e1
mov esi, edx
mov rax, qword [rsp + 0x7e8]
mov rcx, rax
lea rdx, [rsp + 0x438]
cmp rax, 0x3c
jb 0x1400fbb7b
mov rcx, qword [rsp + 0x438]
mov rdx, qword [rsp + 0x440]
mov r13d, esi
test rcx, rcx
je 0x1400fbbb3
shl rcx, 4
xor eax, eax
jmp 0x1400fbb99
add rax, 0x10
cmp rcx, rax
je 0x1400fbbab
mov r8, qword [rdx + rax]
cmp r8, r13
jb 0x1400fbb90
inc r8
mov qword [rdx + rax], r8
jmp 0x1400fbb90
mov rax, qword [rsp + 0x7e8]
cmp rax, 0x3c
jb 0x1400fbbd3
mov rcx, qword [rsp + 0x438]
mov rdx, qword [rsp + 0x440]
lea r8, [rsp + 0x438]
jmp 0x1400fbbeb
mov rcx, rax
lea rdx, [rsp + 0x438]
lea r8, [rsp + 0x7e8]
mov eax, 0x3b
cmp rcx, rax
jne 0x1400fbc15
lea rcx, [rsp + 0x430]
call fcn.1400fed80
mov rcx, qword [rsp + 0x438]
mov rdx, qword [rsp + 0x440]
lea r8, [rsp + 0x438]
shl rcx, 4
mov qword [rdx + rcx], r13
mov dword [rdx + rcx + 8], ebp
inc qword [r8]
movzx eax, di
add r12d, eax
inc esi
cmp r14, rbx
jne 0x1400fb9f7
mov r13, qword [rsp + 0x7e8]
cmp r13, 0x3c
jb 0x1400fb98f
mov r13, qword [rsp + 0x438]
mov rax, qword [rsp + 0x440]
mov qword [rsp + 0x70], rax
mov rbx, qword [rsp + 0xa0]
cmp r13, 0x15
jb 0x1400fb9ae
lea rcx, [r13*8]
movabs rax, 0x7ffffffffffffff0
and rcx, rax
movzx eax, byte [0x14037f348]
mov edx, 8
call fcn.14012d400
test rax, rax
je 0x1400fe36c
mov r12, rax
mov qword [rsp + 0xa0], rbx
movzx eax, byte [0x14037f348]
mov ecx, 0x100
mov edx, 8
call fcn.14012d400
test rax, rax
mov qword [rsp + 0x48], r12
je 0x1400fe376
mov r15, rax
mov rax, qword [rsp + 0x70]
lea rcx, [rax + 0x20]
mov qword [rsp + 0xf0], rcx
lea rcx, [rax + 8]
mov qword [rsp + 0xd0], rcx
lea rcx, [rax - 8]
mov qword [rsp + 0x128], rcx
add rax, 0xfffffffffffffff0
mov qword [rsp + 0x148], rax
mov eax, 0x10
mov qword [rsp + 0xf8], rax
xor r14d, r14d
xor ebx, ebx
mov qword [rsp + 0xe8], r13
jmp 0x1400fbd33
mov ebx, 1
mov r14, qword [rsp + 0x40]
cmp r14, r13
jae 0x1400fc2ec
mov r8, r13
sub r8, r14
mov rax, r14
shl rax, 4
mov rcx, qword [rsp + 0x70]
add rcx, rax
cmp r8, 2
jae 0x1400fbda6
mov rdx, r13
mov rsi, rdx
sub rsi, r14
jb 0x1400fe1b8
cmp rdx, r13
ja 0x1400fe1b8
jae 0x1400fbdcf
cmp r8, 0xa
jae 0x1400fbdcf
lea rsi, [r14 + 0xa]
cmp rsi, r13
cmovae rsi, r13
mov qword [rsp + 0x40], rsi
sub rsi, r14
jb 0x1400fe22f
cmp r8, 1
adc r8, 0
mov rdx, rsi
call fcn.1400fecb0
cmp rbx, qword [rsp + 0xf8]
je 0x1400fbdde
jmp 0x1400fbe55
mov rdx, qword [rcx]
mov r9, qword [rcx + 0x10]
cmp r9, rdx
jae 0x1400fc17a
cmp r8, 2
jne 0x1400fc18f
lea rdx, [r14 + 2]
mov r8d, 2
jmp 0x1400fc20d
mov qword [rsp + 0x40], rdx
cmp rbx, qword [rsp + 0xf8]
jne 0x1400fbe55
movzx eax, byte [0x14037f348]
mov rax, qword [0x14037f2d0]
test rax, rax
jne 0x1400fbe06
call sub.kernel32.dll_GetProcessHeap
test rax, rax
je 0x1400fe1d5
mov qword [0x14037f2d0], rax
mov r8, rbx
shl r8, 5
mov rcx, rax
xor edx, edx
call fcn.1402699c4
test rax, rax
je 0x1400fe1d5
mov rdi, rax
lea rax, [rbx + rbx]
mov qword [rsp + 0xf8], rax
mov r8, rbx
shl r8, 4
mov rcx, rdi
mov rdx, r15
call sub.msvcrt.dll_memcpy
mov rcx, qword [0x14037f2d0]
xor edx, edx
mov r8, r15
call fcn.1402699cc
mov r15, rdi
mov rax, rbx
shl rax, 4
mov qword [r15 + rax], rsi
mov qword [r15 + rax + 8], r14
inc rbx
cmp rbx, 2
jb 0x1400fbd25
mov qword [rsp + 0xb8], r15
jmp 0x1400fbef2
mov r12, qword [rsp + 0x48]
mov rdx, r12
sub rbx, rdx
mov rcx, rdi
mov r8, rbx
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x60]
add rax, rbp
mov rcx, qword [rsp + 0x30]
mov qword [rcx], rax
mov rax, qword [rsp + 0xa8]
mov rcx, qword [rsp + 0x78]
mov qword [rcx], rax
mov rcx, qword [rsp + 0x98]
lea rdx, [rcx + 0x10]
mov rax, qword [rsp + 0xb0]
not rax
add r14, rax
shl r14, 4
mov r8, r14
call sub.msvcrt.dll_memmove
mov rbx, qword [rsp + 0x88]
cmp rbx, 1
mov r13, qword [rsp + 0xe8]
jbe 0x1400fbd20
mov r14, rbx
lea r10, [rbx - 1]
mov rcx, r10
shl rcx, 4
mov rax, qword [r15 + rcx]
mov rcx, qword [r15 + rcx + 8]
add rcx, rax
cmp rcx, r13
je 0x1400fbf60
mov rdx, r14
shl rdx, 4
mov r8, qword [rdx + r15 - 0x20]
cmp r8, rax
jbe 0x1400fbf60
cmp r14, 2
jbe 0x1400fc280
lea r11, [r14 - 3]
mov rcx, r11
shl rcx, 4
mov rcx, qword [r15 + rcx]
lea r9, [r8 + rax]
cmp rcx, r9
jbe 0x1400fbf75
cmp r14, 3
jbe 0x1400fc28a
add r8, rcx
cmp qword [rdx + r15 - 0x40], r8
jbe 0x1400fbf75
jmp 0x1400fc294
cmp r14, 3
jb 0x1400fbf7a
lea r11, [r14 - 3]
mov rcx, r11
shl rcx, 4
mov rcx, qword [r15 + rcx]
cmp rcx, rax
jb 0x1400fbf7e
lea r11, [r14 - 2]
cmp r14, r11
jbe 0x1400fe06a
lea rax, [r11 + 1]
cmp r14, rax
jbe 0x1400fe082
mov rdx, r11
shl rdx, 4
mov rdi, qword [r15 + rdx + 8]
shl rax, 4
mov r8, qword [r15 + rax]
mov rsi, qword [r15 + rax + 8]
add rsi, r8
mov r12, rsi
sub r12, rdi
jb 0x1400fe0e2
mov qword [rsp + 0x88], r10
cmp rsi, r13
ja 0x1400fe0c6
mov qword [rsp + 0x60], r8
mov qword [rsp + 0xb0], r11
lea r8, [r15 + rdx]
mov qword [rsp + 0x98], r8
mov rbp, qword [r15 + rdx]
lea rdx, [r15 + rax]
mov qword [rsp + 0x30], rdx
add rax, r15
add rax, 8
mov qword [rsp + 0x78], rax
mov qword [rsp + 0xa8], rdi
shl rdi, 4
add rdi, qword [rsp + 0x70]
mov rbx, rbp
shl rbx, 4
lea r13, [rdi + rbx]
shl rsi, 4
mov r15, r12
sub r15, rbp
cmp r15, rbp
jae 0x1400fc0d0
mov rbx, r15
shl rbx, 4
mov r12, qword [rsp + 0x48]
mov rcx, r12
mov rdx, r13
mov r8, rbx
call sub.msvcrt.dll_memcpy
add rbx, r12
test rbp, rbp
jle 0x1400fc160
test r15, r15
jle 0x1400fc160
add rsi, qword [rsp + 0x148]
mov r15, qword [rsp + 0xb8]
nop dword [rax]
mov rax, r13
mov rcx, rbx
mov rdx, qword [rbx - 0x10]
mov r8, qword [r13 - 0x10]
cmp rdx, r8
mov r13d, 0
sbb r13, r13
cmp rdx, r8
mov ebx, 0
adc rbx, 0xffffffffffffffff
shl r13, 4
add r13, rax
shl rbx, 4
add rbx, rcx
cmp rdx, r8
mov rax, rbx
cmovb rax, r13
movdqu xmm0, xmmword [rax]
movdqu xmmword [rsi], xmm0
cmp r13, rdi
jbe 0x1400fc0c4
add rsi, 0xfffffffffffffff0
cmp rbx, r12
ja 0x1400fc070
mov rdi, r13
jmp 0x1400fbe81
mov r15, qword [rsp + 0x48]
mov rcx, r15
mov rdx, rdi
mov r8, rbx
call sub.msvcrt.dll_memcpy
add rbx, r15
test rbp, rbp
jle 0x1400fc165
cmp r12, rbp
mov r15, qword [rsp + 0xb8]
jle 0x1400fbe7c
add rsi, qword [rsp + 0x70]
mov r12, qword [rsp + 0x48]
mov rdx, r12
nop dword [rax]
mov r8, rdx
mov rcx, qword [r13]
xor edx, edx
xor eax, eax
cmp rcx, qword [r8]
setae dl
setb cl
mov r9, r8
cmovb r9, r13
movdqu xmm0, xmmword [r9]
movdqu xmmword [rdi], xmm0
add rdi, 0x10
shl rdx, 4
add rdx, r8
cmp rdx, rbx
jae 0x1400fbe84
mov al, cl
shl rax, 4
add r13, rax
cmp r13, rsi
jb 0x1400fc110
jmp 0x1400fbe84
mov rdi, r13
jmp 0x1400fc16a
mov r12, qword [rsp + 0x48]
mov rdx, r12
mov r15, qword [rsp + 0xb8]
jmp 0x1400fbe84
cmp r8, 2
jne 0x1400fc1c9
lea rdx, [r14 + 2]
mov r8d, 2
jmp 0x1400fbd51
mov r10, qword [rsp + 0xf0]
lea r11, [r10 + rax]
mov r10d, 2
mov rsi, r9
nop word cs:[rax + rax]
mov rdi, rsi
mov rsi, qword [r11]
cmp rsi, rdi
jae 0x1400fc1fa
inc r10
add r11, 0x10
cmp r8, r10
jne 0x1400fc1b0
jmp 0x1400fc1f7
mov r10, qword [rsp + 0xf0]
lea r11, [r10 + rax]
mov r10d, 2
mov rsi, r9
nop
mov rdi, rsi
mov rsi, qword [r11]
cmp rsi, rdi
jb 0x1400fc1fa
inc r10
add r11, 0x10
cmp r8, r10
jne 0x1400fc1e0
mov r10, r8
lea r11, [r10 + r14]
mov r8, r10
cmp r9, rdx
mov rdx, r11
jae 0x1400fbd51
cmp r14, rdx
ja 0x1400fe299
cmp rdx, r13
ja 0x1400fe282
cmp r8, 2
jb 0x1400fbd51
mov rbp, rdx
mov rdx, r8
shr rdx, 1
add rax, qword [rsp + 0xd0]
lea r9, [r14 + r8]
shl r9, 4
add r9, qword [rsp + 0x128]
nop word [rax + rax]
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 0x1400fc250
mov rdx, rbp
jmp 0x1400fbd51
mov ebx, 2
jmp 0x1400fbd25
mov ebx, 3
jmp 0x1400fbd25
mov rbx, r14
jmp 0x1400fbd25
mov r8d, edx
and r8d, 0xffffff00
cmp r8d, 0xd800
je 0x1400fc3ce
lea r8d, [rdx - 1]
cmp r8d, 2
jb 0x1400fc3ce
lea r8d, [rdx - 0x11c3]
mov dword [rsp + 0x240], eax
mov dword [rsp + 0x244], edx
mov dword [rsp + 0x248], ecx
cmp r8d, 0xffffff9e
jae 0x1400fae67
jmp 0x1400fb44d
mov rcx, qword [0x14037f2d0]
xor edx, edx
mov r8, r15
call fcn.1402699cc
mov rcx, qword [0x14037f2d0]
xor edx, edx
mov r8, r12
call fcn.1402699cc
mov rbx, qword [rsp + 0xa0]
mov rsi, qword [rsp + 0x7e8]
lea rdi, [rsp + 0x438]
cmp rsi, 0x3c
jb 0x1400fc33c
mov rsi, qword [rsp + 0x438]
mov rdi, qword [rsp + 0x440]
lea rax, [rsi + rbx]
mov qword [rsp + 0x390], 0
mov dword [rsp + 0x2a0], 0
mov r12d, 0x3b
cmp rax, 0x3c
jb 0x1400fc3ca
dec rax
bsr rcx, rax
not ecx
mov rdx, 0xffffffffffffffff
shr rdx, cl
inc rdx
je 0x1400fe341
lea rcx, [rsp + 0x2a0]
call fcn.140101e60
movabs rcx, 0x8000000000000001
cmp rax, rcx
jne 0x1400fe33c
mov rdx, qword [rsp + 0x390]
cmp rdx, 0x3c
jb 0x1400fc3e8
mov rax, qword [rsp + 0x2a8]
mov r8, qword [rsp + 0x2b0]
lea rcx, [rsp + 0x2a8]
mov r12, rdx
jmp 0x1400fc3fb
xor eax, eax
jmp 0x1400fc3eb
mov dword [rsp + 0x240], eax
mov dword [rsp + 0x244], edx
mov dword [rsp + 0x248], ecx
jmp 0x1400fae67
mov rax, rdx
lea r8, [rsp + 0x2a4]
lea rcx, [rsp + 0x390]
mov rdx, qword [rsp + 0x50]
lea rbx, [rdx + rbx*4]
mov r14, r12
sub r14, rax
jbe 0x1400fc47a
mov rdx, rax
sub rdx, r12
lea r8, [r8 + rax*4]
xor r15d, r15d
xor r9d, r9d
jmp 0x1400fc440
lea r11, [rdi + r10]
add r11, 8
inc r15
mov r10, qword [rsp + 0x50]
mov r11d, dword [r11]
mov dword [r8 + r9*4], r11d
inc r9
mov r11, rdx
add r11, r9
je 0x1400fc482
cmp r15, rsi
jae 0x1400fc461
mov r10, r15
shl r10, 4
cmp r9, qword [rdi + r10]
je 0x1400fc41e
mov r11, qword [rsp + 0x50]
cmp r11, rbx
jne 0x1400fc46f
jmp 0x1400fd4c0
mov r11, qword [rsp + 0x50]
cmp r11, rbx
je 0x1400fc576
lea r10, [r11 + 4]
mov qword [rsp + 0x50], r10
jmp 0x1400fc42e
xor r14d, r14d
xor r15d, r15d
jmp 0x1400fc48a
mov qword [rsp + 0x50], r10
mov rax, r12
mov qword [rcx], rax
mov rax, qword [rsp + 0x50]
jmp 0x1400fc4ac
mov dword [rcx + rax*4], ebp
inc qword [rdx]
inc r14
mov rax, r12
cmp r15, rsi
jae 0x1400fc500
mov r12, rax
mov rax, r15
shl rax, 4
cmp r14, qword [rdi + rax]
jne 0x1400fc507
add rax, rdi
add rax, 8
inc r15
mov r9, rax
mov r8, qword [rsp + 0x390]
cmp r8, 0x3c
jae 0x1400fc528
mov rax, r8
lea rcx, [rsp + 0x2a4]
lea rdx, [rsp + 0x390]
mov r8d, 0x3b
mov ebp, dword [r9]
cmp rax, r8
jne 0x1400fc4a0
jmp 0x1400fc54c
cmp rax, rbx
jne 0x1400fc513
jmp 0x1400fc57c
mov rax, r12
cmp r12, rbx
je 0x1400fd4b0
lea r12, [rax + 4]
mov r9, rax
mov r8, qword [rsp + 0x390]
cmp r8, 0x3c
jb 0x1400fc4dc
mov rax, qword [rsp + 0x2a8]
mov rcx, qword [rsp + 0x2b0]
lea rdx, [rsp + 0x2a8]
mov ebp, dword [r9]
cmp rax, r8
jne 0x1400fc4a0
lea rcx, [rsp + 0x2a0]
call fcn.140102070
mov rax, qword [rsp + 0x2a8]
mov rcx, qword [rsp + 0x2b0]
lea rdx, [rsp + 0x2a8]
jmp 0x1400fc4a0
add rax, r9
mov qword [rcx], rax
mov r14, qword [rsp + 0x28]
mov rax, qword [r14]
mov rcx, r14
cmp rax, 0xfe
jb 0x1400fc7b9
mov rcx, qword [rsp + 0x90]
mov rax, qword [rcx]
cmp rax, qword [rsp + 0x58]
ja 0x1400fc7c4
mov rax, qword [rsp + 0x390]
lea r9, [rsp + 0x2a4]
cmp rax, 0x3c
jb 0x1400fc5cf
mov rax, qword [rsp + 0x2a8]
mov r9, qword [rsp + 0x2b0]
mov qword [rsp + 0x20], rax
mov rcx, qword [rsp + 0xe0]
mov rdx, qword [rsp + 0x880]
mov r8, qword [rsp + 0x58]
call fcn.1400ff270
test al, al
jne 0x1400fdfb4
cmp qword [rsp + 0x390], 0x3c
jb 0x1400fc617
mov r8, qword [rsp + 0x2b0]
mov rcx, qword [0x14037f2d0]
xor edx, edx
call fcn.1402699cc
cmp qword [rsp + 0x7e8], 0x3c
jb 0x1400fc638
mov r8, qword [rsp + 0x440]
mov rcx, qword [0x14037f2d0]
xor edx, edx
call fcn.1402699cc
mov rsi, qword [r14]
mov al, 1
mov dword [rsp + 0x30], eax
mov al, 1
mov qword [rsp + 0x60], rax
nop dword [rax + rax]
mov rcx, qword [rsp + 0x58]
mov rdx, rsi
mov rax, qword [rsp + 0x80]
cmp rsi, 0xfe
jb 0x1400fc679
mov rax, qword [rsp + 0x880]
mov rdx, qword [rax + 8]
mov rax, qword [rax + 0x10]
mov r8, rdx
sub r8, rcx
jb 0x1400fe192
lea rdx, [rax + rcx*4]
mov r9d, dword [rsp + 0x30]
and r9b, 1
mov rax, qword [rsp + 0x60]
and al, 1
mov byte [rsp + 0x20], al
mov rcx, qword [rsp + 0xe0]
call fcn.140100300
test al, al
jne 0x1400fd4c2
cmp byte [rsp + 0x150], 0
jne 0x1400fc89a
cmp rsi, 0xfe
jb 0x1400fc6f0
mov rcx, qword [rsp + 0x880]
mov rax, qword [rcx + 8]
mov rcx, qword [rcx + 0x10]
mov rdx, qword [rsp + 0x90]
cmp rax, rsi
je 0x1400fc708
jmp 0x1400fc72d
mov rax, rsi
mov rcx, qword [rsp + 0x80]
mov rdx, r14
mov esi, 0xfd
cmp rax, rsi
jne 0x1400fc72d
mov rcx, qword [rsp + 0x880]
call fcn.1400fe7d0
mov rcx, qword [rsp + 0x880]
mov rax, qword [rcx + 8]
mov rcx, qword [rcx + 0x10]
mov rdx, qword [rsp + 0x90]
mov dword [rcx + rax*4], 0x2e
inc qword [rdx]
mov rax, qword [r14]
cmp rax, 0xfe
jb 0x1400fc74d
mov rax, qword [rsp + 0x90]
mov rax, qword [rax]
mov qword [rsp + 0x58], rax
mov rdx, qword [rsp + 0x100]
mov r8, qword [rdx]
cmp r8, 9
jb 0x1400fc790
mov rcx, qword [rsp + 0x888]
mov rax, qword [rcx + 8]
mov rcx, qword [rcx + 0x10]
mov rdx, qword [rsp + 0x68]
cmp rax, r8
jne 0x1400fb485
jmp 0x1400fc7a7
mov rax, r8
mov rcx, qword [rsp + 0x68]
mov r8d, 8
cmp rax, r8
jne 0x1400fb485
mov rcx, qword [rsp + 0x888]
call fcn.1400fea40
jmp 0x1400fb470
cmp rax, qword [rsp + 0x58]
jbe 0x1400fc5a9
mov rax, qword [rsp + 0x58]
mov qword [rcx], rax
mov rax, qword [rsp + 0x390]
lea r9, [rsp + 0x2a4]
cmp rax, 0x3c
jae 0x1400fc5bf
jmp 0x1400fc5cf
cmp byte [r12 + r13 - 1], 0x2d
jne 0x1400fa763
movzx eax, cl
and eax, 1
add qword [rsp + 0xd8], rax
mov rdx, qword [rsp + 0xc8]
mov rax, qword [r14]
cmp rax, 0xfe
jb 0x1400fa820
jmp 0x1400fa69f
mov rax, r8
mov rcx, qword [rsp + 0x68]
mov r8d, 8
mov rdi, qword [rsp + 0x50]
cmp rax, r8
je 0x1400fcbff
lea rax, [rax + rax*2]
mov qword [rcx + rax*8], 0
mov qword [rcx + rax*8 + 8], r12
mov qword [rcx + rax*8 + 0x10], rdi
inc qword [rdx]
xor eax, eax
mov cl, 1
mov r12, qword [rsp + 0x108]
cmp byte [rsp + 0xc4], 0
mov rdx, qword [rsp + 0xc8]
je 0x1400fa5a4
jmp 0x1400fd597
xor eax, eax
mov rsi, rdi
test rdx, rdx
je 0x1400fc8ac
mov qword [rsp + 0xd0], rdi
add rdx, rsi
mov r15, rdx
jmp 0x1400fc943
lea rcx, [rsp + 0x188]
call fcn.140101e10
jmp 0x1400fa7b8
mov qword [rsp + 0xf0], rax
xor ebx, ebx
lea rax, [rsp + 0x438]
mov qword [rsp + 0x70], rax
cmp rbx, 0x15
jae 0x1400fcc4a
cmp rbx, 1
jbe 0x1400fd2c4
mov r8d, 1
mov rcx, qword [rsp + 0x70]
mov rdx, rbx
call fcn.1400fecb0
jmp 0x1400fd2c4
mov rsi, qword [rsp + 0x888]
mov rcx, rsi
call fcn.1400fea40
mov rax, qword [rsi + 8]
mov rcx, qword [rsi + 0x10]
mov rdx, qword [rsp + 0x68]
jmp 0x1400fa79b
mov rsi, qword [rsp + 0x880]
mov rcx, rsi
call fcn.1400fe7d0
mov rax, qword [rsi + 8]
mov rcx, qword [rsi + 0x10]
mov rdx, qword [rsp + 0x90]
jmp 0x1400fa7fc
mov qword [rsp + 0xd0], rdi
mov rsi, rdi
xor eax, eax
xor edi, edi
mov r13d, 0x48
mov ebp, pe_nt_image_headers64
mov qword [rsp + 0xf0], rax
mov r14d, eax
lea eax, [r13 + 0x1a]
inc rsi
mov edx, r13d
neg edx
mov r8d, 1
mov r9d, 0x24
mov ecx, edi
movzx r10d, byte [rsi - 1]
lea r11d, [r10 - 0x30]
cmp r11b, 0xa
jb 0x1400fc9b0
nop word cs:[rax + rax]
lea r11d, [r10 - 0x41]
cmp r11b, 0x1a
jb 0x1400fc9b7
add r10b, 0x9f
mov r11d, r10d
cmp r10b, 0x19
jbe 0x1400fc9b7
jmp 0x1400fd56c
add r10b, 0xea
mov r11d, r10d
movzx r11d, r11b
mov r10d, r8d
imul r10d, r11d
add ecx, r10d
lea r10d, [rdx + r9]
cmp r9d, eax
mov ebx, 0x1a
cmovae r10d, ebx
cmp r9d, r13d
mov ebx, 1
cmovbe r10d, ebx
cmp r10d, r11d
ja 0x1400fca18
cmp rsi, r15
je 0x1400fd56c
add r9d, 0x24
mov r11d, 0x24
sub r11d, r10d
imul r8d, r11d
inc rsi
movzx r10d, byte [rsi - 1]
lea r11d, [r10 - 0x30]
cmp r11b, 0xa
jae 0x1400fc990
jmp 0x1400fc9b0
inc r14d
je 0x1400fe02d
mov eax, ecx
sub eax, edi
test edi, edi
mov r8d, 2
mov edx, 0x2bc
cmove r8d, edx
xor r13d, r13d
xor edx, edx
div r8d
mov r8d, eax
xor edx, edx
div r14d
add eax, r8d
cmp eax, 0x1c8
jb 0x1400fca8a
xor r13d, r13d
mov r9d, 0xd41d41d5
nop dword [rax]
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 0x1400fca60
jmp 0x1400fca8d
mov r8d, eax
lea eax, [r8*4]
lea eax, [rax + rax*8]
add r8d, 0x26
xor edx, edx
div r8w
mov ebx, eax
mov eax, ecx
xor edx, edx
div r14d
add ebp, eax
cmp ebp, 0x110000
je 0x1400fd56c
mov eax, ebp
xor eax, 0xd800
add eax, 0xffef0000
cmp eax, 0xffef0800
jb 0x1400fd56c
mov edi, edx
mov rax, qword [rsp + 0x7e8]
mov rcx, rax
lea rdx, [rsp + 0x438]
cmp rax, 0x3c
jb 0x1400fcafb
mov rcx, qword [rsp + 0x438]
mov rdx, qword [rsp + 0x440]
mov r12d, edi
test rcx, rcx
je 0x1400fcb33
shl rcx, 4
xor eax, eax
jmp 0x1400fcb19
add rax, 0x10
cmp rcx, rax
je 0x1400fcb2b
mov r8, qword [rdx + rax]
cmp r8, r12
jb 0x1400fcb10
inc r8
mov qword [rdx + rax], r8
jmp 0x1400fcb10
mov rax, qword [rsp + 0x7e8]
cmp rax, 0x3c
jb 0x1400fcb53
mov rcx, qword [rsp + 0x438]
mov rdx, qword [rsp + 0x440]
lea r8, [rsp + 0x438]
jmp 0x1400fcb6b
mov rcx, rax
lea rdx, [rsp + 0x438]
lea r8, [rsp + 0x7e8]
mov eax, 0x3b
cmp rcx, rax
jne 0x1400fcb95
lea rcx, [rsp + 0x430]
call fcn.1400fed80
mov rcx, qword [rsp + 0x438]
mov rdx, qword [rsp + 0x440]
lea r8, [rsp + 0x438]
shl rcx, 4
mov qword [rdx + rcx], r12
mov dword [rdx + rcx + 8], ebp
inc qword [r8]
movzx eax, bx
add r13d, eax
inc edi
cmp rsi, r15
mov r12, qword [rsp + 0xb8]
jne 0x1400fc95b
mov rbx, qword [rsp + 0x7e8]
cmp rbx, 0x3c
jb 0x1400fcc21
mov rbx, qword [rsp + 0x438]
mov rax, qword [rsp + 0x440]
jmp 0x1400fcc29
mov rsi, qword [rsp + 0x888]
mov rcx, rsi
call fcn.1400fea40
mov rax, qword [rsi + 8]
mov rcx, qword [rsi + 0x10]
mov rdx, qword [rsp + 0x68]
jmp 0x1400fab01
mov rsi, qword [rsp + 0x888]
mov rcx, rsi
call fcn.1400fea40
mov rax, qword [rsi + 8]
mov rcx, qword [rsi + 0x10]
mov rdx, qword [rsp + 0x68]
jmp 0x1400fc83d
lea rax, [rsp + 0x438]
mov qword [rsp + 0x70], rax
mov r14, qword [rsp + 0x28]
mov r13, qword [rsp + 0x50]
mov rdi, qword [rsp + 0xd0]
cmp rbx, 0x15
jb 0x1400fc8cd
lea rcx, [rbx*8]
movabs rax, 0x7ffffffffffffff0
and rcx, rax
movzx eax, byte [0x14037f348]
mov edx, 8
call fcn.14012d400
test rax, rax
je 0x1400fe39a
mov rsi, rax
mov qword [rsp + 0xd0], rdi
movzx eax, byte [0x14037f348]
mov ecx, 0x100
mov edx, 8
call fcn.14012d400
test rax, rax
mov qword [rsp + 0x48], rsi
je 0x1400fe3a4
mov r13, rax
mov rax, qword [rsp + 0x70]
lea rcx, [rax + 0x20]
mov qword [rsp + 0xa0], rcx
lea rcx, [rax + 8]
mov qword [rsp + 0x128], rcx
lea rcx, [rax - 8]
mov qword [rsp + 0x3a0], rcx
add rax, 0xfffffffffffffff0
mov qword [rsp + 0x148], rax
mov eax, 0x10
mov qword [rsp + 0xf8], rax
xor ebp, ebp
xor r15d, r15d
mov qword [rsp + 0xe8], rbx
jmp 0x1400fcd10
mov r15d, 1
mov rbp, qword [rsp + 0x40]
cmp rbp, rbx
jae 0x1400fd295
mov r8, rbx
sub r8, rbp
mov rax, rbp
shl rax, 4
mov rcx, qword [rsp + 0x70]
add rcx, rax
cmp r8, 2
jae 0x1400fcd83
mov rdx, rbx
mov rdi, rdx
sub rdi, rbp
jb 0x1400fe1f2
cmp rdx, rbx
ja 0x1400fe1f2
jae 0x1400fcdac
cmp r8, 0xa
jae 0x1400fcdac
lea rdi, [rbp + 0xa]
cmp rdi, rbx
cmovae rdi, rbx
mov qword [rsp + 0x40], rdi
sub rdi, rbp
jb 0x1400fe25d
cmp r8, 1
adc r8, 0
mov rdx, rdi
call fcn.1400fecb0
cmp r15, qword [rsp + 0xf8]
je 0x1400fcdbb
jmp 0x1400fce19
mov rdx, qword [rcx]
mov r9, qword [rcx + 0x10]
cmp r9, rdx
jae 0x1400fd15d
cmp r8, 2
jne 0x1400fd172
lea rdx, [rbp + 2]
mov r8d, 2
jmp 0x1400fd1f2
mov qword [rsp + 0x40], rdx
cmp r15, qword [rsp + 0xf8]
jne 0x1400fce19
mov rcx, r15
shl rcx, 5
movzx eax, byte [0x14037f348]
mov edx, 8
call fcn.14012d400
test rax, rax
je 0x1400fe240
mov rbx, rax
lea rax, [r15 + r15]
mov qword [rsp + 0xf8], rax
mov r8, r15
shl r8, 4
mov rcx, rbx
mov rdx, r13
call sub.msvcrt.dll_memcpy
mov rcx, qword [0x14037f2d0]
xor edx, edx
mov r8, r13
call fcn.1402699cc
mov r13, rbx
mov rbx, qword [rsp + 0xe8]
mov rax, r15
shl rax, 4
mov qword [r13 + rax], rdi
mov qword [r13 + rax + 8], rbp
inc r15
cmp r15, 2
jb 0x1400fcd02
mov qword [rsp + 0x150], r13
jmp 0x1400fced9
mov rdi, r13
mov rdx, rsi
mov r14, qword [rsp + 0x28]
sub rbx, rdx
mov rcx, rdi
mov r8, rbx
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x60]
add rax, r12
mov rcx, qword [rsp + 0x30]
mov qword [rcx], rax
mov rax, qword [rsp + 0xa8]
mov rcx, qword [rsp + 0x78]
mov qword [rcx], rax
mov rcx, qword [rsp + 0x98]
lea rdx, [rcx + 0x10]
mov rax, qword [rsp + 0xb0]
not rax
add rbp, rax
shl rbp, 4
mov r8, rbp
call sub.msvcrt.dll_memmove
mov r15, qword [rsp + 0x88]
cmp r15, 1
mov r12, qword [rsp + 0xb8]
mov r13, qword [rsp + 0x150]
mov rbx, qword [rsp + 0xe8]
jbe 0x1400fccfc
mov rbp, r15
lea r10, [r15 - 1]
mov rcx, r10
shl rcx, 4
mov rax, qword [r13 + rcx]
mov rcx, qword [r13 + rcx + 8]
add rcx, rax
cmp rcx, rbx
je 0x1400fcf50
mov rdx, rbp
shl rdx, 4
mov r8, qword [rdx + r13 - 0x20]
cmp r8, rax
jbe 0x1400fcf50
cmp rbp, 2
jbe 0x1400fd277
lea r11, [rbp - 3]
mov rcx, r11
shl rcx, 4
mov rcx, qword [r13 + rcx]
lea r9, [r8 + rax]
cmp rcx, r9
jbe 0x1400fcf66
cmp rbp, 3
jbe 0x1400fd282
add r8, rcx
cmp qword [rdx + r13 - 0x40], r8
jbe 0x1400fcf66
jmp 0x1400fd28d
cmp rbp, 3
jb 0x1400fcf6b
lea r11, [rbp - 3]
mov rcx, r11
shl rcx, 4
mov rcx, qword [r13 + rcx]
cmp rcx, rax
jb 0x1400fcf6f
lea r11, [rbp - 2]
cmp rbp, r11
jbe 0x1400fe0f9
mov qword [rsp + 0x88], r10
lea rax, [r11 + 1]
cmp rbp, rax
jbe 0x1400fe111
mov rdx, r11
shl rdx, 4
mov rdi, qword [r13 + rdx + 8]
shl rax, 4
mov r8, qword [r13 + rax]
mov r15, qword [r13 + rax + 8]
add r15, r8
mov rsi, r15
sub rsi, rdi
jb 0x1400fe171
cmp r15, rbx
ja 0x1400fe155
mov qword [rsp + 0x60], r8
mov qword [rsp + 0xb0], r11
lea r8, [rdx + r13]
mov qword [rsp + 0x98], r8
mov r12, qword [r13 + rdx]
lea rdx, [r13 + rax]
mov qword [rsp + 0x30], rdx
add rax, r13
add rax, 8
mov qword [rsp + 0x78], rax
mov qword [rsp + 0xa8], rdi
shl rdi, 4
add rdi, qword [rsp + 0x70]
mov rbx, r12
shl rbx, 4
lea r13, [rdi + rbx]
shl r15, 4
mov r14, rsi
sub r14, r12
cmp r14, r12
jae 0x1400fd0c0
mov rbx, r14
shl rbx, 4
mov rsi, qword [rsp + 0x48]
mov rcx, rsi
mov rdx, r13
mov r8, rbx
call sub.msvcrt.dll_memcpy
add rbx, rsi
test r12, r12
jle 0x1400fce50
test r14, r14
jle 0x1400fce50
add r15, qword [rsp + 0x148]
mov r14, qword [rsp + 0x28]
nop
mov rax, r13
mov rcx, rbx
mov rdx, qword [rbx - 0x10]
mov r8, qword [r13 - 0x10]
cmp rdx, r8
mov r13d, 0
sbb r13, r13
cmp rdx, r8
mov ebx, 0
adc rbx, 0xffffffffffffffff
shl r13, 4
add r13, rax
shl rbx, 4
add rbx, rcx
cmp rdx, r8
mov rax, rbx
cmovb rax, r13
movdqu xmm0, xmmword [rax]
movdqu xmmword [r15], xmm0
cmp r13, rdi
jbe 0x1400fd0b5
add r15, 0xfffffffffffffff0
cmp rbx, rsi
ja 0x1400fd060
mov rdi, r13
jmp 0x1400fd155
mov r14, qword [rsp + 0x48]
mov rcx, r14
mov rdx, rdi
mov r8, rbx
call sub.msvcrt.dll_memcpy
add rbx, r14
test r12, r12
mov r14, qword [rsp + 0x28]
jle 0x1400fd150
cmp rsi, r12
jle 0x1400fd150
add r15, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x48]
mov rdx, rsi
nop word cs:[rax + rax]
mov r8, rdx
mov rcx, qword [r13]
xor edx, edx
xor eax, eax
cmp rcx, qword [r8]
setae dl
setb cl
mov r9, r8
cmovb r9, r13
movdqu xmm0, xmmword [r9]
movdqu xmmword [rdi], xmm0
add rdi, 0x10
shl rdx, 4
add rdx, r8
cmp rdx, rbx
jae 0x1400fce5b
mov al, cl
shl rax, 4
add r13, rax
cmp r13, r15
jb 0x1400fd100
jmp 0x1400fce5b
mov rsi, qword [rsp + 0x48]
mov rdx, rsi
jmp 0x1400fce5b
cmp r8, 2
jne 0x1400fd1a9
lea rdx, [rbp + 2]
mov r8d, 2
jmp 0x1400fcd2e
mov r10, qword [rsp + 0xa0]
lea r11, [r10 + rax]
mov r10d, 2
mov rsi, r9
nop word [rax + rax]
mov rdi, rsi
mov rsi, qword [r11]
cmp rsi, rdi
jae 0x1400fd1da
inc r10
add r11, 0x10
cmp r8, r10
jne 0x1400fd190
jmp 0x1400fd1d7
mov r10, qword [rsp + 0xa0]
lea r11, [r10 + rax]
mov r10d, 2
mov rsi, r9
nop
mov rdi, rsi
mov rsi, qword [r11]
cmp rsi, rdi
jb 0x1400fd1da
inc r10
add r11, 0x10
cmp r8, r10
jne 0x1400fd1c0
mov r10, r8
lea r11, [r10 + rbp]
mov r8, r10
cmp r9, rdx
mov rdx, r11
mov rsi, qword [rsp + 0x48]
jae 0x1400fcd2e
cmp rbp, rdx
ja 0x1400fe31d
cmp rdx, rbx
ja 0x1400fe306
cmp r8, 2
jb 0x1400fcd2e
mov qword [rsp + 0x40], rdx
mov rdx, r8
shr rdx, 1
add rax, qword [rsp + 0x128]
lea r9, [r8 + rbp]
shl r9, 4
add r9, qword [rsp + 0x3a0]
nop word cs:[rax + rax]
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 0x1400fd240
mov rsi, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x40]
jmp 0x1400fcd2e
mov r15d, 2
jmp 0x1400fcd02
mov r15d, 3
jmp 0x1400fcd02
mov r15, rbp
jmp 0x1400fcd02
mov rcx, qword [0x14037f2d0]
xor edx, edx
mov r8, r13
call fcn.1402699cc
mov rcx, qword [0x14037f2d0]
xor edx, edx
mov r8, rsi
call fcn.1402699cc
mov r13, qword [rsp + 0x50]
mov rdi, qword [rsp + 0xd0]
mov rax, qword [rsp + 0x7e8]
lea rcx, [rsp + 0x438]
cmp rax, 0x3c
jb 0x1400fd2ea
mov rax, qword [rsp + 0x438]
mov rcx, qword [rsp + 0x440]
mov r9, qword [rsp + 0xf0]
lea rdx, [rdi + r9]
add r9, rax
lea r8, [rsp + 0x418]
movups xmmword [r8], xmm6
mov qword [rsp + 0x3f8], rdi
mov qword [rsp + 0x400], rdx
mov qword [rsp + 0x408], rcx
mov qword [rsp + 0x410], rax
mov qword [rsp + 0x428], r9
mov qword [rsp + 0x390], 0
mov dword [rsp + 0x2a0], 0
lea rcx, [rsp + 0x2a0]
lea rdx, [rsp + 0x3f8]
call fcn.1400feff0
mov rax, qword [rsp + 0x390]
lea r9, [rsp + 0x2a4]
cmp rax, 0x3c
jb 0x1400fd37f
mov rax, qword [rsp + 0x2a8]
mov r9, qword [rsp + 0x2b0]
mov qword [rsp + 0x20], rax
mov rcx, qword [rsp + 0xe0]
mov rdx, qword [rsp + 0x880]
mov r8, qword [rsp + 0x58]
call fcn.1400ff270
test al, al
jne 0x1400fdf78
mov rcx, qword [rsp + 0x880]
mov rdx, qword [rsp + 0x58]
call fcn.1401002b0
mov r8, rdx
mov byte [rsp + 0x20], 1
mov rcx, qword [rsp + 0xe0]
mov rdx, rax
mov r9b, 1
call fcn.140100300
test al, al
jne 0x1400fdf78
cmp qword [rsp + 0x390], 0x3c
jb 0x1400fd42f
mov r8, qword [rsp + 0x2b0]
mov rcx, qword [0x14037f2d0]
xor edx, edx
call fcn.1402699cc
cmp qword [rsp + 0x7e8], 0x3c
jae 0x1400fd43a
mov rdx, qword [rsp + 0x100]
mov r8, qword [rdx]
cmp r8, 9
jb 0x1400fd461
mov rcx, qword [rsp + 0x888]
mov rax, qword [rcx + 8]
mov rcx, qword [rcx + 0x10]
mov rdx, qword [rsp + 0x68]
jmp 0x1400fd46f
cmp qword [rsp + 0x7e8], 0x3c
jb 0x1400fd407
mov r8, qword [rsp + 0x440]
mov rcx, qword [0x14037f2d0]
xor edx, edx
call fcn.1402699cc
mov rdx, qword [rsp + 0x100]
mov r8, qword [rdx]
cmp r8, 9
jae 0x1400fd418
mov rax, r8
mov rcx, qword [rsp + 0x68]
mov r8d, 8
cmp rax, r8
je 0x1400fd48f
lea rax, [rax + rax*2]
mov qword [rcx + rax*8], 1
mov qword [rcx + rax*8 + 8], r12
mov qword [rcx + rax*8 + 0x10], r13
jmp 0x1400fc853
mov rsi, qword [rsp + 0x888]
mov rcx, rsi
call fcn.1400fea40
mov rax, qword [rsi + 8]
mov rcx, qword [rsi + 0x10]
mov rdx, qword [rsp + 0x68]
jmp 0x1400fd474
jmp 0x1400fd4b0
jmp 0x1400fd4c0
mov rax, qword [rsp + 0x38]
mov qword [rax], 0
mov word [rax + 8], 0x100
cmp qword [rsp + 0x1d0], 0x12
jae 0x1400fd52c
jmp 0x1400fd542
mov rax, qword [rsp + 0x38]
mov qword [rax], 0
mov word [rax + 8], 0x100
cmp qword [rsp + 0x7e8], 0x3c
jb 0x1400fd521
mov r8, qword [rsp + 0x440]
mov rcx, qword [0x14037f2d0]
xor edx, edx
call fcn.1402699cc
cmp qword [rsp + 0x1d0], 0x12
jae 0x1400fd52c
jmp 0x1400fd542
cmp qword [rsp + 0x1d0], 0x12
jb 0x1400fd542
mov r8, qword [rsp + 0x198]
mov rcx, qword [0x14037f2d0]
xor edx, edx
call fcn.1402699cc
cmp qword [rsp + 0x268], 0
je 0x1400fa400
mov r8, qword [rsp + 0x258]
mov rcx, qword [0x14037f2d0]
xor edx, edx
call fcn.1402699cc
jmp 0x1400fa400
mov rax, qword [rsp + 0x38]
mov qword [rax], 0
mov word [rax + 8], 0x100
cmp qword [rsp + 0x7e8], 0x3c
jb 0x1400fa400
mov r8, qword [rsp + 0x440]
jmp 0x1400fd559
mov r13, qword [r14]
mov r11, qword [rsp + 0x80]
mov rsi, r13
cmp r13, 0xfe
jb 0x1400fd5be
mov rax, qword [rsp + 0x880]
mov rsi, qword [rax + 8]
mov r11, qword [rax + 0x10]
test rsi, rsi
je 0x1400fd783
mov rax, qword [rsp + 0xe0]
mov rdx, qword [rax + 0x158]
shl rsi, 2
xor edi, edi
mov ebx, 0xffff
mov ebp, 0x2022
jmp 0x1400fd60c
cmp r9, rax
mov r10d, dword [rdx + 0x44]
movzx eax, cl
cmovbe eax, r10d
bt ebp, eax
jb 0x1400fd7a2
add rdi, 4
cmp rsi, rdi
je 0x1400fd783
mov r10d, dword [r11 + rdi]
lea eax, [r10 - 0x11000]
cmp eax, 0xd800
jb 0x1400fd5ff
lea eax, [r10 - 0xff00]
cmp eax, 0x900
jb 0x1400fd5ff
lea eax, [r10 - 0x1f000]
cmp eax, 0x21000
jb 0x1400fd5ff
cmp r10d, 0x590
jb 0x1400fd5ff
lea eax, [r10 - 0x900]
cmp eax, 0xf21d
jb 0x1400fd5ff
movzx r14d, byte [rdx + 0x40]
test r14b, r14b
mov r8d, 0xfff
cmove r8d, ebx
cmp r8d, r10d
jae 0x1400fd6dc
cmp dword [rdx + 0x30], r10d
jbe 0x1400fd6f8
mov ecx, r10d
shr ecx, 0xe
lea eax, [rcx + 0x40]
add ecx, 0x3fc
test r14b, r14b
cmovne ecx, eax
mov rax, qword [rdx + 8]
cmp rax, rcx
jbe 0x1400fd75f
mov r9, qword [rdx]
movzx r15d, word [r9 + rcx*2]
mov ecx, r10d
shr ecx, 9
and ecx, 0x1f
add rcx, r15
cmp rax, rcx
jbe 0x1400fd75f
movzx r12d, word [r9 + rcx*2]
mov ecx, r10d
shr ecx, 4
mov r15d, ecx
and r15d, 0x1f
test r12w, r12w
js 0x1400fd702
add r15, r12
cmp rax, r15
jbe 0x1400fd75f
movzx eax, word [r9 + r15*2]
jmp 0x1400fd756
mov eax, r10d
shr eax, 6
cmp qword [rdx + 8], rax
jbe 0x1400fd75f
mov rcx, qword [rdx]
movzx eax, word [rcx + rax*2]
and r10d, 0x3f
add r10d, eax
jmp 0x1400fd766
mov r10d, dword [rdx + 0x20]
add r10d, 0xfffffffe
jmp 0x1400fd766
and r12d, 0x7fff
mov qword [rsp + 0xa8], r13
mov r13d, ecx
and r13d, 0x18
shr r15d, 3
or r15d, r13d
mov r13, qword [rsp + 0xa8]
add r15, r12
cmp rax, r15
jbe 0x1400fd75f
and ecx, 7
lea r12d, [rcx + r15]
inc r12d
cmp rax, r12
jbe 0x1400fd75f
movzx eax, word [r9 + r15*2]
add ecx, ecx
add cl, 2
shl eax, cl
movzx ecx, word [r9 + r12*2]
and eax, 0x30000
or eax, ecx
and r10d, 0xf
add r10d, eax
jmp 0x1400fd766
mov r10d, dword [rdx + 0x20]
dec r10d
mov r9, qword [rdx + 0x20]
mov eax, r10d
cmp r9, rax
jbe 0x1400fd5e8
mov rcx, qword [rdx + 0x18]
movzx ecx, byte [rcx + rax]
jmp 0x1400fd5e8
xor esi, esi
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0xd8]
mov qword [rax], rcx
mov byte [rax + 8], sil
mov byte [rax + 9], 0
jmp 0x1400fa400
cmp r13, 0xfe
jb 0x1400fd7c3
mov rax, qword [rsp + 0x880]
mov r13, qword [rax + 8]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x80], rax
lea r11d, [r9 - 1]
lea eax, [r9 - 2]
mov dword [rsp + 0xb0], eax
test r14b, r14b
mov eax, 0xffff
mov ecx, 0xfff
cmove ecx, eax
mov dword [rsp + 0x88], ecx
mov eax, 0x3fc
mov ecx, 0x40
cmove ecx, eax
mov dword [rsp + 0x60], ecx
mov dword [rsp + 0x98], r11d
jmp 0x1400fd819
cmp r15d, 0x2e
mov r13, qword [rsp + 0xa8]
mov sil, 1
jne 0x1400fd785
mov r14, qword [rsp + 0x80]
mov sil, 1
test r13, r13
je 0x1400fd785
lea rax, [r13*4]
xor r12d, r12d
nop dword [rax + rax]
mov r15d, dword [r14 + r12*4]
cmp r15d, 0x2e
je 0x1400fd871
inc r12
add rax, 0xfffffffffffffffc
jne 0x1400fd840
lea rax, [0x140347980]
mov qword [rsp + 0x80], rax
mov r12, r13
xor eax, eax
mov qword [rsp + 0xa8], rax
jmp 0x1400fd891
lea rax, [r12 + 1]
lea rcx, [r14 + r12*4]
add rcx, 4
mov qword [rsp + 0x80], rcx
sub r13, rax
mov qword [rsp + 0xa8], r13
test r12, r12
je 0x1400fd804
mov esi, dword [r14]
cmp dword [rsp + 0x88], esi
jae 0x1400fd90c
mov edi, dword [rsp + 0xb0]
cmp dword [rdx + 0x30], esi
jbe 0x1400fd928
mov eax, esi
shr eax, 0xe
add eax, dword [rsp + 0x60]
mov r13, qword [rdx + 8]
mov edi, r11d
cmp r13, rax
jbe 0x1400fd928
mov rbx, qword [rdx]
movzx ecx, word [rbx + rax*2]
mov eax, esi
shr eax, 9
and eax, 0x1f
add rax, rcx
mov edi, r11d
cmp r13, rax
jbe 0x1400fd928
movzx ebp, word [rbx + rax*2]
mov ecx, esi
shr ecx, 4
mov eax, ecx
and eax, 0x1f
test bp, bp
js 0x1400fdea9
add rax, rbp
mov edi, r11d
cmp r13, rax
jbe 0x1400fd928
movzx eax, word [rbx + rax*2]
jmp 0x1400fdef2
mov eax, esi
shr eax, 6
mov edi, r11d
cmp qword [rdx + 8], rax
jbe 0x1400fd928
mov rcx, qword [rdx]
movzx eax, word [rcx + rax*2]
and esi, 0x3f
add esi, eax
mov edi, esi
mov eax, edi
mov ebx, r10d
cmp r9, rax
jbe 0x1400fd93a
mov rcx, qword [rdx + 0x18]
movzx ebx, byte [rcx + rax]
movzx eax, bl
mov ecx, 0x2003
bt ecx, eax
jae 0x1400fdf61
mov r13, r12
dec r13
je 0x1400fd804
mov esi, dword [r14 + r12*4 - 4]
cmp dword [rsp + 0x88], esi
jae 0x1400fd9e4
mov edi, dword [rsp + 0xb0]
cmp dword [rdx + 0x30], esi
jbe 0x1400fda00
mov eax, esi
shr eax, 0xe
add eax, dword [rsp + 0x60]
mov rcx, qword [rdx + 8]
mov edi, r11d
cmp rcx, rax
jbe 0x1400fda00
mov rbp, qword [rdx]
movzx edi, word [rbp + rax*2]
mov eax, esi
shr eax, 9
and eax, 0x1f
add rax, rdi
mov edi, r11d
cmp rcx, rax
jbe 0x1400fda00
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x78], rbp
movzx ebp, word [rbp + rax*2]
mov ecx, esi
shr ecx, 4
mov eax, ecx
and eax, 0x1f
test bp, bp
js 0x1400fdefa
mov eax, eax
add rax, rbp
mov edi, r11d
cmp qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x78]
jbe 0x1400fda00
movzx eax, word [rcx + rax*2]
jmp 0x1400fdf59
mov eax, esi
shr eax, 6
mov edi, r11d
cmp qword [rdx + 8], rax
jbe 0x1400fda00
mov rcx, qword [rdx]
movzx eax, word [rcx + rax*2]
and esi, 0x3f
add esi, eax
mov edi, esi
mov eax, edi
mov esi, r10d
cmp r9, rax
jbe 0x1400fda12
mov rcx, qword [rdx + 0x18]
movzx esi, byte [rcx + rax]
cmp sil, 0x11
jne 0x1400fdb42
dec r12
mov r13, r12
jmp 0x1400fda31
dec r13
cmp sil, 0x11
jne 0x1400fdb42
cmp r13, 1
je 0x1400fd804
mov esi, dword [r14 + r13*4 - 4]
cmp dword [rsp + 0x88], esi
jae 0x1400fdaae
mov edi, dword [rsp + 0xb0]
cmp dword [rdx + 0x30], esi
jbe 0x1400fdaca
mov eax, esi
shr eax, 0xe
add eax, dword [rsp + 0x60]
mov rbp, qword [rdx + 8]
mov edi, r11d
cmp rbp, rax
jbe 0x1400fdaca
mov r12, qword [rdx]
movzx ecx, word [r12 + rax*2]
mov eax, esi
shr eax, 9
and eax, 0x1f
add rax, rcx
mov edi, r11d
cmp rbp, rax
jbe 0x1400fdaca
movzx edi, word [r12 + rax*2]
mov ecx, esi
shr ecx, 4
mov eax, ecx
and eax, 0x1f
test di, di
js 0x1400fdae5
add rax, rdi
mov edi, r11d
cmp rbp, rax
jbe 0x1400fdaca
movzx eax, word [r12 + rax*2]
jmp 0x1400fdb3d
mov eax, esi
shr eax, 6
mov edi, r11d
cmp qword [rdx + 8], rax
jbe 0x1400fdaca
mov rcx, qword [rdx]
movzx eax, word [rcx + rax*2]
and esi, 0x3f
add esi, eax
mov edi, esi
mov eax, edi
mov esi, r10d
cmp r9, rax
jbe 0x1400fda24
mov rcx, qword [rdx + 0x18]
movzx esi, byte [rcx + rax]
jmp 0x1400fda24
and edi, 0x7fff
mov byte [rsp + 0x30], bl
mov ebx, ecx
and ebx, 0x18
shr eax, 3
or eax, ebx
movzx ebx, byte [rsp + 0x30]
add rax, rdi
mov edi, r11d
cmp rbp, rax
jbe 0x1400fdaca
and ecx, 7
lea edi, [rcx + rax]
inc edi
mov qword [rsp + 0x78], rdi
mov edi, r11d
cmp rbp, qword [rsp + 0x78]
mov rbp, qword [rsp + 0x78]
jbe 0x1400fdaca
movzx eax, word [r12 + rax*2]
add ecx, ecx
add cl, 2
shl eax, cl
movzx ecx, word [r12 + rbp*2]
and eax, 0x30000
or eax, ecx
and esi, 0xf
jmp 0x1400fdac6
test bl, bl
mov eax, 0x2026
mov ecx, 5
cmove eax, ecx
movzx ecx, sil
bt eax, ecx
jae 0x1400fdf61
test bl, bl
je 0x1400fdd44
cmp r13, 1
je 0x1400fd804
shl r13, 2
mov ebx, 4
xor r12d, r12d
jmp 0x1400fdba1
cmp al, 5
sete cl
add cl, cl
cmp al, 2
movzx r12d, cl
mov eax, 1
cmove r12d, eax
add rbx, 4
cmp r13, rbx
je 0x1400fde80
mov ebp, dword [r14 + rbx]
cmp dword [rsp + 0x88], ebp
jae 0x1400fdc3a
mov edi, dword [rsp + 0xb0]
cmp dword [rdx + 0x30], ebp
jbe 0x1400fdc56
mov ecx, ebp
shr ecx, 0xe
add ecx, dword [rsp + 0x60]
mov rax, qword [rdx + 8]
mov edi, dword [rsp + 0x98]
cmp rax, rcx
jbe 0x1400fdc56
mov r11, qword [rdx]
movzx edi, word [r11 + rcx*2]
mov ecx, ebp
shr ecx, 9
and ecx, 0x1f
add rcx, rdi
mov edi, dword [rsp + 0x98]
cmp rax, rcx
jbe 0x1400fdc56
mov qword [rsp + 0x30], r11
movzx edi, word [r11 + rcx*2]
mov ecx, ebp
shr ecx, 4
mov r11d, ecx
and r11d, 0x1f
test di, di
js 0x1400fdcb3
add r11, rdi
mov edi, dword [rsp + 0x98]
cmp rax, r11
mov rax, qword [rsp + 0x30]
jbe 0x1400fdc56
mov rcx, r11
movzx eax, word [rax + r11*2]
jmp 0x1400fdd3c
mov eax, ebp
shr eax, 6
mov edi, r11d
cmp qword [rdx + 8], rax
jbe 0x1400fdc56
mov rcx, qword [rdx]
movzx eax, word [rcx + rax*2]
and ebp, 0x3f
add ebp, eax
mov edi, ebp
mov ecx, edi
mov eax, r10d
cmp r9, rcx
jbe 0x1400fdc68
mov rax, qword [rdx + 0x18]
movzx eax, byte [rax + rcx]
movzx ecx, al
mov edi, 0x6247e
bt edi, ecx
mov r11d, dword [rsp + 0x98]
jae 0x1400fdf61
test r12b, r12b
je 0x1400fdb7e
movzx ecx, r12b
cmp ecx, 1
jne 0x1400fdca3
mov r12b, 1
cmp al, 5
jne 0x1400fdb94
jmp 0x1400fdf61
mov r12b, 2
cmp al, 2
jne 0x1400fdb94
jmp 0x1400fdf61
and edi, 0x7fff
mov qword [rsp + 0x78], rcx
and ecx, 0x18
shr r11d, 3
or r11d, ecx
add r11, rdi
mov edi, dword [rsp + 0x98]
mov rcx, r11
mov qword [rsp + 0x28], r11
cmp rax, r11
jbe 0x1400fdc56
mov r11, qword [rsp + 0x78]
and r11d, 7
mov qword [rsp + 0x78], r11
mov rcx, qword [rsp + 0x28]
add ecx, r11d
inc ecx
mov qword [rsp + 0x48], rcx
mov edi, dword [rsp + 0x98]
mov rcx, qword [rsp + 0x78]
cmp rax, qword [rsp + 0x48]
jbe 0x1400fdc56
mov rdi, qword [rsp + 0x30]
mov rax, qword [rsp + 0x28]
movzx eax, word [rdi + rax*2]
add ecx, ecx
add cl, 2
shl eax, cl
mov rcx, qword [rsp + 0x48]
movzx ecx, word [rdi + rcx*2]
and eax, 0x30000
or eax, ecx
and ebp, 0xf
jmp 0x1400fdc52
cmp r13, 1
je 0x1400fd804
shl r13, 2
mov esi, 4
mov ebx, dword [r14 + rsi]
cmp r8d, ebx
jae 0x1400fddc5
mov edi, dword [rsp + 0xb0]
cmp dword [rdx + 0x30], ebx
jbe 0x1400fdde1
mov ecx, ebx
shr ecx, 0xe
add ecx, dword [rsp + 0x60]
mov rax, qword [rdx + 8]
mov edi, r11d
cmp rax, rcx
jbe 0x1400fdde1
mov r12, qword [rdx]
movzx edi, word [r12 + rcx*2]
mov ecx, ebx
shr ecx, 9
and ecx, 0x1f
add rcx, rdi
mov edi, r11d
cmp rax, rcx
jbe 0x1400fdde1
movzx edi, word [r12 + rcx*2]
mov ecx, ebx
shr ecx, 4
mov ebp, ecx
and ebp, 0x1f
test di, di
js 0x1400fde16
add rbp, rdi
mov edi, r11d
cmp rax, rbp
jbe 0x1400fdde1
movzx eax, word [r12 + rbp*2]
jmp 0x1400fde78
mov eax, ebx
shr eax, 6
mov edi, r11d
cmp qword [rdx + 8], rax
jbe 0x1400fdde1
mov rcx, qword [rdx]
movzx eax, word [rcx + rax*2]
and ebx, 0x3f
add ebx, eax
mov edi, ebx
mov eax, edi
mov ecx, r10d
cmp r9, rax
jbe 0x1400fddf3
mov rcx, qword [rdx + 0x18]
movzx ecx, byte [rcx + rax]
movzx eax, cl
mov ecx, 0x6045d
bt ecx, eax
jae 0x1400fdf61
add rsi, 4
cmp r13, rsi
jne 0x1400fdd57
jmp 0x1400fd804
and edi, 0x7fff
mov qword [rsp + 0x78], r12
mov r12d, ecx
mov dword [rsp + 0x30], ecx
and dword [rsp + 0x30], 0x18
shr ebp, 3
add ebp, dword [rsp + 0x30]
add rbp, rdi
mov edi, r11d
cmp rax, rbp
jbe 0x1400fdde1
and ecx, 7
lea edi, [rcx + rbp]
inc edi
mov qword [rsp + 0x30], rdi
mov edi, r11d
mov r12, qword [rsp + 0x78]
cmp rax, qword [rsp + 0x30]
jbe 0x1400fdde1
movzx eax, word [r12 + rbp*2]
add ecx, ecx
add cl, 2
shl eax, cl
mov rcx, qword [rsp + 0x30]
movzx ecx, word [r12 + rcx*2]
and eax, 0x30000
or eax, ecx
and ebx, 0xf
jmp 0x1400fdddd
cmp sil, 5
jne 0x1400fde90
cmp r12b, 1
je 0x1400fdf61
cmp sil, 2
jne 0x1400fd804
cmp r12b, 2
jne 0x1400fd804
jmp 0x1400fdf61
and ebp, 0x7fff
mov edi, ecx
and edi, 0x18
shr eax, 3
or eax, edi
add rax, rbp
mov edi, r11d
cmp r13, rax
jbe 0x1400fd928
and ecx, 7
lea ebp, [rcx + rax]
inc ebp
mov edi, r11d
cmp r13, rbp
jbe 0x1400fd928
movzx eax, word [rbx + rax*2]
add ecx, ecx
add cl, 2
shl eax, cl
movzx ecx, word [rbx + rbp*2]
and eax, 0x30000
or eax, ecx
and esi, 0xf
jmp 0x1400fd924
and ebp, 0x7fff
mov edi, ecx
and edi, 0x18
shr eax, 3
or eax, edi
add rax, rbp
mov edi, r11d
mov rbp, qword [rsp + 0x30]
cmp rbp, rax
jbe 0x1400fda00
and ecx, 7
lea edi, [rcx + rax]
inc edi
mov qword [rsp + 0x28], rdi
mov edi, r11d
cmp rbp, qword [rsp + 0x28]
mov rbp, qword [rsp + 0x28]
jbe 0x1400fda00
mov rdi, qword [rsp + 0x78]
movzx eax, word [rdi + rax*2]
add ecx, ecx
add cl, 2
shl eax, cl
movzx ecx, word [rdi + rbp*2]
and eax, 0x30000
or eax, ecx
and esi, 0xf
jmp 0x1400fd9fc
mov rax, qword [rsp + 0x38]
mov qword [rax], 0
mov word [rax + 8], 0x100
jmp 0x1400fa400
mov rax, qword [rsp + 0x38]
mov qword [rax], 0
mov word [rax + 8], 0x100
cmp qword [rsp + 0x390], 0x3c
jb 0x1400fd57e
mov r8, qword [rsp + 0x2b0]
mov rcx, qword [0x14037f2d0]
xor edx, edx
call fcn.1402699cc
jmp 0x1400fd57e
mov rax, qword [rsp + 0x38]
mov qword [rax], 0
mov word [rax + 8], 0x100
cmp qword [rsp + 0x390], 0x3c
jb 0x1400fd4f3
mov r8, qword [rsp + 0x2b0]
mov rcx, qword [0x14037f2d0]
xor edx, edx
call fcn.1402699cc
jmp 0x1400fd4f3
mov edx, 0x19
lea rax, str.attempt_to_divide_by_zero
mov qword [rsp + 0x118], rax
lea rax, str._usr_local_cargo_registry_src_index.crates.io_6f17d22bba15001f_idna_1.0.0_src_punycode.rs
mov qword [rsp + 0x120], rax
mov rcx, qword [rsp + 0x118]
mov r8, qword [rsp + 0x120]
call fcn.1400a7990
jmp 0x1400fe3bc
mov edx, 0x19
lea rax, str.attempt_to_divide_by_zero
mov qword [rsp + 0x118], rax
lea rax, str._usr_local_cargo_registry_src_index.crates.io_6f17d22bba15001f_idna_1.0.0_src_punycode.rs
mov qword [rsp + 0x120], rax
mov rcx, qword [rsp + 0x118]
mov r8, qword [rsp + 0x120]
call fcn.1400a7990
jmp 0x1400fe3bc
lea rax, [0x140341c78]
mov qword [rsp + 0x2a0], rax
lea rdx, [0x140341f00]
jmp 0x1400fe098
lea rax, [0x140341c78]
mov qword [rsp + 0x2a0], rax
lea rdx, [0x140341f18]
lea rcx, [rsp + 0x2a0]
mov qword [rcx + 8], 1
lea rax, [0x140347980]
mov qword [rcx + 0x10], rax
pxor xmm0, xmm0
movdqu xmmword [rcx + 0x18], xmm0
call fcn.1400a6c30
jmp 0x1400fe3bc
lea r8, [0x140341f30]
mov rcx, rsi
mov rdx, qword [rsp + 0xe8]
call fcn.1400a75f0
jmp 0x1400fe3bc
lea r8, [0x140341f30]
mov rcx, rdi
mov rdx, rsi
call fcn.1400abaa0
jmp 0x1400fe3bc
lea rax, [0x140341c78]
mov qword [rsp + 0x2a0], rax
lea rdx, [0x140341f00]
jmp 0x1400fe127
lea rax, [0x140341c78]
mov qword [rsp + 0x2a0], rax
lea rdx, [0x140341f18]
mov rcx, qword [rsp + 0x3a8]
mov qword [rcx + 8], 1
lea rax, [0x140347980]
mov qword [rcx + 0x10], rax
pxor xmm0, xmm0
movdqu xmmword [rcx + 0x18], xmm0
call fcn.1400a6c30
jmp 0x1400fe3bc
lea r8, [0x140341f30]
mov rcx, r15
mov rdx, qword [rsp + 0xe8]
call fcn.1400a75f0
jmp 0x1400fe3bc
lea r8, [0x140341f30]
mov rcx, rdi
mov rdx, r15
call fcn.1400abaa0
jmp 0x1400fe3bc
mov edx, 0x1c
jmp 0x1400fe2db
lea rax, str._usr_local_cargo_registry_src_index.crates.io_6f17d22bba15001f_idna_1.0.0_src_uts46.rsPunycode_overflows_should_not_be_possible_due_to_PUNYCODE_ENCODE_MAX_INPUT_LENGTH
mov qword [rsp + 0x140], rax
mov rcx, qword [rsp + 0x58]
mov r8, qword [rsp + 0x140]
call fcn.1400a6c70
jmp 0x1400fe3bc
lea rcx, str.assertion_failed:_end___start__end___len
lea r8, [0x140341fc0]
mov edx, 0x2c
call fcn.1400a7990
jmp 0x1400fe3bc
lea rcx, str.called__Option::unwrap____on_a__None__value
lea r8, [0x140341f78]
mov edx, 0x2b
call fcn.1400a7990
jmp 0x1400fe3bc
lea rcx, str.assertion_failed:_end___start__end___len
lea r8, [0x140341fc0]
mov edx, 0x2c
call fcn.1400a7990
jmp 0x1400fe3bc
mov edx, 0x1d
lea rax, str.assertion_failed:_index___len
mov qword [rsp + 0x138], rax
lea rax, str._usr_local_cargo_registry_src_index.crates.io_6f17d22bba15001f_smallvec_1.13.2_src_lib.rsrootAttributename
jmp 0x1400fe2d3
lea rax, [0x140341fd8]
mov qword [rsp + 0x110], rax
jmp 0x1400fe29e
lea rcx, str.called__Option::unwrap____on_a__None__value
lea r8, [0x140341f78]
mov edx, 0x2b
call fcn.1400a7990
jmp 0x1400fe3bc
lea rax, [0x140341fd8]
mov qword [rsp + 0x110], rax
jmp 0x1400fe322
mov qword [rsp + 0x58], rcx
lea rax, str._usr_local_cargo_registry_src_index.crates.io_6f17d22bba15001f_idna_1.0.0_src_uts46.rsPunycode_overflows_should_not_be_possible_due_to_PUNYCODE_ENCODE_MAX_INPUT_LENGTH
jmp 0x1400fe199
lea r8, [0x140341ee8]
mov rcx, rdx
mov rdx, r13
call fcn.1400a75f0
jmp 0x1400fe3bc
mov qword [rsp + 0x40], rdx
mov rcx, r14
mov rdx, qword [rsp + 0x40]
mov r8, qword [rsp + 0x110]
call fcn.1400abaa0
jmp 0x1400fe3bc
mov edx, 0x28
lea rax, str.internal_error:_entered_unreachable_code_rustc_07dca489ac2d933c78d3c5158e3f43beefeb02celibrary_std_src_threadmod.rs
mov qword [rsp + 0x138], rax
lea rax, str._usr_local_cargo_registry_src_index.crates.io_6f17d22bba15001f_idna_1.0.0_src_uts46.rsPunycode_overflows_should_not_be_possible_due_to_PUNYCODE_ENCODE_MAX_INPUT_LENGTH
mov qword [rsp + 0x130], rax
mov rcx, qword [rsp + 0x138]
mov r8, qword [rsp + 0x130]
call fcn.1400a7990
jmp 0x1400fe3bc
lea r8, str._usr_local_cargo_registry_src_index.crates.io_6f17d22bba15001f_idna_1.0.0_src_uts46.rsPunycode_overflows_should_not_be_possible_due_to_PUNYCODE_ENCODE_MAX_INPUT_LENGTH
call fcn.1400a6c70
jmp 0x1400fe3bc
lea r8, [0x140341ee8]
mov rcx, rdx
mov rdx, rbx
call fcn.1400a75f0
jmp 0x1400fe3bc
mov qword [rsp + 0x40], rdx
mov rcx, rbp
mov rdx, qword [rsp + 0x40]
mov r8, qword [rsp + 0x110]
call fcn.1400abaa0
jmp 0x1400fe3bc
test rax, rax
jne 0x1400fe390
lea rcx, str.capacity_overflow
lea r8, str._usr_local_cargo_registry_src_index.crates.io_6f17d22bba15001f_smallvec_1.13.2_src_lib.rsrootAttributename
mov edx, 0x11
call fcn.1400a7990
jmp 0x1400fe3bc
lea r8, str._usr_local_cargo_registry_src_index.crates.io_6f17d22bba15001f_idna_1.0.0_src_punycode.rs
mov rcx, rsi
call fcn.1400a6c70
jmp 0x1400fe3bc
mov edx, 0x2b
jmp 0x1400fe013
lea rcx, str.called__Option::unwrap____on_a__None__value
lea r8, [0x140341f60]
mov edx, 0x2b
call fcn.1400a7990
jmp 0x1400fe3bc
mov rcx, rax
call fcn.140054b50
jmp 0x1400fe3bc
mov edx, 0x2b
jmp 0x1400fe050
lea rcx, str.called__Option::unwrap____on_a__None__value
lea r8, [0x140341f60]
mov edx, 0x2b
call fcn.1400a7990
ud2