Function at 0x501000
Capabilities:
Encode data using xor

Disassembly:
push eax
push ecx
push edx
push ebx
push ebp
push esi
push edi
call 0x50100c
pop edx
sub edx, 0x8c60c
push 0
pop edi
push edx
sub dword [edx + 8], 0x5aec3847
not dword [edx + 0x104]
xor dword [edx + 0x208], 0x42e030c0
not dword [edx + 0x54]
add dword [edx + 0x3e0], 0xb4d3516
xor dword [edx + 0xd8], 0x61b75ae6
xor dword [edx + 0x74], 0x7b82463e
xor dword [edx + 0xfc], 0x6c223336
not dword [edx + 0x1ac]
not dword [edx + 0x210]
add dword [edx + 0x348], 0x1a1b3e38
not dword [edx + 0x68]
sub dword [edx + 0xac], 0x7aa544e3
not dword [edx + 0x378]
sub dword [edx + 0x194], 0x446a632d
not dword [edx + 0x2f4]
add dword [edx + 0x2c8], 0x4db36c93
add dword [edx + 0x20], 0x46966e1a
add dword [edx + 0x3e8], 0x31a03474
xor dword [edx + 0x19c], 0x296e3d62
not dword [edx + 0x1b8]
xor dword [edx + 0x148], 0x26b40f66
sub dword [edx + 0x3bc], 0x38bd70dc
not dword [edx + 0x3b8]
add dword [edx + 0x260], 0x1f3e70fd
sub dword [edx + 0x1dc], 0xb550d2a
add dword [edx + 0x20c], 0x7ad06ac6
add dword [edx + 0x230], 0x4fc71df6
sub dword [edx + 0x17c], 0x725b11e3
xor dword [edx + 0x128], 0x2ab07498
add dword [edx + 0x3e4], 0xc5d6e31
xor dword [edx + 0x2c0], 0x4fbd4248
add dword [edx + 0x34], 0x7f5462c
add dword [edx + 0x200], 0xcb45eec
xor dword [edx + 0x3a0], 0x703440d3
add dword [edx + 0x10c], 0x3171556
sub dword [edx + 0x13c], 0x445b33b6
not dword [edx + 0x344]
sub dword [edx + 0x370], 0xc464200
xor dword [edx + 0x2ac], 0x6b781064
sub dword [edx + 0x318], 0x405645e8
add dword [edx + 0x364], 0x441d00eb
add dword [edx + 0x1e8], 0x28ae290f
add dword [edx + 0x168], 0x599425f
sub dword [edx + 0x330], 0x107d030c
add dword [edx + 0xa0], 0x396f5683
add dword [edx + 0x198], 0xa435ec4
sub dword [edx + 0x158], 0x31db7f25
xor dword [edx + 0x2bc], 0x2cba4d5e
add dword [edx + 0x3b4], 0xb8f5c5e
add dword [edx + 0x1f4], 0x6e5e2eae
add dword [edx + 0x150], 0x43e22500
not dword [edx + 0x164]
not dword [edx + 0x334]
not dword [edx + 0xe8]
sub dword [edx + 0x170], 0x67553681
xor dword [edx + 0x2dc], 0x3c5d7131
sub dword [edx + 0x6c], 0x139b0b7b
xor dword [edx + 0x190], 0x1af92108
add dword [edx + 0x84], 0x49da3b36
sub dword [edx + 0x108], 0x443173eb
add dword [edx + 0x174], 0x1ec80fe3
xor dword [edx + 0x1c4], 0x4fb36d9c
xor dword [edx + 0x390], 0x75850abe
add dword [edx + 0x98], 0x74766ac9
not dword [edx + 0x140]
add dword [edx + 0x204], 0x4bcc0fb1
not dword [edx + 0x2d0]
xor dword [edx + 0x2f8], 0x3ede0184
sub dword [edx + 0x298], 0x4e451bae
xor dword [edx + 0x9c], 0x4b7715c1
not dword [edx + 0x3d0]
not dword [edx + 0x360]
xor dword [edx + 0x244], 0x7a0c1c7f
add dword [edx + 0x3f8], 0x1b5379bc
add dword [edx + 0x37c], 0xcf506d7
sub dword [edx + 0x1e4], 0x6bc130cd
not dword [edx + 0x60]
not dword [edx + 0x24c]
add dword [edx + 0x3ac], 0x65ff2945
not dword [edx + 0x1c0]
add dword [edx + 0x2a0], 0x207a3519
not dword [edx + 0xd4]
sub dword [edx + 0x120], 0x71800a99
xor dword [edx + 0x2e0], 0x6f8c2d49
sub dword [edx + 0x288], 0x7ebb38ca
not dword [edx + 0x118]
sub dword [edx + 0x1d8], 0x55ff3823
sub dword [edx + 0x314], 0x41185927
not dword [edx + 0x50]
xor dword [edx + 0x224], 0x1fcf001e
xor dword [edx + 0x3f0], 0x6ccd2dfc
add dword [edx + 0x21c], 0x6ef245fb
xor dword [edx + 0xec], 0x7fa6503e
sub dword [edx + 0xb4], 0x26d05380
sub dword [edx + 0x1c], 0x5c152908
xor dword [edx + 0xbc], 0x16431d89
sub dword [edx + 0x358], 0x365074b
not dword [edx + 0x2b8]
add dword [edx + 0x354], 0x23866dcc
sub dword [edx + 0x18c], 0x525b1b0b
not dword [edx + 0xe0]
sub dword [edx + 0x1c8], 0x759854a2
add dword [edx + 0xc4], 0x57c93f7e
add dword [edx + 0x380], 0x1f871ee9
not dword [edx + 0x36c]
not dword [edx + 0x258]
add dword [edx + 0xe4], 0x76a840df
not dword [edx + 0x12c]
xor dword [edx + 0x14], 0x4a776c0a
sub dword [edx + 0x34c], 0x57222247
not dword [edx + 0x228]
xor dword [edx + 0x110], 0x13413681
not dword [edx + 0x3dc]
add dword [edx + 0x3b0], 0x49e20a09
add dword [edx + 0x4c], 0x7fe70d65
sub dword [edx + 0x1a0], 0x3f230f94
sub dword [edx + 0x1d4], 0x4d06f34
not dword [edx + 0x35c]
xor dword [edx + 0x25c], 0x33932c0f
xor dword [edx + 0x3d8], 0x247f6ef8
xor dword [edx + 0x90], 0x66361c81
add dword [edx + 0x1ec], 0x7f866bc2
sub dword [edx + 0x33c], 0x671c6e72
sub dword [edx + 0x2ec], 0x6d9436e1
sub dword [edx + 0x238], 0x766e5e04
add dword [edx + 0xf4], 0x6ce62645
add dword [edx + 0xdc], 0x72a03ab3
sub dword [edx + 0x178], 0x58f65a8c
sub dword [edx + 0x3c], 0xb126f7b
sub dword [edx + 0x2cc], 0x7eb40880
not dword [edx + 0xc]
not dword [edx + 0x1f0]
not dword [edx + 0x3f4]
add dword [edx + 0x274], 0x3ce20240
xor dword [edx + 0x8c], 0xc134d
sub dword [edx + 0x264], 0x2a870551
xor dword [edx + 0x214], 0x56b64b2c
add dword [edx + 0x188], 0x5e9022f3
not dword [edx + 0x338]
xor dword [edx + 0x218], 0x5ef2069f
not dword [edx + 0x2e4]
sub dword [edx + 0x248], 0x1abb19de
sub dword [edx + 0x38c], 0x290a2183
not dword [edx + 0x240]
add dword [edx + 0x22c], 0x56306e3f
add dword [edx + 0x26c], 0x5f4b6932
not dword [edx + 0x1e0]
xor dword [edx + 0x14c], 0x283a4e0d
xor dword [edx + 0x44], 0x36c81c13
add dword [edx + 0x58], 0x2f7d3d6f
not dword [edx + 0x10]
not dword [edx + 0x78]
sub dword [edx + 0x30c], 0x3f3045aa
sub dword [edx + 0x114], 0x2fc01862
sub dword [edx + 4], 0x1c3c7434
not dword [edx + 0x5c]
sub dword [edx + 0x23c], 0x771e73c8
not dword [edx]
not dword [edx + 0x304]
sub dword [edx + 0x134], 0x290c2420
add dword [edx + 0x11c], 0x3cc25842
not dword [edx + 0x350]
not dword [edx + 0x144]
sub dword [edx + 0x28], 0x79e075c3
sub dword [edx + 0x2a4], 0x182155a9
xor dword [edx + 0xa4], 0x9767bca
not dword [edx + 0x388]
sub dword [edx + 0x328], 0x3f942f81
sub dword [edx + 0x29c], 0x4ec626e3
sub dword [edx + 0x154], 0x35c2922
not dword [edx + 0x270]
add dword [edx + 0x3cc], 0x1a64dc8
sub dword [edx + 0x220], 0x66ae6eac
xor dword [edx + 0xc8], 0x4a7620b3
add dword [edx + 0x1b4], 0x69e139a1
sub dword [edx + 0x7c], 0x4d8d0b14
add dword [edx + 0x308], 0x73b83a88
sub dword [edx + 0x2d8], 0x56ad543e
xor dword [edx + 0x1bc], 0x17d17bd8
xor dword [edx + 0x394], 0x99e4453
sub dword [edx + 0x290], 0x75d47e87
xor dword [edx + 0xcc], 0x127267b9
sub dword [edx + 0x27c], 0x6b933639
not dword [edx + 0x2c]
sub dword [edx + 0x1f8], 0x4e274861
not dword [edx + 0x1a8]
sub dword [edx + 0x16c], 0x324c7d39
xor dword [edx + 0x2c4], 0x419d6a0f
sub dword [edx + 0x2b0], 0x50bc2a43
not dword [edx + 0x30]
add dword [edx + 0x3c4], 0x3b470597
not dword [edx + 0x3a8]
add dword [edx + 0x160], 0x3a12277e
add dword [edx + 0x3c8], 0x5f886446
xor dword [edx + 0x2fc], 0x73835f93
not dword [edx + 0x94]
xor dword [edx + 0x18], 0x472802b9
sub dword [edx + 0xf0], 0x132c4825
add dword [edx + 0x184], 0x59ea00dc
not dword [edx + 0xc0]
add dword [edx + 0x278], 0x1f173b0c
not dword [edx + 0x180]
sub dword [edx + 0x300], 0x7d0e2d90
sub dword [edx + 0xb0], 0x53e6ec8
add dword [edx + 0x250], 0x71d44ab7
sub dword [edx + 0x280], 0x728f244e
not dword [edx + 0xb8]
xor dword [edx + 0x268], 0x780845bf
xor dword [edx + 0x1b0], 0x6c5406d
not dword [edx + 0x64]
not dword [edx + 0x28c]
sub dword [edx + 0x2a8], 0x39f63c73
not dword [edx + 0x2f0]
xor dword [edx + 0x254], 0x3c837a46
not dword [edx + 0x40]
add dword [edx + 0xf8], 0x606d4695
xor dword [edx + 0x100], 0x258522e4
xor dword [edx + 0xa8], 0x28241385
not dword [edx + 0x1a4]
sub dword [edx + 0x15c], 0x102c05a8
not dword [edx + 0x398]
xor dword [edx + 0x3ec], 0x39910c5b
sub dword [edx + 0x284], 0x2a8a12a8
not dword [edx + 0x38]
sub dword [edx + 0x340], 0x6c8d5ece
not dword [edx + 0xd0]
sub dword [edx + 0x374], 0x6f906a17
sub dword [edx + 0x3d4], 0x47466f6f
xor dword [edx + 0x1fc], 0x14ad0af1
sub dword [edx + 0x294], 0x18de34f7
sub dword [edx + 0x3fc], 0x7c625fdc
sub dword [edx + 0x70], 0x95b47c2
not dword [edx + 0x310]
add dword [edx + 0x368], 0x61e95ef9
sub dword [edx + 0x3a4], 0x3c627b74
not dword [edx + 0x234]
xor dword [edx + 0x2e8], 0x103e2ee4
sub dword [edx + 0x124], 0x25314447
not dword [edx + 0x31c]
not dword [edx + 0x88]
sub dword [edx + 0x24], 0x647c76cd
sub dword [edx + 0x1d0], 0x3a62534f
xor dword [edx + 0x130], 0x22e037f1
not dword [edx + 0x48]
sub dword [edx + 0x2b4], 0x28365dab
add dword [edx + 0x3c0], 0x56857708
add dword [edx + 0x384], 0x397a7158
add dword [edx + 0x32c], 0x6ac07ef3
not dword [edx + 0x138]
sub dword [edx + 0x80], 0x18277ce
add dword [edx + 0x39c], 0x57424903
add dword [edx + 0x2d4], 0x1ead18f1
xor dword [edx + 0x324], 0x3a153313
sub dword [edx + 0x1cc], 0x3c380cbb
add dword [edx + 0x320], 0x18df7414
add edi, 0x400
add edx, 0x400
cmp edi, 0x8c000
jne 0x501017
call fcn.004be954
pop edi
pop esi
pop ebp
pop ebx
pop edx
pop ecx
pop eax