Function at 0x1800447e0
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 8], rbx
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1f]
sub rsp, 0xb0
mov r12d, r9d
mov rdi, r8
mov r13, rcx
lea eax, [r9 - 0xa]
mov dword [rbp - 0x39], eax
mov esi, dword [rbp + 0x77]
cmp r9d, eax
jbe case.0x18004485c.219
lea r9, [0x180000000]
mov r8d, 4
lea r14d, [r8 + 0x2c]
nop dword [rax + rax]
lea eax, [r12 - 0xd6]
cmp eax, 0x15
ja case.0x18004485c.215
mov ecx, dword [r9 + rax*4 + 0x45980]
add rcx, r9
jmp rcx
mov dword [r13 + 0x124], 0
mov esi, 1
jmp case.0x18004485c.215
mov dword [r13 + 0x120], 0
jmp case.0x18004485c.215
mov dword [rbp - 0x4d], 0
jmp case.0x18004485c.215
mov eax, dword [rdi]
mov dword [r13 + 0x78], eax
jmp case.0x18004485c.215
mov qword [rbp - 1], rdi
mov rax, qword [rbp + 0x7f]
mov rcx, qword [rax]
add rcx, rdi
mov qword [rbp - 0x31], rcx
mov qword [rbp - 0x59], rdi
mov dword [rbp - 0x41], 0
mov dword [rbp + 0x77], 0
mov dword [rbp - 0x49], 1
lea rax, [rbp + 0x77]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r13
lea r9, [rbp - 0x49]
mov r8d, 0xb9
lea rdx, [0x180060934]
lea rcx, [rbp - 0x41]
call fcn.18002b1e0
test eax, eax
jne 0x18004492e
mov ecx, 0x11d
mov eax, ecx
sub eax, 0x11d
je 0x180044921
cmp eax, 0x7b
jne 0x180044923
mov eax, esi
mov rbx, qword [rsp + 0xf0]
add rsp, 0xb0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
xor esi, esi
add ecx, 0x7b
cmp ecx, 0x213
jb 0x1800448f6
mov r14d, 0x30
mov rdx, qword [rbp + 0x67]
mov r8d, 4
lea r9, [0x180000000]
dec r12d
mov dword [rbp + 0x77], r12d
cmp r12d, dword [rbp - 0x39]
jbe case.0x18004485c.219
jmp 0x180044840
mov dword [rbp - 0x49], 0
mov dword [rbp + 0x77], 0
mov dword [rbp - 0x41], 0
lea rax, [rbp + 0x77]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r13
lea r9, [rbp - 0x41]
mov r8d, 0xb9
lea rdx, [0x180060934]
lea rcx, [rbp - 0x49]
call fcn.18002b1e0
test eax, eax
jne 0x180044934
mov eax, 0x19
nop dword [rax]
cmp eax, 0x19
je 0x1800449b2
cmp eax, 0xa28
je case.0x18004485c.219
jmp 0x1800449b4
xor esi, esi
add eax, 0xa0f
cmp eax, 0x141e
jbe 0x1800449a0
jmp 0x180044934
mov r14, qword [r13]
mov r12, qword [r13 + 8]
cmp r14, r12
je 0x18004595b
nop word [rax + rax]
mov r15, qword [rdi]
mov rbx, qword [r15 + 8]
mov qword [rbp - 0x21], rbx
mov dword [rbp - 0x19], 0
mov rdi, r15
cmp byte [rbx + 0x19], 0
jne 0x180044a37
nop dword [rax + rax]
mov qword [rbp - 0x21], rbx
lea rcx, [rbx + 0x20]
mov rdx, r14
call fcn.180029300
shr eax, 0x1f
test al, al
je 0x180044a24
mov dword [rbp - 0x19], 0
mov rbx, qword [rbx + 0x10]
jmp 0x180044a31
mov dword [rbp - 0x19], 1
mov rdi, rbx
mov rbx, qword [rbx]
cmp byte [rbx + 0x19], 0
je 0x180044a00
cmp byte [rdi + 0x19], 0
jne 0x180044a50
lea rdx, [rdi + 0x20]
mov rcx, r14
call fcn.180029300
shr eax, 0x1f
test al, al
je 0x180044ac3
mov rdi, qword [rbp + 0x6f]
movabs rax, 0x3ffffffffffffff
cmp qword [rdi + 8], rax
je 0x18004597a
mov qword [rbp + 7], rdi
mov qword [rbp + 0xf], 0
mov ecx, 0x40
call fcn.18005cb78
mov rbx, rax
mov qword [rbp + 0xf], rax
lea rcx, [rax + 0x20]
mov rdx, r14
call fcn.180002b90
mov qword [rbx], r15
mov qword [rbx + 8], r15
mov qword [rbx + 0x10], r15
mov word [rbx + 0x18], 0
mov qword [rbp + 0xf], 0
movups xmm0, xmmword [rbp - 0x21]
movaps xmmword [rbp - 0x21], xmm0
mov r8, rbx
lea rdx, [rbp - 0x21]
mov rcx, rdi
call fcn.180024f50
jmp 0x180044ac7
mov rdi, qword [rbp + 0x6f]
add r14, 0x28
cmp r14, r12
jne 0x1800449e0
mov r12d, dword [rbp + 0x77]
jmp 0x18004492e
mov rdi, qword [rbp - 0x59]
mov r15, qword [rbp - 0x31]
cmp rdi, r15
je 0x18004596a
nop
mov rbx, rdi
movzx ecx, byte [rdi]
cmp cl, 0xa
je 0x180044ba2
lea eax, [rcx - 0x20]
cmp al, 0x5e
jbe 0x180044ba2
cmp cl, 0xc2
jne 0x180044b19
cmp byte [rdi + 1], 0xa0
jae 0x180044ba2
lea eax, [rcx + 0x3d]
cmp al, 0x29
jbe 0x180044ba2
cmp cl, 0xed
jne 0x180044b2f
cmp byte [rdi + 1], 0xa0
jb 0x180044ba2
cmp cl, 0xee
je 0x180044ba2
cmp cl, 0xef
jne 0x180044b47
movzx eax, byte [rdi + 1]
cmp al, 0xbb
jne 0x180044b94
cmp byte [rdi + 2], 0xbf
jne 0x180044ba2
mov r15d, 1
nop dword [rax]
cmp r15d, 0x18a
ja 0x18004591d
je 0x1800450b4
mov eax, r15d
sub eax, 1
je 0x18004505f
sub eax, 0x83
je 0x180044fb5
cmp eax, 0x83
jne 0x18004529c
mov eax, dword [rbp - 0x5d]
add rdi, rax
mov qword [rbp - 0x59], rdi
jmp 0x18004529c
cmp al, 0xbf
jne 0x180044ba2
movzx eax, byte [rdi + 2]
add al, 0x42
cmp al, 1
jbe 0x180044b47
cmp dword [r13 + 0x88], 0
jne 0x180044bb1
cmp cl, 0x7f
ja 0x180044b47
cmp cl, 0xef
jne 0x180044bc2
cmp byte [rdi + 1], 0xbb
jne 0x180044bc2
cmp byte [rdi + 2], 0xbf
je 0x180044b47
cmp cl, 0xd
je 0x180044b47
cmp cl, 0xa
je 0x180044b47
cmp cl, 0xc2
jne 0x180044be3
cmp byte [rdi + 1], 0x85
je 0x180044b47
cmp cl, 0xe2
jne 0x180044c08
movzx eax, byte [rdi + 1]
cmp al, 0x80
jne 0x180044c08
cmp byte [rdi + 2], 0xa8
je 0x180044b47
cmp al, al
jne 0x180044c08
cmp byte [rdi + 2], 0xa9
je 0x180044b47
cmp cl, 0x22
je 0x180044b47
cmp cl, 0x5c
je 0x180044b47
cmp cl, 0x20
jne 0x180044e7d
cmp dword [rdx], 0
je 0x180044d66
cmp dword [rbp - 0x4d], 0
jne 0x180044d66
mov eax, dword [r13 + 0x84]
cmp dword [r13 + 0x11c], eax
jle 0x180044d66
cmp rbx, qword [rbp - 1]
je 0x180044d66
lea rax, [r15 - 1]
cmp rbx, rax
je 0x180044d66
mov edi, 0x11c
mov r14, rbx
mov qword [rbp - 0x59], rbx
nop dword [rax]
mov eax, edi
sub eax, 0x11b
je 0x180044cbe
cmp eax, 1
jne 0x180044d42
mov rdx, r13
mov ecx, 0xbc
call fcn.18001f7a0
test eax, eax
jne 0x180044d42
mov ecx, 0x34
nop dword [rax]
mov eax, ecx
sub eax, 0x33
je case.0x18004485c.219
cmp eax, 1
jne 0x180044cb2
xor esi, esi
dec ecx
cmp ecx, 0x32
ja 0x180044ca0
jmp 0x180044d42
cmp byte [r14 + 1], 0x20
jne 0x180044d00
mov rax, qword [r13 + 0x48]
add rax, 5
cmp rax, qword [r13 + 0x40]
jb 0x180044cee
mov edx, reloc.SHELL32.dll_SHSetFolderPathA
mov rcx, r13
call fcn.180048880
test eax, eax
je 0x180045973
mov r8d, 4
mov rax, qword [r13 + 0x48]
mov byte [rax], 0x5c
inc qword [r13 + 0x48]
inc dword [r13 + 0x11c]
movzx ecx, byte [r14]
test cl, cl
js 0x180044d0f
mov eax, 1
jmp 0x180044d3b
movzx eax, cl
and al, 0xe0
cmp al, 0xc0
jne 0x180044d1f
mov eax, 2
jmp 0x180044d3b
movzx eax, cl
and al, 0xf0
cmp al, 0xe0
jne 0x180044d2f
mov eax, 3
jmp 0x180044d3b
and cl, 0xf8
xor eax, eax
cmp cl, 0xf0
cmove rax, r8
add r14, rax
mov qword [rbp - 0x59], r14
dec edi
cmp edi, 0x11a
mov r8d, 4
ja 0x180044c70
mov dword [rbp - 0x4d], 1
mov rdi, qword [rbp - 0x59]
jmp 0x1800452be
mov rax, qword [r13 + 0x48]
add rax, 5
cmp rax, qword [r13 + 0x40]
jb 0x180044dbf
mov edx, reloc.SHELL32.dll_SHSetFolderPathA
mov rcx, r13
call fcn.180048880
test eax, eax
jne 0x180044dbf
mov eax, 0x48
nop word [rax + rax]
cmp eax, 0x48
je 0x180044da0
cmp eax, 0x6b
je case.0x18004485c.219
jmp 0x180044da2
xor esi, esi
add eax, 0x23
cmp eax, 0x8e
jb 0x180044d90
mov qword [rbp - 0x59], rbx
mov dword [rbp - 0x4d], 1
mov rdi, rbx
jmp 0x1800452be
movzx ecx, byte [rdi]
test cl, cl
js 0x180044dd5
mov rax, qword [r13 + 0x48]
mov byte [rax], cl
lea r14, [rdi + 1]
jmp 0x180044e5e
movzx eax, cl
and al, 0xe0
cmp al, 0xc0
jne 0x180044df2
mov rax, qword [r13 + 0x48]
mov byte [rax], cl
inc qword [r13 + 0x48]
movzx eax, byte [rdi + 1]
lea r14, [rdi + 2]
jmp 0x180044e58
movzx eax, cl
and al, 0xf0
cmp al, 0xe0
jne 0x180044e1d
mov rax, qword [r13 + 0x48]
mov byte [rax], cl
inc qword [r13 + 0x48]
mov rcx, qword [r13 + 0x48]
movzx eax, byte [rdi + 1]
mov byte [rcx], al
inc qword [r13 + 0x48]
movzx eax, byte [rdi + 2]
lea r14, [rdi + 3]
jmp 0x180044e58
mov qword [rbp - 0x59], rbx
movzx eax, cl
and al, 0xf8
cmp al, 0xf0
jne 0x180044e66
mov rax, qword [r13 + 0x48]
mov byte [rax], cl
inc qword [r13 + 0x48]
mov rcx, qword [r13 + 0x48]
movzx eax, byte [rdi + 1]
mov byte [rcx], al
inc qword [r13 + 0x48]
mov rcx, qword [r13 + 0x48]
movzx eax, byte [rdi + 2]
mov byte [rcx], al
inc qword [r13 + 0x48]
movzx eax, byte [rdi + 3]
lea r14, [rdi + 4]
mov rcx, qword [r13 + 0x48]
mov byte [rcx], al
mov qword [rbp - 0x59], r14
inc qword [r13 + 0x48]
inc dword [r13 + 0x11c]
mov dword [rbp - 0x4d], 1
mov rdi, qword [rbp - 0x59]
jmp 0x1800452be
mov ebx, 0x4a
cmp ebx, 0x4a
jne 0x180044f9e
mov rax, qword [r13 + 0x48]
add rax, 5
cmp rax, qword [r13 + 0x40]
jb 0x180044ed6
mov edx, reloc.SHELL32.dll_SHSetFolderPathA
mov rcx, r13
call fcn.180048880
test eax, eax
jne 0x180044ed6
mov ecx, 0xf4
nop
mov eax, ecx
sub eax, 0xf4
je 0x180044ec4
cmp eax, 0x7c
je case.0x18004485c.219
jmp 0x180044ec6
xor esi, esi
add ecx, 0x7c
cmp ecx, 0x1ec
jb 0x180044eb0
jmp 0x180044f97
movzx ecx, byte [rdi]
test cl, cl
js 0x180044eef
mov rax, qword [r13 + 0x48]
mov byte [rax], cl
inc qword [r13 + 0x48]
inc rdi
jmp 0x180044f8c
movzx eax, cl
and al, 0xe0
cmp al, 0xc0
jne 0x180044f16
mov rax, qword [r13 + 0x48]
mov byte [rax], cl
inc qword [r13 + 0x48]
mov rcx, qword [r13 + 0x48]
movzx eax, byte [rdi + 1]
mov byte [rcx], al
inc qword [r13 + 0x48]
add rdi, 2
jmp 0x180044f8c
movzx eax, cl
and al, 0xf0
cmp al, 0xe0
jne 0x180044f4b
mov rax, qword [r13 + 0x48]
mov byte [rax], cl
inc qword [r13 + 0x48]
mov rcx, qword [r13 + 0x48]
movzx eax, byte [rdi + 1]
mov byte [rcx], al
inc qword [r13 + 0x48]
mov rcx, qword [r13 + 0x48]
movzx eax, byte [rdi + 2]
mov byte [rcx], al
inc qword [r13 + 0x48]
add rdi, 3
jmp 0x180044f8c
movzx eax, cl
and al, 0xf8
cmp al, 0xf0
jne 0x180044f90
mov rax, qword [r13 + 0x48]
mov byte [rax], cl
inc qword [r13 + 0x48]
mov rcx, qword [r13 + 0x48]
movzx eax, byte [rdi + 1]
mov byte [rcx], al
inc qword [r13 + 0x48]
mov rcx, qword [r13 + 0x48]
movzx eax, byte [rdi + 2]
mov byte [rcx], al
inc qword [r13 + 0x48]
mov rcx, qword [r13 + 0x48]
movzx eax, byte [rdi + 3]
mov byte [rcx], al
inc qword [r13 + 0x48]
add rdi, 4
mov qword [rbp - 0x59], rdi
inc dword [r13 + 0x11c]
mov dword [rbp - 0x4d], 0
add ebx, 0x1a4e
cmp ebx, 0x1a4e
jbe 0x180044e82
jmp 0x1800452be
movzx r11d, byte [rbp - 0x61]
test r11b, r11b
js 0x180044fc8
mov r10d, r11d
and r10d, 0x7f
jmp 0x180045004
movzx eax, r11b
and al, 0xe0
cmp al, 0xc0
jne 0x180044fdb
mov r10d, r11d
and r10d, 0x1f
jmp 0x180045004
movzx eax, r11b
and al, 0xf0
cmp al, 0xe0
jne 0x180044fee
mov r10d, r11d
and r10d, 0xf
jmp 0x180045004
movzx eax, r11b
and al, 0xf8
cmp al, 0xf0
jne 0x180045001
mov r10d, r11d
and r10d, 7
jmp 0x180045004
xor r10d, r10d
mov dword [rbp - 0x51], r10d
mov ecx, dword [rbp - 0x5d]
cmp ecx, 1
jle 0x18004529c
lea r8, [rdi + 1]
lea r9d, [rcx - 1]
nop dword [rax]
mov edx, 0xc1
cmp edx, 0xc1
jne 0x180045042
movzx r11d, byte [r8]
mov byte [rbp - 0x61], r11b
mov ecx, r11d
and ecx, 0x3f
shl r10d, 6
add r10d, ecx
add edx, 0x21
cmp edx, 0xe2
jb 0x180045025
mov dword [rbp - 0x51], r10d
inc r8
sub r9, 1
jne 0x180045020
jmp 0x18004529c
movzx ecx, byte [rdi]
mov byte [rbp - 0x61], cl
test cl, cl
js 0x180045075
mov dword [rbp - 0x5d], 1
jmp 0x18004529c
movzx eax, cl
and al, 0xe0
cmp al, 0xc0
jne 0x18004508a
mov dword [rbp - 0x5d], 2
jmp 0x18004529c
movzx eax, cl
and al, 0xf0
cmp al, 0xe0
jne 0x18004509f
mov dword [rbp - 0x5d], 3
jmp 0x18004529c
movzx eax, cl
and al, 0xf8
xor ecx, ecx
cmp al, 0xf0
cmove ecx, r8d
mov dword [rbp - 0x5d], ecx
jmp 0x18004529c
mov rax, qword [r13 + 0x48]
add rax, 5
cmp rax, qword [r13 + 0x40]
jb 0x1800450fb
mov edx, reloc.SHELL32.dll_SHSetFolderPathA
mov rcx, r13
call fcn.180048880
test eax, eax
jne 0x1800450fb
mov ecx, 8
nop dword [rax + rax]
mov eax, ecx
sub eax, 7
je case.0x18004485c.219
cmp eax, 1
jne 0x1800450f2
xor esi, esi
dec ecx
cmp ecx, 6
ja 0x1800450e0
jmp 0x18004510d
mov rax, qword [r13 + 0x48]
mov byte [rax], 0x5c
inc qword [r13 + 0x48]
inc dword [r13 + 0x11c]
mov edi, esi
mov ebx, esi
mov r12d, dword [rbp - 0x51]
cmp r12d, 0x2028
ja 0x1800456bf
je 0x18004565e
cmp r12d, 0xa0
ja case.0x180045150.1
lea r9, [0x180000000]
movzx eax, byte [r9 + r12 + 0x45a10]
mov ecx, dword [r9 + rax*4 + 0x459d8]
add rcx, r9
jmp rcx
mov ebx, 0x10f
nop word [rax + rax]
mov eax, ebx
sub eax, 0x10e
je 0x180045292
cmp eax, 1
jne 0x1800451ca
mov rax, qword [r13 + 0x48]
add rax, 5
cmp rax, qword [r13 + 0x40]
jb 0x1800451b8
mov edx, reloc.SHELL32.dll_SHSetFolderPathA
mov rcx, r13
call fcn.180048880
test eax, eax
jne 0x1800451b8
mov ecx, 0x94
mov eax, ecx
sub eax, 0x94
je 0x1800451aa
cmp eax, 1
je case.0x18004485c.219
jmp 0x1800451ac
xor esi, esi
inc ecx
cmp ecx, 0x96
jb 0x180045196
jmp 0x1800451ca
mov rax, qword [r13 + 0x48]
mov byte [rax], 0x30
inc qword [r13 + 0x48]
inc dword [r13 + 0x11c]
dec ebx
cmp ebx, 0x10d
ja 0x180045160
mov ebx, reloc.SHELL32.dll_ILClone
nop dword [rax]
mov eax, ebx
sub eax, 0x12
je 0x1800451f2
cmp eax, 1
je 0x180045292
jmp 0x180045227
mov rax, qword [r13 + 0x48]
add rax, 5
cmp rax, qword [r13 + 0x40]
jb 0x180045215
mov edx, reloc.SHELL32.dll_SHSetFolderPathA
mov rcx, r13
call fcn.180048880
test eax, eax
je 0x180045973
mov rax, qword [r13 + 0x48]
mov byte [rax], 0x61
inc qword [r13 + 0x48]
inc dword [r13 + 0x11c]
inc ebx
cmp ebx, 0x14
jb 0x1800451e0
nop
mov rax, qword [r13 + 0x48]
add rax, 5
cmp rax, qword [r13 + 0x40]
jb 0x180045280
mov edx, reloc.SHELL32.dll_SHSetFolderPathA
mov rcx, r13
call fcn.180048880
test eax, eax
jne 0x180045280
mov ecx, reloc.SHELL32.dll_ILAppendID
nop dword [rax]
nop dword [rax + rax]
mov eax, ecx
sub eax, 0x99
je case.0x18004485c.219
cmp eax, 1
jne 0x180045274
xor esi, esi
dec ecx
cmp ecx, 0x98
ja 0x180045260
jmp 0x180045292
mov rax, qword [r13 + 0x48]
mov byte [rax], 0x62
inc qword [r13 + 0x48]
inc dword [r13 + 0x11c]
mov r12d, dword [rbp + 0x77]
mov r15d, 0x20d
add r15d, 0x83
cmp r15d, 0x396
mov rdi, qword [rbp - 0x59]
mov r8d, 4
jb 0x180044b50
mov r15, qword [rbp - 0x31]
cmp rdi, r15
mov rdx, qword [rbp + 0x67]
mov r14d, 0x30
lea r8d, [r14 - 0x2c]
jne 0x180044af0
mov rdi, qword [rbp + 0x6f]
jmp 0x18004493e
mov eax, 0x6d
cmp eax, 0x6d
je 0x180045306
add eax, 0x4a
cmp eax, 0xb7
jb 0x1800452e3
mov ebx, PathMakeUniqueName
cmp ebx, 0x2d
je 0x180045335
cmp ebx, 0xc4
je 0x180045292
jmp 0x18004536a
mov rax, qword [r13 + 0x48]
add rax, 5
cmp rax, qword [r13 + 0x40]
jb 0x180045329
mov edx, reloc.SHELL32.dll_SHSetFolderPathA
mov rcx, r13
call fcn.180048880
test eax, eax
je 0x180045973
mov rax, qword [r13 + 0x48]
mov byte [rax], 0x74
jmp 0x180045287
mov rax, qword [r13 + 0x48]
add rax, 5
cmp rax, qword [r13 + 0x40]
jb 0x180045358
mov edx, reloc.SHELL32.dll_SHSetFolderPathA
mov rcx, r13
call fcn.180048880
test eax, eax
je 0x180045973
mov rax, qword [r13 + 0x48]
mov byte [rax], 0x6e
inc qword [r13 + 0x48]
inc dword [r13 + 0x11c]
add ebx, 0x97
cmp ebx, 0x15b
jb 0x1800452f7
nop dword [rax]
mov rax, qword [r13 + 0x48]
add rax, 5
cmp rax, qword [r13 + 0x40]
jb 0x1800453cb
mov edx, reloc.SHELL32.dll_SHSetFolderPathA
mov rcx, r13
call fcn.180048880
test eax, eax
jne 0x1800453cb
mov eax, SHSetInstanceExplorer
cmp eax, 0xae
je 0x1800453b8
cmp eax, 0x41ee
je case.0x18004485c.219
jmp 0x1800453ba
xor esi, esi
add eax, 0x4140
cmp eax, 0x8280
jbe 0x1800453a4
jmp 0x180045292
mov rax, qword [r13 + 0x48]
mov byte [rax], 0x76
jmp 0x180045287
mov ebx, 0x4e
nop dword [rax]
cmp ebx, 0x4e
je 0x1800453f5
mov esi, edi
cmp ebx, 0x33cc
je 0x180045292
jmp 0x18004542a
mov rax, qword [r13 + 0x48]
add rax, 5
cmp rax, qword [r13 + 0x40]
jb 0x180045418
mov edx, reloc.SHELL32.dll_SHSetFolderPathA
mov rcx, r13
call fcn.180048880
test eax, eax
je 0x180045973
mov rax, qword [r13 + 0x48]
mov byte [rax], 0x66
inc qword [r13 + 0x48]
inc dword [r13 + 0x11c]
add ebx, 0x337e
cmp ebx, 0x66fc
jbe 0x1800453e0
mov esi, edi
mov eax, 0xde
nop
cmp eax, 0xde
je 0x180045496
add eax, 0x15ae
cmp eax, 0x15ae
jbe 0x180045440
nop dword [rax]
nop word [rax + rax]
mov rax, qword [r13 + 0x48]
add rax, 5
cmp rax, qword [r13 + 0x40]
jb 0x1800454d3
mov edx, reloc.SHELL32.dll_SHSetFolderPathA
mov rcx, r13
call fcn.180048880
test eax, eax
jne 0x1800454d3
mov ecx, 0x37
mov eax, ecx
sub eax, 0x37
je 0x1800454c5
cmp eax, 1
je case.0x18004485c.219
jmp 0x1800454c7
mov rax, qword [r13 + 0x48]
add rax, 5
cmp rax, qword [r13 + 0x40]
jb 0x1800454b9
mov edx, reloc.SHELL32.dll_SHSetFolderPathA
mov rcx, r13
call fcn.180048880
test eax, eax
je 0x180045973
mov rax, qword [r13 + 0x48]
mov byte [rax], 0x72
jmp 0x180045287
xor esi, esi
inc ecx
cmp ecx, 0x39
jb 0x180045484
jmp 0x180045292
mov rax, qword [r13 + 0x48]
mov byte [rax], 0x65
jmp 0x180045287
mov eax, r14d
cmp eax, 0x30
je 0x180045517
add eax, 0x210
cmp eax, 0x210
jbe 0x1800454e2
mov ebx, 0x87
nop dword [rax + rax]
mov eax, ebx
sub eax, 0x87
je 0x180045546
cmp eax, 1
je 0x180045292
jmp 0x18004559d
mov rax, qword [r13 + 0x48]
add rax, 5
cmp rax, qword [r13 + 0x40]
jb 0x18004553a
mov edx, reloc.SHELL32.dll_SHSetFolderPathA
mov rcx, r13
call fcn.180048880
test eax, eax
je 0x180045973
mov rax, qword [r13 + 0x48]
mov byte [rax], 0x22
jmp 0x180045287
mov rax, qword [r13 + 0x48]
add rax, 5
cmp rax, qword [r13 + 0x40]
jb 0x18004558b
mov edx, reloc.SHELL32.dll_SHSetFolderPathA
mov rcx, r13
call fcn.180048880
test eax, eax
jne 0x18004558b
mov ecx, 0x5c
nop word [rax + rax]
mov eax, ecx
sub eax, 0x5b
je case.0x18004485c.219
cmp eax, 1
jne 0x180045582
xor esi, esi
dec ecx
cmp ecx, 0x5a
ja 0x180045570
jmp 0x18004559d
mov rax, qword [r13 + 0x48]
mov byte [rax], 0x5c
inc qword [r13 + 0x48]
inc dword [r13 + 0x11c]
inc ebx
cmp ebx, 0x89
jb 0x180045500
nop dword [rax + rax]
mov rax, qword [r13 + 0x48]
add rax, 5
cmp rax, qword [r13 + 0x40]
jb 0x1800455f8
mov edx, reloc.SHELL32.dll_SHSetFolderPathA
mov rcx, r13
call fcn.180048880
test eax, eax
jne 0x1800455f8
mov ecx, 0x42
mov eax, ecx
sub eax, 0x42
je 0x1800455e6
cmp eax, 0x52
je case.0x18004485c.219
jmp 0x1800455e8
xor esi, esi
add ecx, 0x52
cmp ecx, 0xe6
jb 0x1800455d4
jmp 0x180045292
mov rax, qword [r13 + 0x48]
mov byte [rax], 0x4e
jmp 0x180045287
mov rax, qword [r13 + 0x48]
add rax, 5
cmp rax, qword [r13 + 0x40]
jb 0x180045652
mov edx, reloc.SHELL32.dll_SHSetFolderPathA
mov rcx, r13
call fcn.180048880
test eax, eax
jne 0x180045652
mov ecx, 0x77
mov eax, ecx
sub eax, 0x76
je case.0x18004485c.219
cmp eax, 1
jne 0x180045646
xor esi, esi
dec ecx
cmp ecx, 0x75
ja 0x180045634
jmp 0x180045292
mov rax, qword [r13 + 0x48]
mov byte [rax], 0x5f
jmp 0x180045287
mov edi, 0x1f
cmp edi, 0x1f
je 0x180045678
mov esi, ebx
cmp edi, 0x1629
je 0x180045292
jmp 0x1800456ad
mov rax, qword [r13 + 0x48]
add rax, 5
cmp rax, qword [r13 + 0x40]
jb 0x18004569b
mov edx, reloc.SHELL32.dll_SHSetFolderPathA
mov rcx, r13
call fcn.180048880
test eax, eax
je 0x180045973
mov rax, qword [r13 + 0x48]
mov byte [rax], 0x4c
inc qword [r13 + 0x48]
inc dword [r13 + 0x11c]
add edi, 0x160a
cmp edi, 0x2c14
jbe 0x180045663
mov esi, ebx
jmp 0x1800456cc
cmp r12d, 0x2029
jne case.0x180045150.1
mov ebx, 0x6f
mov eax, ebx
sub eax, 0x6f
je 0x1800456e3
cmp eax, 0x1a
je 0x180045292
jmp 0x18004573d
mov rax, qword [r13 + 0x48]
add rax, 5
cmp rax, qword [r13 + 0x40]
jb 0x18004572b
mov edx, reloc.SHELL32.dll_SHSetFolderPathA
mov rcx, r13
call fcn.180048880
test eax, eax
jne 0x18004572b
mov ecx, 0x5d
nop word [rax + rax]
mov eax, ecx
sub eax, 0x5c
je case.0x18004485c.219
cmp eax, 1
jne 0x180045722
xor esi, esi
dec ecx
cmp ecx, 0x5b
ja 0x180045710
jmp 0x18004573d
mov rax, qword [r13 + 0x48]
mov byte [rax], 0x50
inc qword [r13 + 0x48]
inc dword [r13 + 0x11c]
add ebx, 0x1a
cmp ebx, 0xa3
jb 0x1800456d1
mov r14d, 0xbb
nop
cmp r14d, 0xbb
jne 0x1800458fa
cmp r12d, 0xff
ja 0x1800457c9
mov ebx, 0x79
nop dword [rax + rax]
mov eax, ebx
sub eax, 0x78
je 0x1800457b3
cmp eax, 1
jne 0x1800457ba
mov rax, qword [r13 + 0x48]
add rax, 5
cmp rax, qword [r13 + 0x40]
jb 0x18004579f
mov edx, reloc.SHELL32.dll_SHSetFolderPathA
mov rcx, r13
call fcn.180048880
test eax, eax
je 0x180045973
mov rax, qword [r13 + 0x48]
mov byte [rax], 0x78
inc qword [r13 + 0x48]
inc dword [r13 + 0x11c]
jmp 0x1800457ba
mov dword [rbp - 0x5d], 2
dec ebx
cmp ebx, 0x77
ja 0x180045770
mov ecx, dword [rbp - 0x5d]
jmp 0x18004586b
cmp r12d, 0xffff
ja 0x180045811
mov rax, qword [r13 + 0x48]
add rax, 5
cmp rax, qword [r13 + 0x40]
jb 0x1800457f5
mov edx, reloc.SHELL32.dll_SHSetFolderPathA
mov rcx, r13
call fcn.180048880
test eax, eax
je 0x180045973
mov rax, qword [r13 + 0x48]
mov byte [rax], 0x75
inc qword [r13 + 0x48]
inc dword [r13 + 0x11c]
mov ecx, 4
mov dword [rbp - 0x5d], ecx
jmp 0x18004586b
mov ebx, 0x6f
mov eax, ebx
sub eax, 0x6f
je 0x18004582c
cmp eax, 1
jne 0x180045861
mov ecx, 8
mov dword [rbp - 0x5d], ecx
jmp 0x180045864
mov rax, qword [r13 + 0x48]
add rax, 5
cmp rax, qword [r13 + 0x40]
jb 0x18004584f
mov edx, reloc.SHELL32.dll_SHSetFolderPathA
mov rcx, r13
call fcn.180048880
test eax, eax
je 0x180045973
mov rax, qword [r13 + 0x48]
mov byte [rax], 0x55
inc qword [r13 + 0x48]
inc dword [r13 + 0x11c]
mov ecx, dword [rbp - 0x5d]
inc ebx
cmp ebx, 0x71
jb 0x180045816
lea edi, [rcx*4 - 4]
test edi, edi
js 0x1800458fa
nop word [rax + rax]
mov ebx, r12d
mov ecx, edi
shr ebx, cl
and ebx, 0xf
mov rax, qword [r13 + 0x48]
add rax, 5
cmp rax, qword [r13 + 0x40]
jb 0x1800458d2
mov edx, reloc.SHELL32.dll_SHSetFolderPathA
mov rcx, r13
call fcn.180048880
test eax, eax
jne 0x1800458d2
mov eax, 0x6f
nop
cmp eax, 0x6f
je 0x1800458c2
cmp eax, 0x22b0
je case.0x18004485c.219
jmp 0x1800458c4
xor esi, esi
add eax, 0x2241
cmp eax, 0x4482
jbe 0x1800458b0
jmp 0x1800458f5
mov ecx, 0x37
cmp ebx, 0xa
mov eax, 0x30
cmovb ecx, eax
add cl, bl
mov rax, qword [r13 + 0x48]
mov byte [rax], cl
inc qword [r13 + 0x48]
inc dword [r13 + 0x11c]
sub edi, 4
jns 0x180045880
add r14d, 0x10cd
cmp r14d, 0x10cd
jbe 0x180045750
mov r12d, dword [rbp + 0x77]
mov r14d, 0x30
jmp 0x18004529c
cmp r15d, 0x20d
je 0x180045296
cmp r15d, 0x290
je 0x18004594c
cmp r15d, 0x313
jne 0x18004529c
mov dword [rbp - 0x4d], 0
jmp 0x18004529c
mov r12d, 0xdf
mov dword [rbp + 0x77], r12d
jmp 0x18004529c
mov r12d, dword [rbp + 0x77]
mov r14d, 0x30
jmp case.0x18004485c.215
mov rdi, qword [rbp + 0x6f]
jmp case.0x18004485c.215
xor eax, eax
jmp 0x180044906
call fcn.180025280
int3