Function at 0x100ffb80
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
sub esp, 0x14
mov dword [ebp - 0xc], ecx
mov al, byte [ebp + 8]
mov byte [ebp - 5], al
mov eax, dword [0x1014e7e8]
xor eax, dword [0x1014e7ec]
imul eax, eax, 0x62397470
and eax, 0x672719f1
xor eax, 0x6e64de37
mov ecx, 0x560df26a
xor edx, edx
div ecx
mov ecx, 0x119a0c3d
xor edx, edx
div ecx
add eax, 0x1fb4d233
and eax, 0xb7f93ae4
mov ecx, 0xf4effd34
xor edx, edx
div ecx
mov ecx, 0x8127e0e6
xor edx, edx
div ecx
xor eax, 0x6f167f3e
xor eax, 0x66ddf620
or eax, 0x2ed53f0a
add eax, 0x64bb5aa
xor eax, 0xea3b9552
mov ecx, 0x697e4fda
xor edx, edx
div ecx
mov ecx, 0xc62c4391
xor edx, edx
div ecx
and eax, 0xde404322
xor eax, 0xfab4096a
xor eax, 0x50b75b05
xor eax, 0x3fae9c17
or eax, 0x7dd93813
or eax, 0xfb2f21e5
imul eax, eax, 0x2166407c
add eax, 0xef677111
sub eax, 0xaafd80a0
and eax, 0xfa52e4db
and eax, 0xa6325c3f
mov ecx, 0x7ba126fd
xor edx, edx
div ecx
xor eax, 0x896c86d9
add eax, 0x69a23bef
or eax, 0x73428374
mov ecx, 0x87305b65
xor edx, edx
div ecx
add eax, 0x3a2a441d
cmp eax, 0x5b9dc0e2
ja 0x10100126
mov eax, dword [0x1014e7f0]
xor edx, edx
div dword [0x1014e7f4]
or eax, 0x789cd2d
or eax, 0xcff7db13
or eax, 0xa851dd7
xor eax, 0xf2a0281c
add eax, 0x21eea334
and eax, 0xf4918774
xor eax, 0xc5c78668
mov ecx, 0x446d060d
xor edx, edx
div ecx
add eax, 0x2c7cc7a3
or eax, 0xccddf8de
sub eax, 0xbe5cb09e
and eax, 0x3851813c
or eax, 0x444eb5ab
and eax, 0x667ebd20
or eax, 0x85fc7e11
or eax, 0xcd5474b6
add eax, 0x20a58a8d
sub eax, 0x56c2e744
xor eax, 0xead660f
sub eax, 0x1443fda0
or eax, 0x26b61791
sub eax, 0xab1aa2d8
xor eax, 0x806b906f
xor eax, 0x7d49f60d
and eax, 0xbd87df19
or eax, 0xa8405706
mov ecx, 0x7ca29627
xor edx, edx
div ecx
mov ecx, 0xdba9513f
xor edx, edx
div ecx
add eax, 0xcc9e2a08
add eax, 0x2c6f761a
or eax, 0xdea3e3d3
add eax, 0xd4b1817f
and eax, 0xccd2466d
cmp eax, 0x2f07e3a7
jbe 0x100ffc6d
mov eax, dword [0x1014e7f8]
xor edx, edx
div dword [0x1014e7fc]
add eax, 0xd6518b25
and eax, 0x86e26a17
or eax, 0xaef7e5cc
sub eax, 0xc0835860
imul eax, eax, 0x42c1a7f1
imul eax, eax, 0x9ce3813d
imul eax, eax, 0xfdde67ff
imul eax, eax, 0x454afb2b
and eax, 0xc2c411f9
sub eax, 0x5e99ab4b
xor eax, 0x3ae99fdd
add eax, 0x2831c08e
sub eax, 0x87f28b7a
or eax, 0x7fa282af
imul eax, eax, 0x4f81e394
add eax, 0x57250b61
imul eax, eax, 0x397927ed
or eax, 0x386e4934
imul eax, eax, 0xbd2c757b
xor eax, 0x9c01aee
add eax, 0x449cebd8
and eax, 0xbf5835fd
mov ecx, 0x3fa3ae28
xor edx, edx
div ecx
imul eax, eax, 0x9ac9a638
mov ecx, 0x79600d7f
xor edx, edx
div ecx
add eax, 0x511dfb2b
add eax, 0xc314c83d
imul eax, eax, 0x271ebb07
mov ecx, 0x54240f19
xor edx, edx
div ecx
and eax, 0x71f770d3
xor eax, 0xdba04cfb
mov ecx, 0xe7e865dc
xor edx, edx
div ecx
and eax, 0xc0b3d8d9
cmp eax, 0x776e96b3
ja 0x10100004
mov eax, dword [0x1014e800]
or eax, dword [0x1014e804]
mov ecx, 0x413c87fb
xor edx, edx
div ecx
or eax, 0x3899df3a
imul eax, eax, 0x58683f25
imul eax, eax, 0xa65281e
and eax, 0x20be9f6f
sub eax, 0xcb75410b
add eax, 0xe79e24b4
imul eax, eax, 0x1f93323b
and eax, 0x1220b239
or eax, 0x25057c8e
and eax, 0x87ddd948
add eax, 0x5fbc6daa
add eax, 0x7678164e
sub eax, 0xd8109f65
imul eax, eax, 0x8a1342e6
xor eax, 0xe644c64a
or eax, 0x8c6e5cd1
sub eax, 0x80c0d23b
xor eax, 0x7389319f
add eax, 0x2ddbad49
sub eax, 0x1c32ebac
xor eax, 0x6fe66570
sub eax, 0x729892c1
mov ecx, 0x431d395e
xor edx, edx
div ecx
add eax, 0xfa440104
add eax, 0x5687d987
mov ecx, 0x3679a755
xor edx, edx
div ecx
and eax, 0x85302478
or eax, 0x7f1d64f8
add eax, 0xc77eadcc
and eax, 0xbf1b9d2a
and eax, 0x782449b2
add eax, 0x15a9f342
cmp eax, 0x3ccd380a
je 0x1010012b
mov edx, dword [ebp - 0xc]
mov bl, byte [ebp - 5]
mov eax, 0xe2e4b379
mov dword [ebp - 0x14], eax
push eax
mov ecx, esp
push eax
mov eax, esp
mov byte [ecx], bl
mov dword [eax], edx
mov eax, dword [eax]
add eax, 8
movzx ecx, byte [ecx]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.1011db15
add esp, 8
mov ecx, eax
mov eax, dword [ebp - 0x14]
mov byte [ebp - 0xd], cl
cmp eax, 0xf62809f1
ja 0x100ffed7
mov eax, dword [0x1014e810]
imul eax, dword [0x1014e814]
xor eax, 0x3bb905ba
or eax, 0x3680d291
mov ecx, 0x9879a07f
xor edx, edx
div ecx
imul eax, eax, 0x701dbac0
imul eax, eax, 0x1c10e0b3
add eax, 0x945d162f
add eax, 0x13eacdf5
and eax, 0x6acb388b
imul eax, eax, 0x6ce64e7e
mov ecx, 0x905f8ffc
xor edx, edx
div ecx
and eax, 0xedf9d8ed
and eax, 0x349e1385
mov ecx, 0xd533f61c
xor edx, edx
div ecx
imul eax, eax, 0xff572378
xor eax, 0xc81dbe9b
or eax, 0x9f0ca7e1
add eax, 0x3da1feab
and eax, 0x8f0f7922
mov ecx, 0x27e318a8
xor edx, edx
div ecx
imul eax, eax, 0x5c7df830
sub eax, 0x6b9b6f70
add eax, 0x2bfec065
mov ecx, 0x9c70ae45
xor edx, edx
div ecx
xor eax, 0x6e4876be
add eax, 0xf65c533
or eax, 0xa5992658
imul eax, eax, 0x19af9184
add eax, 0x26423ea9
sub eax, 0xef4db85
and eax, 0x7b83228e
or eax, 0x262255c4
mov ecx, 0x18e4a86c
xor edx, edx
div ecx
add eax, 0x5f21b5ed
cmp eax, 0x1749ffe6
je 0x100ffe0c
mov al, byte [ebp - 0xd]
movsx eax, al
lea esp, [ebp - 4]
pop ebx
pop ebp
ret 4
mov eax, dword [0x1014e818]
and eax, dword [0x1014e81c]
xor eax, 0x131e1acb
or eax, 0x4fc5c4de
imul eax, eax, 0xca429979
add eax, 0x7e101e1
mov ecx, 0x3154264e
xor edx, edx
div ecx
and eax, 0xdd4f2eac
imul eax, eax, 0x64df3dee
mov ecx, 0x570dfa67
xor edx, edx
div ecx
xor eax, 0x29ba790e
mov ecx, 0xed72e3a0
xor edx, edx
div ecx
mov ecx, 0x62ec1828
xor edx, edx
div ecx
imul eax, eax, 0xdec03334
and eax, 0x10a47ec
add eax, 0xf85586d7
imul eax, eax, 0x15adf0aa
imul eax, eax, 0x7ff098b3
imul eax, eax, 0x1bde1c60
and eax, 0xc16abbc7
or eax, 0xe779ff72
xor eax, 0xdaffeb24
and eax, 0xc03202bf
mov ecx, 0xc5410a5e
xor edx, edx
div ecx
or eax, 0xe97d9e8f
mov ecx, 0x3ce1945b
xor edx, edx
div ecx
and eax, 0x9991b4e6
or eax, 0xa22219aa
and eax, 0xbddd9ffe
sub eax, 0x312b83aa
add eax, 0x29bdb2a9
mov ecx, 0x81401fba
xor edx, edx
div ecx
add eax, 0x592faa73
sub eax, 0xb0f6c810
sub eax, 0x57c5de93
cmp eax, 0xa8705451
ja 0x1010015a
mov edx, dword [ebp - 0xc]
mov bl, byte [ebp - 5]
mov eax, 0x18013c31
mov dword [ebp - 0x18], eax
push eax
mov ecx, esp
push eax
mov eax, esp
mov byte [ecx], bl
mov dword [eax], edx
mov eax, dword [eax]
add eax, 8
movzx ecx, byte [ecx]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.1011db15
add esp, 8
mov eax, dword [ebp - 0x18]
cmp eax, 0x3cee587d
jae 0x1010015a
jmp 0x100ffe0c
jmp 0x100ffc6d
mov edx, dword [ebp - 0xc]
mov bl, byte [ebp - 5]
push eax
mov ecx, esp
push eax
mov eax, esp
mov byte [ecx], bl
mov dword [eax], edx
mov eax, dword [eax]
add eax, 8
movzx ecx, byte [ecx]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.1011db15
add esp, 8
jmp 0x100ffed7
mov edx, dword [ebp - 0xc]
mov bl, byte [ebp - 5]
push eax
mov ecx, esp
push eax
mov eax, esp
mov byte [ecx], bl
mov dword [eax], edx
mov eax, dword [eax]
add eax, 8
movzx ecx, byte [ecx]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.1011db15
add esp, 8
jmp 0x101000e1