Function at 0x18002ed60
Capabilities:
Encode data using base64
Read file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x3c0]
sub rsp, 0x4c0
mov rax, qword [0x180089b10]
xor rax, rsp
mov qword [rbp + 0x3b0], rax
mov r11d, dword [rbp + 0x430]
mov r13, r9
movzx r10d, byte [rsp + 0x40]
mov r9, r8
mov r15d, dword [rsp + 0x48]
mov rax, rdx
mov qword [rsp + 0x58], r8
xor edi, edi
mov rbx, qword [rsp + 0x58]
mov r8, rcx
mov r14, qword [rsp + 0x58]
mov esi, r11d
mov r12, qword [rsp + 0x58]
mov qword [rsp + 0x68], rcx
imul ecx, r11d, 0x4ec
mov qword [rsp + 0x70], rdx
mov rdx, qword [rbp + 0x420]
mov qword [rsp + 0x78], rdx
mov qword [rsp + 0x60], rbx
mov dword [rsp + 0x44], ecx
mov byte [rsp + 0x40], r10b
cmp r11d, ecx
ja 0x18002f315
mov dword [rsp + 0x48], r15d
mov r15d, dword [rsp + 0x48]
nop word [rax + rax]
cmp esi, 0x2fb1
ja 0x18002f0b4
je 0x18002f0ad
cmp esi, 0x17e7
ja 0x18002f081
je 0x18002ef05
cmp esi, 0x1d
je 0x18002f066
cmp esi, 0x4e
je 0x18002f05d
cmp esi, 0xc02
jne 0x18002f1d5
mov rax, qword [rax + 0x700]
movsxd rcx, dword [r9]
mov edi, dword [rax + rcx*8 + 4]
mov eax, dword [rdx]
and eax, 0xf0
cmp eax, 0xa0
ja case.0x18002ee8d.1
lea rdx, [0x180000000]
cdqe
movzx eax, byte [rdx + rax + 0x2f720]
mov ecx, dword [rdx + rax*4 + 0x2f6f4]
add rcx, rdx
jmp rcx
mov ecx, dword [rsp + 0x44]
add r15d, edi
mov rbx, qword [rsp + 0x60]
mov esi, 0x17e7
jmp 0x18002f1d5
mov ecx, 0xfa
nop dword [rax + rax]
mov eax, ecx
sub eax, 0xf9
je 0x18002ef01
cmp eax, 1
jne 0x18002eec1
sub r15d, edi
dec ecx
cmp ecx, 0xf8
ja 0x18002eeb0
mov eax, 0x112
cmp eax, 0x112
je 0x18002ef14
add eax, 0x2a
cmp eax, 0x13c
jb 0x18002eed0
mov ebx, 0xf0
mov eax, ebx
sub eax, 0xf0
je 0x18002ef2b
cmp eax, 0x2e
jne 0x18002ef48
mov r11d, dword [rbp + 0x430]
movzx r10d, byte [rsp + 0x40]
mov ecx, dword [rsp + 0x44]
mov rbx, qword [rsp + 0x60]
mov esi, 0x17e7
jmp 0x18002f1d5
mov ecx, dword [rsp + 0x44]
mov esi, 0x17e7
mov rbx, qword [rsp + 0x60]
imul r15d, edi
jmp 0x18002f1d5
test edi, edi
jne 0x18002ef3e
lea rdx, str.pfnFHangingPunct
mov rcx, r13
call fcn.1800250a0
mov eax, r15d
xor edx, edx
div edi
mov r15d, eax
add ebx, 0x2e
cmp ebx, 0x14c
jb 0x18002eee6
mov ebx, 0x67
mov eax, ebx
sub eax, 0x67
je 0x18002ef66
cmp eax, 1
je 0x18002eef4
jmp 0x18002ef83
test edi, edi
jne 0x18002ef79
lea rdx, str.llvm.s390.vgfmf
mov rcx, r13
call fcn.1800250a0
mov eax, r15d
xor edx, edx
div edi
mov r15d, edx
inc ebx
cmp ebx, 0x69
jb 0x18002ef58
movzx r10d, byte [rsp + 0x40]
mov r11d, dword [rbp + 0x430]
mov ecx, 0x3f
nop dword [rax]
mov eax, ecx
sub eax, 0x3e
je 0x18002ef01
cmp eax, 1
jne 0x18002efb3
and r15d, edi
dec ecx
cmp ecx, 0x3d
ja 0x18002efa0
mov ecx, 0x19
nop
mov eax, ecx
sub eax, 0x19
je 0x18002efd2
cmp eax, 1
je 0x18002ef01
jmp 0x18002efd5
or r15d, edi
inc ecx
cmp ecx, 0x1b
jb 0x18002efc0
mov eax, 0x41
cmp eax, 0x41
je 0x18002eff3
cmp eax, 0x281e
je 0x18002ef01
jmp 0x18002eff6
xor r15d, edi
add eax, 0x27dd
cmp eax, 0x4fba
jbe 0x18002efe1
nop dword [rax]
nop word [rax + rax]
mov rbx, qword [rsp + 0x60]
mov ecx, edi
shl r15d, cl
mov esi, 0x17e7
mov ecx, dword [rsp + 0x44]
jmp 0x18002f1d5
mov eax, 0x66
nop dword [rax]
cmp eax, 0xe4
jae case.0x18002ee8d.1
cmp eax, 0x66
je 0x18002f045
add eax, 0x7e
jmp 0x18002f030
mov rbx, qword [rsp + 0x60]
mov ecx, edi
shr r15d, cl
mov esi, 0x17e7
mov ecx, dword [rsp + 0x44]
jmp 0x18002f1d5
mov dword [rsp + 0x48], edi
jmp 0x18002f1d5
mov rcx, qword [rbp + 0x428]
mov rax, qword [rax + 0x700]
movsxd rcx, dword [rcx]
mov r15d, dword [rax + rcx*8 + 4]
jmp 0x18002f1d1
cmp esi, 0x204c
je 0x18002f0a0
cmp esi, 0x23cc
jne 0x18002f1d5
mov dword [rdx + 0x18], r15d
mov dword [rdx], edi
jmp 0x18002f1d5
mov rbx, rdi
mov qword [rsp + 0x60], rbx
jmp 0x18002f1d5
mov dword [rax], edi
jmp 0x18002f1d5
cmp esi, 0x404a
je 0x18002f2fe
cmp esi, 0x6048
je 0x18002f2f1
cmp esi, 0x8046
je 0x18002f275
cmp esi, 0xa044
je 0x18002f1fe
cmp esi, 0xc042
jne 0x18002f1d5
lea rdx, [0x180076edc]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fopen]
mov r14, rax
test rax, rax
jne 0x18002f1c4
mov edi, 0xd4
mov eax, edi
sub eax, 0xd4
je 0x18002f176
sub eax, 0x70
je 0x18002f16c
cmp eax, 0x70
jne 0x18002f1b5
mov r15d, dword [rsp + 0x48]
lea r13, [0x180078dbc]
xor esi, esi
test r12, r12
je 0x18002f14d
xor r9d, r9d
mov r8, r12
xor edx, edx
mov ecx, 0xee
call fcn.180066830
movzx r10d, byte [rsp + 0x40]
mov edi, 0x22e
mov r11d, dword [rbp + 0x430]
add edi, 0x30
mov rbx, qword [rsp + 0x60]
jmp 0x18002f321
mov dword [rsp + 0x48], 1
jmp 0x18002f1b5
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov ecx, dword [rax]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_strerror]
mov ecx, 2
mov rbx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8, qword [0x1800929e0]
lea rdx, str.PC_0x_08x_tried_to__s_address_0x_08x
mov qword [rsp + 0x20], rbx
mov rcx, rax
mov rbx, qword [rsp + 0x60]
mov r9, rbx
call fcn.18006f4c0
add edi, 0x70
cmp edi, 0x224
jb 0x18002f111
movzx r10d, byte [rsp + 0x40]
mov r11d, dword [rbp + 0x430]
mov ecx, dword [rsp + 0x44]
imul eax, r11d, 0x69
add esi, eax
cmp esi, ecx
ja 0x18002f310
mov rax, qword [rsp + 0x70]
xor edi, edi
mov rdx, qword [rsp + 0x78]
mov r8, qword [rsp + 0x68]
mov r9, qword [rsp + 0x58]
jmp 0x18002ee10
mov rbx, qword [r8 + 8]
mov edx, 1
mov rcx, rbx
mov qword [rsp + 0x60], rbx
call qword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll__access]
test eax, eax
je 0x18002f1c4
mov rdi, qword [rsp + 0x60]
mov ebx, 0xa9
mov eax, ebx
sub eax, 0xa9
je 0x18002f237
cmp eax, 1
je 0x18002f128
jmp 0x18002f263
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8, qword [0x1800929e0]
lea rdx, str.void_glVertexAttrib1sARB__u___d_
mov rcx, rax
mov r9, rdi
call fcn.18006f4c0
mov dword [rsp + 0x48], 1
inc ebx
cmp ebx, 0xab
jb 0x18002f223
mov rbx, rdi
jmp 0x18002f1c4
lea rax, str.example
mov qword [0x1800929e0], rax
cmp dword [r13], 2
je 0x18002f1d5
mov ebx, 0x74
cmp ebx, 0x74
je 0x18002f2b8
cmp ebx, 0x38a4
je 0x18002f2ae
cmp ebx, 0x70d4
je 0x18002f128
jmp 0x18002f2d9
mov dword [rsp + 0x48], 1
jmp 0x18002f2d9
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8, qword [0x1800929e0]
lea rdx, str._html__behavior:ac
mov rcx, rax
call fcn.18006f4c0
add ebx, 0x3830
cmp ebx, 0xa890
jbe 0x18002f293
mov rbx, qword [rsp + 0x60]
jmp 0x18002f1c4
mov r10b, 9
mov byte [rsp + 0x40], r10b
jmp 0x18002f1d5
mov r14, rdi
mov r12, rdi
jmp 0x18002f1d5
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_abort]
int3
mov r15d, dword [rsp + 0x48]
mov edi, r11d
lea r13, [0x180078dbc]
xor esi, esi
lea eax, [r11 + 0x270]
cmp edi, eax
jae 0x18002f6c5
cmp edi, 0x16e
ja 0x18002f569
je 0x18002f4b8
lea eax, [rdi - 0x4e]
cmp eax, 0xf0
ja case.0x18002f593.415
lea rdx, [0x180000000]
movzx eax, byte [rdx + rax + 0x2f7e0]
mov ecx, dword [rdx + rax*4 + 0x2f7c4]
add rcx, rdx
jmp rcx
mov rbx, qword [rsp + 0x60]
add edi, 0x30
mov dword [rbp - 0x74], esi
mov qword [rbp - 0x70], rsi
jmp 0x18002f321
test r12, r12
jne case.0x18002f593.415
mov ebx, 0x33
nop word [rax + rax]
mov eax, ebx
sub eax, 0x33
je 0x18002f3a4
cmp eax, 1
jne 0x18002f3c5
mov r15d, eax
jmp 0x18002f14d
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8, qword [0x1800929e0]
lea rdx, str.icudt58l_supplementalData.res
mov rcx, rax
call fcn.18006f4c0
inc ebx
cmp ebx, 0x35
jb 0x18002f390
movzx r10d, byte [rsp + 0x40]
add edi, 0x30
mov r11d, dword [rbp + 0x430]
mov rbx, qword [rsp + 0x60]
jmp 0x18002f321
mov rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp byte [rbx + rax], 0
jne 0x18002f3f0
cmp rax, 4
jbe case.0x18002f593.415
lea rdx, [rax + rbx]
mov rcx, rsi
lea r8, [0x180078db8]
movzx eax, byte [rdx + rcx - 3]
inc rcx
cmp al, byte [r8 + rcx - 1]
jne 0x18002f43b
cmp rcx, 4
jne 0x18002f411
mov rbx, qword [rsp + 0x60]
mov r10b, 0x2c
mov byte [rsp + 0x40], r10b
add edi, 0x30
jmp 0x18002f321
mov rcx, rsi
nop
movzx eax, byte [rdx + rcx - 3]
inc rcx
cmp al, byte [rcx + r13 - 1]
jne case.0x18002f593.415
cmp rcx, 4
jne 0x18002f440
mov rbx, qword [rsp + 0x60]
mov r10b, 9
mov byte [rsp + 0x40], r10b
add edi, 0x30
jmp 0x18002f321
xorps xmm0, xmm0
mov qword [rbp - 0x80], rbx
mov rbx, qword [rsp + 0x60]
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x78], xmm0
add edi, 0x30
movdqu xmmword [rbp - 0x68], xmm1
jmp 0x18002f321
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
movzx r10d, byte [rsp + 0x40]
add edi, 0x30
mov r11d, dword [rbp + 0x430]
mov rbx, qword [rsp + 0x60]
mov qword [rbp - 0x60], rax
jmp 0x18002f321
lea r8, [0x180065a30]
mov edx, 6
mov rcx, r12
call fcn.180069a90
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_feof]
test eax, eax
jne 0x18002f6a6
nop dword [rax]
mov ebx, 0x4a
cmp ebx, 0x4a
jne 0x18002f534
mov r9, r14
lea edx, [rbx - 0x49]
mov r8d, 0x400
lea rcx, [rbp - 0x50]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
mov qword [rsp + 0x58], rax
xor r9d, r9d
lea rax, [rsp + 0x58]
xor r8d, r8d
mov qword [rsp + 0x30], rax
mov rdx, r12
lea rax, [rbp - 0x50]
mov qword [rsp + 0x28], rsi
mov ecx, 0x126
mov qword [rsp + 0x20], rax
call fcn.180067ee0
test eax, eax
jne case.0x18002f593.414
add ebx, 0x27e4
cmp ebx, 0x27e4
jbe 0x18002f4e5
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_feof]
test eax, eax
je 0x18002f4e0
movzx r10d, byte [rsp + 0x40]
add edi, 0x30
mov r11d, dword [rbp + 0x430]
mov rbx, qword [rsp + 0x60]
jmp 0x18002f321
lea eax, [rdi - 0x19e]
cmp eax, 0xf0
ja case.0x18002f593.415
lea rdx, [0x180000000]
movzx eax, byte [rdx + rax + 0x2f8f0]
mov ecx, dword [rdx + rax*4 + 0x2f8d4]
add rcx, rdx
jmp rcx
mov rcx, r14
mov edi, 0x19e
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
movzx r10d, byte [rsp + 0x40]
add edi, 0x30
mov r11d, dword [rbp + 0x430]
mov rbx, qword [rsp + 0x60]
jmp 0x18002f321
mov rbx, qword [rsp + 0x60]
mov r14, rsi
add edi, 0x30
jmp 0x18002f321
mov rcx, qword [rbp - 0x70]
test rcx, rcx
je case.0x18002f593.415
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
movzx r10d, byte [rsp + 0x40]
add edi, 0x30
mov r11d, dword [rbp + 0x430]
mov rbx, qword [rsp + 0x60]
jmp 0x18002f321
mov eax, 0xdc
nop
cmp eax, 0xdc
je 0x18002f6c0
add eax, 0xbc
cmp eax, 0x198
jb 0x18002f600
movsx eax, r10b
lea r9, [rsp + 0x58]
mov dword [rbp - 0x78], eax
lea r8, [rsp + 0x68]
lea rax, [0x180065a00]
mov byte [rsp + 0x50], r10b
lea rdx, [rsp + 0x50]
mov qword [rsp + 0x58], rax
lea rcx, [rbp - 0x80]
mov qword [rsp + 0x68], rsi
mov dword [rsp + 0x20], 0x5a
call fcn.180067d00
movzx r10d, byte [rsp + 0x40]
mov r12, rax
mov r11d, dword [rbp + 0x430]
add edi, 0x30
mov rbx, qword [rsp + 0x60]
jmp 0x18002f321
test r14, r14
je case.0x18002f593.415
mov ebx, SHSetFolderPathW
nop dword [rax + rax]
mov eax, ebx
sub eax, 0xe3
je 0x18002f699
cmp eax, 1
jne 0x18002f69c
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
jmp 0x18002f69c
mov r14, rsi
dec ebx
cmp ebx, 0xe2
ja 0x18002f680
movzx r10d, byte [rsp + 0x40]
mov r11d, dword [rbp + 0x430]
mov rbx, qword [rsp + 0x60]
add edi, 0x30
jmp 0x18002f321
mov eax, r15d
jmp 0x18002f6c9
mov eax, dword [rsp + 0x48]
mov rcx, qword [rbp + 0x3b0]
xor rcx, rsp
call fcn.18006fee0
mov rbx, qword [rsp + 0x510]
add rsp, 0x4c0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret