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 edx
sub edx, 0x8d00c
push 0
pop ecx
push edx
not dword [edx + 0x2c]
sub dword [edx + 0x5c], 0x27033bb2
sub dword [edx + 0x360], 0x698230a3
not dword [edx + 0x25c]
sub dword [edx + 0x290], 0x355729ad
xor dword [edx + 0xb4], 0x3cfc355e
sub dword [edx + 0x274], 0x7aa90fc3
sub dword [edx + 0x24c], 0x69827df0
not dword [edx + 0x13c]
sub dword [edx + 0x190], 0x4432aaf
not dword [edx + 0x30c]
sub dword [edx + 0x4c], 0xd9907d1
sub dword [edx + 0x1b8], 0xb236ddc
sub dword [edx + 0x2b0], 0x19a063eb
not dword [edx + 0x1c8]
add dword [edx + 0x14c], 0x3dc916a2
add dword [edx + 0x2a8], 0x631c1e7a
not dword [edx + 0x3c8]
sub dword [edx + 0xc], 0x32452e22
sub dword [edx + 0x18], 0x17b806f7
not dword [edx + 0xb0]
not dword [edx + 0x300]
xor dword [edx + 0x3d0], 0x365b753f
add dword [edx + 0x234], 0x2ff535db
sub dword [edx + 0x64], 0x59fa1931
not dword [edx + 0xa8]
add dword [edx + 0x2dc], 0x603c2c74
sub dword [edx + 0x208], 0x6c9a50c2
xor dword [edx + 0x2e4], 0x2725710
not dword [edx + 0x338]
not dword [edx + 0x17c]
not dword [edx + 0x1b4]
not dword [edx + 0x124]
add dword [edx + 0x380], 0x40c1206d
add dword [edx + 0xc4], 0x6d064230
sub dword [edx + 0x398], 0x627e69ea
add dword [edx + 0xe8], 0x36b80d6a
not dword [edx + 0x38c]
sub dword [edx + 0x288], 0xf1e467c
xor dword [edx + 0x158], 0x5db15cdd
not dword [edx + 0x150]
add dword [edx + 0x21c], 0x7ca67881
not dword [edx + 0x330]
add dword [edx + 0x254], 0xe2479b5
add dword [edx + 0x1e0], 0x78e52208
xor dword [edx + 0x22c], 0x687d6d5e
sub dword [edx + 0x3dc], 0x3aeb41e0
not dword [edx + 0x16c]
xor dword [edx + 0x168], 0x3c033c8
sub dword [edx + 0x178], 0x4e7f6f39
sub dword [edx + 0x108], 0x3acf0c78
add dword [edx + 0x2ec], 0x407d6137
xor dword [edx + 0x30], 0x71485e57
sub dword [edx + 0x160], 0x55481fcd
not dword [edx + 0x80]
not dword [edx + 0x29c]
sub dword [edx + 0x3e0], 0x649d78b5
add dword [edx + 0x1c4], 0x12c71c63
xor dword [edx + 0x244], 0x3c2d78f1
xor dword [edx + 0x12c], 0x66361bca
not dword [edx + 0x388]
xor dword [edx + 0x394], 0x615f77b6
add dword [edx + 0x1a4], 0x1e3e0c66
add dword [edx + 0x50], 0x6709109f
sub dword [edx + 0x20], 0x1e0c1b3c
add dword [edx + 0x3bc], 0x4d3c1e43
xor dword [edx + 0x378], 0x77665fa6
xor dword [edx + 0x264], 0x61c433eb
xor dword [edx + 0x188], 0x23f26528
xor dword [edx + 0x68], 0x5768428e
not dword [edx + 0x3f0]
xor dword [edx + 0x44], 0x1bb7eda
xor dword [edx + 0x344], 0x3f59052b
sub dword [edx + 0xe4], 0x619f35af
xor dword [edx + 0x368], 0x47e148c2
not dword [edx + 0x1fc]
xor dword [edx + 0x3c], 0x4efd22ed
sub dword [edx + 0x3d4], 0x4b0e741c
xor dword [edx + 0x348], 0x147b0fb4
xor dword [edx + 0x90], 0x200046b
xor dword [edx + 0x1b0], 0x458c5ee2
sub dword [edx + 0x134], 0x399b02cb
add dword [edx + 0x1e8], 0x57d677e2
sub dword [edx + 0x37c], 0x288574fc
not dword [edx + 0xec]
add dword [edx + 0x1d4], 0xd558bd
xor dword [edx + 0x310], 0x3f6c451e
add dword [edx + 0x3ac], 0x3532666e
sub dword [edx + 0x2d8], 0x1fd0432e
xor dword [edx + 0x228], 0x1b2a44df
add dword [edx + 0x2fc], 0x2c9c55e7
xor dword [edx + 0x184], 0x15d4049a
sub dword [edx + 0x258], 0x60526d7a
not dword [edx + 0x3cc]
xor dword [edx + 0x200], 0x677a607b
sub dword [edx + 0x1f4], 0x3c8558cd
sub dword [edx + 0x3b4], 0x6ccb6e24
xor dword [edx + 0x19c], 0x469d51f1
not dword [edx + 0x3f8]
sub dword [edx + 0x174], 0x22b742d0
xor dword [edx + 0x88], 0x2ad95379
xor dword [edx + 0x2e8], 0x3e8f7627
sub dword [edx + 0xc0], 0x3a9329a0
sub dword [edx + 8], 0x61b84af3
add dword [edx + 0x1bc], 0x41666254
add dword [edx + 0x304], 0x2d243c2d
xor dword [edx + 0x194], 0x5a7a0010
add dword [edx + 0x74], 0x543c7c60
xor dword [edx + 0x11c], 0x6e310097
not dword [edx + 0x7c]
xor dword [edx + 0x34], 0x6cc70b8e
sub dword [edx + 0x1e4], 0x650b6334
sub dword [edx + 0x104], 0x35e33fdb
xor dword [edx + 0x26c], 0x24c83f1d
not dword [edx + 0x364]
xor dword [edx + 4], 0x4eee4bf9
xor dword [edx + 0x39c], 0x68a02368
not dword [edx + 0x320]
not dword [edx + 0x2cc]
sub dword [edx + 0x268], 0x40531fef
add dword [edx + 0x1ac], 0x57135dcc
add dword [edx + 0x180], 0x7e700cde
add dword [edx + 0x248], 0x3e7331bf
xor dword [edx + 0x328], 0x5cf86cdc
add dword [edx + 0xfc], 0x7aab2bd5
xor dword [edx + 0x3e8], 0x45a369f8
sub dword [edx + 0xcc], 0x481c1e36
sub dword [edx + 0x1ec], 0x9b32539
xor dword [edx + 0x1c], 0x35501327
xor dword [edx + 0x1d0], 0x7e8d2750
sub dword [edx + 0x1cc], 0x4159202d
add dword [edx + 0xb8], 0x665a7782
add dword [edx + 0x2e0], 0x73ea4f7b
sub dword [edx + 0x170], 0x79bb1331
add dword [edx + 0x10], 0x4d710ee3
add dword [edx + 0x284], 0x3fd51eb
xor dword [edx + 0x354], 0x2748160c
xor dword [edx + 0x278], 0x71cf24fb
sub dword [edx + 0x2ac], 0x342b0c9a
add dword [edx + 0x20c], 0x67c7158e
add dword [edx + 0x1d8], 0x649077f2
not dword [edx + 0x204]
not dword [edx + 0x3a8]
add dword [edx], 0x4c2a7396
not dword [edx + 0x224]
add dword [edx + 0x2b8], 0x592366cf
add dword [edx + 0x14], 0x21e324d8
xor dword [edx + 0x3ec], 0x3ca6526a
sub dword [edx + 0x384], 0x5af86b4b
not dword [edx + 0x324]
sub dword [edx + 0x314], 0x9a906d6
xor dword [edx + 0x270], 0x22a35734
xor dword [edx + 0x9c], 0x2a2a7cdc
add dword [edx + 0x1f0], 0x1f0c1bde
not dword [edx + 0x15c]
add dword [edx + 0x28c], 0x4c0270d5
sub dword [edx + 0x3f4], 0x58c421ea
xor dword [edx + 0x210], 0x1f272c5b
sub dword [edx + 0x214], 0x2e425b
sub dword [edx + 0x35c], 0x26e37c85
add dword [edx + 0x3c4], 0x60103288
add dword [edx + 0xbc], 0x359c0626
not dword [edx + 0x198]
sub dword [edx + 0x2d4], 0x7a25107
add dword [edx + 0x2a4], 0x754d014a
sub dword [edx + 0x2bc], 0x735b2373
sub dword [edx + 0x40], 0x70b31ed6
add dword [edx + 0x340], 0x7c425aba
sub dword [edx + 0x120], 0x453044ba
not dword [edx + 0x334]
not dword [edx + 0xd0]
add dword [edx + 0x218], 0x5c1f1aa4
not dword [edx + 0xc8]
xor dword [edx + 0x6c], 0x3b0573dc
not dword [edx + 0x18c]
xor dword [edx + 0x3e4], 0x7d945003
xor dword [edx + 0x2d0], 0x51131292
add dword [edx + 0x374], 0x43d015fa
xor dword [edx + 0x140], 0x40586bde
xor dword [edx + 0x164], 0x35d23712
not dword [edx + 0x298]
sub dword [edx + 0x31c], 0x3a6f07a4
add dword [edx + 0x3c0], 0x76ea79c2
xor dword [edx + 0x2f8], 0x5ee634d7
not dword [edx + 0x250]
not dword [edx + 0xf0]
sub dword [edx + 0x1c0], 0x4a1b6d88
not dword [edx + 0x100]
not dword [edx + 0x8c]
add dword [edx + 0x38], 0x94e5602
not dword [edx + 0x84]
not dword [edx + 0x1f8]
not dword [edx + 0x358]
sub dword [edx + 0x114], 0xd814a9c
xor dword [edx + 0x23c], 0x16ff6079
xor dword [edx + 0x2c0], 0x6df802fe
add dword [edx + 0x10c], 0x52fa29b1
sub dword [edx + 0x70], 0x1f8d27f1
sub dword [edx + 0xdc], 0x370c5d37
add dword [edx + 0x230], 0x28cd67f5
add dword [edx + 0x294], 0x42951ad5
not dword [edx + 0xf4]
sub dword [edx + 0x130], 0x646213d
sub dword [edx + 0x240], 0x33f35a95
add dword [edx + 0x154], 0x49be2ac9
sub dword [edx + 0xac], 0x402c7942
add dword [edx + 0x1a8], 0x49cb53d2
not dword [edx + 0x28]
add dword [edx + 0x370], 0x67042fb9
xor dword [edx + 0x58], 0x773f7331
sub dword [edx + 0x27c], 0x4c497a0a
sub dword [edx + 0x3b0], 0x6e5e4667
not dword [edx + 0x78]
xor dword [edx + 0x238], 0x1a904026
xor dword [edx + 0x144], 0x70e30916
add dword [edx + 0x60], 0x4c5e4b7b
add dword [edx + 0x2c4], 0x3a8b4f96
xor dword [edx + 0x33c], 0x78b23fd9
not dword [edx + 0x36c]
not dword [edx + 0x308]
sub dword [edx + 0x54], 0x3a565e88
sub dword [edx + 0x2f0], 0x18185eaa
xor dword [edx + 0xd4], 0x76e6207f
sub dword [edx + 0x1a0], 0x3594b12
not dword [edx + 0xa0]
xor dword [edx + 0x260], 0x16be0445
not dword [edx + 0xa4]
not dword [edx + 0x3b8]
sub dword [edx + 0xe0], 0x7acd189b
add dword [edx + 0x2a0], 0x585059c9
add dword [edx + 0x32c], 0x17d41197
sub dword [edx + 0x128], 0x27a8431d
sub dword [edx + 0x148], 0x668d34bf
xor dword [edx + 0x98], 0x120e3eae
sub dword [edx + 0x390], 0x9fd0526
add dword [edx + 0x3a4], 0x43255d95
not dword [edx + 0x2f4]
add dword [edx + 0x94], 0x794c0ca6
sub dword [edx + 0x220], 0x60b12a6f
xor dword [edx + 0x24], 0x46b0702d
add dword [edx + 0x2b4], 0x7fa0142f
xor dword [edx + 0x2c8], 0x5407067f
xor dword [edx + 0x1dc], 0x623209d1
not dword [edx + 0x110]
sub dword [edx + 0x318], 0x23d1407b
add dword [edx + 0x3a0], 0x66c53857
add dword [edx + 0x48], 0x3a0b5ef2
add dword [edx + 0xf8], 0x34957fe3
sub dword [edx + 0x118], 0x1fac0c0d
add dword [edx + 0x138], 0x39034b38
add dword [edx + 0x34c], 0x5683267b
add dword [edx + 0x3d8], 0x296079fb
not dword [edx + 0x350]
not dword [edx + 0x3fc]
xor dword [edx + 0x280], 0x562662f7
not dword [edx + 0xd8]
add ecx, 0x400
add edx, 0x400
cmp ecx, 0x8c000
jne 0x589017
call fcn.00545f54
pop edi
pop esi
pop ebp
pop ebx
pop edx
pop ecx
pop eax