Function at 0x1011ad90
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push esi
sub esp, 0x2c
mov dword [ebp - 8], ecx
mov eax, dword [0x1014f838]
xor edx, edx
div dword [0x1014f83c]
imul eax, eax, 0x13d36a01
xor eax, 0x2439d3db
add eax, 0xc3f4d3be
sub eax, 0xdfecd260
sub eax, 0xe842db06
add eax, 0x87ff7b13
xor eax, 0x1deddb07
and eax, 0x9e9edecc
and eax, 0xd22a5f17
imul eax, eax, 0xfb5b857d
and eax, 0xb48307f9
add eax, 0xdadff5df
xor eax, 0xb0fe340c
mov ecx, 0xd684987d
xor edx, edx
div ecx
and eax, 0xcdad6cdb
mov ecx, 0x2e5c4eb0
xor edx, edx
div ecx
or eax, 0x53c068a7
imul eax, eax, 0x712b3883
or eax, 0xf866d972
or eax, 0x2dd0895f
sub eax, 0xa5cc469e
or eax, 0xdd78c10c
add eax, 0x3c0c089c
and eax, 0x37a685f6
add eax, 0xd9d5e1b3
mov ecx, 0xfbf76d23
xor edx, edx
div ecx
and eax, 0x9928a32b
imul eax, eax, 0x622af08f
xor eax, 0x2792f3fa
and eax, 0x119ae89
or eax, 0xd120eef
mov ecx, 0xa2e0cb06
xor edx, edx
div ecx
mov ecx, 0xba85bf6f
xor edx, edx
div ecx
cmp eax, 0x1741bd60
ja 0x1011ba07
mov eax, dword [0x1014f840]
xor edx, edx
div dword [0x1014f844]
xor eax, 0x201726a
mov ecx, 0xb0bace67
xor edx, edx
div ecx
add eax, 0x8236f3d6
sub eax, 0x81dee7fa
imul eax, eax, 0x660a855a
or eax, 0x8ffef865
and eax, 0xafe74e73
sub eax, 0x974fe3ca
or eax, 0x5d3018c
xor eax, 0x8d3665a1
and eax, 0x5c9410a8
xor eax, 0x10aad822
sub eax, 0x79da1feb
xor eax, 0x767496a0
imul eax, eax, 0x6048080d
mov ecx, 0x422c923d
xor edx, edx
div ecx
imul eax, eax, 0x9bb5eade
sub eax, 0x46a0d4f4
add eax, 0xaf5026bd
mov ecx, 0x9cbc480a
xor edx, edx
div ecx
or eax, 0xb4ad6091
imul eax, eax, 0xc4d264a5
xor eax, 0xa285d47
mov ecx, 0x637f426d
xor edx, edx
div ecx
mov ecx, 0xe4567da6
xor edx, edx
div ecx
or eax, 0xf6eb022a
add eax, 0x6418b48c
sub eax, 0xcb1abc28
imul eax, eax, 0x7e7baa00
sub eax, 0x6fdeb7d6
add eax, 0xef140b27
add eax, 0xe914f52a
imul eax, eax, 0x7ef001d4
cmp eax, 0x8a305ba0
jae 0x1011ae6f
mov eax, dword [0x1014f848]
add eax, dword [0x1014f84c]
sub eax, 0x1c71010f
imul eax, eax, 0x65b40303
sub eax, 0xbf6690d
xor eax, 0x4140e12
xor eax, 0xcae3bc44
mov ecx, 0x7a5b63ec
xor edx, edx
div ecx
mov ecx, 0x530b60a1
xor edx, edx
div ecx
and eax, 0xa2d93057
sub eax, 0x2e441f2c
mov ecx, 0x7dc21698
xor edx, edx
div ecx
mov ecx, 0xe7a196cc
xor edx, edx
div ecx
add eax, 0x6f8685f1
or eax, 0x53eb8a31
or eax, 0x542c329a
mov ecx, 0x2baa15a7
xor edx, edx
div ecx
imul eax, eax, 0xce8f85af
or eax, 0x6b0b1388
add eax, 0x6d235bcb
and eax, 0xfb235832
and eax, 0x4258bd63
sub eax, 0x33862db
sub eax, 0xd22bbf17
add eax, 0x422f1363
or eax, 0x55b0556a
xor eax, 0x18760890
xor eax, 0x1755941a
sub eax, 0x5a019445
xor eax, 0xd3e54f30
xor eax, 0x91ffc155
and eax, 0xf9b3ec15
add eax, 0x7c896e05
xor eax, 0x5a1393f0
mov ecx, 0xbdd43c5b
xor edx, edx
div ecx
cmp eax, 0x94bc5fc9
jae 0x1011b8fc
mov ecx, dword [ebp - 8]
mov eax, 0x9aaf977f
mov dword [ebp - 0x10], eax
push eax
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [eax]
mov dword [ebp - 0x14], ecx
call fcn.100841f0
mov esi, eax
mov eax, dword [ebp - 0x10]
xor ecx, ecx
neg esi
sbb ecx, edx
setl cl
mov byte [ebp - 9], cl
cmp eax, 0x287cd19c
jb 0x1011b01b
mov al, byte [ebp - 9]
test al, 1
jne 0x1011b061
jmp 0x1011b248
mov eax, dword [0x1014f858]
sub eax, dword [0x1014f85c]
imul eax, eax, 0xc9fa0071
xor eax, 0x9f82384a
xor eax, 0x9a888d23
mov ecx, 0xdcfbfc4d
xor edx, edx
div ecx
add eax, 0xed611f29
add eax, 0x795023c4
imul eax, eax, 0x123208f4
imul eax, eax, 0x1fcb3901
and eax, 0x54590694
add eax, 0xbb498528
add eax, 0x8f048bd2
mov ecx, 0xad58e9e3
xor edx, edx
div ecx
add eax, 0xb31a1f74
or eax, 0xefbcd9f
or eax, 0x5a67291d
sub eax, 0x920cf02a
and eax, 0x584dd7b0
imul eax, eax, 0x56faf112
and eax, 0xc52e65e8
sub eax, 0x2a329428
or eax, 0x46670329
sub eax, 0xc290f693
imul eax, eax, 0x44bb93cb
imul eax, eax, 0xced729b6
mov ecx, 0x265ae90
xor edx, edx
div ecx
and eax, 0x414527d2
mov ecx, 0xb9fc526d
xor edx, edx
div ecx
mov ecx, 0x17069eae
xor edx, edx
div ecx
sub eax, 0x954d4907
sub eax, 0xb265d000
and eax, 0xf82a6705
add eax, 0x79113bdd
or eax, 0x671e2a6f
cmp eax, 0xa6f73f2a
je 0x1011ba0c
mov ecx, dword [ebp - 0x14]
mov eax, dword [0x1014f860]
sub eax, dword [0x1014f864]
or eax, 0x5b4fc6d8
mov esi, 0xc6ee2022
xor edx, edx
div esi
mov esi, 0x4a6aefe0
xor edx, edx
div esi
add eax, 0xbd004621
add eax, 0x55e14ace
mov esi, 0xa2fcb4de
xor edx, edx
div esi
mov esi, 0xbe2a104f
xor edx, edx
div esi
or eax, 0x2806db72
imul eax, eax, 0x83fd661b
imul eax, eax, 0xfa357325
or eax, 0xab1b203
and eax, 0x49085065
mov esi, 0xbd2e6bcf
xor edx, edx
div esi
add eax, 0xb674487
mov esi, 0x6b2f556
xor edx, edx
div esi
and eax, 0x3529d718
and eax, 0x52b69ce2
mov esi, 0x82d366a6
xor edx, edx
div esi
or eax, 0x757aa70a
xor eax, 0x5c5ff818
sub eax, 0x9e858c89
xor eax, 0xa85405d2
xor eax, 0x21f9bed8
imul eax, eax, 0x5a138fea
mov esi, 0xd968f62d
xor edx, edx
div esi
or eax, 0x9f35cb03
add eax, 0x80ced6dd
xor eax, 0x10c3fee7
or eax, 0xdce42af9
or eax, 0xb16058ba
mov esi, 0x6f16ff56
xor edx, edx
div esi
mov esi, 0xcafd0fc4
xor edx, edx
div esi
or eax, 0x1071ffae
mov dword [ebp - 0x1c], eax
call fcn.10083c40
sub esp, 4
mov dword [esp], eax
call fcn.10083980
add esp, 4
mov ecx, eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x18], ecx
cmp eax, 0x9baacaed
ja 0x1011ba0c
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x20], eax
jmp 0x1011b405
mov eax, dword [0x1014f868]
sub eax, dword [0x1014f86c]
xor eax, 0x32e2c017
imul eax, eax, 0x8626af78
add eax, 0x61552d85
mov ecx, 0x7327ee71
xor edx, edx
div ecx
or eax, 0x9fc59690
sub eax, 0x91277de4
or eax, 0xf10c8b1d
sub eax, 0xe97925ce
add eax, 0x89267353
add eax, 0x7175bb87
imul eax, eax, 0xc08e2495
or eax, 0xc6711cdf
imul eax, eax, 0xd2b9c5b3
add eax, 0x9aed4bcc
add eax, 0x57759727
mov ecx, 0x9ca5edde
xor edx, edx
div ecx
and eax, 0x7703b31a
mov ecx, 0x4d21b6e5
xor edx, edx
div ecx
xor eax, 0xe7d20619
imul eax, eax, 0x1683b5f3
imul eax, eax, 0x83682226
and eax, 0xf4134dda
sub eax, 0x6f623daf
or eax, 0x7a4d67b8
xor eax, 0x928cf3d
and eax, 0xecbe1b38
imul eax, eax, 0x92618805
sub eax, 0x60261707
xor eax, 0x5344e966
imul eax, eax, 0xf32ff62b
imul eax, eax, 0x6e5df007
imul eax, eax, 0x97047c84
imul eax, eax, 0xa7de8603
cmp eax, 0xe54d66cf
jae 0x1011b9f5
mov ecx, dword [ebp - 0x14]
mov eax, dword [0x1014f870]
sub eax, dword [0x1014f874]
and eax, 0x5d38951b
sub eax, 0x891cfbf3
and eax, 0xfce9f32f
and eax, 0xa1e91804
mov esi, 0xac9c66d8
xor edx, edx
div esi
xor eax, 0x1451b9b3
sub eax, 0x5177e3cf
sub eax, 0x20b42428
sub eax, 0xac0fa1a8
imul eax, eax, 0x396439ba
xor eax, 0x1d2f1841
sub eax, 0xc7882157
sub eax, 0x33908056
and eax, 0xaefaeef5
imul eax, eax, 0x137f925b
xor eax, 0xa68bda3f
xor eax, 0xcef288b
sub eax, 0x9bda5a8c
sub eax, 0x6e45c7f8
or eax, 0x50308caf
sub eax, 0x95379551
mov esi, 0x2911dec0
xor edx, edx
div esi
mov esi, 0xeb94e754
xor edx, edx
div esi
sub eax, 0xc1267085
imul eax, eax, 0xe12e7f50
xor eax, 0x6bc44d89
or eax, 0x61eafc1
mov esi, 0xf2bd3b73
xor edx, edx
div esi
sub eax, 0x81113221
and eax, 0x4826f4c2
add eax, 0xa98902a6
sub eax, 0xab624b48
xor eax, 0x6c137974
mov dword [ebp - 0x28], eax
mov eax, dword [ecx]
call dword [eax + 0x1c]
mov ecx, eax
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x24], ecx
cmp eax, 0xa668695
jbe 0x1011b9f5
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x20], eax
jmp 0x1011b405
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x2c], eax
mov eax, dword [0x1014f878]
xor eax, dword [0x1014f87c]
sub eax, 0xc05250ef
xor eax, 0xf3e9cc93
add eax, 0x2444071
add eax, 0xdb18d48c
imul eax, eax, 0xf368ab28
mov ecx, 0x2ac2251
xor edx, edx
div ecx
and eax, 0x812f0dd6
sub eax, 0xad632f0d
xor eax, 0x5c18c4c9
add eax, 0xd15c1a14
and eax, 0xbab6f850
mov ecx, 0x5f00ff2f
xor edx, edx
div ecx
add eax, 0xd34bb32a
add eax, 0xf19de07b
xor eax, 0xbddf19a3
mov ecx, 0xfd00756f
xor edx, edx
div ecx
mov ecx, 0x4358d611
xor edx, edx
div ecx
add eax, 0x82641f5b
and eax, 0x96304d31
sub eax, 0xa7ce9ad4
sub eax, 0x80435442
sub eax, 0x7b37fe62
add eax, 0x3b78728
and eax, 0xa6fe39e
add eax, 0xc898abe5
add eax, 0x68ad1932
xor eax, 0xd75e0681
and eax, 0xea593f4
and eax, 0x90cdf291
xor eax, 0xb80622e7
mov ecx, 0xa2c1687c
xor edx, edx
div ecx
or eax, 0x9e42f164
xor eax, 0xde5de38a
cmp eax, 0x381956a9
jbe 0x1011ba27
mov eax, dword [0x1014f880]
xor eax, dword [0x1014f884]
imul eax, eax, 0xba6df346
xor eax, 0xafa264be
sub eax, 0x7edb388a
mov ecx, 0x2922ef95
xor edx, edx
div ecx
imul eax, eax, 0xd7cd3424
and eax, 0x849c3d4e
and eax, 0x7413c60
sub eax, 0x408a5422
sub eax, 0x96b038a
sub eax, 0x261587ef
or eax, 0xf0ea3a45
sub eax, 0xd853207b
or eax, 0x76a36930
and eax, 0xfbf87135
add eax, 0x2538031b
and eax, 0x69274bd0
imul eax, eax, 0xde15038b
add eax, 0xb02e2daf
imul eax, eax, 0x981326f5
and eax, 0xace15648
mov ecx, 0xfc316e9f
xor edx, edx
div ecx
xor eax, 0xa5532dd0
imul eax, eax, 0x945e525a
imul eax, eax, 0x933ea46c
sub eax, 0x8e1380f7
or eax, 0x2d544ad8
add eax, 0x5110afaf
sub eax, 0xfe3090d2
add eax, 0x2e5b2c5b
or eax, 0x740748b7
imul eax, eax, 0x3b4040fa
mov ecx, 0xe38adf0b
xor edx, edx
div ecx
and eax, 0xe60f1193
cmp eax, 0xd6f6165a
jae 0x1011ba27
mov eax, dword [0x1014f888]
add eax, dword [0x1014f88c]
add eax, 0x3b8f54e9
add eax, 0xbb3b2f4b
add eax, 0x8de8925f
and eax, 0x8284b0ee
sub eax, 0xd6a51398
imul eax, eax, 0xba1955b3
add eax, 0x323d06ae
mov ecx, 0x9127eeec
xor edx, edx
div ecx
xor eax, 0xf0d9becf
mov ecx, 0x353ea16a
xor edx, edx
div ecx
xor eax, 0xd2b820f7
mov ecx, 0x9740002e
xor edx, edx
div ecx
and eax, 0xe5f24187
add eax, 0x5660052d
add eax, 0x88d5e269
mov ecx, 0xf4ecdbee
xor edx, edx
div ecx
imul eax, eax, 0x53241e31
sub eax, 0x366d503e
imul eax, eax, 0x5c5f6317
sub eax, 0x85f1190a
xor eax, 0xac8b84c7
and eax, 0x5d391c28
mov ecx, 0xa8223495
xor edx, edx
div ecx
xor eax, 0xf2ffcc0f
xor eax, 0x47f6ce37
add eax, 0x34a80e00
imul eax, eax, 0x430f2160
add eax, 0x2d63c309
mov ecx, 0xf1b1d28e
xor edx, edx
div ecx
imul eax, eax, 0x27f7e824
and eax, 0x666969a5
and eax, 0x4d6c1195
imul eax, eax, 0xe1bf0f6e
cmp eax, 0xaa34b8f4
je 0x1011ba02
mov eax, dword [0x1014f890]
add eax, dword [0x1014f894]
and eax, 0x77ae47ba
sub eax, 0x76f533ce
and eax, 0x75dff14a
xor eax, 0x4e44df08
add eax, 0xe5dfc890
sub eax, 0xc6ef60ee
or eax, 0x52cc1199
mov ecx, 0x70a5f74a
xor edx, edx
div ecx
sub eax, 0xf6e5dc01
sub eax, 0x6f8a8d97
add eax, 0x7b4de01c
sub eax, 0xdbb40181
mov ecx, 0xaaf67516
xor edx, edx
div ecx
add eax, 0x1319b919
sub eax, 0x9e701fe7
add eax, 0x54665067
sub eax, 0x96dbde24
mov ecx, 0xdec665cd
xor edx, edx
div ecx
add eax, 0x4834d6b0
or eax, 0x9acef307
mov ecx, 0x8433d069
xor edx, edx
div ecx
or eax, 0x38027328
xor eax, 0xcade03fb
mov ecx, 0x1d0ae200
xor edx, edx
div ecx
and eax, 0xdb9a804d
or eax, 0x165798d
imul eax, eax, 0xffc47deb
imul eax, eax, 0xbf2af00b
add eax, 0x9c19191d
imul eax, eax, 0xca32a299
sub eax, 0xe8179e75
mov ecx, 0x5057df51
xor edx, edx
div ecx
sub eax, 0xb7198d37
cmp eax, 0xcfe623aa
jae 0x1011ba02
mov eax, dword [0x1014f898]
imul eax, dword [str.ofS]
sub eax, 0x2d5824fd
xor eax, 0x9c123079
and eax, 0x8d24527f
and eax, 0x8087a466
xor eax, 0x80652785
or eax, 0x394287b7
mov ecx, 0xd6fd78d3
xor edx, edx
div ecx
sub eax, 0xa2d9b185
add eax, 0x1d92c9e4
and eax, 0xed2d0c10
sub eax, 0x625e9154
add eax, 0x1224ffec
add eax, 0x8bffe57
sub eax, 0x4500d76b
sub eax, 0x50a3ef5a
or eax, 0xe0df6134
add eax, 0xd6e9952f
and eax, 0xd39b204d
or eax, 0x6edc2d41
add eax, 0x6eb5baa9
or eax, 0x162c3ebd
and eax, 0xeeb70203
add eax, 0x267dd796
imul eax, eax, 0xa7f50fba
mov ecx, 0x74ed0de7
xor edx, edx
div ecx
imul eax, eax, 0xa417b4f3
sub eax, 0x71c6f21c
or eax, 0x1425c56e
add eax, 0xfa68edf8
add eax, 0x38a846b1
and eax, 0x7c0257dc
or eax, 0x39904b92
add eax, 0xb250899b
cmp eax, 0x5560cc26
je 0x1011ba2c
mov eax, dword [0x1014f8a0]
or eax, dword [str.0FJ]
imul eax, eax, 0xc3c8bcdc
imul eax, eax, 0x52f75df0
imul eax, eax, 0xb140dae7
or eax, 0x94ba180c
or eax, 0x2050edad
or eax, 0x969ac170
add eax, 0x9d017d8
mov ecx, 0xc79c3921
xor edx, edx
div ecx
or eax, 0x318acdbb
xor eax, 0xc2142f55
and eax, 0x336f4d1b
add eax, 0x11f75a18
sub eax, 0x8a61e015
mov ecx, 0xaaf98ef6
xor edx, edx
div ecx
or eax, 0x64225e32
sub eax, 0x6f594c11
or eax, 0xacb749a7
mov ecx, 0x6fbea959
xor edx, edx
div ecx
or eax, 0xafc8f1ed
sub eax, 0x2641faea
or eax, 0x2fb11983
mov ecx, 0xdbecb2f3
xor edx, edx
div ecx
and eax, 0x2b081ce3
sub eax, 0xe469143e
imul eax, eax, 0xc7680250
imul eax, eax, 0x1586e21e
or eax, 0xcfa1a04f
and eax, 0x7fec536e
or eax, 0x92ffb4a5
imul eax, eax, 0xf5d7c864
mov ecx, 0x94133f84
xor edx, edx
div ecx
and eax, 0x30ac43be
xor eax, 0x18e69cab
cmp eax, 0x48240d2e
ja 0x1011ba2c
mov eax, dword [ebp - 0x2c]
lea esp, [ebp - 4]
pop esi
pop ebp
ret
mov eax, dword [0x1014f8a8]
and eax, dword [0x1014f8ac]
xor eax, 0xa803f2d9
and eax, 0xc3fccfc1
imul eax, eax, 0x8fb4b8d7
imul eax, eax, 0x42251fb2
mov ecx, 0xbbc235e0
xor edx, edx
div ecx
and eax, 0xe6c2a170
mov ecx, 0x2a05adae
xor edx, edx
div ecx
imul eax, eax, 0xc0b36c0b
sub eax, 0xf997be21
xor eax, 0x76d5b3df
imul eax, eax, 0xd119a51a
and eax, 0x70407232
sub eax, 0xd1eff138
imul eax, eax, 0x29e486ec
add eax, 0x574dd72d
xor eax, 0xe9dc927e
or eax, 0x39f8b803
or eax, 0xa9c3339c
imul eax, eax, 0x4d5c5e11
sub eax, 0x2087d8d7
sub eax, 0x1f6984b5
and eax, 0x3c62170e
mov ecx, 0x90b79088
xor edx, edx
div ecx
imul eax, eax, 0x97bd4b8e
add eax, 0xab77bbdb
add eax, 0xe5db7c3
sub eax, 0x9e05e206
and eax, 0xb646b05e
add eax, 0xb2311baa
or eax, 0x78962df
add eax, 0xd8130799
mov ecx, 0xf7a425b4
xor edx, edx
div ecx
sub eax, 0x8698e129
cmp eax, 0xe7a0e0fe
ja 0x1011ba31
mov ecx, dword [ebp - 8]
xor eax, eax
mov dword [ebp - 0x30], eax
push eax
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [eax]
call fcn.100841f0
mov eax, dword [ebp - 0x30]
cmp eax, 0x45486ef6
jae 0x1011ba31
jmp 0x1011b01b
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx]
call dword [eax + 0x1c]
jmp 0x1011b319
jmp 0x1011b682
jmp 0x1011ae6f
mov ecx, dword [ebp - 0x14]
call fcn.10083c40
sub esp, 4
mov dword [esp], eax
call fcn.10083980
add esp, 4
jmp 0x1011b136
jmp 0x1011b4db
jmp 0x1011b81e
mov ecx, dword [ebp - 8]
push eax
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [eax]
call fcn.100841f0
jmp 0x1011b9ce