Function at 0x4a7000
Capabilities:
Encode data using xor

Disassembly:
push eax
push ecx
push edx
push ebx
push ebp
push esi
push edi
call 0x4a700c
pop edx
sub edx, 0x8c60c
push 0
pop edi
push edx
not dword [edx + 0x1c4]
xor dword [edx + 0x2fc], 0x19f80242
xor dword [edx + 0x28c], 0x54cb740f
sub dword [edx + 0x198], 0x4869d3
xor dword [edx + 0x314], 0x14d925a5
add dword [edx], 0x4b41104e
not dword [edx + 0x17c]
xor dword [edx + 0x1d4], 0x3e7279e
add dword [edx + 0x19c], 0x4b424882
xor dword [edx + 0x8c], 0x11986e77
not dword [edx + 0x1b8]
add dword [edx + 0x130], 0xd1c40b6
sub dword [edx + 0x1cc], 0x757a0bed
not dword [edx + 0xc0]
not dword [edx + 0x2e4]
add dword [edx + 0x1fc], 0xf0b7141
add dword [edx + 0x214], 0x4aee7392
xor dword [edx + 0x90], 0x98b2de8
not dword [edx + 0xf4]
xor dword [edx + 0x11c], 0x5c583ad8
not dword [edx + 0x2ec]
add dword [edx + 0x3e8], 0x11a02edc
sub dword [edx + 0x310], 0x4fd63646
not dword [edx + 0x398]
add dword [edx + 0x34], 0x42c44918
xor dword [edx + 0x68], 0x57de290c
xor dword [edx + 0x324], 0x45f20973
sub dword [edx + 0x14], 0x6ed05dd7
add dword [edx + 0x294], 0x641d71d3
add dword [edx + 0x3e0], 0x29000d78
sub dword [edx + 0x230], 0x68274447
not dword [edx + 0x184]
add dword [edx + 0x2c4], 0x7d5f0d04
not dword [edx + 0x104]
xor dword [edx + 0x34c], 0x4d231c35
add dword [edx + 0x23c], 0x3dcb54b8
xor dword [edx + 0x358], 0x439d719e
not dword [edx + 0xe8]
sub dword [edx + 0x330], 0x5dfb233e
xor dword [edx + 0x3ac], 0x3ab9705b
sub dword [edx + 0x160], 0x73943418
not dword [edx + 0x384]
xor dword [edx + 0x194], 0x66f32ba9
xor dword [edx + 0x3c], 0x5e754560
sub dword [edx + 0x21c], 0x1a785ad2
xor dword [edx + 0x174], 0x7dda74e6
sub dword [edx + 0x1c8], 0x16f72296
xor dword [edx + 0x1f0], 0x603f245c
not dword [edx + 0x1c]
add dword [edx + 0x204], 0x7dda0cfd
not dword [edx + 0x15c]
sub dword [edx + 0xf8], 0x13be19d0
not dword [edx + 0x354]
add dword [edx + 0x33c], 0x3e1578af
xor dword [edx + 0x94], 0x793d5604
not dword [edx + 0x124]
xor dword [edx + 0x344], 0x4f1c681e
not dword [edx + 0x1ac]
not dword [edx + 0x28]
not dword [edx + 0x1c0]
add dword [edx + 0x1f8], 0x3c9b2447
not dword [edx + 0x44]
sub dword [edx + 0xb4], 0x3abb551c
not dword [edx + 0xb8]
add dword [edx + 0x80], 0x286a0858
sub dword [edx + 0x1e4], 0x33ef23a0
not dword [edx + 0x3c8]
not dword [edx + 0x3f4]
xor dword [edx + 0x320], 0x2507496e
sub dword [edx + 0x114], 0x49d51ee2
xor dword [edx + 0x3d8], 0x256c05d4
add dword [edx + 0x29c], 0x42931441
add dword [edx + 0x30], 0x191c29cd
not dword [edx + 0x218]
sub dword [edx + 0xbc], 0x6e9f034f
xor dword [edx + 0x1dc], 0x5424246
sub dword [edx + 0x3a8], 0x2fa920bd
add dword [edx + 0x190], 0x152f69e6
xor dword [edx + 0xcc], 0x3d14397b
add dword [edx + 0xc], 0x4d2312d3
sub dword [edx + 0x48], 0x3ca1631
xor dword [edx + 0x290], 0x2fc53a92
sub dword [edx + 0x12c], 0x4a09735c
sub dword [edx + 0x340], 0x10f331b2
sub dword [edx + 0x2b8], 0x67fd6ffa
add dword [edx + 0x16c], 0x12c82d42
xor dword [edx + 0x288], 0x1ed93ded
add dword [edx + 0x3d0], 0x234328c0
sub dword [edx + 0x1f4], 0x288d6ee1
xor dword [edx + 0x3f0], 0x1969354b
add dword [edx + 0x350], 0x4d6d4eae
xor dword [edx + 0x164], 0x4497174a
xor dword [edx + 0x264], 0x44037123
not dword [edx + 0x2a4]
not dword [edx + 0x3dc]
not dword [edx + 0x37c]
not dword [edx + 0xfc]
add dword [edx + 0x5c], 0x197406c3
not dword [edx + 0x170]
add dword [edx + 0x200], 0x4253d8a
not dword [edx + 0xa4]
sub dword [edx + 0x280], 0x48b45cc6
sub dword [edx + 0x2c0], 0x331e6097
sub dword [edx + 0x388], 0x4e5765f4
add dword [edx + 0x1bc], 0x1eb21583
add dword [edx + 0x3c0], 0x2e013579
xor dword [edx + 0x2f0], 0x3f074498
not dword [edx + 0x338]
sub dword [edx + 0x2d8], 0x4a471aff
sub dword [edx + 0x3cc], 0x512740de
sub dword [edx + 0xd8], 0x6f55568e
not dword [edx + 0x74]
xor dword [edx + 0x2b4], 0x38e30693
sub dword [edx + 0x348], 0x57fe1f73
sub dword [edx + 0x1b0], 0x5804517e
sub dword [edx + 0x3b8], 0xc10d64
xor dword [edx + 0x268], 0x7bc66f61
not dword [edx + 0x3f8]
sub dword [edx + 0x36c], 0x55185c66
sub dword [edx + 4], 0x5d681a69
not dword [edx + 0x138]
xor dword [edx + 0x380], 0x469b5b92
xor dword [edx + 0x368], 0x79d15e59
not dword [edx + 0x244]
not dword [edx + 0x3e4]
add dword [edx + 0x58], 0xb9a257c
add dword [edx + 0x300], 0x6c891eac
xor dword [edx + 0x258], 0x12b46ee0
not dword [edx + 0xe0]
not dword [edx + 0x2c]
xor dword [edx + 0xac], 0x453a31e7
add dword [edx + 0x220], 0x72826321
sub dword [edx + 0x148], 0xa70596b
add dword [edx + 0x100], 0x70f849aa
sub dword [edx + 0xa8], 0xb7966ef
sub dword [edx + 0xf0], 0x195175d8
not dword [edx + 0x3a4]
xor dword [edx + 0x40], 0x24705d28
add dword [edx + 0x22c], 0x6b4c6350
not dword [edx + 0x270]
sub dword [edx + 0x1ec], 0x26c7101c
xor dword [edx + 0xe4], 0x27224667
not dword [edx + 0x38]
not dword [edx + 8]
not dword [edx + 0x10]
not dword [edx + 0x7c]
sub dword [edx + 0x10c], 0x587f3a09
not dword [edx + 0x20c]
add dword [edx + 0x304], 0x81d40c3
sub dword [edx + 0x18], 0x71cf2dbf
xor dword [edx + 0x1b4], 0x78a938ba
not dword [edx + 0x2a0]
add dword [edx + 0x35c], 0x4bec7a3f
sub dword [edx + 0xd0], 0x268a4fce
not dword [edx + 0xd4]
xor dword [edx + 0x2b0], 0x45fc60e9
add dword [edx + 0x2f8], 0x2ff93794
add dword [edx + 0x64], 0x40b96f41
sub dword [edx + 0xc4], 0x6e576177
xor dword [edx + 0x1a4], 0x52515143
not dword [edx + 0x4c]
not dword [edx + 0x78]
xor dword [edx + 0x2dc], 0x309e3ec1
add dword [edx + 0x2cc], 0x569653cf
sub dword [edx + 0x13c], 0x522b3233
sub dword [edx + 0x3fc], 0x611e4785
not dword [edx + 0x228]
xor dword [edx + 0x31c], 0x102a7b47
sub dword [edx + 0x50], 0x78f04ed2
sub dword [edx + 0x27c], 0x65460075
sub dword [edx + 0x110], 0x37bb4b3d
sub dword [edx + 0x208], 0x7e186f8a
add dword [edx + 0x240], 0x2b8c6fd0
xor dword [edx + 0x70], 0x4520571f
xor dword [edx + 0x120], 0x5aaa72f0
add dword [edx + 0x98], 0x2d5f02aa
xor dword [edx + 0x134], 0x5b944e3f
add dword [edx + 0x178], 0x5538467d
not dword [edx + 0x140]
sub dword [edx + 0x6c], 0x27644d98
not dword [edx + 0x14c]
sub dword [edx + 0x250], 0x636c7290
add dword [edx + 0x2d4], 0x16dc6bef
xor dword [edx + 0x328], 0x44e079d
add dword [edx + 0x54], 0x2b1e49e3
add dword [edx + 0x2ac], 0x11f123be
add dword [edx + 0x274], 0x75ff6807
xor dword [edx + 0x248], 0x7b411596
sub dword [edx + 0x118], 0x35f443a9
xor dword [edx + 0x254], 0x6171770c
not dword [edx + 0x60]
sub dword [edx + 0x260], 0x631d6ece
sub dword [edx + 0x2e0], 0x5ca10889
not dword [edx + 0x1e8]
sub dword [edx + 0x1d0], 0x40500ad5
not dword [edx + 0x224]
sub dword [edx + 0x2d0], 0x35f8563b
sub dword [edx + 0x18c], 0x73ef4f84
sub dword [edx + 0x158], 0x21f32dbf
not dword [edx + 0x38c]
xor dword [edx + 0xdc], 0x76480f54
not dword [edx + 0x25c]
sub dword [edx + 0x334], 0x46b80663
add dword [edx + 0x24c], 0x41652bb4
not dword [edx + 0xa0]
not dword [edx + 0x298]
sub dword [edx + 0x26c], 0x4f1914f1
sub dword [edx + 0x2c8], 0x59864702
xor dword [edx + 0x88], 0x513027c3
add dword [edx + 0x3b4], 0x26283069
add dword [edx + 0x32c], 0x1a0d071a
add dword [edx + 0x144], 0x5bcc0da9
sub dword [edx + 0x150], 0x1b2d3a31
add dword [edx + 0x2bc], 0x6d0f7b49
not dword [edx + 0x180]
xor dword [edx + 0x3a0], 0x4cb83cba
xor dword [edx + 0x30c], 0x22676b11
not dword [edx + 0x2a8]
xor dword [edx + 0xc8], 0x3773797c
add dword [edx + 0x20], 0x2dc15e1a
xor dword [edx + 0x128], 0x193610f
sub dword [edx + 0x374], 0x427f14b4
not dword [edx + 0x108]
add dword [edx + 0x3c4], 0x5a861ebe
xor dword [edx + 0x364], 0x5bf3a8c
add dword [edx + 0x390], 0x650d46ae
add dword [edx + 0x238], 0x76856797
add dword [edx + 0x84], 0x31e19bb
not dword [edx + 0x210]
not dword [edx + 0x154]
not dword [edx + 0x168]
sub dword [edx + 0x188], 0x25b60ac8
not dword [edx + 0x2f4]
not dword [edx + 0x370]
sub dword [edx + 0x378], 0x7f644146
sub dword [edx + 0x394], 0x337a1241
not dword [edx + 0x1e0]
sub dword [edx + 0x39c], 0x23d57a5b
add dword [edx + 0x3d4], 0x6eb44ef4
xor dword [edx + 0x284], 0x4ec738e7
xor dword [edx + 0x24], 0x1ffe3563
xor dword [edx + 0x318], 0x74e62245
xor dword [edx + 0x360], 0x7345084f
add dword [edx + 0x2e8], 0x3b9b49b8
not dword [edx + 0x3ec]
xor dword [edx + 0x234], 0x59501cc3
sub dword [edx + 0x308], 0x6c307488
sub dword [edx + 0xb0], 0x62f77e19
xor dword [edx + 0x3b0], 0x9d3b1c
not dword [edx + 0x1a0]
xor dword [edx + 0x1d8], 0x3a2a6e28
not dword [edx + 0x1a8]
add dword [edx + 0x3bc], 0x16752061
add dword [edx + 0x278], 0x459e7f47
sub dword [edx + 0x9c], 0x2922735d
not dword [edx + 0xec]
add edi, 0x400
add edx, 0x400
cmp edi, 0x8c000
jne 0x4a7017
call fcn.00464954
pop edi
pop esi
pop ebp
pop ebx
pop edx
pop ecx
pop eax
push ebp
mov ebp, esp
sub esp, 0x10
fcomp st(2)
fmul st(7)
call fcn.004a7b9b
mov dx, bx
lea esi, [0x400aae]
test eax, esi
jne 0x4a78cc
sub edi, 0x2fb5
call fcn.004a7b05
call fcn.004a7bd1
call fcn.004a7b9b
fcmove st(0), st(4)
fst st(0)
fcom st(2)
mov esp, edx
mov ecx, edi
call fcn.004a7b05
call fcn.004a798f
mov esp, ebp
pop ebp
ret