Function at 0x100c6440
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
mov dword [ebp - 4], ecx
mov eax, dword [0x1014c598]
imul eax, dword [0x1014c59c]
xor eax, 0x160fb9a1
mov ecx, 0x39dfe087
xor edx, edx
div ecx
imul eax, eax, 0x522385fd
sub eax, 0xbc3c5374
or eax, 0xddfcd1d6
or eax, 0x6e2fbadd
or eax, 0x846a412
add eax, 0x789aad86
add eax, 0xd7970d6c
sub eax, 0x7caa86ec
sub eax, 0xc1d0264e
mov ecx, 0x33f10d1d
xor edx, edx
div ecx
add eax, 0x5513dfef
mov ecx, 0xaf0035bd
xor edx, edx
div ecx
xor eax, 0xb1bd5e01
sub eax, 0x8f5e3bb3
sub eax, 0x1a8d5851
sub eax, 0x4dbe28aa
mov ecx, 0x18ef038e
xor edx, edx
div ecx
mov ecx, 0x9fa5050
xor edx, edx
div ecx
sub eax, 0xcb49336b
imul eax, eax, 0x5271c274
add eax, 0xab55bf1e
and eax, 0xea873193
imul eax, eax, 0xbe676f5f
and eax, 0x4f925336
add eax, 0x2f18466b
add eax, 0x45477195
and eax, 0x6254156d
add eax, 0x8f999d63
or eax, 0x1158c684
or eax, 0xa731c91a
imul eax, eax, 0x8993e71f
cmp eax, 0xbec05134
jb 0x100c68aa
mov eax, dword [0x1014c5a0]
add eax, dword [0x1014c5a4]
imul eax, eax, 0x7211c6ad
and eax, 0x7ac70103
sub eax, 0x15b090b7
imul eax, eax, 0x7f59db1c
and eax, 0xb89190f
mov ecx, 0xa5a1a281
xor edx, edx
div ecx
and eax, 0xcad5ae5c
mov ecx, 0x23be79d1
xor edx, edx
div ecx
imul eax, eax, 0xcc46bb46
or eax, 0x6c0fa848
sub eax, 0x5f5b235
and eax, 0xea84037b
sub eax, 0x53bd572a
and eax, 0x30432ef9
sub eax, 0xe7f0b3ad
mov ecx, 0x4130fa64
xor edx, edx
div ecx
xor eax, 0xe66be198
and eax, 0xb4246c0f
or eax, 0x91226ee5
add eax, 0xf7101c52
sub eax, 0xe12a577a
add eax, 0xcda4e3f9
xor eax, 0x9125603b
mov ecx, 0x7fdf8560
xor edx, edx
div ecx
add eax, 0x797db9ed
add eax, 0xf1610f98
and eax, 0x7bfd2a7f
imul eax, eax, 0x40c9d89e
or eax, 0x392cafa4
and eax, 0x9ce71de4
mov ecx, 0xb35a9d6f
xor edx, edx
div ecx
add eax, 0xc19fcb06
mov ecx, 0xf75d7706
xor edx, edx
div ecx
cmp eax, 0xe51ba3e
jae 0x100c6a3b
mov ecx, dword [ebp - 4]
mov eax, 0xea080d19
mov dword [ebp - 8], eax
push eax
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [eax]
call fcn.100c5e10
mov eax, dword [ebp - 8]
cmp eax, 0xdde5ced1
jbe 0x100c65f4
mov eax, dword [0x1014c5b0]
xor eax, dword [0x1014c5b4]
or eax, 0x453cbd2b
xor eax, 0x1e83a5ba
and eax, 0x9c2584e
add eax, 0x440e6083
xor eax, 0x3dd41014
or eax, 0x25c9446
or eax, 0xa096df4c
mov ecx, 0xac588948
xor edx, edx
div ecx
or eax, 0xe487d906
and eax, 0x73cebcbc
or eax, 0xf8b66641
sub eax, 0x821c00b0
or eax, 0x25ab5fd7
mov ecx, 0xb8f8d977
xor edx, edx
div ecx
imul eax, eax, 0x2f2b5fb3
xor eax, 0x25f905e4
imul eax, eax, 0xe6428f0b
or eax, 0x7ae0ae43
add eax, 0x143ff081
imul eax, eax, 0xa9d109ad
mov ecx, 0xdfdda4b1
xor edx, edx
div ecx
imul eax, eax, 0xac1138d0
add eax, 0x9efd161f
add eax, 0x6a33f69e
and eax, 0x8ce0d50a
mov ecx, 0x232619b4
xor edx, edx
div ecx
and eax, 0x96652907
mov ecx, 0xf2755ee0
xor edx, edx
div ecx
add eax, 0x336df4b3
or eax, 0x233b3f47
mov ecx, 0xfe0e585d
xor edx, edx
div ecx
imul eax, eax, 0x12d0cfed
add eax, 0x216addb7
cmp eax, 0x7c655671
jae 0x100c651d
mov eax, dword [0x1014c5b8]
sub eax, dword [0x1014c5bc]
add eax, 0x7d45f90b
xor eax, 0x50c8f38a
and eax, 0xfc055561
imul eax, eax, 0x1c0ab710
add eax, 0x83cff717
mov ecx, 0x54d1c481
xor edx, edx
div ecx
or eax, 0x854ff5d3
mov ecx, 0x2bdba3e3
xor edx, edx
div ecx
xor eax, 0x47580238
sub eax, 0x4b7f4abf
add eax, 0x232abecc
sub eax, 0xedbd67d
and eax, 0x8a690988
add eax, 0xfa84efce
and eax, 0xe9c60c29
mov ecx, 0x2478779a
xor edx, edx
div ecx
sub eax, 0x3af0be8
sub eax, 0x8cfb7b4f
sub eax, 0xa9087a3
imul eax, eax, 0xd10313da
mov ecx, 0x8ff06336
xor edx, edx
div ecx
sub eax, 0x5af81346
imul eax, eax, 0x2c3e72b3
imul eax, eax, 0x1a6c18
or eax, 0x9f863c47
sub eax, 0xaa22b35
imul eax, eax, 0xc7b839c4
sub eax, 0x1a452749
imul eax, eax, 0x15adc11d
sub eax, 0x9be09504
or eax, 0x53a6de49
xor eax, 0x59d152cf
or eax, 0xd56dcba
cmp eax, 0xac66e55c
jb 0x100c6a4f
mov eax, dword [0x1014c5c0]
and eax, dword [0x1014c5c4]
and eax, 0xea559045
mov ecx, 0x4ef6f46b
xor edx, edx
div ecx
imul eax, eax, 0xa5de3bc2
xor eax, 0xcf92439e
add eax, 0x5ee95313
sub eax, 0x606d6448
mov ecx, 0x9c7d9767
xor edx, edx
div ecx
imul eax, eax, 0x7f61adf0
and eax, 0x7759b932
mov ecx, 0x19183e1b
xor edx, edx
div ecx
xor eax, 0x91b31d4f
mov ecx, 0xd04fb68e
xor edx, edx
div ecx
sub eax, 0x9e38dc6c
add eax, 0x7bdfbcc1
imul eax, eax, 0x4ec99c1e
xor eax, 0x4b25a21c
mov ecx, 0x928c3f1c
xor edx, edx
div ecx
imul eax, eax, 0x61be0bbf
mov ecx, 0x2b7cd75d
xor edx, edx
div ecx
mov ecx, 0xb6e95959
xor edx, edx
div ecx
xor eax, 0xf6fe2e26
mov ecx, 0x59f78c58
xor edx, edx
div ecx
add eax, 0xd5056896
and eax, 0x7bcea439
xor eax, 0x43d59940
imul eax, eax, 0x63ed8581
xor eax, 0x37c174e
xor eax, 0xb619053b
sub eax, 0xd2d1b1bb
or eax, 0xf1a1c544
sub eax, 0x1b1d4c52
mov ecx, 0xe2748482
xor edx, edx
div ecx
or eax, 0x81f1df16
cmp eax, 0x9fefedb5
je 0x100c67c2
mov esp, ebp
pop ebp
ret
mov eax, dword [0x1014c5c8]
and eax, dword [0x1014c5cc]
xor eax, 0xa18e52df
mov ecx, 0xd792ed16
xor edx, edx
div ecx
mov ecx, 0xcc95646
xor edx, edx
div ecx
add eax, 0x6b31131f
add eax, 0x959dc7b8
imul eax, eax, 0x220838af
imul eax, eax, 0x191bfa9c
mov ecx, 0x6dbb1a1b
xor edx, edx
div ecx
or eax, 0x59a6c62a
or eax, 0x8cb48a61
sub eax, 0x59cbf7e1
and eax, 0x5acd1be7
xor eax, 0x434d03b0
mov ecx, 0x2741ed9a
xor edx, edx
div ecx
sub eax, 0x1d673577
or eax, 0xdb54f02f
xor eax, 0xaf8fab88
and eax, 0xd894f2d8
and eax, 0x2be62b97
add eax, 0x8c99381
xor eax, 0xcb614e0e
or eax, 0x3868479f
sub eax, 0x48077ff0
imul eax, eax, 0xbbd1e3c2
and eax, 0x59927b6d
add eax, 0xa0e5c7db
sub eax, 0x9faf1dfa
sub eax, 0x1441c866
imul eax, eax, 0x39ea87da
xor eax, 0xe3af5680
or eax, 0x1ce2c9aa
xor eax, 0xd31aeba3
add eax, 0x1c0ae9bf
cmp eax, 0x94738ce3
je 0x100c6a54
mov ecx, dword [ebp - 4]
mov eax, dword [0x1014c5d0]
mov edx, dword [0x1014c5d4]
or eax, edx
imul eax, eax, 0x7a7a9ea
add eax, 0x40ad38e0
and eax, 0x21af628
imul eax, eax, 0x299595a0
and eax, 0x2794000
add eax, 0x8a3f3875
or eax, 0x571957b
imul eax, eax, 0x3876ef9c
and eax, 0x6f10a00
add eax, 0xac80624f
or eax, 0x328119a
xor eax, 0xe2b6ed5
add eax, 0xd890f1d5
or eax, 0xf40b642a
add eax, 0x90b8e250
xor eax, 0x810445
or eax, 0x5a3ee9b0
imul eax, eax, 0xc68087b0
add eax, 0xdd3b41e0
shr eax, 1
mov edx, 0x93ca221d
mul edx
mov eax, edx
shr eax, 0x1d
xor eax, 0x56197e66
imul eax, eax, 0x6a56a871
add eax, 0xdfb0eb2b
or eax, 0x8fafa7af
add eax, 0xd4f9062c
or eax, 0x1dd9f354
mov dword [ebp - 0xc], eax
push eax
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [eax]
call fcn.100c5e10
mov eax, dword [ebp - 0xc]
cmp eax, 0x48ca672d
jbe 0x100c6979
jmp 0x100c651d
mov ecx, dword [ebp - 4]
push eax
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [eax]
call fcn.100c5e10
jmp 0x100c65f4
jmp 0x100c67c2
mov ecx, dword [ebp - 4]
push eax
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [eax]
call fcn.100c5e10
jmp 0x100c6979