Function at 0x1583000
Capabilities:
Encode data using xor

Disassembly:
push eax
push ecx
push edx
push ebx
push ebp
push esi
push edi
call 0x158300c
pop ebx
sub ebx, 0x8cc0c
push 0
pop edx
push ebx
add dword [ebx + 0x2d4], 0x77e27723
xor dword [ebx + 0x154], 0x7e573cbd
not dword [ebx + 0x98]
sub dword [ebx + 0x1d4], 0x35731442
xor dword [ebx + 0x178], 0x21af1cf8
add dword [ebx + 0x164], 0x36e93713
sub dword [ebx + 0xc0], 0x4e9f4b81
not dword [ebx + 0x1a0]
sub dword [ebx + 0x88], 0x78fc00a9
add dword [ebx + 0x29c], 0x6e1362c3
xor dword [ebx + 0x3ec], 0x105f667a
not dword [ebx + 0x2a4]
not dword [ebx + 0x1fc]
not dword [ebx + 0x1b4]
xor dword [ebx + 0x1d0], 0x5a563c9c
not dword [ebx + 0x1cc]
not dword [ebx + 0x16c]
xor dword [ebx + 0x100], 0x72417f84
not dword [ebx + 0x2f4]
add dword [ebx + 0x1c0], 0x7abe7479
sub dword [ebx + 0x34c], 0x52b74aa5
sub dword [ebx + 0x108], 0xd422af9
not dword [ebx + 0x364]
add dword [ebx + 0x3e0], 0x2bdc7c45
xor dword [ebx + 0x250], 0x7a074745
add dword [ebx + 0x7c], 0x3910360c
not dword [ebx + 0x40]
sub dword [ebx + 0x374], 0x31ad0427
sub dword [ebx + 0xd8], 0xf3926e4
xor dword [ebx + 0x3f4], 0x2860603e
not dword [ebx + 0x13c]
not dword [ebx + 0x3a0]
xor dword [ebx + 0x220], 0x21374add
add dword [ebx + 0x4c], 0x10913abc
not dword [ebx + 0x10c]
xor dword [ebx + 0x20], 0x7dc57369
not dword [ebx + 0x17c]
not dword [ebx + 0x150]
add dword [ebx + 0x5c], 0x51010c27
add dword [ebx + 0x37c], 0x74533c86
not dword [ebx + 0x260]
add dword [ebx + 0x36c], 0x109a611f
add dword [ebx + 0x2b8], 0x2517f11
sub dword [ebx + 0x288], 0x63132e16
xor dword [ebx + 0x39c], 0x66b71b80
xor dword [ebx + 0x340], 0x314f566c
xor dword [ebx + 0x14], 0x17f42bce
sub dword [ebx + 0x74], 0x49cc083f
sub dword [ebx + 0x31c], 0x3be568c1
not dword [ebx + 0x3b0]
not dword [ebx + 0x330]
sub dword [ebx + 0xb4], 0x25ae56fa
add dword [ebx + 0x60], 0xe0b38a8
xor dword [ebx + 0x254], 0x2c8f2d86
sub dword [ebx + 0x25c], 0x592d2180
not dword [ebx + 0x354]
add dword [ebx + 0x194], 0x5b0149e9
sub dword [ebx + 0x1e4], 0x2fc12b26
xor dword [ebx + 0x388], 0x4b0c55a8
sub dword [ebx + 0x1ac], 0x584d7ec8
add dword [ebx + 0x1c4], 0x30605591
not dword [ebx + 0x2ac]
not dword [ebx + 0x94]
not dword [ebx + 0x120]
xor dword [ebx + 0x234], 0x500f3ede
xor dword [ebx + 0x314], 0x6889799b
sub dword [ebx + 0x310], 0xfde4a26
xor dword [ebx + 0x58], 0x21440201
add dword [ebx + 0x104], 0x3bf971a5
add dword [ebx + 0xd0], 0x36334520
xor dword [ebx + 0x198], 0x1dc43c6d
xor dword [ebx + 0x3c0], 0x182d05ae
add dword [ebx + 0x2f8], 0x5f1738c5
not dword [ebx + 0x30]
add dword [ebx + 0x3c], 0x7d5b73db
sub dword [ebx + 0xec], 0x476910b6
sub dword [ebx + 0x238], 0x7c0e7523
sub dword [ebx + 0x44], 0x78a42ef8
xor dword [ebx + 0x174], 0x220306e8
sub dword [ebx + 0x1a4], 0x161f3577
sub dword [ebx + 0x32c], 0x41a33161
not dword [ebx + 0xc4]
sub dword [ebx + 0x180], 0x6d6668f9
sub dword [ebx + 0x3b4], 0x4b801e27
sub dword [ebx + 0x3a8], 0x188d051a
xor dword [ebx + 0xa8], 0x5851490a
not dword [ebx + 0x394]
not dword [ebx + 0x268]
sub dword [ebx + 0xcc], 0x60385406
not dword [ebx + 0x344]
not dword [ebx + 0x2c4]
add dword [ebx + 0x190], 0x6b5669dd
not dword [ebx + 0x170]
add dword [ebx + 0x28], 0x65b2684
xor dword [ebx + 0x398], 0x4fa818a1
xor dword [ebx + 0x338], 0x4938318a
xor dword [ebx + 0x158], 0x53d66a4f
not dword [ebx + 0x318]
add dword [ebx + 0x1e8], 0x75e273e8
xor dword [ebx + 0x2a0], 0x36b97363
sub dword [ebx + 0x360], 0x5e1738f5
sub dword [ebx + 0x64], 0x34c35aff
add dword [ebx + 0xac], 0x7a6933b0
xor dword [ebx + 0x1a8], 0x39ef37c5
xor dword [ebx + 4], 0xaa81694
sub dword [ebx + 0x26c], 0x3bb4321e
xor dword [ebx + 0x210], 0x60734a02
not dword [ebx + 0x184]
xor dword [ebx + 0x3a4], 0x369c44ba
sub dword [ebx + 0x90], 0x59166dd5
not dword [ebx + 0x9c]
not dword [ebx + 0x128]
add dword [ebx + 0x214], 0x23d66dbb
not dword [ebx + 0x50]
sub dword [ebx + 0x280], 0x451f6ba8
xor dword [ebx + 0x23c], 0x45797c23
add dword [ebx + 0x138], 0x51117b02
sub dword [ebx + 0x368], 0x62544abf
sub dword [ebx + 0x3f8], 0x79a052f7
add dword [ebx + 0x3ac], 0x558f1179
xor dword [ebx + 0x20c], 0x6451d83
xor dword [ebx + 0x27c], 0x7aa822ab
not dword [ebx + 0x2b4]
not dword [ebx + 0x1c8]
sub dword [ebx + 0x54], 0x133b3c96
add dword [ebx + 0x6c], 0x3952194c
add dword [ebx + 0x80], 0x7c782f06
add dword [ebx + 0x228], 0x72c660ea
sub dword [ebx + 0xe4], 0x6271b64
not dword [ebx + 0x204]
not dword [ebx + 0x2bc]
sub dword [ebx + 0x3d0], 0x69b42f8c
not dword [ebx + 0x200]
xor dword [ebx + 0x2d0], 0x51421380
add dword [ebx + 0x70], 0x22317c44
not dword [ebx + 0x3b8]
not dword [ebx + 0x258]
sub dword [ebx + 0x38c], 0x5c751644
not dword [ebx + 0x18c]
xor dword [ebx + 0x390], 0x11dc6795
add dword [ebx + 0x3c4], 0x40371976
xor dword [ebx + 0x298], 0x15bb1eb0
not dword [ebx + 0x3cc]
sub dword [ebx + 0x240], 0x75ef120a
sub dword [ebx + 0x270], 0x221e60c4
xor dword [ebx + 0x2ec], 0x4b093d73
add dword [ebx + 0x320], 0x55942636
not dword [ebx + 0x3d8]
not dword [ebx + 0x244]
sub dword [ebx + 0x334], 0x70df06ea
xor dword [ebx + 0x130], 0x41442643
sub dword [ebx + 0x328], 0x117d2d1d
add dword [ebx + 0x160], 0x39314bd3
add dword [ebx + 0x358], 0x2ecb5ca8
xor dword [ebx + 8], 0x44386ded
add dword [ebx + 0xe8], 0x70fe6984
add dword [ebx + 0x14c], 0x32dc2411
not dword [ebx + 0x18]
xor dword [ebx + 0x1f0], 0x7bcf7fa0
not dword [ebx + 0x1b0]
not dword [ebx + 0x2e0]
sub dword [ebx + 0x2b0], 0x1dcc6b07
xor dword [ebx + 0xf0], 0x3ab14318
add dword [ebx + 0x1bc], 0x75882115
sub dword [ebx + 0x264], 0x1d6708b5
add dword [ebx + 0x3fc], 0x2185344a
add dword [ebx + 0x3c8], 0xdef6a8d
sub dword [ebx + 0x218], 0x280d4315
sub dword [ebx + 0x3dc], 0x334e08e2
xor dword [ebx + 0x3e4], 0x5e5f7134
sub dword [ebx + 0x78], 0xb960376
add dword [ebx + 0x278], 0x416540f0
add dword [ebx + 0x10], 0x2c436c82
add dword [ebx + 0x380], 0x2e6328d3
add dword [ebx + 0x3f0], 0x62292851
not dword [ebx + 0x21c]
add dword [ebx + 0x11c], 0x7f100d6
sub dword [ebx + 0x1b8], 0x595612c5
not dword [ebx + 0x294]
sub dword [ebx + 0x84], 0x209668d0
sub dword [ebx + 0xd4], 0x77020c61
xor dword [ebx + 0xb8], 0x2e2874e0
not dword [ebx + 0x350]
xor dword [ebx + 0x1c], 0x5c9b2e7f
sub dword [ebx + 0x8c], 0x314c14c6
sub dword [ebx + 0x2c0], 0x6a585c9e
xor dword [ebx + 0x2f0], 0x4c0c7cc9
add dword [ebx + 0x15c], 0x205e463c
add dword [ebx + 0x118], 0x2c966c1
add dword [ebx + 0x284], 0x3c0864ac
sub dword [ebx + 0x34], 0x321b57e3
not dword [ebx + 0x2a8]
sub dword [ebx + 0x1dc], 0x45b48cc
sub dword [ebx + 0x114], 0x98f700c
not dword [ebx + 0x348]
xor dword [ebx + 0x384], 0x2ada2a12
add dword [ebx + 0x3d4], 0x700c79c6
add dword [ebx + 0xf8], 0xd7b36e4
sub dword [ebx + 0x24c], 0x70fe0dc9
add dword [ebx + 0x38], 0x4f826b67
not dword [ebx + 0x68]
not dword [ebx + 0x2e4]
sub dword [ebx + 0x2c8], 0x70150031
sub dword [ebx + 0x208], 0x3eb67838
add dword [ebx + 0xdc], 0x3dbd1ef8
sub dword [ebx + 0x22c], 0x62fa3d60
sub dword [ebx + 0x30c], 0xade3454
xor dword [ebx + 0x1f4], 0x26b27756
add dword [ebx + 0x28c], 0x21212231
xor dword [ebx + 0x148], 0x4aae5b26
not dword [ebx + 0x324]
sub dword [ebx + 0x188], 0x6a36056
xor dword [ebx + 0x12c], 0x776f0cab
xor dword [ebx + 0xf4], 0x2cc95068
sub dword [ebx + 0x2cc], 0x7e6c5c26
sub dword [ebx + 0x370], 0x7a737365
not dword [ebx + 0xb0]
not dword [ebx + 0x300]
not dword [ebx + 0xc]
xor dword [ebx + 0x2fc], 0x8dd7d44
xor dword [ebx + 0xe0], 0x76cb6279
add dword [ebx + 0x1d8], 0x45367a3a
not dword [ebx + 0x168]
not dword [ebx + 0x230]
add dword [ebx + 0xa0], 0x615436eb
not dword [ebx + 0x2d8]
sub dword [ebx + 0x1e0], 0x3f931bee
sub dword [ebx + 0x35c], 0x72e44b3
xor dword [ebx + 0x2c], 0x3f433480
sub dword [ebx + 0x2e8], 0x32d72946
xor dword [ebx + 0x140], 0x136b05b4
xor dword [ebx + 0x24], 0x32b2776a
sub dword [ebx + 0x2dc], 0x724b7f30
sub dword [ebx + 0xc8], 0xdcd3bff
sub dword [ebx + 0x3bc], 0x7f856b12
add dword [ebx], 0x48b14347
sub dword [ebx + 0xbc], 0x65f160c9
xor dword [ebx + 0xa4], 0x526c16d1
sub dword [ebx + 0x304], 0x4e6b3cd6
sub dword [ebx + 0x224], 0xb872ee5
sub dword [ebx + 0x308], 0x75532168
not dword [ebx + 0x3e8]
xor dword [ebx + 0x110], 0x97f3cb6
add dword [ebx + 0xfc], 0x6eea346d
add dword [ebx + 0x124], 0x6a91a79
xor dword [ebx + 0x1ec], 0x2a269c7
sub dword [ebx + 0x290], 0x7eae75dd
add dword [ebx + 0x48], 0x38bb01a8
xor dword [ebx + 0x19c], 0x27911da5
add dword [ebx + 0x248], 0xe3a41c8
sub dword [ebx + 0x144], 0x38d77029
sub dword [ebx + 0x33c], 0xa00414a
sub dword [ebx + 0x274], 0x3c0e414b
not dword [ebx + 0x378]
sub dword [ebx + 0x134], 0x3e632e1c
add dword [ebx + 0x1f8], 0x334a5ca9
add edx, 0x400
add ebx, 0x400
cmp edx, 0x8c000
jne 0x1583017
call fcn.01540354
pop edi
pop esi
pop ebp
pop ebx
pop edx
pop ecx
pop eax