Function at 0x140180fb0
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, 0xf8
mov rbx, r9
mov r14, r8
mov rdi, rdx
mov r15, rcx
mov rbp, qword [rsp + 0x160]
mov eax, 0x2600
mov r13, r8
jmp 0x140181016
inc r13
cmp ecx, 0xd
ja 0x1401810c0
mov esi, 0x110000
bt eax, ecx
jae 0x1401810c0
cmp esi, 0x110000
jne 0x1401810ce
mov esi, 0x110000
cmp r13, rbx
je 0x140181399
movzx ecx, byte [r13]
test cl, cl
jns 0x140180ff0
mov edx, ecx
and edx, 0x1f
movzx r9d, byte [r13 + 1]
and r9d, 0x3f
cmp cl, 0xdf
jbe 0x140181087
movzx r8d, byte [r13 + 2]
shl r9d, 6
and r8d, 0x3f
or r8d, r9d
cmp cl, 0xf0
jb 0x14018109e
movzx ecx, byte [r13 + 3]
and edx, 7
shl edx, 0x12
shl r8d, 6
and ecx, 0x3f
or ecx, r8d
or ecx, edx
cmp ecx, 0x110000
je 0x140181399
add r13, 4
cmp ecx, 0xd
jbe 0x140180ffc
jmp 0x1401810c0
add r13, 2
shl edx, 6
or edx, r9d
mov ecx, edx
cmp ecx, 0xd
jbe 0x140180ffc
jmp 0x1401810c0
add r13, 3
shl edx, 0xc
or r8d, edx
mov ecx, r8d
cmp ecx, 0xd
jbe 0x140180ffc
nop word cs:[rax + rax]
mov esi, ecx
cmp esi, 0x110000
je 0x140181016
cmp esi, 0x2f
je 0x1401810dc
cmp esi, 0x5c
jne 0x140181399
mov rcx, qword [rdi + 0x30]
test rcx, rcx
je 0x1401810f3
cmp esi, 0x5c
jne 0x1401810f3
mov rax, qword [rdi + 0x38]
xor edx, edx
call qword [rax + 0x28]
mov eax, 0x2600
mov r12, r13
mov qword [rsp + 0xc0], r15
jmp 0x140181136
inc r12
cmp ecx, 0xd
ja 0x1401811e0
mov edx, 0x110000
bt eax, ecx
jae 0x1401811e0
cmp edx, 0x110000
jne 0x1401811ee
cmp r12, rbx
je 0x1401813f6
movzx ecx, byte [r12]
test cl, cl
jns 0x140181110
mov edx, ecx
and edx, 0x1f
movzx r9d, byte [r12 + 1]
and r9d, 0x3f
cmp cl, 0xdf
jbe 0x1401811a5
movzx r8d, byte [r12 + 2]
shl r9d, 6
and r8d, 0x3f
or r8d, r9d
cmp cl, 0xf0
jb 0x1401811bc
movzx ecx, byte [r12 + 3]
and edx, 7
shl edx, 0x12
shl r8d, 6
and ecx, 0x3f
or ecx, r8d
or ecx, edx
cmp ecx, 0x110000
je 0x1401813f6
add r12, 4
cmp ecx, 0xd
jbe 0x14018111c
jmp 0x1401811e0
add r12, 2
shl edx, 6
or edx, r9d
mov ecx, edx
cmp ecx, 0xd
jbe 0x14018111c
jmp 0x1401811e0
add r12, 3
shl edx, 0xc
or r8d, edx
mov ecx, r8d
cmp ecx, 0xd
jbe 0x14018111c
nop word cs:[rax + rax]
mov edx, ecx
cmp edx, 0x110000
je 0x140181136
cmp edx, 0x2f
je 0x1401811fc
cmp edx, 0x5c
jne 0x1401813f6
mov rcx, qword [rdi + 0x30]
test rcx, rcx
je 0x140181213
cmp edx, 0x5c
jne 0x140181213
mov rax, qword [rdi + 0x38]
xor edx, edx
call qword [rax + 0x28]
mov rax, qword [rdi]
mov rdx, qword [rdi + 0x10]
sub rax, rdx
cmp rax, 6
jbe 0x140182219
mov rax, qword [rdi + 8]
mov dword [rax + rdx + 3], 0x2f2f3a65
mov dword [rax + rdx], 0x656c6966
add rdx, 7
mov qword [rdi + 0x10], rdx
mov r14, rbx
sub r14, r12
je 0x140181601
xor esi, esi
mov eax, 0x2600
movabs rcx, 0x8000800800000000
xor r13d, r13d
xor r9d, r9d
mov rdx, r12
jmp 0x1401812a2
inc rdx
mov r8d, r10d
mov r10d, 1
cmp r8d, 0x3f
ja 0x14018132c
mov r11d, r8d
bt rax, r11
jae 0x140181322
mov sil, 1
add r9, r10
cmp rdx, rbx
je 0x14018150c
movzx r10d, byte [rdx]
test r10b, r10b
jns 0x140181270
mov r8d, r10d
and r8d, 0x1f
movzx ebp, byte [rdx + 1]
and ebp, 0x3f
cmp r10b, 0xdf
jbe 0x140181305
movzx r11d, byte [rdx + 2]
shl ebp, 6
and r11d, 0x3f
or r11d, ebp
cmp r10b, 0xf0
jb 0x14018137c
movzx r10d, byte [rdx + 3]
add rdx, 4
and r8d, 7
shl r8d, 0x12
shl r11d, 6
and r10d, 0x3f
or r10d, r11d
or r8d, r10d
mov r10d, 1
cmp r8d, 0x3f
jbe 0x140181286
jmp 0x14018132c
add rdx, 2
shl r8d, 6
or r8d, ebp
mov r10d, 1
cmp r8d, 0x3f
jbe 0x140181286
jmp 0x14018132c
bt rcx, r11
jb 0x14018150c
cmp r8d, 0x110000
je 0x14018150c
cmp r8d, 0x5c
je 0x14018150c
inc r13
cmp r8d, 0x80
jb 0x140181296
mov r10d, 2
cmp r8d, 0x800
jb 0x140181296
cmp r8d, 0x10000
mov r10d, 4
sbb r10, 0
jmp 0x140181296
add rdx, 3
shl r8d, 0xc
or r8d, r11d
mov r10d, 1
cmp r8d, 0x3f
jbe 0x140181286
jmp 0x14018132c
test rbp, rbp
je 0x1401816bd
cmp esi, 0x23
je 0x140181655
cmp esi, 0x3f
je 0x140181614
cmp esi, 0x110000
jne 0x1401816aa
cmp dword [rbp + 0x20], 0
je 0x140181ad7
mov ebx, dword [rbp + 0x24]
mov rdx, qword [rbp + 8]
test rbx, rbx
je 0x140182132
mov rax, qword [rbp + 0x10]
cmp rax, rbx
jbe 0x14018213a
cmp byte [rdx + rbx], 0xbf
jg 0x140182140
jmp 0x1401825c9
mov rax, qword [rdi]
mov rdx, qword [rdi + 0x10]
sub rax, rdx
cmp rax, 6
jbe 0x1401821eb
mov rax, qword [rdi + 8]
mov dword [rax + rdx + 3], 0x2f2f3a65
mov dword [rax + rdx], 0x656c6966
add rdx, 7
mov qword [rdi + 0x10], rdx
mov rcx, r13
mov rdx, rbx
call fcn.1401846f0
xor r15d, r15d
mov r12d, 7
test rbp, rbp
je 0x140181fac
test al, al
jne 0x140181fac
mov rcx, rbp
call fcn.14017c920
test rdx, rdx
je 0x140182542
mov rbp, rax
cmp byte [rax], 0x2f
jne 0x140182542
dec rdx
inc rbp
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x78], rdx
lea rax, [rsp + 0x80]
mov qword [rsp + 0x80], rbp
mov qword [rsp + 0x88], rdx
mov qword [rsp + 0x90], 0
mov qword [rsp + 0x98], rdx
movabs rcx, 0x2f0000002f
mov qword [rsp + 0xa0], rcx
mov byte [rsp + 0xa8], 1
mov word [rsp + 0xb0], 1
lea rcx, [rsp + 0xc8]
mov rdx, rax
call fcn.140053470
cmp qword [rsp + 0xc8], 0
je 0x1401818a7
mov rax, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0x70]
sub rax, rcx
add rbp, rcx
cmp rax, 2
je 0x1401818e3
jmp 0x140181948
test sil, 1
sete r11b
jne 0x140181785
mov r15, r12
test r13, r13
je 0x1401819c7
mov eax, 0x2600
mov r15, r12
jmp 0x14018153e
mov edx, ecx
cmp edx, 0x110000
jne 0x1401815f3
cmp r15, rbx
je 0x1401819c4
movzx ecx, byte [r15]
test cl, cl
js 0x140181560
inc r15
cmp ecx, 0xd
jbe 0x1401815c9
jmp 0x140181530
mov edx, ecx
and edx, 0x1f
movzx r10d, byte [r15 + 1]
and r10d, 0x3f
cmp cl, 0xdf
jbe 0x1401815b0
movzx r8d, byte [r15 + 2]
shl r10d, 6
and r8d, 0x3f
or r8d, r10d
cmp cl, 0xf0
jb 0x1401815dc
movzx ecx, byte [r15 + 3]
add r15, 4
and edx, 7
shl edx, 0x12
shl r8d, 6
and ecx, 0x3f
or ecx, r8d
or ecx, edx
cmp ecx, 0x110000
jne 0x1401815c0
jmp 0x1401819c7
add r15, 2
shl edx, 6
or edx, r10d
mov ecx, edx
nop dword [rax]
cmp ecx, 0xd
ja 0x140181530
mov edx, 0x110000
bt eax, ecx
jb 0x140181532
jmp 0x140181530
add r15, 3
shl edx, 0xc
or r8d, edx
mov ecx, r8d
cmp ecx, 0xd
jbe 0x1401815c9
jmp 0x140181530
dec r13
jne 0x14018153e
jmp 0x1401819c7
xor r14d, r14d
mov eax, 1
mov r13b, 1
mov r15, rbx
jmp 0x140181b59
cmp dword [rbp + 0x18], 0
je 0x140181aaa
lea rax, [rbp + 0x1c]
mov r9d, dword [rax]
mov rdx, qword [rbp + 8]
test r9, r9
je 0x140181ac8
mov r12, qword [rbp + 0x10]
cmp r12, r9
jbe 0x140181f27
cmp byte [rdx + r9], 0xbf
jle 0x14018259d
mov r13, r14
mov r12, r9
jmp 0x14018223b
mov rax, qword [rdi + 0x40]
mov qword [rsp + 0xb0], rax
movups xmm0, xmmword [rdi]
movups xmm1, xmmword [rdi + 0x10]
movups xmm2, xmmword [rdi + 0x20]
movups xmm3, xmmword [rdi + 0x30]
movaps xmmword [rsp + 0xa0], xmm3
movaps xmmword [rsp + 0x90], xmm2
movaps xmmword [rsp + 0x80], xmm1
movaps xmmword [rsp + 0x70], xmm0
mov qword [rsp + 0x20], rbx
lea rdx, [rsp + 0x70]
mov rcx, r15
mov r8, rbp
mov r9, r14
call fcn.140183510
jmp 0x1401822be
mov rcx, r14
mov rdx, rbx
call fcn.1401846f0
test al, al
je 0x1401819a1
mov rax, qword [rdi]
mov rdx, qword [rdi + 0x10]
sub rax, rdx
cmp rax, 7
jbe 0x140182202
mov rax, qword [rdi + 8]
movabs rcx, 0x2f2f2f3a656c6966
mov qword [rax + rdx], rcx
add rdx, 8
mov qword [rdi + 0x10], rdx
mov byte [rsp + 0x70], 0
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], r14
lea r8, [rsp + 0x70]
mov r9d, 7
mov rcx, rdi
xor edx, edx
call fcn.14017f990
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x70]
mov rdx, rdi
xor r8d, r8d
mov r9d, 4
call fcn.140183e70
mov eax, dword [rsp + 0x70]
cmp eax, 2
je 0x140182290
mov ecx, dword [rsp + 0x7c]
mov rdx, qword [rsp + 0x74]
mov r8, qword [rdi + 0x10]
mov qword [r15 + 0x10], r8
movups xmm0, xmmword [rdi]
movups xmmword [r15], xmm0
mov dword [r15 + 0x18], eax
mov qword [r15 + 0x1c], rdx
mov dword [r15 + 0x24], ecx
mov word [r15 + 0x28], 0
movaps xmm0, xmmword [0x1401da720]
movups xmmword [r15 + 0x2c], xmm0
mov dword [r15 + 0x3c], 7
mov byte [r15 + 0x40], 0
jmp 0x1401822be
mov byte [rsp + 0x68], r11b
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x78], 1
mov qword [rsp + 0x80], 0
mov r15, r12
test r13, r13
je 0x1401819f7
lea r14, [rsp + 0x70]
mov ebp, 0x2600
mov r15, r12
dec r13
jmp 0x1401817de
mov edx, eax
cmp edx, 0x110000
jne 0x140181891
cmp r15, rbx
je 0x1401819f4
movzx eax, byte [r15]
test al, al
js 0x140181800
inc r15
cmp eax, 0xd
jbe 0x140181869
jmp 0x1401817d0
mov ecx, eax
and ecx, 0x1f
movzx r8d, byte [r15 + 1]
and r8d, 0x3f
cmp al, 0xdf
jbe 0x14018184a
movzx edx, byte [r15 + 2]
shl r8d, 6
and edx, 0x3f
or edx, r8d
cmp al, 0xf0
jb 0x14018187c
movzx eax, byte [r15 + 3]
add r15, 4
and ecx, 7
shl ecx, 0x12
shl edx, 6
and eax, 0x3f
or eax, edx
or eax, ecx
cmp eax, 0x110000
jne 0x140181860
jmp 0x1401819f7
add r15, 2
shl ecx, 6
or ecx, r8d
mov eax, ecx
nop word cs:[rax + rax]
cmp eax, 0xd
ja 0x1401817d0
mov edx, 0x110000
bt ebp, eax
jb 0x1401817d2
jmp 0x1401817d0
add r15, 3
shl ecx, 0xc
or edx, ecx
mov eax, edx
cmp eax, 0xd
jbe 0x140181869
jmp 0x1401817d0
mov rcx, r14
call fcn.140060730
test r13, r13
jne 0x1401817c1
jmp 0x1401819f7
cmp byte [rsp + 0xb1], 0
jne 0x14018254e
cmp byte [rsp + 0xb0], 0
mov rbp, qword [rsp + 0x70]
mov rax, qword [rsp + 0x78]
jne 0x1401818d2
cmp rax, rbp
je 0x14018254e
sub rax, rbp
add rbp, qword [rsp + 0x80]
cmp rax, 2
jne 0x140181948
movzx eax, byte [rbp]
and al, 0xdf
add al, 0xbf
cmp al, 0x19
ja 0x140181948
cmp byte [rbp + 1], 0x3a
jne 0x140181948
mov qword [rsp + 0x68], r14
mov r14, qword [rdi + 0x10]
cmp r14, qword [rdi]
jne 0x14018190b
mov rcx, rdi
call fcn.1400c7210
mov rax, qword [rdi + 8]
mov byte [rax + r14], 0x2f
inc r14
mov qword [rdi + 0x10], r14
mov rax, qword [rdi]
sub rax, r14
cmp rax, 1
jbe 0x140182528
mov rax, qword [rdi + 8]
movzx ecx, word [rbp]
mov word [rax + r14], cx
add r14, 2
mov qword [rdi + 0x10], r14
xor r15d, r15d
jmp 0x140181fa7
mov rax, qword [rsp + 0x160]
movzx r15d, byte [rax + 0x40]
test r15b, r15b
je 0x140181999
mov qword [rsp + 0x68], r14
mov r8d, dword [rax + 0x34]
mov ebp, dword [rax + 0x38]
mov r14, qword [rax + 8]
mov rdx, qword [rax + 0x10]
cmp r8d, ebp
ja 0x140181f48
test r8, r8
je 0x140181f37
cmp rdx, r8
jbe 0x140181f35
cmp byte [r14 + r8], 0xc0
jge 0x140181f37
jmp 0x140181f48
xor r15d, r15d
jmp 0x140181fac
cmp dword [rbp + 0x18], 0
je 0x1401821b1
lea rax, [rbp + 0x1c]
mov r12d, dword [rax]
mov rdx, qword [rbp + 8]
test r12, r12
jne 0x1401821cb
jmp 0x1401821e3
mov r15, rbx
test r9, r9
je 0x140181ae4
cmp r9, r14
jae 0x140181b36
cmp byte [r12 + r9], 0xbf
jle 0x140182583
mov r8, r12
mov r14, r9
test r14, r14
jne 0x140181a18
jmp 0x140181b48
mov r15, rbx
mov rcx, qword [rsp + 0x70]
mov r8, qword [rsp + 0x78]
mov r14, qword [rsp + 0x80]
movzx r11d, byte [rsp + 0x68]
test r14, r14
je 0x140181b48
cmp r14, 2
jne 0x140181a76
movzx eax, byte [r8]
and al, 0xdf
add al, 0xbf
cmp al, 0x19
ja 0x140181af1
movzx eax, byte [r8 + 1]
cmp eax, 0x3a
je 0x140181a41
cmp eax, 0x7c
jne 0x140181af1
xor r14d, r14d
mov bpl, 1
test sil, 1
je 0x14018234f
test rcx, rcx
je 0x14018234f
mov eax, 1
mov qword [rsp + 0x68], rax
mov r15, r12
movabs r12, 0x8000000000000000
jmp 0x140181b83
test r14, r14
js 0x1401825b7
mov r13d, r11d
mov rbp, rcx
mov rsi, r8
movzx eax, byte [0x1402792e0]
xor ecx, ecx
mov rdx, r14
call fcn.1401685e0
test rax, rax
je 0x1401825bc
mov r12, rsi
jmp 0x140181b59
cmp dword [rbp + 0x20], 0
je 0x140182230
lea rax, [rbp + 0x24]
mov r9d, dword [rax]
mov rdx, qword [rbp + 8]
test r9, r9
jne 0x140181632
mov r13, r14
mov r14, qword [rdi + 0x10]
xor r12d, r12d
jmp 0x14018224e
mov rdx, qword [rbp + 8]
mov rbx, qword [rbp + 0x10]
jmp 0x140182140
mov eax, 1
mov r13b, 1
xor r14d, r14d
jmp 0x140181b59
mov r13d, r11d
mov rbp, rcx
mov rsi, r8
movzx eax, byte [0x1402792e0]
mov r14d, 2
mov edx, 2
xor ecx, ecx
call fcn.1401685e0
test rax, rax
je 0x14018260c
mov r8, rsi
movzx ecx, word [rsi]
mov qword [rsp + 0x68], rax
mov word [rax], cx
movabs r12, 0x8000000000000000
jmp 0x140181b79
jne 0x140182583
mov r8, r12
test r14, r14
jne 0x140181a18
mov r13d, r11d
mov rbp, rcx
mov eax, 1
mov rsi, r8
mov r12, r8
mov qword [rsp + 0x68], rax
mov rcx, rax
mov rdx, r12
mov r8, r14
call sub.msvcrt.dll_memcpy
movabs r12, 0x8000000000000000
mov r8, rsi
test r13b, r13b
jne 0x140181b91
test rbp, rbp
je 0x140181b91
mov rcx, qword [0x140279280]
xor edx, edx
call fcn.1401abdbc
test r14, r14
je 0x140181bf2
lea rcx, [rsp + 0x70]
mov r13, qword [rsp + 0x68]
mov rdx, r13
mov r8, r14
call fcn.14017b6b0
mov rax, qword [rsp + 0x70]
lea r14, [r12 + 2]
movzx esi, byte [rsp + 0x78]
cmp rax, r14
jne 0x140181c7e
mov rcx, qword [0x140279280]
xor edx, edx
mov r8, r13
call fcn.1401abdbc
mov rax, qword [rsp + 0xc0]
mov byte [rax + 8], sil
mov qword [rax], r12
cmp qword [rdi], 0
jne 0x1401822ac
jmp 0x1401822be
mov bpl, 1
xor r14d, r14d
mov qword [rsp + 0xb8], rax
mov r12, qword [rdi + 0x10]
mov rax, r12
shr rax, 0x20
jne 0x14018210a
test r14b, r14b
setne byte [rsp + 0xc8]
test bpl, bpl
je 0x140181db6
cmp r12, qword [rdi]
jne 0x140181c32
mov rcx, rdi
call fcn.1400c7210
mov rax, qword [rdi + 8]
mov byte [rax + r12], 0x2f
lea rax, [r12 + 1]
mov qword [rdi + 0x10], rax
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], r15
lea r8, [rsp + 0xc8]
mov rcx, rdi
xor edx, edx
mov r9, r12
call fcn.14017f990
cmp byte [rsp + 0xc8], 0
mov rbx, qword [rsp + 0xc0]
jne 0x140181e73
jmp 0x140181de6
movzx edx, sil
movzx ecx, byte [rsp + 0x7f]
shl ecx, 0x10
movzx r9d, word [rsp + 0x7d]
or r9d, ecx
mov r8d, dword [rsp + 0x79]
mov rcx, qword [rsp + 0x80]
shl r9, 0x28
shl r8, 8
or r8, r9
or r8, rdx
lea rdx, [r12 + 1]
cmp rax, rdx
jle 0x140181cdd
cmp rcx, 9
jne 0x140181cdd
movabs rdx, 0x736f686c61636f6c
xor rdx, qword [r8]
movzx r9d, byte [r8 + 8]
xor r9, 0x74
or r9, rdx
je 0x14018232d
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0xd0], r8
mov qword [rsp + 0xd8], rcx
lea rax, [rsp + 0xc8]
mov qword [rsp + 0xe0], rax
lea rax, [0x140184a30]
mov qword [rsp + 0xe8], rax
lea rax, [0x140235778]
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], 1
mov qword [rsp + 0x90], 0
lea rax, [rsp + 0xe0]
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x88], 1
lea rdx, [0x1402338a0]
lea r8, [rsp + 0x70]
mov rcx, rdi
call fcn.140047160
test al, al
jne 0x14018255a
mov rax, qword [rsp + 0xc8]
mov rsi, qword [rsp + 0xd0]
mov r8, qword [rsp + 0xd8]
xor ecx, ecx
cmp rax, r14
lea rdx, [r12 + rax + 1]
cmovl rcx, rdx
test rcx, rcx
mov qword [rsp + 0xf0], r8
je 0x1401820a4
cmp rcx, 1
jne 0x1401820ad
mov r14b, 2
jmp 0x1401820b7
mov qword [rsp + 0x20], rbx
lea r8, [rsp + 0xc8]
mov rcx, rdi
xor edx, edx
mov r9, r15
call fcn.140185230
cmp byte [rsp + 0xc8], 0
mov rbx, qword [rsp + 0xc0]
jne 0x140181e73
cmp r12, 7
jb 0x1401825e6
mov r9, qword [rdi + 0x10]
cmp r9, r12
jb 0x1401825fa
mov r13, rbx
mov rcx, qword [rdi + 8]
cmp r9, 8
jb 0x140181e14
cmp byte [rcx + 7], 0xbf
jle 0x140182652
mov rbx, rdx
mov r15, rax
cmp r9, r12
jbe 0x140181e2a
cmp byte [rcx + r12], 0xbf
jle 0x14018266a
lea rax, [rcx + 7]
add rcx, r12
mov qword [rsp + 0x80], rdi
mov qword [rsp + 0x88], 7
mov qword [rsp + 0x90], r12
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], rcx
lea rcx, [rsp + 0x70]
call fcn.1400424e0
mov r12d, 7
xor r14d, r14d
mov rax, r15
mov rdx, rbx
mov rbx, r13
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x70]
mov rdx, rdi
xor r8d, r8d
mov r9d, 4
call fcn.140183e70
mov eax, dword [rsp + 0x70]
cmp eax, 2
jne 0x140181ec0
movzx eax, byte [rsp + 0x74]
mov byte [rbx + 8], al
movabs rax, 0x8000000000000000
mov qword [rbx], rax
cmp qword [rdi], 0
jne 0x1401822ac
jmp 0x1401822be
mov ecx, dword [rsp + 0x7c]
mov rdx, qword [rsp + 0x74]
mov r8, qword [rdi + 0x10]
mov qword [rbx + 0x10], r8
movups xmm0, xmmword [rdi]
movups xmmword [rbx], xmm0
mov dword [rbx + 0x18], eax
mov qword [rbx + 0x1c], rdx
mov dword [rbx + 0x24], ecx
mov word [rbx + 0x28], 0
movabs rax, 0x700000004
mov qword [rbx + 0x2c], rax
mov dword [rbx + 0x34], 7
mov dword [rbx + 0x38], r12d
mov dword [rbx + 0x3c], r12d
mov byte [rbx + 0x40], r14b
mov dword [rbx + 0x41], esi
mov rax, qword [rsp + 0xb8]
mov dword [rbx + 0x45], eax
mov rax, qword [rsp + 0xf0]
mov qword [rbx + 0x49], rax
jmp 0x1401822be
jne 0x14018259d
mov r13, r14
jmp 0x14018223b
jne 0x140181f48
test rbp, rbp
je 0x140181f61
cmp rdx, rbp
jbe 0x140181f5f
cmp byte [r14 + rbp], 0xbf
jg 0x140181f61
lea rax, str._home_dreamingcodes_.cargo_registry_src_index.crates.io_6f17d22bba15001f_url_2.5.2_src_lib.rs
mov qword [rsp + 0x20], rax
mov rcx, r14
mov r9, rbp
call fcn.14004aea0
jne 0x140181f48
sub rbp, r8
add r14, r8
mov rax, qword [rdi]
mov r12, qword [rdi + 0x10]
sub rax, r12
cmp rax, rbp
jb 0x1401824aa
mov rcx, qword [rdi + 8]
add rcx, r12
mov rdx, r14
mov r8, rbp
call sub.msvcrt.dll_memcpy
add r12, rbp
mov qword [rdi + 0x10], r12
mov rax, qword [rsp + 0x160]
movups xmm0, xmmword [rax + 0x41]
movaps xmmword [rsp + 0xe0], xmm0
mov r14, qword [rsp + 0x68]
add esi, 0xffffffdd
cmp esi, 0x39
ja 0x140181fc7
movabs rax, 0x200000010001001
bt rax, rsi
jae 0x140181fc7
mov r13, r14
mov byte [rsp + 0x70], 0
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], r13
lea r8, [rsp + 0x70]
mov rcx, rdi
xor edx, edx
mov r9, r12
call fcn.14017f990
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x70]
mov rdx, rdi
xor r8d, r8d
mov r9d, 4
call fcn.140183e70
mov eax, dword [rsp + 0x70]
cmp eax, 2
jne 0x14018203d
movzx eax, byte [rsp + 0x74]
mov rcx, qword [rsp + 0xc0]
mov byte [rcx + 8], al
movabs rax, 0x8000000000000000
mov qword [rcx], rax
cmp qword [rdi], 0
jne 0x1401822ac
jmp 0x1401822be
mov ecx, dword [rsp + 0x7c]
mov rdx, qword [rsp + 0x74]
mov r8, qword [rdi + 0x10]
mov r9, qword [rsp + 0xc0]
mov qword [r9 + 0x10], r8
movups xmm0, xmmword [rdi]
movups xmmword [r9], xmm0
movaps xmm0, xmmword [rsp + 0xe0]
movups xmmword [r9 + 0x41], xmm0
mov dword [r9 + 0x18], eax
mov qword [r9 + 0x1c], rdx
mov dword [r9 + 0x24], ecx
mov word [r9 + 0x28], 0
movabs rax, 0x700000004
mov qword [r9 + 0x2c], rax
mov dword [r9 + 0x34], 7
mov dword [r9 + 0x38], r12d
mov dword [r9 + 0x3c], r12d
mov byte [r9 + 0x40], r15b
jmp 0x1401822be
test r8, r8
setne r14b
jmp 0x1401820b7
mov rcx, rsi
shr rcx, 0x20
mov r14b, 3
mov qword [rsp + 0xb8], rcx
movabs rcx, 0x8000000000000002
cmp rax, rcx
jl 0x1401820e4
test rax, rax
je 0x1401820e4
mov rcx, qword [0x140279280]
xor edx, edx
mov r8, rsi
call fcn.1401abdbc
xor ebp, ebp
mov rcx, qword [0x140279280]
xor edx, edx
mov r8, qword [rsp + 0x68]
call fcn.1401abdbc
mov r12, qword [rdi + 0x10]
mov rax, r12
shr rax, 0x20
je 0x140181c11
mov rax, qword [rsp + 0xc0]
mov byte [rax + 8], 9
movabs rcx, 0x8000000000000000
mov qword [rax], rcx
cmp qword [rdi], 0
jne 0x1401822ac
jmp 0x1401822be
mov r14, qword [rdi + 0x10]
xor ebx, ebx
jmp 0x140182153
jne 0x1401825c9
mov rax, qword [rdi]
mov r14, qword [rdi + 0x10]
sub rax, r14
cmp rax, rbx
jb 0x1401824c1
mov rcx, qword [rdi + 8]
add rcx, r14
mov r8, rbx
call sub.msvcrt.dll_memcpy
add r14, rbx
mov qword [rdi + 0x10], r14
mov qword [r15 + 0x10], r14
movups xmm0, xmmword [rdi]
movups xmmword [r15], xmm0
movzx eax, byte [rbp + 0x50]
mov byte [r15 + 0x50], al
movups xmm0, xmmword [rbp + 0x40]
movups xmmword [r15 + 0x40], xmm0
mov eax, dword [rbp + 0x3c]
mov rcx, qword [rbp + 0x18]
mov qword [r15 + 0x18], rcx
mov dword [r15 + 0x20], 0
mov ecx, dword [rbp + 0x28]
mov dword [r15 + 0x28], ecx
movups xmm0, xmmword [rbp + 0x2c]
movups xmmword [r15 + 0x2c], xmm0
mov dword [r15 + 0x3c], eax
jmp 0x1401822be
cmp dword [rbp + 0x20], 0
je 0x140182370
lea rax, [rbp + 0x24]
mov r12d, dword [rax]
mov rdx, qword [rbp + 8]
test r12, r12
je 0x1401821e3
mov rax, qword [rbp + 0x10]
cmp rax, r12
jbe 0x14018231f
cmp byte [rdx + r12], 0xbf
jle 0x140182635
mov r13, r14
jmp 0x14018237b
mov r8d, 7
mov rcx, rdi
call fcn.140060840
mov rdx, qword [rdi + 0x10]
jmp 0x14018140a
mov r8d, 8
mov rcx, rdi
call fcn.140060840
mov rdx, qword [rdi + 0x10]
jmp 0x1401816d1
mov r8d, 7
mov rcx, rdi
call fcn.140060840
mov rdx, qword [rdi + 0x10]
jmp 0x140181227
mov r13, r14
mov rdx, qword [rbp + 8]
mov r12, qword [rbp + 0x10]
mov rax, qword [rdi]
mov r14, qword [rdi + 0x10]
sub rax, r14
cmp rax, r12
jb 0x1401824de
mov rcx, qword [rdi + 8]
add rcx, r14
mov r8, r12
call sub.msvcrt.dll_memcpy
add r14, r12
mov qword [rdi + 0x10], r14
mov rsi, rbp
mov ebp, dword [rbp + 0x2c]
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], r13
lea rcx, [rsp + 0x70]
mov rdx, rdi
xor r8d, r8d
mov r9d, ebp
call fcn.140183e70
mov eax, dword [rsp + 0x70]
cmp eax, 2
jne 0x1401822d3
movzx eax, byte [rsp + 0x74]
mov byte [r15 + 8], al
movabs rax, 0x8000000000000000
mov qword [r15], rax
cmp qword [rdi], 0
je 0x1401822be
mov r8, qword [rdi + 8]
mov rcx, qword [0x140279280]
xor edx, edx
call fcn.1401abdbc
nop
add rsp, 0xf8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov ecx, dword [rsp + 0x7c]
mov rdx, qword [rsp + 0x74]
mov r8, qword [rdi + 0x10]
mov qword [r15 + 0x10], r8
movups xmm0, xmmword [rdi]
movups xmmword [r15], xmm0
movups xmm0, xmmword [rsi + 0x40]
movups xmmword [r15 + 0x40], xmm0
movzx r8d, byte [rsi + 0x50]
mov byte [r15 + 0x50], r8b
mov dword [r15 + 0x18], eax
mov qword [r15 + 0x1c], rdx
mov dword [r15 + 0x24], ecx
mov eax, dword [rsi + 0x28]
mov dword [r15 + 0x28], eax
mov dword [r15 + 0x2c], ebp
movups xmm0, xmmword [rsi + 0x30]
movups xmmword [r15 + 0x30], xmm0
jmp 0x1401822be
jne 0x140182635
mov r13, r14
mov r12, rax
jmp 0x14018237b
mov bpl, 1
test rax, rax
je 0x1401824fb
mov rcx, qword [0x140279280]
xor r14d, r14d
xor edx, edx
call fcn.1401abdbc
jmp 0x1401824fe
mov qword [rsp + 0xb8], rax
mov r15, r12
mov r12, qword [rdi + 0x10]
mov rax, r12
shr rax, 0x20
je 0x140181c11
jmp 0x14018210a
mov r13, r14
mov rdx, qword [rbp + 8]
mov r12, qword [rbp + 0x10]
mov rax, qword [rdi]
mov r14, qword [rdi + 0x10]
sub rax, r14
cmp rax, r12
jb 0x14018250b
mov rcx, qword [rdi + 8]
add rcx, r14
mov r8, r12
call sub.msvcrt.dll_memcpy
add r14, r12
mov qword [rdi + 0x10], r14
mov r12d, dword [rbp + 0x3c]
mov rax, r14
sub rax, r12
je 0x1401823f5
mov rcx, qword [rdi + 8]
test r12, r12
je 0x1401823cd
cmp r14, r12
jbe 0x14018261b
cmp byte [rcx + r12], 0xbf
jle 0x14018261b
cmp rax, 2
jne 0x1401823e8
movzx eax, byte [rcx + r12]
and al, 0xdf
add al, 0xbf
cmp al, 0x19
ja 0x1401823e8
cmp byte [rcx + r12 + 1], 0x3a
je 0x1401823f5
mov rcx, rdi
xor edx, edx
mov r8, r12
call fcn.1401844b0
mov byte [rsp + 0x70], 1
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], r13
lea r8, [rsp + 0x70]
mov rcx, rdi
xor edx, edx
mov r9, r12
call fcn.14017f990
mov rcx, qword [rdi + 0x40]
mov qword [rsp + 0xb0], rcx
movups xmm0, xmmword [rdi]
movups xmm1, xmmword [rdi + 0x10]
movups xmm2, xmmword [rdi + 0x20]
movups xmm3, xmmword [rdi + 0x30]
movaps xmmword [rsp + 0xa0], xmm3
movaps xmmword [rsp + 0x90], xmm2
movaps xmmword [rsp + 0x80], xmm1
movaps xmmword [rsp + 0x70], xmm0
mov r9d, dword [rbp + 0x2c]
mov ecx, dword [rbp + 0x30]
mov r8d, dword [rbp + 0x34]
mov r10d, dword [rbp + 0x38]
lea r11, [rbp + 0x40]
movzx esi, word [rbp + 0x28]
movzx edi, word [rbp + 0x2a]
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x58], rax
mov dword [rsp + 0x50], r12d
mov word [rsp + 0x48], di
mov word [rsp + 0x40], si
mov qword [rsp + 0x38], r11
mov dword [rsp + 0x30], r10d
mov dword [rsp + 0x28], r8d
mov dword [rsp + 0x20], ecx
lea rdx, [rsp + 0x70]
mov rcx, r15
xor r8d, r8d
call fcn.140180a80
jmp 0x1401822be
mov rcx, rdi
mov rdx, r12
mov r8, rbp
call fcn.140060840
mov r12, qword [rdi + 0x10]
jmp 0x140181f7a
mov rcx, rdi
mov rsi, rdx
mov rdx, r14
mov r8, rbx
call fcn.140060840
mov rdx, rsi
mov r14, qword [rdi + 0x10]
jmp 0x140182153
mov rcx, rdi
mov rsi, rdx
mov rdx, r14
mov r8, r12
call fcn.140060840
mov rdx, rsi
mov r14, qword [rdi + 0x10]
jmp 0x14018224e
xor r14d, r14d
mov qword [rsp + 0xb8], rax
jmp 0x1401820e6
mov rcx, rdi
mov rsi, rdx
mov rdx, r14
mov r8, r12
call fcn.140060840
mov rdx, rsi
mov r14, qword [rdi + 0x10]
jmp 0x14018238e
mov r8d, 2
mov rcx, rdi
mov rdx, r14
call fcn.140060840
mov r14, qword [rdi + 0x10]
jmp 0x14018192b
lea rcx, [0x140233ee0]
call fcn.140049c70
lea rcx, [0x140233ef8]
call fcn.140049c70
lea rax, [0x140233fe8]
mov qword [rsp + 0x20], rax
lea rcx, [0x14023555c]
lea r9, [0x140233990]
lea r8, [rsp + 0x70]
mov edx, 0x2b
call fcn.140048d20
lea rax, [0x140234000]
mov qword [rsp + 0x20], rax
mov rcx, r12
mov rdx, r14
xor r8d, r8d
call fcn.14004aea0
lea rax, str._home_dreamingcodes_.cargo_registry_src_index.crates.io_6f17d22bba15001f_url_2.5.2_src_lib.rs
mov qword [rsp + 0x20], rax
mov rcx, rdx
mov rdx, r12
xor r8d, r8d
call fcn.14004aea0
call fcn.1400418d0
mov ecx, 1
mov rdx, r14
call fcn.1400418b0
lea rcx, [0x140233f10]
mov qword [rsp + 0x20], rcx
mov rcx, rdx
mov rdx, rax
xor r8d, r8d
mov r9, rbx
call fcn.14004aea0
lea r8, [0x140233ac8]
mov ecx, 7
mov rdx, r12
call fcn.1400479c0
lea r8, [0x140233ac8]
mov rcx, r12
mov rdx, r9
call fcn.140046bf0
mov ecx, 1
mov edx, 2
call fcn.1400418b0
lea rax, [0x1402340d8]
mov qword [rsp + 0x20], rax
mov rdx, r14
mov r8, r12
mov r9, r14
call fcn.14004aea0
lea rcx, str._home_dreamingcodes_.cargo_registry_src_index.crates.io_6f17d22bba15001f_url_2.5.2_src_lib.rs
mov qword [rsp + 0x20], rcx
mov rcx, rdx
mov rdx, rax
xor r8d, r8d
mov r9, r12
call fcn.14004aea0
lea rcx, str.assertion_failed:_self.is_char_boundary_start_
lea r8, [0x140233b10]
mov edx, 0x2e
call fcn.140046f60
lea rcx, str.assertion_failed:_self.is_char_boundary_end_
lea r8, [0x140233b58]
mov edx, 0x2c
call fcn.140046f60
int3