Function at 0x589000
Capabilities:
Encode data using xor

Disassembly:
push eax
push ecx
push edx
push ebx
push ebp
push esi
push edi
call 0x58900c
pop ebx
sub ebx, 0x8c20c
push 0
pop edi
push ebx
xor dword [ebx + 0xac], 0x53a75a06
sub dword [ebx + 0x2a0], 0x7d32dd5
xor dword [ebx + 0xf8], 0x26701829
xor dword [ebx + 0x330], 0x74c23a76
sub dword [ebx + 0x160], 0x7e5a741e
not dword [ebx + 0xd4]
not dword [ebx + 0x194]
xor dword [ebx + 0x218], 0x6fa56ade
add dword [ebx + 0x248], 0xf507e89
not dword [ebx + 0x3bc]
xor dword [ebx + 0x13c], 0x6ea643fd
xor dword [ebx + 0x100], 0x738b2e79
sub dword [ebx + 0x36c], 0x41cb7791
not dword [ebx + 0x5c]
sub dword [ebx + 0x1f8], 0x7b243f91
xor dword [ebx + 0x394], 0x7b6e255a
add dword [ebx + 0x78], 0x42bf6c88
xor dword [ebx + 0x8c], 0x6e2f2810
add dword [ebx + 0x198], 0x11442107
add dword [ebx + 0x184], 0x13803238
xor dword [ebx + 0x90], 0x26c00941
add dword [ebx + 0x98], 0x3a64a38
add dword [ebx + 0x174], 0x65f96c36
add dword [ebx + 0x2e8], 0x78b07dab
add dword [ebx + 0x148], 0x301b5d1c
not dword [ebx + 0x338]
xor dword [ebx + 0x384], 0x2191449c
sub dword [ebx + 0x178], 0x369454ba
not dword [ebx + 0x1a0]
xor dword [ebx + 0xc], 0x12547f42
not dword [ebx + 0x33c]
sub dword [ebx + 0x16c], 0x389f0cdb
sub dword [ebx + 0x4c], 0xbf01bc2
sub dword [ebx + 0x150], 0x71dd5b1a
xor dword [ebx + 0x238], 0x53695a3b
add dword [ebx + 0x2b8], 0x184b2b41
sub dword [ebx + 0x25c], 0x17955c60
add dword [ebx + 0x60], 0x54a928a8
not dword [ebx + 0x2f0]
xor dword [ebx + 0x18], 0x76791c90
add dword [ebx + 0x374], 0x371f1633
sub dword [ebx + 0x130], 0x52767278
sub dword [ebx + 0x324], 0x566a04eb
xor dword [ebx + 0x38], 0x6eed4e9d
add dword [ebx + 0x27c], 0x9b67476
xor dword [ebx + 0x224], 0x2d04edf
xor dword [ebx + 0x1c], 0x35a87620
not dword [ebx + 0x35c]
xor dword [ebx + 0x140], 0x650767e
add dword [ebx + 0x2ec], 0x57dd4df9
not dword [ebx + 0x348]
not dword [ebx + 0x3d4]
xor dword [ebx + 0x3f8], 0x24f66092
xor dword [ebx + 0x2c8], 0x70a971a0
add dword [ebx + 0x64], 0x26025657
add dword [ebx + 0xbc], 0x5f2549b4
not dword [ebx + 0x1c8]
not dword [ebx + 0x2a4]
xor dword [ebx + 0x17c], 0x7d5f2156
xor dword [ebx + 0x214], 0x533033f7
add dword [ebx + 0x3b8], 0x798e2a0f
xor dword [ebx + 0x2f4], 0x42cb3f42
sub dword [ebx + 0x364], 0x195276e6
not dword [ebx + 0x23c]
add dword [ebx + 0x254], 0xed84a5b
sub dword [ebx + 0x22c], 0x6d6e1c97
sub dword [ebx + 0x118], 0x2ec6eed
add dword [ebx + 0xe4], 0x5af74150
not dword [ebx + 0x31c]
sub dword [ebx + 0x44], 0x243d22a4
add dword [ebx + 0x12c], 0x6ed84ad2
add dword [ebx + 0x370], 0x44c23b5b
not dword [ebx + 0x244]
xor dword [ebx + 0xa4], 0x258a08b7
xor dword [ebx + 0x24], 0x43d3391
sub dword [ebx + 0x32c], 0x47e73011
not dword [ebx + 0xe8]
not dword [ebx + 0x230]
xor dword [ebx + 0xb0], 0x285c675b
not dword [ebx + 0xf4]
sub dword [ebx + 0x18c], 0x7b2c7828
not dword [ebx + 0x3dc]
not dword [ebx + 0xec]
add dword [ebx + 0x3c], 0x4b48279f
not dword [ebx + 0x264]
xor dword [ebx + 0x30c], 0x3e0403ce
add dword [ebx + 0x3e8], 0x1cb72a87
xor dword [ebx + 0x190], 0xc981124
sub dword [ebx + 0x278], 0x20176a07
not dword [ebx + 0x1d0]
add dword [ebx + 0x360], 0x7cf13c4d
add dword [ebx + 0x2d8], 0x68ff6a3a
add dword [ebx + 0x318], 0x54643322
not dword [ebx + 0x14c]
xor dword [ebx + 0xd8], 0x230e3703
sub dword [ebx + 0x340], 0x733f06d1
not dword [ebx + 0x3ac]
not dword [ebx + 0x310]
not dword [ebx + 0x28]
xor dword [ebx + 0x34], 0x7d95908
xor dword [ebx + 0x1b4], 0x537e422d
sub dword [ebx + 0x144], 0x77e837b5
not dword [ebx + 0x154]
not dword [ebx + 0x6c]
not dword [ebx + 0x40]
add dword [ebx + 4], 0x10f2043
sub dword [ebx + 0x250], 0x73a00af0
not dword [ebx + 0x3cc]
xor dword [ebx + 0x188], 0x2c1676ab
not dword [ebx + 0x3fc]
add dword [ebx + 0x21c], 0x53122a36
add dword [ebx + 0x388], 0x17a41ba3
not dword [ebx + 0x398]
sub dword [ebx + 0x2e0], 0x5d96a1d
add dword [ebx + 0x2ac], 0x55823c02
xor dword [ebx + 0x378], 0x6f080730
xor dword [ebx + 0x2a8], 0x7eb6261f
sub dword [ebx + 0x228], 0x5c9a45e4
add dword [ebx + 0x234], 0x2e2031cf
sub dword [ebx + 0x210], 0x714303cc
add dword [ebx + 0x258], 0x4dff77a3
add dword [ebx + 0x20c], 0x6eff73e3
sub dword [ebx + 0x164], 0x764d3ae9
sub dword [ebx + 0x380], 0x5aff5f1d
sub dword [ebx + 0x9c], 0x34165554
add dword [ebx + 0xe0], 0x550e4eff
sub dword [ebx + 0xa8], 0x525b0d01
add dword [ebx + 0x1dc], 0x4b264ce1
not dword [ebx + 0x1d8]
add dword [ebx + 0x19c], 0x56f348a8
not dword [ebx + 0x2e4]
xor dword [ebx + 0xfc], 0x65bb0d0e
not dword [ebx + 0x328]
not dword [ebx + 0x168]
xor dword [ebx + 8], 0x2c36534
add dword [ebx + 0x7c], 0x7aa73b56
sub dword [ebx + 0x208], 0x16220fe6
not dword [ebx + 0x1b0]
sub dword [ebx + 0x3c4], 0x538b2204
not dword [ebx + 0x274]
add dword [ebx + 0xb8], 0x8210488
xor dword [ebx + 0x10c], 0x440442f5
xor dword [ebx + 0x294], 0x23a344e4
add dword [ebx + 0x11c], 0xe9259ef
not dword [ebx + 0x80]
not dword [ebx + 0x50]
sub dword [ebx + 0x288], 0x45182093
xor dword [ebx + 0x3b0], 0x136660d0
add dword [ebx + 0x3a8], 0x33c6198d
not dword [ebx + 0x1a8]
xor dword [ebx + 0xdc], 0x60ed2541
add dword [ebx + 0x2dc], 0x52063b48
xor dword [ebx + 0x34c], 0x3122400d
sub dword [ebx + 0x158], 0x4ffe5c60
add dword [ebx + 0x120], 0x4cac1d04
sub dword [ebx + 0x2fc], 0x2c190ebe
add dword [ebx + 0x3f0], 0x34a552d6
add dword [ebx + 0x3d8], 0x5dd9370b
add dword [ebx + 0x94], 0x88740cd
sub dword [ebx + 0x2d4], 0x44e4111f
not dword [ebx + 0x3ec]
xor dword [ebx + 0x2bc], 0x5b6f1140
not dword [ebx + 0x110]
not dword [ebx + 0x15c]
add dword [ebx + 0xd0], 0x566828ac
xor dword [ebx + 0x2c], 0x39664100
sub dword [ebx + 0x354], 0x4c57642b
add dword [ebx + 0x320], 0x3041255e
xor dword [ebx + 0xa0], 0x639a175c
sub dword [ebx + 0x48], 0x53c03467
sub dword [ebx + 0x304], 0x10a648f
not dword [ebx + 0x28c]
not dword [ebx + 0x284]
add dword [ebx + 0x1ec], 0x39e7dd6
not dword [ebx + 0x2f8]
not dword [ebx + 0x1e4]
xor dword [ebx + 0x358], 0x3f609ea
sub dword [ebx + 0x134], 0x4d4c4b26
not dword [ebx + 0x220]
xor dword [ebx + 0x1a4], 0x4abc5466
xor dword [ebx + 0x1fc], 0xa6b7fe6
add dword [ebx + 0x3e4], 0x4bf66725
not dword [ebx + 0x390]
not dword [ebx + 0xb4]
add dword [ebx + 0x1b8], 0x72672cff
add dword [ebx + 0x38c], 0x13e8046f
not dword [ebx + 0x260]
sub dword [ebx + 0x200], 0x5ea54a81
add dword [ebx + 0x180], 0x2e3135ea
add dword [ebx + 0xcc], 0xb1c7cd4
sub dword [ebx + 0x280], 0x7a1e0fd7
sub dword [ebx + 0x26c], 0x3beb5d23
sub dword [ebx + 0x2b4], 0x33cb7283
add dword [ebx + 0x204], 0x5b193055
sub dword [ebx + 0x3d0], 0x9287b84
xor dword [ebx + 0x300], 0x79d47d83
not dword [ebx + 0x104]
not dword [ebx + 0x240]
sub dword [ebx + 0xc4], 0x3495714c
not dword [ebx + 0x3f4]
not dword [ebx + 0x1c0]
sub dword [ebx + 0x37c], 0x566c2276
sub dword [ebx + 0x3a0], 0x621260dc
xor dword [ebx + 0x170], 0x1e163953
sub dword [ebx + 0x74], 0x499f1a4f
sub dword [ebx + 0x2cc], 0x70c3744c
add dword [ebx + 0x3e0], 0x46094a3e
not dword [ebx + 0x54]
xor dword [ebx + 0x3b4], 0x3e993d04
not dword [ebx + 0x114]
not dword [ebx + 0x1bc]
sub dword [ebx + 0x344], 0x14e74e4b
sub dword [ebx + 0x108], 0x7a7d3909
not dword [ebx + 0x2d0]
not dword [ebx + 0x88]
add dword [ebx + 0x1ac], 0x1f522c9a
add dword [ebx + 0x1f0], 0x6f105970
not dword [ebx + 0x1f4]
add dword [ebx + 0x290], 0xd61470d
add dword [ebx + 0xc8], 0x194e7717
sub dword [ebx + 0xc0], 0x2fdb4687
add dword [ebx + 0x1c4], 0x534f1ed8
add dword [ebx + 0x1e8], 0x461b19fe
add dword [ebx + 0x2c4], 0x4ab6272b
add dword [ebx + 0x334], 0xf1640c2
xor dword [ebx + 0x20], 0x24d32ab0
not dword [ebx + 0x1d4]
add dword [ebx + 0x3a4], 0x1e1f1c6f
not dword [ebx + 0x3c0]
xor dword [ebx + 0x2c0], 0x26b601e0
xor dword [ebx + 0x84], 0x4b931327
xor dword [ebx + 0x128], 0x9e5182c
sub dword [ebx + 0x2b0], 0x2e104c8b
sub dword [ebx + 0x39c], 0x44535317
sub dword [ebx + 0x30], 0x489c7935
sub dword [ebx + 0x29c], 0x7cc84b53
xor dword [ebx + 0x70], 0x43341d53
xor dword [ebx + 0x350], 0xa3035a
add dword [ebx + 0x368], 0x314a7407
xor dword [ebx + 0x68], 0x46be4070
sub dword [ebx + 0x14], 0x448e4963
add dword [ebx + 0x10], 0x6e221bd5
not dword [ebx + 0x24c]
add dword [ebx + 0x268], 0x3734c9b
add dword [ebx], 0x1ec45caa
not dword [ebx + 0x1e0]
add dword [ebx + 0x298], 0x3084ac9
add dword [ebx + 0x138], 0x774c5836
not dword [ebx + 0xf0]
sub dword [ebx + 0x3c8], 0x432d2dc7
add dword [ebx + 0x308], 0x2971788a
xor dword [ebx + 0x314], 0x132f22dd
add dword [ebx + 0x270], 0x6cb045c0
sub dword [ebx + 0x1cc], 0x38423a4a
add dword [ebx + 0x124], 0x37ac1901
xor dword [ebx + 0x58], 0x62344560
add edi, 0x400
add ebx, 0x400
cmp edi, 0x8c000
jne 0x589017
call fcn.00546d54
pop edi
pop esi
pop ebp
pop ebx
pop edx
pop ecx
pop eax