Function at 0x1015e700
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
mov dword [ebp - 4], ecx
mov eax, dword [0x101bda38]
or eax, dword [0x101bda3c]
and eax, 0x58a68400
mov ecx, 0x40df01be
xor edx, edx
div ecx
xor eax, 0xfb959a33
mov ecx, 0x866d65b0
xor edx, edx
div ecx
and eax, 0x6a58821b
imul eax, eax, 0x796a264f
add eax, 0x3d1e8a2a
sub eax, 0xe4b374ef
xor eax, 0x54c88801
sub eax, 0xc6a5a2f4
add eax, 0xc43a4494
or eax, 0x1e2d6aa7
xor eax, 0xe1ee9d91
or eax, 0x4fee954d
mov ecx, 0x5f21993d
xor edx, edx
div ecx
add eax, 0xef236791
or eax, 0x1011aaff
or eax, 0xb6d9e370
add eax, 0x95456de8
imul eax, eax, 0x159ad332
and eax, 0x4f4dda6f
sub eax, 0xc80e9173
imul eax, eax, 0xaadff8a6
sub eax, 0x5fd1c4b5
and eax, 0x2e63993d
and eax, 0x76872382
and eax, 0x5ac5a48d
mov ecx, 0x2058c379
xor edx, edx
div ecx
mov ecx, 0xa91e2fdd
xor edx, edx
div ecx
and eax, 0xc4908375
sub eax, 0x4f8ac8a2
sub eax, 0xe837b2ab
xor eax, 0xe742b8ee
xor eax, 0x4da774d7
mov ecx, 0x70ce6919
xor edx, edx
div ecx
sub eax, 0x6901f42a
xor eax, 0xc6b779c8
sub eax, 0xec075137
cmp eax, 0xc00ddc98
je 0x1015ec95
mov eax, dword [0x101bda40]
imul eax, dword [0x101bda44]
imul eax, eax, 0xe1976893
and eax, 0xdc52bc3d
add eax, 0x82e32686
add eax, 0xa0c5d37
or eax, 0x5095da69
sub eax, 0x7c79086d
imul eax, eax, 0x73bed0ce
or eax, 0x351382b7
or eax, 0x50756a89
and eax, 0xd47e9503
add eax, 0xcf5a9a31
xor eax, 0x1a9c0e3c
add eax, 0x78cfa5
and eax, 0xf825c2b1
xor eax, 0x74a4fce4
mov ecx, 0xc1d24394
xor edx, edx
div ecx
add eax, 0xc73fd890
sub eax, 0xe2957870
imul eax, eax, 0xd4ee3cf
imul eax, eax, 0x565dfb43
xor eax, 0x5fd423a0
mov ecx, 0x8145c1b8
xor edx, edx
div ecx
imul eax, eax, 0xd7085bd8
imul eax, eax, 0x724d49a6
mov ecx, 0xcfdfc48c
xor edx, edx
div ecx
sub eax, 0x9a99159a
imul eax, eax, 0x77109603
xor eax, 0x8e9ad861
mov ecx, 0xe8c169cf
xor edx, edx
div ecx
add eax, 0xbe713174
and eax, 0xeedfd359
add eax, 0x9625c812
or eax, 0xd21d19df
sub eax, 0x2db10db
sub eax, 0xf25c6869
or eax, 0x192e6280
or eax, 0xd095647b
add eax, 0xcfc52df5
cmp eax, 0xe0fe5b20
jae 0x1015e7f8
mov eax, dword [0x101bda48]
imul eax, dword [0x101bda4c]
xor eax, 0x42f6e2d7
mov ecx, 0x439269f4
xor edx, edx
div ecx
xor eax, 0x8e263958
sub eax, 0x78c5e108
sub eax, 0xf372315b
or eax, 0xb2de219c
and eax, 0x17f71787
imul eax, eax, 0xea2364af
sub eax, 0xd287d3c6
imul eax, eax, 0x81dd68f7
mov ecx, 0x856d8556
xor edx, edx
div ecx
xor eax, 0xd85b68aa
mov ecx, 0xe1b66afe
xor edx, edx
div ecx
imul eax, eax, 0x3c584c52
mov ecx, 0x487cfeb0
xor edx, edx
div ecx
add eax, 0x4cdbd50c
or eax, 0xd818ec26
and eax, 0xe5f0926a
mov ecx, 0x1767fbf
xor edx, edx
div ecx
or eax, 0xd4e466a8
and eax, 0xcb19b91e
sub eax, 0x279c225e
or eax, 0x676726cd
or eax, 0xb0fc14be
xor eax, 0xff7a687
add eax, 0x2a8d6c68
mov ecx, 0x2c3798f3
xor edx, edx
div ecx
add eax, 0x7397af44
xor eax, 0x39ea3f45
add eax, 0x3139a2fe
add eax, 0x4da1411c
mov ecx, 0x15da611b
xor edx, edx
div ecx
add eax, 0x364c742
sub eax, 0xa244b41b
xor eax, 0x138045ee
imul eax, eax, 0x65279ec
or eax, 0x185e0a8c
or eax, 0xe9a980c3
cmp eax, 0xf740dd85
jb 0x1015ebd8
mov edx, dword [ebp - 4]
xor eax, eax
push eax
mov ecx, esp
mov dword [ecx], edx
mov ecx, dword [ecx]
mov edx, dword [ecx]
mov dword [ebp - 0xc], edx
mov ecx, dword [ecx + 4]
mov dword [ebp - 8], ecx
cmp eax, 0x24d16742
ja 0x1015ebd8
mov eax, dword [0x101bda58]
sub eax, dword [0x101bda5c]
or eax, 0xec1f5118
add eax, 0x8c8b5da7
imul eax, eax, 0x83d97944
add eax, 0x40224a22
and eax, 0x62c9ddfa
add eax, 0x63de68a4
and eax, 0xf88b0b1f
and eax, 0x9f5e6e51
imul eax, eax, 0x8dcd8f50
mov ecx, 0x6c02c4e1
xor edx, edx
div ecx
add eax, 0xdcd7d52c
or eax, 0x61c07986
mov ecx, 0xaebc341c
xor edx, edx
div ecx
or eax, 0xc63f7b1f
and eax, 0xc05fe840
imul eax, eax, 0x59798d70
or eax, 0xf3b408f1
add eax, 0xdefba01d
or eax, 0xae322654
imul eax, eax, 0x5c555986
xor eax, 0x7bcc0355
xor eax, 0xe233d8dd
sub eax, 0xf99a140d
and eax, 0x649bd140
and eax, 0x7a2859ac
xor eax, 0x8e87c3a9
add eax, 0xc4146053
add eax, 0xc1c7ba5f
xor eax, 0x9a5ec720
or eax, 0x4900dcf4
or eax, 0x91ef44fa
imul eax, eax, 0x5700cb3
or eax, 0x7b620662
add eax, 0x90af0380
xor eax, 0x73858769
and eax, 0xbafd6187
mov ecx, 0x738195
xor edx, edx
div ecx
imul eax, eax, 0x18cf238e
cmp eax, 0x8b9f9746
je 0x1015ed26
mov eax, dword [0x101bda60]
imul eax, dword [0x101bda64]
or eax, 0x97c33718
add eax, 0xd00a80da
and eax, 0xe4f36b98
imul eax, eax, 0x7efef920
xor eax, 0x62bb7819
xor eax, 0x9c926136
sub eax, 0xc92fd4cd
and eax, 0x7685a478
mov ecx, 0x5276e03a
xor edx, edx
div ecx
sub eax, 0x8af4b36c
add eax, 0x804e9676
and eax, 0x6e1afcea
sub eax, 0x811f28ac
sub eax, 0xddb050a6
or eax, 0xf400bd92
add eax, 0x6eeb198f
sub eax, 0xf8ddf61b
xor eax, 0x28aa98b
sub eax, 0x72bcc1a6
mov ecx, 0x50e83449
xor edx, edx
div ecx
imul eax, eax, 0xa4f1cb00
sub eax, 0x28f5e80c
sub eax, 0x86a04b96
mov ecx, 0x409b3b20
xor edx, edx
div ecx
imul eax, eax, 0x2cec8352
imul eax, eax, 0xbcd7ff73
or eax, 0x947bb433
or eax, 0xcdb5b197
add eax, 0xe5a39fb6
xor eax, 0x3382bf44
xor eax, 0x2b947ba6
sub eax, 0xc9b69c0e
sub eax, 0x4d052ce7
or eax, 0x708b8908
or eax, 0xb38fbd89
add eax, 0x9b0a19b6
mov ecx, 0xb7dfdd84
xor edx, edx
div ecx
mov ecx, 0x4a0d6959
xor edx, edx
div ecx
cmp eax, 0xf62519cc
ja 0x1015ed26
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 4]
xchg ecx, eax
or byte [esi], bh
and al, 0x73
jns 0x1015ec5a
dec ebx
jne 0x1015ebd8
xor eax, 0x618f2cba
les ebx, [eax]
and ebp, dword [ecx - 0x67]
mov dword [0xa900d0fc], eax
pop es
jne 0x1015ec44
arpl word [ebp + 0x2c9b30fb], bx
xchg ecx, eax
or edx, dword [edx - 0x3c]
mov ss, word [0x643cd5a]
clc
nop
div eax
mov al, 0xc4
inc ebx
jbe 0x1015ebd6
jne 0x1015ec08
push esp
inc esi
retf 0xa50a
cdq
imul edx, dword [esi + 0x69], 0xaf58bce0
cmp ecx, dword [eax]
cli
popfd
test ebx, ecx
mov esi, 0xdbc459d0
in eax, dx
xchg esp, eax
add byte [ebx], al
mov ss, ebp
scasb al, byte es:[edi]
fnstenv [ebp - 0x32e07852]
add byte [eax], 0x49
invalid
add ecx, dword [esi - 0x4a26512b]
scasb al, byte es:[edi]
xchg dword [edi], ebx
int 0x80
add byte [ecx - 0x25], cl
mov ch, 4
ljmp 0xa256
aaa
xlatb
jns 0x1015ec45
adc ah, 0x1b
invalid
sbb dword [edi + 0x43e0ce82], ebx
arpl si, cx
adc ebx, dword [ebx]
mov ebx, ebx
into
xor ecx, dword [esi - 0x71]
imul ebx, dword [esp + ebp*4 + 0x1f4f8a15], 0x3a63d063
push esi
adc eax, 0xc200af4b
xchg edi, eax
sbb eax, 0x38d864bd
jb 0x1015edc6
xchg ebx, eax
add ah, ah
cwde
mov bl, 0x5c
xor eax, ebx
into
in eax, 0x3b
and dword [esi - 0x11], ecx
xchg edx, eax
invalid
int3