Function at 0x587000
Capabilities:
Encode data using xor

Disassembly:
push eax
push ecx
push edx
push ebx
push ebp
push esi
push edi
call 0x58700c
pop ecx
sub ecx, 0x8ca0c
push 0
pop edi
push ecx
not dword [ecx + 0x3a4]
xor dword [ecx + 0x308], 0x2049341a
sub dword [ecx + 0x148], 0x6df129ad
sub dword [ecx + 0x304], 0x172407f3
add dword [ecx + 0x158], 0xd1119c4
sub dword [ecx + 0x344], 0x227b24a9
not dword [ecx + 0x258]
add dword [ecx + 0x22c], 0x6e544f5b
not dword [ecx + 0x2b4]
not dword [ecx + 0x268]
not dword [ecx + 0x1b4]
add dword [ecx + 0x48], 0x65f81463
xor dword [ecx + 0x6c], 0x7078347e
sub dword [ecx + 0x1ac], 0x477d44a4
not dword [ecx + 8]
not dword [ecx + 0x3fc]
not dword [ecx + 0x70]
add dword [ecx + 0x284], 0x6db66feb
xor dword [ecx + 0x1d0], 0x2cc29b7
not dword [ecx + 0x12c]
sub dword [ecx + 0x26c], 0x2188011b
xor dword [ecx + 0x3e0], 0x256169ab
add dword [ecx + 0x24c], 0x574879e4
sub dword [ecx + 0x104], 0x472b4469
sub dword [ecx + 0x14], 0x2a41172d
add dword [ecx + 0xa0], 0x26b43167
sub dword [ecx + 0x64], 0x4fd4689a
add dword [ecx + 0x300], 0x21676c58
not dword [ecx + 0x14c]
xor dword [ecx + 0x38], 0x4a7a1440
sub dword [ecx + 0x398], 0x37de7885
sub dword [ecx + 0x340], 0x33ed24a2
sub dword [ecx + 0x324], 0x67c10b55
not dword [ecx + 0x290]
add dword [ecx + 0xe8], 0x53ed1a34
xor dword [ecx + 0x1e4], 0x553a7d18
not dword [ecx + 0x39c]
add dword [ecx + 0x130], 0x20844d6e
sub dword [ecx + 0x68], 0x3a837163
not dword [ecx + 0x32c]
not dword [ecx + 0x144]
sub dword [ecx + 0x108], 0x69011dce
not dword [ecx + 0x1c]
sub dword [ecx + 0x1b8], 0x2b851d80
not dword [ecx + 0x3b4]
not dword [ecx + 0x2d8]
xor dword [ecx + 0x140], 0x5dbb4c3d
not dword [ecx + 0x3cc]
sub dword [ecx + 0x7c], 0x17fc624a
add dword [ecx + 0xc8], 0x40390591
not dword [ecx + 0x3b0]
not dword [ecx + 0x25c]
sub dword [ecx + 0x124], 0x2dfc4f4f
xor dword [ecx + 0x3c], 0x7ce34370
not dword [ecx + 0x190]
add dword [ecx + 0x78], 0x19d8651f
sub dword [ecx + 0x174], 0x6494c8a
add dword [ecx + 0x194], 0x14362209
add dword [ecx + 0x2a0], 0x4f6d2d33
sub dword [ecx + 4], 0x39407dc9
sub dword [ecx + 0x5c], 0x6a1163fa
sub dword [ecx + 0x378], 0x6752177d
sub dword [ecx + 0x248], 0x6f21518f
add dword [ecx + 0xc0], 0x151d1c60
xor dword [ecx + 0x200], 0x12561763
add dword [ecx + 0xec], 0x6dc240ae
not dword [ecx + 0x34c]
not dword [ecx + 0x24]
sub dword [ecx + 0xb8], 0x9d315cf
xor dword [ecx + 0x3bc], 0x5bfb244c
xor dword [ecx + 0x2f4], 0x26757699
xor dword [ecx + 0xcc], 0x675d79d3
add dword [ecx + 0x1b0], 0x8b51e83
not dword [ecx + 0x31c]
not dword [ecx + 0x37c]
add dword [ecx + 0x1d4], 0x5af47b19
xor dword [ecx + 0x17c], 0x74160583
not dword [ecx + 0x1c0]
xor dword [ecx + 0x218], 0x96b1e78
not dword [ecx + 0x30c]
not dword [ecx + 0x210]
sub dword [ecx + 0x2d0], 0x76cc5b4d
sub dword [ecx + 0x1cc], 0x3bf45692
not dword [ecx + 0x2c0]
add dword [ecx + 0x364], 0x644c66c8
sub dword [ecx + 0x54], 0x73256c90
xor dword [ecx + 0x184], 0x66b1787e
not dword [ecx + 0xa8]
sub dword [ecx + 0x128], 0x597210df
sub dword [ecx + 0x15c], 0x4e3d57a1
not dword [ecx + 0x11c]
sub dword [ecx + 0x278], 0x260e21bc
not dword [ecx + 0x16c]
not dword [ecx + 0xe4]
add dword [ecx + 0x90], 0x41ad69ff
not dword [ecx + 0x178]
sub dword [ecx + 0x228], 0x75dc424e
xor dword [ecx + 0x44], 0x385c3f53
not dword [ecx + 0x28c]
add dword [ecx + 0xdc], 0x23363b3e
sub dword [ecx + 0x2cc], 0x3f986aa2
not dword [ecx + 0x260]
sub dword [ecx + 0xf4], 0x5dd728d1
not dword [ecx + 0x3c0]
add dword [ecx + 0xbc], 0x7d6467d0
not dword [ecx + 0x114]
xor dword [ecx + 0x1c8], 0x2cf6616f
add dword [ecx + 0x88], 0x1d7f1eff
not dword [ecx + 0x120]
sub dword [ecx + 0x214], 0x2a6036df
not dword [ecx + 0x314]
not dword [ecx + 0x1a4]
sub dword [ecx + 0x354], 0x3b7f0078
not dword [ecx + 0x170]
xor dword [ecx + 0xd8], 0x461f304e
sub dword [ecx + 0x1d8], 0x3634653f
add dword [ecx + 0x3dc], 0x38c95ab0
sub dword [ecx + 0x1f0], 0x17ae2ab5
sub dword [ecx + 0x350], 0x554c790c
sub dword [ecx], 0x69e01f40
not dword [ecx + 0x3ac]
add dword [ecx + 0x1ec], 0x39120b64
add dword [ecx + 0x334], 0x3c266f00
sub dword [ecx + 0x384], 0x41d001fb
not dword [ecx + 0x3e4]
xor dword [ecx + 0x98], 0x50d4508c
xor dword [ecx + 0x18c], 0x464f743a
not dword [ecx + 0x2a4]
not dword [ecx + 0x180]
add dword [ecx + 0x2dc], 0x31d04e77
sub dword [ecx + 0x2ac], 0x35372e77
not dword [ecx + 0x3d4]
xor dword [ecx + 0x294], 0x25bf25b9
add dword [ecx + 0x318], 0x59b0520
not dword [ecx + 0x2d4]
not dword [ecx + 0xd0]
xor dword [ecx + 0xc], 0x3a96494e
add dword [ecx + 0x9c], 0x6a2b5861
sub dword [ecx + 0xc4], 0x14b30cd8
xor dword [ecx + 0x164], 0x5f335f09
sub dword [ecx + 0x2e0], 0x28404571
not dword [ecx + 0xf0]
add dword [ecx + 0x28], 0x44e677d0
sub dword [ecx + 0x2e4], 0xbce4fa0
not dword [ecx + 0x3f0]
add dword [ecx + 0x1e8], 0x2bbe23c0
xor dword [ecx + 0x50], 0x4de52c9a
xor dword [ecx + 0x27c], 0x37cf7d31
not dword [ecx + 0x23c]
not dword [ecx + 0x2c4]
not dword [ecx + 0x118]
add dword [ecx + 0x19c], 0x4de769ee
xor dword [ecx + 0x30], 0x629a2f5c
sub dword [ecx + 0x2f8], 0x4279634f
add dword [ecx + 0x358], 0x4e3263fe
not dword [ecx + 0x40]
sub dword [ecx + 0x374], 0x2bb15fb9
sub dword [ecx + 0x204], 0x6e8d618c
xor dword [ecx + 0x36c], 0x18274d37
not dword [ecx + 0x224]
xor dword [ecx + 0x1f4], 0x3968d9
not dword [ecx + 0x388]
sub dword [ecx + 0x240], 0x207f41b6
not dword [ecx + 0x270]
not dword [ecx + 0xb0]
not dword [ecx + 0x80]
sub dword [ecx + 0x2b0], 0x5303179e
xor dword [ecx + 0x94], 0x7d9e0f08
xor dword [ecx + 0x3e8], 0x7aee12ab
xor dword [ecx + 0x3c4], 0x65a34913
add dword [ecx + 0x298], 0x683d3d83
xor dword [ecx + 0x29c], 0x6b7c5488
sub dword [ecx + 0xfc], 0x6d7157e4
add dword [ecx + 0x1bc], 0x609b5914
add dword [ecx + 0x2f0], 0x50224a83
xor dword [ecx + 0x154], 0x255657f3
add dword [ecx + 0xd4], 0x7b3a520e
add dword [ecx + 0x1fc], 0x63a2233f
xor dword [ecx + 0x198], 0x6cf28c5
xor dword [ecx + 0x150], 0x511d09f2
sub dword [ecx + 0x2fc], 0x30547370
add dword [ecx + 0x60], 0x6dfc6bd0
sub dword [ecx + 0x2e8], 0x167e01fd
not dword [ecx + 0x3b8]
xor dword [ecx + 0x10c], 0x6b8a04ae
xor dword [ecx + 0x38c], 0x57180caf
add dword [ecx + 0x1e0], 0x68410a81
sub dword [ecx + 0x1dc], 0x1df7c3c
xor dword [ecx + 0x2bc], 0xe36cfd
sub dword [ecx + 0x3a0], 0x525322c1
not dword [ecx + 0x138]
not dword [ecx + 0x8c]
not dword [ecx + 0x220]
xor dword [ecx + 0x1a8], 0x12bf5d2e
not dword [ecx + 0x34]
add dword [ecx + 0x188], 0x10644766
xor dword [ecx + 0x3f4], 0x344b30d0
xor dword [ecx + 0x208], 0x6b811e80
not dword [ecx + 0x330]
sub dword [ecx + 0x3ec], 0x58c052cc
add dword [ecx + 0x74], 0x146c03d5
xor dword [ecx + 0x33c], 0x6cb947ac
not dword [ecx + 0x84]
sub dword [ecx + 0x254], 0x698a6c56
not dword [ecx + 0x3c8]
add dword [ecx + 0x328], 0x10e639dd
not dword [ecx + 0x250]
xor dword [ecx + 0x13c], 0x2cba5fa9
xor dword [ecx + 0xb4], 0x5807b11
not dword [ecx + 0x264]
add dword [ecx + 0x244], 0x11e01684
not dword [ecx + 0x394]
sub dword [ecx + 0x310], 0x36b747dc
not dword [ecx + 0x320]
not dword [ecx + 0xa4]
add dword [ecx + 0x360], 0x46038a8
add dword [ecx + 0x234], 0x63de2b84
add dword [ecx + 0x390], 0x60ae537e
sub dword [ecx + 0x274], 0x221f2b96
not dword [ecx + 0x238]
sub dword [ecx + 0x100], 0x6ebe66f1
not dword [ecx + 0x348]
sub dword [ecx + 0x110], 0x506596c
xor dword [ecx + 0x288], 0x63069d4
not dword [ecx + 0x2c]
add dword [ecx + 0x10], 0x7fc61582
not dword [ecx + 0x134]
add dword [ecx + 0x370], 0x4c15324d
not dword [ecx + 0x230]
add dword [ecx + 0x1a0], 0x72783e00
sub dword [ecx + 0x58], 0x610533a6
add dword [ecx + 0x20c], 0x1c3a71cf
xor dword [ecx + 0x338], 0x23ba2fc7
not dword [ecx + 0x2a8]
add dword [ecx + 0x160], 0x6b3235d9
not dword [ecx + 0x3a8]
add dword [ecx + 0x1c4], 0x167d7c19
not dword [ecx + 0x18]
add dword [ecx + 0x21c], 0x2f9b660d
not dword [ecx + 0xac]
not dword [ecx + 0x3d8]
sub dword [ecx + 0x3d0], 0x415e10
sub dword [ecx + 0xf8], 0x29f76a76
not dword [ecx + 0x368]
sub dword [ecx + 0xe0], 0xa3051b
not dword [ecx + 0x380]
add dword [ecx + 0x1f8], 0x28ba008c
sub dword [ecx + 0x2b8], 0x6b835b6e
not dword [ecx + 0x168]
add dword [ecx + 0x20], 0x60493268
add dword [ecx + 0x2c8], 0x5a4a62c5
not dword [ecx + 0x4c]
sub dword [ecx + 0x3f8], 0x71f3147e
xor dword [ecx + 0x2ec], 0x24273284
sub dword [ecx + 0x280], 0x33235b11
not dword [ecx + 0x35c]
add edi, 0x400
add ecx, 0x400
cmp edi, 0x8c000
jne 0x587017
call fcn.00543fb8
pop edi
pop esi
pop ebp
pop ebx
pop edx
pop ecx
pop eax