Function at 0x401710
Capabilities:
Contain obfuscated stackstrings
Encode data using base64

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x52b889
mov eax, dword fs:[0]
push eax
sub esp, 0x54
mov eax, dword [0x586dc4]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
xor eax, eax
mov dword [ebp - 0x5c], eax
mov dword [ebp - 4], eax
mov eax, ebx
mov dword [ebp - 0x58], ecx
mov dword [ebp - 0x50], 0x44434241
mov dword [ebp - 0x4c], 0x48474645
mov dword [ebp - 0x48], 0x4c4b4a49
mov dword [ebp - 0x44], 0x504f4e4d
mov dword [ebp - 0x40], 0x54535251
mov dword [ebp - 0x3c], 0x58575655
mov dword [ebp - 0x38], 0x62615a59
mov dword [ebp - 0x34], 0x66656463
mov dword [ebp - 0x30], 0x6a696867
mov dword [ebp - 0x2c], 0x6e6d6c6b
mov dword [ebp - 0x28], 0x7271706f
mov dword [ebp - 0x24], 0x76757473
mov dword [ebp - 0x20], 0x7a797877
mov dword [ebp - 0x1c], 0x33323130
mov dword [ebp - 0x18], 0x37363534
mov dword [ebp - 0x14], 0x2f2b3938
mov edi, ebx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4017c3
sub eax, esi
mov ecx, eax
mov eax, 0x55555556
imul ecx
mov eax, edx
shr eax, 0x1f
add eax, edx
add eax, eax
add eax, eax
mov dword [ebp - 0x60], eax
add eax, 5
push eax
mov dword [ebp - 0x54], eax
call fcn.004134db
mov edx, dword [ebp - 0x54]
push edx
mov esi, eax
push 0
push esi
call fcn.00512ff0
mov eax, ebx
lea edx, [eax + 1]
add esp, 0x10
xor ecx, ecx
mov dword [ebp - 0x54], edx
lea ebx, [ebx]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x401810
sub eax, dword [ebp - 0x54]
mov edx, eax
mov eax, 0xaaaaaaab
mul edx
shr edx, 1
je 0x4018a9
jmp 0x401830
movzx eax, byte [edi]
movzx edx, byte [edi + 1]
shl eax, 8
or eax, edx
movzx edx, byte [edi + 2]
shl eax, 8
or eax, edx
mov edx, eax
and edx, 0x3f
movzx edx, byte [ebp + edx - 0x50]
mov byte [esi + 3], dl
shr eax, 6
mov edx, eax
and edx, 0x3f
movzx edx, byte [ebp + edx - 0x50]
shr eax, 6
mov byte [esi + 2], dl
mov edx, eax
and edx, 0x3f
movzx edx, byte [ebp + edx - 0x50]
shr eax, 6
mov al, byte [ebp + eax - 0x50]
mov byte [esi], al
mov byte [esi + 1], dl
mov eax, ebx
lea edx, [eax + 1]
add edi, 3
add esi, 4
inc ecx
mov dword [ebp - 0x54], edx
lea ebx, [ebx]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x401890
sub eax, dword [ebp - 0x54]
mov edx, eax
mov eax, 0xaaaaaaab
mul edx
shr edx, 1
cmp ecx, edx
jb 0x401830
mov eax, ebx
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4018b0
sub eax, edx
mov ecx, eax
mov eax, 0xaaaaaaab
mul ecx
shr edx, 1
lea eax, [edx + edx*2]
sub ecx, eax
dec ecx
je 0x40190b
dec ecx
jne 0x40192c
movzx eax, byte [edi]
movzx ecx, byte [edi + 1]
shl eax, 8
or eax, ecx
add eax, eax
add eax, eax
mov edx, eax
and edx, 0x3f
movzx ecx, byte [ebp + edx - 0x50]
shr eax, 6
mov edx, eax
and edx, 0x3f
mov byte [esi + 2], cl
movzx ecx, byte [ebp + edx - 0x50]
shr eax, 6
mov dl, byte [ebp + eax - 0x50]
mov byte [esi + 1], cl
mov byte [esi], dl
mov byte [esi + 3], 0x3d
jmp 0x40192c
movzx eax, byte [edi]
shl eax, 4
mov ecx, eax
and ecx, 0x3f
mov dl, byte [ebp + ecx - 0x50]
shr eax, 6
mov al, byte [ebp + eax - 0x50]
mov byte [esi + 1], dl
mov byte [esi], al
mov word [esi + 2], 0x3d3d
sub esi, dword [ebp - 0x60]
mov edi, dword [ebp - 0x58]
push esi
mov ecx, edi
call fcn.00401650
push esi
mov dword [ebp - 4], 0
mov dword [ebp - 0x5c], 1
call fcn.004134e6
add esp, 4
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00512fd6
mov esp, ebp
pop ebp
ret