Function at 0x4395dd
Capabilities:
Check os version
Encode data using base64

Disassembly:
dec eax
cwde
mov bl, bl
jne 0x443405
je 0x415434
nop
cpuid
ret 0x840f
je 0x443405
int 6
inc edx
add byte [eax + eax], al
add byte [edi - 0x77], dh
inc esp
add byte [eax], ah
add byte [eax], al
add byte [eax + eax], dh
add byte [eax], al
and al, 0x4a
inc edx
add byte [edi + 0x30], dh
pushal
test eax, 0xefb70041
add byte [eax], al
cmp al, 0
add byte [eax], al
invalid
xor eax, 0x43ae8bcb
add byte [eax], al
inc ecx
add byte [eax + 0x40], al
add byte [ecx], al
add byte [eax], al
add al, 0
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [eax], al
pop edi
imul eax, dword [edx], 0x13
pop ecx
inc esp
add byte [eax], dl
pop esp
inc edx
add byte [ebp + 0x34000000], al
add byte [eax], al
add byte [ecx + ebx*2 - 0x2324ffbe], dh
inc ebx
add byte [ebx + 0x43ae], cl
inc edx
add byte [eax], al
xor al, 0
add byte [eax], al
add byte [edx], al
add byte [eax], al
add byte [ecx], ah
cmp byte [eax], 0
add byte [eax], al
add byte [ecx], ah
add byte [eax], al
inc dword [eax]
add byte [eax], al
movsb byte es:[edi], byte [esi]
rol byte [ecx], 0xc
cmp al, byte [edx]
inc eax
add byte [eax], al
add byte [eax + eax], dh
add byte [eax], al
int 6
inc edx
add byte [eax + eax], al
add byte [edx + ecx*2], ah
inc edx
add byte [edi], dl
ja 0x418b8b
aas
inc ebx
add byte [edx], al
add byte [eax], al
add byte [eax], dh
add byte [eax], al
add byte [esi + 0x4b], dh
inc edx
add byte [eax + 0x12], al
inc edx
add byte [edx + 0x7f], bh
inc ebx
add cl, dl
mov eax, dword [ecx]
mov ah, 0x2f
in al, dx
jbe 0x418c0d
pop es
inc edx
add byte [eax], al
add byte [eax], al
cmp byte [eax], al
add byte [eax], al
mov ebp, dword [esi + 0x61000043]
add byte [eax], al
popal
add byte [eax + 0x38], al
add byte [ecx], ah
add byte [eax], al
mov esp, 0
adc byte [eax], al
add byte [eax], al
inc eax
add byte [eax], al
xor al, 0
add byte [eax], al
or byte [edi], ch
inc esp
add byte [ebx + 0x43ae], cl
popal
add byte [eax + 0x38], al
add byte [ecx], ah
add byte [eax], al
mov esp, 0
adc al, byte [eax]
add byte [eax], al
inc edx
add byte [eax], al
xor byte [eax], al
add byte [eax], al
movsb byte es:[edi], byte [esi]
rol byte [ecx], 0x6e
rol byte [ebx], cl
dec eax
add byte [eax], al
add byte [eax], bh
add byte [eax], al
add byte [esi - 0x2e], ch
inc ebx
add byte [eax], bh
add byte [eax], al
add byte [eax], cl
add byte [eax], al
or al, 0x3a
inc edx
add byte [eax + eax], cl
add byte [eax], al
xor al, 0
add byte [eax], al
ror byte [edi], 1
inc esp
add byte [eax], al
add byte [eax], al
xor al, 0
add byte [eax], al
ja 0x418be0
inc esp
add byte [eax + eax], al
add byte [eax], al
xor byte [eax], al
add byte [eax], al
cmp dword [ebx + eax*2 + 0xff00], 0
xor al, 0
add byte [eax], al
mov ah, 0x59
inc edx
add byte [eax + 0x7d], al
inc esp
add byte [ebx - 0xffbc44], al
add byte [eax], al
add byte [eax], dh
add byte [eax], al
add byte [ecx + ebx*2 + 0x7d4a0042], dh
inc esp
add byte [ebp + 0x300042e3], dl
add byte [eax], al
add byte [eax], dh
add byte [eax], al
add byte [ebp + 0x3000435d], ch
add byte [eax], al
add byte [eax + eax], dh
add byte [eax], al
mov ah, 0x59
inc edx
add byte [eax + 0x7d], bl
inc esp
add byte [edx + edi], cl
inc edx
add byte [eax], al
add byte [eax], al
cmp al, 0
add byte [eax], al
xor ch, bh
inc edx
add byte [eax + eax], cl
add byte [eax], al
xor byte [eax], al
add byte [eax], al
cmp dl, dh
inc ecx
add byte [eax], dh
add byte [eax], al
add byte [eax + eax], bh
add byte [eax], al
mov al, byte [0x5200424f]
add byte [eax], al
add byte [eax + eax], bh
add byte [eax], al
cmp dword [ebx + eax*2 + 0xff00], 0
cmp al, 0
add byte [eax], al
mov ah, 0x59
inc edx
add byte [ecx + 0x7d], ah
inc esp
add byte [edi + 0x44], bh
inc ecx
add byte [eax + ecx*4 + 0x3c0044], dh
add byte [eax], al
cmp al, 0
add byte [eax], al
mov ah, 0x59
inc edx
add byte [ecx], cl
lea eax, [ecx]
jo 0x418d16
mov byte [0x4259b4c3], al
add byte [ecx + edi], cl
inc esp
add byte [ecx + 0xcc4], al
add byte [ecx + 0x5eed88f0], cl
shl ax, 0x20
mov bp, bp
push ebp
mov ebp, esp
push ebx
push esi
push 0x5349d5
xor esi, esi
jb 0x444c9d
call fcn.00422d2b
add bl, 0x55
sub bl, 0x55
add esp, 4
test eax, eax
jb 0x415424
jle 0x44a2c9
jg 0x43961a
jl 0x439685
mov bl, byte [ebp + 8]
add byte [eax], al
lea esi, [esi]
mov eax, dword [esi + 4]
mov ebx, dword [esi + 8]
lea esi, [esi + 0xc]
test dword [ebp + ebx], eax
jb 0x418b35
jmp dword [esi]
and cl, 0x3c