Function at 0x1801931f0
Capabilities:
Encode data using base64

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x1a8
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x110], xmm6
mov qword [rbp + 0x108], 0xfffffffffffffffe
mov rdi, r9
mov rbx, r8
mov r14, rdx
mov rsi, rcx
mov rcx, rdx
mov rdx, r8
call fcn.180192830
mov qword [rbp + 0x10], r14
mov qword [rbp + 0x18], rbx
mov qword [rbp + 0x20], rdi
mov qword [rbp + 0x28], rax
mov qword [rbp + 0x30], rdx
mov qword [rbp + 0x38], 0
lea rcx, [rbp + 0x10]
call fcn.180194cf0
cmp qword [rbp + 0x30], 0
je 0x180193269
mov rax, qword [rbp + 0x28]
cmp byte [rax], 0x23
jne 0x180193294
movabs rax, 0x8000000000000000
mov qword [rsi], rax
mov rax, rsi
movaps xmm6, xmmword [rbp + 0x110]
add rsp, 0x1a8
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
lea rcx, [rbp + 0xc0]
lea rdx, [rbp + 0x10]
call fcn.180194870
mov rax, qword [rbp + 0xc0]
movups xmm0, xmmword [rbp + 0xc8]
movaps xmmword [rbp + 0x60], xmm0
mov rcx, qword [rbp + 0xd8]
mov qword [rbp + 0x70], rcx
cmp rax, 4
jne 0x1801933f8
movaps xmm0, xmmword [rbp + 0x60]
movaps xmmword [rbp + 0x40], xmm0
mov rax, qword [rbp + 0x70]
mov qword [rbp + 0x50], rax
lea rcx, [rbp + 0x10]
call fcn.180194cf0
cmp qword [rbp + 0x50], 6
jne 0x180193307
mov rax, qword [rbp + 0x48]
mov ecx, 0x6f707865
xor ecx, dword [rax]
movzx eax, word [rax + 4]
xor eax, 0x7472
or eax, ecx
je 0x1801934bf
mov rdx, qword [rbp + 0x30]
test rdx, rdx
je 0x180193426
mov rcx, qword [rbp + 0x28]
cmp byte [rcx], 0x3d
jne 0x180193426
cmp rdx, 1
je 0x180193331
cmp byte [rcx + 1], 0xbf
jle 0x180194537
inc rcx
dec rdx
mov qword [rbp + 0x28], rcx
mov qword [rbp + 0x30], rdx
inc qword [rbp + 0x38]
lea rcx, [rbp + 0x10]
call fcn.180194cf0
mov rax, qword [rbp + 0x30]
test rax, rax
je 0x180193363
mov r14, qword [rbp + 0x28]
cmp byte [r14], 0x23
jne 0x180193551
mov rdi, qword [rbp + 0x20]
lea rcx, [rbp + 0x60]
lea rdx, [rbp + 0x40]
call fcn.1801bf440
movabs rax, 0x8000000000000000
mov qword [rbp + 0xc0], rax
lea rcx, [rbp + 0x88]
lea r8, [rbp + 0x60]
lea r9, [rbp + 0xc0]
mov rdx, rdi
call fcn.180191210
mov rdx, qword [rbp + 0x88]
movabs rax, 0x8000000000000002
cmp rdx, rax
jl 0x1801933cc
test rdx, rdx
je 0x1801933cc
mov rcx, qword [rbp + 0x90]
mov r8d, 1
call fcn.180039420
mov rax, qword [rbp + 0x50]
mov qword [rsi + 0x10], rax
movaps xmm0, xmmword [rbp + 0x40]
movups xmmword [rsi], xmm0
mov qword [rsi + 0x18], 0
mov qword [rsi + 0x20], 1
mov qword [rsi + 0x28], 0
jmp 0x180193276
mov rcx, qword [rbp + 0xe0]
mov rdx, qword [rbp + 0x70]
mov qword [rsi + 0x20], rdx
movaps xmm0, xmmword [rbp + 0x60]
movups xmmword [rsi + 0x10], xmm0
mov qword [rsi + 8], rax
mov qword [rsi + 0x28], rcx
movabs rax, 0x8000000000000001
jmp 0x180193273
mov rbx, qword [rbp + 0x10]
mov rdi, qword [rbp + 0x18]
test rdi, rdi
je 0x180193461
js 0x180194527
movzx eax, byte [0x1802de561]
mov r15d, 1
mov edx, 1
mov rcx, rdi
call fcn.180039410
test rax, rax
je 0x18019452a
mov r14, rax
jmp 0x180193467
mov r14d, 1
mov rcx, r14
mov rdx, rbx
mov r8, rdi
call sub.VCRUNTIME140.dll_memcpy
mov rax, qword [rbp + 0x38]
mov qword [rsi + 8], 0
mov qword [rsi + 0x10], rax
mov qword [rsi + 0x18], rdi
mov qword [rsi + 0x20], r14
mov qword [rsi + 0x28], rdi
movabs rax, 0x8000000000000001
mov qword [rsi], rax
mov rdx, qword [rbp + 0x40]
test rdx, rdx
je 0x180193276
mov rcx, qword [rbp + 0x48]
mov r8d, 1
call fcn.180039420
jmp 0x180193276
mov rdx, qword [rbp + 0x30]
test rdx, rdx
je 0x18019350f
mov rcx, qword [rbp + 0x28]
cmp byte [rcx], 0x3d
jne 0x18019350f
cmp rdx, 1
je 0x1801934e1
cmp byte [rcx + 1], 0xbf
jle 0x180194573
inc rcx
dec rdx
mov qword [rbp + 0x28], rcx
mov qword [rbp + 0x30], rdx
inc qword [rbp + 0x38]
mov qword [rbp + 0xc0], 4
lea rcx, [rbp + 0xc0]
call fcn.180193070
jmp 0x180193343
mov rbx, qword [rbp + 0x10]
mov rdi, qword [rbp + 0x18]
test rdi, rdi
je 0x1801942f4
js 0x180194553
movzx eax, byte [0x1802de561]
mov r15d, 1
mov edx, 1
mov rcx, rdi
call fcn.180039410
test rax, rax
je 0x180194556
mov r14, rax
jmp 0x1801942fa
mov rcx, qword [rbp + 0x20]
mov qword [rbp], rcx
mov qword [rbp + 0xa0], 0
mov qword [rbp + 0xa8], 1
mov qword [rbp + 0xb0], 0
mov qword [rbp + 0x88], 0
mov qword [rbp + 0x90], 1
mov qword [rbp + 0x98], 0
mov qword [rbp + 8], rax
add rax, r14
mov qword [rbp - 0x18], rax
xor r13d, r13d
mov qword [rbp - 8], r14
mov dword [rbp + 0x100], 0
xor eax, eax
mov qword [rbp - 0x10], rax
mov dword [rbp + 0x80], 0
xor eax, eax
xor ecx, ecx
jmp case.0x180193897.39
mov rax, qword [rbp + 0xa8]
mov byte [rax + r13], r15b
inc r13
mov qword [rbp + 0xb0], r13
mov dword [rbp + 0x80], 0
mov r13, rbx
mov eax, edi
mov ecx, r12d
mov r12d, ecx
mov edi, eax
cmp r14, qword [rbp - 0x18]
je 0x180194129
cmp byte [rbp - 0x10], 0
jne 0x180194099
movzx edx, byte [r14]
movzx r15d, dl
test r15b, r15b
js 0x180193674
inc r14
lea rbx, [r13 + 1]
cmp byte [rbp + 0x80], 0
je 0x1801936fe
lea eax, [r15 - 0x20]
cmp eax, 0x3c
ja 0x180193788
movabs rcx, 0x1000000000000095
bt rcx, rax
jae 0x180193788
mov r13, qword [rbp + 0xb0]
cmp r13, qword [rbp + 0xa0]
jne 0x1801935cd
lea rcx, [rbp + 0xa0]
call fcn.1800315f0
jmp 0x1801935cd
mov eax, r15d
and eax, 0x1f
movzx r8d, byte [r14 + 1]
and r8d, 0x3f
cmp r15b, 0xe0
jb 0x1801936e0
lea r9, [r14 + 3]
movzx ecx, byte [r14 + 2]
shl r8d, 6
and ecx, 0x3f
or ecx, r8d
cmp dl, 0xf0
jb 0x1801937c9
movzx r15d, byte [r9]
and eax, 7
shl eax, 0x12
shl ecx, 6
and r15d, 0x3f
or r15d, ecx
or r15d, eax
cmp r15d, 0x110000
je 0x180194129
add r14, 4
lea rbx, [r13 + 1]
cmp byte [rbp + 0x80], 0
jne 0x18019362e
jmp 0x1801936fe
add r14, 2
shl eax, 6
or eax, r8d
mov r15d, eax
lea rbx, [r13 + 1]
cmp byte [rbp + 0x80], 0
jne 0x18019362e
test r12b, r12b
jne 0x180193734
cmp byte [rbp + 0x100], 0
je 0x180193848
mov eax, r15d
and eax, 0xffffffdf
add eax, 0xffffffbf
cmp eax, 0x1a
jae 0x1801937ea
cmp r15d, 0x80
jae 0x180193813
jmp 0x1801938b7
xor ecx, ecx
mov r13, rbx
mov eax, edi
cmp r15d, 0x27
je case.0x180193897.39
cmp r15d, 0x80
jae 0x1801939d9
mov r13, qword [rbp + 0xb0]
cmp r13, qword [rbp + 0xa0]
jne 0x18019376e
lea rcx, [rbp + 0xa0]
call fcn.1800315f0
mov rax, qword [rbp + 0xa8]
mov byte [rax + r13], r15b
inc r13
mov qword [rbp + 0xb0], r13
jmp 0x1801935ec
cmp r15d, 0x6e
jne 0x180194490
mov r15, qword [rbp + 0xb0]
cmp r15, qword [rbp + 0xa0]
jne 0x1801937ae
lea rcx, [rbp + 0xa0]
call fcn.1800315f0
mov rax, qword [rbp + 0xa8]
mov byte [rax + r15], 0xa
inc r15
mov qword [rbp + 0xb0], r15
jmp 0x1801935e2
shl eax, 0xc
or ecx, eax
mov r15d, ecx
mov r14, r9
lea rbx, [r13 + 1]
cmp byte [rbp + 0x80], 0
jne 0x18019362e
jmp 0x1801936fe
cmp r15d, 0x80
jb 0x1801938ae
mov ecx, r15d
call fcn.1801cc4c0
test al, al
jne 0x180193813
mov ecx, r15d
call fcn.1801cca10
test al, al
je 0x180193925
mov dword [rbp + 0xc0], 0
mov eax, r15d
cmp r15d, 0x800
jae 0x1801938ed
shr eax, 6
or al, 0xc0
mov byte [rbp + 0xc0], al
mov r13d, 2
mov eax, 1
jmp 0x180193a44
mov al, 1
mov dword [rbp + 0x100], eax
mov r13, rbx
mov eax, edi
mov ecx, r12d
cmp r15d, 0x24
je case.0x180193897.39
test dil, dil
jne 0x180193ae3
lea eax, [r15 - 9]
cmp eax, 0x1e
ja case.default.0x180193897
mov cl, 1
mov dword [rbp + 0x100], 0
lea r8, [0x180270628]
movsxd rdx, dword [r8 + rax*4]
add rdx, r8
mov r13, rbx
mov eax, edi
jmp rdx
mov al, 1
mov qword [rbp - 0x10], rax
mov dword [rbp + 0x100], 0
jmp 0x1801935ec
lea eax, [r15 - 0x30]
cmp eax, 0xa
jae 0x180193925
mov r13, qword [rbp + 0x98]
cmp r13, qword [rbp + 0x88]
jne 0x1801938d3
lea rcx, [rbp + 0x88]
call fcn.1800315f0
mov rax, qword [rbp + 0x90]
mov byte [rax + r13], r15b
inc r13
mov qword [rbp + 0x98], r13
jmp 0x1801935ec
cmp r15d, 0x10000
jae 0x180193a0e
shr eax, 0xc
or al, 0xe0
mov byte [rbp + 0xc0], al
mov eax, r15d
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rbp + 0xc1], al
mov r13d, 3
mov eax, 2
jmp 0x180193a44
cmp byte [rbp + 0x100], 2
jne 0x180193b81
cmp r15d, 0x7d
jne 0x180193b3e
mov rax, qword [rbp + 0x90]
mov rcx, qword [rbp + 0x98]
lea rdx, [rax + rcx]
lea r8, [rbp + 0x88]
mov qword [rbp + 0xd0], r8
mov qword [rbp + 0xd8], 0
mov qword [rbp + 0xe0], rcx
mov qword [rbp + 0xc0], rax
mov qword [rbp + 0xc8], rdx
lea rcx, [rbp + 0x60]
lea rdx, [rbp + 0xc0]
call fcn.1801923d0
mov rdx, qword [rbp + 0x68]
mov r8, qword [rbp + 0x70]
mov rcx, qword [rbp]
mov qword [rbp + 0x100], rdx
lea r9, [rbp + 0xa0]
call fcn.180194eb0
mov rdx, qword [rbp + 0x60]
test rdx, rdx
je 0x18019407d
mov r8d, 1
mov rcx, qword [rbp + 0x100]
call fcn.180039420
mov dword [rbp + 0x100], 0
jmp 0x1801935ec
mov dword [rbp + 0xc0], 0
mov eax, r15d
cmp r15d, 0x800
jae 0x180193aab
shr eax, 6
or al, 0xc0
mov byte [rbp + 0xc0], al
mov r8d, 2
mov eax, 1
jmp 0x180193cac
shr eax, 0x12
or al, 0xf0
mov byte [rbp + 0xc0], al
mov eax, r15d
shr eax, 0xc
and al, 0x3f
or al, 0x80
mov byte [rbp + 0xc1], al
mov eax, r15d
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rbp + 0xc2], al
mov r13d, 4
mov eax, 3
and r15b, 0x3f
or r15b, 0x80
mov byte [rbp + rax + 0xc0], r15b
mov rax, qword [rbp + 0x88]
mov r15, qword [rbp + 0x98]
sub rax, r15
cmp rax, r13
jae 0x180193a83
lea rcx, [rbp + 0x88]
mov rdx, r15
mov r8, r13
call fcn.1801ce8d0
mov r15, qword [rbp + 0x98]
mov rcx, qword [rbp + 0x90]
add rcx, r15
lea rdx, [rbp + 0xc0]
mov r8, r13
call sub.VCRUNTIME140.dll_memcpy
add r15, r13
mov qword [rbp + 0x98], r15
jmp 0x1801935ec
cmp r15d, 0x10000
jae 0x180193c76
shr eax, 0xc
or al, 0xe0
mov byte [rbp + 0xc0], al
mov eax, r15d
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rbp + 0xc1], al
mov r8d, 3
mov eax, 2
jmp 0x180193cac
mov dword [rbp + 0x100], 0
mov r13, rbx
mov eax, 0
mov ecx, r12d
cmp r15d, 0x22
je case.0x180193897.39
cmp r15d, 0x5c
je 0x180193cda
cmp r15d, 0x80
jae 0x180193df3
mov r13, qword [rbp + 0xb0]
cmp r13, qword [rbp + 0xa0]
jne 0x180193d1a
lea rcx, [rbp + 0xa0]
call fcn.1800315f0
jmp 0x180193d1a
cmp r15d, 0x80
jae 0x180193d3e
mov r13, qword [rbp + 0x98]
cmp r13, qword [rbp + 0x88]
jne 0x180193b67
lea rcx, [rbp + 0x88]
call fcn.1800315f0
mov rax, qword [rbp + 0x90]
mov byte [rax + r13], r15b
inc r13
mov qword [rbp + 0x98], r13
jmp 0x180193eb9
mov rdx, qword [rbp + 0x98]
cmp r15d, 0x7b
jne 0x180193ba7
mov al, 2
mov dword [rbp + 0x100], eax
mov r13, rbx
mov eax, edi
mov ecx, r12d
test rdx, rdx
je case.0x180193897.39
mov rax, qword [rbp + 0x90]
lea rcx, [rax + rdx]
lea r8, [rbp + 0x88]
mov qword [rbp + 0xd0], r8
mov qword [rbp + 0xd8], 0
mov qword [rbp + 0xe0], rdx
mov qword [rbp + 0xc0], rax
mov qword [rbp + 0xc8], rcx
lea rcx, [rbp + 0x60]
lea rdx, [rbp + 0xc0]
call fcn.1801923d0
mov rdx, qword [rbp + 0x68]
mov r8, qword [rbp + 0x70]
mov rcx, qword [rbp]
mov qword [rbp + 0x100], rdx
lea r9, [rbp + 0xa0]
call fcn.180194eb0
mov rdx, qword [rbp + 0x60]
test rdx, rdx
je 0x180193c2a
mov r8d, 1
mov rcx, qword [rbp + 0x100]
call fcn.180039420
mov al, 1
mov dword [rbp + 0x100], eax
mov r13, rbx
mov eax, edi
mov ecx, r12d
cmp r15d, 0x24
je case.0x180193897.39
cmp r15d, 0x80
jae 0x180193ec6
mov r13, qword [rbp + 0xb0]
cmp r13, qword [rbp + 0xa0]
jne 0x180193d1a
lea rcx, [rbp + 0xa0]
call fcn.1800315f0
jmp 0x180193d1a
shr eax, 0x12
or al, 0xf0
mov byte [rbp + 0xc0], al
mov eax, r15d
shr eax, 0xc
and al, 0x3f
or al, 0x80
mov byte [rbp + 0xc1], al
mov eax, r15d
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rbp + 0xc2], al
mov r8d, 4
mov eax, 3
and r15b, 0x3f
or r15b, 0x80
mov byte [rbp + rax + 0xc0], r15b
lea rcx, [rbp + 0xa0]
lea rdx, [rbp + 0xc0]
call fcn.18002b940
jmp 0x1801935ec
cmp r15d, 0x5c
jne case.0x180193897.10
mov al, 1
mov dword [rbp + 0x80], eax
mov dword [rbp + 0x100], 0
jmp 0x1801935ec
cmp r15d, 0x80
jae 0x180193d86
mov r13, qword [rbp + 0xb0]
cmp r13, qword [rbp + 0xa0]
jne 0x180193d1a
lea rcx, [rbp + 0xa0]
call fcn.1800315f0
mov rax, qword [rbp + 0xa8]
mov byte [rax + r13], r15b
inc r13
mov qword [rbp + 0xb0], r13
mov dword [rbp + 0x100], 0
jmp 0x1801935ec
mov dword [rbp + 0xc0], 0
mov eax, r15d
cmp r15d, 0x800
jae 0x180193dbb
shr eax, 6
or al, 0xc0
mov byte [rbp + 0xc0], al
mov r8d, 2
mov eax, 1
jmp 0x180193e96
mov al, 1
mov dword [rbp + 0x100], 0
mov r13, rbx
mov ecx, r12d
jmp case.0x180193897.39
mov dword [rbp + 0xc0], 0
mov eax, r15d
cmp r15d, 0x800
jae 0x180193e28
shr eax, 6
or al, 0xc0
mov byte [rbp + 0xc0], al
mov r8d, 2
mov eax, 1
jmp 0x180193f69
cmp r15d, 0x10000
jae 0x180193e60
shr eax, 0xc
or al, 0xe0
mov byte [rbp + 0xc0], al
mov eax, r15d
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rbp + 0xc1], al
mov r8d, 3
mov eax, 2
jmp 0x180193e96
mov dword [rbp + 0xc0], 0
mov eax, r15d
cmp r15d, 0x800
jae 0x180193efb
shr eax, 6
or al, 0xc0
mov byte [rbp + 0xc0], al
mov r8d, 2
mov eax, 1
jmp 0x180193fff
cmp r15d, 0x10000
jae 0x180193f33
shr eax, 0xc
or al, 0xe0
mov byte [rbp + 0xc0], al
mov eax, r15d
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rbp + 0xc1], al
mov r8d, 3
mov eax, 2
jmp 0x180193f69
shr eax, 0x12
or al, 0xf0
mov byte [rbp + 0xc0], al
mov eax, r15d
shr eax, 0xc
and al, 0x3f
or al, 0x80
mov byte [rbp + 0xc1], al
mov eax, r15d
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rbp + 0xc2], al
mov r8d, 4
mov eax, 3
and r15b, 0x3f
or r15b, 0x80
mov byte [rbp + rax + 0xc0], r15b
lea rcx, [rbp + 0x88]
lea rdx, [rbp + 0xc0]
call fcn.18002b940
mov al, 2
mov dword [rbp + 0x100], eax
jmp 0x1801935ec
mov dword [rbp + 0xc0], 0
mov eax, r15d
cmp r15d, 0x800
jae 0x180193f91
shr eax, 6
or al, 0xc0
mov byte [rbp + 0xc0], al
mov r8d, 2
mov eax, 1
jmp 0x18019405a
cmp r15d, 0x10000
jae 0x180193fc9
shr eax, 0xc
or al, 0xe0
mov byte [rbp + 0xc0], al
mov eax, r15d
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rbp + 0xc1], al
mov r8d, 3
mov eax, 2
jmp 0x180193fff
shr eax, 0x12
or al, 0xf0
mov byte [rbp + 0xc0], al
mov eax, r15d
shr eax, 0xc
and al, 0x3f
or al, 0x80
mov byte [rbp + 0xc1], al
mov eax, r15d
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rbp + 0xc2], al
mov r8d, 4
mov eax, 3
and r15b, 0x3f
or r15b, 0x80
mov byte [rbp + rax + 0xc0], r15b
lea rcx, [rbp + 0xa0]
lea rdx, [rbp + 0xc0]
call fcn.18002b940
jmp 0x18019407d
cmp r15d, 0x10000
jae 0x180194024
shr eax, 0xc
or al, 0xe0
mov byte [rbp + 0xc0], al
mov eax, r15d
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rbp + 0xc1], al
mov r8d, 3
mov eax, 2
jmp 0x18019405a
shr eax, 0x12
or al, 0xf0
mov byte [rbp + 0xc0], al
mov eax, r15d
shr eax, 0xc
and al, 0x3f
or al, 0x80
mov byte [rbp + 0xc1], al
mov eax, r15d
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rbp + 0xc2], al
mov r8d, 4
mov eax, 3
and r15b, 0x3f
or r15b, 0x80
mov byte [rbp + rax + 0xc0], r15b
lea rcx, [rbp + 0xa0]
lea rdx, [rbp + 0xc0]
call fcn.18002b940
jmp 0x18019407d
shr eax, 0x12
or al, 0xf0
mov byte [rbp + 0xc0], al
mov eax, r15d
shr eax, 0xc
and al, 0x3f
or al, 0x80
mov byte [rbp + 0xc1], al
mov eax, r15d
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rbp + 0xc2], al
mov r8d, 4
mov eax, 3
and r15b, 0x3f
or r15b, 0x80
mov byte [rbp + rax + 0xc0], r15b
lea rcx, [rbp + 0xa0]
lea rdx, [rbp + 0xc0]
call fcn.18002b940
mov dword [rbp + 0x100], 0
jmp 0x1801935ec
inc r13
cmp r14, qword [rbp - 0x18]
je 0x180194129
movzx r8d, byte [r14]
movzx eax, r8b
test al, al
js 0x1801940aa
inc r14
jmp 0x18019410e
mov ecx, eax
and ecx, 0x1f
movzx r9d, byte [r14 + 1]
and r9d, 0x3f
cmp al, 0xdf
jbe 0x1801940f6
lea r10, [r14 + 3]
movzx edx, byte [r14 + 2]
shl r9d, 6
and edx, 0x3f
or edx, r9d
cmp r8b, 0xf0
jb 0x180194104
movzx eax, byte [r10]
and ecx, 7
shl ecx, 0x12
shl edx, 6
and eax, 0x3f
or eax, edx
or eax, ecx
cmp eax, 0x110000
je 0x180194129
add r14, 4
jmp 0x18019410e
add r14, 2
shl ecx, 6
or ecx, r9d
mov eax, ecx
jmp 0x18019410e
shl ecx, 0xc
or edx, ecx
mov eax, edx
mov r14, r10
cmp eax, 9
je 0x18019408c
cmp eax, 0x20
je 0x18019408c
cmp eax, 0x23
jne 0x18019445c
cmp byte [rbp + 0x100], 2
je 0x18019440a
test r12b, r12b
jne 0x18019440a
test dil, dil
jne 0x18019440a
mov rax, qword [rbp + 0x90]
mov rcx, qword [rbp + 0x98]
lea rdx, [rax + rcx]
lea r8, [rbp + 0x88]
mov qword [rbp + 0xd0], r8
mov qword [rbp + 0xd8], 0
mov qword [rbp + 0xe0], rcx
mov qword [rbp + 0xc0], rax
mov qword [rbp + 0xc8], rdx
lea rcx, [rbp + 0x60]
lea rdx, [rbp + 0xc0]
call fcn.1801923d0
mov rdx, qword [rbp + 0x68]
mov r8, qword [rbp + 0x70]
lea r9, [rbp + 0xa0]
mov rbx, qword [rbp]
mov rcx, rbx
mov qword [rbp + 0x80], rdx
call fcn.180194eb0
mov rdx, qword [rbp + 0x60]
test rdx, rdx
je 0x1801941d5
mov r8d, 1
mov rcx, qword [rbp + 0x80]
call fcn.180039420
movaps xmm6, xmmword [rbp + 0xa0]
mov rdi, qword [rbp + 0xb0]
mov rdx, qword [rbp + 0x88]
test rdx, rdx
je 0x180194201
mov rcx, qword [rbp + 0x90]
mov r8d, 1
call fcn.180039420
movaps xmmword [rbp - 0x30], xmm6
mov qword [rbp - 0x20], rdi
lea rcx, [rbp + 0x88]
lea rdx, [rbp + 0x40]
call fcn.1801bf440
mov byte [rbp + 0xff], 1
lea rcx, [rbp + 0xc0]
lea rdx, [rbp - 0x30]
call fcn.1801bf440
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x70], rax
movups xmm0, xmmword [rbp + 0xc0]
movaps xmmword [rbp + 0x60], xmm0
mov byte [rbp + 0xff], 0
lea rcx, [rbp + 0xc0]
lea r8, [rbp + 0x88]
lea r9, [rbp + 0x60]
mov rdx, rbx
call fcn.180191210
mov rdx, qword [rbp + 0xc0]
movabs rax, 0x8000000000000002
cmp rdx, rax
jl 0x180194294
test rdx, rdx
je 0x180194294
mov rcx, qword [rbp + 0xc8]
mov r8d, 1
call fcn.180039420
movaps xmm0, xmmword [rbp + 0x40]
movaps xmmword [rbp + 0xc0], xmm0
mov rax, qword [rbp + 0x50]
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp - 0x20]
mov qword [rbp + 0xe8], rax
movaps xmm1, xmmword [rbp - 0x30]
movups xmmword [rbp + 0xd8], xmm1
movups xmmword [rsi], xmm0
mov rax, qword [rbp + 0xe0]
mov qword [rsi + 0x20], rax
mov rax, qword [rbp + 0xe8]
mov qword [rsi + 0x28], rax
mov rax, qword [rbp + 0xd0]
mov qword [rsi + 0x10], rax
mov rax, qword [rbp + 0xd8]
mov qword [rsi + 0x18], rax
jmp 0x180193276
mov r14d, 1
mov rcx, r14
mov rdx, rbx
mov r8, rdi
call sub.VCRUNTIME140.dll_memcpy
mov rax, qword [rbp + 0x38]
mov qword [rbp + 0xc0], 0
mov qword [rbp + 0xc8], rax
mov qword [rbp + 0xd0], rdi
mov qword [rbp + 0xd8], r14
mov qword [rbp + 0xe0], rdi
lea rcx, [rbp + 0xc0]
call fcn.180193070
lea rcx, [rbp + 0xc0]
lea rdx, [rbp + 0x10]
call fcn.180194870
mov rax, qword [rbp + 0xc0]
movups xmm0, xmmword [rbp + 0xc8]
movaps xmmword [rbp - 0x50], xmm0
mov rcx, qword [rbp + 0xd8]
mov qword [rbp - 0x40], rcx
cmp rax, 4
jne 0x1801943e6
mov rdx, qword [rbp + 0x40]
test rdx, rdx
je 0x18019438a
mov rcx, qword [rbp + 0x48]
mov r8d, 1
call fcn.180039420
mov rax, qword [rbp - 0x40]
mov qword [rbp + 0x50], rax
movaps xmm0, xmmword [rbp - 0x50]
movaps xmmword [rbp + 0x40], xmm0
lea rcx, [rbp + 0x10]
call fcn.180194cf0
lea rcx, [rbp + 0xc0]
lea rdx, [rbp + 0x10]
call fcn.180194c00
cmp dword [rbp + 0xc0], 4
je 0x180193343
mov rax, qword [rbp + 0xe0]
mov qword [rsi + 0x28], rax
movups xmm0, xmmword [rbp + 0xc0]
movups xmm1, xmmword [rbp + 0xd0]
movups xmmword [rsi + 0x18], xmm1
movups xmmword [rsi + 8], xmm0
jmp 0x180193491
mov rcx, qword [rbp + 0xe0]
mov rdx, qword [rbp - 0x40]
mov qword [rsi + 0x20], rdx
movaps xmm0, xmmword [rbp - 0x50]
movups xmmword [rsi + 0x10], xmm0
mov qword [rsi + 8], rax
mov qword [rsi + 0x28], rcx
jmp 0x180193491
mov rdi, qword [rbp + 8]
test rdi, rdi
js 0x180194563
movzx eax, byte [0x1802de561]
mov r15d, 1
mov edx, 1
mov rcx, rdi
call fcn.180039410
test rax, rax
je 0x180194566
mov rbx, rax
mov rcx, rax
mov rdx, qword [rbp - 8]
mov r8, rdi
call sub.VCRUNTIME140.dll_memcpy
xor r13d, r13d
mov rax, rdi
sub rax, 1
cmovae r13, rax
jmp 0x1801944d2
mov rdi, qword [rbp + 8]
test rdi, rdi
js 0x18019458f
movzx eax, byte [0x1802de561]
mov r15d, 1
mov edx, 1
mov rcx, rdi
call fcn.180039410
mov rbx, rax
test rax, rax
jne 0x1801944c3
jmp 0x180194592
mov rdi, qword [rbp + 8]
test rdi, rdi
js 0x18019459f
movzx eax, byte [0x1802de561]
mov r15d, 1
mov edx, 1
mov rcx, rdi
call fcn.180039410
mov rbx, rax
test rax, rax
je 0x1801945a2
mov rcx, rbx
mov rdx, qword [rbp - 8]
mov r8, rdi
call sub.VCRUNTIME140.dll_memcpy
mov rdx, qword [rbp + 0x88]
test rdx, rdx
je 0x1801944f0
mov rcx, qword [rbp + 0x90]
mov r8d, 1
call fcn.180039420
mov rdx, qword [rbp + 0xa0]
test rdx, rdx
je 0x18019450e
mov rcx, qword [rbp + 0xa8]
mov r8d, 1
call fcn.180039420
mov qword [rsi + 8], 0
mov qword [rsi + 0x10], r13
mov qword [rsi + 0x18], rdi
mov qword [rsi + 0x20], rbx
jmp 0x18019348d
xor r15d, r15d
mov rcx, r15
mov rdx, rdi
call fcn.1801ddec0
jmp 0x1801945ad
lea rax, str.C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001fdotenv_0.15.0_srcparse.rsL
mov qword [rsp + 0x20], rax
mov r8d, 1
mov r9, rdx
call fcn.1801de900
jmp 0x1801945ad
xor r15d, r15d
mov rcx, r15
mov rdx, rdi
call fcn.1801ddec0
jmp 0x1801945ad
xor r15d, r15d
mov rcx, r15
mov rdx, rdi
call fcn.1801ddec0
jmp 0x1801945ad
lea rax, str.C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001fdotenv_0.15.0_srcparse.rsL
mov qword [rsp + 0x20], rax
mov r8d, 1
mov r9, rdx
call fcn.1801de900
jmp 0x1801945ad
xor r15d, r15d
mov rcx, r15
mov rdx, rdi
call fcn.1801ddec0
jmp 0x1801945ad
xor r15d, r15d
mov rcx, r15
mov rdx, rdi
call fcn.1801ddec0
ud2