Function at 0x502000
Capabilities:
Encode data using xor

Disassembly:
push eax
push ecx
push edx
push ebx
push ebp
push esi
push edi
call 0x50200c
pop edx
sub edx, 0x8ca0c
push 0
pop ecx
push edx
not dword [edx + 0x1c0]
sub dword [edx + 0xec], 0x5187654d
sub dword [edx + 0xb4], 0x1c0e6a86
sub dword [edx + 0x2a4], 0x4d7f49bb
xor dword [edx + 0x10], 0x708a4432
not dword [edx + 0x31c]
sub dword [edx + 0x3a8], 0x34d71b01
xor dword [edx + 0x3d8], 0x157f3c36
not dword [edx + 0x104]
xor dword [edx + 0x138], 0x3a084d61
add dword [edx + 0x3b0], 0x3f2b52fc
xor dword [edx + 0x50], 0x7e084e42
sub dword [edx + 0x354], 0x72f65fcf
sub dword [edx + 0x35c], 0x767663c1
sub dword [edx + 0x3ac], 0x1b6e0170
add dword [edx + 0xe4], 0x78f546ae
xor dword [edx + 0x39c], 0x443f5ab4
add dword [edx + 0x264], 0x25ec18ce
not dword [edx + 0x220]
sub dword [edx + 0x3e0], 0x5e544a14
xor dword [edx + 0x70], 0x17316ee6
sub dword [edx + 0xf8], 0x7a80214
xor dword [edx + 0x378], 0x41503f4e
not dword [edx + 0x2f4]
sub dword [edx + 0x118], 0x779743f2
xor dword [edx + 0x318], 0x918062f
not dword [edx + 0x100]
not dword [edx + 0x4c]
sub dword [edx + 0xe8], 0x1e65339d
sub dword [edx + 0x170], 0xb6851a4
add dword [edx + 0x1d0], 0x50d36b33
sub dword [edx + 0x294], 0x24b67b42
sub dword [edx + 0x1ec], 0x392e40bd
xor dword [edx + 0xac], 0x4e7d6709
not dword [edx + 0xdc]
add dword [edx + 0x8c], 0x169f79e7
xor dword [edx + 0x360], 0x68536eaf
xor dword [edx + 0x114], 0x64f262f9
not dword [edx + 0x20]
add dword [edx + 0x3a4], 0x45b64e03
xor dword [edx + 0x154], 0x56793d24
not dword [edx + 0x298]
not dword [edx + 0x1e8]
xor dword [edx + 0x1e4], 0x48ac3f36
xor dword [edx + 0x230], 0x37682904
xor dword [edx + 0x3d4], 0x4452219b
xor dword [edx + 0x384], 0xd892fbd
xor dword [edx + 0x234], 0x7ac73078
sub dword [edx + 0x310], 0x5cb30b0
not dword [edx + 0x78]
add dword [edx + 0x178], 0x9f31d1b
sub dword [edx + 0xa0], 0x4e061335
xor dword [edx + 0x2d0], 0x74531323
sub dword [edx + 0x1b4], 0x67c22dff
not dword [edx + 0x324]
add dword [edx + 0x11c], 0x10af2f64
add dword [edx + 0x2c4], 0x6b80f94
add dword [edx + 0x2e4], 0x8e40fe8
add dword [edx + 0x198], 0x746932bc
add dword [edx + 0x218], 0x89e5579
xor dword [edx + 0x40], 0x2dda0f21
not dword [edx + 0xfc]
xor dword [edx + 0x2dc], 0x3ceb0b3f
not dword [edx + 0x2a8]
xor dword [edx + 0x240], 0x299f0236
xor dword [edx + 0x284], 0x2e679f9
xor dword [edx + 0x38c], 0x716178e8
sub dword [edx + 0x2e0], 0x7f334f69
add dword [edx + 0x288], 0xd650462
add dword [edx + 0x388], 0x2fa41ee6
add dword [edx + 0x2ec], 0x66e40a7e
sub dword [edx + 0x160], 0x29f26762
sub dword [edx + 0x3bc], 0x1145d0a
add dword [edx + 0x1f4], 0x24512d1f
sub dword [edx + 0x3cc], 0x3e7a5364
sub dword [edx + 0x27c], 0xa575139
add dword [edx + 0x2bc], 0x221b649b
xor dword [edx + 0x248], 0x155f526b
xor dword [edx + 0x320], 0x7bea30f1
sub dword [edx + 0x2c0], 0x3f3f3477
sub dword [edx + 0x60], 0x2fae0498
sub dword [edx + 0x1dc], 0x2efe60c0
xor dword [edx + 0x24c], 0x252750b5
sub dword [edx + 0x268], 0x6dfe7a60
xor dword [edx + 0x18], 0xa436adb
xor dword [edx + 0x3dc], 0x10da5411
not dword [edx + 0x48]
xor dword [edx + 0x1d4], 0x4c700512
xor dword [edx + 0x98], 0x2ab33645
sub dword [edx + 0x7c], 0x54310441
add dword [edx + 8], 0x850118b
not dword [edx + 0x130]
not dword [edx + 0x254]
sub dword [edx + 0x3b4], 0x29a17a74
sub dword [edx + 0x278], 0x1742818
sub dword [edx + 0x19c], 0x633971f1
xor dword [edx + 0x2b8], 0x2e157c45
xor dword [edx + 0x36c], 0x65a10988
not dword [edx + 0x124]
add dword [edx + 0x2e8], 0x33301c21
xor dword [edx + 0x20c], 0x1cec6c0e
sub dword [edx + 0xd8], 0x53b7301e
sub dword [edx + 0x270], 0x4e24568c
not dword [edx + 0x15c]
xor dword [edx + 0x168], 0x17903f76
not dword [edx + 0x3a0]
not dword [edx + 0x13c]
xor dword [edx + 0x3e8], 0x43636cf3
xor dword [edx + 0xe0], 0x612b29aa
sub dword [edx + 0x12c], 0x58761d4a
not dword [edx + 0x144]
xor dword [edx + 0x184], 0x263d7d37
not dword [edx]
add dword [edx + 0x74], 0x4e94054f
xor dword [edx + 0x250], 0x18213471
not dword [edx + 0x23c]
not dword [edx + 0xc0]
not dword [edx + 0x1f0]
xor dword [edx + 0x148], 0x498d5f2e
xor dword [edx + 0x44], 0x3a1b47c1
xor dword [edx + 0x68], 0x12a17db7
xor dword [edx + 0x3f4], 0x53bb413b
xor dword [edx + 0x1c4], 0x7e427cac
add dword [edx + 0x6c], 0xd5e2f27
not dword [edx + 0x190]
sub dword [edx + 0x34], 0x492f4796
xor dword [edx + 0x334], 0x529f79ba
sub dword [edx + 0x64], 0x54e12ce
add dword [edx + 0x10c], 0x72723185
xor dword [edx + 0x358], 0x8d8147e
add dword [edx + 0x38], 0x2a324fea
sub dword [edx + 0x58], 0x33c702d
sub dword [edx + 0x1a8], 0x272241a1
xor dword [edx + 0x304], 0x112c737f
not dword [edx + 0x370]
add dword [edx + 0x174], 0x14562f58
xor dword [edx + 0x30], 0x7e1b25a6
xor dword [edx + 0x2d8], 0x313a5c2f
xor dword [edx + 0x3c8], 0x4dd81728
xor dword [edx + 0x200], 0x22e8018b
add dword [edx + 0x28], 0x840482c
add dword [edx + 0xd4], 0x71f53c2
add dword [edx + 0x110], 0x7504623b
add dword [edx + 0xb8], 0x5e245e19
sub dword [edx + 0x1b8], 0xa57799b
xor dword [edx + 0x1e0], 0x4cbb1cda
xor dword [edx + 0x2c], 0x4f6d1e90
xor dword [edx + 0xcc], 0x3cc94273
not dword [edx + 0x150]
xor dword [edx + 0x158], 0x25e37b3e
add dword [edx + 0x17c], 0x1be67107
not dword [edx + 0x3f0]
not dword [edx + 0x238]
sub dword [edx + 0x374], 0x51c4311e
xor dword [edx + 0x1ac], 0x2a2e4d0b
sub dword [edx + 0x2b0], 0x5a147b73
xor dword [edx + 0xf0], 0x63984d4c
sub dword [edx + 0x2fc], 0x61f136a7
sub dword [edx + 0x398], 0x384b3dd8
sub dword [edx + 0x25c], 0x57e05951
xor dword [edx + 0x3c4], 0x257046f
sub dword [edx + 0x94], 0x5e9d45a0
xor dword [edx + 0x258], 0x92c4a6f
add dword [edx + 0x28c], 0x4744106a
xor dword [edx + 0x88], 0x5a493be4
add dword [edx + 0x340], 0x6cfa7719
xor dword [edx + 0x1cc], 0x10b70dc1
not dword [edx + 0x134]
sub dword [edx + 0x140], 0x53d44a79
not dword [edx + 0x108]
add dword [edx + 0xd0], 0x4bfe2ab3
xor dword [edx + 0x2f0], 0x637f6e4b
sub dword [edx + 0x1bc], 0x754d1bc8
xor dword [edx + 0x328], 0x74bc2943
not dword [edx + 0x1c8]
sub dword [edx + 0x244], 0x5564441e
sub dword [edx + 0x128], 0xe4601ce
not dword [edx + 0x1b0]
not dword [edx + 0x314]
sub dword [edx + 0x1c], 0x79ab6883
add dword [edx + 0x3e4], 0x7e5d4c85
xor dword [edx + 0x120], 0x23114df8
xor dword [edx + 0x204], 0x4b1e55b4
xor dword [edx + 0x34c], 0x4c3078ce
sub dword [edx + 0x194], 0x43577e62
add dword [edx + 0xc], 0x7a9f0bc3
add dword [edx + 0x214], 0x7be661d2
not dword [edx + 0x3c]
xor dword [edx + 0x260], 0x503e3d2a
xor dword [edx + 0x3ec], 0x2169004e
xor dword [edx + 0x2d4], 0x7096446f
add dword [edx + 0x2a0], 0x39f718d2
add dword [edx + 0x2c8], 0x38764346
not dword [edx + 0x84]
add dword [edx + 4], 0x710f37c4
not dword [edx + 0x2b4]
not dword [edx + 0x338]
not dword [edx + 0x80]
xor dword [edx + 0x2f8], 0x1f9b1fc0
add dword [edx + 0x274], 0x4d265608
not dword [edx + 0x1a4]
xor dword [edx + 0x164], 0x328c22a9
not dword [edx + 0x344]
sub dword [edx + 0x228], 0x57da23eb
xor dword [edx + 0x300], 0x49956f92
xor dword [edx + 0x208], 0x6f6529b6
sub dword [edx + 0xc4], 0x4c367ff5
xor dword [edx + 0x1a0], 0x58426e6d
not dword [edx + 0x30c]
xor dword [edx + 0x22c], 0x347f4604
not dword [edx + 0x350]
add dword [edx + 0x2ac], 0x1c3f1bee
not dword [edx + 0xb0]
sub dword [edx + 0xbc], 0x6feb30d1
xor dword [edx + 0x3d0], 0x38417745
not dword [edx + 0x188]
add dword [edx + 0x180], 0x50fa76af
not dword [edx + 0x3b8]
add dword [edx + 0x210], 0x60d93a25
xor dword [edx + 0x21c], 0x6e72189
add dword [edx + 0x368], 0x35a97935
add dword [edx + 0x2cc], 0x1c5d2c26
sub dword [edx + 0x14], 0x4242005f
sub dword [edx + 0xa4], 0x1a85105a
xor dword [edx + 0x9c], 0x58f376a7
xor dword [edx + 0x90], 0x87775c7
xor dword [edx + 0x54], 0x664a50f4
not dword [edx + 0x330]
xor dword [edx + 0x29c], 0x26132561
sub dword [edx + 0xc8], 0x6ae3041a
xor dword [edx + 0xa8], 0x7d4d1f19
add dword [edx + 0x1fc], 0x2e1b7816
add dword [edx + 0x308], 0x41d17a00
xor dword [edx + 0x394], 0x37b3c00
not dword [edx + 0x3f8]
add dword [edx + 0x3c0], 0x448a6434
xor dword [edx + 0x390], 0x68bb5e6e
sub dword [edx + 0x14c], 0x3d354e93
add dword [edx + 0x5c], 0x75dd470d
xor dword [edx + 0x24], 0x779d3a9a
sub dword [edx + 0x348], 0xef62abd
not dword [edx + 0x364]
sub dword [edx + 0x37c], 0x5a436697
sub dword [edx + 0x33c], 0x6a265b43
add dword [edx + 0x280], 0x51df2b24
sub dword [edx + 0x26c], 0x3e5b0577
not dword [edx + 0xf4]
add dword [edx + 0x18c], 0x2dee1d54
xor dword [edx + 0x1f8], 0x3c64467f
add dword [edx + 0x3fc], 0xca32343
xor dword [edx + 0x1d8], 0x6f374a66
sub dword [edx + 0x224], 0x667637b1
not dword [edx + 0x16c]
xor dword [edx + 0x290], 0x74935eca
xor dword [edx + 0x32c], 0x3a46267f
sub dword [edx + 0x380], 0x39c45eee
add ecx, 0x400
add edx, 0x400
cmp ecx, 0x8c000
jne 0x502017
call fcn.004bf554
pop edi
pop esi
pop ebp
pop ebx
pop edx
pop ecx
pop eax