Function at 0x140052e50
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x218
movaps xmmword [rsp + 0x200], xmm6
mov qword [rsp + 0xf8], r9
mov r14, rdx
mov r12, rcx
lea r15, [rdx + r8]
test r8, r8
je 0x140052fd1
mov rsi, r8
lea rdx, [r14 + 1]
xor eax, eax
movaps xmm0, xmmword [0x14006e410]
mov rdi, r14
mov bl, byte [rdi]
movzx ecx, bl
test cl, cl
jns 0x140052ef4
mov ebp, ecx
and ebp, 0x1f
movzx edi, byte [rdx]
and edi, 0x3f
cmp cl, 0xdf
jbe 0x140052edf
movzx ecx, byte [rdx + 1]
shl edi, 6
and ecx, 0x3f
or ecx, edi
cmp bl, 0xf0
jb 0x140052eeb
movzx ebx, byte [rdx + 2]
add rdx, 3
and ebp, 7
shl ebp, 0x12
shl ecx, 6
and ebx, 0x3f
or ebx, ecx
or ebx, ebp
mov ecx, ebx
jmp 0x140052ef4
inc rdx
shl ebp, 6
or ebp, edi
mov ecx, ebp
jmp 0x140052ef4
add rdx, 2
shl ebp, 0xc
or ecx, ebp
mov rdi, rdx
cmp ecx, 0x2e
je 0x140052f54
cmp ecx, 0x110000
je 0x140052f71
test rax, rax
jne 0x140052f12
cmp ecx, 0x2d
je 0x140052fd1
mov ebp, 5
cmp rax, 5
jae 0x140052f42
movups xmmword [rsp + 0x40], xmm0
cmp rax, 4
je 0x140055a9b
cmp ecx, dword [rsp + rax*4 + 0x40]
jne 0x140052f42
inc rax
mov rbp, rax
cmp rax, 4
je 0x140052fd1
lea eax, [rcx - 0x7b]
cmp eax, 0xffffffe5
ja 0x140052f56
add ecx, 0xffffffc6
cmp ecx, 0xfffffff6
jae 0x140052f56
jmp 0x140052fd1
xor ebp, ebp
xor edx, edx
cmp rdi, r15
setne al
je 0x140052f71
mov dl, al
add rdx, rdi
mov rax, rbp
test rdi, rdi
jne 0x140052e99
mov rbx, qword [rsp + 0x288]
mov rcx, rbx
mov rdx, rsi
call fcn.140049300
mov rdi, qword [rbx + 0x10]
mov rcx, qword [rbx + 8]
add rcx, rdi
mov rdx, r14
mov r8, rsi
call sub.VCRUNTIME140.dll_memcpy
add rdi, rsi
mov qword [rbx + 0x10], rdi
mov qword [r12], 0
mov dword [r12 + 8], 0
mov rax, r12
movaps xmm6, xmmword [rsp + 0x200]
add rsp, 0x218
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov qword [rsp + 0x1b0], r12
mov rcx, qword [rsp + 0x280]
xor esi, esi
mov qword [rcx + 0x10], rsi
lea rdi, [rsp + 0x28]
mov dword [rdi + 8], esi
mov qword [rdi], rsi
mov rax, qword [rsp + 0x288]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x140], rax
xor edx, edx
call fcn.140049300
lea rdx, [rsp + 0x4c]
mov qword [rdx - 0xc], rsi
mov dword [rdx - 4], esi
mov qword [rdx + 0x14], rsi
mov qword [rdx + 0x3c], rsi
xorps xmm6, xmm6
movups xmmword [rdx + 0x24], xmm6
mov qword [rdx + 0x44], r15
mov qword [rdx + 0x4c], r14
mov qword [rdx + 0x54], rdi
mov rcx, qword [rsp + 0xf8]
mov rax, rcx
shr rax, 0x20
mov byte [rdx + 0x60], al
mov dword [rdx + 0x5c], ecx
lea r15, [rsp + 0xb0]
mov qword [r15], rsi
mov dword [r15 + 8], esi
lea r12, [rsp + 0xbc]
mov byte [r12 + 0x24], sil
mov dword [r12 + 0x2c], 0x110000
mov byte [r12 + 0x30], sil
xor eax, eax
cmp rax, 2
je 0x1400539f4
cmp rax, 1
jne 0x1400532d4
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x68]
cmp rax, 5
jb 0x140053a26
mov rax, qword [rsp + 0x58]
cmp rcx, rax
jae 0x140053c31
mov rbp, qword [rsp + 0x50]
lea rdx, [rsp + 0x58]
test rbp, rbp
jne 0x140053a39
jmp 0x140053c36
mov dword [rsp + 0xe8], edi
jmp 0x1400532d4
cmp byte [rsp + 0xec], 0
je 0x1400530f4
cmp byte [rsp + 0xed], bl
jae 0x140053119
mov ecx, esi
mov edx, edi
call fcn.140057170
cmp eax, 0x110000
je 0x140053121
jmp 0x14005310d
mov ecx, esi
mov edx, edi
call fcn.140057170
cmp eax, 0x110000
jne 0x14005310d
test bl, bl
jne 0x140053121
jmp 0x140053c25
mov dword [rsp + 0xe8], eax
jmp 0x1400532d4
test bl, bl
je 0x140053bff
lea rcx, [rsp + 0x40]
mov edx, edi
call fcn.140052960
mov byte [rsp + 0xec], 1
mov byte [rsp + 0xed], bl
jmp 0x1400532d4
mov rbx, rax
test rdx, rdx
je 0x1400532d4
lea rdi, [rbx + rdx*4]
lea rax, [rbx + 4]
mov esi, dword [rbx]
mov rbx, rax
mov ecx, esi
call fcn.140056f50
test al, al
je 0x140053174
mov rcx, r15
mov edx, eax
mov r8d, esi
call fcn.140052700
jmp 0x1400531e4
cmp qword [rsp + 0xb0], 5
mov rax, r15
mov rbp, r12
jb 0x140053195
mov rbp, qword [rsp + 0xc0]
lea rax, [rsp + 0xc8]
mov rcx, qword [rsp + 0x78]
mov rdx, qword [rax]
mov rax, rdx
sub rax, rcx
jb 0x140055ae6
lea rcx, [rcx*8]
add rcx, rbp
mov rdx, rax
call fcn.140051f20
mov rcx, r15
xor edx, edx
mov r8d, esi
call fcn.140052700
mov rax, qword [rsp + 0xb0]
cmp rax, 5
jb 0x1400531df
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x78], rax
xor eax, eax
cmp rbx, rdi
setne cl
je 0x1400532d4
mov al, cl
lea rax, [rbx + rax*4]
test rbx, rbx
jne 0x140053155
jmp 0x1400532d4
mov rcx, r15
mov edx, eax
mov r8d, esi
call fcn.140052700
jmp 0x1400532d4
test rdx, rdx
je 0x1400532d4
mov rbx, rax
lea rdi, [rax + rdx*4]
add rax, 4
mov esi, dword [rbx]
mov rbx, rax
mov ecx, esi
call fcn.140056f50
test al, al
je 0x14005324b
mov rcx, r15
mov edx, eax
mov r8d, esi
call fcn.140052700
jmp 0x1400532bb
cmp qword [rsp + 0xb0], 5
mov rax, r15
mov rbp, r12
jb 0x14005326c
mov rbp, qword [rsp + 0xc0]
lea rax, [rsp + 0xc8]
mov rcx, qword [rsp + 0x78]
mov rdx, qword [rax]
mov rax, rdx
sub rax, rcx
jb 0x140055ae6
lea rcx, [rcx*8]
add rcx, rbp
mov rdx, rax
call fcn.140051f20
mov rcx, r15
xor edx, edx
mov r8d, esi
call fcn.140052700
mov rax, qword [rsp + 0xb0]
cmp rax, 5
jb 0x1400532b6
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x78], rax
xor eax, eax
cmp rbx, rdi
setne cl
je 0x1400532d4
mov al, cl
lea rax, [rbx + rax*4]
test rbx, rbx
jne 0x14005322c
mov rax, qword [rsp + 0x78]
test rax, rax
jne 0x1400538db
mov bl, byte [rsp + 0xa8]
cmp bl, 2
je 0x140053850
mov r14, r15
mov r8, qword [rsp + 0x88]
mov r15, qword [rsp + 0x90]
mov rsi, qword [rsp + 0xa0]
mov r13b, byte [rsp + 0xa9]
test r8, r8
je 0x1400533c5
cmp r8, qword [rsp + 0x80]
je 0x1400533b9
lea rax, [r8 + 1]
mov qword [rsp + 0x88], rax
mov dl, byte [r8]
movzx edi, dl
test dil, dil
jns case.default.0x1400534a4
mov eax, edi
and eax, 0x1f
lea rcx, [r8 + 2]
mov qword [rsp + 0x88], rcx
movzx ebp, byte [r8 + 1]
and ebp, 0x3f
cmp dil, 0xdf
jbe 0x140053543
lea rcx, [r8 + 3]
mov qword [rsp + 0x88], rcx
movzx ecx, byte [r8 + 2]
shl ebp, 6
and ecx, 0x3f
or ecx, ebp
cmp dl, 0xf0
jb 0x14005354c
lea rdx, [r8 + 4]
mov qword [rsp + 0x88], rdx
movzx edi, byte [r8 + 3]
and eax, 7
shl eax, 0x12
shl ecx, 6
and edi, 0x3f
or edi, ecx
or edi, eax
cmp edi, 0x110000
jne case.0x1400534a4.48
mov qword [rsp + 0x88], 0
mov rcx, qword [rsp + 0x98]
cmp rcx, r15
je 0x140053845
lea rax, [rcx + 1]
mov qword [rsp + 0x98], rax
mov dl, byte [rcx]
movzx edi, dl
test dil, dil
jns 0x140053459
mov eax, edi
and eax, 0x1f
lea rbp, [rcx + 2]
mov qword [rsp + 0x98], rbp
movzx ebp, byte [rcx + 1]
and ebp, 0x3f
cmp dil, 0xdf
jbe 0x14005344b
lea rdi, [rcx + 3]
mov qword [rsp + 0x98], rdi
movzx edi, byte [rcx + 2]
shl ebp, 6
and edi, 0x3f
or edi, ebp
cmp dl, 0xf0
jb 0x140053454
lea rdx, [rcx + 4]
mov qword [rsp + 0x98], rdx
movzx ecx, byte [rcx + 3]
and eax, 7
shl eax, 0x12
shl edi, 6
and ecx, 0x3f
or ecx, edi
or ecx, eax
mov edi, ecx
jmp 0x140053459
shl eax, 6
or eax, ebp
mov edi, eax
jmp 0x140053459
shl eax, 0xc
or edi, eax
lea eax, [rdi - 0x2d]
cmp eax, 2
jb case.default.0x1400534a4
cmp edi, 0x110000
je 0x140053845
lea eax, [rdi - 0x61]
cmp eax, 0x1a
jb case.default.0x1400534a4
lea eax, [rdi - 0x30]
cmp eax, 0xa
jb case.default.0x1400534a4
mov ecx, edi
call fcn.140052bb0
movzx ecx, byte [rax]
lea rdx, [0x140055c08]
movsxd rcx, dword [rdx + rcx*4]
add rcx, rdx
xor r8d, r8d
jmp rcx
test r13b, r13b
jne case.0x1400534a4.50
jmp case.0x1400534a4.48
test bl, bl
je case.0x1400534a4.50
mov byte [rsi + 7], 1
movzx r8d, word [rax + 1]
movzx eax, byte [rax + 3]
lea r9, [r8 + rax]
test r8, r8
je 0x1400534f3
cmp r8d, 0x321c
jae 0x1400534e6
lea rcx, [0x14007a1c4]
cmp byte [r8 + rcx], 0xc0
jge 0x1400534f3
jmp 0x140055ab1
cmp r8d, 0x321c
jne 0x140055ab1
test r9, r9
je 0x140053521
cmp r9d, 0x321c
jae 0x140053514
lea rcx, [0x14007a1c4]
cmp byte [r9 + rcx], 0xbf
jg 0x140053521
jmp 0x140055ab1
cmp r9d, 0x321c
jne 0x140055ab1
lea rcx, [0x14007a1c4]
add r8, rcx
add rax, r8
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x88], r8
jmp case.0x1400534a4.49
shl eax, 6
or eax, ebp
mov edi, eax
jmp case.default.0x1400534a4
shl eax, 0xc
or ecx, eax
mov edi, ecx
jmp case.default.0x1400534a4
cmp byte [rsp + 0xac], 0
je case.0x1400534a4.48
add rsi, 0xb
jmp 0x140053573
add rsi, 8
jmp 0x140053573
test bl, bl
je case.0x1400534a4.48
add rsi, 6
mov byte [rsi], 1
cmp edi, 0x110000
je 0x140053845
cmp byte [rsp + 0xe0], 0
je 0x1400535cb
cmp edi, 0x80
mov r15, r14
jb 0x1400535d6
lea ebx, [rdi - 0xac00]
cmp ebx, 0x2ba4
jb 0x140053648
mov ecx, edi
call fcn.140057060
test rax, rax
jne 0x140053141
mov ecx, edi
call fcn.140056fb0
test rax, rax
jne 0x140053141
jmp 0x1400535d6
cmp edi, 0x80
mov r15, r14
jae 0x14005363a
mov ecx, edi
call fcn.140056f50
test al, al
jne 0x14005387e
cmp qword [rsp + 0xb0], 5
mov rax, r15
mov rbp, r12
jb 0x140053606
mov rbp, qword [rsp + 0xc0]
lea rax, [rsp + 0xc8]
mov rcx, qword [rsp + 0x78]
mov rdx, qword [rax]
mov rax, rdx
sub rax, rcx
jb 0x140055ae6
lea rcx, [rcx*8]
add rcx, rbp
mov rdx, rax
call fcn.140051f20
mov rcx, r15
xor edx, edx
mov r8d, edi
jmp 0x140053820
lea ebx, [rdi - 0xac00]
cmp ebx, 0x2ba4
jae 0x140053674
movzx edi, bx
imul ebp, edi, 0x6f75
shr ebp, 0x18
lea esi, [rbp + 0x1100]
mov ecx, esi
call fcn.140056f50
test al, al
je 0x140053689
mov rcx, r15
mov edx, eax
mov r8d, esi
call fcn.140052700
jmp 0x1400536f2
mov ecx, edi
call fcn.140056fb0
test rax, rax
jne 0x140053218
jmp 0x1400535d6
cmp qword [rsp + 0xb0], 5
mov rax, r15
mov r8, r12
jb 0x1400536aa
mov r8, qword [rsp + 0xc0]
lea rax, [rsp + 0xc8]
mov rcx, qword [rsp + 0x78]
mov rdx, qword [rax]
mov rax, rdx
sub rax, rcx
jb 0x140055ae6
lea rcx, [r8 + rcx*8]
mov rdx, rax
call fcn.140051f20
mov rcx, r15
xor edx, edx
mov r8d, esi
call fcn.140052700
mov rax, qword [rsp + 0xb0]
cmp rax, 5
jb 0x1400536ed
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x78], rax
imul eax, ebp, 0x24c
sub ebx, eax
movzx eax, bx
shr eax, 2
imul esi, eax, 0x4925
shr esi, 0x11
add esi, 0x1161
mov ecx, esi
call fcn.140056f50
test al, al
je 0x140053729
mov rcx, r15
mov edx, eax
mov r8d, esi
call fcn.140052700
jmp 0x140053799
cmp qword [rsp + 0xb0], 5
mov rax, r15
mov rbp, r12
jb 0x14005374a
mov rbp, qword [rsp + 0xc0]
lea rax, [rsp + 0xc8]
mov rcx, qword [rsp + 0x78]
mov rdx, qword [rax]
mov rax, rdx
sub rax, rcx
jb 0x140055ae6
lea rcx, [rcx*8]
add rcx, rbp
mov rdx, rax
call fcn.140051f20
mov rcx, r15
xor edx, edx
mov r8d, esi
call fcn.140052700
mov rax, qword [rsp + 0xb0]
cmp rax, 5
jb 0x140053794
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x78], rax
mov eax, edi
shr eax, 2
imul eax, eax, 0x4925
shr eax, 0x11
lea ecx, [rax + rax*8]
lea ecx, [rcx + rcx*2]
add ecx, eax
sub di, cx
je 0x1400532d4
add edi, 0x11a7
movzx esi, di
mov ecx, esi
call fcn.140056f50
test al, al
jne 0x140053206
cmp qword [rsp + 0xb0], 5
mov rax, r15
mov rbp, r12
jb 0x1400537f1
mov rbp, qword [rsp + 0xc0]
lea rax, [rsp + 0xc8]
mov rcx, qword [rsp + 0x78]
mov rdx, qword [rax]
mov rax, rdx
sub rax, rcx
jb 0x140055ae6
lea rcx, [rcx*8]
add rcx, rbp
mov rdx, rax
call fcn.140051f20
mov rcx, r15
xor edx, edx
mov r8d, esi
call fcn.140052700
mov rax, qword [rsp + 0xb0]
cmp rax, 5
jb 0x14005383b
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x78], rax
jmp 0x1400532d9
mov byte [rsp + 0xa8], 2
mov r15, r14
mov rdx, qword [rsp + 0xb0]
cmp rdx, 5
jb 0x140053890
mov rdx, qword [rsp + 0xc8]
test rdx, rdx
je 0x140053a71
mov rcx, qword [rsp + 0x78]
mov rbp, qword [rsp + 0xc0]
jmp 0x1400538a1
mov rcx, r15
mov edx, eax
mov r8d, edi
call fcn.140052700
jmp 0x1400532d4
test rdx, rdx
je 0x140053a71
mov rcx, qword [rsp + 0x78]
mov rbp, r12
mov rax, rdx
sub rax, rcx
jb 0x140055ae6
lea rcx, [rcx*8]
add rcx, rbp
mov rdx, rax
call fcn.140051f20
mov rax, qword [rsp + 0xb0]
cmp rax, 5
jb 0x1400538d6
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x78], rax
mov rcx, qword [rsp + 0x70]
mov rbp, qword [rsp + 0xb0]
mov rdx, rbp
mov rbx, r12
cmp rbp, 5
jb 0x140053904
mov rbx, qword [rsp + 0xc0]
mov rdx, qword [rsp + 0xc8]
cmp rdx, rcx
jbe 0x1400554cd
mov edi, dword [rbx + rcx*8 + 4]
inc rcx
cmp rcx, rax
jne 0x1400539c4
mov rbx, rbp
cmp rbp, 5
jb 0x14005392e
mov rbx, qword [rsp + 0xc8]
sub rbx, rax
je 0x14005399b
xor ecx, ecx
mov rdx, qword [rsp + 0xb0]
mov rax, qword [rsp + 0x78]
add rax, rcx
cmp rdx, 5
jb 0x140053966
mov rdx, qword [rsp + 0xc8]
cmp rdx, rax
jbe 0x140053c50
mov rbp, qword [rsp + 0xc0]
jmp 0x140053972
mov rbp, r12
cmp rdx, rax
jbe 0x140053c50
cmp rdx, rcx
jbe 0x140053c5f
mov dl, byte [rbp + rax*8]
mov eax, dword [rbp + rax*8 + 4]
mov byte [rbp + rcx*8], dl
mov dword [rbp + rcx*8 + 4], eax
inc rcx
cmp rcx, rbx
jb 0x140053935
mov rbp, qword [rsp + 0xb0]
cmp rbp, 5
mov eax, 0x70
mov ecx, 0x88
cmovae rax, rcx
cmp qword [rsp + rax + 0x40], rbx
jbe 0x1400539b9
mov qword [rsp + rax + 0x40], rbx
lea rax, [rsp + 0x4c]
movups xmmword [rax + 0x24], xmm6
jmp 0x1400539c9
mov qword [rsp + 0x70], rcx
mov ecx, edi
call fcn.140056f50
mov ebx, eax
mov esi, dword [rsp + 0xe8]
cmp esi, 0x110000
jne 0x1400530cf
test bl, bl
je 0x1400530c3
mov esi, edi
jmp 0x140053ad4
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x68]
cmp rax, 5
jb 0x140053a4b
mov rax, qword [rsp + 0x58]
cmp rcx, rax
jae 0x140053aa8
mov rbp, qword [rsp + 0x50]
lea rdx, [rsp + 0x58]
test rbp, rbp
jne 0x140053a5a
jmp 0x140053aad
lea rdx, [rsp + 0x40]
lea rbp, [rsp + 0x4c]
cmp rcx, rax
jae 0x140053c36
mov esi, dword [rbp + rcx*4]
inc rcx
mov qword [rsp + 0x60], 1
jmp 0x140053a6a
lea rdx, [rsp + 0x40]
lea rbp, [rsp + 0x4c]
cmp rcx, rax
jae 0x140053aad
mov esi, dword [rbp + rcx*4]
inc rcx
mov qword [rsp + 0x60], 2
mov qword [rsp + 0x68], rcx
jmp 0x140053ad4
mov qword [rsp + 0x60], 2
mov qword [rsp + 0x68], 0
mov esi, dword [rsp + 0xe8]
mov eax, 2
cmp esi, 0x110000
je 0x140053075
mov dword [rsp + 0xe8], 0x110000
jmp 0x140053ad4
lea rdx, [rsp + 0x58]
test rax, rax
je 0x140053ab9
mov qword [rdx], 0
mov esi, dword [rsp + 0xe8]
mov eax, 0x110000
mov dword [rsp + 0xe8], eax
cmp esi, eax
je 0x140053c6b
cmp esi, 0x7f
ja 0x140053b0a
mov rdi, qword [rsp + 0x280]
mov rdx, qword [rdi + 0x10]
cmp rdx, qword [rdi]
jne 0x140053af6
mov rcx, rdi
call fcn.1400423a0
mov rdx, qword [rdi + 0x10]
mov rax, qword [rdi + 8]
mov byte [rax + rdx], sil
inc rdx
mov qword [rdi + 0x10], rdx
jmp 0x140053bf5
mov dword [rsp + 0x1b8], 0
mov eax, esi
cmp esi, 0x800
jae 0x140053b42
shr eax, 6
or al, 0xc0
mov byte [rsp + 0x1b8], al
and sil, 0x3f
or sil, 0x80
mov byte [rsp + 0x1b9], sil
mov esi, 2
jmp 0x140053bc0
cmp esi, 0x10000
jae 0x140053b7d
shr eax, 0xc
or al, 0xe0
mov byte [rsp + 0x1b8], al
mov eax, esi
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x1b9], al
and sil, 0x3f
or sil, 0x80
mov byte [rsp + 0x1ba], sil
mov esi, 3
jmp 0x140053bc0
shr eax, 0x12
and al, 7
or al, 0xf0
mov byte [rsp + 0x1b8], al
mov eax, esi
shr eax, 0xc
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x1b9], al
mov eax, esi
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x1ba], al
and sil, 0x3f
or sil, 0x80
mov byte [rsp + 0x1bb], sil
mov esi, 4
mov rbx, qword [rsp + 0x280]
mov rcx, rbx
mov rdx, rsi
call fcn.140049300
mov rdi, qword [rbx + 0x10]
mov rcx, qword [rbx + 8]
add rcx, rdi
lea rdx, [rsp + 0x1b8]
mov r8, rsi
call sub.VCRUNTIME140.dll_memcpy
add rdi, rsi
mov qword [rbx + 0x10], rdi
mov rax, qword [rsp + 0x60]
jmp 0x140053075
mov dword [rsp + 0xe8], edi
mov byte [rsp + 0xec], 0
mov qword [rsp + 0x60], 1
mov qword [rsp + 0x68], 0
jmp 0x140053ad4
mov dword [rsp + 0xe8], edi
jmp 0x140053ad4
lea rdx, [rsp + 0x58]
test rax, rax
je 0x140053c42
mov qword [rdx], 0
mov qword [rsp + 0x60], 0
jmp 0x140053073
lea r8, [0x14006e4a8]
mov rcx, rax
call fcn.140059460
lea r8, [0x14006e4c0]
call fcn.140059460
mov rdx, qword [rsp + 0xb0]
cmp rdx, 5
jb 0x140053c90
mov rcx, qword [rsp + 0xc0]
shl rdx, 3
mov r8d, 4
call fcn.140018180
mov rdx, qword [rsp + 0x40]
cmp rdx, 5
mov r14, qword [rsp + 0x288]
mov rsi, qword [rsp + 0x280]
jb 0x140053cbf
mov rcx, qword [rsp + 0x50]
shl rdx, 2
mov r8d, 4
call fcn.140018180
xor ebp, ebp
mov qword [rsp + 0x120], rbp
mov qword [rsp + 0x128], 8
mov qword [rsp + 0x130], rbp
mov rax, qword [rsi + 8]
mov rdx, qword [rsi + 0x10]
lea rcx, [rsp + 0x1b8]
mov qword [rcx], rax
mov qword [rcx + 8], rdx
mov qword [rcx + 0x10], rbp
mov qword [rcx + 0x18], rdx
mov qword [rcx + 0x20], 1
movabs rax, 0x2e0000002e
mov qword [rcx + 0x28], rax
mov qword [rcx + 0x30], rbp
mov qword [rcx + 0x38], rdx
mov word [rcx + 0x40], 1
call fcn.140051de0
test rax, rax
je 0x1400554e7
mov r12, rax
mov r15, rdx
mov rax, qword [rsp + 0xf8]
and rax, 0xffffffffffff00ff
mov qword [rsp + 0x178], rax
lea r13, [rsp + 0x28]
xorps xmm6, xmm6
mov eax, 8
mov qword [rsp + 0x38], rax
xor ebp, ebp
xor eax, eax
test al, 1
je 0x140053d88
mov rdx, qword [r14 + 0x10]
cmp rdx, qword [r14]
jne 0x140053d79
mov rcx, r14
call fcn.1400423a0
mov rdx, qword [r14 + 0x10]
mov rax, qword [r14 + 8]
mov byte [rax + rdx], 0x2e
inc rdx
mov qword [r14 + 0x10], rdx
cmp r15, 4
jb 0x140053d9c
cmp dword [r12], 0x2d2d6e78
je 0x140053e76
test bpl, 1
jne 0x140053ef9
test r15, r15
je 0x140053ef7
lea rdi, [r12 + r15]
lea rax, [r12 + 1]
mov rbx, r12
mov bl, byte [rbx]
movzx ecx, bl
test cl, cl
js 0x140053dc9
mov rbx, rax
jmp 0x140053e2d
mov edx, ecx
and edx, 0x1f
movzx esi, byte [rax]
and esi, 0x3f
cmp cl, 0xdf
jbe 0x140053e10
movzx ebp, byte [rax + 1]
shl esi, 6
and ebp, 0x3f
or ebp, esi
cmp bl, 0xf0
jb 0x140053e1f
movzx ecx, byte [rax + 2]
and edx, 7
shl edx, 0x12
shl ebp, 6
and ecx, 0x3f
or ecx, ebp
or ecx, edx
cmp ecx, 0x110000
je 0x140053ef7
add rax, 3
jmp 0x140053dc4
inc rax
shl edx, 6
or edx, esi
mov rbx, rax
mov ecx, edx
jmp 0x140053e2d
add rax, 2
shl edx, 0xc
or ebp, edx
mov rbx, rax
mov ecx, ebp
lea eax, [rcx - 0x21]
cmp eax, 0x5d
ja 0x140053e58
xor ebp, ebp
xor eax, eax
cmp rbx, rdi
setne cl
je 0x140053ef9
mov al, cl
add rax, rbx
test rbx, rbx
jne 0x140053dbb
jmp 0x140053ef9
call fcn.140064550
cmp al, 0x11
ja 0x140053e35
movzx eax, al
mov ecx, 0x20003
bt ecx, eax
jae 0x140053e35
mov bpl, 1
jmp 0x140053ef9
cmp r15, 5
jb 0x140053e88
cmp byte [r12 + 4], 0xbf
jle 0x140055b29
add r12, 4
lea r14, [r15 - 4]
mov qword [rsp + 0x130], 0
mov rdi, r14
mov cl, 0x2d
mov rdx, r12
mov r8, rdi
call fcn.14000caf0
cmp rax, 1
jne 0x140053ed2
mov rdi, rdx
mov r8, rdx
inc r8
je 0x140053ecd
cmp r8, r14
ja 0x140053ecd
cmp byte [r12 + rdi], 0x2d
je 0x1400542a0
cmp rdi, r14
jbe 0x140053e9f
lea rax, str._rustc_fc594f15669680fa70d255faec3ca3fb507c3405librarycore_src_strpattern.rs
xor edi, edi
xor ecx, ecx
cmp rdi, rcx
je 0x140053f5a
mov rdx, rax
add rdx, rcx
je 0x140053f5a
inc rcx
cmp byte [rdx], 0
jns 0x140053edd
jmp 0x14005428b
xor ebp, ebp
mov rcx, r12
mov rdx, r15
mov r8, qword [rsp + 0xf8]
mov r9, r13
call fcn.140052ca0
mov rcx, r14
mov rdx, r15
call fcn.140049300
mov rsi, qword [r14 + 0x10]
mov rcx, qword [r14 + 8]
add rcx, rsi
mov rdx, r12
mov r8, r15
call sub.VCRUNTIME140.dll_memcpy
add rsi, r15
mov qword [r14 + 0x10], rsi
lea rcx, [rsp + 0x1b8]
call fcn.140051de0
mov r12, rax
mov r15, rdx
mov al, 1
test r12, r12
jne 0x140053d60
jmp 0x1400554d9
mov r15, r12
mov r12, rax
mov qword [rsp + 0x1a8], rbp
test r14, r14
je 0x1400549b4
add r14, r15
xor r11d, r11d
mov r13d, 0x48
mov r10d, 0x80
mov r8d, edi
xor edx, edx
mov dword [rsp + 0xf0], r8d
mov qword [rsp + 0x108], r11
lea r8d, [r13 + 0x1a]
mov r9d, r13d
neg r9d
inc r15
mov ebx, 0x24
mov ebp, 1
mov r11d, edx
mov ecx, edx
mov al, byte [r15 - 1]
lea edx, [rax - 0x30]
cmp dl, 0xa
jae 0x140053fc6
add al, 0xea
mov edx, eax
jmp 0x140053fda
lea edx, [rax - 0x41]
cmp dl, 0x1a
jb 0x140053fda
add al, 0x9f
mov edx, eax
cmp al, 0x1a
jae 0x140054286
test ebp, ebp
je 0x140055ace
movzx esi, dl
mov eax, ecx
not eax
xor edx, edx
div ebp
cmp eax, esi
jb 0x140054286
mov eax, ebp
imul eax, esi
add ecx, eax
lea eax, [r9 + rbx]
cmp ebx, r8d
mov edx, 0x1a
cmovae eax, edx
cmp ebx, r13d
mov edx, 1
cmovbe eax, edx
cmp eax, esi
ja 0x14005404b
mov esi, 0x24
sub esi, eax
mov eax, esi
mul ebp
jo 0x140054286
cmp r15, r14
je 0x140054286
test r15, r15
je 0x140054286
add ebx, 0x24
imul ebp, esi
inc r15
jmp 0x140053fb4
mov r8d, dword [rsp + 0xf0]
inc r8d
je 0x140055b19
mov eax, ecx
sub eax, r11d
test r11d, r11d
mov ebp, 2
mov edx, 0x2bc
cmove ebp, edx
xor r13d, r13d
xor edx, edx
div ebp
mov esi, eax
xor edx, edx
div r8d
add eax, esi
cmp eax, 0x1c8
mov r9, qword [rsp + 0x108]
jb 0x1400540bc
xor r13d, r13d
mov ebx, 0xd41d41d5
mov edx, eax
imul rdx, rbx
shr rdx, 0x20
mov ebp, eax
sub ebp, edx
shr ebp, 1
add ebp, edx
shr ebp, 5
add r13d, 0x24
cmp eax, 0x3e57
mov eax, ebp
ja 0x140054098
jmp 0x1400540be
mov ebp, eax
lea eax, [rbp*4]
lea eax, [rax + rax*8]
add ebp, 0x26
xor edx, edx
div bp
mov r11d, eax
mov eax, ecx
xor edx, edx
div r8d
add r10d, eax
jb 0x140054286
mov eax, r10d
xor eax, 0xd800
add eax, 0xffef0000
cmp eax, 0xffef0800
jb 0x140054286
cmp r10d, 0x110000
je 0x140054286
mov dword [rsp + 0xf0], edx
mov ebp, edx
test r9, r9
je 0x140054155
mov rax, r9
shl rax, 4
mov rcx, qword [rsp + 0x38]
add rax, rcx
lea rdx, [rcx + 0x10]
mov rsi, rdx
mov rdx, qword [rcx]
cmp rdx, rbp
jb 0x14005413a
inc rdx
mov qword [rcx], rdx
xor edx, edx
cmp rsi, rax
setne bl
je 0x140054155
mov dl, bl
shl rdx, 4
add rdx, rsi
mov rcx, rsi
test rsi, rsi
jne 0x140054129
cmp r9, qword [rsp + 0x120]
jne 0x140054191
lea rcx, [rsp + 0x120]
mov rdx, r9
mov esi, r10d
mov ebx, r8d
mov word [rsp + 0x38], r11w
call fcn.140052630
movzx r11d, word [rsp + 0x38]
mov r8d, ebx
mov r10d, esi
mov rax, qword [rsp + 0x130]
jmp 0x140054194
mov rax, r9
movzx ecx, r11w
add r13d, ecx
mov rdx, qword [rsp + 0x128]
mov rcx, rax
shl rcx, 4
mov qword [rdx + rcx], rbp
mov qword [rsp + 0x38], rdx
mov dword [rdx + rcx + 8], r10d
lea r11, [rax + 1]
mov qword [rsp + 0x130], r11
mov edx, dword [rsp + 0xf0]
inc edx
cmp r15, r14
mov qword [rsp + 0x108], r11
jne 0x140053f88
cmp r11, 0x15
jae 0x140054365
cmp r11, 2
jb 0x1400549b4
mov r14, r11
mov rdx, qword [rsp + 0x38]
lea r9, [rdx + rcx]
add r9, 0x10
xor r11d, r11d
dec rax
mov rcx, rax
shl rcx, 4
mov rdx, qword [rsp + 0x38]
mov rbp, qword [rdx + rcx]
cmp qword [rdx + rcx + 0x10], rbp
jae 0x140054275
lea r10, [rdx + rcx]
add rcx, rdx
add rcx, 0x10
mov rdx, r14
sub rdx, rax
mov r8d, dword [r10 + 8]
movups xmm0, xmmword [rcx]
movups xmmword [r10], xmm0
cmp rdx, 3
jb 0x14005426e
mov rdx, r11
mov rsi, r9
cmp qword [r10 + 0x20], rbp
jae 0x14005426e
movups xmm0, xmmword [rsi]
movups xmmword [rsi - 0x10], xmm0
dec rdx
je 0x14005426b
mov rcx, rsi
lea rbx, [rsi + 0x10]
cmp qword [rsi + 0x10], rbp
mov rsi, rbx
jb 0x14005424d
jmp 0x14005426e
mov rcx, rsi
mov qword [rcx], rbp
mov dword [rcx + 8], r8d
add r9, 0xfffffffffffffff0
inc r11
test rax, rax
jne 0x140054205
jmp 0x1400549b4
lea r13, [rsp + 0x28]
mov byte [rsp + 0x28], 1
mov bpl, 1
mov r14, qword [rsp + 0x288]
jmp 0x140053f37
test rdi, rdi
je 0x1400542cc
cmp rdi, r14
jb 0x1400542b7
jne 0x140055bc2
add r15, 0xfffffffffffffffd
mov r8, r15
cmp r8, r14
jae 0x1400542d4
cmp byte [r12 + r8], 0xbf
jle 0x140055b8b
mov rax, r8
jmp 0x1400542dd
mov rax, r12
jmp 0x140053ed9
mov rax, r14
jne 0x140055b8b
lea r15, [r12 + rax]
sub r14, rax
cmp rdi, 8
jb 0x140054341
lea rcx, [r12 + 7]
and rcx, 0xfffffffffffffff8
mov rax, rcx
sub rax, r12
cmp rax, rdi
ja 0x140054341
movabs rdx, 0x8080808080808080
test qword [r12], rdx
jne 0x14005428b
cmp rcx, r12
mov ecx, 8
cmove rax, rcx
lea rcx, [rdi - 8]
cmp rax, rcx
jae 0x14005434c
movabs rdx, 0x8080808080808080
test qword [r12 + rax], rdx
jne 0x14005428b
add rax, 8
jmp 0x140054322
mov rax, r12
mov r12, r15
jmp 0x140053edb
movabs rax, 0x8080808080808080
test qword [r12 + rcx], rax
jne 0x14005428b
jmp 0x140053f60
xor esi, esi
mov rax, r11
shr rax, 0x3c
sete al
jne 0x140055bf1
lea rcx, [r11*8]
and rcx, 0xfffffffffffffff0
mov sil, al
shl rsi, 3
test rcx, rcx
mov qword [rsp + 0x138], rcx
je 0x1400543a7
mov rdx, rsi
mov rbx, r11
call fcn.1400180f0
mov r11, rbx
jmp 0x1400543aa
mov rax, rsi
mov r14, qword [rsp + 0x38]
mov qword [rsp + 0x100], rax
test rax, rax
je 0x140055bf6
xor eax, eax
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], 8
mov qword [rsp + 0x50], rax
lea rax, [r14 - 0x30]
mov qword [rsp + 0x160], rax
lea rax, [r14 - 0x18]
mov qword [rsp + 0x158], rax
lea rax, [r14 - 8]
mov qword [rsp + 0x148], rax
lea rax, [r14 + 0x10]
mov qword [rsp + 0x150], rax
lea rax, [r14 - 0x10]
mov qword [rsp + 0x168], rax
mov r13d, 8
xor edx, edx
mov r15, r11
mov qword [rsp + 0xf0], rdx
mov r9, r15
dec r15
je 0x140054524
lea rsi, [r9 - 2]
mov rax, r15
shl rax, 4
mov rcx, rsi
shl rcx, 4
mov rdx, qword [r14 + rcx]
cmp qword [r14 + rax], rdx
jae 0x140054531
mov r8, r9
shl r8, 4
mov rax, qword [rsp + 0x158]
lea r10, [rax + r8]
mov eax, 2
mov r15, rsi
mov rcx, rax
mov rbx, r10
sub rsi, 1
jb 0x140054492
mov rax, rsi
shl rax, 4
mov rbp, qword [r14 + rax]
lea rax, [rcx + 1]
lea r10, [rbx - 0x10]
cmp rdx, rbp
mov rdx, rbp
jb 0x140054468
mov rsi, r9
sub rsi, r15
jb 0x140055bdf
cmp r9, r11
ja 0x140055be8
cmp rsi, 2
jb 0x140054567
mov qword [rsp + 0x118], r15
mov r15, r11
mov rdx, rsi
shr rdx, 1
shr rcx, 1
cmp rcx, 2
mov ebp, 1
cmovae rbp, rcx
dec rcx
add r8, qword [rsp + 0x148]
cmp rcx, rdx
jae 0x140055b0d
mov r11, qword [rbx - 8]
mov r10d, dword [rbx]
mov rax, qword [r8 - 8]
mov r14d, dword [r8]
mov qword [rbx - 8], rax
mov dword [rbx], r14d
mov qword [r8 - 8], r11
mov dword [r8], r10d
add rbx, 0x10
dec rcx
add r8, 0xfffffffffffffff0
dec rbp
jne 0x1400544dd
mov r14, qword [rsp + 0x38]
mov r11, r15
mov r15, qword [rsp + 0x118]
jmp 0x140054567
mov esi, 1
xor r15d, r15d
jmp 0x140054625
mov rax, r9
shl rax, 4
add rax, qword [rsp + 0x160]
lea rcx, [r9 - 2]
xor esi, esi
cmp rcx, rsi
je 0x14005461f
mov rbp, qword [rax]
inc rsi
add rax, 0xfffffffffffffff0
cmp rdx, rbp
mov rdx, rbp
jae 0x140054546
sub r15, rsi
inc rsi
test r15, r15
je 0x140054625
cmp rsi, 9
ja 0x140054625
mov rcx, r15
shl rcx, 4
add rcx, qword [rsp + 0x150]
dec r15
mov rsi, r9
sub rsi, r15
jb 0x140055b67
cmp r9, r11
ja 0x140055b79
cmp rsi, 2
jb 0x14005460a
mov rbp, r15
shl rbp, 4
add rbp, r14
mov r10, qword [rbp]
cmp qword [rbp + 0x10], r10
jae 0x14005460a
lea rdx, [rbp + 0x10]
mov r8d, dword [rbp + 8]
movups xmm0, xmmword [rdx]
movups xmmword [rbp], xmm0
cmp rsi, 3
jb 0x140054603
cmp qword [rbp + 0x20], r10
jae 0x140054603
mov ebx, 2
mov rbp, rcx
movups xmm0, xmmword [rbp]
movups xmmword [rbp - 0x10], xmm0
inc rbx
cmp rbx, rsi
jae 0x140054600
mov rdx, rbp
lea rax, [rbp + 0x10]
cmp qword [rbp + 0x10], r10
mov rbp, rax
jb 0x1400545de
jmp 0x140054603
mov rdx, rbp
mov qword [rdx], r10
mov dword [rdx + 8], r8d
test r15, r15
je 0x140054625
add rcx, 0xfffffffffffffff0
cmp rsi, 0xa
jb 0x140054589
jmp 0x140054625
xor r15d, r15d
mov rsi, r9
mov rdx, qword [rsp + 0xf0]
cmp rdx, qword [rsp + 0x40]
jne 0x14005464e
lea rcx, [rsp + 0x40]
mov rbx, r11
call fcn.140052630
mov r11, rbx
mov r13, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x50]
mov rax, rdx
shl rax, 4
mov qword [r13 + rax], r15
mov qword [r13 + rax + 8], rsi
inc rdx
mov qword [rsp + 0x50], rdx
cmp rdx, 2
mov qword [rsp + 0x170], r13
mov qword [rsp + 0x118], r15
jb 0x14005496f
lea r8, [rdx - 1]
mov rcx, r8
shl rcx, 4
cmp qword [r13 + rcx], 0
je 0x1400546e9
mov rsi, rdx
shl rsi, 4
mov rbp, qword [rsi + r13 - 0x18]
mov rax, qword [r13 + rcx + 8]
cmp rbp, rax
jbe 0x1400546e9
cmp rdx, 3
jb 0x140054963
lea rcx, [rdx - 3]
mov r9, rcx
shl rcx, 4
mov rcx, qword [r13 + rcx + 8]
lea rbx, [rax + rbp]
cmp rcx, rbx
jbe 0x140054706
cmp rdx, 4
jb 0x14005496a
add rbp, rcx
cmp qword [rsi + r13 - 0x38], rbp
mov rbp, r9
jbe 0x140054709
jmp 0x14005496f
cmp rdx, 3
jb 0x14005470e
mov rax, qword [r13 + rcx + 8]
lea rbp, [rdx - 3]
mov rcx, rbp
shl rcx, 4
mov rcx, qword [r13 + rcx + 8]
jmp 0x140054709
mov rbp, r9
cmp rcx, rax
jb 0x140054712
lea rbp, [rdx - 2]
lea rcx, [rbp + 1]
cmp rdx, rcx
jbe 0x140055af2
shl rcx, 4
mov rax, qword [r13 + rcx]
mov qword [rsp + 0x110], rbp
shl rbp, 4
mov rsi, qword [r13 + rbp + 8]
mov rbx, qword [r13 + rbp]
add rbx, rsi
cmp rbx, rax
jb 0x140055b49
cmp rbx, r11
ja 0x140055b5b
mov qword [rsp + 0x180], rbp
mov qword [rsp + 0x188], rsi
mov qword [rsp + 0x1a0], r8
mov qword [rsp + 0xf0], rdx
mov qword [rsp + 0x198], rcx
mov rbp, qword [r13 + rcx + 8]
mov rsi, rax
shl rsi, 4
add rsi, r14
mov r14, rbp
shl r14, 4
lea r15, [rsi + r14]
mov r13, rbx
shl r13, 4
mov qword [rsp + 0x190], rax
add rax, rbp
sub rbx, rax
cmp rbx, rbp
jae 0x14005482e
mov r14, rbx
shl r14, 4
mov rcx, qword [rsp + 0x100]
mov rdx, r15
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
mov rdx, qword [rsp + 0x100]
add r14, rdx
test rbp, rbp
jle 0x1400548b0
test rbx, rbx
jle 0x1400548b0
add r13, qword [rsp + 0x168]
mov rbx, qword [rsp + 0x110]
mov rax, qword [r14 - 0x10]
cmp rax, qword [r15 - 0x10]
jb 0x140054809
add r14, 0xfffffffffffffff0
mov rax, r14
jmp 0x140054810
add r15, 0xfffffffffffffff0
mov rax, r15
movups xmm0, xmmword [rax]
movups xmmword [r13], xmm0
cmp r15, rsi
jbe 0x140054826
add r13, 0xfffffffffffffff0
cmp r14, rdx
ja 0x1400547f6
mov rsi, r15
jmp 0x1400548bb
mov rcx, qword [rsp + 0x100]
mov rdx, rsi
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
mov rdx, qword [rsp + 0x100]
add r14, rdx
test rbp, rbp
mov rbx, qword [rsp + 0x110]
jle 0x1400548bb
add r13, qword [rsp + 0x38]
cmp r15, r13
jae 0x1400548bb
mov r9, rbp
mov r8, rbx
mov rbp, rdx
mov rcx, qword [r15]
xor edx, edx
xor eax, eax
cmp rcx, qword [rbp]
setae dl
setb cl
mov rbx, rbp
cmovb rbx, r15
shl rdx, 4
add rdx, rbp
movups xmm0, xmmword [rbx]
movups xmmword [rsi], xmm0
add rsi, 0x10
cmp rdx, r14
jae 0x1400548a8
mov al, cl
shl rax, 4
add r15, rax
cmp r15, r13
jb 0x140054869
mov rbx, r8
mov rbp, r9
jmp 0x1400548bb
mov rsi, r15
mov rbx, qword [rsp + 0x110]
sub r14, rdx
mov rcx, rsi
mov r8, r14
call sub.VCRUNTIME140.dll_memcpy
mov rdx, qword [rsp + 0xf0]
mov r8, rdx
sub r8, rbx
mov r13, qword [rsp + 0x170]
mov r15, qword [rsp + 0x118]
jbe 0x140055afe
mov rcx, qword [rsp + 0x198]
add rcx, r13
mov rdx, qword [rsp + 0x180]
lea rax, [rdx + r13]
add rdx, r13
add rdx, 8
mov rbx, qword [rsp + 0x188]
add rbx, rbp
mov rbp, qword [rsp + 0x190]
mov qword [rax], rbp
mov qword [rdx], rbx
lea rdx, [rcx + 0x10]
shl r8, 4
add r8, 0xffffffffffffffe0
call sub.VCRUNTIME140.dll_memmove
mov rax, qword [rsp + 0x1a0]
mov qword [rsp + 0x50], rax
mov rdx, rax
cmp rax, 1
mov r14, qword [rsp + 0x38]
mov r11, qword [rsp + 0x108]
ja 0x140054681
mov edx, 1
jmp 0x14005496f
mov edx, 2
jmp 0x14005496f
mov edx, 3
test r15, r15
jne 0x14005441c
mov rdx, qword [rsp + 0x40]
test rdx, rdx
je 0x140054994
shl rdx, 4
mov r8d, 8
mov rcx, r13
call fcn.140018180
mov rdx, qword [rsp + 0x138]
test rdx, rdx
je 0x1400549b4
mov r8d, 8
mov rcx, qword [rsp + 0x100]
call fcn.140018180
lea r14, [r12 + rdi]
mov rax, qword [rsp + 0x128]
mov qword [rsp + 0x38], rax
mov r13, qword [rsp + 0x130]
add rdi, r13
mov rcx, qword [rsp + 0x288]
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0xf0], rax
mov rdx, rdi
call fcn.140049300
xor r15d, r15d
xor r8d, r8d
mov rdi, r15
shl rdi, 4
add rdi, qword [rsp + 0x38]
cmp r15, r13
mov eax, 0
cmovae rdi, rax
mov rax, r12
cmp r15, r13
jae 0x140054a1b
cmp qword [rdi], r8
je 0x140054aab
mov rcx, r14
cmp rax, r14
je 0x140054a76
mov cl, byte [rax]
movzx ebp, cl
test bpl, bpl
jns 0x140054a83
mov edx, ebp
and edx, 0x1f
movzx esi, byte [rax + 1]
and esi, 0x3f
cmp bpl, 0xdf
jbe 0x140054a8e
movzx ebx, byte [rax + 2]
shl esi, 6
and ebx, 0x3f
or ebx, esi
cmp cl, 0xf0
jb 0x140054a9b
movzx ebp, byte [rax + 3]
add rax, 4
and edx, 7
shl edx, 0x12
shl ebx, 6
and ebp, 0x3f
or ebp, ebx
or ebp, edx
mov r12, rax
mov rcx, rax
cmp ebp, 0x110000
jne 0x140054aa6
mov rax, rcx
cmp r15, r13
jb 0x140054a0d
jmp 0x140054bcd
inc rax
inc r8
mov r12, rax
jmp 0x140054ab9
add rax, 2
shl edx, 6
or edx, esi
mov ebp, edx
jmp 0x140054aa6
add rax, 3
shl edx, 0xc
or ebx, edx
mov ebp, ebx
mov r12, rax
jmp 0x140054ab1
inc r15
mov ebp, dword [rdi + 8]
inc r8
cmp ebp, 0x7f
ja 0x140054af0
mov rsi, qword [rsp + 0x288]
mov rdx, qword [rsi + 0x10]
cmp rdx, qword [rsi]
jne 0x140054adc
mov rcx, rsi
mov rdi, r8
call fcn.1400423a0
mov r8, rdi
mov rdx, qword [rsi + 0x10]
mov rax, qword [rsi + 8]
mov byte [rax + rdx], bpl
inc rdx
mov qword [rsi + 0x10], rdx
jmp 0x1400549f2
mov dword [rsp + 0x40], 0
cmp ebp, 0x800
mov qword [rsp + 0x108], r8
mov eax, ebp
jae 0x140054b27
shr eax, 6
or al, 0xc0
mov byte [rsp + 0x40], al
and bpl, 0x3f
or bpl, 0x80
mov byte [rsp + 0x41], bpl
mov ebx, 2
jmp 0x140054b8e
cmp ebp, 0x10000
jae 0x140054b59
shr eax, 0xc
or al, 0xe0
mov byte [rsp + 0x40], al
mov eax, ebp
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x41], al
and bpl, 0x3f
or bpl, 0x80
mov byte [rsp + 0x42], bpl
mov ebx, 3
jmp 0x140054b8e
shr eax, 0x12
or al, 0xf0
mov byte [rsp + 0x40], al
mov eax, ebp
shr eax, 0xc
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x41], al
mov eax, ebp
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x42], al
and bpl, 0x3f
or bpl, 0x80
mov byte [rsp + 0x43], bpl
mov ebx, 4
mov rdi, qword [rsp + 0x288]
mov rcx, rdi
mov rdx, rbx
call fcn.140049300
mov rsi, qword [rdi + 0x10]
mov rcx, qword [rdi + 8]
add rcx, rsi
lea rdx, [rsp + 0x40]
mov r8, rbx
call sub.VCRUNTIME140.dll_memcpy
add rsi, rbx
mov qword [rdi + 0x10], rsi
mov r8, qword [rsp + 0x108]
jmp 0x1400549f2
mov rax, qword [rsp + 0x288]
mov r14, qword [rax + 8]
mov r13, qword [rax + 0x10]
mov r15, qword [rsp + 0xf0]
test r15, r15
mov rbp, qword [rsp + 0x1a8]
je 0x140054c09
cmp r13, r15
jbe 0x140054c03
cmp byte [r14 + r15], 0xbf
jg 0x140054c09
jmp 0x140055ba5
jne 0x140055ba5
lea r12, [r14 + r15]
test bpl, 1
jne 0x140054c1e
cmp r13, r15
jne 0x140055373
xor ebp, ebp
mov al, byte [rsp + 0x2a]
or al, byte [rsp + 0x28]
or al, byte [rsp + 0x2b]
or al, byte [rsp + 0x2c]
or al, byte [rsp + 0x2d]
or al, byte [rsp + 0x2e]
or al, byte [rsp + 0x2f]
or al, byte [rsp + 0x30]
or al, byte [rsp + 0x31]
or al, byte [rsp + 0x32]
jne 0x14005549b
cmp byte [rsp + 0x29], 0
jne 0x14005549b
cmp byte [rsp + 0x33], 0
jne 0x14005549b
add r14, r13
sub r13, r15
xor ecx, ecx
mov rsi, r12
xor eax, eax
mov r15, rbp
mov r8d, ecx
mov ebp, eax
xor eax, eax
cmp rsi, r14
setne cl
je 0x14005525a
test rsi, rsi
je 0x14005525a
mov al, cl
add rax, rsi
mov bl, byte [rsi]
movzx edi, bl
test dil, dil
jns 0x140054cfc
mov ecx, edi
and ecx, 0x1f
movzx esi, byte [rax]
and esi, 0x3f
cmp dil, 0xdf
jbe 0x140054ce5
movzx edx, byte [rax + 1]
shl esi, 6
and edx, 0x3f
or edx, esi
cmp bl, 0xf0
jb 0x140054cf1
movzx edi, byte [rax + 2]
and ecx, 7
shl ecx, 0x12
shl edx, 6
and edi, 0x3f
or edi, edx
or edi, ecx
cmp edi, 0x110000
je 0x14005525a
add rax, 3
jmp 0x140054cfc
inc rax
shl ecx, 6
or ecx, esi
mov edi, ecx
jmp 0x140054cfc
add rax, 2
shl ecx, 0xc
or edx, ecx
mov edi, edx
mov rsi, rax
xor eax, eax
cmp edi, 0x80
jb 0x140054c75
mov ecx, edi
mov ebx, r8d
call fcn.140056f50
mov r8d, ebx
cmp bpl, al
mov rbp, r15
jbe 0x140054d2a
test al, al
jne 0x140055496
lea ecx, [rdi - 0x340]
cmp ecx, 4
ja 0x140054d3e
cmp ecx, 2
jne 0x140055496
mov cl, 2
cmp edi, 0xd56
jg 0x140054da1
cmp edi, 0x9de
jg 0x140054dfc
cmp edi, 0x93b
jg 0x140054f06
lea edx, [rdi - 0x30f]
cmp edx, 0x36
ja 0x140054d7f
movabs rbx, 0x48020000001005
bt rbx, rdx
jb 0x140054c6f
lea edx, [rdi - 0x374]
cmp edx, 0x13
ja 0x140055004
mov ebx, 0x80401
bt ebx, edx
jb 0x140055496
jmp 0x140055004
cmp edi, 0x11126
jg 0x140054e5d
cmp edi, 0xf92
jg 0x140054e9f
lea edx, [rdi - 0xdca]
cmp edx, 0x15
ja 0x140054dd2
mov ebx, 0x200021
bt ebx, edx
jb 0x140054c6f
cmp edi, 0xd57
je 0x140054c6f
lea edx, [rdi - 0xf43]
cmp edx, 0x3e
ja 0x140055004
movabs rbx, 0x4021004002108401
jmp 0x140054fb7
cmp edi, 0xbd6
jg 0x140054ee1
cmp edi, 0xbbd
jg 0x140054fc3
lea edx, [rdi - 0xb3e]
cmp edx, 0x19
ja 0x140054e2d
mov ebx, 0x3000001
bt ebx, edx
jb 0x140054c6f
lea edx, [rdi - 0xa33]
cmp edx, 0x2b
ja 0x140054e4c
movabs rbx, 0x80000000009
bt rbx, rdx
jb 0x140055496
cmp edi, 0x9df
jne 0x140055004
jmp 0x140055496
cmp edi, 0x114af
jle 0x140054f2f
lea edx, [rdi - 0x114b0]
cmp edx, 0xd
ja 0x140054e82
mov ebx, 0x2401
bt ebx, edx
jb 0x140054c6f
cmp edi, 0x115af
je 0x140054c6f
cmp edi, 0x11930
je 0x140054c6f
jmp 0x140055004
cmp edi, 0x1f70
jg 0x140054f75
cmp edi, 0x102e
je 0x140054c6f
cmp edi, 0x1b35
je 0x140054c6f
lea edx, [rdi - 0xf93]
cmp edx, 0x26
ja 0x140055004
movabs rbx, 0x4002108401
jmp 0x140054fb7
cmp edi, 0xcc1
jg 0x140054f58
cmp edi, 0xbd7
je 0x140054c6f
cmp edi, 0xc56
je 0x140054c6f
jmp 0x140055004
cmp edi, 0x93c
je 0x140054c6f
cmp edi, 0x9be
je 0x140054c6f
cmp edi, 0x9d7
je 0x140054c6f
jmp 0x140055004
cmp edi, 0x11127
je 0x140054c6f
cmp edi, 0x1133e
je 0x140054c6f
cmp edi, 0x11357
je 0x140054c6f
jmp 0x140055004
cmp edi, 0xcc2
je 0x140054c6f
cmp edi, 0xd3e
je 0x140054c6f
jmp 0x140055004
cmp edi, 0xfa0f
jle 0x140054fd1
cmp edi, 0x110ba
je 0x140054c6f
lea edx, [rdi - 0xfa10]
cmp edx, 0x12
ja 0x140054fa2
mov ebx, 0x50005
bt ebx, edx
jb 0x140055496
lea edx, [rdi - 0xfb1d]
cmp edx, 0x21
ja 0x140055004
movabs rbx, 0x200000005
bt rbx, rdx
jb 0x140055496
jmp 0x140055004
cmp edi, 0xbbe
je 0x140054c6f
jmp 0x140055004
cmp edi, 0x2125
jle 0x140055211
lea edx, [rdi - 0x2329]
cmp edx, 2
jb 0x140055496
cmp edi, 0x2126
je 0x140055496
cmp edi, 0x2adc
je 0x140055496
lea edx, [rdi - 0x2f800]
cmp edx, 0x21e
jb 0x140055496
lea edx, [rdi - 0x1d1bb]
cmp edx, 6
jb 0x140055496
lea edx, [rdi - 0x1d15e]
cmp edx, 7
jb 0x140055496
lea edx, [rdi - 0xfb46]
cmp edx, 9
jb 0x140055496
lea edx, [rdi - 0xfb43]
cmp edx, 2
jb 0x140055496
mov edx, edi
and edx, 0xfffffffe
cmp edx, 0xfb40
je 0x140055496
lea ebp, [rdi - 0xfb38]
cmp ebp, 5
mov rbp, r15
jb 0x140055496
lea ebp, [rdi - 0xfb2a]
cmp ebp, 0xd
mov rbp, r15
jb 0x140055496
lea ebp, [rdi - 0xfa70]
cmp ebp, 0x6a
mov rbp, r15
jb 0x140055496
lea ebp, [rdi - 0xfa2a]
cmp ebp, 0x44
mov rbp, r15
jb 0x140055496
lea ebp, [rdi - 0xfa25]
cmp ebp, 2
mov rbp, r15
jb 0x140055496
lea ebp, [rdi - 0xfa15]
cmp ebp, 0xa
mov rbp, r15
jb 0x140055496
lea ebp, [rdi - 0xf900]
cmp ebp, 0x10e
mov rbp, r15
jb 0x140055496
cmp edx, 0x212a
je 0x140055496
cmp edx, 0x2000
je 0x140055496
cmp edx, 0x1fee
je 0x140055496
lea ebp, [rdi - 0xf75]
cmp ebp, 2
mov rbp, r15
jb 0x140055496
cmp edx, 0xb5c
je 0x140055496
lea ebp, [rdi - 0xa59]
cmp ebp, 3
mov rbp, r15
jb 0x140055496
mov ebp, edi
and ebp, 0xfffffff8
cmp ebp, 0x958
mov rbp, r15
je 0x140055496
cmp edx, 0x9dc
je 0x140055496
lea ebp, [rdi - 0x11a8]
cmp ebp, 0x1b
mov rbp, r15
jb 0x140054c6f
lea ebp, [rdi - 0x1161]
cmp ebp, 0x15
mov rbp, r15
jb 0x140054c6f
lea ebp, [rdi - 0xcd5]
cmp ebp, 2
mov rbp, r15
jb 0x140054c6f
lea ebp, [rdi - 0x653]
cmp ebp, 3
mov rbp, r15
jb 0x140054c6f
cmp edx, 0x330
je 0x140054c6f
lea edx, [rdi - 0x32d]
cmp edx, 2
jb 0x140054c6f
lea edx, [rdi - 0x323]
cmp edx, 6
jb 0x140054c6f
lea edx, [rdi - 0x313]
cmp edx, 2
jb 0x140054c6f
lea edx, [rdi - 0x300]
cmp edx, 5
jb 0x140054c6f
lea edx, [rdi - 0x306]
cmp edx, 7
jb 0x140054c6f
add edi, 0xffffcf67
cmp edi, 2
movzx ecx, r8b
mov edx, 2
cmovb ecx, edx
jmp 0x140054c6f
lea edx, [rdi - 0x1fbe]
cmp edx, 0x3f
ja 0x140055230
movabs rbx, 0xa800202020202801
bt rbx, rdx
jb 0x140055496
lea edx, [rdi - 0x1f71]
cmp edx, 0xc
ja 0x140055249
mov ebx, 0x1555
bt ebx, edx
jb 0x140055496
cmp edi, 0x1fbb
je 0x140055496
jmp 0x140055004
test r8b, r8b
mov rbp, r15
je 0x1400554ad
movzx eax, r8b
cmp eax, 1
je 0x140055496
xor ecx, ecx
mov qword [rsp + 0x40], rcx
mov dword [rsp + 0x48], 0
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x70], r14
mov qword [rsp + 0x78], r12
lea rax, [rsp + 0x80]
movups xmmword [rax + 0xc], xmm6
movups xmmword [rax], xmm6
mov byte [rsp + 0xc0], cl
mov dword [rsp + 0xc8], 0x110000
mov byte [rsp + 0xcc], cl
mov rdi, r12
xor eax, eax
cmp rdi, r14
setne cl
je 0x14005543a
test rdi, rdi
je 0x14005543a
mov al, cl
add rax, rdi
mov bl, byte [rdi]
movzx esi, bl
test sil, sil
js 0x1400552e7
mov rdi, rax
jmp 0x14005534f
mov ecx, esi
and ecx, 0x1f
movzx ebp, byte [rax]
and ebp, 0x3f
cmp sil, 0xdf
jbe 0x140055332
movzx edx, byte [rax + 1]
shl ebp, 6
and edx, 0x3f
or edx, ebp
cmp bl, 0xf0
jb 0x14005533e
movzx esi, byte [rax + 2]
and ecx, 7
shl ecx, 0x12
shl edx, 6
and esi, 0x3f
or esi, edx
or esi, ecx
cmp esi, 0x110000
mov rbp, r15
je 0x14005543a
add rax, 3
jmp 0x1400552e2
inc rax
shl ecx, 6
or ecx, ebp
mov esi, ecx
jmp 0x140055349
add rax, 2
shl ecx, 0xc
or edx, ecx
mov esi, edx
mov rdi, rax
mov rbp, r15
lea rcx, [rsp + 0x40]
call fcn.140051500
mov bl, 1
cmp eax, 0x110000
je 0x14005544e
cmp eax, esi
je 0x1400552bc
jmp 0x14005544e
lea rsi, [r14 + r13]
lea rax, [r12 + 1]
mov rdi, r12
mov bl, byte [rdi]
movzx ecx, bl
test cl, cl
js 0x14005538d
mov rdi, rax
jmp 0x1400553f1
mov edx, ecx
and edx, 0x1f
movzx edi, byte [rax]
and edi, 0x3f
cmp cl, 0xdf
jbe 0x1400553d4
movzx ebp, byte [rax + 1]
shl edi, 6
and ebp, 0x3f
or ebp, edi
cmp bl, 0xf0
jb 0x1400553e3
movzx ecx, byte [rax + 2]
and edx, 7
shl edx, 0x12
shl ebp, 6
and ecx, 0x3f
or ecx, ebp
or ecx, edx
cmp ecx, 0x110000
je 0x140054c1c
add rax, 3
jmp 0x140055388
inc rax
shl edx, 6
or edx, edi
mov rdi, rax
mov ecx, edx
jmp 0x1400553f1
add rax, 2
shl edx, 0xc
or ebp, edx
mov rdi, rax
mov ecx, ebp
lea eax, [rcx - 0x21]
cmp eax, 0x5d
ja 0x14005541c
xor ebp, ebp
xor eax, eax
cmp rdi, rsi
setne cl
je 0x140054c1e
mov al, cl
add rax, rdi
test rdi, rdi
jne 0x14005537f
jmp 0x140054c1e
call fcn.140064550
cmp al, 0x11
ja 0x1400553f9
movzx eax, al
mov ecx, 0x20003
bt ecx, eax
jae 0x1400553f9
mov bpl, 1
jmp 0x140054c1e
lea rcx, [rsp + 0x40]
call fcn.140051500
cmp eax, 0x110000
setne bl
neg bl
mov rdx, qword [rsp + 0x90]
cmp rdx, 5
jb 0x140055473
mov rcx, qword [rsp + 0xa0]
shl rdx, 3
mov r8d, 4
call fcn.140018180
mov rdx, qword [rsp + 0x40]
cmp rdx, 5
jb 0x140055492
mov rcx, qword [rsp + 0x50]
shl rdx, 2
mov r8d, 4
call fcn.140018180
test bl, bl
je 0x1400554ad
mov byte [rsp + 0x2d], 1
mov r14, qword [rsp + 0x288]
lea r13, [rsp + 0x28]
jmp 0x140053f37
mov rcx, r12
mov rdx, r13
mov r8, qword [rsp + 0x178]
lea r13, [rsp + 0x28]
mov r9, r13
call fcn.140052ca0
jmp 0x140054293
lea r8, [0x14006e490]
call fcn.140059460
mov rdx, qword [r14 + 0x10]
mov r8, qword [rsp + 0x140]
jmp 0x1400554fc
mov eax, 8
mov qword [rsp + 0x38], rax
mov r8, qword [rsp + 0x140]
mov rdx, r8
mov rcx, qword [r14 + 8]
test r8, r8
je 0x140055527
cmp rdx, r8
jbe 0x140055525
cmp byte [rcx + r8], 0xbf
jg 0x140055527
lea rax, str._builds_worker_checkouts_gecko_third_party_rust_idna_src_uts46.rs
mov qword [rsp + 0x20], rax
mov r9, rdx
call fcn.140059880
jne 0x140055511
mov r14, rbp
add rcx, r8
sub rdx, r8
lea rax, [rsp + 0x40]
mov qword [rax], rcx
mov qword [rax + 8], rdx
xor ecx, ecx
mov qword [rax + 0x10], rcx
mov qword [rax + 0x18], rdx
mov qword [rax + 0x20], 1
movabs rbp, 0x2e0000002e
mov qword [rax + 0x28], rbp
mov qword [rax + 0x30], rcx
mov qword [rax + 0x38], rdx
mov word [rax + 0x40], 1
mov rcx, rax
call fcn.140051de0
test rax, rax
je 0x140055a5b
mov r15, rax
mov rbp, rdx
lea rdi, [rsp + 0x40]
test r14b, 1
je 0x1400555ec
xor esi, esi
test rbp, rbp
setne al
je 0x1400555ec
mov sil, al
add rsi, r15
mov bl, byte [r15]
movzx ecx, bl
test cl, cl
jns 0x14005561e
mov eax, ecx
and eax, 0x1f
movzx edi, byte [rsi]
inc rsi
and edi, 0x3f
cmp cl, 0xdf
jbe 0x140055604
movzx edx, byte [rsi]
inc rsi
shl edi, 6
and edx, 0x3f
or edx, edi
cmp bl, 0xf0
jb 0x14005560d
movzx ecx, byte [rsi]
and eax, 7
shl eax, 0x12
shl edx, 6
and ecx, 0x3f
or ecx, edx
or ecx, eax
cmp ecx, 0x110000
lea rdi, [rsp + 0x40]
jne 0x14005561b
mov rcx, rdi
call fcn.140051de0
mov r15, rax
mov rbp, rdx
test rax, rax
jne 0x140055586
jmp 0x140055a5b
shl eax, 6
or eax, edi
mov ecx, eax
jmp 0x140055614
shl eax, 0xc
or edx, eax
mov ecx, edx
lea rdi, [rsp + 0x40]
jmp 0x14005561e
inc rsi
add rbp, r15
call fcn.140064550
test al, al
je 0x140055712
movzx eax, al
cmp eax, 0x11
je 0x140055712
cmp eax, 9
jne 0x140055a56
cmp rsi, rbp
je 0x140055821
test rsi, rsi
je 0x140055821
lea rax, [rsi + 1]
mov bl, byte [rsi]
movzx ecx, bl
test cl, cl
jns 0x1400556ac
mov edx, ecx
and edx, 0x1f
movzx esi, byte [rax]
and esi, 0x3f
cmp cl, 0xdf
jbe 0x1400556ee
movzx edi, byte [rax + 1]
shl esi, 6
and edi, 0x3f
or edi, esi
cmp bl, 0xf0
jb 0x1400556fd
movzx ecx, byte [rax + 2]
and edx, 7
shl edx, 0x12
shl edi, 6
and ecx, 0x3f
or ecx, edi
or ecx, edx
cmp ecx, 0x110000
lea rdi, [rsp + 0x40]
je 0x140055821
add rax, 3
mov rsi, rax
call fcn.140064550
cmp al, 0xe
ja 0x140055a56
movzx eax, al
mov ecx, 0x62f8
bt ecx, eax
jae 0x140055a56
xor eax, eax
cmp rsi, rbp
setne cl
je 0x140055821
mov al, cl
add rax, rsi
test rsi, rsi
jne 0x140055659
jmp 0x140055821
inc rax
shl edx, 6
or edx, esi
mov rsi, rax
mov ecx, edx
jmp 0x1400556af
add rax, 2
shl edx, 0xc
or edi, edx
mov rsi, rax
mov ecx, edi
lea rdi, [rsp + 0x40]
jmp 0x1400556af
xor r12d, r12d
cmp rsi, rbp
je 0x14005583d
mov dword [rsp + 0xf8], 0
test rsi, rsi
je 0x140055848
lea rax, [rsi + 1]
xor r13d, r13d
mov dword [rsp + 0xf8], 0
mov bl, byte [rsi]
movzx ecx, bl
test cl, cl
jns 0x1400557fd
mov edx, ecx
and edx, 0x1f
movzx esi, byte [rax]
and esi, 0x3f
cmp cl, 0xdf
jbe 0x140055802
movzx edi, byte [rax + 1]
shl esi, 6
and edi, 0x3f
or edi, esi
cmp bl, 0xf0
jb 0x140055811
movzx ecx, byte [rax + 2]
and edx, 7
shl edx, 0x12
shl edi, 6
and ecx, 0x3f
or ecx, edi
or ecx, edx
cmp ecx, 0x110000
je 0x140055833
add rax, 3
mov rsi, rax
lea rdi, [rsp + 0x40]
call fcn.140064550
cmp al, 0x11
ja 0x140055a56
movzx r12d, al
mov eax, 0x260d9
bt eax, r12d
jae 0x1400557e2
mov r12d, r13d
xor eax, eax
cmp rsi, rbp
setne cl
je 0x140055848
mov al, cl
add rax, rsi
mov r13d, r12d
test rsi, rsi
jne 0x140055744
jmp 0x140055848
cmp r12d, 1
je 0x1400557c5
cmp r12d, 5
jne 0x140055a56
mov al, 1
mov dword [rsp + 0xf8], eax
jmp 0x1400557c2
mov rsi, rax
jmp 0x1400557a6
inc rax
shl edx, 6
or edx, esi
mov rsi, rax
mov ecx, edx
jmp 0x1400557a6
add rax, 2
shl edx, 0xc
or edi, edx
mov rsi, rax
mov ecx, edi
jmp 0x1400557a1
mov al, byte [rbp - 1]
dec rbp
test al, al
js 0x140055889
movzx esi, al
jmp 0x1400558f1
mov r12d, r13d
lea rdi, [rsp + 0x40]
jmp 0x140055848
mov dword [rsp + 0xf8], 0
mov al, byte [rbp - 1]
dec rbp
test al, al
js 0x14005585a
movzx esi, al
jmp 0x14005599e
movzx ecx, byte [rbp - 1]
cmp cl, 0xc0
jge 0x140055881
movzx edx, byte [rbp - 2]
cmp dl, 0xc0
jge 0x1400558b0
movzx ebx, byte [rbp - 3]
add rbp, 0xfffffffffffffffd
and ebx, 7
shl ebx, 6
and edx, 0x3f
or edx, ebx
jmp 0x1400558b7
dec rbp
and ecx, 0x1f
jmp 0x1400558bf
movzx ecx, byte [rbp - 1]
cmp cl, 0xc0
jge 0x1400558ce
movzx edx, byte [rbp - 2]
cmp dl, 0xc0
jge 0x1400558d6
movzx ebx, byte [rbp - 3]
add rbp, 0xfffffffffffffffd
and ebx, 7
shl ebx, 6
and edx, 0x3f
or edx, ebx
jmp 0x1400558dd
add rbp, 0xfffffffffffffffe
and edx, 0xf
shl edx, 6
and ecx, 0x3f
or ecx, edx
shl ecx, 6
and al, 0x3f
movzx esi, al
or esi, ecx
jmp 0x140055a17
dec rbp
and ecx, 0x1f
jmp 0x1400558e5
add rbp, 0xfffffffffffffffe
and edx, 0xf
shl edx, 6
and ecx, 0x3f
or ecx, edx
shl ecx, 6
and al, 0x3f
movzx esi, al
or esi, ecx
jmp 0x14005596a
mov ecx, esi
call fcn.140064550
cmp al, 0xd
jne 0x14005597b
lea rdx, [rbp - 1]
cmp rbp, r15
cmovne rbp, rdx
je 0x1400555ec
mov al, byte [rdx]
test al, al
js 0x140055918
movzx esi, al
jmp 0x140055967
movzx ecx, byte [rbp - 1]
cmp cl, 0xc0
jge 0x140055940
movzx esi, byte [rbp - 2]
cmp sil, 0xc0
jge 0x14005594b
movzx edx, byte [rbp - 3]
add rbp, 0xfffffffffffffffd
and edx, 7
shl edx, 6
and esi, 0x3f
or esi, edx
jmp 0x140055952
dec rbp
and ecx, 0x1f
mov rdx, rbp
jmp 0x14005595d
add rbp, 0xfffffffffffffffe
and esi, 0xf
mov rdx, rbp
shl esi, 6
and ecx, 0x3f
or ecx, esi
shl ecx, 6
and al, 0x3f
movzx esi, al
or esi, ecx
mov rbp, rdx
cmp esi, 0x110000
jne 0x1400558f1
jmp 0x1400555ec
mov ecx, esi
call fcn.140064550
cmp al, 9
je 0x1400555ec
mov ecx, esi
call fcn.140064550
cmp al, 5
je 0x1400555ec
jmp 0x140055a56
mov ecx, esi
call fcn.140064550
cmp al, 0xd
jne 0x140055a25
lea rdx, [rbp - 1]
cmp rbp, r15
cmovne rbp, rdx
je 0x140055a56
mov al, byte [rdx]
test al, al
js 0x1400559c5
movzx esi, al
jmp 0x140055a14
movzx ecx, byte [rbp - 1]
cmp cl, 0xc0
jge 0x1400559ed
movzx esi, byte [rbp - 2]
cmp sil, 0xc0
jge 0x1400559f8
movzx edx, byte [rbp - 3]
add rbp, 0xfffffffffffffffd
and edx, 7
shl edx, 6
and esi, 0x3f
or esi, edx
jmp 0x1400559ff
dec rbp
and ecx, 0x1f
mov rdx, rbp
jmp 0x140055a0a
add rbp, 0xfffffffffffffffe
and esi, 0xf
mov rdx, rbp
shl esi, 6
and ecx, 0x3f
or ecx, esi
shl ecx, 6
and al, 0x3f
movzx esi, al
or esi, ecx
mov rbp, rdx
cmp esi, 0x110000
jne 0x14005599e
jmp 0x140055a56
mov ecx, esi
call fcn.140064550
cmp al, 0x11
ja 0x140055a56
movzx eax, al
mov ecx, 0x20023
bt ecx, eax
jae 0x140055a56
test r12b, 1
je 0x1400555ec
mov eax, dword [rsp + 0xf8]
and al, 1
je 0x1400555ec
mov byte [rsp + 0x2a], 1
mov eax, dword [rsp + 0x30]
mov rsi, qword [rsp + 0x1b0]
mov dword [rsi + 8], eax
mov rax, qword [rsp + 0x28]
mov qword [rsi], rax
mov rdx, qword [rsp + 0x120]
test rdx, rdx
je 0x140055a93
shl rdx, 4
mov r8d, 8
mov rcx, qword [rsp + 0x38]
call fcn.140018180
mov rax, rsi
jmp 0x140052fb5
lea r8, str._builds_worker_checkouts_gecko_third_party_rust_idna_src_uts46.rs
mov ecx, 4
mov edx, 4
call fcn.140059460
lea rax, str._builds_worker_checkouts_gecko_third_party_rust_idna_src_uts46.rs
mov qword [rsp + 0x20], rax
lea rcx, [0x14007a1c4]
mov edx, 0x321c
call fcn.140059880
lea rcx, str.attempt_to_divide_by_zero_rustc_fc594f15669680fa70d255faec3ca3fb507c3405librarycore_src_slicemod.rs
lea r8, str._builds_worker_checkouts_gecko_third_party_rust_idna_src_punycode.rs
mov edx, 0x19
call fcn.140059410
lea r8, [0x14006e478]
call fcn.140059800
lea r8, str._rustc_fc594f15669680fa70d255faec3ca3fb507c3405library_alloc_src_slice.rs
call fcn.140059460
lea r8, str._rustc_fc594f15669680fa70d255faec3ca3fb507c3405library_alloc_src_slice.rs
mov rcx, rbx
call fcn.140059460
lea r8, [0x14006e548]
call fcn.140059460
lea rcx, str.attempt_to_divide_by_zero_rustc_fc594f15669680fa70d255faec3ca3fb507c3405librarycore_src_slicemod.rs
lea r8, str._builds_worker_checkouts_gecko_third_party_rust_idna_src_punycode.rs
jmp 0x140055adc
lea rax, str._builds_worker_checkouts_gecko_third_party_rust_idna_src_uts46.rs
mov qword [rsp + 0x20], rax
mov r8d, 4
mov rcx, r12
mov rdx, r15
mov r9, r15
call fcn.140059880
lea r8, str._rustc_fc594f15669680fa70d255faec3ca3fb507c3405library_alloc_src_slice.rs
mov rcx, rax
mov rdx, rbx
call fcn.140059820
lea r8, str._rustc_fc594f15669680fa70d255faec3ca3fb507c3405library_alloc_src_slice.rs
mov rcx, rbx
jmp 0x140055b83
lea r8, str._rustc_fc594f15669680fa70d255faec3ca3fb507c3405library_alloc_src_slice.rs
mov rcx, r15
mov rdx, r9
call fcn.140059820
lea r8, str._rustc_fc594f15669680fa70d255faec3ca3fb507c3405library_alloc_src_slice.rs
mov rcx, r9
mov rdx, r11
call fcn.140059810
lea rax, str._builds_worker_checkouts_gecko_third_party_rust_idna_src_punycode.rs
mov qword [rsp + 0x20], rax
mov rcx, r12
mov rdx, r14
mov r9, r14
call fcn.140059880
lea rax, str._builds_worker_checkouts_gecko_third_party_rust_idna_src_uts46.rs
mov qword [rsp + 0x20], rax
mov rcx, r14
mov rdx, r13
mov r8, r15
mov r9, r13
call fcn.140059880
lea rax, str._builds_worker_checkouts_gecko_third_party_rust_idna_src_punycode.rs
mov qword [rsp + 0x20], rax
mov rcx, r12
mov rdx, r14
xor r8d, r8d
mov r9, rdi
call fcn.140059880
lea r8, str._rustc_fc594f15669680fa70d255faec3ca3fb507c3405library_alloc_src_slice.rs
jmp 0x140055b6e
lea r8, str._rustc_fc594f15669680fa70d255faec3ca3fb507c3405library_alloc_src_slice.rs
jmp 0x140055b80
call fcn.140010d90
mov rcx, qword [rsp + 0x138]
mov rdx, rsi
call fcn.140059960
int3