Function at 0x10160b30
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
mov dword [ebp - 4], ecx
mov eax, dword [0x101bdb38]
add eax, dword [0x101bdb3c]
or eax, 0xe07c6b86
or eax, 0x8b73014d
xor eax, 0xa8c38fd7
xor eax, 0x89b36b50
mov ecx, 0x77b2e14
xor edx, edx
div ecx
or eax, 0x52a45ad0
xor eax, 0xc5b82854
or eax, 0xaf90a5dd
xor eax, 0x768f34af
add eax, 0x4cadd605
add eax, 0xf015245a
add eax, 0xc7b2619d
add eax, 0xcdcfd30
and eax, 0xeb571af9
or eax, 0x7b370766
add eax, 0xa786f7d2
xor eax, 0x32e2f489
or eax, 0x4d0c7a3d
imul eax, eax, 0xb2f751f2
xor eax, 0xad6f7cc
xor eax, 0xa9cd3322
or eax, 0x33de85b5
mov ecx, 0xc60e38d8
xor edx, edx
div ecx
sub eax, 0xa3b7679c
and eax, 0x18696b8d
mov ecx, 0xba9b3591
xor edx, edx
div ecx
add eax, 0xb24fe689
sub eax, 0x7659df2b
mov ecx, 0x628bfd66
xor edx, edx
div ecx
add eax, 0xd4f25b0e
imul eax, eax, 0x34f0cc1a
imul eax, eax, 0xd1415fcf
mov ecx, 0x46a77f95
xor edx, edx
div ecx
add eax, 0x7b50d572
add eax, 0xeed5c96c
sub eax, 0x1d1ab49a
imul eax, eax, 0x6bab7a93
imul eax, eax, 0x16cea0b5
cmp eax, 0x1fb138ef
jbe 0x1016136d
mov eax, dword [0x101bdb40]
imul eax, dword [0x101bdb44]
sub eax, 0x517b0418
sub eax, 0xad402b76
add eax, 0x988c9511
mov ecx, 0x9acd4e70
xor edx, edx
div ecx
xor eax, 0x902fb5fe
sub eax, 0x7f254e7f
sub eax, 0xa50f456f
imul eax, eax, 0x49f93657
xor eax, 0x1e9ffe9a
mov ecx, 0xfe9792f5
xor edx, edx
div ecx
add eax, 0xec7c1892
imul eax, eax, 0x92caf1a9
imul eax, eax, 0x7f9a3043
xor eax, 0x919527db
xor eax, 0x40926fba
and eax, 0xeb4e348b
or eax, 0xa2bb617c
sub eax, 0x13545d71
sub eax, 0x40a1167a
and eax, 0xe9f34422
mov ecx, 0xcc3dd7dc
xor edx, edx
div ecx
imul eax, eax, 0x73006e72
and eax, 0x989c67fd
xor eax, 0xc513f232
imul eax, eax, 0xe5c26415
xor eax, 0x68b2cf76
xor eax, 0x4056fc42
add eax, 0x134e8ced
or eax, 0xb2d463b5
mov ecx, 0x724eaa35
xor edx, edx
div ecx
and eax, 0xe6d58368
imul eax, eax, 0x1e6dc677
mov ecx, 0x68ec348f
xor edx, edx
div ecx
mov ecx, 0x1e6a658a
xor edx, edx
div ecx
mov ecx, 0x77cb960c
xor edx, edx
div ecx
xor eax, 0x54776430
mov ecx, 0x9fdf96c4
xor edx, edx
div ecx
imul eax, eax, 0xbb6e9a0f
cmp eax, 0x8ff57a87
ja 0x1016136d
mov eax, dword [0x101bdb48]
xor eax, dword [0x101bdb4c]
and eax, 0x7baab379
imul eax, eax, 0x51fed73c
add eax, 0x8505c83f
sub eax, 0x9901f2ae
and eax, 0x7bdecf70
or eax, 0x1764d451
and eax, 0x787c5daa
add eax, 0xbba5e5fb
or eax, 0x3c292ceb
xor eax, 0xbe10155b
imul eax, eax, 0xfd14149b
xor eax, 0xd764111f
add eax, 0x9417898f
or eax, 0xe9d0c49
or eax, 0x6fd1abc
and eax, 0x5e1a6554
or eax, 0x32f00e45
sub eax, 0xca5ad09a
and eax, 0x382d0e40
add eax, 0x97016ce1
sub eax, 0xaa88b560
or eax, 0x752aa057
mov ecx, 0x946098b8
xor edx, edx
div ecx
and eax, 0xa9ad7b1b
add eax, 0xdb6135b8
sub eax, 0x73c9b9b6
xor eax, 0x85c10f20
imul eax, eax, 0xf0da919d
sub eax, 0xb2c2ad72
add eax, 0x4f8d6f6b
or eax, 0x16318aa0
or eax, 0xcbe70799
sub eax, 0x40d8a665
add eax, 0x49328c14
and eax, 0xc18e86
mov ecx, 0x23def055
xor edx, edx
div ecx
add eax, 0xcebc9c9f
and eax, 0xbaae91c3
cmp eax, 0x6af50e38
je 0x101611ef
mov eax, dword [0x101bdb50]
xor edx, edx
div dword [0x101bdb54]
imul eax, eax, 0xe0879858
sub eax, 0x36187089
mov ecx, 0x4363721a
xor edx, edx
div ecx
or eax, 0xd5539484
add eax, 0xdf4d5116
mov ecx, 0xe0058df8
xor edx, edx
div ecx
imul eax, eax, 0x2514c1bd
add eax, 0xc1559674
mov ecx, 0xc5a10057
xor edx, edx
div ecx
add eax, 0x1df8ac41
imul eax, eax, 0x226ce116
sub eax, 0x15ca155a
imul eax, eax, 0x75421412
sub eax, 0xde7f42d4
or eax, 0x69676f1
or eax, 0xf302ce55
xor eax, 0x1d4e5c15
mov ecx, 0x5486f3c9
xor edx, edx
div ecx
add eax, 0x2669cd3a
xor eax, 0x89fe29c3
mov ecx, 0xc4873090
xor edx, edx
div ecx
and eax, 0xa47eab3e
sub eax, 0x5c067fb
xor eax, 0x58531b00
or eax, 0x66225696
or eax, 0x96c6995
mov ecx, 0xb2762eb5
xor edx, edx
div ecx
sub eax, 0xfd6bc6e2
imul eax, eax, 0x5097e59
mov ecx, 0x6e799100
xor edx, edx
div ecx
imul eax, eax, 0xc32c03c5
sub eax, 0x97f9c491
sub eax, 0x8a20c654
imul eax, eax, 0x953919be
imul eax, eax, 0xe3f5621
or eax, 0x9e90936d
imul eax, eax, 0xd9f191a1
sub eax, 0xd888713a
cmp eax, 0x347a96bd
jbe 0x10161406
mov edx, dword [ebp - 4]
mov eax, 0x7ebef734
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, 0xfa60fb1
je 0x10161406
mov eax, dword [0x101bdb60]
and eax, dword [0x101bdb64]
or eax, 0x6fd5fe32
mov ecx, 0x371345cc
xor edx, edx
div ecx
mov ecx, 0x9c71c588
xor edx, edx
div ecx
mov ecx, 0xd48594b
xor edx, edx
div ecx
imul eax, eax, 0xba8976cd
mov ecx, 0x72f36fe9
xor edx, edx
div ecx
mov ecx, 0xf9e9227e
xor edx, edx
div ecx
and eax, 0x535e7b99
and eax, 0xd61b2f6b
sub eax, 0x66c2427
mov ecx, 0xedaf6119
xor edx, edx
div ecx
mov ecx, 0xfe2cd841
xor edx, edx
div ecx
xor eax, 0xf08b401
xor eax, 0xdeb44405
mov ecx, 0x31f45924
xor edx, edx
div ecx
mov ecx, 0x9c73849b
xor edx, edx
div ecx
sub eax, 0xc813bb9e
sub eax, 0xe7d7db3f
add eax, 0x78e94959
and eax, 0x99e0e515
or eax, 0x8abdb3ca
or eax, 0x5aaef6b
sub eax, 0xc5e4be24
or eax, 0xaf59f749
xor eax, 0xc9c55821
xor eax, 0xb17875b8
or eax, 0x3520dc95
or eax, 0x23bd308d
mov ecx, 0xfd9de9b5
xor edx, edx
div ecx
or eax, 0xd8d8a92
add eax, 0x69e74218
add eax, 0x532f98a7
and eax, 0xcd808a3f
mov ecx, 0x204648cb
xor edx, edx
div ecx
xor eax, 0x1d94a199
imul eax, eax, 0x4ee6b9c9
add eax, 0xb3a14b8e
xor eax, 0x83645bbe
cmp eax, 0xffed591f
ja 0x10160e01
mov eax, dword [0x101bdb68]
imul eax, dword [0x101bdb6c]
mov ecx, 0x738927e9
xor edx, edx
div ecx
xor eax, 0x9ef35c84
or eax, 0x354ebf86
or eax, 0xc2bbc44d
xor eax, 0x2ecd234a
and eax, 0xcfbb59bc
sub eax, 0x3a1fa20b
add eax, 0xf727c3f6
and eax, 0xdefbf194
add eax, 0xf38a6a3a
or eax, 0x9fecc15c
sub eax, 0x3fc49933
and eax, 0x5c76dcca
and eax, 0x1991114
sub eax, 0x548ad514
or eax, 0x6705414
and eax, 0xe9a50e41
sub eax, 0x74a70639
sub eax, 0xa9746a81
and eax, 0x772bbc11
sub eax, 0xa9a8574d
and eax, 0x5da57102
and eax, 0x8059b95b
sub eax, 0xb9c1b408
xor eax, 0x788c37d6
mov ecx, 0x7d9927f
xor edx, edx
div ecx
add eax, 0x77598a74
and eax, 0x514403ea
or eax, 0xdc80f657
sub eax, 0xf92412cf
add eax, 0xd0fe33fc
sub eax, 0x61faf4a
xor eax, 0xdef3f3cc
or eax, 0x781f934b
mov ecx, 0xa2ef1d6a
xor edx, edx
div ecx
xor eax, 0x2b946531
imul eax, eax, 0x1a6e7ded
add eax, 0xdb9f84c
cmp eax, 0x85adbe0b
je 0x101614d3
mov eax, dword [0x101bdb70]
add eax, dword [0x101bdb74]
add eax, 0x21bb4a95
sub eax, 0x672f2697
and eax, 0x49b44d7d
and eax, 0x541b0513
add eax, 0x89c92648
xor eax, 0x8e06fd86
and eax, 0x46131883
imul eax, eax, 0xe243af0f
and eax, 0x3bab475d
sub eax, 0xf421adf7
imul eax, eax, 0x720e0e3e
sub eax, 0x878d28e6
add eax, 0xfb077054
add eax, 0x24fec2a0
or eax, 0x8ca04140
add eax, 0xb84b613e
imul eax, eax, 0x8c75f660
imul eax, eax, 0xa19ffccf
imul eax, eax, 0xd59087ba
xor eax, 0xd97e1ea1
and eax, 0xab12db7d
add eax, 0x5e23e10
or eax, 0x3de6a984
xor eax, 0x473fcd47
and eax, 0xdf6d17b
sub eax, 0xe1b9cf9a
add eax, 0x50e973cd
or eax, 0x5719afe2
sub eax, 0xfee4e4a9
imul eax, eax, 0xc4db5f0e
mov ecx, 0x643421cf
xor edx, edx
div ecx
xor eax, 0x4f8a5434
imul eax, eax, 0xf83cccab
imul eax, eax, 0xaaaf05e9
add eax, 0x1dd7d210
or eax, 0xbc82cb6c
xor eax, 0xabc689c3
add eax, 0x8eb988fb
cmp eax, 0x5e498515
je 0x10161105
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov eax, dword [0x101bdb78]
xor eax, dword [0x101bdb7c]
xor eax, 0x6f740995
sub eax, 0xaabc7d44
add eax, 0x1b195591
and eax, 0x9a48e7bc
sub eax, 0xd4b72e20
xor eax, 0x41be7f85
and eax, 0x42a558d6
sub eax, 0x18cde58a
or eax, 0x874c9161
add eax, 0x1203c7bf
sub eax, 0x5bb8c55a
add eax, 0x43bab402
or eax, 0xaec897a9
xor eax, 0xf6eac291
xor eax, 0x163d022e
xor eax, 0x94587b88
sub eax, 0x948fbfdb
xor eax, 0x6de50018
add eax, 0x841d6721
mov ecx, 0x25b563c2
xor edx, edx
div ecx
add eax, 0x7bb6f0c7
and eax, 0x527e4f07
add eax, 0xa2295ea9
mov ecx, 0x7329210b
xor edx, edx
div ecx
sub eax, 0xad7fe4b1
or eax, 0xb946dff
imul eax, eax, 0x2f1678f6
sub eax, 0x6622280e
or eax, 0x7846ace6
or eax, 0x835296bc
or eax, 0x3d668f1
xor eax, 0xccff7e9c
mov esp, 0xd835296
int1
push 0x9c3503d6
jle 0x101612a1
dec esp
int3
xor eax, 0xe320932c
sub eax, 0xac051455
sub eax, 0xeb12e020
mov ecx, 0x75d4d0bb
xor edx, edx
div ecx
mov ecx, 0xe38ab9e6
xor edx, edx
div ecx
loopne 0x101612c3
jmp 0x1016126c
int1
xor eax, 0x77f33a62
cmp eax, 0x7f398a7d
je 0x10161568
mov edx, dword [ebp - 4]
mov eax, 0x3d922127
test al, 0x97
xchg ch, dl
jecxz 0x10161328
jle 0x10161341
mov dword [ebp + edi*2 + 0x3d], edi
popfd
mul dword [ecx + ebp + 0x75]
dec ebp
sbb dl, al
test al, 0x67
xor dword [ecx + 0x6e], ebx
mov dl, byte [ebx + ecx + 0x72512ff5]
jnp 0x101612af
and dword [ecx + ebp*8], 0xc0bfbf43
loope 0x10161295
ret
xchg ecx, eax
invalid
xchg esi, eax
or ah, byte [esi - 0x2b9bf5fa]
cmp byte [eax], 0x3b
add ebx, dword [edx + 0x5e]
jno 0x1016136f
mov eax, dword [0xa1aad1ec]
aas
cmp dword [edi], edi
push eax
mov ecx, esp
mov dword [ecx], edx
cmp eax, 0x318aa753
je 0x10161568
jmp 0x10160e01
mov ebx, 0x52f8049c
add al, 0xf8
push edx
inc edx
pop esp
push ds
push 0xffffffffffffffac
rcl byte [edx + 0x18d7d90b], cl
leave
cmp al, 0xfa
jnp 0x10161358
mov eax, ecx
invalid
push esi
jp 0x101613d1
int1
movsd dword es:[edi], dword [esi]
cmpsd dword [esi], dword es:[edi]
pop ecx
push edx
inc eax
fiadd dword [edx + 0x51]
js 0x1016139a
wait
or dword [ebx - 0x41], edx
cwde
xor al, 0x91
shl dword [ebp - 0x48f3dc1e], 0x43
cmp byte [esi - 0x3f3524f8], dl
jb 0x1016137d
jmp 0xca5f911e
xchg dword [ecx], ebp
test eax, 0x8ee3c186
dec edx
jle 0x1016143f
retf
mov ecx, dword [ebp - 4]
imul eax, edx, 0x6b6a9dc1
pop esp
test esp, edx
div dword [esi + 6]
jb 0x1016139c
adc dword [ebx + 0x7d], 0x8b2eda3d
mov cl, 0xd7
pop edx
mov edx, 0x605f73a6
sub edi, dword [edx + 0x6f]
and al, 0x48
push eax
mov word [ebx + 0x22], ss
invalid
adc eax, 0xbe481240
dec esi
sub dword [edx], 0xffffffa4
mov edi, dword [esi]
daa
inc ecx
invalid
in eax, 0x36
add dl, byte [eax]
insb byte es:[edi], dx
popfd
xchg ebp, eax
or byte [esi + 0x5e70ab51], dh
movsb byte es:[edi], byte [esi]
cmpsd dword [esi], dword es:[edi]
lea edx, [edi]
int3
mov ecx, dword [ebp - 4]
mov ecx, dword [ebp + 0x6f]
imul ecx, esi, 0x64
wait
xchg ebx, eax
mov ebp, 0xebf450ff
or bl, bh
ffreep st(4)
shl dl, 0xe7
push esi
push ebp
fld qword [ebx + 0x5c]
adc edi, dword [ebp - 0x15d0d016]
fldcw word [edx - 0x49]
mov al, 0x66
jmp 0x101615e3
fisubr dword [esi + ecx*2 - 0x13]
int3