Function at 0x140036550
Capabilities:
Encrypt data using speck

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x258
movdqa xmmword [rsp + 0x240], xmm15
movdqa xmmword [rsp + 0x230], xmm14
movdqa xmmword [rsp + 0x220], xmm13
movdqa xmmword [rsp + 0x210], xmm12
movdqa xmmword [rsp + 0x200], xmm11
movdqa xmmword [rsp + 0x1f0], xmm10
movdqa xmmword [rsp + 0x1e0], xmm9
movdqa xmmword [rsp + 0x1d0], xmm8
movdqa xmmword [rsp + 0x1c0], xmm7
movaps xmmword [rsp + 0x1b0], xmm6
mov qword [rsp + 0x190], rcx
mov rbx, qword [rsp + 0x2c0]
test r9, r9
je 0x14003672a
lea rax, [r8 + r9]
xor edi, edi
movdqa xmm0, xmmword [0x14012e980]
mov rcx, r8
jmp 0x1400365ff
xor r11d, r11d
mov rdi, r11
cmp rcx, rax
je 0x140037cc7
movzx ebx, byte [rcx]
movzx r10d, bl
test r10b, r10b
js 0x140036630
inc rcx
mov rbx, qword [rsp + 0x2c0]
cmp r10d, 0x2e
je 0x1400365f0
jmp 0x1400366d0
mov r11d, r10d
and r11d, 0x1f
movzx esi, byte [rcx + 1]
and esi, 0x3f
cmp r10b, 0xdf
jbe 0x14003668c
movzx r10d, byte [rcx + 2]
shl esi, 6
and r10d, 0x3f
or r10d, esi
cmp bl, 0xf0
jb 0x1400366ad
movzx esi, byte [rcx + 3]
add rcx, 4
and r11d, 7
shl r11d, 0x12
shl r10d, 6
and esi, 0x3f
or esi, r10d
or esi, r11d
mov r10d, esi
mov rbx, qword [rsp + 0x2c0]
cmp r10d, 0x2e
je 0x1400365f0
jmp 0x1400366d0
add rcx, 2
shl r11d, 6
or r11d, esi
mov r10d, r11d
mov rbx, qword [rsp + 0x2c0]
cmp r10d, 0x2e
jne 0x1400366d0
jmp 0x1400365f0
add rcx, 3
shl r11d, 0xc
or r10d, r11d
mov rbx, qword [rsp + 0x2c0]
cmp r10d, 0x2e
je 0x1400365f0
nop word [rax + rax]
test rdi, rdi
jne 0x1400366db
cmp r10d, 0x2d
je 0x14003672a
mov r11d, 5
cmp rdi, 4
ja 0x140036706
movdqa xmmword [rsp + 0x50], xmm0
je 0x14003a41c
cmp r10d, dword [rsp + rdi*4 + 0x50]
jne 0x140036706
inc rdi
mov r11, rdi
cmp rdi, 4
je 0x14003672a
lea esi, [r10 - 0x61]
cmp esi, 0x1a
setb sil
add r10d, 0xffffffd0
cmp r10d, 0xa
setb r10b
or r10b, sil
cmp r10b, 1
je 0x1400365f3
mov eax, dword [rdx + 0x30]
movzx ecx, byte [rdx + 0x34]
add r9, r8
mov qword [rsp + 0x50], 0
mov dword [rsp + 0x60], 0
mov word [rsp + 0x64], 0
mov byte [rsp + 0x68], 0
mov dword [rsp + 0x6c], 0
mov byte [rsp + 0x70], 0
mov dword [rsp + 0x74], 0
mov byte [rsp + 0x78], 0
mov dword [rsp + 0x7c], 0
mov byte [rsp + 0x80], 0
mov dword [rsp + 0x84], 0
mov qword [rsp + 0x88], r8
mov qword [rsp + 0x90], r9
lea r8, [rsp + 0xf8]
mov qword [rsp + 0x98], r8
mov qword [rsp + 0xa0], 0
mov byte [rsp + 0xb4], cl
shl rcx, 0x20
or rcx, rax
mov qword [rsp + 0x130], rcx
mov qword [rsp + 0x48], rdx
mov qword [rdx + 0x10], 0
mov dword [rsp + 0x100], 0
mov qword [rsp + 0xf8], 0
mov rcx, qword [rbx + 0x10]
mov qword [rsp + 0x188], rcx
xorps xmm6, xmm6
movups xmmword [rsp + 0x10b], xmm6
mov byte [rsp + 0x11b], 0
movups xmmword [rsp + 0x1a0], xmm6
lea r12, [rsp + 0x60]
mov dword [rsp + 0xb0], eax
movups xmm0, xmmword [rsp + 0x108]
movups xmmword [rsp + 0xb5], xmm0
mov eax, dword [rsp + 0x118]
mov dword [rsp + 0xc5], eax
mov dword [rsp + 0xd0], 0
mov word [rsp + 0xd4], 0
movzx eax, word [rsp + 0x1ae]
mov word [rsp + 0xe6], ax
movdqu xmm0, xmmword [rsp + 0x19e]
movdqu xmmword [rsp + 0xd6], xmm0
mov dword [rsp + 0xf0], 0x110000
mov byte [rsp + 0xf4], 0
xor r13d, r13d
lea rbx, [0x140147888]
lea rdi, [0x14014b358]
xor eax, eax
jmp 0x1400368b4
mov rax, qword [r15 + 8]
mov byte [rax + rsi], r14b
inc rsi
mov qword [r15 + 0x10], rsi
mov rax, qword [rsp + 0x50]
test rax, rax
je 0x1400369a1
cmp rax, 1
jne 0x140037bbd
mov rax, qword [rsp + 0x58]
test byte [rsp + 0xd0], 1
je 0x140036900
cmp rax, qword [rsp + 0xe8]
jb 0x140037c1a
mov qword [rsp + 0xe8], 0
jmp 0x14003692a
movzx ecx, word [rsp + 0xd4]
cmp rcx, 4
ja 0x14003a3cd
cmp rax, rcx
jb 0x140037c24
test cx, cx
je 0x14003692a
mov word [rsp + 0xd4], 0
mov qword [rsp + 0x50], 0
jmp 0x1400369a1
movzx esi, bp
imul r14d, esi, 0x6f75
shr r14d, 0x18
lea edx, [r14 + 0x1100]
mov rcx, r12
call fcn.14003d1a0
imul eax, r14d, 0x24c
sub ebp, eax
movzx eax, bp
imul edx, eax, 0x925
shr edx, 0x10
add edx, 0x1161
mov rcx, r12
call fcn.14003d1a0
mov eax, esi
shr eax, 2
imul eax, eax, 0x4925
shr eax, 0x11
lea ecx, [rax + rax*8]
lea ecx, [rcx + rcx*2]
add ecx, eax
sub si, cx
je 0x1400369a1
add esi, 0x11a7
movzx edx, si
mov rcx, r12
call fcn.14003d1a0
mov r9, qword [rsp + 0xc0]
test r9, r9
jne 0x140036cf0
movzx r11d, byte [rsp + 0xb0]
cmp r11b, 2
je 0x140036e12
mov r8, qword [rsp + 0xa0]
mov r15, qword [rsp + 0x88]
mov rsi, qword [rsp + 0x90]
mov r10, qword [rsp + 0x98]
movzx r14d, byte [rsp + 0xb1]
mov rbp, qword [rsp + 0xa8]
nop word cs:[rax + rax]
test r8, r8
je 0x140036a1a
cmp r8, rbp
jne 0x1400370b2
mov qword [rsp + 0xa0], 0
cmp r15, rsi
je 0x140036e0a
lea rax, [r15 + 1]
mov qword [rsp + 0x88], rax
movzx ecx, byte [r15]
movzx edx, cl
test dl, dl
js 0x140036a50
mov r15, rax
lea eax, [rdx - 0x2d]
cmp eax, 2
jae 0x140036b00
jmp case.0x140036c40.0
mov eax, edx
and eax, 0x1f
lea r9, [r15 + 2]
mov qword [rsp + 0x88], r9
movzx r8d, byte [r15 + 1]
and r8d, 0x3f
cmp dl, 0xdf
jbe 0x140036ac6
lea r9, [r15 + 3]
mov qword [rsp + 0x88], r9
movzx edx, byte [r15 + 2]
shl r8d, 6
and edx, 0x3f
or edx, r8d
cmp cl, 0xf0
jb 0x140036ade
lea rcx, [r15 + 4]
mov qword [rsp + 0x88], rcx
movzx r8d, byte [r15 + 3]
and eax, 7
shl eax, 0x12
shl edx, 6
and r8d, 0x3f
or r8d, edx
or r8d, eax
mov r15, rcx
mov edx, r8d
lea eax, [rdx - 0x2d]
cmp eax, 2
jae 0x140036b00
jmp case.0x140036c40.0
shl eax, 6
or eax, r8d
mov r15, r9
mov edx, eax
lea eax, [rdx - 0x2d]
cmp eax, 2
jae 0x140036b00
jmp case.0x140036c40.0
shl eax, 0xc
or edx, eax
mov r15, r9
lea eax, [rdx - 0x2d]
cmp eax, 2
jb case.0x140036c40.0
nop word cs:[rax + rax]
lea eax, [rdx - 0x61]
cmp eax, 0x1a
jb case.0x140036c40.0
lea eax, [rdx - 0x30]
cmp eax, 0xa
jb case.0x140036c40.0
cmp edx, 0xa9de
mov eax, 0x3ad
cmovb rax, r13
cmp dword [rbx + rax*8 + 0xeb0], edx
lea rcx, [rax + 0x1d6]
cmova rcx, rax
cmp dword [rbx + rcx*8 + 0x758], edx
lea rax, [rcx + 0xeb]
cmova rax, rcx
cmp dword [rbx + rax*8 + 0x3b0], edx
lea rcx, [rax + 0x76]
cmova rcx, rax
cmp dword [rbx + rcx*8 + 0x1d8], edx
lea rax, [rcx + 0x3b]
cmova rax, rcx
cmp dword [rbx + rax*8 + 0xe8], edx
lea rcx, [rax + 0x1d]
cmova rcx, rax
cmp dword [rbx + rcx*8 + 0x78], edx
lea rax, [rcx + 0xf]
cmova rax, rcx
cmp dword [rbx + rax*8 + 0x38], edx
lea rcx, [rax + 7]
cmova rcx, rax
cmp dword [rbx + rcx*8 + 0x20], edx
lea rax, [rcx + 4]
cmova rax, rcx
cmp dword [rbx + rax*8 + 0x10], edx
lea rcx, [rax + 2]
cmova rcx, rax
cmp dword [rbx + rcx*8 + 8], edx
lea rax, [rcx + 1]
cmova rax, rcx
xor ecx, ecx
cmp dword [rbx + rax*8], edx
setne cl
adc rax, 0
sub rax, rcx
cmp rax, 0x759
ja 0x140037d78
movzx r9d, word [rbx + rax*8 + 4]
mov ecx, r9d
and ecx, 0x7fff
movzx r8d, cx
test r9w, r9w
js 0x140036c10
movzx eax, word [rbx + rax*8]
mov ecx, edx
sub cx, ax
add ecx, r8d
movzx ecx, cx
cmp ecx, 0x1f73
jb 0x140036c1d
jmp 0x140037da7
cmp r8d, 0x1f73
jae 0x140037f08
movzx eax, byte [rdi + rcx*4]
mov r8d, 0
cmp eax, 1
je case.default.0x140036c40
mov eax, eax
lea r8, [0x140192d34]
movsxd rax, dword [r8 + rax*4]
add rax, r8
jmp rax
mov edx, dword [rsp + 0x60]
lea r10, [rsp + 0x68]
mov rcx, qword [rsp + 0xb8]
test dl, 1
je 0x140036d20
mov r8, qword [rsp + 0x70]
mov rax, qword [rsp + 0x78]
jmp 0x140036d32
movzx eax, word [rsp + 0x64]
cmp rax, 5
jae 0x140037f84
mov r8, r10
cmp rcx, rax
jae 0x140037f58
mov esi, dword [r8 + rcx*8 + 4]
inc rcx
cmp rcx, r9
jne 0x140036e00
test dl, 1
je 0x140036e35
mov r8, qword [rsp + 0x78]
sub r8, r9
je 0x140036e44
xor ecx, ecx
jmp 0x140036d93
movzx edx, byte [r9 + rax*8]
mov eax, dword [r9 + rax*8 + 4]
mov byte [r9 + rcx*8], dl
mov dword [r9 + rcx*8 + 4], eax
lea rax, [rcx + 1]
mov rcx, rax
cmp r8, rax
je 0x140036e57
mov rax, qword [rsp + 0xc0]
add rax, rcx
test byte [rsp + 0x60], 1
je 0x140036dd0
mov rdx, qword [rsp + 0x78]
cmp rax, rdx
jae 0x140037d98
mov r9, qword [rsp + 0x70]
cmp rcx, rdx
jb 0x140036d70
jmp 0x140037d8c
movzx edx, word [rsp + 0x64]
cmp rdx, 5
jae 0x140037db8
cmp rax, rdx
jae 0x140037d98
mov r9, r10
cmp rcx, rdx
jb 0x140036d70
jmp 0x140037d8c
mov qword [rsp + 0xb8], rcx
jmp 0x140036e76
mov byte [rsp + 0xb0], 2
test byte [rsp + 0x60], 1
je 0x140037192
mov rax, qword [rsp + 0x78]
test rax, rax
je 0x140037a70
mov r8, qword [rsp + 0x70]
jmp 0x1400371af
movzx r8d, word [rsp + 0x64]
sub r8, r9
jne 0x140036d63
test dl, 1
je 0x140036e60
cmp qword [rsp + 0x78], r8
jb 0x140036e70
mov qword [rsp + 0x78], r8
jmp 0x140036e70
mov edx, dword [rsp + 0x60]
test dl, 1
jne 0x140036e49
movzx eax, word [rsp + 0x64]
cmp r8, rax
jae 0x140036e70
mov word [rsp + 0x64], r8w
movups xmmword [r12 + 0x58], xmm6
imul eax, esi, 0x9e3779b9
imul ecx, esi, 0x31415926
xor eax, ecx
imul rax, rax, 0x39a
shr rax, 0x20
lea rdx, [0x14016ccd8]
movzx eax, word [rdx + rax*2]
add eax, esi
imul eax, eax, 0x9e3779b9
xor eax, ecx
imul rax, rax, 0x39a
shr rax, 0x20
lea rcx, [0x14016d40c]
mov r15d, dword [rcx + rax*4]
mov eax, r15d
shr eax, 8
cmp eax, esi
cmovne r15d, r13d
mov r14d, dword [rsp + 0xf0]
cmp r14d, 0x110000
jne 0x140036ef0
test r15b, r15b
jne 0x140037a00
mov dword [rsp + 0xf0], esi
jmp 0x1400369a1
cmp byte [rsp + 0xf4], 0
je 0x140036f49
cmp byte [rsp + 0xf5], r15b
jae 0x140037251
lea eax, [r14 - 0x1100]
cmp eax, 0x13
jae 0x1400374d0
lea eax, [rsi - 0x1161]
cmp eax, 0x15
jae 0x14003751c
imul eax, r14d, 0x24c
lea ecx, [rsi + rsi*8]
lea ecx, [rcx + rcx*2]
add ecx, esi
add eax, ecx
add eax, 0xffd7b964
mov dword [rsp + 0xf0], eax
jmp 0x1400369a1
lea eax, [r14 - 0x1100]
cmp eax, 0x13
jae 0x14003725f
lea eax, [rsi - 0x1161]
cmp eax, 0x15
jae 0x1400372ab
imul eax, r14d, 0x24c
lea ecx, [rsi + rsi*8]
lea ecx, [rcx + rcx*2]
add ecx, esi
add eax, ecx
add eax, 0xffd7b964
mov dword [rsp + 0xf0], eax
jmp 0x1400369a1
cmp edx, 0x80
jb 0x140036999
lea ebp, [rdx - 0xac00]
cmp ebp, 0x2ba4
jb 0x140036935
imul eax, edx, 0x9e3779b9
imul ecx, edx, 0x31415926
xor eax, ecx
imul rax, rax, 0x80d
shr rax, 0x20
lea r8, [0x1401706b4]
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, [0x1401716d0]
mov rsi, qword [rcx + rax*8]
cmp edx, esi
jne 0x140036999
mov rax, rsi
shr rax, 0x20
movzx ecx, ax
movzx eax, ax
cmp eax, 0xd4e
ja 0x14003a390
shr rsi, 0x30
mov edx, 0xd4e
sub rdx, rcx
cmp rdx, rsi
jb 0x14003a381
test rsi, rsi
je 0x1400369a1
lea rax, [0x140175738]
lea r14, [rax + rcx*4]
shl esi, 2
xor r15d, r15d
nop word cs:[rax + rax]
mov edx, dword [r14 + r15]
mov rcx, r12
call fcn.14003d1a0
add r15, 4
cmp rsi, r15
jne 0x140037060
jmp 0x1400369a1
lea rax, [r8 + 1]
mov qword [rsp + 0xa0], rax
movzx ecx, byte [r8]
movzx edx, cl
test dl, dl
js 0x1400373fc
nop dword [rax]
cmp byte [rsp + 0xc8], 0
je 0x140036fa0
cmp edx, 0x80
jb 0x140036999
lea ebp, [rdx - 0xac00]
cmp ebp, 0x2ba4
jb 0x140036935
imul ecx, edx, 0x9e3779b9
imul eax, edx, 0x31415926
xor ecx, eax
imul r8, rcx, 0xee4
shr r8, 0x20
lea r9, [0x140178d18]
movzx r8d, word [r9 + r8*2]
add r8d, edx
imul r8d, r8d, 0x9e3779b9
xor r8d, eax
imul r8, r8, 0xee4
shr r8, 0x20
lea r9, [0x14017aae0]
mov rsi, qword [r9 + r8*8]
cmp edx, esi
jne 0x140037324
mov rax, rsi
shr rax, 0x20
movzx ecx, ax
movzx eax, ax
cmp eax, 0x1667
ja 0x14003a3b0
shr rsi, 0x30
mov edx, 0x1667
sub rdx, rcx
cmp rdx, rsi
jb 0x14003a3a1
lea rax, [0x140182200]
lea r14, [rax + rcx*4]
test rsi, rsi
jne 0x1400373a4
jmp 0x1400369a1
movzx eax, word [rsp + 0x64]
test rax, rax
lea r8, [rsp + 0x68]
je 0x140037a70
cmp ax, 5
jae 0x14003a36d
mov rcx, qword [rsp + 0xc0]
mov rdx, rax
sub rdx, rcx
jb 0x14003a35e
cmp rdx, 2
jb 0x1400373cf
lea rcx, [r8 + rcx*8]
cmp rdx, 0x15
jae 0x1400373ca
lea rax, [r8 + rax*8]
lea rdx, [rcx + 8]
xor r8d, r8d
jmp 0x14003720e
mov rsi, rcx
shl r10, 0x20
or r10, r9
mov qword [rsi], r10
add rdx, 8
add r8, 0xfffffffffffffff8
cmp rdx, rax
je 0x1400373cf
movzx r11d, byte [rdx]
cmp r11b, byte [rdx - 8]
jae 0x1400371fd
movzx r9d, r11b
mov r10d, dword [rdx + 4]
xor r14d, r14d
nop word cs:[rax + rax]
mov rsi, qword [rdx + r14 - 8]
mov qword [rdx + r14], rsi
cmp r8, r14
je 0x1400371f0
lea rsi, [r14 - 8]
cmp r11b, byte [rdx + r14 - 0x10]
mov r14, rsi
jb 0x140037230
add rsi, rdx
jmp 0x1400371f3
test r15b, r15b
jne 0x140037841
jmp 0x140037ae9
lea eax, [r14 - 0xac00]
cmp eax, 0x2ba3
ja 0x1400372ab
lea ecx, [rsi - 0x11a8]
cmp ecx, 0x1a
ja 0x1400372ab
movzx ecx, ax
shr ecx, 2
imul ecx, ecx, 0x4925
shr ecx, 0x11
lea edx, [rcx + rcx*8]
lea edx, [rdx + rdx*2]
add edx, ecx
sub eax, edx
test ax, ax
jne 0x1400372ab
lea eax, [r14 + rsi]
add eax, 0xffffee59
mov dword [rsp + 0xf0], eax
jmp 0x1400369a1
mov eax, esi
or eax, r14d
cmp eax, 0x10000
jae 0x140037479
mov ecx, r14d
shl ecx, 0x10
or ecx, esi
imul eax, ecx, 0x9e3779b9
imul edx, ecx, 0x31415926
xor eax, edx
imul rax, rax, 0x3a0
shr rax, 0x20
lea r8, [0x14016e274]
movzx eax, word [r8 + rax*2]
add eax, ecx
imul eax, eax, 0x9e3779b9
xor eax, edx
imul rax, rax, 0x3a0
shr rax, 0x20
lea rdx, [0x14016e9b4]
cmp dword [rdx + rax*8], ecx
jne 0x140037838
lea rcx, [0x14016e9b4]
mov eax, dword [rcx + rax*8 + 4]
mov dword [rsp + 0xf0], eax
jmp 0x1400369a1
imul rcx, rcx, 0x80d
shr rcx, 0x20
lea r8, [0x1401706b4]
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, [0x1401716d0]
mov rsi, qword [rcx + rax*8]
cmp edx, esi
jne 0x140036999
mov rax, rsi
shr rax, 0x20
movzx ecx, ax
movzx eax, ax
cmp eax, 0xd4e
ja 0x14003a390
shr rsi, 0x30
mov edx, 0xd4e
sub rdx, rcx
cmp rdx, rsi
jb 0x14003a381
lea rax, [0x140175738]
lea r14, [rax + rcx*4]
test rsi, rsi
je 0x1400369a1
shl esi, 2
xor r15d, r15d
nop word [rax + rax]
mov edx, dword [r14 + r15]
mov rcx, r12
call fcn.14003d1a0
add r15, 4
cmp rsi, r15
jne 0x1400373b0
jmp 0x1400369a1
call fcn.14003e290
mov edx, dword [rsp + 0x60]
test edx, edx
je 0x1400373e9
mov r9, qword [rsp + 0x78]
mov qword [rsp + 0xc0], r9
jmp 0x140036cf4
movzx r9d, word [rsp + 0x64]
mov qword [rsp + 0xc0], r9
jmp 0x140036cf4
mov eax, edx
and eax, 0x1f
lea r9, [r8 + 2]
mov qword [rsp + 0xa0], r9
movzx r9d, byte [r8 + 1]
and r9d, 0x3f
cmp dl, 0xdf
jbe 0x140037597
lea rdx, [r8 + 3]
mov qword [rsp + 0xa0], rdx
movzx edx, byte [r8 + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp cl, 0xf0
jb 0x14003764f
lea rcx, [r8 + 4]
mov qword [rsp + 0xa0], rcx
movzx ecx, byte [r8 + 3]
and eax, 7
shl eax, 0x12
shl edx, 6
and ecx, 0x3f
or ecx, edx
or ecx, eax
mov edx, ecx
cmp byte [rsp + 0xc8], 0
jne 0x1400370de
jmp 0x140036fa0
cmp r14d, 0x11346
jg 0x1400375b2
cmp r14d, 0x110a4
jle 0x1400376b1
cmp r14d, 0x110a5
je 0x1400377ee
cmp r14d, 0x11131
je 0x140037814
cmp r14d, 0x11132
jne 0x140037838
mov eax, 0x1112f
cmp esi, 0x11127
je 0x140036f7e
jmp 0x140037838
lea eax, [r14 - 0xac00]
cmp eax, 0x2ba3
ja 0x14003751c
lea ecx, [rsi - 0x11a8]
cmp ecx, 0x1a
ja 0x14003751c
movzx ecx, ax
shr ecx, 2
imul ecx, ecx, 0x4925
shr ecx, 0x11
lea edx, [rcx + rcx*8]
lea edx, [rdx + rdx*2]
add edx, ecx
sub eax, edx
test ax, ax
jne 0x14003751c
lea eax, [r14 + rsi]
add eax, 0xffffee59
mov dword [rsp + 0xf0], eax
jmp 0x1400369a1
mov eax, esi
or eax, r14d
cmp eax, 0x10000
jae 0x1400375fc
shl r14d, 0x10
or r14d, esi
imul eax, r14d, 0x9e3779b9
imul ecx, r14d, 0x31415926
xor eax, ecx
imul rax, rax, 0x3a0
shr rax, 0x20
lea rdx, [0x14016e274]
movzx eax, word [rdx + rax*2]
add eax, r14d
imul eax, eax, 0x9e3779b9
xor eax, ecx
imul rax, rax, 0x3a0
shr rax, 0x20
lea rcx, [0x14016e9b4]
cmp dword [rcx + rax*8], r14d
jne 0x140037841
lea rcx, [0x14016e9b4]
mov eax, dword [rcx + rax*8 + 4]
mov dword [rsp + 0xf0], eax
jmp 0x1400369a1
shl eax, 6
or eax, r9d
mov edx, eax
cmp byte [rsp + 0xc8], 0
je 0x140036fa0
jmp 0x1400370de
cmp r14d, 0x115b7
jle 0x1400376e1
cmp r14d, 0x115b8
je 0x140037801
cmp r14d, 0x115b9
je 0x140037827
cmp r14d, 0x11935
jne 0x140037838
mov eax, 0x11938
cmp esi, 0x11930
je 0x140036f7e
jmp 0x140037838
cmp r14d, 0x11346
jg 0x140037667
cmp r14d, 0x110a4
jle 0x140037730
cmp r14d, 0x110a5
je 0x140037963
cmp r14d, 0x11131
je 0x14003798f
cmp r14d, 0x11132
jne 0x140037841
mov eax, 0x1112f
cmp esi, 0x11127
je 0x140036f3d
jmp 0x140037841
shl eax, 0xc
or edx, eax
cmp byte [rsp + 0xc8], 0
jne 0x1400370de
jmp 0x140036fa0
cmp r14d, 0x115b7
jle 0x140037760
cmp r14d, 0x115b8
je 0x140037979
cmp r14d, 0x115b9
je 0x1400379a5
cmp r14d, 0x11935
jne 0x140037841
mov eax, 0x11938
cmp esi, 0x11930
je 0x140036f3d
jmp 0x140037841
cmp r14d, 0x11099
je 0x1400377af
cmp r14d, 0x1109b
jne 0x140037838
mov eax, 0x1109c
cmp esi, 0x110ba
je 0x140036f7e
jmp 0x140037838
cmp r14d, 0x11347
je 0x1400377c2
cmp r14d, 0x114b9
jne 0x140037838
cmp esi, 0x114b0
je 0x1400379cc
cmp esi, 0x114ba
je 0x1400379bb
cmp esi, 0x114bd
jne 0x140037838
mov eax, 0x114be
mov dword [rsp + 0xf0], eax
jmp 0x1400369a1
cmp r14d, 0x11099
je 0x14003791e
cmp r14d, 0x1109b
jne 0x140037841
mov eax, 0x1109c
cmp esi, 0x110ba
je 0x140036f3d
jmp 0x140037841
cmp r14d, 0x11347
je 0x140037934
cmp r14d, 0x114b9
jne 0x140037841
cmp esi, 0x114b0
je 0x1400379ee
cmp esi, 0x114ba
je 0x1400379dd
cmp esi, 0x114bd
jne 0x140037841
mov eax, 0x114be
mov dword [rsp + 0xf0], eax
jmp 0x1400369a1
mov eax, 0x1109a
cmp esi, 0x110ba
je 0x140036f7e
jmp 0x140037838
mov eax, 0x1134b
cmp esi, 0x1133e
je 0x140036f7e
mov eax, 0x110000
cmp esi, 0x11357
mov ecx, 0x1134c
cmove eax, ecx
je 0x140036f7e
jmp 0x140037838
mov eax, 0x110ab
cmp esi, 0x110ba
je 0x140036f7e
jmp 0x140037838
mov eax, 0x115ba
cmp esi, 0x115af
je 0x140036f7e
jmp 0x140037838
mov eax, 0x1112e
cmp esi, 0x11127
je 0x140036f7e
jmp 0x140037838
mov eax, 0x115bb
cmp esi, 0x115af
je 0x140036f7e
test r15b, r15b
je 0x140037b8e
test byte [rsp + 0xd0], 1
je 0x140037883
mov r14, qword [rsp + 0xe8]
cmp r14, qword [rsp + 0xd8]
jne 0x14003786a
lea rcx, [rsp + 0xd8]
call fcn.14010b290
mov rax, qword [rsp + 0xe0]
mov dword [rax + r14*4], esi
inc r14
mov qword [rsp + 0xe8], r14
jmp 0x1400378a2
movzx eax, word [rsp + 0xd4]
cmp rax, 3
ja 0x1400378b7
mov dword [rsp + rax*4 + 0xd8], esi
inc eax
mov word [rsp + 0xd4], ax
mov byte [rsp + 0xf4], 1
mov byte [rsp + 0xf5], r15b
jmp 0x1400369a1
lea rcx, [rsp + 0x138]
lea rdx, [rsp + 0xd4]
mov r8d, esi
call fcn.140123db0
cmp dword [rsp + 0xd0], 0
je 0x1400378fb
cmp qword [rsp + 0xd8], 0
je 0x1400378fb
mov r8, qword [rsp + 0xe0]
mov rcx, qword [0x14019f258]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
movdqu xmm0, xmmword [rsp + 0x138]
movups xmm1, xmmword [rsp + 0x148]
movups xmmword [r12 + 0x80], xmm1
movdqu xmmword [r12 + 0x70], xmm0
jmp 0x1400378a2
mov eax, 0x1109a
cmp esi, 0x110ba
je 0x140036f3d
jmp 0x140037841
mov eax, 0x1134b
cmp esi, 0x1133e
je 0x140036f3d
mov eax, 0x110000
cmp esi, 0x11357
mov ecx, 0x1134c
cmove eax, ecx
je 0x140036f3d
jmp 0x140037841
mov eax, 0x110ab
cmp esi, 0x110ba
je 0x140036f3d
jmp 0x140037841
mov eax, 0x115ba
cmp esi, 0x115af
je 0x140036f3d
jmp 0x140037841
mov eax, 0x1112e
cmp esi, 0x11127
je 0x140036f3d
jmp 0x140037841
mov eax, 0x115bb
cmp esi, 0x115af
je 0x140036f3d
jmp 0x140037841
mov eax, 0x114bb
mov dword [rsp + 0xf0], eax
jmp 0x1400369a1
mov eax, 0x114bc
mov dword [rsp + 0xf0], eax
jmp 0x1400369a1
mov eax, 0x114bb
mov dword [rsp + 0xf0], eax
jmp 0x1400369a1
mov eax, 0x114bc
mov dword [rsp + 0xf0], eax
jmp 0x1400369a1
mov r14d, esi
cmp r14d, 0x80
jae 0x140037a30
mov r15, qword [rsp + 0x48]
mov rsi, qword [r15 + 0x10]
cmp rsi, qword [r15]
jne 0x1400368a0
mov rcx, r15
call fcn.1400331e0
jmp 0x1400368a0
mov dword [rsp + 0x138], 0
mov eax, r14d
cmp r14d, 0x800
jae 0x140037aac
shr eax, 6
or al, 0xc0
mov byte [rsp + 0x138], al
and r14b, 0x3f
or r14b, 0x80
mov byte [rsp + 0x139], r14b
mov esi, 2
jmp 0x140037b52
mov qword [rsp + 0x50], 2
mov qword [rsp + 0x58], 0
mov r14d, dword [rsp + 0xf0]
mov eax, 2
cmp r14d, 0x110000
je 0x1400368b4
mov dword [rsp + 0xf0], 0x110000
jmp 0x140037a03
cmp r14d, 0x10000
jae 0x140037b0f
shr eax, 0xc
or al, 0xe0
mov byte [rsp + 0x138], al
mov eax, r14d
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x139], al
and r14b, 0x3f
or r14b, 0x80
mov byte [rsp + 0x13a], r14b
mov esi, 3
jmp 0x140037b52
mov dword [rsp + 0xf0], esi
mov byte [rsp + 0xf4], 0
mov qword [rsp + 0x50], 1
mov qword [rsp + 0x58], 0
jmp 0x140037a03
shr eax, 0x12
or al, 0xf0
mov byte [rsp + 0x138], al
mov eax, r14d
shr eax, 0xc
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x139], al
mov eax, r14d
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x13a], al
and r14b, 0x3f
or r14b, 0x80
mov byte [rsp + 0x13b], r14b
mov esi, 4
mov r14, qword [rsp + 0x48]
mov rax, qword [r14]
mov r15, qword [r14 + 0x10]
sub rax, r15
cmp rax, rsi
jb 0x140037b9a
mov rcx, qword [r14 + 8]
add rcx, r15
lea rdx, [rsp + 0x138]
mov r8, rsi
call fcn.140120b90
add r15, rsi
mov qword [r14 + 0x10], r15
mov rax, qword [rsp + 0x50]
jmp 0x1400368b4
mov dword [rsp + 0xf0], esi
jmp 0x140037a03
mov qword [rsp + 0x20], 1
mov r9d, 1
mov rcx, r14
mov rdx, r15
mov r8, rsi
call fcn.140128e10
mov r15, qword [r14 + 0x10]
jmp 0x140037b66
mov rdx, qword [rsp + 0x58]
mov eax, dword [rsp + 0xd0]
test eax, eax
je 0x140037be1
cmp rdx, qword [rsp + 0xe8]
jae 0x140037c46
mov r8, qword [rsp + 0xe0]
jmp 0x140037c00
movzx ecx, word [rsp + 0xd4]
cmp rcx, 5
jae 0x14003a3cd
lea r8, [rsp + 0xd8]
cmp rdx, rcx
jae 0x140037c54
mov r14d, dword [r8 + rdx*4]
inc rdx
mov qword [rsp + 0x50], 2
mov qword [rsp + 0x58], rdx
jmp 0x140037a03
mov rcx, qword [rsp + 0xe0]
jmp 0x140037c2c
lea rcx, [rsp + 0xd8]
mov r14d, dword [rcx + rax*4]
inc rax
mov qword [rsp + 0x50], 1
mov qword [rsp + 0x58], rax
jmp 0x140037a03
mov qword [rsp + 0xe8], 0
jmp 0x140037c63
test cx, cx
je 0x140037c63
mov word [rsp + 0xd4], 0
mov r14d, dword [rsp + 0xf0]
mov dword [rsp + 0xf0], 0x110000
cmp r14d, 0x110000
jne 0x140037a03
cmp dword [rsp + 0x60], 0
je 0x140037dcc
cmp qword [rsp + 0x68], 0
mov rbx, qword [rsp + 0x2c0]
mov rsi, qword [rsp + 0x48]
je 0x140037dd9
mov r8, qword [rsp + 0x70]
mov rcx, qword [0x14019f258]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov eax, dword [rsp + 0xd0]
jmp 0x140037dd9
mov rax, qword [rbx]
mov rsi, qword [rbx + 0x10]
sub rax, rsi
cmp rax, r9
jb 0x140037f19
mov rcx, qword [rbx + 8]
add rcx, rsi
mov rdx, r8
mov r8, r9
mov rdi, r9
call fcn.140120b90
add rsi, rdi
mov qword [rbx + 0x10], rsi
mov rax, qword [rsp + 0x190]
mov qword [rax], 0
mov dword [rax + 8], 0
movaps xmm6, xmmword [rsp + 0x1b0]
movaps xmm7, xmmword [rsp + 0x1c0]
movaps xmm8, xmmword [rsp + 0x1d0]
movaps xmm9, xmmword [rsp + 0x1e0]
movaps xmm10, xmmword [rsp + 0x1f0]
movaps xmm11, xmmword [rsp + 0x200]
movaps xmm12, xmmword [rsp + 0x210]
movaps xmm13, xmmword [rsp + 0x220]
movaps xmm14, xmmword [rsp + 0x230]
movaps xmm15, xmmword [rsp + 0x240]
add rsp, 0x258
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea r8, [0x1401477f8]
mov edx, 0x75a
mov rcx, rax
call fcn.140121a60
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001funicode_normalization_0.1.23_srcdecompose.rs
call fcn.140121a60
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001funicode_normalization_0.1.23_srcdecompose.rs
mov rcx, rax
call fcn.140121a60
lea r8, [0x140147810]
mov edx, 0x1f73
call fcn.140121a60
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_tinyvec_1.6.0_src_arrayvec.rs
mov rcx, rdx
mov edx, 4
call fcn.140121b10
mov rbx, qword [rsp + 0x2c0]
mov rsi, qword [rsp + 0x48]
test eax, eax
je 0x140037dff
cmp qword [rsp + 0xd8], 0
je 0x140037dff
mov r8, qword [rsp + 0xe0]
mov rcx, qword [0x14019f258]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov qword [rsp + 0x108], 0
mov qword [rsp + 0x110], 8
mov qword [rsp + 0x118], 0
mov rax, qword [rsi + 8]
mov rcx, qword [rsi + 0x10]
mov qword [rsp + 0x138], 0
mov qword [rsp + 0x140], rcx
mov qword [rsp + 0x148], rax
mov qword [rsp + 0x150], rcx
mov qword [rsp + 0x158], 0
mov qword [rsp + 0x160], rcx
movabs rax, 0x2e0000002e
mov qword [rsp + 0x168], rax
mov byte [rsp + 0x170], 1
mov word [rsp + 0x178], 1
mov rax, qword [rsp + 0x130]
and rax, 0xffffffffffff00ff
mov qword [rsp + 0x180], rax
mov dil, 1
lea r14, [rsp + 0x138]
xorps xmm6, xmm6
movdqa xmm10, xmmword [0x14012e9c0]
movdqa xmm11, xmmword [0x14012e700]
movdqa xmm12, xmmword [0x14012e9d0]
movdqa xmm13, xmmword [0x14012e9e0]
movdqa xmm14, xmmword [0x14012e9f0]
movdqa xmm15, xmmword [0x14012ea00]
movdqa xmm7, xmmword [0x14012ea10]
movdqa xmm8, xmmword [0x14012ea20]
movdqa xmm9, xmmword [0x14012ea30]
mov dword [rsp + 0x38], 0
jmp 0x140037fd0
lea r8, [0x140147828]
mov edx, 0x1f73
call fcn.140121a60
mov qword [rsp + 0x20], 1
mov rbx, r9
mov r9d, 1
mov rcx, qword [rsp + 0x2c0]
mov rdx, rsi
mov rsi, r8
mov r8, rbx
call fcn.140128e10
mov r8, rsi
mov r9, rbx
mov rbx, qword [rsp + 0x2c0]
mov rsi, qword [rbx + 0x10]
jmp 0x140037cda
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001funicode_normalization_0.1.23_srcdecompose.rs
mov rdx, rax
call fcn.140121a60
lea rax, [0x1401477e0]
mov qword [rsp + 0x20], rax
lea rcx, [0x140153124]
mov edx, 0x321c
call fcn.1401220d0
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_tinyvec_1.6.0_src_arrayvec.rs
mov edx, 4
mov rcx, rax
call fcn.140121b10
test qword [rsi], rax
je 0x14003942e
mov byte [rsp + 0xf8], 1
mov al, 1
mov dword [rsp + 0x38], eax
xor edi, edi
mov rbx, qword [rsp + 0x2c0]
lea r14, [rsp + 0x138]
nop word cs:[rax + rax]
mov rcx, r14
call fcn.14003a4e0
test rax, rax
je 0x1400394a2
mov r12, rax
mov r15, rdx
test dil, 1
jne 0x14003800d
mov rsi, qword [rbx + 0x10]
cmp rsi, qword [rbx]
jne 0x140037ffe
mov rcx, rbx
call fcn.1400331e0
mov rax, qword [rbx + 8]
mov byte [rax + rsi], 0x2e
inc rsi
mov qword [rbx + 0x10], rsi
cmp r15, 4
jb 0x140038021
cmp dword [r12], 0x2d2d6e78
je 0x140038176
test byte [rsp + 0x38], 1
jne 0x140038128
test r15, r15
je 0x140038120
mov rsi, r12
add rsi, r15
mov rdi, r12
jmp 0x140038049
cmp rdi, rsi
je 0x140038120
movzx edx, byte [rdi]
movzx ecx, dl
test cl, cl
js 0x140038070
inc rdi
lea eax, [rcx - 0x21]
cmp eax, 0x5d
jbe 0x140038040
jmp 0x1400380f0
mov eax, ecx
and eax, 0x1f
movzx r8d, byte [rdi + 1]
and r8d, 0x3f
cmp cl, 0xdf
jbe 0x1400380ba
movzx ecx, byte [rdi + 2]
shl r8d, 6
and ecx, 0x3f
or ecx, r8d
cmp dl, 0xf0
jb 0x1400380d3
movzx edx, byte [rdi + 3]
add rdi, 4
and eax, 7
shl eax, 0x12
shl ecx, 6
and edx, 0x3f
or edx, ecx
or edx, eax
mov ecx, edx
lea eax, [rcx - 0x21]
cmp eax, 0x5d
jbe 0x140038040
jmp 0x1400380f0
add rdi, 2
shl eax, 6
or eax, r8d
mov ecx, eax
lea eax, [rcx - 0x21]
cmp eax, 0x5d
ja 0x1400380f0
jmp 0x140038040
add rdi, 3
shl eax, 0xc
or ecx, eax
lea eax, [rcx - 0x21]
cmp eax, 0x5d
jbe 0x140038040
nop dword [rax + rax]
call fcn.1400ffb10
cmp al, 0x11
ja 0x140038040
movzx eax, al
mov ecx, 0x20003
bt ecx, eax
jae 0x140038040
mov al, 1
mov dword [rsp + 0x38], eax
jmp 0x140038128
mov dword [rsp + 0x38], 0
mov rcx, r12
mov rdx, r15
mov r8, qword [rsp + 0x130]
lea r9, [rsp + 0xf8]
call fcn.14003a730
mov rax, qword [rbx]
mov rsi, qword [rbx + 0x10]
sub rax, rsi
cmp rax, r15
jb 0x14003887f
mov rcx, qword [rbx + 8]
add rcx, rsi
mov rdx, r12
mov r8, r15
call fcn.140120b90
add r15, rsi
mov qword [rbx + 0x10], r15
xor edi, edi
jmp 0x140037fd0
lea rsi, [r12 + 4]
add r15, 0xfffffffffffffffc
mov qword [rsp + 0x118], 0
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x58], r15
mov qword [rsp + 0x60], 0
mov qword [rsp + 0x68], r15
mov byte [rsp + 0x78], 1
movabs rax, 0x2d0000002d
mov qword [rsp + 0x70], rax
lea rdx, [r12 + 0xb]
and rdx, 0xfffffffffffffff8
sub rdx, rsi
mov r8, r12
add r8, 3
mov rbp, r15
jmp 0x1400381de
mov qword [rsp + 0x68], rbp
cmp rbp, r15
ja 0x140038306
mov rcx, rbp
sub rcx, rdx
and ecx, 0xf
cmp rbp, rdx
mov eax, 0
mov r9, rbp
cmova r9, rdx
cmovae rax, rcx
mov rcx, rbp
sub rcx, rax
jb 0x14003a432
lea r10, [r8 + rbp]
movabs r14, 0x8080808080808080
nop word cs:[rax + rax]
test rax, rax
je 0x140038240
dec rax
cmp byte [r10], 0x2d
lea r10, [r10 - 1]
jne 0x140038220
add rax, rcx
mov rbp, rax
jmp 0x1400382b0
mov rax, rcx
cmp rcx, r9
jbe 0x14003828d
lea rcx, [rax - 0x10]
mov r10, qword [r12 + rax - 0xc]
mov r11, qword [r12 + rax - 4]
mov rdi, r10
movabs r13, 0xd2d2d2d2d2d2d2d2
xor rdi, r13
mov rbx, r11
xor rbx, r13
movabs r13, 0x101010101010101
add rbx, r13
or rbx, r11
add rdi, r13
or rdi, r10
and rdi, rbx
not rdi
test rdi, r14
je 0x140038240
cmp rax, rbp
ja 0x14003a441
mov rbp, rax
nop dword [rax]
sub rbp, 1
jb 0x140038306
cmp byte [r8 + rax], 0x2d
mov rax, rbp
jne 0x1400382a0
cmp rbp, r15
jae 0x1400381d0
mov al, 0x2d
cmp byte [rsi + rbp], al
jne 0x1400381d0
test rbp, rbp
je 0x1400392a5
cmp rbp, r15
jae 0x1400382dc
cmp byte [rsi + rbp], 0xbf
jle 0x14003a4b6
lea r8, [rbp + 1]
cmp r8, r15
jae 0x1400392af
cmp byte [rsi + r8], 0xbf
movabs rax, 0x8080808080808080
jle 0x14003a49c
mov rbx, r8
jmp 0x1400392c2
mov rbx, rsi
xor ebp, ebp
mov esi, 1
test r15, r15
je 0x1400385bd
add r15, rbx
xor r14d, r14d
mov edi, 0x48
mov r12d, 0x80
xor r13d, r13d
mov dword [rsp + 0x30], ebp
xor r8d, r8d
mov qword [rsp + 0x128], r13
lea r9d, [rdi + 0x1a]
inc rbx
mov r10d, edi
neg r10d
mov r11d, 1
mov r13d, 0x24
mov dword [rsp + 0x40], r8d
mov ecx, r8d
movzx eax, byte [rbx - 1]
lea edx, [rax - 0x30]
cmp dl, 0xa
jb 0x140038390
nop dword [rax]
lea edx, [rax - 0x41]
cmp dl, 0x1a
jb 0x140038394
add al, 0x9f
mov edx, eax
cmp al, 0x19
jbe 0x140038394
jmp 0x140037fa1
add al, 0xea
mov edx, eax
test r11d, r11d
je 0x14003a410
movzx r8d, dl
mov eax, ecx
not eax
xor edx, edx
div r11d
cmp eax, r8d
jb 0x140037fa1
mov eax, r11d
imul eax, r8d
add ecx, eax
lea eax, [r10 + r13]
cmp r13d, r9d
mov edx, 0x1a
cmovae eax, edx
cmp r13d, edi
mov edx, 1
cmovbe eax, edx
cmp eax, r8d
ja 0x140038419
mov r8d, 0x24
sub r8d, eax
mov eax, r8d
mul r11d
jo 0x140037fa1
cmp rbx, r15
je 0x140037fa1
add r13d, 0x24
imul r11d, r8d
inc rbx
movzx eax, byte [rbx - 1]
lea edx, [rax - 0x30]
cmp dl, 0xa
jae 0x140038370
jmp 0x140038390
mov r10d, dword [rsp + 0x30]
inc r10d
je 0x14003a404
mov eax, ecx
mov edx, dword [rsp + 0x40]
sub eax, edx
test edx, edx
mov r8d, 2
mov edx, 0x2bc
cmove r8d, edx
xor edi, edi
xor edx, edx
div r8d
mov r8d, eax
xor edx, edx
div r10d
add eax, r8d
cmp eax, 0x1c8
mov r9d, 0xd41d41d5
jb 0x140038499
xor edi, edi
nop word cs:[rax + 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 edi, 0x24
cmp eax, 0x3e57
mov eax, r8d
ja 0x140038470
jmp 0x14003849c
mov r8d, eax
lea eax, [r8*4]
lea eax, [rax + rax*8]
add r8d, 0x26
xor edx, edx
div r8w
mov r9d, eax
mov eax, ecx
xor edx, edx
mov dword [rsp + 0x30], r10d
div r10d
mov dword [rsp + 0x40], edx
add r12d, eax
jb 0x140037fa1
mov eax, r12d
xor eax, 0xd800
add eax, 0xffef0000
cmp eax, 0xffef0800
jb 0x140037fa1
mov dword [rsp + 0x104], r12d
mov rcx, qword [rsp + 0x110]
mov r8d, dword [rsp + 0x40]
mov r12d, r8d
mov r13, qword [rsp + 0x128]
test r13, r13
je 0x14003852b
xor eax, eax
jmp 0x140038519
add rax, 0x10
cmp r14, rax
je 0x14003852b
mov rdx, qword [rcx + rax]
cmp rdx, r12
jb 0x140038510
inc rdx
mov qword [rcx + rax], rdx
jmp 0x140038510
cmp r13, qword [rsp + 0x108]
jne 0x140038561
lea rcx, [rsp + 0x108]
mov word [rsp + 0x120], r9w
call fcn.1400189f0
movzx r9d, word [rsp + 0x120]
mov r8d, dword [rsp + 0x40]
mov rcx, qword [rsp + 0x110]
movzx eax, r9w
add edi, eax
mov rax, r13
shl rax, 4
mov qword [rcx + rax], r12
mov r12d, dword [rsp + 0x104]
mov dword [rcx + rax + 8], r12d
inc r13
mov qword [rsp + 0x118], r13
inc r8d
add r14, 0x10
cmp rbx, r15
jne 0x140038334
cmp r13, 2
jb 0x1400385c5
cmp r13, 0x15
jae 0x140039481
shl r13, 4
add r13, rcx
lea rax, [rcx + 0x10]
xor r11d, r11d
jmp 0x140039270
mov rcx, qword [rsp + 0x110]
mov rbx, qword [rsp + 0x118]
lea r8, [rbx + rbp]
mov rdx, qword [rsp + 0x2c0]
mov rax, qword [rdx]
mov rdi, qword [rdx + 0x10]
sub rax, rdi
cmp rax, r8
mov qword [rsp + 0x40], rcx
jb 0x14003922c
mov qword [rsp + 0x30], rdi
add rbp, rsi
xor edi, edi
xor r14d, r14d
cmp rdi, rbx
jb 0x140038620
nop word cs:[rax + rax]
cmp rsi, rbp
jne 0x140038689
jmp 0x1400388a5
mov rax, rdi
shl rax, 4
cmp r14, qword [rcx + rax]
jne 0x140038680
add rax, rcx
inc rdi
mov r15d, dword [rax + 8]
cmp r15d, 0x80
jb 0x1400386a2
mov dword [rsp + 0x50], 0
mov eax, r15d
cmp r15d, 0x800
jae 0x140038750
shr eax, 6
or al, 0xc0
mov byte [rsp + 0x50], al
and r15b, 0x3f
or r15b, 0x80
mov byte [rsp + 0x51], r15b
mov r15d, 2
jmp 0x1400387e8
cmp rsi, rbp
je 0x1400394a0
movzx r8d, byte [rsi]
movzx r15d, r8b
test r15b, r15b
js 0x1400386f0
inc rsi
cmp r15d, 0x80
jae 0x140038640
mov r13, qword [rsp + 0x2c0]
mov r12, qword [r13 + 0x10]
cmp r12, qword [r13]
jne 0x1400386c1
mov rcx, r13
call fcn.1400331e0
mov rcx, qword [rsp + 0x40]
mov rax, qword [r13 + 8]
mov byte [rax + r12], r15b
inc r12
mov qword [r13 + 0x10], r12
inc r14
cmp rdi, rbx
jb 0x140038620
jmp 0x140038610
mov eax, r15d
and eax, 0x1f
movzx edx, byte [rsi + 1]
and edx, 0x3f
cmp r15b, 0xdf
jbe 0x140038790
movzx r15d, byte [rsi + 2]
shl edx, 6
and r15d, 0x3f
or r15d, edx
cmp r8b, 0xf0
jb 0x140038838
movzx edx, byte [rsi + 3]
add rsi, 4
and eax, 7
shl eax, 0x12
shl r15d, 6
and edx, 0x3f
or edx, r15d
or edx, eax
mov r15d, edx
cmp r15d, 0x80
jb 0x1400386a2
jmp 0x140038640
cmp r15d, 0x10000
jae 0x1400387b0
shr eax, 0xc
or al, 0xe0
mov byte [rsp + 0x50], al
mov eax, r15d
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x51], al
and r15b, 0x3f
or r15b, 0x80
mov byte [rsp + 0x52], r15b
mov r15d, 3
jmp 0x1400387e8
add rsi, 2
shl eax, 6
or eax, edx
mov r15d, eax
cmp r15d, 0x80
jae 0x140038640
jmp 0x1400386a2
shr eax, 0x12
or al, 0xf0
mov byte [rsp + 0x50], al
mov eax, r15d
shr eax, 0xc
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x51], al
mov eax, r15d
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x52], al
and r15b, 0x3f
or r15b, 0x80
mov byte [rsp + 0x53], r15b
mov r15d, 4
mov rcx, qword [rsp + 0x2c0]
mov rax, qword [rcx]
mov r12, qword [rcx + 0x10]
sub rax, r12
cmp rax, r15
jb 0x140038854
mov r13, qword [rsp + 0x2c0]
mov rcx, qword [r13 + 8]
add rcx, r12
lea rdx, [rsp + 0x50]
mov r8, r15
call fcn.140120b90
add r12, r15
mov qword [r13 + 0x10], r12
inc r14
mov rcx, qword [rsp + 0x40]
cmp rdi, rbx
jae 0x140038610
jmp 0x140038620
add rsi, 3
shl eax, 0xc
or r15d, eax
cmp r15d, 0x80
jb 0x1400386a2
jmp 0x140038640
mov qword [rsp + 0x20], 1
mov r9d, 1
mov r13, qword [rsp + 0x2c0]
mov rcx, r13
mov rdx, r12
mov r8, r15
call fcn.140128e10
mov r12, qword [r13 + 0x10]
jmp 0x1400387ff
mov qword [rsp + 0x20], 1
mov r9d, 1
mov rcx, rbx
mov rdx, rsi
mov r8, r15
call fcn.140128e10
mov rsi, qword [rbx + 0x10]
jmp 0x140038156
mov rbx, qword [rsp + 0x2c0]
mov rbp, qword [rbx + 8]
mov rsi, qword [rbx + 0x10]
mov r8, qword [rsp + 0x30]
test r8, r8
lea r14, [rsp + 0x138]
je 0x1400388df
cmp rsi, r8
jbe 0x1400388d9
cmp byte [rbp + r8], 0xbf
jg 0x1400388df
jmp 0x14003a475
jne 0x14003a475
lea r12, [r8 + rbp]
test byte [rsp + 0x38], 1
jne 0x1400389db
cmp rsi, r8
jne 0x140038900
mov dword [rsp + 0x38], 0
jmp 0x1400389db
lea rdi, [rsi + rbp]
mov rbx, r12
jmp 0x140038919
cmp rbx, rdi
je 0x1400389cb
movzx edx, byte [rbx]
movzx ecx, dl
test cl, cl
js 0x140038930
inc rbx
lea eax, [rcx - 0x21]
cmp eax, 0x5d
jbe 0x140038910
jmp 0x1400389a5
mov eax, ecx
and eax, 0x1f
movzx r8d, byte [rbx + 1]
and r8d, 0x3f
cmp cl, 0xdf
jbe 0x14003897a
movzx ecx, byte [rbx + 2]
shl r8d, 6
and ecx, 0x3f
or ecx, r8d
cmp dl, 0xf0
jb 0x140038990
movzx edx, byte [rbx + 3]
add rbx, 4
and eax, 7
shl eax, 0x12
shl ecx, 6
and edx, 0x3f
or edx, ecx
or edx, eax
mov ecx, edx
lea eax, [rcx - 0x21]
cmp eax, 0x5d
jbe 0x140038910
jmp 0x1400389a5
add rbx, 2
shl eax, 6
or eax, r8d
mov ecx, eax
lea eax, [rcx - 0x21]
cmp eax, 0x5d
ja 0x1400389a5
jmp 0x140038910
add rbx, 3
shl eax, 0xc
or ecx, eax
lea eax, [rcx - 0x21]
cmp eax, 0x5d
jbe 0x140038910
call fcn.1400ffb10
cmp al, 0x11
ja 0x140038910
movzx eax, al
mov ecx, 0x20003
bt ecx, eax
jae 0x140038910
mov al, 1
mov dword [rsp + 0x38], eax
jmp 0x1400389d3
mov dword [rsp + 0x38], 0
mov rbx, qword [rsp + 0x2c0]
movq xmm0, qword [rsp + 0xf8]
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 + 0x100]
movzx ecx, byte [rsp + 0x101]
or cl, byte [rsp + 0x102]
or cl, al
xor edi, edi
test cl, 1
jne 0x140037fd0
test byte [rsp + 0x103], 1
jne 0x140037fd0
mov rdi, qword [rsp + 0x30]
cmp rsi, rdi
je 0x1400393fa
add rbp, rsi
xor edx, edx
xor ecx, ecx
mov rax, r12
movzx r8d, byte [rax]
test r8b, r8b
js 0x140038a65
inc rax
jmp 0x140038b00
movzx r9d, r8b
and r9d, 0x1f
movzx r11d, byte [rax + 1]
and r11d, 0x3f
cmp r8b, 0xe0
jb 0x140038ac0
movzx r10d, byte [rax + 2]
shl r11d, 6
and r10d, 0x3f
or r10d, r11d
cmp r8b, 0xf0
jb 0x140038ad0
movzx r8d, byte [rax + 3]
and r9d, 7
shl r9d, 0x12
shl r10d, 6
and r8d, 0x3f
or r8d, r10d
or r8d, r9d
cmp r8d, 0x110000
je 0x1400390b0
add rax, 4
jmp 0x140038ade
add rax, 2
shl r9d, 6
or r9d, r11d
mov r8d, r9d
jmp 0x140038ade
add rax, 3
shl r9d, 0xc
or r10d, r9d
mov r8d, r10d
cmp r8d, 0x7f
jbe 0x140038b00
jmp 0x140038b93
inc rax
cmp r8d, 0x80
jae 0x140038b91
cmp rax, rbp
je 0x1400390b0
movzx r10d, byte [rax]
movzx r8d, r10b
test r8b, r8b
jns 0x140038af0
mov edx, r8d
and edx, 0x1f
movzx r11d, byte [rax + 1]
and r11d, 0x3f
cmp r8b, 0xdf
jbe 0x140038b6d
movzx r9d, byte [rax + 2]
shl r11d, 6
and r9d, 0x3f
or r9d, r11d
cmp r10b, 0xf0
jb 0x140038b7f
movzx r8d, byte [rax + 3]
and edx, 7
shl edx, 0x12
shl r9d, 6
and r8d, 0x3f
or r8d, r9d
or r8d, edx
cmp r8d, 0x110000
je 0x1400390b0
add rax, 4
jmp 0x140038af3
add rax, 2
shl edx, 6
or edx, r11d
mov r8d, edx
jmp 0x140038af3
add rax, 3
shl edx, 0xc
or r9d, edx
mov r8d, r9d
jmp 0x140038af3
xor edx, edx
mov r9d, edx
imul edx, r8d, 0x9e3779b9
imul r10d, r8d, 0x31415926
xor edx, r10d
imul rdx, rdx, 0x39a
shr rdx, 0x20
lea r11, [0x14016ccd8]
movzx edx, word [r11 + rdx*2]
add edx, r8d
imul edx, edx, 0x9e3779b9
xor edx, r10d
imul rdx, rdx, 0x39a
shr rdx, 0x20
lea r10, [0x14016d40c]
mov edx, dword [r10 + rdx*4]
mov r10d, edx
shr r10d, 8
cmp r10d, r8d
mov r10d, 0
cmovne edx, r10d
cmp r9b, dl
seta r9b
test dl, dl
setne r10b
test r9b, r10b
jne case.0x140038dee.3907
mov r10d, r8d
and r10d, 0xfffffffe
cmp r10d, 0x340
je case.0x140038dee.3907
lea r9d, [r8 - 0x343]
cmp r9d, 2
jb case.0x140038dee.3907
mov r9b, 2
cmp r8d, 0xd56
jg 0x140038ca0
cmp r8d, 0x9de
jg 0x140038ce6
cmp r8d, 0x93b
jg 0x140038e1d
lea r11d, [r8 - 0x30f]
cmp r11d, 0x36
ja 0x140038c7b
movabs rdi, 0x48020000001005
bt rdi, r11
mov rdi, qword [rsp + 0x30]
jb 0x1400390a2
lea r11d, [r8 - 0x374]
cmp r11d, 0x13
ja case.0x140038dee.3908
mov edi, 0x80401
bt edi, r11d
jb case.0x140038dee.3907
jmp case.0x140038dee.3908
cmp r8d, 0x11126
jg 0x140038d54
cmp r8d, 0x102d
jle 0x140038da1
cmp r8d, 0x1f70
jg 0x140038e75
cmp r8d, 0x102e
je 0x1400390a2
cmp r8d, 0x1b35
je 0x1400390a2
jmp case.0x140038dee.3908
cmp r8d, 0xbd6
jg 0x140038df1
cmp r8d, 0xbbd
jg 0x140038f17
lea r11d, [r8 - 0xb3e]
cmp r11d, 0x19
ja 0x140038d21
mov edi, 0x3000001
bt edi, r11d
mov rdi, qword [rsp + 0x30]
jb 0x1400390a2
lea r11d, [r8 - 0xa33]
cmp r11d, 0x2b
ja 0x140038d42
movabs rdi, 0x80000000009
bt rdi, r11
jb case.0x140038dee.3907
cmp r8d, 0x9df
jne case.0x140038dee.3908
jmp case.0x140038dee.3907
cmp r8d, 0x114af
jle 0x140038e49
lea r11d, [r8 - 0x114b0]
cmp r11d, 0xd
ja 0x140038d82
mov edi, 0x2401
bt edi, r11d
mov rdi, qword [rsp + 0x30]
jb 0x1400390a2
cmp r8d, 0x115af
je 0x1400390a2
cmp r8d, 0x11930
je 0x1400390a2
jmp case.0x140038dee.3908
lea r11d, [r8 - 0xdca]
cmp r11d, 0x15
ja 0x140038dc2
mov edi, 0x200021
bt edi, r11d
mov rdi, qword [rsp + 0x30]
jb 0x1400390a2
cmp r8d, 0xd57
je 0x1400390a2
lea r11d, [r8 - 0xf43]
cmp r11d, 0x76
ja case.0x140038dee.3908
lea rdi, [0x140192924]
movsxd r11, dword [rdi + r11*4]
add r11, rdi
jmp r11
cmp r8d, 0xcc1
jg 0x140038ed1
cmp r8d, 0xbd7
je 0x1400390a2
cmp r8d, 0xc56
je 0x1400390a2
jmp case.0x140038dee.3908
cmp r8d, 0x93c
je 0x1400390a2
cmp r8d, 0x9be
je 0x1400390a2
cmp r8d, 0x9d7
je 0x1400390a2
jmp case.0x140038dee.3908
cmp r8d, 0x11127
je 0x1400390a2
cmp r8d, 0x1133e
je 0x1400390a2
cmp r8d, 0x11357
je 0x1400390a2
jmp case.0x140038dee.3908
cmp r8d, 0xfa0f
jle 0x140038eed
cmp r8d, 0x110ba
je 0x1400390a2
lea r11d, [r8 - 0xfa10]
cmp r11d, 0x12
ja 0x140038ea7
mov edi, 0x50005
bt edi, r11d
jb case.0x140038dee.3907
lea r11d, [r8 - 0xfb1d]
cmp r11d, 0x21
ja case.0x140038dee.3908
movabs rdi, 0x200000005
bt rdi, r11
jb case.0x140038dee.3907
jmp case.0x140038dee.3908
cmp r8d, 0xcc2
je 0x1400390a2
cmp r8d, 0xd3e
je 0x1400390a2
jmp case.0x140038dee.3908
cmp r8d, 0x2125
jg 0x140038f26
lea r11d, [r8 - 0x1f71]
cmp r11d, 0x8c
ja case.0x140038dee.3908
lea rdi, [0x140192b00]
movsxd r11, dword [rdi + r11*4]
add r11, rdi
jmp r11
cmp r8d, 0xbbe
je 0x1400390a2
jmp case.0x140038dee.3908
lea r11d, [r8 - 0x2329]
cmp r11d, 2
jb case.0x140038dee.3907
cmp r8d, 0x2126
je case.0x140038dee.3907
cmp r8d, 0x2adc
je case.0x140038dee.3907
mov r11d, r8d
and r11d, 0x1ffff8
cmp r11d, 0x958
sete r11b
movd xmm0, r10d
pshufd xmm1, xmm0, 0
pcmpeqd xmm1, xmmword [0x14012e990]
movd xmm0, r8d
pshufd xmm0, xmm0, 0
movdqa xmm2, xmm0
paddd xmm2, xmmword [0x14012e9a0]
movdqa xmm3, xmm0
paddd xmm3, xmmword [0x14012e9b0]
movdqa xmm4, xmm0
paddd xmm4, xmm10
pxor xmm4, xmm11
movdqa xmm5, xmm12
pcmpgtd xmm5, xmm4
por xmm5, xmm1
lea edi, [r8 - 0x1d1bb]
cmp edi, 6
setb bl
lea edi, [r8 - 0x2f800]
cmp edi, 0x21e
setb dil
pxor xmm3, xmm11
pcmpgtd xmm3, xmm13
pxor xmm2, xmm11
pcmpgtd xmm2, xmm14
packssdw xmm2, xmm3
packsswb xmm2, xmm2
pmovmskb r14d, xmm2
not r14d
movmskps r15d, xmm5
or r15b, r14b
setne r14b
or dil, r11b
or dil, bl
mov rbx, qword [rsp + 0x2c0]
or dil, r14b
mov rdi, qword [rsp + 0x30]
lea r14, [rsp + 0x138]
jne case.0x140038dee.3907
cmp r10d, 0x212a
je case.0x140038dee.3907
cmp r10d, 0xfb40
je case.0x140038dee.3907
movdqa xmm1, xmm0
paddd xmm1, xmm15
paddd xmm0, xmm7
pxor xmm0, xmm11
pcmpgtd xmm0, xmm8
pxor xmm1, xmm11
pcmpgtd xmm1, xmm9
packssdw xmm0, xmm1
packsswb xmm0, xmm0
pmovmskb r11d, xmm0
xor r11b, 0xff
jne 0x1400390a2
lea r11d, [r8 - 0x11a8]
cmp r11d, 0x1b
jb 0x1400390a2
cmp r10d, 0x330
je 0x1400390a2
add r8d, 0xffffcf67
cmp r8d, 2
movzx r9d, cl
mov ecx, 2
cmovb r9d, ecx
mov ecx, r9d
cmp rax, rbp
jne 0x140038a54
jmp 0x1400390b3
mov r9d, ecx
test r9b, r9b
je 0x1400393fa
movzx eax, r9b
cmp eax, 1
je case.0x140038dee.3907
lea rcx, [rsp + 0x98]
movups xmmword [rcx], xmm6
mov byte [rcx + 0x10], 0
lea rax, [rsp + 0x1a0]
movups xmmword [rax], xmm6
mov qword [rsp + 0x50], 0
mov dword [rsp + 0x60], 0
mov word [rsp + 0x64], 0
mov byte [rsp + 0x68], 0
mov dword [rsp + 0x6c], 0
mov byte [rsp + 0x70], 0
mov dword [rsp + 0x74], 0
mov byte [rsp + 0x78], 0
mov dword [rsp + 0x7c], 0
mov byte [rsp + 0x80], 0
mov dword [rsp + 0x84], 0
mov qword [rsp + 0x88], r12
mov qword [rsp + 0x90], rbp
mov dword [rsp + 0xb0], 0
mov word [rsp + 0xb4], 0
movzx eax, word [rsp + 0x1ae]
mov word [rcx + 0x2e], ax
movdqu xmm0, xmmword [rsp + 0x19e]
movdqu xmmword [rcx + 0x1e], xmm0
mov dword [rsp + 0xd0], 0x110000
mov byte [rsp + 0xd4], 0
mov rdi, r12
cmp rdi, rbp
je 0x14003937e
movzx edx, byte [rdi]
movzx ebx, dl
test bl, bl
js 0x1400391a2
inc rdi
jmp 0x140039207
mov eax, ebx
and eax, 0x1f
movzx r8d, byte [rdi + 1]
and r8d, 0x3f
cmp bl, 0xdf
jbe 0x1400391ee
movzx ecx, byte [rdi + 2]
shl r8d, 6
and ecx, 0x3f
or ecx, r8d
cmp dl, 0xf0
jb 0x1400391fc
movzx ebx, byte [rdi + 3]
and eax, 7
shl eax, 0x12
shl ecx, 6
and ebx, 0x3f
or ebx, ecx
or ebx, eax
cmp ebx, 0x110000
je 0x14003937e
add rdi, 4
jmp 0x140039207
add rdi, 2
shl eax, 6
or eax, r8d
mov ebx, eax
jmp 0x140039207
add rdi, 3
shl eax, 0xc
or ecx, eax
mov ebx, ecx
lea rcx, [rsp + 0x50]
call fcn.14003d440
xor r14d, r14d
cmp eax, 0x110000
je 0x140039391
cmp eax, ebx
je 0x14003918a
jmp 0x140039391
mov qword [rsp + 0x20], 1
mov r9d, 1
mov rcx, qword [rsp + 0x2c0]
mov rdx, rdi
call fcn.140128e10
mov rcx, qword [rsp + 0x40]
jmp 0x1400385f1
mov r9, rcx
mov qword [r9], rdx
mov dword [r9 + 8], r8d
add rax, 0x10
add r11, 0xfffffffffffffff0
cmp rax, r13
je 0x1400385c5
mov rdx, qword [rax]
cmp rdx, qword [rax - 0x10]
jae 0x14003925f
mov r8d, dword [rax + 8]
xor r10d, r10d
movdqu xmm0, xmmword [rax + r10 - 0x10]
movdqu xmmword [rax + r10], xmm0
cmp r11, r10
je 0x140039255
lea r9, [r10 - 0x10]
cmp rdx, qword [rax + r10 - 0x20]
mov r10, r9
jb 0x140039280
add r9, rax
jmp 0x140039258
mov rbx, rsi
xor ebp, ebp
jmp 0x140038310
mov rbx, r15
movabs rax, 0x8080808080808080
jne 0x14003a49c
sub r15, rbx
add rbx, rsi
cmp rbp, 8
jae 0x140037f98
cmp byte [rsi + rbp - 1], 0
js 0x140037fa1
mov rax, rbp
dec rax
je 0x140038310
cmp byte [rsi + rbp - 2], 0
js 0x140037fa1
mov rax, rbp
add rax, 0xfffffffffffffffe
je 0x140038310
cmp byte [rsi + rbp - 3], 0
js 0x140037fa1
mov rax, rbp
add rax, 0xfffffffffffffffd
je 0x140038310
cmp byte [rsi + rbp - 4], 0
js 0x140037fa1
mov rax, rbp
add rax, 0xfffffffffffffffc
je 0x140038310
cmp byte [rsi + rbp - 5], 0
js 0x140037fa1
mov rax, rbp
add rax, 0xfffffffffffffffb
je 0x140038310
cmp byte [rsi + rbp - 6], 0
js 0x140037fa1
mov rax, rbp
add rax, 0xfffffffffffffffa
je 0x140038310
cmp byte [rsi + rbp - 7], 0
js 0x140037fa1
mov rax, rbp
add rax, 0xfffffffffffffff9
je 0x140038310
jmp 0x140037fa1
lea rcx, [rsp + 0x50]
call fcn.14003d440
cmp eax, 0x110000
sete r14b
cmp dword [rsp + 0x60], 0
je 0x1400393b4
cmp qword [rsp + 0x68], 0
je 0x1400393b4
mov r8, qword [rsp + 0x70]
mov rcx, qword [0x14019f258]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
cmp dword [rsp + 0xb0], 0
mov rbx, qword [rsp + 0x2c0]
mov rdi, qword [rsp + 0x30]
je 0x1400393ed
cmp qword [rsp + 0xb8], 0
je 0x1400393ed
mov r8, qword [rsp + 0xc0]
mov rcx, qword [0x14019f258]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
test r14b, r14b
lea r14, [rsp + 0x138]
je case.0x140038dee.3907
sub rsi, rdi
mov rcx, r12
mov rdx, rsi
mov r8, qword [rsp + 0x180]
lea r9, [rsp + 0xf8]
call fcn.14003a730
xor edi, edi
jmp 0x140037fd0
mov byte [rsp + 0xfd], 1
xor edi, edi
jmp 0x140037fd0
lea rax, [rsi + 7]
and rax, 0xfffffffffffffff8
sub rax, rsi
mov ecx, 8
cmove rax, rcx
lea rcx, [rbp - 8]
cmp rax, rcx
jae 0x140039468
movabs rdx, 0x8080808080808080
test qword [rsi + rax], rdx
jne 0x140037fa1
add rax, 8
cmp rax, rcx
jb 0x14003944b
movabs rax, 0x8080808080808080
test qword [rsi + rcx], rax
jne 0x140037fa1
jmp 0x140038310
mov rdx, r13
mov rdi, rcx
call fcn.14003e380
mov rcx, rdi
jmp 0x1400385c5
jmp 0x1400394a0
mov rcx, qword [rbx + 8]
mov rdx, qword [rbx + 0x10]
mov r8, qword [rsp + 0x188]
test r8, r8
je 0x1400394d9
cmp rdx, r8
jbe 0x1400394d7
cmp byte [rcx + r8], 0xbf
jg 0x1400394d9
lea rax, [0x140147858]
mov qword [rsp + 0x20], rax
mov r9, rdx
call fcn.1401220d0
jne 0x1400394c3
sub rdx, r8
add rcx, r8
mov qword [rsp + 0x50], 0
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x68], rdx
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x78], rdx
movabs rax, 0x2e0000002e
mov qword [rsp + 0x80], rax
mov byte [rsp + 0x88], 1
mov word [rsp + 0x90], 1
test byte [rsp + 0x38], 1
je 0x140039978
lea rsi, [rsp + 0x50]
mov ebx, 0x260d9
mov r12d, 0x62f8
nop word cs:[rax + rax]
mov rcx, rsi
call fcn.14003a4e0
test rax, rax
je 0x14003998d
mov r15, rdx
test rdx, rdx
je 0x140039550
mov r14, rax
movzx r8d, byte [rax]
movzx ecx, r8b
test cl, cl
js 0x14003957e
lea rbp, [r14 + 1]
jmp 0x1400395e2
mov eax, ecx
and eax, 0x1f
movzx r9d, byte [r14 + 1]
and r9d, 0x3f
cmp cl, 0xe0
jb 0x1400395c9
movzx edx, byte [r14 + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp r8b, 0xf0
jb 0x1400395d7
movzx ecx, byte [r14 + 3]
and eax, 7
shl eax, 0x12
shl edx, 6
and ecx, 0x3f
or ecx, edx
or ecx, eax
cmp ecx, 0x110000
je 0x140039550
lea rbp, [r14 + 4]
jmp 0x1400395e2
lea rbp, [r14 + 2]
shl eax, 6
or eax, r9d
mov ecx, eax
jmp 0x1400395e2
lea rbp, [r14 + 3]
shl eax, 0xc
or edx, eax
mov ecx, edx
add r15, r14
call fcn.1400ffb10
test al, al
je 0x14003976c
movzx eax, al
cmp eax, 0x11
je 0x14003976c
cmp eax, 9
je 0x14003962d
jmp 0x14003996e
inc rbp
call fcn.1400ffb10
cmp al, 0xe
ja 0x14003996e
movzx eax, al
bt r12d, eax
jae 0x14003996e
cmp rbp, r15
je 0x1400396e0
movzx r8d, byte [rbp]
movzx ecx, r8b
test cl, cl
jns 0x140039610
mov eax, ecx
and eax, 0x1f
movzx r9d, byte [rbp + 1]
and r9d, 0x3f
cmp cl, 0xe0
jb 0x140039698
movzx edx, byte [rbp + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp r8b, 0xf0
jb 0x1400396b6
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 0x1400396e0
add rbp, 4
call fcn.1400ffb10
cmp al, 0xe
jbe 0x140039620
jmp 0x14003996e
add rbp, 2
shl eax, 6
or eax, r9d
mov ecx, eax
call fcn.1400ffb10
cmp al, 0xe
jbe 0x140039620
jmp 0x14003996e
add rbp, 3
shl eax, 0xc
or edx, eax
mov ecx, edx
call fcn.1400ffb10
cmp al, 0xe
jbe 0x140039620
jmp 0x14003996e
movzx eax, byte [r15 - 1]
movzx ebp, al
test bpl, bpl
js 0x1400396fa
dec r15
cmp r15, r14
jne 0x14003974c
jmp 0x140039935
movzx eax, byte [r15 - 2]
cmp al, 0xbf
jg 0x140039723
movzx ecx, byte [r15 - 3]
cmp cl, 0xbf
jg 0x14003972c
movzx edx, byte [r15 - 4]
add r15, 0xfffffffffffffffc
and edx, 7
shl edx, 6
and ecx, 0x3f
or ecx, edx
jmp 0x140039733
add r15, 0xfffffffffffffffe
and eax, 0x1f
jmp 0x14003973b
add r15, 0xfffffffffffffffd
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or eax, ecx
shl eax, 6
and ebp, 0x3f
or ebp, eax
cmp r15, r14
je 0x140039935
cmp ebp, 0x110000
je 0x140039550
mov ecx, ebp
call fcn.1400ffb10
cmp al, 0xd
je 0x1400396e0
jmp 0x140039950
cmp rbp, r15
je 0x140039866
xor r13d, r13d
xor edi, edi
jmp 0x140039789
mov r13b, 1
nop
cmp rbp, r15
je 0x140039870
movzx r8d, byte [rbp]
movzx ecx, r8b
test cl, cl
js 0x1400397b0
inc rbp
call fcn.1400ffb10
cmp al, 0x11
jbe 0x140039840
jmp 0x14003996e
mov eax, ecx
and eax, 0x1f
movzx r9d, byte [rbp + 1]
and r9d, 0x3f
cmp cl, 0xe0
jb 0x140039805
movzx edx, byte [rbp + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp r8b, 0xf0
jb 0x14003981f
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 0x140039870
add rbp, 4
call fcn.1400ffb10
cmp al, 0x11
jbe 0x140039840
jmp 0x14003996e
add rbp, 2
shl eax, 6
or eax, r9d
mov ecx, eax
call fcn.1400ffb10
cmp al, 0x11
jbe 0x140039840
jmp 0x14003996e
add rbp, 3
shl eax, 0xc
or edx, eax
mov ecx, edx
call fcn.1400ffb10
cmp al, 0x11
ja 0x14003996e
nop word [rax + rax]
movzx eax, al
bt ebx, eax
jb 0x140039780
cmp eax, 1
je 0x14003977c
cmp eax, 5
jne 0x14003996e
mov dil, 1
jmp 0x140039780
xor edi, edi
xor r13d, r13d
nop dword [rax + rax]
movzx eax, byte [r15 - 1]
movzx ebp, al
test bpl, bpl
js 0x140039890
dec r15
cmp r15, r14
jne 0x1400398de
jmp 0x1400398fb
movzx eax, byte [r15 - 2]
cmp al, 0xbf
jg 0x1400398b9
movzx ecx, byte [r15 - 3]
cmp cl, 0xbf
jg 0x1400398c2
movzx edx, byte [r15 - 4]
add r15, 0xfffffffffffffffc
and edx, 7
shl edx, 6
and ecx, 0x3f
or ecx, edx
jmp 0x1400398c9
add r15, 0xfffffffffffffffe
and eax, 0x1f
jmp 0x1400398d1
add r15, 0xfffffffffffffffd
and ecx, 0xf
shl ecx, 6
and eax, 0x3f
or eax, ecx
shl eax, 6
and ebp, 0x3f
or ebp, eax
cmp r15, r14
je 0x1400398fb
cmp ebp, 0x110000
je 0x14003996e
mov ecx, ebp
call fcn.1400ffb10
cmp al, 0xd
je 0x140039870
jmp 0x14003990e
cmp ebp, 0x110000
je 0x14003996e
mov ecx, ebp
call fcn.1400ffb10
cmp al, 0xd
je 0x14003996e
mov ecx, ebp
call fcn.1400ffb10
cmp al, 0x11
ja 0x14003996e
movzx eax, al
mov ecx, 0x20023
bt ecx, eax
jae 0x14003996e
and r13b, dil
test r13b, 1
je 0x140039550
jmp 0x14003996e
cmp ebp, 0x110000
je 0x140039550
mov ecx, ebp
call fcn.1400ffb10
cmp al, 0xd
je 0x140039550
mov ecx, ebp
call fcn.1400ffb10
cmp al, 9
je 0x140039550
mov ecx, ebp
call fcn.1400ffb10
cmp al, 5
je 0x140039550
mov byte [rsp + 0xfa], 1
jmp 0x14003998d
lea rsi, [rsp + 0x50]
nop dword [rax]
mov rcx, rsi
call fcn.14003a4e0
test rax, rax
jne 0x140039980
movzx edx, byte [rsp + 0xf8]
lea rcx, [rsp + 0xf9]
mov rax, qword [rcx]
mov qword [rsp + 0x138], rax
mov eax, dword [rcx + 7]
mov dword [rsp + 0x13f], eax
cmp qword [rsp + 0x108], 0
mov ebp, edx
je 0x1400399d8
mov r8, qword [rsp + 0x110]
mov rcx, qword [0x14019f258]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov edx, ebp
mov rbx, qword [rsp + 0x2c0]
mov rsi, qword [rbx + 0x10]
test rsi, rsi
mov rdi, qword [rsp + 0x48]
js 0x14003a46b
je 0x140039a12
movzx eax, byte [0x14019f308]
xor ecx, ecx
mov rdx, rsi
call fcn.1400e7f40
test rax, rax
je 0x14003a48f
mov edx, ebp
jmp 0x140039a19
mov eax, 1
xor esi, esi
mov rcx, qword [rbx + 0x10]
mov qword [rsp + 0x60], rcx
movups xmm0, xmmword [rbx]
movaps xmmword [rsp + 0x50], xmm0
mov qword [rbx], rsi
mov qword [rbx + 8], rax
mov qword [rbx + 0x10], 0
lea rsi, [rdi + 0x18]
cmp qword [rdi + 0x18], 0
je 0x140039a59
mov r8, qword [rdi + 0x20]
mov rcx, qword [0x14019f258]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov edx, ebp
mov rax, qword [rsp + 0x60]
mov qword [rsi + 0x10], rax
movdqa xmm0, xmmword [rsp + 0x50]
movdqu xmmword [rsi], xmm0
mov rax, qword [rdi + 0x20]
mov rcx, qword [rdi + 0x28]
mov qword [rsp + 0x50], 0
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rcx
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x78], rcx
movabs rax, 0x2e0000002e
mov qword [rsp + 0x80], rax
mov byte [rsp + 0x88], 1
mov word [rsp + 0x90], 1
mov sil, 1
jmp 0x140039b06
mov rax, qword [rbx]
mov r14, qword [rbx + 0x10]
sub rax, r14
mov r15, rdx
cmp rax, rdx
jb 0x14003a30b
mov rcx, qword [rbx + 8]
add rcx, r14
mov rdx, r13
mov r8, r15
call fcn.140120b90
add r15, r14
movzx edx, byte [rsp + 0x104]
nop word cs:[rax + rax]
mov qword [rbx + 0x10], r15
xor esi, esi
mov byte [rsp + 0x104], dl
lea rcx, [rsp + 0x50]
call fcn.14003a4e0
test rax, rax
je 0x14003a331
mov r13, rax
test sil, 1
movabs r14, 0x8080808080808080
jne 0x140039b59
mov rsi, qword [rbx + 0x10]
cmp rsi, qword [rbx]
jne 0x140039b4a
mov rcx, rbx
mov rdi, rdx
call fcn.1400331e0
mov rdx, rdi
mov rax, qword [rbx + 8]
mov byte [rax + rsi], 0x2e
inc rsi
mov qword [rbx + 0x10], rsi
cmp rdx, 8
jae 0x140039c20
test rdx, rdx
je 0x140039ac3
cmp byte [r13 + rdx - 1], 0
js 0x140039c70
mov rax, rdx
dec rax
je 0x140039ac3
cmp byte [r13 + rdx - 2], 0
js 0x140039c70
mov rax, rdx
add rax, 0xfffffffffffffffe
je 0x140039ac3
cmp byte [r13 + rdx - 3], 0
js 0x140039c70
mov rax, rdx
add rax, 0xfffffffffffffffd
je 0x140039ac3
cmp byte [r13 + rdx - 4], 0
js 0x140039c70
mov rax, rdx
add rax, 0xfffffffffffffffc
je 0x140039ac3
cmp byte [r13 + rdx - 5], 0
js 0x140039c70
mov rax, rdx
add rax, 0xfffffffffffffffb
je 0x140039ac3
cmp byte [r13 + rdx - 6], 0
js 0x140039c70
mov rax, rdx
add rax, 0xfffffffffffffffa
je 0x140039ac3
lea rax, [rdx - 7]
cmp byte [r13 + rdx - 7], 0
setns cl
test rax, rax
sete al
test cl, al
je 0x140039c70
jmp 0x140039ac3
test qword [r13], r14
jne 0x140039c70
lea rax, [r13 + 7]
and rax, 0xfffffffffffffff8
sub rax, r13
mov ecx, 8
cmove rax, rcx
lea rcx, [rdx - 8]
cmp rax, rcx
jae 0x140039c60
nop word cs:[rax + rax]
test qword [r13 + rax], r14
jne 0x140039c70
add rax, 8
cmp rax, rcx
jb 0x140039c50
test qword [r13 + rcx], r14
je 0x140039ac3
nop dword [rax + rax]
mov rax, qword [rbx]
mov r15, qword [rbx + 0x10]
sub rax, r15
mov r14, r15
cmp rax, 3
jbe 0x14003a294
mov rax, qword [rbx + 8]
mov dword [rax + r14], 0x2d2d6e78
add r14, 4
mov qword [rbx + 0x10], r14
xor ebp, ebp
mov esi, 0
test rdx, rdx
je 0x140039b0d
mov rax, r13
add rax, rdx
mov qword [rsp + 0x40], rax
xor r12d, r12d
mov rdi, r13
jmp 0x140039cdf
mov rax, qword [rbx + 8]
mov byte [rax + r14], sil
inc r14
mov qword [rbx + 0x10], r14
inc r12d
inc ebp
cmp rdi, qword [rsp + 0x40]
je 0x140039db0
movzx edx, byte [rdi]
movzx esi, dl
test sil, sil
js 0x140039d00
inc rdi
cmp ebp, 0xffffffff
jne 0x140039d80
jmp 0x14003a2d8
mov eax, esi
and eax, 0x1f
movzx r8d, byte [rdi + 1]
and r8d, 0x3f
cmp sil, 0xdf
jbe 0x140039d51
movzx ecx, byte [rdi + 2]
shl r8d, 6
and ecx, 0x3f
or ecx, r8d
cmp dl, 0xf0
jb 0x140039d67
movzx esi, byte [rdi + 3]
and eax, 7
shl eax, 0x12
shl ecx, 6
and esi, 0x3f
or esi, ecx
or esi, eax
cmp esi, 0x110000
je 0x140039db0
add rdi, 4
cmp ebp, 0xffffffff
jne 0x140039d80
jmp 0x14003a2d8
add rdi, 2
shl eax, 6
or eax, r8d
mov esi, eax
cmp ebp, 0xffffffff
jne 0x140039d80
jmp 0x14003a2d8
add rdi, 3
shl eax, 0xc
or ecx, eax
mov esi, ecx
cmp ebp, 0xffffffff
je 0x14003a2d8
nop dword [rax + rax]
cmp esi, 0x80
jae 0x140039cd2
cmp r14, qword [rbx]
jne 0x140039cc0
mov rcx, rbx
call fcn.1400331e0
jmp 0x140039cc0
test r12d, r12d
je 0x140039de5
cmp r14, qword [rbx]
jne 0x140039dc2
mov rcx, rbx
call fcn.1400331e0
mov rax, qword [rbx + 8]
mov byte [rax + r14], 0x2d
inc r14
mov qword [rbx + 0x10], r14
xor r8d, r8d
mov esi, 0
cmp r12d, ebp
jae 0x140039b0d
jmp 0x140039df9
xor r12d, r12d
xor r8d, r8d
mov esi, 0
cmp r12d, ebp
jae 0x140039b0d
mov eax, 0x48
mov qword [rsp + 0x48], rax
mov eax, 0x80
mov edi, r12d
mov dword [rsp + 0x30], r12d
mov qword [rsp + 0x128], r13
mov qword [rsp + 0x120], r15
mov dword [rsp + 0x180], ebp
mov r12, qword [rsp + 0x40]
jmp 0x140039e3b
inc r13
cmp eax, ebp
jbe 0x140039ee2
cmp r13, r12
je 0x14003a3f6
movzx r10d, byte [r13]
movzx ebp, r10b
test bpl, bpl
jns 0x140039e30
mov edx, ebp
and edx, 0x1f
movzx r11d, byte [r13 + 1]
and r11d, 0x3f
cmp bpl, 0xdf
jbe 0x140039ea5
movzx r9d, byte [r13 + 2]
shl r11d, 6
and r9d, 0x3f
or r9d, r11d
cmp r10b, 0xf0
jb 0x140039eb3
movzx ebp, byte [r13 + 3]
and edx, 7
shl edx, 0x12
shl r9d, 6
and ebp, 0x3f
or ebp, r9d
or ebp, edx
cmp ebp, 0x110000
je 0x14003a3f6
add r13, 4
jmp 0x140039e33
add r13, 2
shl edx, 6
or edx, r11d
mov ebp, edx
jmp 0x140039e33
add r13, 3
shl edx, 0xc
or r9d, edx
mov ebp, r9d
jmp 0x140039e33
inc r13
cmp ebp, edx
mov r9d, edx
cmovb r9d, ebp
cmp eax, edx
cmovbe ebp, r9d
cmp r13, r12
je 0x140039f70
movzx r11d, byte [r13]
movzx edx, r11b
test dl, dl
jns 0x140039ed0
mov r9d, edx
and r9d, 0x1f
movzx esi, byte [r13 + 1]
and esi, 0x3f
cmp dl, 0xdf
jbe 0x140039f49
movzx r10d, byte [r13 + 2]
shl esi, 6
and r10d, 0x3f
or r10d, esi
cmp r11b, 0xf0
jb 0x140039f5c
movzx edx, byte [r13 + 3]
and r9d, 7
shl r9d, 0x12
shl r10d, 6
and edx, 0x3f
or edx, r10d
or edx, r9d
cmp edx, 0x110000
je 0x140039f70
add r13, 4
jmp 0x140039ed3
add r13, 2
shl r9d, 6
or r9d, esi
mov edx, r9d
jmp 0x140039ed3
add r13, 3
shl r9d, 0xc
or r10d, r9d
mov edx, r10d
jmp 0x140039ed3
mov r10d, ebp
sub r10d, eax
lea ecx, [rdi + 1]
mov eax, r8d
not eax
xor edx, edx
div ecx
cmp r10d, eax
ja 0x14003a2d0
imul r10d, ecx
add r10d, r8d
mov r11, qword [rsp + 0x128]
jmp 0x140039faf
mov r9d, edi
mov r8d, r10d
cmp r11, r12
je 0x14003a263
movzx r8d, byte [r11]
movzx eax, r8b
test al, al
mov r9, qword [rsp + 0x48]
js 0x140039fd0
inc r11
cmp eax, ebp
jb 0x14003a060
jmp 0x14003a069
mov ecx, eax
and ecx, 0x1f
movzx r9d, byte [r11 + 1]
and r9d, 0x3f
cmp al, 0xdf
jbe 0x14003a026
movzx edx, byte [r11 + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp r8b, 0xf0
jb 0x14003a03d
movzx eax, byte [r11 + 3]
and ecx, 7
shl ecx, 0x12
shl edx, 6
and eax, 0x3f
or eax, edx
or eax, ecx
cmp eax, 0x110000
mov r9, qword [rsp + 0x48]
je 0x14003a28c
add r11, 4
cmp eax, ebp
jb 0x14003a060
jmp 0x14003a069
add r11, 2
shl ecx, 6
or ecx, r9d
mov eax, ecx
mov r9, qword [rsp + 0x48]
cmp eax, ebp
jb 0x14003a060
jmp 0x14003a069
add r11, 3
shl ecx, 0xc
or edx, ecx
mov eax, edx
mov r9, qword [rsp + 0x48]
cmp eax, ebp
jae 0x14003a069
nop word cs:[rax + rax]
inc r10d
je 0x14003a2d0
cmp eax, ebp
jne 0x140039fa0
mov qword [rsp + 0x130], r11
lea esi, [r9 + 0x1a]
lea ecx, [r9 - 0x24]
neg ecx
cmp esi, 0x25
mov eax, 0x1a
cmovb ecx, eax
cmp r9d, 0x24
mov eax, 1
cmovae ecx, eax
cmp r10d, ecx
mov qword [rsp + 0x38], rdi
mov dword [rsp + 0x188], r10d
mov eax, r10d
jae 0x14003a180
mov esi, 0x61
cmp eax, 0x1a
mov r13, qword [rsp + 0x38]
jb 0x14003a0d0
mov esi, 0x16
cmp eax, 0x24
jae 0x14003a3de
cmp r14, qword [rbx]
mov r15d, 0xd41d41d5
mov r12, qword [rsp + 0x40]
jne 0x14003a0ec
mov rcx, rbx
mov edi, eax
call fcn.1400331e0
mov eax, edi
add eax, esi
mov rcx, qword [rbx + 8]
mov byte [rcx + r14], al
inc r14
mov qword [rbx + 0x10], r14
mov r9d, r13d
inc r9d
je 0x14003a404
cmp r13d, dword [rsp + 0x30]
mov ecx, 2
mov eax, 0x2bc
cmove ecx, eax
xor r8d, r8d
mov eax, dword [rsp + 0x188]
xor edx, edx
div ecx
mov ecx, eax
xor edx, edx
div r9d
add eax, ecx
cmp eax, 0x1c8
mov r11, qword [rsp + 0x130]
jb 0x14003a230
xor ecx, ecx
nop word [rax + rax]
mov edx, eax
imul rdx, r15
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 0x14003a150
jmp 0x14003a235
mov r13d, r9d
neg r13d
mov r12d, 0x48
jmp 0x14003a1c8
add r15d, edi
mov rcx, qword [rbx + 8]
mov byte [rcx + r14], r15b
inc r14
lea ecx, [r12 + r13]
cmp r12d, esi
mov edx, 0x1a
cmovae ecx, edx
cmp r12d, r9d
mov edx, 1
cmovbe ecx, edx
mov qword [rbx + 0x10], r14
add r12d, 0x24
cmp eax, ecx
jb 0x14003a0b3
mov r8d, ecx
sub r8d, 0x24
je 0x14003a3c1
sub eax, ecx
neg r8d
xor edx, edx
div r8d
mov r15d, edx
add r15d, ecx
mov edi, 0x61
cmp r15d, 0x1a
jb 0x14003a1ff
mov edi, 0x16
cmp r15d, 0x24
jae 0x14003a3de
cmp r14, qword [rbx]
jne 0x14003a190
mov rcx, rbx
mov ebx, eax
call fcn.1400331e0
mov r9, qword [rsp + 0x48]
mov eax, ebx
mov rbx, qword [rsp + 0x2c0]
jmp 0x14003a190
xor ecx, ecx
mov r10d, eax
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 + 0x48], rax
mov r10d, r8d
mov edi, r9d
cmp r11, r12
jne 0x140039faf
inc r8d
inc ebp
xor esi, esi
mov eax, ebp
mov edi, r9d
mov ebp, dword [rsp + 0x180]
cmp r9d, ebp
mov r13, qword [rsp + 0x128]
jb 0x140039e27
jmp 0x140039b0d
mov r9d, edi
mov r8d, r10d
jmp 0x14003a263
mov qword [rsp + 0x20], 1
mov r8d, 4
mov r9d, 1
mov rcx, rbx
mov rsi, rdx
mov rdx, r15
call fcn.140128e10
mov rdx, rsi
mov r14, qword [rbx + 0x10]
jmp 0x140039c87
mov r15, qword [rsp + 0x120]
mov dl, 1
xor esi, esi
cmp r14, r15
jb 0x140039b06
test r15, r15
je 0x140039b00
cmp r14, r15
jbe 0x140039b00
mov rax, qword [rbx + 8]
cmp byte [rax + r15], 0xbf
jg 0x140039b00
jmp 0x14003a453
mov qword [rsp + 0x20], 1
mov r9d, 1
mov rcx, rbx
mov rdx, r14
mov r8, r15
call fcn.140128e10
mov r14, qword [rbx + 0x10]
jmp 0x140039ad9
mov rcx, qword [rsp + 0x190]
movzx eax, byte [rsp + 0x104]
mov byte [rcx], al
mov rax, qword [rsp + 0x138]
mov qword [rcx + 1], rax
mov eax, dword [rsp + 0x13f]
mov dword [rcx + 8], eax
jmp 0x140037d0c
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001funicode_normalization_0.1.23_srcdecompose.rs
mov rdx, rax
call fcn.1401219f0
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_tinyvec_1.6.0_src_arrayvec.rs
mov edx, 4
mov rcx, rax
call fcn.140121b10
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001funicode_normalization_0.1.23_srclookups.rs
mov rcx, rsi
call fcn.140121b10
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001funicode_normalization_0.1.23_srclookups.rs
mov edx, 0xd4e
call fcn.1401219f0
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001funicode_normalization_0.1.23_srclookups.rs
mov rcx, rsi
call fcn.140121b10
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001funicode_normalization_0.1.23_srclookups.rs
mov edx, 0x1667
call fcn.1401219f0
lea rcx, [0x140156420]
call fcn.140122130
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_tinyvec_1.6.0_src_arrayvec.rs
mov edx, 4
call fcn.140121b10
lea rcx, str.explicit_panic
lea r8, [0x140156448]
mov edx, 0xe
call fcn.140121b80
lea rcx, [0x140156408]
call fcn.140121f20
ud2
lea rcx, [0x1401563a8]
call fcn.140121d20
lea rcx, [0x1401563f0]
call fcn.140121d20
lea r8, [0x140147840]
mov ecx, 4
mov edx, 4
call fcn.140121a60
lea r8, str.core_src_slicememchr.rs
mov rdx, rbp
call fcn.1401219f0
lea r8, str.core_src_slicememchr.rs
mov rcx, rax
mov rdx, rbp
call fcn.140121b10
lea rcx, str.assertion_failed:_self.is_char_boundary_new_len_2
lea r8, [0x14018b720]
mov edx, 0x30
call fcn.140121b80
xor ecx, ecx
mov rdx, rsi
call fcn.1401216a0
lea rax, [0x140147870]
mov qword [rsp + 0x20], rax
mov rcx, rbp
mov rdx, rsi
mov r9, rsi
call fcn.1401220d0
mov ecx, 1
mov rdx, rsi
call fcn.1401216a0
lea rax, [0x1401563d8]
mov qword [rsp + 0x20], rax
mov rcx, rsi
mov rdx, r15
mov r9, r15
call fcn.1401220d0
lea rax, [0x1401563c0]
mov qword [rsp + 0x20], rax
mov rcx, rsi
mov rdx, r15
xor r8d, r8d
mov r9, rbp
call fcn.1401220d0
int3