Function at 0x495000
Capabilities:
Encode data using xor

Disassembly:
push eax
push ecx
push edx
push ebx
push ebp
push esi
push edi
call 0x49500c
pop ecx
sub ecx, 0x8cc0c
push 0
pop eax
push ecx
sub dword [ecx + 0x130], 0x9c461c2
add dword [ecx + 0x3f0], 0x7363317e
sub dword [ecx + 0x28c], 0x2f7516bd
not dword [ecx + 0xec]
not dword [ecx + 0x110]
not dword [ecx + 0x90]
sub dword [ecx + 0x6c], 0x30b56fb2
not dword [ecx + 0x268]
sub dword [ecx + 0xd0], 0x6d401353
add dword [ecx + 0x2f8], 0x37b314f5
xor dword [ecx + 0x2c4], 0x10ee2f22
xor dword [ecx + 0x34c], 0x1e6c5834
add dword [ecx + 0x248], 0xac24121
add dword [ecx + 0x124], 0x59ce7240
not dword [ecx + 0x3f4]
xor dword [ecx + 0xc], 0x3feb66be
add dword [ecx + 0x78], 0x7ac74c01
not dword [ecx + 0x1f4]
not dword [ecx + 0x254]
add dword [ecx + 0x374], 0x32f92287
not dword [ecx + 0x1b0]
sub dword [ecx + 0x184], 0x1de21dbb
not dword [ecx + 0x40]
not dword [ecx + 0x228]
sub dword [ecx + 0x3dc], 0x5d512a84
sub dword [ecx + 0x2a0], 0x7e0375f6
not dword [ecx + 0xc4]
add dword [ecx + 0x388], 0x46721b3c
not dword [ecx + 0x364]
xor dword [ecx + 0x3b8], 0x60136f1
sub dword [ecx + 0x38c], 0x41805ca6
add dword [ecx + 0x234], 0x398a33e8
not dword [ecx + 0x180]
xor dword [ecx + 0x170], 0x5c903e8d
xor dword [ecx + 0x2e4], 0x70922cbc
add dword [ecx + 0x260], 0x49ab1eec
not dword [ecx + 0x32c]
sub dword [ecx + 0xac], 0x482b0dfa
sub dword [ecx + 0xb8], 0x64936f89
add dword [ecx + 0xe4], 0x6b494aed
add dword [ecx + 0x2f0], 0x608e332b
xor dword [ecx + 0x164], 0x5432989
xor dword [ecx + 0x1cc], 0x4e255655
not dword [ecx + 0xd8]
not dword [ecx + 0x238]
xor dword [ecx + 0x18], 0x26c96f8d
xor dword [ecx + 0x240], 0x2ab30f52
xor dword [ecx + 0x28], 0x1eba11e2
not dword [ecx + 0x2c8]
not dword [ecx + 0x27c]
xor dword [ecx + 0xc0], 0x1a72674d
sub dword [ecx + 0x338], 0x602e0879
add dword [ecx + 0xfc], 0x3e5b32d4
xor dword [ecx + 0xb4], 0x2e70465b
xor dword [ecx + 0x2d0], 0x37a214a7
add dword [ecx + 0x278], 0x78f25cec
not dword [ecx + 0x290]
sub dword [ecx + 0x3e4], 0x79497772
xor dword [ecx + 0x104], 0x38a4259b
not dword [ecx + 0xcc]
xor dword [ecx + 0x7c], 0x707028da
add dword [ecx + 0x31c], 0x38d01fd2
xor dword [ecx + 0x1bc], 0x40cf58e2
add dword [ecx + 0x3d8], 0x19ef6035
xor dword [ecx + 0x2d4], 0x493767d8
not dword [ecx + 0x24]
add dword [ecx + 0x144], 0x209b0a16
xor dword [ecx + 0x14], 0x4da92a75
not dword [ecx + 0x378]
add dword [ecx + 0x2e8], 0x61d0694c
xor dword [ecx + 0x33c], 0xf26710
sub dword [ecx + 0x35c], 0x7b3020a
sub dword [ecx + 0x1ac], 0x41b95eec
not dword [ecx + 0x3a8]
add dword [ecx + 0x3e8], 0x11290b26
sub dword [ecx + 0x39c], 0x47511dca
not dword [ecx + 0x198]
sub dword [ecx + 0x2f4], 0x43677511
add dword [ecx + 0x19c], 0x21c67eec
add dword [ecx + 0x29c], 0x7de446a
xor dword [ecx + 0x37c], 0x2a224f92
xor dword [ecx + 0x9c], 0x34b288e
not dword [ecx + 0x3e0]
xor dword [ecx + 0x20], 0x3f143bd2
xor dword [ecx + 0x10c], 0x14ce3789
xor dword [ecx + 0x158], 0xea51e3
add dword [ecx + 0x140], 0x46e64ee1
add dword [ecx + 0x24c], 0x35431a6b
not dword [ecx + 0x3b4]
not dword [ecx + 0x210]
xor dword [ecx + 0x208], 0xdce4afa
sub dword [ecx + 8], 0x1c491877
xor dword [ecx + 0x348], 0x7f4a59b6
xor dword [ecx + 0x3cc], 0x67e67a16
not dword [ecx + 0x30c]
not dword [ecx + 0x134]
add dword [ecx + 0x108], 0x76e20c2
add dword [ecx + 0x258], 0x76a72996
add dword [ecx + 0x2e0], 0x6db06015
sub dword [ecx + 0x3ac], 0xd1d7db7
not dword [ecx + 0x2b8]
add dword [ecx + 0x1d4], 0x731e0f07
add dword [ecx + 0x3c8], 0x5aeb0857
xor dword [ecx + 0x380], 0x19c166fd
add dword [ecx + 0x310], 0x6bc122e3
add dword [ecx + 0x5c], 0xee060fe
sub dword [ecx + 0x270], 0x18fb27d9
xor dword [ecx + 0xf0], 0x36865ba3
xor dword [ecx + 0x128], 0x2000183
add dword [ecx + 0x340], 0xafd5e99
not dword [ecx + 0x3c0]
add dword [ecx + 0x2b4], 0x4cc96f2f
not dword [ecx + 0xa8]
not dword [ecx + 0x394]
sub dword [ecx + 0xf4], 0x442b47b3
sub dword [ecx + 0x2ec], 0x4bbe446b
sub dword [ecx + 0x1c], 0x7adc5310
not dword [ecx + 0xa4]
add dword [ecx + 0x74], 0x4c460bc3
xor dword [ecx + 0x2b0], 0x47c52d3f
add dword [ecx + 0x22c], 0x54f56dde
not dword [ecx + 0x190]
add dword [ecx + 0x16c], 0x58f23dfe
sub dword [ecx + 0xbc], 0xda95133
xor dword [ecx + 0x318], 0x7a713196
sub dword [ecx + 0x2a4], 0x1e3b4a1f
sub dword [ecx + 0x80], 0x19336a78
xor dword [ecx + 0x58], 0x4f6473c8
xor dword [ecx + 0x100], 0x5984706
add dword [ecx + 0x284], 0xa925dd4
sub dword [ecx + 0x17c], 0x66875879
xor dword [ecx + 0x120], 0x12190725
sub dword [ecx + 0x2c], 0x746905cb
add dword [ecx + 0x14c], 0x70b2aa8
not dword [ecx + 0x188]
not dword [ecx + 0x1fc]
add dword [ecx + 0x13c], 0x478e1010
not dword [ecx + 0x314]
xor dword [ecx + 0x3bc], 0x63d873ac
sub dword [ecx + 0x264], 0x286f6f98
not dword [ecx + 0x1e8]
sub dword [ecx + 0x1c0], 0x43497f3b
sub dword [ecx + 0x21c], 0x2c4318fb
sub dword [ecx + 0x334], 0x286d7215
not dword [ecx + 0x54]
sub dword [ecx + 0x148], 0x1ce566a8
not dword [ecx + 0x1e4]
sub dword [ecx + 0x194], 0x49e824e6
xor dword [ecx + 0x4c], 0x3602282a
sub dword [ecx + 0x398], 0x76523aaf
not dword [ecx + 0x1ec]
sub dword [ecx + 0x3c], 0x29e974b5
add dword [ecx + 0x160], 0x24997ddd
xor dword [ecx + 0x1a8], 0x4fde16b4
add dword [ecx + 0x150], 0x3429746d
xor dword [ecx + 0x2ac], 0x5c1f3beb
add dword [ecx + 0x138], 0x135f0e99
sub dword [ecx + 0x3fc], 0x2ddc5772
sub dword [ecx + 0xe8], 0x640850f5
add dword [ecx + 0x328], 0x42856e70
sub dword [ecx + 0x1b4], 0x42b62ee7
xor dword [ecx + 0x2c0], 0x2c3c3a1f
add dword [ecx + 0x214], 0x438870b2
xor dword [ecx + 0x280], 0x1e7a354a
sub dword [ecx + 0xc8], 0x5c9b74ab
add dword [ecx + 0x1a4], 0x25f84201
not dword [ecx + 0x2fc]
add dword [ecx + 0x174], 0x680e3a0e
add dword [ecx + 0x288], 0x5100eda
sub dword [ecx + 0x1d8], 0x40d674ae
not dword [ecx + 0x10]
add dword [ecx + 0x36c], 0x37675aef
xor dword [ecx + 0x204], 0x3c5f4130
xor dword [ecx + 0x358], 0xf5c30a2
not dword [ecx + 0x244]
sub dword [ecx + 0x370], 0x1b28778f
sub dword [ecx + 0x88], 0x29a069fb
sub dword [ecx + 0x3ec], 0x18492ac9
sub dword [ecx + 0x324], 0x6d430c2b
not dword [ecx + 0x1d0]
sub dword [ecx + 0x3a0], 0x6b4d155d
sub dword [ecx + 0x3d0], 0x5807eec
not dword [ecx + 0x384]
sub dword [ecx + 0x224], 0x479f7bae
not dword [ecx + 0x64]
not dword [ecx + 0x1c4]
xor dword [ecx + 0x3a4], 0x5c3054ab
not dword [ecx + 0x330]
xor dword [ecx + 0x8c], 0x72c022cd
not dword [ecx + 0x2cc]
sub dword [ecx + 0x300], 0x68fc2ace
sub dword [ecx + 0x304], 0x62f4757d
sub dword [ecx + 0x320], 0x58543166
add dword [ecx + 0x390], 0x28bd2757
sub dword [ecx + 0x2d8], 0x68377955
not dword [ecx + 0x15c]
xor dword [ecx], 0x199a07bb
not dword [ecx + 0x200]
add dword [ecx + 0xa0], 0x4d7e7223
add dword [ecx + 0x2dc], 0x154134ed
xor dword [ecx + 0x34], 0x6d0f041f
not dword [ecx + 4]
sub dword [ecx + 0x26c], 0xe983428
xor dword [ecx + 0x18c], 0x39cb690b
sub dword [ecx + 0x168], 0x44b93d2b
add dword [ecx + 0xe0], 0x6f5c1a07
sub dword [ecx + 0x3c4], 0x239c42a6
xor dword [ecx + 0x294], 0x4035088f
sub dword [ecx + 0x60], 0x76dc0d5c
xor dword [ecx + 0x250], 0x25c23b9f
add dword [ecx + 0x1c8], 0x5f2a72bd
not dword [ecx + 0x50]
xor dword [ecx + 0x350], 0x2b042f43
not dword [ecx + 0x20c]
not dword [ecx + 0x118]
add dword [ecx + 0x12c], 0x5b34dfe
not dword [ecx + 0x1b8]
add dword [ecx + 0x94], 0x47f1241f
not dword [ecx + 0xdc]
sub dword [ecx + 0xb0], 0x3e2239c1
sub dword [ecx + 0x298], 0x74921fe7
xor dword [ecx + 0x1a0], 0x7efe74ce
add dword [ecx + 0x44], 0x700d5b5c
sub dword [ecx + 0x360], 0x36d20049
not dword [ecx + 0x220]
not dword [ecx + 0x1f8]
not dword [ecx + 0x3d4]
xor dword [ecx + 0xd4], 0x1d4b7fca
add dword [ecx + 0x11c], 0x68312ba5
not dword [ecx + 0x368]
add dword [ecx + 0x274], 0x1fb57365
add dword [ecx + 0x98], 0x784758f1
add dword [ecx + 0x70], 0x212527ec
not dword [ecx + 0x68]
xor dword [ecx + 0x344], 0x4b94513f
add dword [ecx + 0x1dc], 0x34fc0e69
add dword [ecx + 0x38], 0x74a77799
add dword [ecx + 0x48], 0x2af3788c
xor dword [ecx + 0x308], 0x6a2a58de
not dword [ecx + 0x2a8]
not dword [ecx + 0x354]
not dword [ecx + 0x154]
sub dword [ecx + 0x114], 0x245d14d2
sub dword [ecx + 0xf8], 0x65482fca
not dword [ecx + 0x218]
add dword [ecx + 0x230], 0x5ffe4b0a
not dword [ecx + 0x30]
add dword [ecx + 0x23c], 0x66a62743
add dword [ecx + 0x3f8], 0x48f2ed3
sub dword [ecx + 0x2bc], 0x2a4a4aca
sub dword [ecx + 0x178], 0x1895320e
sub dword [ecx + 0x84], 0x7a2c3ef9
sub dword [ecx + 0x1e0], 0x12ab04d7
xor dword [ecx + 0x3b0], 0x2fa00d26
not dword [ecx + 0x25c]
sub dword [ecx + 0x1f0], 0x6dd97d22
add eax, 0x400
add ecx, 0x400
cmp eax, 0x8c000
jne 0x495017
call fcn.00451db8
pop edi
pop esi
pop ebp
pop ebx
pop edx
pop ecx
pop eax
push ebp
mov ebp, esp
sub esp, 0x1d
call fcn.00495964
fst st(3)
fsubr st(5)
fcmovbe st(0), st(5)
fcmovb st(0), st(7)
fsub st(7)
fmul st(5)
fsubr st(3)
fcmovb st(0), st(1)
fcom st(7)
call fcn.00495c31
call fcn.00495b72
call fcn.00495c31
call fcn.00495a86
call fcn.004959b3
fcom st(2)
fcmovu st(0), st(1)
fmul st(3)
call fcn.00495c31
call fcn.00495964
call fcn.00495964
call fcn.00495b72
fst st(4)
fst st(0)
fst st(6)
fadd st(3)
fmul st(0)
fcmove st(0), st(5)
fst st(2)
fcom st(7)
fcmovb st(0), st(3)
fst st(6)
fst st(0)
fst st(0)
fcmovb st(0), st(5)
fst st(3)
fsub st(2)
fcmove st(0), st(1)
fcom st(4)
fmul st(4)
push 0xffffffffffffff8e
mov edx, ebp
sub eax, 0xffffffa3
push 0xfffffffffffffff1
mov cx, ax
lea edi, [0x401f1a]
test edx, edx
jne 0x49593d
mov eax, esp
mov sp, ax
call fcn.0049595a
mov esp, ebp
pop ebp
ret