Function at 0x100a8260
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
sub esp, 0x14
mov eax, dword [ebp + 8]
mov dword [ebp - 0xc], eax
mov eax, dword [0x10143274]
xor edx, edx
div dword [0x10143278]
imul eax, eax, 0xbc7f6022
imul eax, eax, 0x6b0f6c62
or eax, 0x12dd1b84
or eax, 0x3b91d479
or eax, 0xd3fdcd28
mov ecx, 0x9a7395e8
xor edx, edx
div ecx
sub eax, 0xd55ac5a2
xor eax, 0x9a24945d
and eax, 0xbdd65e7b
or eax, 0xd5a9dc2a
xor eax, 0xfa39b02b
mov ecx, 0xe9c8db86
xor edx, edx
div ecx
mov ecx, 0x4cae2b4c
xor edx, edx
div ecx
or eax, 0xa67c4961
or eax, 0x4509bb0
xor eax, 0xd1df4fa6
xor eax, 0x8f35afe7
sub eax, 0xa5265135
add eax, 0xdc6376b9
add eax, 0x8691311e
cmp eax, 0xfc8d0ae
jbe 0x100a8db7
mov eax, dword [0x1014327c]
add eax, dword [0x10143280]
mov ecx, 0x8637fb77
xor edx, edx
div ecx
add eax, 0x7e86a8ee
mov ecx, 0x575ed43
xor edx, edx
div ecx
imul eax, eax, 0x76753c27
and eax, 0x5b957f7b
sub eax, 0x2b4da076
sub eax, 0x4e41b858
or eax, 0x35a9721f
sub eax, 0x6bbe98b
and eax, 0x32835f18
sub eax, 0x9b154b7b
or eax, 0xb594071d
imul eax, eax, 0x4f80ca53
add eax, 0x4f7dacc7
xor eax, 0x71c18572
mov ecx, 0x14bd598a
xor edx, edx
div ecx
xor eax, 0xce9c286e
xor eax, 0xc029d765
mov ecx, 0xcc3f262b
xor edx, edx
div ecx
sub eax, 0x5ddab5ee
cmp eax, 0xde1e1879
jae 0x100a8db7
mov eax, dword [0x10143284]
add eax, dword [0x10143288]
and eax, 0x3f57c0e5
xor eax, 0x8f21acb3
xor eax, 0x800b306e
or eax, 0x325baf7b
or eax, 0x768d1380
mov ecx, 0x278e25b0
xor edx, edx
div ecx
sub eax, 0xaf24b438
add eax, 0x8de94cd7
sub eax, 0xe71ee017
or eax, 0xa331777c
xor eax, 0x477de4f0
or eax, 0x7701e65
xor eax, 0x9b64d31e
sub eax, 0x1d2e7811
sub eax, 0x9f3eb14e
xor eax, 0xf26b21f3
mov ecx, 0x2bc33159
xor edx, edx
div ecx
or eax, 0xe3a31b1d
imul eax, eax, 0x71ff2ee9
and eax, 0x68b8a930
cmp eax, 0x990c367
jb 0x100a8b77
mov eax, dword [0x1014328c]
xor eax, dword [0x10143290]
add eax, 0xbc88014d
mov ecx, 0x19eda7b2
xor edx, edx
div ecx
add eax, 0x47e075a7
and eax, 0xb239ec37
add eax, 0x7c1c1f7a
xor eax, 0xcc068823
and eax, 0x60ce253e
mov ecx, 0x662bb3ae
xor edx, edx
div ecx
mov ecx, 0xac269c46
xor edx, edx
div ecx
and eax, 0x4a165044
sub eax, 0xf9bae8e0
add eax, 0x6600c3b5
mov ecx, 0x769a143f
xor edx, edx
div ecx
or eax, 0x6f261a1e
imul eax, eax, 0xb2d1e807
and eax, 0x86435680
xor eax, 0x64e18bb
mov ecx, 0xf8cd96bd
xor edx, edx
div ecx
add eax, 0xd21f7882
mov ecx, 0xd8bd2c01
xor edx, edx
div ecx
cmp eax, 0xd3b37d03
ja 0x100a8dbc
mov edi, dword [ebp - 0xc]
mov eax, dword [0x10143294]
mov ecx, dword [0x10143298]
and eax, ecx
add eax, 0x48499549
and eax, 0xbf4db39
imul eax, eax, 0x7d23c51c
add eax, 0x2f5032d4
or eax, 0xf45b64cd
add eax, 0x2f4f49ee
xor eax, 0x43288041
or eax, 0x34457b9e
imul eax, eax, 0xbd8ba5d3
xor eax, 0xec0d0c2a
add eax, 0x390b73a4
xor eax, 0x842c81fb
add eax, 0xe734d6a2
xor eax, 0x1910d590
add eax, 0x3eaf9444
xor eax, 0xfbefe41
add eax, 0xe75f3dbd
or eax, 0xcb52f03e
push eax
mov esi, esp
mov dword [ebp - 0x18], esi
push eax
mov edx, esp
mov dword [ebp - 0x14], edx
push eax
mov ecx, esp
mov dword [ebp - 0x10], ecx
mov dword [esi], edi
mov dword [edx], 0
mov dword [ecx], 0
cmp eax, 0x65d5b61b
jbe 0x100a849a
mov eax, dword [0x1014329c]
xor edx, edx
div dword [0x101432a0]
or eax, 0xbcb14f4b
add eax, 0x7432dc4b
imul eax, eax, 0xe9f7e32e
sub eax, 0x9836d979
xor eax, 0x4fb65988
and eax, 0xf8f8041f
sub eax, 0x3357b395
mov ecx, 0x9a31742a
xor edx, edx
div ecx
mov ecx, 0x4e1bcd32
xor edx, edx
div ecx
imul eax, eax, 0x7b13b219
mov ecx, 0xe9ce2c2c
xor edx, edx
div ecx
imul eax, eax, 0xd53885c0
and eax, 0x23c60feb
or eax, 0xe9af8929
mov ecx, 0xc89c1f62
xor edx, edx
div ecx
add eax, 0xfce80c03
add eax, 0xddfb9837
imul eax, eax, 0xd26b71af
xor eax, 0x13d97948
add eax, 0x4adf95d6
cmp eax, 0xd1bf834d
jae 0x100a8407
jmp 0x100a85c6
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
mov ecx, dword [ecx]
movsx eax, byte [eax + ecx]
cmp eax, 0
je 0x100a8a42
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
mov ecx, dword [ecx]
movsx eax, byte [eax + ecx]
cmp eax, 0x5c
jne 0x100a8714
mov eax, dword [0x101432a4]
or eax, dword [0x101432a8]
or eax, 0xaf26220b
xor eax, 0x6494ee86
sub eax, 0xbd49ab64
and eax, 0xb133d43a
add eax, 0x99cf2d54
add eax, 0x60baab93
imul eax, eax, 0xc9782bb0
or eax, 0x60bdf85d
imul eax, eax, 0xdb2f6028
add eax, 0x4896069e
xor eax, 0x7255174d
add eax, 0x52c450e1
sub eax, 0x57399d62
imul eax, eax, 0xbb519e0b
add eax, 0x15022cbd
xor eax, 0xf9093c03
add eax, 0x149fbdd1
mov ecx, 0xc657a29f
xor edx, edx
div ecx
sub eax, 0xd3df1872
xor eax, 0x257d16cd
cmp eax, 0xc2d02ef5
jae 0x100a8ddb
mov ecx, dword [ebp - 0x14]
mov eax, dword [0x101432ac]
imul eax, dword [0x101432b0]
and eax, 0x517bcfd8
sub eax, 0xe7ae65f6
mov esi, 0x5629dd3e
xor edx, edx
div esi
and eax, 0x38ec76e
add eax, 0x42122994
sub eax, 0xe290e748
add eax, 0x30e42ee9
or eax, 0xd0c444bd
mov esi, 0xae6ab81e
xor edx, edx
div esi
or eax, 0xed9f4132
add eax, 0x5e79469f
and eax, 0x281d33b1
sub eax, 0x925dbc73
sub eax, 0x396fbf6d
add eax, 0x2935ad56
mov esi, 0xc7b1e6d1
xor edx, edx
div esi
mov esi, 0xe4efe314
xor edx, edx
div esi
mov esi, 0x3fec72d0
xor edx, edx
div esi
and eax, 0x9a19759b
imul eax, eax, 0x4c1d4bec
mov edx, dword [ecx]
add edx, 1
mov dword [ecx], edx
cmp eax, 0xb14ad94f
jae 0x100a8ddb
jmp 0x100a8714
mov eax, dword [0x101432b4]
add eax, dword [0x101432b8]
xor eax, 0xe5d19f6e
xor eax, 0x8ae2ae42
xor eax, 0xd866d59b
xor eax, 0x1d8668ff
or eax, 0x3fc9b28d
sub eax, 0xc764aeb3
or eax, 0x412fe59f
add eax, 0x53f03d70
or eax, 0x9874914d
sub eax, 0x29b14ea1
or eax, 0x76d941b4
and eax, 0xedb86295
mov ecx, 0x74dab39c
xor edx, edx
div ecx
imul eax, eax, 0x3b7fc744
add eax, 0x5081479f
add eax, 0xb4342d63
xor eax, 0x92163de
sub eax, 0x90198cc9
or eax, 0x50719ba4
add eax, 0x384834d4
cmp eax, 0x5363c756
jae 0x100a8dea
mov eax, dword [0x101432bc]
and eax, dword [0x101432c0]
sub eax, 0xb0a74b22
add eax, 0xce0a0fcc
or eax, 0x109cc235
xor eax, 0xec297b44
sub eax, 0x341f7900
sub eax, 0xc3dd887c
and eax, 0x1892aad3
or eax, 0xa6fbecbe
imul eax, eax, 0xa8ecae6f
sub eax, 0xd5bc68ff
sub eax, 0x274f3885
sub eax, 0x8f058229
imul eax, eax, 0xa5d2225f
or eax, 0xe46a7ca4
sub eax, 0xf5fd5e88
sub eax, 0x26cc2539
and eax, 0x261dee31
imul eax, eax, 0xea1ea735
and eax, 0xc34e7b9c
imul eax, eax, 0x85c8d8e8
cmp eax, 0x71bc0059
ja 0x100a8793
jmp 0x100a8816
mov eax, dword [0x101432c4]
xor eax, dword [0x101432c8]
mov ecx, 0x2c1e5bea
xor edx, edx
div ecx
sub eax, 0x1c8c4a4
imul eax, eax, 0x3a5fd3ce
mov ecx, 0x1ea4e0cc
xor edx, edx
div ecx
or eax, 0xe69d6adc
xor eax, 0xdbaf2b07
add eax, 0xc888c12b
imul eax, eax, 0xd27c9052
or eax, 0x817fcd6a
and eax, 0x5e27cfe6
add eax, 0xee2f27d
or eax, 0x82638188
xor eax, 0x48668ba3
sub eax, 0xacb4f2ed
or eax, 0x9b65c4df
or eax, 0x91d27040
imul eax, eax, 0x61ecc4a1
sub eax, 0xeec2f900
add eax, 0xcda30b99
and eax, 0x168884bd
cmp eax, 0xc0039a58
jae 0x100a8c9d
mov eax, dword [0x101432cc]
or eax, dword [0x101432d0]
add eax, 0x6fce7062
mov ecx, 0x7690b3e9
xor edx, edx
div ecx
sub eax, 0xa1e34b0c
and eax, 0xc7c0a77a
xor eax, 0x7105f980
and eax, 0x39af54b7
and eax, 0xf3a98425
mov ecx, 0xf2058768
xor edx, edx
div ecx
and eax, 0x648b4eaf
imul eax, eax, 0x907ec51
imul eax, eax, 0xb2bee326
add eax, 0xd624ad6e
or eax, 0x826944fa
or eax, 0xa63e2c76
xor eax, 0xbf9af745
xor eax, 0x677ca0ec
add eax, 0x1f3ed953
imul eax, eax, 0xf4d24ad6
add eax, 0x79f01a77
and eax, 0x4791afd7
cmp eax, 0xae40e47
je 0x100a8def
mov ecx, dword [ebp - 0x10]
mov eax, dword [0x101432d4]
sub eax, dword [0x101432d8]
add eax, 0x9d07f5dc
and eax, 0x53bfea6c
imul eax, eax, 0xc8745a9e
xor eax, 0x36a33433
mov esi, 0x23338a47
xor edx, edx
div esi
sub eax, 0xbaa886e5
add eax, 0x3503f8f1
and eax, 0xf2a4654f
and eax, 0x7d43131d
and eax, 0x4576ab5c
or eax, 0xbe2b304f
mov esi, 0x8041916e
xor edx, edx
div esi
xor eax, 0x63104f9e
xor eax, 0x708627c4
add eax, 0xc1c770ee
add eax, 0xd529b907
mov esi, 0x688a7ce2
xor edx, edx
div esi
xor eax, 0xdd8c79b2
add eax, 0x6020b077
add eax, 0xcc233357
mov edx, dword [ecx]
add edx, 1
mov dword [ecx], edx
cmp eax, 0xe0def6e6
ja 0x100a8def
mov eax, dword [0x101432dc]
add eax, dword [0x101432e0]
mov ecx, 0xc10bd1
xor edx, edx
div ecx
mov ecx, 0x6e1b488f
xor edx, edx
div ecx
and eax, 0x3dd2d638
mov ecx, 0x7d2390c9
xor edx, edx
div ecx
xor eax, 0xb3a1156a
imul eax, eax, 0xbdc5df18
mov ecx, 0xac0d139a
xor edx, edx
div ecx
add eax, 0x4c5c2d8c
and eax, 0xd0fa0f15
or eax, 0xac917c66
imul eax, eax, 0xbd9e9fb0
and eax, 0xb6e8ddfd
and eax, 0x1a6f9f87
or eax, 0xe0aadf9f
add eax, 0xe4ad09d8
xor eax, 0xd949fae8
add eax, 0x86d1de19
add eax, 0xc07177d9
xor eax, 0x1494005b
add eax, 0xd8eab0db
cmp eax, 0x6f04e3b7
je 0x100a8c9d
jmp 0x100a85c6
mov eax, dword [0x101432e4]
xor eax, dword [0x101432e8]
xor eax, 0x3aa84440
sub eax, 0x4ad7927a
or eax, 0x3d208ffa
mov ecx, 0x3dbae416
xor edx, edx
div ecx
and eax, 0xd8a636b7
sub eax, 0xa9cdbc9b
and eax, 0xe4c00076
mov ecx, 0xc5a6746
xor edx, edx
div ecx
mov ecx, 0xb2dd4e54
xor edx, edx
div ecx
sub eax, 0x18f92691
sub eax, 0xfd550c7f
xor eax, 0x10754e6c
sub eax, 0x90cca541
xor eax, 0xa4a9ffa
mov ecx, 0xb03fdf65
xor edx, edx
div ecx
imul eax, eax, 0x13001b2
mov ecx, 0x3c90a1e3
xor edx, edx
div ecx
xor eax, 0xc52de2b6
xor eax, 0xaba2ac8c
xor eax, 0xc9c1f554
cmp eax, 0xa3318982
jbe 0x100a8db2
mov ecx, dword [ebp - 0x14]
mov eax, dword [0x101432ec]
xor eax, dword [0x101432f0]
and eax, 0x3d1357a4
mov esi, 0xc310700b
xor edx, edx
div esi
and eax, 0xf021ee8c
imul eax, eax, 0x4897bd78
imul eax, eax, 0x9c5c8db7
and eax, 0x24518198
sub eax, 0x655e75e6
and eax, 0x67516b52
imul eax, eax, 0xc3a42eab
add eax, 0x39d95aa6
xor eax, 0x8dd1a23f
xor eax, 0xcaa2658d
add eax, 0xbb63e96
xor eax, 0x73ff2ae4
sub eax, 0xd6330615
mov esi, 0xf501ebad
xor edx, edx
div esi
imul eax, eax, 0x3d8b750b
mov esi, 0xf94bf8e2
xor edx, edx
div esi
imul eax, eax, 0x3da9660f
and eax, 0xbb902f2a
cmp dword [ecx], 7
setg cl
mov byte [ebp - 0x19], cl
cmp eax, 0x9e9fdbdc
je 0x100a8db2
mov al, byte [ebp - 0x19]
and al, 1
movzx eax, al
lea esp, [ebp - 8]
pop esi
pop edi
pop ebp
ret
mov eax, dword [0x101432f4]
or eax, dword [str._bHmP]
mov ecx, 0xe5578801
xor edx, edx
div ecx
imul eax, eax, 0xb15505d8
mov ecx, 0x168c2c0d
xor edx, edx
div ecx
xor eax, 0x859e355d
or eax, 0xb19f3e53
add eax, 0x2b3c1c27
xor eax, 0x82b81fea
xor eax, 0x4a12ac44
imul eax, eax, 0xe0427513
or eax, 0xcdfcc6a1
xor eax, 0xfe5d221b
mov ecx, 0xe523cc6d
xor edx, edx
div ecx
xor eax, 0x9e62afd0
add eax, 0xca3aa35a
mov ecx, 0xe5d541a2
xor edx, edx
div ecx
or eax, 0xf56b15a7
add eax, 0x357bc8d1
or eax, 0x3d852bd0
imul eax, eax, 0x7ed4745f
imul eax, eax, 0xedd5dd1
cmp eax, 0xedd2b084
je 0x100a8dfe
mov edi, dword [ebp - 0xc]
mov eax, dword [0x101432fc]
mov ecx, dword [0x10143300]
xor eax, ecx
xor eax, 0x108248e0
imul eax, eax, 0x5c91ed47
or eax, 0xa5aa32e9
imul eax, eax, 0x3f0406f5
and eax, 0xba81a011
add eax, 0x9215862c
mov ecx, 0x8f318445
mul ecx
mov eax, edx
shr eax, 0x1d
add eax, 0xae8c1222
and eax, 0x2081024
xor eax, 0x4e6d4112
imul eax, eax, 0x7e15bc27
xor eax, 0x5a7d0d80
imul eax, eax, 0xbcccbac6
add eax, 0xbb009a59
mov ecx, 0x8bf951f
mul ecx
shr edx, 0x1b
imul eax, edx, 0x3b1879aa
push eax
mov esi, esp
push eax
mov edx, esp
push eax
mov ecx, esp
mov dword [esi], edi
mov dword [edx], 0
mov dword [ecx], 0
cmp eax, 0x5efa736f
jae 0x100a8c05
jmp 0x100a8407
mov eax, dword [0x10143304]
xor eax, dword [0x10143308]
add eax, 0xfd42c68
mov ecx, 0x5b64178a
xor edx, edx
div ecx
imul eax, eax, 0x230f220b
or eax, 0xf63f24ba
sub eax, 0xbbe5893a
or eax, 0x387c544e
imul eax, eax, 0x5bbde92d
add eax, 0x3bd032f3
or eax, 0xb9219d03
or eax, 0x8cc35bd8
imul eax, eax, 0xa95f4557
xor eax, 0x44128264
and eax, 0x3dfc212
and eax, 0xecf67296
and eax, 0x40c34604
or eax, 0xd2cd2b8e
imul eax, eax, 0xf274b0f2
sub eax, 0x5f23203e
or eax, 0x85f66f6e
add eax, 0x9ee94ec1
cmp eax, 0x474f6d92
jbe 0x100a8e1d
mov ecx, dword [ebp - 0x10]
mov eax, dword [0x1014330c]
sub eax, dword [0x10143310]
add eax, 0x8733931b
and eax, 0x224a08a6
sub eax, 0x9008cde8
add eax, 0x97314b90
mov esi, 0xc1ddb8ef
xor edx, edx
div esi
mov esi, 0x5928387
xor edx, edx
div esi
and eax, 0x1f05f0de
xor eax, 0x4ab27e10
xor eax, 0x57347e4
or eax, 0xa760b2b5
xor eax, 0xadaacf75
imul eax, eax, 0x1743df76
and eax, 0xee8fa103
imul eax, eax, 0x737c2bc
sub eax, 0xce0a2757
and eax, 0x824cba29
sub eax, 0xea683a8e
or eax, 0xcbb2ed6
and eax, 0xa111a8f
or eax, 0x1e1a2398
mov edx, dword [ecx]
add edx, 1
mov dword [ecx], edx
cmp eax, 0x6c5b38b8
jae 0x100a8e1d
jmp 0x100a889b
jmp 0x100a8ad1
jmp 0x100a82f8
mov esi, dword [ebp - 0xc]
push eax
mov edx, esp
push eax
mov ecx, esp
push eax
mov eax, esp
mov dword [edx], esi
mov dword [ecx], 0
mov dword [eax], 0
jmp 0x100a849a
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
add ecx, 1
mov dword [eax], ecx
jmp 0x100a8675
jmp 0x100a8793
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax]
add ecx, 1
mov dword [eax], ecx
jmp 0x100a8920
mov esi, dword [ebp - 0xc]
push eax
mov edx, esp
push eax
mov ecx, esp
push eax
mov eax, esp
mov dword [edx], esi
mov dword [ecx], 0
mov dword [eax], 0
jmp 0x100a8c05
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax]
add ecx, 1
mov dword [eax], ecx
jmp 0x100a8d1f