Function at 0x41f5b1
Capabilities:
Encode data using base64
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
or dword [0x434e9c], 0x86542c27
sub esp, 0x18
imul eax, dword [0x434d88], 0x8c810200
push ebx
xor ebx, ebx
mov dword [0x434d88], eax
movsx eax, word [0x4331ba]
xor eax, 0x35a579e6
or dword [0x43454c], eax
mov dword [0x4348a0], 0xc9c0b367
add dword [0x434ad4], 0xfcef65e4
movsx eax, word [0x433a8c]
dec word [0x433a8c]
cmp eax, 0x29e97b57
jne 0x41f620
movzx eax, word [0x434068]
or eax, 0x69d1d4eb
mov word [0x434068], ax
push esi
push edi
push 0x41
push 0x2717
call fcn.0041b353
movsx edx, word [0x43378a]
movzx ecx, word [0x43372e]
and edx, 0x6378c2b0
xor ecx, edx
mov dword [ebp - 0xc], eax
push 4
mov word [0x43372e], cx
inc word [0x43378a]
push 0x1d32
call fcn.0041b353
mov ecx, dword [0x4346c0]
mov esi, eax
lea eax, [ebp - 0x10]
xor ecx, 0xc043f1eb
or dword [0x435800], ecx
push esi
push eax
call fcn.004094ad
push 4
mov dword [0x4354a4], 0x893d1897
push 0x1667
call fcn.0041b353
movzx ecx, word [0x4337fc]
mov edi, eax
or ecx, 0x80870058
push esi
mov word [0x4337fc], cx
push 4
call fcn.004041b4
mov ecx, dword [0x435378]
lea eax, [ebp - 0x14]
imul ecx, dword [0x4344fc]
push edi
push eax
mov dword [0x435378], ecx
call fcn.004094ad
mov eax, dword [0x434c4c]
add eax, 0x6fe3ee44
or dword [0x434ac0], eax
push 4
push 0x1d2c
call fcn.0041b353
movzx ecx, word [0x433c02]
mov esi, eax
sub ecx, 0x4dff7f9f
push edi
mov word [0x433c02], cx
push 4
call fcn.004041b4
movsx ecx, word [0x433392]
lea eax, [ebp - 0x18]
add esp, 0x40
add ecx, 0x8d6d18a8
and dword [0x435c84], ecx
inc word [0x433392]
push esi
push eax
call fcn.004094ad
imul eax, dword [0x435cec], 0xe7bbff7b
push esi
push 4
mov dword [0x435cec], eax
call fcn.004041b4
mov eax, dword [0x4352b4]
add esp, 0x10
mov ecx, dword [0x435bb4]
sar eax, 3
add eax, 0x39e55f52
imul ecx, eax
push 3
pop edi
mov dword [0x435bb4], ecx
jmp 0x41fabd
movzx eax, word [0x433432]
imul eax, eax, 0xe408362c
dec ecx
mov dword [ebp + 0xc], ecx
mov ecx, dword [ebp + 8]
mov word [0x433432], ax
movzx eax, word [0x4332fe]
sub eax, 0x438a5ab9
mov word [0x4332fe], ax
mov al, byte [ecx]
mov byte [ebp + ebx - 4], al
mov eax, 0xffffa0a4
mov dword [0x4345c0], 0x86d9d9fb
inc ebx
mov word [0x4336d2], ax
inc ecx
movsx eax, word [0x433544]
not eax
mov dword [ebp + 8], ecx
and eax, 0xbce0b49f
cmp eax, 0x354c3191
jne 0x41f7dc
add dword [0x4360bc], 0x576129e8
jmp 0x41f810
dec dword [0x4361d0]
mov eax, dword [0x4361d0]
mov ecx, dword [0x4342f0]
sar ecx, 9
imul ecx, eax
movsx eax, word [0x4332ce]
xor eax, ecx
cmp eax, 0xcc90734c
jg 0x41f810
mov ax, word [0x433c88]
inc word [0x433c88]
cmp ebx, edi
jne 0x41faa6
movzx eax, word [0x433548]
or eax, 0xd35c634
mov word [0x433548], ax
mov al, byte [ebp - 4]
shr al, 2
mov byte [ebp - 8], al
inc dword [0x4359c4]
mov ecx, dword [0x4359c4]
movsx eax, word [0x4339c2]
add ecx, 0xd116c220
not eax
xor ecx, eax
sub dword [0x435d60], ecx
mov al, byte [ebp - 4]
and al, 3
shl al, 4
mov byte [ebp - 7], al
movsx eax, word [0x433eca]
xor eax, 0x3c4fd977
sub dword [0x435220], eax
dec word [0x433eca]
mov al, byte [ebp - 3]
shr al, 4
add byte [ebp - 7], al
movzx eax, word [0x433ea2]
or eax, 0x9b0d2e0b
mov word [0x433ea2], ax
mov al, byte [ebp - 3]
and al, 0xf
shl al, 2
cmp dword [0x434e20], 0xa23299fa
mov byte [ebp - 6], al
jg 0x41f8c5
mov eax, dword [0x435754]
sar eax, 0xa
xor eax, 0xb830c025
cmp eax, 0xac3fd661
jne 0x41f8c5
mov eax, dword [0x435e34]
mov al, byte [ebp - 2]
shr al, 6
add byte [ebp - 6], al
and dword [0x434d9c], 0x28e2ab78
mov al, byte [ebp - 2]
and al, 0x3f
mov byte [ebp - 5], al
movsx eax, word [0x433da0]
and eax, 0xfffffffc
cmp eax, 0x12959e0c
je 0x41f906
dec dword [0x435de8]
mov eax, dword [0x435de8]
or eax, 0xc71634bf
mov dword [0x435358], eax
mov edi, dword [ebp - 0xc]
xor esi, esi
imul eax, dword [0x4353bc], 0xb848fef7
mov dword [0x4353bc], eax
and dword [0x434abc], 0x71ffeeda
cmp byte [ebp + 0x10], 0
je 0x41f9d3
mov dl, byte [ebp + esi - 8]
cmp dl, 0x3d
jbe 0x41f9d3
mov ax, word [0x4339f6]
mov ecx, dword [0x434ae4]
cwde
imul ecx, eax
dec dword [0x434ae4]
dec word [0x4339f6]
cmp ecx, 0x30036c00
jl 0x41f96a
mov dword [0x4355b8], 0xee779b06
cmp dl, 0x3e
jne 0x41f991
add dword [0x4353a8], 0x5bedb407
lea eax, [ebp - 0x10]
mov ecx, dword [ebp + 0x14]
push eax
call fcn.00403ff4
add dword [0x434380], 0x9ee17a5f
jmp 0x41f9be
mov ax, word [0x43329e]
mov ecx, dword [0x435620]
cwde
imul ecx, eax
lea eax, [ebp - 0x14]
push eax
mov word [0x43329e], cx
mov ecx, dword [ebp + 0x14]
call fcn.00403ff4
mov dword [0x435f10], 0x6826ed55
movzx eax, word [0x4335b6]
imul eax, eax, 0x98253290
mov word [0x4335b6], ax
jmp 0x41f9f9
movzx eax, byte [ebp + esi - 8]
mov ecx, dword [ebp + 0x14]
mov dword [0x43600c], 0xd79dffbe
movzx eax, byte [eax + edi]
push eax
call fcn.0042afdc
add dword [0x4352f0], 0xa9020800
imul eax, dword [0x436124], 0xc7a032ca
inc esi
mov dword [0x436124], eax
cmp dword [0x43547c], 0x4a7dab6c
je 0x41fa21
or dword [0x435294], 0x776b9a7b
jmp 0x41fa33
movzx eax, word [0x433ad8]
add eax, 0x77f5f7ff
mov word [0x433ad8], ax
cmp esi, 4
jne 0x41f91a
mov eax, dword [0x434cb0]
not eax
and eax, 0x310402b6
cmp eax, 0x1800104
jg 0x41fa68
mov ax, word [0x4331f8]
mov ecx, dword [0x434864]
cwde
imul ecx, eax
mov word [0x4331f8], cx
jmp 0x41fa84
mov ax, word [0x434152]
mov ecx, dword [0x434824]
cwde
or ecx, eax
or ecx, 0x8a92a700
mov word [0x434152], cx
mov ecx, dword [0x434c58]
xor ebx, ebx
mov eax, dword [0x434968]
add eax, 0x5384bc8
add eax, ecx
push 3
mov dword [0x434c58], eax
dec dword [0x434968]
pop edi
imul eax, dword [0x4345f4], 0x5ef11088
mov ecx, 0x3f3a9882
sub ecx, eax
xor dword [0x434bc4], ecx
mov ecx, dword [ebp + 0xc]
test ecx, ecx
jne 0x41f76f
mov eax, dword [0x4353e8]
mov ecx, 0x32f535ec
sub ecx, eax
mov eax, dword [0x4362c8]
and ecx, 0x47727026
imul eax, ecx
mov dword [0x4362c8], eax
test ebx, ebx
je 0x42004a
mov eax, dword [0x435c48]
mov ecx, dword [0x435a60]
add eax, 0xe569ae1a
and ecx, eax
mov eax, 0xae2411b3
and ecx, 0x319c3eeb
mov dword [0x435a60], ecx
dec dword [0x435c48]
mov ecx, dword [0x4356a4]
sar ecx, 1
sub eax, ecx
cmp eax, 0x15a88bda
jl 0x41fb41
movsx eax, word [0x433b0c]
imul eax, eax, 0x5acd0124
add eax, 0xa74431f3
xor dword [0x435618], eax
cmp ebx, edi
jge 0x41fba0
mov esi, edi
lea eax, [ebp - 4]
sub esi, ebx
add eax, ebx
push esi
push 0
push eax
call fcn.0042b06a
add esp, 0xc
mov eax, dword [0x43622c]
not eax
add eax, 0xb1a94b42
and dword [0x435aa4], eax
movzx eax, word [0x433906]
xor eax, 0x1f79844b
mov word [0x433906], ax
movsx eax, word [0x4339a4]
movsx ecx, word [0x433632]
sar eax, 3
and ecx, eax
and ecx, 0x9a8ca83f
add dword [0x434348], ecx
dec esi
jne 0x41fb5a
mov eax, dword [0x434478]
sar eax, 5
cmp eax, 0x8b44eb39
jne 0x41fc06
mov ecx, dword [0x435ed0]
imul ecx, dword [0x435418]
imul eax, dword [0x434d7c], 0x73d89080
xor ecx, 0x63b29c42
cmp eax, ecx
je 0x41fbf0
mov ecx, dword [0x4356c0]
movzx eax, word [0x43411e]
sar ecx, 9
or ecx, 0x3f5ff7e5
xor eax, ecx
mov word [0x43411e], ax
jmp 0x41fc06
mov ax, word [0x433348]
mov ecx, dword [0x435f80]
cwde
xor ecx, eax
mov word [0x433348], cx
mov al, byte [ebp - 4]
shr al, 2
mov byte [ebp - 8], al
movsx eax, word [0x433952]
cmp eax, 0xc55d7bda
je 0x41fc27
add dword [0x435ac4], 0x24a464de
mov al, byte [ebp - 4]
and al, 3
shl al, 4
mov byte [ebp - 7], al
and dword [0x4362bc], 0x1d548f82
mov al, byte [ebp - 3]
movsx ecx, word [0x43405a]
shr al, 4
sub ecx, 0x72ec115c
add byte [ebp - 7], al
xor ecx, 0xaaed6d4a
mov eax, dword [0x43517c]
not eax
xor eax, 0x15608498
cmp eax, ecx
jle 0x41fc91
mov eax, dword [0x4351b4]
and eax, 0xfffffff8
cmp eax, 0xb0648aa8
jne 0x41fcb4
inc word [0x4335fe]
mov ax, word [0x4335fe]
cwde
sub eax, 0x4a68b1de
mov dword [0x435f7c], eax
jmp 0x41fcb4
mov ecx, dword [0x435e18]
movzx eax, word [0x43318e]
not ecx
sub ecx, 0x2d1eb318
xor ecx, 0x1cf50819
sub eax, ecx
mov word [0x43318e], ax
mov al, byte [ebp - 3]
and al, 0xf
shl al, 2
mov byte [ebp - 6], al
inc dword [0x436160]
mov eax, dword [0x436160]
and eax, 0xc2481254
cmp eax, 0x795f1990
je 0x41fceb
mov eax, dword [0x435508]
or eax, 0xb90fee78
mov dword [0x435c54], eax
inc dword [0x435508]
mov al, byte [ebp - 2]
xor esi, esi
shr al, 6
add byte [ebp - 6], al
mov eax, dword [0x434bf8]
and eax, dword [0x434b78]
and eax, 0x87995a68
mov edi, dword [ebp - 0xc]
mov dword [0x434bf8], eax
mov al, byte [ebp - 2]
and al, 0x3f
mov byte [ebp - 5], al
mov eax, dword [0x4354d0]
imul eax, dword [0x435c84]
imul eax, eax, 0x2bb385cc
mov dword [0x4354d0], eax
movzx eax, word [0x4339ba]
or eax, 0xf2dfe984
mov word [0x4339ba], ax
mov ecx, dword [0x435258]
mov eax, dword [0x434480]
or ecx, 0x9b3580f
xor eax, 0xcec87cf8
cmp eax, ecx
jne 0x41fd7d
inc word [0x433772]
mov ax, word [0x433772]
cwde
cmp eax, 0xe578f3f7
jg 0x41fd7d
imul eax, dword [0x4349ec], 0xa77e2800
mov dword [0x4349ec], eax
cmp esi, ebx
jg 0x41ff47
cmp dword [0x434c18], 0x26af0346
jge 0x41fdc8
mov eax, dword [0x434614]
mov ecx, dword [0x435c14]
add eax, 0x2be851d7
and ecx, eax
inc dword [0x434614]
cmp ecx, 0xcf7dd5bb
jle 0x41fdbd
add dword [0x4348fc], 0x7689d508
jmp 0x41fdc8
mov eax, dword [0x434874]
dec dword [0x434874]
cmp byte [ebp + 0x10], 0
je 0x41fe7d
mov al, byte [ebp + esi - 8]
cmp al, 0x3d
jbe 0x41fe7d
mov ecx, dword [ebp + 0x14]
mov dword [0x435910], 0x2c2ec233
cmp al, 0x3e
jne 0x41fe14
xor dword [0x435e58], 0x11ee1c01
lea eax, [ebp - 0x10]
push eax
call fcn.00403ff4
mov eax, dword [0x435f70]
add eax, dword [0x43560c]
mov dword [0x435f70], eax
jmp 0x41fe4d
movsx eax, word [0x433d56]
imul eax, eax, 0x1865845f
sub dword [0x436050], eax
lea eax, [ebp - 0x14]
dec word [0x433d56]
push eax
call fcn.00403ff4
mov eax, dword [0x43527c]
and eax, 0x418e3775
add dword [0x434e60], eax
inc dword [0x43527c]
mov eax, dword [0x43523c]
and eax, dword [0x43606c]
dec dword [0x43523c]
cmp eax, 0x8caa0ff3
jge 0x41fefc
movzx eax, word [0x433cc6]
add eax, 0x7406556
mov word [0x433cc6], ax
jmp 0x41fefc
mov eax, dword [0x4353f4]
xor eax, dword [0x4351fc]
mov ecx, dword [ebp + 0x14]
or eax, 0xd1430148
add dword [0x434cfc], eax
movzx eax, byte [ebp + esi - 8]
movzx eax, byte [eax + edi]
push eax
call fcn.0042afdc
movsx eax, word [0x433762]
sub eax, 0x6a14aad9
or eax, 0x4bdb3700
cmp eax, 0x8738eb4c
jle 0x41fefc
movsx eax, word [0x433f42]
mov ecx, dword [0x43579c]
shl eax, 3
imul ecx, eax
mov eax, dword [0x4347dc]
not eax
add eax, ecx
cmp dword [0x434b20], eax
jg 0x41fef2
imul eax, dword [0x435458], 0xfd5dfff2
mov dword [0x435458], eax
jmp 0x41fefc
add dword [0x4346bc], 0x91e0a80d
movsx eax, word [0x4336b0]
imul eax, eax, 0x7a249c35
xor eax, 0xc97aeb5a
mov dword [0x435b24], eax
dec word [0x4336b0]
inc esi
mov eax, dword [0x434ffc]
not eax
sub eax, 0x1ee11c67
cmp eax, 0x394b0918
jle 0x41fd3f
mov eax, dword [0x435b00]
or eax, 0x2bbd708c
xor dword [0x434f14], eax
jmp 0x41fd3f
mov eax, dword [0x434f78]
and eax, dword [0x43465c]
push 3
pop edi
mov dword [0x43465c], eax
cmp ebx, edi
jge 0x42002e
sub edi, ebx
add dword [0x435c70], 0x2552058a
imul eax, dword [0x434fac], 0x5c863ba
cmp byte [ebp + 0x10], 0
mov dword [0x434fac], eax
je 0x41fff3
mov ecx, dword [0x435454]
mov eax, dword [0x434a28]
sar ecx, 7
or eax, 0xbe8a3b9b
xor ecx, 0x35af2c74
cmp ecx, eax
jne 0x41ffc9
mov eax, dword [0x435c78]
mov ecx, dword [0x435c58]
sar eax, 2
add eax, 0xfa3e0b5c
and ecx, eax
mov eax, dword [0x43533c]
dec dword [0x43533c]
cmp ecx, eax
jl 0x41ffc9
mov eax, dword [0x4351fc]
mov ecx, dword [ebp + 0x14]
lea eax, [ebp - 0x18]
push eax
call fcn.00403ff4
dec dword [0x434dec]
mov eax, dword [0x434dec]
add eax, 0xdb2bc1db
imul eax, dword [0x435c1c]
mov dword [0x435c1c], eax
jmp 0x42001d
add dword [0x435688], 0xc97c3370
mov ecx, dword [ebp + 0x14]
push 0x3d
call fcn.0042afdc
mov eax, dword [0x43561c]
add eax, 0x1af5e27e
or dword [0x436068], eax
inc dword [0x43561c]
and dword [0x435274], 0xf9387963
dec edi
jne 0x41ff64
inc dword [0x4358f4]
mov eax, dword [0x4358f4]
and eax, 0x64a1ab34
imul eax, dword [0x4347a4]
mov dword [0x4347a4], eax
mov eax, dword [0x435cec]
dec dword [0x435cec]
pop edi
pop esi
cmp eax, 0xa2f4dd96
jl 0x42007c
inc word [0x433e16]
movzx eax, word [0x433e16]
movzx ecx, word [0x433ff2]
or ecx, eax
mov word [0x433ff2], cx
push dword [ebp - 0xc]
push 0x41
call fcn.004041b4
imul eax, dword [0x435598], 0x177c7505
xor ebx, ebx
push 4
push ebx
mov dword [0x435598], eax
lea eax, [ebp - 0x10]
push eax
call fcn.0042b06a
movzx eax, word [0x43406c]
sub eax, 0x75c3d14
mov word [0x43406c], ax
lea eax, [ebp - 0x14]
push 4
push ebx
push eax
call fcn.0042b06a
mov ecx, dword [0x436108]
movzx eax, word [0x433538]
not ecx
xor ecx, 0x506c2d75
add eax, ecx
mov word [0x433538], ax
lea eax, [ebp - 0x18]
push 4
push ebx
push eax
call fcn.0042b06a
mov eax, dword [0x435724]
add esp, 0x2c
sar eax, 0xa
pop ebx
cmp eax, 0xe99d68e7
jle 0x420107
add dword [0x435e50], 0x4aa91d65
mov esp, ebp
pop ebp
ret