Function at 0x1400527f0
Capabilities:
Encrypt data using speck

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x288
movdqa xmmword [rsp + 0x270], xmm15
movdqa xmmword [rsp + 0x260], xmm14
movdqa xmmword [rsp + 0x250], xmm13
movdqa xmmword [rsp + 0x240], xmm12
movdqa xmmword [rsp + 0x230], xmm11
movdqa xmmword [rsp + 0x220], xmm10
movdqa xmmword [rsp + 0x210], xmm9
movdqa xmmword [rsp + 0x200], xmm8
movdqa xmmword [rsp + 0x1f0], xmm7
movaps xmmword [rsp + 0x1e0], xmm6
mov rsi, r9
mov r14, r8
mov rdi, rcx
mov r15, qword [rsp + 0x2f0]
test r9, r9
je 0x1400529c3
lea rax, [r14 + rsi]
xor ebx, ebx
movdqa xmm0, xmmword [str.xn__]
mov rcx, r14
jmp 0x1400528af
xor r9d, r9d
mov rbx, r9
cmp rcx, rax
je 0x14005370d
movzx r10d, byte [rcx]
movzx r8d, r10b
test r8b, r8b
js 0x1400528d0
inc rcx
cmp r8d, 0x2e
jne 0x140052960
jmp 0x1400528a0
mov r9d, r8d
and r9d, 0x1f
movzx r11d, byte [rcx + 1]
and r11d, 0x3f
cmp r8b, 0xdf
jbe 0x140052929
movzx r8d, byte [rcx + 2]
shl r11d, 6
and r8d, 0x3f
or r8d, r11d
cmp r10b, 0xf0
jb 0x140052942
movzx r10d, byte [rcx + 3]
add rcx, 4
and r9d, 7
shl r9d, 0x12
shl r8d, 6
and r10d, 0x3f
or r10d, r8d
or r10d, r9d
mov r8d, r10d
cmp r8d, 0x2e
jne 0x140052960
jmp 0x1400528a0
add rcx, 2
shl r9d, 6
or r9d, r11d
mov r8d, r9d
cmp r8d, 0x2e
jne 0x140052960
jmp 0x1400528a0
add rcx, 3
shl r9d, 0xc
or r8d, r9d
cmp r8d, 0x2e
je 0x1400528a0
nop word [rax + rax]
cmp r8d, 0x110000
je 0x14005370d
test rbx, rbx
jne 0x140052978
cmp r8d, 0x2d
je 0x1400529c3
mov r9d, 5
cmp rbx, 5
jae 0x1400529a7
movdqa xmmword [rsp + 0x30], xmm0
cmp rbx, 4
je 0x14005387a
cmp r8d, dword [rsp + rbx*4 + 0x30]
jne 0x1400529a7
inc rbx
mov r9, rbx
cmp rbx, 4
je 0x1400529c3
lea r10d, [r8 - 0x7b]
cmp r10d, 0xffffffe5
ja 0x1400528a3
add r8d, 0xffffffc6
cmp r8d, 0xfffffff6
jae 0x1400528a3
mov qword [rsp + 0x118], rdi
mov eax, dword [rdx + 0x30]
movzx ecx, byte [rdx + 0x34]
add rsi, r14
xorps xmm6, xmm6
movups xmmword [rsp + 0x12a], xmm6
movzx r8d, word [rsp + 0x138]
mov word [rsp + 0x46], r8w
movups xmm0, xmmword [rsp + 0x128]
movups xmmword [rsp + 0x36], xmm0
movups xmmword [rsp + 0x198], xmm6
mov dword [rsp + 0x30], 0
mov word [rsp + 0x34], 0
movdqu xmm0, xmmword [rsp + 0x190]
movdqu xmmword [rsp + 0x48], xmm0
mov r8, qword [rsp + 0x1a0]
mov qword [rsp + 0x58], r8
mov qword [rsp + 0x68], 0
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x78], r14
lea r8, [rsp + 0xd8]
mov qword [rsp + 0x80], r8
mov byte [rsp + 0x8c], cl
shl rcx, 0x20
or rcx, rax
mov qword [rsp + 0x100], rcx
mov qword [rsp + 0x28], rdx
mov qword [rdx + 0x10], 0
mov dword [rsp + 0xe0], 0
mov qword [rsp + 0xd8], 0
mov rcx, qword [r15 + 0x10]
mov qword [rsp + 0x110], rcx
mov dword [rsp + 0x88], eax
mov dword [rsp + 0x90], 0
mov word [rsp + 0x94], 0
mov byte [rsp + 0x98], 0
mov dword [rsp + 0x9c], 0
mov byte [rsp + 0xa0], 0
mov dword [rsp + 0xa4], 0
mov byte [rsp + 0xa8], 0
mov dword [rsp + 0xac], 0
mov byte [rsp + 0xb0], 0
mov dword [rsp + 0xb4], 0
mov byte [rsp + 0xb8], 0
mov qword [rsp + 0xc0], 0
mov dword [rsp + 0xd0], 0x110000
mov byte [rsp + 0xd4], 0
lea r13, [rsp + 0x50]
lea r15, [0x14012ffe8]
mov edi, 0xff
xor eax, eax
test rax, rax
je 0x140052be1
cmp rax, 1
jne 0x14005361d
mov rax, qword [rsp + 0xc8]
cmp dword [rsp + 0x30], 0
je 0x14005355f
cmp rax, qword [rsp + 0x48]
jae 0x1400536d0
mov rcx, qword [rsp + 0x40]
jmp 0x14005357c
mov ebx, esi
mov eax, 0xdee95c4d
imul rbx, rax
shr rbx, 0x29
lea edx, [rbx + 0x1100]
mov rcx, r13
call fcn.140056030
imul eax, ebx, 0x24c
mov ecx, esi
sub ecx, eax
imul eax, ecx, 0x925
shr eax, 0x10
add eax, 0x1161
movzx edx, ax
mov rcx, r13
call fcn.140056030
mov eax, esi
shr eax, 2
imul rax, rax, 0x24924925
shr rax, 0x20
lea ecx, [rax + rax*8]
lea ecx, [rcx + rcx*2]
add ecx, eax
sub esi, ecx
je 0x140052be1
add esi, 0x11a7
mov edx, esi
mov rcx, r13
call fcn.140056030
mov r9, qword [rsp + 0x58]
test r9, r9
jne 0x140052f60
movzx r10d, byte [rsp + 0x88]
cmp r10b, 2
je 0x140053172
mov r12, qword [rsp + 0x60]
mov r8, qword [rsp + 0x68]
mov r11, qword [rsp + 0x70]
mov rax, qword [rsp + 0x80]
movzx esi, byte [rsp + 0x89]
mov rbx, qword [rsp + 0x78]
test r8, r8
je 0x140052cc7
cmp r8, r12
je 0x140052cbe
lea rcx, [r8 + 1]
mov qword [rsp + 0x68], rcx
movzx r14d, byte [r8]
movzx edx, r14b
test dl, dl
jns 0x140052fca
mov ecx, edx
and ecx, 0x1f
lea r9, [r8 + 2]
mov qword [rsp + 0x68], r9
movzx ebp, byte [r8 + 1]
and ebp, 0x3f
cmp dl, 0xdf
jbe 0x1400534ea
lea rdx, [r8 + 3]
mov qword [rsp + 0x68], rdx
movzx r9d, byte [r8 + 2]
shl ebp, 6
and r9d, 0x3f
or r9d, ebp
cmp r14b, 0xf0
jb 0x1400534f6
lea rdx, [r8 + 4]
mov qword [rsp + 0x68], rdx
movzx edx, byte [r8 + 3]
and ecx, 7
shl ecx, 0x12
shl r9d, 6
and edx, 0x3f
or edx, r9d
or edx, ecx
cmp edx, 0x110000
jne case.0x140052eae.0
mov qword [rsp + 0x68], 0
cmp rbx, r11
je 0x14005316a
lea rcx, [rbx + 1]
mov qword [rsp + 0x78], rcx
movzx r8d, byte [rbx]
movzx edx, r8b
test dl, dl
js 0x140052d00
mov rbx, rcx
lea ecx, [rdx - 0x2d]
cmp ecx, 2
jae 0x140052da0
jmp 0x140052fca
mov ecx, edx
and ecx, 0x1f
lea r14, [rbx + 2]
mov qword [rsp + 0x78], r14
movzx r9d, byte [rbx + 1]
and r9d, 0x3f
cmp dl, 0xdf
jbe 0x140052d6d
lea r14, [rbx + 3]
mov qword [rsp + 0x78], r14
movzx edx, byte [rbx + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp r8b, 0xf0
jb 0x140052d85
lea r8, [rbx + 4]
mov qword [rsp + 0x78], r8
movzx r9d, byte [rbx + 3]
and ecx, 7
shl ecx, 0x12
shl edx, 6
and r9d, 0x3f
or r9d, edx
or r9d, ecx
mov rbx, r8
mov edx, r9d
lea ecx, [rdx - 0x2d]
cmp ecx, 2
jae 0x140052da0
jmp 0x140052fca
shl ecx, 6
or ecx, r9d
mov rbx, r14
mov edx, ecx
lea ecx, [rdx - 0x2d]
cmp ecx, 2
jae 0x140052da0
jmp 0x140052fca
shl ecx, 0xc
or edx, ecx
mov rbx, r14
lea ecx, [rdx - 0x2d]
cmp ecx, 2
jb 0x140052fca
nop dword [rax]
cmp edx, 0x110000
je 0x14005316a
lea ecx, [rdx - 0x61]
cmp ecx, 0x1a
jb 0x140052fca
lea ecx, [rdx - 0x30]
cmp ecx, 0xa
jb 0x140052fca
mov r8d, 0x75a
xor r9d, r9d
mov ecx, 0x75a
jmp 0x140052de8
mov rcx, r8
sub r8, r9
jbe 0x140052e1c
shr r8, 1
add r8, r9
xor ebp, ebp
cmp dword [r15 + r8*8], edx
setne bpl
cmovb ebp, edi
cmp bpl, 1
je 0x140052de0
movzx r9d, bpl
cmp r9d, 0xff
jne 0x140052e2f
inc r8
mov r9, r8
mov r8, rcx
sub r8, r9
ja 0x140052de8
dec r9
mov r8, r9
cmp r9, 0x759
ja 0x1400537d8
movzx r9d, word [r15 + r8*8 + 4]
mov ecx, r9d
and ecx, 0x7fff
test r9w, r9w
js 0x140052e70
movzx r8d, word [r15 + r8*8]
mov r9d, edx
sub r9w, r8w
movzx r8d, cx
add r8d, r9d
movzx ecx, r8w
movzx r8d, r8w
cmp r8d, 0x1f73
jb 0x140052e81
jmp 0x1400537f2
movzx r8d, cx
cmp r8d, 0x1f73
jae 0x140053805
lea r8, [0x140133ab8]
movzx r9d, byte [r8 + rcx*4]
mov r8d, 0
cmp r9d, 1
je case.default.0x140052eae
mov r8d, r9d
lea r9, [0x140055de4]
movsxd r8, dword [r9 + r8*4]
add r8, r9
jmp r8
mov r8d, dword [rsp + 0x90]
lea r10, [rsp + 0x98]
mov rcx, qword [rsp + 0x50]
test r8d, r8d
je 0x1400531e2
mov rdx, qword [rsp + 0xa0]
mov rax, qword [rsp + 0xa8]
cmp rcx, rax
jb 0x140053200
jmp 0x140053818
cmp edx, 0x110000
je 0x14005316a
cmp byte [rsp + 0xb8], 0
je 0x140053094
cmp edx, 0x80
jb 0x140052bd9
lea esi, [rdx - 0xac00]
cmp esi, 0x2ba4
jb 0x140052b75
imul ecx, edx, 0x9e3779b9
imul eax, edx, 0x31415926
xor ecx, eax
imul r8, rcx, 0xee4
shr r8, 0x1f
and r8d, 0xfffffffe
lea r9, [0x1401615e8]
movzx r8d, word [r8 + r9]
add r8d, edx
imul r8d, r8d, 0x9e3779b9
xor r8d, eax
imul r8, r8, 0xee4
shr r8, 0x1d
and r8d, 0xfffffff8
lea r9, [0x1401633b0]
mov rsi, qword [r8 + r9]
cmp edx, esi
jne 0x140053448
mov rax, rsi
shr rax, 0x20
movzx ecx, ax
movzx eax, ax
cmp eax, 0x1668
jae 0x140055939
shr rsi, 0x30
mov edx, 0x1667
sub rdx, rcx
cmp rdx, rsi
jb 0x14005594c
lea rax, [0x14016aad0]
lea rbx, [rax + rcx*4]
test rsi, rsi
jne 0x1400534c8
jmp 0x140052be1
cmp edx, 0x80
jb 0x140052bd9
lea esi, [rdx - 0xac00]
cmp esi, 0x2ba4
jb 0x140052b75
imul eax, edx, 0x9e3779b9
imul ecx, edx, 0x31415926
xor eax, ecx
imul rax, rax, 0x80d
shr rax, 0x20
lea r8, [0x140158fa0]
movzx eax, word [r8 + rax*2]
add eax, edx
imul eax, eax, 0x9e3779b9
xor eax, ecx
imul rax, rax, 0x80d
shr rax, 0x20
lea rcx, [0x140159fbc]
mov rsi, qword [rcx + rax*8]
cmp edx, esi
jne 0x140052bd9
mov rax, rsi
shr rax, 0x20
movzx ecx, ax
movzx eax, ax
cmp eax, 0xd4f
jae 0x14005590c
shr rsi, 0x30
mov edx, 0xd4e
sub rdx, rcx
cmp rdx, rsi
jb 0x140055903
test rsi, rsi
je 0x140052be1
lea rax, [0x14015e024]
lea rbx, [rax + rcx*4]
shl rsi, 2
xor r14d, r14d
nop word [rax + rax]
mov edx, dword [rbx + r14]
mov rcx, r13
call fcn.140056030
add r14, 4
cmp rsi, r14
jne 0x140053150
jmp 0x140052be1
mov byte [rsp + 0x88], 2
cmp dword [rsp + 0x90], 0
je 0x14005318e
mov rax, qword [rsp + 0xa8]
test rax, rax
jne 0x14005319f
jmp 0x1400535a3
movzx eax, word [rsp + 0x94]
test rax, rax
je 0x1400535a3
mov rcx, r13
call fcn.140056220
mov r8d, dword [rsp + 0x90]
test r8d, r8d
je 0x1400531be
mov r9, qword [rsp + 0xa8]
jmp 0x1400531c7
movzx r9d, word [rsp + 0x94]
lea r10, [rsp + 0x98]
mov qword [rsp + 0x58], r9
mov rcx, qword [rsp + 0x50]
test r8d, r8d
jne 0x140052f7e
movzx eax, word [rsp + 0x94]
cmp rax, 5
jae 0x1400558ed
mov rdx, r10
cmp rcx, rax
jae 0x140053818
mov r12d, dword [rdx + rcx*8 + 4]
inc rcx
cmp rcx, r9
jne 0x1400532d0
test r8d, r8d
je 0x1400532d7
mov rdx, qword [rsp + 0xa8]
sub rdx, r9
je 0x1400532e8
xor ecx, ecx
nop dword [rax]
mov rax, qword [rsp + 0x58]
add rax, rcx
cmp dword [rsp + 0x90], 0
je 0x140053260
mov r9, qword [rsp + 0xa8]
cmp rax, r9
jae 0x1400537b3
mov r8, qword [rsp + 0xa0]
jmp 0x14005327f
movzx r9d, word [rsp + 0x94]
cmp r9, 5
jae 0x14005589e
mov r8, r10
cmp rax, r9
jae 0x1400537b3
cmp rcx, r9
jae 0x1400537c7
movzx r9d, 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 0x140053230
mov r8d, dword [rsp + 0x90]
test r8d, r8d
jne 0x1400532ed
movzx eax, word [rsp + 0x94]
cmp rdx, rax
jae 0x1400532ff
mov word [rsp + 0x94], dx
jmp 0x1400532ff
mov qword [rsp + 0x50], rcx
jmp 0x140053304
movzx edx, word [rsp + 0x94]
sub rdx, r9
jne 0x14005322b
test r8d, r8d
je 0x1400532b4
cmp qword [rsp + 0xa8], rdx
jb 0x1400532ff
mov qword [rsp + 0xa8], rdx
movups xmmword [r13], xmm6
imul eax, r12d, 0x9e3779b9
imul ecx, r12d, 0x31415926
xor eax, ecx
imul rax, rax, 0x39a
shr rax, 0x1f
and eax, 0xfffffffe
lea rdx, [0x1401555c4]
movzx eax, word [rax + rdx]
add eax, r12d
imul eax, eax, 0x9e3779b9
xor eax, ecx
imul rax, rax, 0x39a
shr rax, 0x1e
and eax, 0xfffffffc
lea rcx, [0x140155cf8]
mov ebx, dword [rax + rcx]
mov eax, ebx
shr eax, 8
cmp eax, r12d
mov eax, 0
cmovne ebx, eax
mov esi, dword [rsp + 0xd0]
cmp esi, 0x110000
jne 0x140053390
test bl, bl
jne 0x14005359b
mov dword [rsp + 0xd0], r12d
jmp 0x140052be1
cmp byte [rsp + 0xd4], 0
je 0x1400533b6
cmp byte [rsp + 0xd5], bl
jae 0x1400533dc
mov ecx, esi
mov edx, r12d
call fcn.1400fd380
cmp eax, 0x110000
je 0x1400533e4
jmp 0x1400533d0
mov ecx, esi
mov edx, r12d
call fcn.1400fd380
cmp eax, 0x110000
jne 0x1400533d0
test bl, bl
jne 0x1400533e4
jmp 0x140053610
mov dword [rsp + 0xd0], eax
jmp 0x140052be1
test bl, bl
je 0x1400535e3
cmp dword [rsp + 0x30], 0
je 0x140053419
mov rdx, qword [rsp + 0x48]
cmp rdx, qword [rsp + 0x38]
jne 0x140053406
lea rcx, [rsp + 0x38]
call fcn.1400fef10
mov rdx, qword [rsp + 0x48]
mov rax, qword [rsp + 0x40]
mov dword [rax + rdx*4], r12d
inc rdx
mov qword [rsp + 0x48], rdx
jmp 0x140053434
movzx eax, word [rsp + 0x34]
cmp rax, 3
ja 0x140053504
mov dword [rsp + rax*4 + 0x38], r12d
inc eax
mov word [rsp + 0x34], ax
mov byte [rsp + 0xd4], 1
mov byte [rsp + 0xd5], bl
jmp 0x140052be1
imul rcx, rcx, 0x80d
shr rcx, 0x20
lea r8, [0x140158fa0]
movzx ecx, word [r8 + rcx*2]
add ecx, edx
imul ecx, ecx, 0x9e3779b9
xor ecx, eax
imul rax, rcx, 0x80d
shr rax, 0x20
lea rcx, [0x140159fbc]
mov rsi, qword [rcx + rax*8]
cmp edx, esi
jne 0x140052bd9
mov rax, rsi
shr rax, 0x20
movzx ecx, ax
movzx eax, ax
cmp eax, 0xd4f
jae 0x14005590c
shr rsi, 0x30
mov edx, 0xd4e
sub rdx, rcx
cmp rdx, rsi
jb 0x140055903
lea rax, [0x14015e024]
lea rbx, [rax + rcx*4]
test rsi, rsi
je 0x140052be1
shl rsi, 2
xor r14d, r14d
nop
mov edx, dword [rbx + r14]
mov rcx, r13
call fcn.140056030
add r14, 4
cmp rsi, r14
jne 0x1400534d0
jmp 0x140052be1
shl ecx, 6
or ecx, ebp
mov edx, ecx
jmp 0x140052fca
shl ecx, 0xc
or r9d, ecx
mov edx, r9d
jmp 0x140052fca
lea rcx, [rsp + 0x128]
lea rdx, [rsp + 0x34]
mov r8d, r12d
call fcn.14010d1a0
cmp dword [rsp + 0x30], 0
je 0x14005353c
cmp qword [rsp + 0x38], 0
je 0x14005353c
mov r8, qword [rsp + 0x40]
mov rcx, qword [0x14017e260]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
movdqu xmm0, xmmword [rsp + 0x128]
movdqu xmm1, xmmword [rsp + 0x138]
movdqa xmmword [rsp + 0x40], xmm1
movdqa xmmword [rsp + 0x30], xmm0
jmp 0x140053434
movzx ecx, word [rsp + 0x34]
cmp rcx, 5
jae 0x14005595d
cmp rax, rcx
jae 0x1400536f0
lea rcx, [rsp + 0x38]
mov esi, dword [rcx + rax*4]
inc rax
mov qword [rsp + 0xc0], 1
mov qword [rsp + 0xc8], rax
jmp 0x1400536b0
mov esi, r12d
jmp 0x1400536b0
mov qword [rsp + 0xc0], 2
mov qword [rsp + 0xc8], 0
mov esi, dword [rsp + 0xd0]
mov eax, 2
cmp esi, 0x110000
je 0x140052b3a
mov dword [rsp + 0xd0], 0x110000
jmp 0x1400536b0
mov dword [rsp + 0xd0], r12d
mov byte [rsp + 0xd4], 0
mov qword [rsp + 0xc0], 1
mov qword [rsp + 0xc8], 0
jmp 0x1400536b0
mov dword [rsp + 0xd0], r12d
jmp 0x1400536b0
mov rdx, qword [rsp + 0xc8]
mov eax, dword [rsp + 0x30]
test eax, eax
je 0x14005363b
cmp rdx, qword [rsp + 0x48]
jae 0x140053671
mov r8, qword [rsp + 0x40]
jmp 0x140053654
movzx ecx, word [rsp + 0x34]
cmp rcx, 5
jae 0x14005595d
lea r8, [rsp + 0x38]
cmp rdx, rcx
jae 0x14005367c
mov esi, dword [r8 + rdx*4]
inc rdx
mov qword [rsp + 0xc0], 2
mov qword [rsp + 0xc8], rdx
jmp 0x1400536b0
mov qword [rsp + 0x48], 0
jmp 0x140053688
test cx, cx
je 0x140053688
mov word [rsp + 0x34], 0
mov esi, dword [rsp + 0xd0]
mov dword [rsp + 0xd0], 0x110000
cmp esi, 0x110000
je 0x140053840
nop word cs:[rax + rax]
mov rcx, qword [rsp + 0x28]
mov edx, esi
call fcn.1400524f0
mov rax, qword [rsp + 0xc0]
jmp 0x140052b3a
mov qword [rsp + 0x48], 0
mov qword [rsp + 0xc0], 0
jmp 0x140052b38
test cx, cx
je 0x1400536d9
mov word [rsp + 0x34], 0
mov qword [rsp + 0xc0], 0
jmp 0x140052b38
mov rax, qword [r15]
mov rbx, qword [r15 + 0x10]
sub rax, rbx
cmp rax, rsi
jb 0x140053829
mov rcx, qword [r15 + 8]
add rcx, rbx
mov rdx, r14
mov r8, rsi
call sub.VCRUNTIME140.dll_memcpy
add rbx, rsi
mov qword [r15 + 0x10], rbx
mov qword [rdi], 0
mov dword [rdi + 8], 0
movaps xmm6, xmmword [rsp + 0x1e0]
movaps xmm7, xmmword [rsp + 0x1f0]
movaps xmm8, xmmword [rsp + 0x200]
movaps xmm9, xmmword [rsp + 0x210]
movaps xmm10, xmmword [rsp + 0x220]
movaps xmm11, xmmword [rsp + 0x230]
movaps xmm12, xmmword [rsp + 0x240]
movaps xmm13, xmmword [rsp + 0x250]
movaps xmm14, xmmword [rsp + 0x260]
movaps xmm15, xmmword [rsp + 0x270]
add rsp, 0x288
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea r8, str.C:Usersmixer.cargo_registry_srcindex.crates.io_6f17d22bba15001funicode_normalization_0.1.22_srcdecompose.rs
mov rcx, rax
mov rdx, r9
call fcn.14010b480
ud2
lea r8, str.C:Usersmixer.cargo_registry_srcindex.crates.io_6f17d22bba15001funicode_normalization_0.1.22_srcdecompose.rs
mov rdx, r9
call fcn.14010b480
ud2
lea r8, str.C:Usersmixer.cargo_registry_srcindex.crates.io_6f17d22bba15001fidna_0.3.0_srcuts46.rs
mov edx, 0x75a
mov rcx, 0xffffffffffffffff
call fcn.14010b480
ud2
lea r8, str.C:Usersmixer.cargo_registry_srcindex.crates.io_6f17d22bba15001fidna_0.3.0_srcuts46.rs
mov edx, 0x1f73
call fcn.14010b480
ud2
lea r8, str.C:Usersmixer.cargo_registry_srcindex.crates.io_6f17d22bba15001fidna_0.3.0_srcuts46.rs
mov edx, 0x1f73
call fcn.14010b480
ud2
lea r8, str.C:Usersmixer.cargo_registry_srcindex.crates.io_6f17d22bba15001funicode_normalization_0.1.22_srcdecompose.rs
mov rdx, rax
call fcn.14010b480
ud2
mov rcx, r15
mov rdx, rbx
mov r8, rsi
call fcn.14010fe50
mov rbx, qword [r15 + 0x10]
jmp 0x140053720
cmp dword [rsp + 0x90], 0
je 0x140053892
cmp qword [rsp + 0x98], 0
mov r13, qword [rsp + 0x2f0]
je 0x14005389a
mov r8, qword [rsp + 0xa0]
mov rcx, qword [0x14017e260]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov eax, dword [rsp + 0x30]
jmp 0x14005389a
lea r8, str.C:Usersmixer.cargo_registry_srcindex.crates.io_6f17d22bba15001fidna_0.3.0_srcuts46.rs
mov ecx, 4
mov edx, 4
call fcn.14010b480
ud2
mov r13, qword [rsp + 0x2f0]
test eax, eax
je 0x1400538ba
cmp qword [rsp + 0x38], 0
je 0x1400538ba
mov r8, qword [rsp + 0x40]
mov rcx, qword [0x14017e260]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov qword [rsp + 0x178], 0
mov qword [rsp + 0x180], 8
mov qword [rsp + 0x188], 0
mov rcx, qword [rsp + 0x28]
mov rax, qword [rcx + 8]
mov rcx, qword [rcx + 0x10]
mov qword [rsp + 0x128], rax
mov qword [rsp + 0x130], rcx
mov qword [rsp + 0x138], 0
mov qword [rsp + 0x140], rcx
mov qword [rsp + 0x148], 1
movabs rax, 0x2e0000002e
mov qword [rsp + 0x150], rax
mov qword [rsp + 0x158], 0
mov qword [rsp + 0x160], rcx
mov word [rsp + 0x168], 1
mov rax, qword [rsp + 0x100]
and rax, 0xffffffffffff00ff
mov qword [rsp + 0x108], rax
xor ebp, ebp
lea r12, [0x14015131c]
xorps xmm6, xmm6
movdqa xmm11, xmmword [0x1401157f0]
movdqa xmm12, xmmword [0x1401156e0]
movdqa xmm13, xmmword [0x140115800]
movdqa xmm14, xmmword [0x140115810]
movdqa xmm15, xmmword [0x140115820]
movdqa xmm7, xmmword [0x140115830]
movdqa xmm8, xmmword [0x140115840]
movdqa xmm9, xmmword [0x140115850]
movdqa xmm10, xmmword [0x140115860]
xor edi, edi
xor ebx, ebx
jmp 0x140053a1b
xor ebx, ebx
mov rcx, r14
mov rdx, rsi
mov r8, qword [rsp + 0x100]
lea r9, [rsp + 0xd8]
call fcn.140056b10
mov rax, qword [r13]
mov r13, qword [r13 + 0x10]
sub rax, r13
cmp rax, rsi
jb 0x140054031
mov rdi, qword [rsp + 0x2f0]
mov rcx, qword [rdi + 8]
add rcx, r13
mov rdx, r14
mov r8, rsi
call sub.VCRUNTIME140.dll_memcpy
add rsi, r13
mov r13, rdi
mov qword [rdi + 0x10], rsi
mov dil, 1
lea rcx, [rsp + 0x128]
call fcn.140055e10
test rax, rax
je 0x14005499b
mov r14, rax
mov rsi, rdx
test dil, 1
je 0x140053a62
mov rdx, qword [r13 + 0x10]
cmp rdx, qword [r13]
jne 0x140053a53
mov rcx, r13
call fcn.14000bd60
mov rdx, qword [r13 + 0x10]
mov rax, qword [r13 + 8]
mov byte [rax + rdx], 0x2e
inc rdx
mov qword [r13 + 0x10], rdx
cmp rsi, 4
jb 0x140053a75
cmp dword [r14], 0x2d2d6e78
je 0x140053c05
test bl, 1
jne 0x1400539c5
test rsi, rsi
je 0x1400539c3
mov rax, r14
add rax, rsi
mov rcx, r14
jmp 0x140053aa9
cmp rcx, rax
je 0x1400539c3
movzx r10d, byte [rcx]
movzx edx, r10b
test dl, dl
js 0x140053ac7
inc rcx
lea r8d, [rdx - 0x21]
cmp r8d, 0x5e
jb 0x140053aa0
jmp 0x140053b64
mov r8d, edx
and r8d, 0x1f
movzx r11d, byte [rcx + 1]
and r11d, 0x3f
cmp dl, 0xdf
jbe 0x140053b2b
movzx r9d, byte [rcx + 2]
shl r11d, 6
and r9d, 0x3f
or r9d, r11d
cmp r10b, 0xf0
jb 0x140053b48
movzx edx, byte [rcx + 3]
and r8d, 7
shl r8d, 0x12
shl r9d, 6
and edx, 0x3f
or edx, r9d
or edx, r8d
cmp edx, 0x110000
je 0x1400539c3
add rcx, 4
lea r8d, [rdx - 0x21]
cmp r8d, 0x5e
jb 0x140053aa0
jmp 0x140053b64
add rcx, 2
shl r8d, 6
or r8d, r11d
mov edx, r8d
lea r8d, [rdx - 0x21]
cmp r8d, 0x5e
jae 0x140053b64
jmp 0x140053aa0
add rcx, 3
shl r8d, 0xc
or r9d, r8d
mov edx, r9d
lea r8d, [rdx - 0x21]
cmp r8d, 0x5e
jb 0x140053aa0
mov r8d, 0x58e
xor r10d, r10d
mov r9d, 0x58e
jmp 0x140053b8c
mov r9, r8
sub r8, r10
jbe 0x140053aa0
shr r8, 1
add r8, r10
lea r11, [r8 + r8*2]
mov edi, dword [r12 + r11*4 + 4]
cmp edi, edx
mov ebx, 0
sbb ebx, ebx
or bl, 1
cmp edi, edx
movzx ebx, bl
mov edi, ebx
cmovae edi, ebp
cmp dword [r12 + r11*4], edx
cmova edi, ebx
cmp dil, 1
je 0x140053b80
movzx r10d, dil
cmp r10d, 0xff
jne 0x140053bde
inc r8
mov r10, r8
mov r8, r9
sub r8, r10
ja 0x140053b8c
jmp 0x140053aa0
movzx edx, byte [r12 + r11*4 + 8]
cmp rdx, 0x11
ja 0x140053aa0
mov r8d, 0x20003
bt r8, rdx
jae 0x140053aa0
mov bl, 1
jmp 0x1400539c5
mov dword [rsp + 0xf0], ebx
add r14, 4
add rsi, 0xfffffffffffffffc
lea rcx, [rsp + 0x190]
lea rdx, [rsp + 0x178]
mov r8, r14
mov r9, rsi
call fcn.140051690
mov rbx, qword [rsp + 0x198]
test rbx, rbx
je 0x14005401f
mov r12, qword [rsp + 0x190]
mov r15, qword [rsp + 0x1a0]
mov r14, qword [rsp + 0x1a8]
mov rdi, qword [rsp + 0x1b0]
mov rbp, qword [rsp + 0x1b8]
mov r8, qword [rsp + 0x1c0]
mov rax, qword [r13]
mov rcx, qword [r13 + 0x10]
sub r8, rbp
mov qword [rsp + 0xe8], rcx
sub rax, rcx
cmp rax, r8
jb 0x1400548c8
mov qword [rsp + 0xf8], r15
cmp rdi, r14
jae 0x140053d68
test r15, r15
je 0x140053d68
mov rax, rdi
shl rax, 4
cmp qword [r15 + rax], rbp
jne 0x140053cd0
inc rdi
mov esi, dword [r15 + rax + 8]
inc rbp
cmp esi, 0x7f
jbe 0x140053ea8
jmp 0x140053edb
mov rcx, rbx
mov rbx, r12
cmp rcx, r12
je 0x140053cd0
movzx r8d, byte [rcx]
test r8b, r8b
jns 0x140053df6
movzx eax, r8b
and eax, 0x1f
movzx r9d, byte [rcx + 1]
and r9d, 0x3f
cmp r8b, 0xdf
jbe 0x140053e08
movzx edx, byte [rcx + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp r8b, 0xf0
jb 0x140053e14
movzx esi, byte [rcx + 3]
add rcx, 4
and eax, 7
shl eax, 0x12
shl edx, 6
and esi, 0x3f
or esi, edx
or esi, eax
mov rbx, rcx
cmp esi, 0x110000
je 0x140053cd0
jmp 0x140053e88
mov rax, qword [r13 + 8]
mov byte [rax + rdx], sil
inc rdx
mov qword [r13 + 0x10], rdx
cmp rdi, r14
jb 0x140053ca0
cmp rdi, r14
jb 0x140053d90
cmp rbx, r12
je 0x140053fe2
movzx r8d, byte [rbx]
test r8b, r8b
js 0x140053e2f
inc rbx
jmp 0x140053dfc
mov rcx, rbx
mov rbx, r12
cmp rcx, r12
je 0x140053d90
movzx r8d, byte [rcx]
test r8b, r8b
jns 0x140053df6
movzx eax, r8b
and eax, 0x1f
movzx r9d, byte [rcx + 1]
and r9d, 0x3f
cmp r8b, 0xe0
jb 0x140053e08
movzx edx, byte [rcx + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp r8b, 0xf0
jb 0x140053e14
movzx esi, byte [rcx + 3]
add rcx, 4
and eax, 7
shl eax, 0x12
shl edx, 6
and esi, 0x3f
or esi, edx
or esi, eax
mov rbx, rcx
cmp esi, 0x110000
je 0x140053d90
jmp 0x140053e88
inc rcx
mov rbx, rcx
movzx esi, r8b
inc rbp
jmp 0x140053ea8
add rcx, 2
mov rbx, rcx
jmp 0x140053ecb
add rcx, 3
mov rbx, rcx
shl eax, 0xc
or eax, edx
mov esi, eax
inc rbp
cmp esi, 0x7f
jbe 0x140053ea8
jmp 0x140053edb
movzx eax, r8b
and eax, 0x1f
movzx r9d, byte [rbx + 1]
and r9d, 0x3f
cmp r8b, 0xe0
jb 0x140053ec7
movzx edx, byte [rbx + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp r8b, 0xf0
jb 0x140053fbd
movzx esi, byte [rbx + 3]
and eax, 7
shl eax, 0x12
shl edx, 6
and esi, 0x3f
or esi, edx
or esi, eax
cmp esi, 0x110000
je 0x140053fe2
add rbx, 4
mov rcx, rbx
mov rbx, rcx
cmp esi, 0x110000
je 0x140053fe2
nop word [rax + rax]
inc rbp
cmp esi, 0x7f
ja 0x140053edb
mov rdx, qword [r13 + 0x10]
cmp rdx, qword [r13]
jne 0x140053d50
mov rcx, r13
call fcn.14000bd60
mov rdx, qword [r13 + 0x10]
jmp 0x140053d50
add rbx, 2
shl eax, 6
or eax, r9d
mov esi, eax
inc rbp
cmp esi, 0x7f
jbe 0x140053ea8
mov dword [rsp + 0x30], 0
mov eax, esi
cmp esi, 0x800
jae 0x140053f0a
shr eax, 6
or al, 0xc0
mov byte [rsp + 0x30], al
and sil, 0x3f
or sil, 0x80
mov byte [rsp + 0x31], sil
mov esi, 2
jmp 0x140053f71
cmp esi, 0x10000
jae 0x140053f3c
shr eax, 0xc
or al, 0xe0
mov byte [rsp + 0x30], al
mov eax, esi
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x31], al
and sil, 0x3f
or sil, 0x80
mov byte [rsp + 0x32], sil
mov esi, 3
jmp 0x140053f71
shr eax, 0x12
or al, 0xf0
mov byte [rsp + 0x30], al
mov eax, esi
shr eax, 0xc
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x31], al
mov eax, esi
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x32], al
and sil, 0x3f
or sil, 0x80
mov byte [rsp + 0x33], sil
mov esi, 4
mov rax, qword [r13]
mov r13, qword [r13 + 0x10]
sub rax, r13
cmp rax, rsi
jb 0x140053fc6
mov r15, qword [rsp + 0x2f0]
mov rcx, qword [r15 + 8]
add rcx, r13
lea rdx, [rsp + 0x30]
mov r8, rsi
call sub.VCRUNTIME140.dll_memcpy
add r13, rsi
mov qword [r15 + 0x10], r13
mov r13, r15
mov r15, qword [rsp + 0xf8]
cmp rdi, r14
jb 0x140053ca0
jmp 0x140053d68
add rbx, 3
jmp 0x140053e1b
mov r15, qword [rsp + 0x2f0]
mov rcx, r15
mov rdx, r13
mov r8, rsi
call fcn.14010fe50
mov r13, qword [r15 + 0x10]
jmp 0x140053f81
mov rax, r13
mov r13, qword [r13 + 8]
mov r15, qword [rax + 0x10]
mov rsi, qword [rsp + 0xe8]
test rsi, rsi
lea r12, [0x14015131c]
mov ebp, 0
mov ebx, dword [rsp + 0xf0]
je 0x140054056
cmp r15, rsi
jbe 0x140054050
cmp byte [r13 + rsi], 0xbf
jg 0x140054056
jmp 0x140055991
mov byte [rsp + 0xd8], 1
mov bl, 1
mov dil, 1
jmp 0x140053a1b
mov rdi, qword [rsp + 0x2f0]
mov rcx, rdi
mov rdx, r13
mov r8, rsi
call fcn.14010fe50
mov r13, qword [rdi + 0x10]
jmp 0x1400539f4
jne 0x140055991
lea r14, [rsi + r13]
test bl, 1
jne 0x14005412d
cmp r15, rsi
jne 0x14005406f
xor ebx, ebx
jmp 0x14005412d
lea rsi, [r15 + r13]
mov rdi, r14
jmp 0x140054081
cmp rdi, rsi
je 0x140054123
movzx r8d, byte [rdi]
movzx ecx, r8b
test cl, cl
js 0x140054092
inc rdi
jmp 0x1400540f4
mov eax, ecx
and eax, 0x1f
movzx r9d, byte [rdi + 1]
and r9d, 0x3f
cmp cl, 0xdf
jbe 0x1400540db
movzx edx, byte [rdi + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp r8b, 0xf0
jb 0x1400540e9
movzx ecx, byte [rdi + 3]
and eax, 7
shl eax, 0x12
shl edx, 6
and ecx, 0x3f
or ecx, edx
or ecx, eax
cmp ecx, 0x110000
je 0x140054123
add rdi, 4
jmp 0x1400540f4
add rdi, 2
shl eax, 6
or eax, r9d
mov ecx, eax
jmp 0x1400540f4
add rdi, 3
shl eax, 0xc
or edx, eax
mov ecx, edx
lea eax, [rcx - 0x21]
cmp eax, 0x5d
jbe 0x140054078
call fcn.1400fd290
cmp al, 0x11
ja 0x140054078
movzx eax, al
mov ecx, 0x20003
bt rcx, rax
jae 0x140054078
mov bl, 1
jmp 0x140054125
xor ebx, ebx
mov rsi, qword [rsp + 0xe8]
movq xmm0, qword [rsp + 0xda]
pshufd xmm1, xmm0, 0x55
por xmm1, xmm0
movdqa xmm0, xmm1
psrld xmm0, 0x10
por xmm0, xmm1
movdqa xmm1, xmm0
psrlw xmm1, 8
por xmm1, xmm0
movd eax, xmm1
or al, byte [rsp + 0xd8]
or al, byte [rsp + 0xe2]
jne 0x1400548a8
cmp byte [rsp + 0xd9], 0
jne 0x1400548b8
cmp byte [rsp + 0xe3], 0
jne 0x140054725
mov dword [rsp + 0xf0], ebx
mov qword [rsp + 0xf8], r15
cmp r15, rsi
je 0x140054961
add r13, qword [rsp + 0xf8]
xor edi, edi
xor ebx, ebx
mov r15, r14
movzx edx, byte [r15]
test dl, dl
js 0x1400541c4
inc r15
jmp 0x140054245
movzx eax, dl
and eax, 0x1f
movzx r8d, byte [r15 + 1]
and r8d, 0x3f
cmp dl, 0xe0
jb 0x140054213
movzx ecx, byte [r15 + 2]
shl r8d, 6
and ecx, 0x3f
or ecx, r8d
cmp dl, 0xf0
jb 0x140054221
movzx esi, byte [r15 + 3]
and eax, 7
shl eax, 0x12
shl ecx, 6
and esi, 0x3f
or esi, ecx
or esi, eax
cmp esi, 0x110000
je 0x140054735
add r15, 4
jmp 0x14005422c
add r15, 2
shl eax, 6
or eax, r8d
mov esi, eax
jmp 0x14005422c
add r15, 3
shl eax, 0xc
or ecx, eax
mov esi, ecx
cmp esi, 0x7f
jbe 0x140054245
jmp 0x1400542c9
inc r15
cmp esi, 0x80
jae 0x1400542c7
cmp r15, r13
je 0x140054735
movzx edx, byte [r15]
movzx esi, dl
test sil, sil
jns 0x140054236
mov eax, esi
and eax, 0x1f
movzx r8d, byte [r15 + 1]
and r8d, 0x3f
cmp sil, 0xdf
jbe 0x1400542a9
movzx ecx, byte [r15 + 2]
shl r8d, 6
and ecx, 0x3f
or ecx, r8d
cmp dl, 0xf0
jb 0x1400542b7
movzx esi, byte [r15 + 3]
and eax, 7
shl eax, 0x12
shl ecx, 6
and esi, 0x3f
or esi, ecx
or esi, eax
cmp esi, 0x110000
je 0x140054735
add r15, 4
jmp 0x140054239
add r15, 2
shl eax, 6
or eax, r8d
mov esi, eax
jmp 0x140054239
add r15, 3
shl eax, 0xc
or ecx, eax
mov esi, ecx
jmp 0x140054239
xor edi, edi
mov ecx, esi
call fcn.1400fd320
cmp dil, al
jbe 0x1400542dd
test al, al
jne case.0x140054478.3907
lea ecx, [rsi - 0x340]
cmp ecx, 4
ja 0x1400542f1
cmp ecx, 2
jne case.0x140054478.3907
cmp esi, 0xd56
jg 0x140054352
cmp esi, 0x9de
jg 0x140054393
cmp esi, 0x93b
jg 0x1400544a3
lea ecx, [rsi - 0x30f]
cmp ecx, 0x36
ja 0x140054330
movabs rdx, 0x48020000001005
bt rdx, rcx
jb 0x1400545a2
lea ecx, [rsi - 0x374]
cmp ecx, 0x13
ja case.0x140054478.3908
mov edx, 0x80401
bt edx, ecx
jb case.0x140054478.3907
jmp case.0x140054478.3908
cmp esi, 0x11126
jg 0x1400543f4
cmp esi, 0x102d
jle 0x140054436
cmp esi, 0x1f70
jg 0x1400544f5
cmp esi, 0x102e
je 0x1400545a2
cmp esi, 0x1b35
je 0x1400545a2
jmp case.0x140054478.3908
cmp esi, 0xbd6
jg 0x14005447a
cmp esi, 0xbbd
jg 0x14005459a
lea ecx, [rsi - 0xb3e]
cmp ecx, 0x19
ja 0x1400543c4
mov edx, 0x3000001
bt edx, ecx
jb 0x1400545a2
lea ecx, [rsi - 0xa33]
cmp ecx, 0x2b
ja 0x1400543e3
movabs rdx, 0x80000000009
bt rdx, rcx
jb case.0x140054478.3907
cmp esi, 0x9df
jne case.0x140054478.3908
jmp case.0x140054478.3907
cmp esi, 0x114af
jle 0x1400544cc
lea ecx, [rsi - 0x114b0]
cmp ecx, 0xd
ja 0x140054419
mov edx, 0x2401
bt edx, ecx
jb 0x1400545a2
cmp esi, 0x115af
je 0x1400545a2
cmp esi, 0x11930
je 0x1400545a2
jmp case.0x140054478.3908
lea ecx, [rsi - 0xdca]
cmp ecx, 0x15
ja 0x14005444f
mov edx, 0x200021
bt edx, ecx
jb 0x1400545a2
cmp esi, 0xd57
je 0x1400545a2
lea ecx, [rsi - 0xf43]
cmp ecx, 0x76
ja case.0x140054478.3908
lea rdx, [0x1400559d4]
movsxd rcx, dword [rdx + rcx*4]
add rcx, rdx
jmp rcx
cmp esi, 0xcc1
jg 0x140054556
cmp esi, 0xbd7
je 0x1400545a2
cmp esi, 0xc56
je 0x1400545a2
jmp case.0x140054478.3908
cmp esi, 0x93c
je 0x1400545a2
cmp esi, 0x9be
je 0x1400545a2
cmp esi, 0x9d7
je 0x1400545a2
jmp case.0x140054478.3908
cmp esi, 0x11127
je 0x1400545a2
cmp esi, 0x1133e
je 0x1400545a2
cmp esi, 0x11357
je 0x1400545a2
jmp case.0x140054478.3908
cmp esi, 0xfa0f
jle 0x140054568
cmp esi, 0x110ba
lea r12, [0x14015131c]
mov ebp, 0
je 0x1400545a2
lea ecx, [rsi - 0xfa10]
cmp ecx, 0x12
ja 0x14005452e
mov edx, 0x50005
bt edx, ecx
jb case.0x140054478.3907
lea ecx, [rsi - 0xfb1d]
cmp ecx, 0x21
ja case.0x140054478.3908
movabs rdx, 0x200000005
bt rdx, rcx
jb case.0x140054478.3907
jmp case.0x140054478.3908
cmp esi, 0xcc2
je 0x1400545a2
cmp esi, 0xd3e
je 0x1400545a2
jmp case.0x140054478.3908
cmp esi, 0x2125
jg 0x1400545b4
lea ecx, [rsi - 0x1f71]
cmp ecx, 0x8c
lea r12, [0x14015131c]
mov ebp, 0
ja case.0x140054478.3908
lea rdx, [0x140055bb0]
movsxd rcx, dword [rdx + rcx*4]
add rcx, rdx
jmp rcx
cmp esi, 0xbbe
jne case.0x140054478.3908
mov bl, 2
mov edi, eax
cmp r15, r13
jne 0x1400541b4
jmp 0x140054735
lea ecx, [rsi - 0x2329]
cmp ecx, 2
lea r12, [0x14015131c]
mov ebp, 0
jb case.0x140054478.3907
cmp esi, 0x2126
je case.0x140054478.3907
cmp esi, 0x2adc
je case.0x140054478.3907
movd xmm1, esi
pshufd xmm0, xmm1, 0
movdqa xmm2, xmm0
paddd xmm2, xmmword [0x1401157c0]
movdqa xmm3, xmm0
paddd xmm3, xmmword [0x1401157d0]
pxor xmm3, xmm12
movdqa xmm4, xmm14
pcmpgtd xmm4, xmm3
pxor xmm2, xmm12
movdqa xmm3, xmm15
pcmpgtd xmm3, xmm2
packssdw xmm3, xmm4
pmovmskb ecx, xmm3
test ecx, ecx
jne case.0x140054478.3907
pshufd xmm1, xmm1, 0x50
pand xmm1, xmmword [0x1401157b0]
pshufd xmm2, xmm1, 4
pcmpeqd xmm2, xmmword [0x1401157e0]
movdqa xmm3, xmm0
paddd xmm3, xmm11
pxor xmm3, xmm12
movdqa xmm4, xmm13
pcmpgtd xmm4, xmm3
por xmm4, xmm2
movmskps ecx, xmm4
test cl, cl
jne case.0x140054478.3907
lea ecx, [rsi - 0x1d1bb]
cmp ecx, 6
jb case.0x140054478.3907
lea ecx, [rsi - 0x2f800]
cmp ecx, 0x21e
jb case.0x140054478.3907
movd ecx, xmm1
cmp ecx, 0x2000
je case.0x140054478.3907
cmp ecx, 0x212a
je case.0x140054478.3907
cmp ecx, 0xfb40
je case.0x140054478.3907
movdqa xmm1, xmm0
paddd xmm1, xmm7
paddd xmm0, xmm8
pxor xmm0, xmm12
movdqa xmm2, xmm9
pcmpgtd xmm2, xmm0
pxor xmm1, xmm12
movdqa xmm0, xmm10
pcmpgtd xmm0, xmm1
packssdw xmm2, xmm0
pmovmskb edx, xmm2
test edx, edx
jne 0x1400545a2
lea edx, [rsi - 0x11a8]
cmp edx, 0x1b
jb 0x1400545a2
add esi, 0xffffcf67
cmp esi, 2
jb 0x1400545a2
cmp ecx, 0x330
jne 0x1400545a4
jmp 0x1400545a2
mov r13, qword [rsp + 0x2f0]
mov dil, 1
jmp 0x140053a1b
test bl, bl
mov rsi, qword [rsp + 0xe8]
je 0x140054961
movzx eax, bl
cmp eax, 1
je case.0x140054478.3907
movups xmmword [rsp + 0x1d0], xmm6
movzx eax, word [rsp + 0x1de]
lea rcx, [rsp + 0x36]
mov word [rcx + 0x10], ax
movdqu xmm0, xmmword [rsp + 0x1ce]
movdqu xmmword [rcx], xmm0
movups xmmword [rcx + 0x2a], xmm6
mov qword [rcx + 0x38], 0
mov dword [rsp + 0x30], 0
mov word [rsp + 0x34], 0
mov qword [rsp + 0x50], r13
mov rsi, r14
mov qword [rsp + 0x58], r14
mov byte [rsp + 0x78], 0
mov dword [rsp + 0x7c], 0
mov byte [rsp + 0x80], 0
mov dword [rsp + 0x84], 0
mov byte [rsp + 0x88], 0
mov dword [rsp + 0x8c], 0
mov byte [rsp + 0x90], 0
mov dword [rsp + 0x94], 0
mov byte [rsp + 0x98], 0
mov qword [rsp + 0xa0], 0
mov dword [rsp + 0xb0], 0x110000
mov byte [rsp + 0xb4], 0
cmp rsi, r13
je 0x1400548ee
movzx edx, byte [rsi]
movzx edi, dl
test dil, dil
js 0x140054825
inc rsi
jmp 0x14005488b
mov eax, edi
and eax, 0x1f
movzx r8d, byte [rsi + 1]
and r8d, 0x3f
cmp dil, 0xdf
jbe 0x140054872
movzx ecx, byte [rsi + 2]
shl r8d, 6
and ecx, 0x3f
or ecx, r8d
cmp dl, 0xf0
jb 0x140054880
movzx edi, byte [rsi + 3]
and eax, 7
shl eax, 0x12
shl ecx, 6
and edi, 0x3f
or edi, ecx
or edi, eax
cmp edi, 0x110000
je 0x1400548ee
add rsi, 4
jmp 0x14005488b
add rsi, 2
shl eax, 6
or eax, r8d
mov edi, eax
jmp 0x14005488b
add rsi, 3
shl eax, 0xc
or ecx, eax
mov edi, ecx
lea rcx, [rsp + 0x30]
call fcn.140056d50
mov bl, 1
cmp eax, 0x110000
je 0x140054902
cmp eax, edi
je 0x14005480c
jmp 0x140054902
mov r13, qword [rsp + 0x2f0]
mov dil, 1
jmp 0x140053a1b
mov r13, qword [rsp + 0x2f0]
mov dil, 1
jmp 0x140053a1b
mov rcx, r13
mov rdx, qword [rsp + 0xe8]
call fcn.14010fe50
mov qword [rsp + 0xf8], r15
cmp rdi, r14
jb 0x140053ca0
jmp 0x140053d68
lea rcx, [rsp + 0x30]
call fcn.140056d50
cmp eax, 0x110000
setne bl
neg bl
cmp dword [rsp + 0x70], 0
je 0x140054928
cmp qword [rsp + 0x78], 0
je 0x140054928
mov r8, qword [rsp + 0x80]
mov rcx, qword [0x14017e260]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
cmp dword [rsp + 0x30], 0
mov rsi, qword [rsp + 0xe8]
je 0x140054953
cmp qword [rsp + 0x38], 0
je 0x140054953
mov r8, qword [rsp + 0x40]
mov rcx, qword [0x14017e260]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
test bl, bl
je 0x140054961
mov byte [rsp + 0xdd], 1
jmp 0x140054984
mov rdx, qword [rsp + 0xf8]
sub rdx, rsi
mov rcx, r14
mov r8, qword [rsp + 0x108]
lea r9, [rsp + 0xd8]
call fcn.140056b10
mov r13, qword [rsp + 0x2f0]
mov ebx, dword [rsp + 0xf0]
mov dil, 1
jmp 0x140053a1b
mov rcx, qword [r13 + 8]
mov r14, qword [r13 + 0x10]
mov r8, qword [rsp + 0x110]
test r8, r8
je 0x1400549d7
cmp r14, r8
jbe 0x1400549d5
cmp byte [rcx + r8], 0xbf
jg 0x1400549d7
lea rax, str.C:Usersmixer.cargo_registry_srcindex.crates.io_6f17d22bba15001fidna_0.3.0_srcuts46.rs
mov qword [rsp + 0x20], rax
mov rdx, r14
mov r9, r14
call fcn.14010b930
ud2
jne 0x1400549bc
add rcx, r8
mov rax, r14
sub rax, r8
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x40], 0
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], 1
movabs rcx, 0x2e0000002e
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x60], 0
mov qword [rsp + 0x68], rax
mov word [rsp + 0x70], 1
test bl, 1
jne 0x140054a41
lea rsi, [rsp + 0x30]
mov rcx, rsi
call fcn.140055e10
test rax, rax
jne 0x140054a2f
jmp 0x140054f40
xor ebx, ebx
lea rcx, [rsp + 0x30]
call fcn.140055e10
test rax, rax
je 0x140054f40
mov r13, rdx
test rdx, rdx
je 0x140054a43
mov rbp, rax
movzx r8d, byte [rax]
movzx ecx, r8b
test cl, cl
js 0x140054a73
lea rsi, [rbp + 1]
jmp 0x140054ad5
mov eax, ecx
and eax, 0x1f
movzx r9d, byte [rbp + 1]
and r9d, 0x3f
cmp cl, 0xdf
jbe 0x140054abc
movzx edx, byte [rbp + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp r8b, 0xf0
jb 0x140054aca
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 0x140054a43
lea rsi, [rbp + 4]
jmp 0x140054ad5
lea rsi, [rbp + 2]
shl eax, 6
or eax, r9d
mov ecx, eax
jmp 0x140054ad5
lea rsi, [rbp + 3]
shl eax, 0xc
or edx, eax
mov ecx, edx
add r13, rbp
call fcn.1400fd290
test al, al
je 0x140054c12
movzx eax, al
cmp eax, 0x11
je 0x140054c12
cmp eax, 9
jne 0x140054f38
cmp rsi, r13
je 0x140054d48
movzx r8d, byte [rsi]
movzx eax, r8b
test al, al
js 0x140054b14
inc rsi
jmp 0x140054b78
mov ecx, eax
and ecx, 0x1f
movzx r9d, byte [rsi + 1]
and r9d, 0x3f
cmp al, 0xdf
jbe 0x140054b5f
movzx edx, byte [rsi + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp r8b, 0xf0
jb 0x140054b6d
movzx eax, byte [rsi + 3]
and ecx, 7
shl ecx, 0x12
shl edx, 6
and eax, 0x3f
or eax, edx
or eax, ecx
cmp eax, 0x110000
je 0x140054d48
add rsi, 4
jmp 0x140054b78
add rsi, 2
shl ecx, 6
or ecx, r9d
mov eax, ecx
jmp 0x140054b78
add rsi, 3
shl ecx, 0xc
or edx, ecx
mov eax, edx
mov ecx, 0x58e
xor r8d, r8d
mov edx, 0x58e
jmp 0x140054b93
mov rdx, rcx
sub rcx, r8
jbe 0x140054afa
shr rcx, 1
add rcx, r8
lea r9, [rcx + rcx*2]
mov r10d, dword [r12 + r9*4 + 4]
cmp r10d, eax
mov r11d, 0
sbb r11d, r11d
or r11b, 1
cmp r10d, eax
movzx r11d, r11b
mov r10d, r11d
cmovae r10d, ebx
cmp dword [r12 + r9*4], eax
cmova r10d, r11d
cmp r10b, 1
je 0x140054b87
movzx r8d, r10b
cmp r8d, 0xff
jne 0x140054bee
inc rcx
mov r8, rcx
mov rcx, rdx
sub rcx, r8
ja 0x140054b93
jmp 0x140054afa
movzx eax, byte [r12 + r9*4 + 8]
cmp rax, 0xe
ja 0x140054f38
mov ecx, 0x62f8
bt rcx, rax
jb 0x140054afa
jmp 0x140054f38
cmp rsi, r13
je 0x140054d7d
xor edi, edi
xor r15d, r15d
movzx r8d, byte [rsi]
movzx eax, r8b
test al, al
js 0x140054c31
inc rsi
jmp 0x140054c95
mov ecx, eax
and ecx, 0x1f
movzx r9d, byte [rsi + 1]
and r9d, 0x3f
cmp al, 0xdf
jbe 0x140054c7c
movzx edx, byte [rsi + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp r8b, 0xf0
jb 0x140054c8a
movzx eax, byte [rsi + 3]
and ecx, 7
shl ecx, 0x12
shl edx, 6
and eax, 0x3f
or eax, edx
or eax, ecx
cmp eax, 0x110000
je 0x140054d82
add rsi, 4
jmp 0x140054c95
add rsi, 2
shl ecx, 6
or ecx, r9d
mov eax, ecx
jmp 0x140054c95
add rsi, 3
shl ecx, 0xc
or edx, ecx
mov eax, edx
mov ecx, 0x58e
xor r8d, r8d
mov edx, 0x58e
jmp 0x140054cb0
mov rdx, rcx
sub rcx, r8
jbe 0x140054f38
shr rcx, 1
add rcx, r8
lea r9, [rcx + rcx*2]
mov r10d, dword [r12 + r9*4 + 4]
cmp r10d, eax
mov r11d, 0
sbb r11d, r11d
or r11b, 1
cmp r10d, eax
movzx r11d, r11b
mov r10d, r11d
cmovae r10d, ebx
cmp dword [r12 + r9*4], eax
cmova r10d, r11d
cmp r10b, 1
je 0x140054ca4
movzx r8d, r10b
cmp r8d, 0xff
jne 0x140054d0b
inc rcx
mov r8, rcx
mov rcx, rdx
sub rcx, r8
ja 0x140054cb0
jmp 0x140054f38
movzx eax, byte [r12 + r9*4 + 8]
cmp eax, 1
je 0x140054d20
cmp eax, 5
jne 0x140054d24
mov r15b, 1
jmp 0x140054d3d
mov edi, eax
jmp 0x140054d3d
cmp rax, 0x11
ja 0x140054f38
mov ecx, 0x260fb
bt rcx, rax
jae 0x140054f38
cmp rsi, r13
jne 0x140054c20
jmp 0x140054d82
movzx eax, byte [r13 - 1]
test al, al
jns 0x140054dc6
movzx ecx, byte [r13 - 2]
add r13, 0xfffffffffffffffe
cmp cl, 0xc0
jge 0x140054dd2
movzx edx, byte [r13 - 1]
dec r13
cmp dl, 0xc0
jge 0x140054e35
movzx r8d, byte [r13 - 1]
dec r13
jmp 0x140054e21
xor r15d, r15d
xor edi, edi
movzx eax, byte [r13 - 1]
test al, al
jns 0x140054dbb
movzx ecx, byte [r13 - 2]
add r13, 0xfffffffffffffffe
cmp cl, 0xc0
jge 0x140054e84
movzx edx, byte [r13 - 1]
dec r13
cmp dl, 0xc0
jge 0x140054eeb
movzx r8d, byte [r13 - 1]
dec r13
jmp 0x140054ed7
dec r13
movzx esi, al
jmp 0x140054e91
dec r13
movzx esi, al
jmp 0x140054ddf
add r13, 0xfffffffffffffffe
and ecx, 0x1f
shl ecx, 6
and al, 0x3f
movzx esi, al
or esi, ecx
cmp r13, rbp
je 0x140054e42
cmp esi, 0x110000
je 0x140054a43
mov ecx, esi
call fcn.1400fd290
cmp al, 0xd
jne 0x140054e5d
movzx eax, byte [r13 - 1]
test al, al
jns 0x140054dc6
movzx ecx, byte [r13 - 2]
cmp cl, 0xc0
jge 0x140054dce
movzx edx, byte [r13 - 3]
cmp dl, 0xc0
jge 0x140054e31
movzx r8d, byte [r13 - 4]
add r13, 0xfffffffffffffffc
and r8d, 7
shl r8d, 6
and edx, 0x3f
or edx, r8d
jmp 0x140054e38
add r13, 0xfffffffffffffffd
and edx, 0xf
shl edx, 6
and ecx, 0x3f
or ecx, edx
jmp 0x140054dd5
cmp esi, 0x110000
je 0x140054a43
mov ecx, esi
call fcn.1400fd290
cmp al, 0xd
je 0x140054a43
mov ecx, esi
call fcn.1400fd290
cmp al, 9
je 0x140054a43
mov ecx, esi
call fcn.1400fd290
cmp al, 5
je 0x140054a43
jmp 0x140054f38
add r13, 0xfffffffffffffffe
and ecx, 0x1f
shl ecx, 6
and al, 0x3f
movzx esi, al
or esi, ecx
cmp r13, rbp
je 0x140054ef8
cmp esi, 0x110000
je 0x140054f38
mov ecx, esi
call fcn.1400fd290
cmp al, 0xd
jne 0x140054f0b
movzx eax, byte [r13 - 1]
test al, al
jns 0x140054dbb
movzx ecx, byte [r13 - 2]
cmp cl, 0xc0
jge 0x140054e80
movzx edx, byte [r13 - 3]
cmp dl, 0xc0
jge 0x140054ee7
movzx r8d, byte [r13 - 4]
add r13, 0xfffffffffffffffc
and r8d, 7
shl r8d, 6
and edx, 0x3f
or edx, r8d
jmp 0x140054eee
add r13, 0xfffffffffffffffd
and edx, 0xf
shl edx, 6
and ecx, 0x3f
or ecx, edx
jmp 0x140054e87
cmp esi, 0x110000
je 0x140054f38
mov ecx, esi
call fcn.1400fd290
cmp al, 0xd
je 0x140054f38
mov ecx, esi
call fcn.1400fd290
cmp al, 0x11
ja 0x140054f38
movzx eax, al
mov ecx, 0x20023
bt rcx, rax
jae 0x140054f38
test dil, 1
je 0x140054a43
and r15b, 1
je 0x140054a43
mov byte [rsp + 0xda], 1
cmp qword [rsp + 0x178], 0
mov r13, qword [rsp + 0x2f0]
je 0x140054f6e
mov r8, qword [rsp + 0x180]
mov rcx, qword [0x14017e260]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov r14, qword [r13 + 0x10]
test r14, r14
mov rdi, qword [rsp + 0x118]
je 0x140054fc1
js 0x1400559ca
mov rcx, qword [0x14017e260]
test rcx, rcx
jne 0x140054fa2
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x140054fb2
mov rcx, rax
mov qword [0x14017e260], rax
xor edx, edx
mov r8, r14
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
jne 0x140054fc6
mov edx, 1
mov rcx, r14
call fcn.14010b0b0
ud2
mov eax, 1
mov rcx, qword [r13 + 0x10]
mov qword [rsp + 0x40], rcx
movups xmm0, xmmword [r13]
movaps xmmword [rsp + 0x30], xmm0
mov qword [r13], r14
mov qword [r13 + 8], rax
mov qword [r13 + 0x10], 0
mov rbx, qword [rsp + 0x28]
lea rsi, [rbx + 0x18]
cmp qword [rbx + 0x18], 0
je 0x14005500c
mov r8, qword [rbx + 0x20]
mov rcx, qword [0x14017e260]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov rax, qword [rsp + 0x40]
mov qword [rsi + 0x10], rax
movdqa xmm0, xmmword [rsp + 0x30]
movdqu xmmword [rsi], xmm0
mov rax, qword [rbx + 0x20]
mov rcx, qword [rbx + 0x28]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x40], 0
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x50], 1
movabs rax, 0x2e0000002e
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], 0
mov qword [rsp + 0x68], rcx
mov word [rsp + 0x70], 1
xor ebp, ebp
jmp 0x1400550a0
mov rax, qword [r13]
mov r15, qword [r13 + 0x10]
sub rax, r15
cmp rax, rsi
jb 0x14005584b
mov rcx, qword [r13 + 8]
add rcx, r15
mov rdx, r12
mov r8, rsi
call sub.VCRUNTIME140.dll_memcpy
add rsi, r15
mov qword [r13 + 0x10], rsi
mov bpl, 1
lea rcx, [rsp + 0x30]
call fcn.140055e10
test rax, rax
je 0x140055884
mov r12, rax
mov rsi, rdx
test bpl, 1
je 0x1400550e4
mov rdx, qword [r13 + 0x10]
cmp rdx, qword [r13]
jne 0x1400550d5
mov rcx, r13
call fcn.14000bd60
mov rdx, qword [r13 + 0x10]
mov rax, qword [r13 + 8]
mov byte [rax + rdx], 0x2e
inc rdx
mov qword [r13 + 0x10], rdx
cmp rsi, 8
jb 0x14005513d
lea rcx, [r12 + 7]
and rcx, 0xfffffffffffffff8
mov rax, rcx
sub rax, r12
cmp rax, rsi
ja 0x14005513d
movabs rdx, 0x8080808080808080
test qword [r12], rdx
jne 0x140055153
cmp rcx, r12
mov ecx, 8
cmove rax, rcx
lea rcx, [rsi - 8]
cmp rax, rcx
jae 0x140055132
test qword [r12 + rax], rdx
jne 0x140055153
add rax, 8
cmp rax, rcx
jb 0x140055123
test qword [r12 + rcx], rdx
jne 0x140055153
jmp 0x140055070
xor eax, eax
cmp rsi, rax
je 0x140055070
cmp byte [r12 + rax], 0
lea rax, [rax + 1]
jns 0x14005513f
mov rax, qword [r13]
mov r15, qword [r13 + 0x10]
sub rax, r15
mov rdx, r15
cmp rax, 3
jbe 0x14005529a
mov rax, qword [r13 + 8]
mov dword [rax + rdx], 0x2d2d6e78
add rdx, 4
mov qword [r13 + 0x10], rdx
mov bpl, 1
test rsi, rsi
je 0x1400550a0
mov rcx, r12
add rcx, rsi
mov qword [rsp + 0x100], rcx
xor r8d, r8d
xor r14d, r14d
mov rsi, r12
jmp 0x1400551bf
mov byte [rax + rdx], dil
inc rdx
mov qword [r13 + 0x10], rdx
inc r14d
cmp rsi, qword [rsp + 0x100]
je 0x1400552b7
movzx r9d, byte [rsi]
movzx edi, r9b
test dil, dil
js 0x1400551f0
inc rsi
inc r8d
cmp rdx, qword [r13]
jne 0x1400551a3
mov rcx, r13
mov ebx, r8d
call fcn.14000bd60
mov r8d, ebx
mov rax, qword [r13 + 8]
mov rdx, qword [r13 + 0x10]
jmp 0x1400551a3
mov ecx, edi
and ecx, 0x1f
movzx r10d, byte [rsi + 1]
and r10d, 0x3f
cmp dil, 0xdf
jbe 0x140055256
mov r11d, r8d
movzx r8d, byte [rsi + 2]
shl r10d, 6
and r8d, 0x3f
or r8d, r10d
cmp r9b, 0xf0
jb 0x140055276
movzx edi, byte [rsi + 3]
and ecx, 7
shl ecx, 0x12
shl r8d, 6
and edi, 0x3f
or edi, r8d
or edi, ecx
cmp edi, 0x110000
je 0x1400552b4
add rsi, 4
mov r8d, r11d
inc r8d
cmp edi, 0x80
jae 0x1400551b1
jmp 0x1400551d2
add rsi, 2
shl ecx, 6
or ecx, r10d
mov edi, ecx
inc r8d
cmp edi, 0x80
jae 0x1400551b1
jmp 0x1400551d2
add rsi, 3
shl ecx, 0xc
or r8d, ecx
mov edi, r8d
mov r8d, r11d
inc r8d
cmp edi, 0x80
jae 0x1400551b1
jmp 0x1400551d2
mov r8d, 4
mov rcx, r13
mov rdx, r15
call fcn.14010fe50
mov rdx, qword [r13 + 0x10]
jmp 0x14005516b
mov r8d, r11d
test r14d, r14d
mov rdi, qword [rsp + 0x118]
je 0x1400552eb
cmp rdx, qword [r13]
jne 0x1400552dc
mov rcx, r13
mov esi, r8d
call fcn.14000bd60
mov r8d, esi
mov rdx, qword [r13 + 0x10]
mov rax, qword [r13 + 8]
mov byte [rax + rdx], 0x2d
inc rdx
mov qword [r13 + 0x10], rdx
cmp r14d, r8d
jae 0x1400550a0
mov dword [rsp + 0x124], r8d
mov qword [rsp + 0x170], r15
mov eax, 0x80
mov ecx, 0x48
xor r8d, r8d
mov dword [rsp + 0xe8], r14d
mov rbx, qword [rsp + 0x100]
mov qword [rsp + 0x108], r12
mov qword [rsp + 0x28], rcx
jmp 0x14005533b
inc r12
cmp eax, ebp
jbe 0x1400553dd
cmp r12, rbx
je 0x140055977
movzx r10d, byte [r12]
movzx ebp, r10b
test bpl, bpl
jns 0x140055330
mov edx, ebp
and edx, 0x1f
movzx r11d, byte [r12 + 1]
and r11d, 0x3f
cmp bpl, 0xdf
jbe 0x1400553a8
movzx r9d, byte [r12 + 2]
shl r11d, 6
and r9d, 0x3f
or r9d, r11d
cmp r10b, 0xf0
jb 0x1400553b9
movzx ebp, byte [r12 + 3]
and edx, 7
shl edx, 0x12
shl r9d, 6
and ebp, 0x3f
or ebp, r9d
or ebp, edx
cmp ebp, 0x110000
je 0x140055977
add r12, 4
jmp 0x140055333
add r12, 2
shl edx, 6
or edx, r11d
mov ebp, edx
jmp 0x140055333
add r12, 3
shl edx, 0xc
or r9d, edx
mov ebp, r9d
jmp 0x140055333
inc r12
cmp ebp, edx
mov r9d, edx
cmovb r9d, ebp
cmp edx, eax
cmovae ebp, r9d
cmp r12, rbx
je 0x14005546d
movzx r11d, byte [r12]
movzx edx, r11b
test dl, dl
jns 0x1400553cb
mov r9d, edx
and r9d, 0x1f
movzx esi, byte [r12 + 1]
and esi, 0x3f
cmp dl, 0xdf
jbe 0x140055447
movzx r10d, byte [r12 + 2]
shl esi, 6
and r10d, 0x3f
or r10d, esi
cmp r11b, 0xf0
jb 0x14005545a
movzx edx, byte [r12 + 3]
and r9d, 7
shl r9d, 0x12
shl r10d, 6
and edx, 0x3f
or edx, r10d
or edx, r9d
cmp edx, 0x110000
je 0x14005546d
add r12, 4
jmp 0x1400553ce
add r12, 2
shl r9d, 6
or r9d, esi
mov edx, r9d
jmp 0x1400553ce
add r12, 3
shl r9d, 0xc
or r10d, r9d
mov edx, r10d
jmp 0x1400553ce
mov ecx, r14d
inc ecx
je 0x14005591f
mov r10d, ebp
sub r10d, eax
mov eax, r8d
not eax
xor edx, edx
div ecx
cmp r10d, eax
ja 0x1400557fc
imul r10d, ecx
add r10d, r8d
mov rsi, qword [rsp + 0x108]
jmp 0x1400554b0
mov r9d, r14d
mov r8d, r10d
cmp rsi, rbx
je 0x1400557cd
movzx r8d, byte [rsi]
movzx eax, r8b
test al, al
js 0x1400554d1
inc rsi
mov r9, qword [rsp + 0x28]
cmp eax, ebp
jb 0x140055550
jmp 0x140055559
mov ecx, eax
and ecx, 0x1f
movzx r9d, byte [rsi + 1]
and r9d, 0x3f
cmp al, 0xdf
jbe 0x140055525
movzx edx, byte [rsi + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp r8b, 0xf0
jb 0x14005553c
movzx eax, byte [rsi + 3]
and ecx, 7
shl ecx, 0x12
shl edx, 6
and eax, 0x3f
or eax, edx
or eax, ecx
cmp eax, 0x110000
mov r9, qword [rsp + 0x28]
je 0x1400557f4
add rsi, 4
cmp eax, ebp
jb 0x140055550
jmp 0x140055559
add rsi, 2
shl ecx, 6
or ecx, r9d
mov eax, ecx
mov r9, qword [rsp + 0x28]
cmp eax, ebp
jb 0x140055550
jmp 0x140055559
add rsi, 3
shl ecx, 0xc
or edx, ecx
mov eax, edx
mov r9, qword [rsp + 0x28]
cmp eax, ebp
jae 0x140055559
inc r10d
je 0x1400557fc
cmp eax, ebp
jne 0x1400554a1
mov qword [rsp + 0xf0], rsi
mov dword [rsp + 0xf8], r14d
lea r12d, [r9 + 0x1a]
lea ecx, [r9 - 0x24]
neg ecx
cmp r12d, 0x25
mov eax, 0x1a
cmovb ecx, eax
cmp r9d, 0x24
mov eax, 1
cmovae ecx, eax
mov esi, r10d
mov dword [rsp + 0x110], r10d
cmp r10d, ecx
jae 0x14005566c
mov edx, 0x61
cmp esi, 0x1a
jb 0x1400555bf
mov edx, 0x16
cmp esi, 0x24
jae 0x140055970
add edx, esi
mov rcx, r13
call fcn.1400524f0
mov ecx, dword [rsp + 0xf8]
mov r9d, ecx
inc r9d
mov r11d, 0xd41d41d5
mov eax, dword [rsp + 0xe8]
mov edx, dword [rsp + 0x110]
je 0x1400558b4
cmp ecx, eax
mov ecx, 2
mov eax, 0x2bc
cmove ecx, eax
xor r8d, r8d
mov eax, edx
xor edx, edx
div ecx
mov ecx, eax
xor edx, edx
div r9d
add eax, ecx
cmp eax, 0x1c8
mov rbx, qword [rsp + 0x100]
mov rsi, qword [rsp + 0xf0]
jb 0x140055792
xor ecx, ecx
mov rdi, qword [rsp + 0x118]
nop word cs:[rax + rax]
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 0x140055640
jmp 0x14005579f
mov ebx, r9d
neg ebx
mov r14d, 0x48
mov esi, dword [rsp + 0x110]
jmp 0x1400556bd
mov rax, qword [r13 + 8]
mov byte [rax + rdx], r15b
inc rdx
mov qword [r13 + 0x10], rdx
mov eax, esi
xor edx, edx
div edi
lea ecx, [rbx + r14]
cmp r14d, r12d
mov edx, 0x1a
cmovae ecx, edx
cmp r14d, r9d
mov edx, 1
cmovbe ecx, edx
add r14d, 0x24
mov esi, eax
cmp eax, ecx
jb 0x1400555a7
mov edi, ecx
sub edi, 0x24
je 0x14005586a
sub esi, ecx
neg edi
mov eax, esi
xor edx, edx
div edi
add edx, ecx
mov r15d, 0x61
cmp edx, 0x1a
jb 0x1400556ee
mov r15d, 0x16
cmp edx, 0x24
jae 0x140055970
add r15d, edx
cmp r15d, 0x7f
ja 0x140055720
mov rdx, qword [r13 + 0x10]
cmp rdx, qword [r13]
jne 0x140055680
mov rcx, r13
call fcn.14000bd60
mov r9, qword [rsp + 0x28]
mov rdx, qword [r13 + 0x10]
jmp 0x140055680
mov rcx, r13
movzx r13d, r15w
shr r13d, 6
mov rax, qword [rcx]
mov rdx, qword [rcx + 0x10]
sub rax, rdx
cmp rax, 1
jbe 0x14005576c
mov r8, qword [rsp + 0x2f0]
mov rax, qword [r8 + 8]
and r15d, 0x3f
shl r15d, 8
movzx ecx, r13w
mov r13, r8
or ecx, r15d
or ecx, 0x80c0
mov word [rax + rdx], cx
add rdx, 2
jmp 0x14005568b
mov r8d, 2
mov rcx, qword [rsp + 0x2f0]
call fcn.14010fe50
mov r9, qword [rsp + 0x28]
mov rax, qword [rsp + 0x2f0]
mov rdx, qword [rax + 0x10]
jmp 0x14005573b
xor ecx, ecx
mov r10d, eax
mov rdi, qword [rsp + 0x118]
lea eax, [r10*4]
lea eax, [rax + rax*8]
add r10d, 0x26
xor edx, edx
div r10w
movzx eax, ax
add eax, ecx
mov qword [rsp + 0x28], rax
mov r10d, r8d
mov r14d, r9d
cmp rsi, rbx
jne 0x1400554b0
inc r8d
inc ebp
mov r14d, r9d
mov eax, ebp
cmp r9d, dword [rsp + 0x124]
mov r12, qword [rsp + 0x108]
mov rcx, qword [rsp + 0x28]
jb 0x140055329
jmp 0x140055862
mov r9d, r14d
mov r8d, r10d
jmp 0x1400557cd
mov byte [rsp + 0xd8], 1
mov rax, qword [r13 + 0x10]
mov rsi, qword [rsp + 0x170]
cmp rax, rsi
mov bpl, 1
jb 0x1400550a0
test rsi, rsi
je 0x140055839
cmp rax, rsi
jbe 0x140055840
mov rax, qword [r13 + 8]
cmp byte [rax + rsi], 0xbf
jg 0x140055099
jmp 0x1400559b0
xor esi, esi
jmp 0x140055099
je 0x140055099
jmp 0x1400559b0
mov rcx, r13
mov rdx, r15
mov r8, rsi
call fcn.14010fe50
mov r15, qword [r13 + 0x10]
jmp 0x140055084
mov bpl, 1
jmp 0x1400550a0
lea rcx, str.attempt_to_calculate_the_remainder_with_a_divisor_of_zero
lea r8, str.C:Usersmixer.cargo_registry_srcindex.crates.io_6f17d22bba15001fidna_0.3.0_srcpunycode.rs
mov edx, 0x39
call fcn.14010b520
ud2
mov eax, dword [rsp + 0xe0]
mov dword [rdi + 8], eax
mov rax, qword [rsp + 0xd8]
mov qword [rdi], rax
jmp 0x140053747
lea r8, [0x14012f9b0]
mov edx, 4
mov rcx, r9
call fcn.14010b510
ud2
lea rcx, str.attempt_to_divide_by_zero_rustc_90c541806f23a127002de5b4038be731ba1458calibrarycore_src_slice_sort.rs
lea r8, str.C:Usersmixer.cargo_registry_srcindex.crates.io_6f17d22bba15001fidna_0.3.0_srcpunycode.rs
mov edx, 0x19
call fcn.14010b520
ud2
lea r8, [0x14012f9b0]
mov edx, 4
mov rcx, rax
call fcn.14010b510
ud2
lea r8, str.C:Usersmixer.cargo_registry_srcindex.crates.io_6f17d22bba15001funicode_normalization_0.1.22_srclookups.rs
jmp 0x140055953
lea r8, str.C:Usersmixer.cargo_registry_srcindex.crates.io_6f17d22bba15001funicode_normalization_0.1.22_srclookups.rs
mov edx, 0xd4e
call fcn.14010b500
ud2
lea rcx, str.attempt_to_divide_by_zero_rustc_90c541806f23a127002de5b4038be731ba1458calibrarycore_src_slice_sort.rs
lea r8, str.C:Usersmixer.cargo_registry_srcindex.crates.io_6f17d22bba15001fidna_0.3.0_srcpunycode.rs
mov edx, 0x19
call fcn.14010b520
ud2
lea r8, str.C:Usersmixer.cargo_registry_srcindex.crates.io_6f17d22bba15001funicode_normalization_0.1.22_srclookups.rs
mov edx, 0x1667
call fcn.14010b500
ud2
lea r8, str.C:Usersmixer.cargo_registry_srcindex.crates.io_6f17d22bba15001funicode_normalization_0.1.22_srclookups.rs
mov rcx, rsi
call fcn.14010b510
ud2
lea r8, [0x14012f9b0]
mov edx, 4
call fcn.14010b510
ud2
call fcn.14010d160
ud2
lea rcx, str.called__Option::unwrap____on_a__None__value
lea r8, str.C:Usersmixer.cargo_registry_srcindex.crates.io_6f17d22bba15001fidna_0.3.0_srcpunycode.rs
mov edx, 0x2b
call fcn.14010b520
ud2
lea rax, str.C:Usersmixer.cargo_registry_srcindex.crates.io_6f17d22bba15001fidna_0.3.0_srcuts46.rs
mov qword [rsp + 0x20], rax
mov rcx, r13
mov rdx, r15
mov r8, rsi
mov r9, r15
call fcn.14010b930
ud2
lea rcx, str.assertion_failed:_self.is_char_boundary_new_len_W_
lea r8, [0x140174038]
mov edx, 0x30
call fcn.14010b520
ud2
call fcn.14001bd20
ud2