Function at 0x1006a950
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push esi
sub esp, 0x18
mov dword [ebp - 8], ecx
mov eax, dword [0x100d1120]
xor edx, edx
div dword [0x100d1124]
imul eax, eax, 0x974de20f
imul eax, eax, 0xff0e5fe7
sub eax, 0xda7c6bc
xor eax, 0x3c637826
or eax, 0xc425d881
or eax, 0x3a28c4cd
sub eax, 0x3d4d7749
xor eax, 0xc05e14ef
and eax, 0xbb83cb15
add eax, 0xd3a247ee
xor eax, 0x2f1effa5
xor eax, 0x94d54a48
imul eax, eax, 0xc6683492
mov ecx, 0xee051bb1
xor edx, edx
div ecx
mov ecx, 0x91f67462
xor edx, edx
div ecx
imul eax, eax, 0xa448d7ca
or eax, 0x95f76ad4
imul eax, eax, 0xa5426ec2
sub eax, 0xcc7259d1
or eax, 0xddcb2db0
add eax, 0xf1b7465b
sub eax, 0x507034f
and eax, 0x97e93017
and eax, 0x803fe25
or eax, 0x2f296938
or eax, 0x14efc70e
and eax, 0xdd7d4c70
sub eax, 0xcd71a3fe
imul eax, eax, 0xa8c3dbbd
or eax, 0x10535b2
imul eax, eax, 0xc9b33edf
and eax, 0x9aefbbd0
add eax, 0xcc1080ab
or eax, 0x7c6c6953
and eax, 0xc6f50972
imul eax, eax, 0x72902ad5
and eax, 0xdc39d9f9
add eax, 0x1d3a62f9
xor eax, 0xc2650d94
xor eax, 0x2f4e18a
mov ecx, 0xe0d151b3
xor edx, edx
div ecx
and eax, 0x5fc715e
imul eax, eax, 0x1e7d7253
add eax, 0xf1d2c46d
and eax, 0x633bb14f
or eax, 0x9424d730
and eax, 0x8cc6fbc4
imul eax, eax, 0xc869e939
and eax, 0x2bd051e6
imul eax, eax, 0x86d15e5c
sub eax, 0xe2c72107
xor eax, 0xd7b042a5
mov ecx, 0x28d7cb2c
xor edx, edx
div ecx
imul eax, eax, 0xad319f5f
imul eax, eax, 0xaadef4d7
mov ecx, 0x6d954a67
xor edx, edx
div ecx
imul eax, eax, 0x5e9bde43
mov ecx, 0x8bde6076
xor edx, edx
div ecx
and eax, 0x2313a98e
sub eax, 0x6c2f37c6
and eax, 0x6171c63b
imul eax, eax, 0xc9acca04
add eax, 0x105df3bd
sub eax, 0x37bfce47
imul eax, eax, 0xc3207a2c
xor eax, 0xfe51bf20
and eax, 0xbb7c529d
and eax, 0xd7a33145
mov ecx, 0xdd2599e5
xor edx, edx
div ecx
add eax, 0x4f6bd7a4
mov ecx, 0x5852f2c1
xor edx, edx
div ecx
sub eax, 0x62c921c2
cmp eax, 0x83835bd7
jb 0x1006af66
mov edx, dword [ebp - 8]
mov eax, 0x2fa159f0
push eax
mov ecx, esp
push eax
mov esi, esp
mov dword [ebp - 0x1c], esi
push eax
mov esi, esp
mov dword [ebp - 0x18], esi
push eax
mov esi, esp
mov dword [ebp - 0x14], esi
mov dword [ecx], edx
mov ecx, dword [ecx]
mov dword [ebp - 0x10], ecx
cmp dword [ecx], 0
sete cl
mov byte [ebp - 9], cl
cmp eax, 0xf2107ca2
ja 0x1006ab0a
mov al, byte [ebp - 9]
test al, 1
jne 0x1006ab52
jmp 0x1006ab57
jmp 0x1006abfa
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ecx + 8]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
cmp eax, dword [ecx + 0xc]
jae 0x1006abe6
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
cmp dword [eax], 0
je 0x1006abd2
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x1c]
mov ecx, dword [ecx]
mov ecx, dword [ecx]
mov ecx, dword [ecx + 0x10]
mov dword [eax], ecx
mov eax, dword [eax]
cmp dword [eax], 0
je 0x1006abcd
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_DecodePointer]
mov ecx, eax
mov eax, dword [ebp - 0x14]
mov dword [eax], ecx
mov ecx, dword [eax]
mov eax, dword [ecx]
sub esp, 4
mov dword [esp], ecx
call dword [eax + 8]
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
mov dword [eax], 0
jmp 0x1006abd2
jmp 0x1006abd7
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
add ecx, 4
mov dword [eax], ecx
jmp 0x1006ab62
mov ecx, dword [ebp - 0x10]
add ecx, 0x10
call fcn.1006b180
mov eax, dword [ebp - 0x10]
mov dword [eax], 0
mov eax, dword [0x100d1130]
add eax, dword [0x100d1134]
xor eax, 0x95a7c398
sub eax, 0x99652af0
sub eax, 0xc70e1fb2
and eax, 0xe287a1b
mov ecx, 0xc87eaf5b
xor edx, edx
div ecx
imul eax, eax, 0x474b480c
mov ecx, 0xa789d38d
xor edx, edx
div ecx
sub eax, 0x5c7d1b63
imul eax, eax, 0x314e9098
add eax, 0x414c0b44
sub eax, 0xf8458363
sub eax, 0x92d0473e
add eax, 0x95ae4219
xor eax, 0x5360dc2e
or eax, 0xd079e2a8
sub eax, 0x14b14b6e
add eax, 0x61c469b
mov ecx, 0x529d7ef
xor edx, edx
div ecx
mov ecx, 0x278eb278
xor edx, edx
div ecx
xor eax, 0x2bf09e8f
add eax, 0x7150e03f
sub eax, 0x621aee6e
mov ecx, 0x3e27d724
xor edx, edx
div ecx
mov ecx, 0xa52bca82
xor edx, edx
div ecx
imul eax, eax, 0x8fff3a7
xor eax, 0x31aac89d
mov ecx, 0xffbaf772
xor edx, edx
div ecx
mov ecx, 0xf6c03bd1
xor edx, edx
div ecx
sub eax, 0x790ec913
sub eax, 0x3c11fa4a
or eax, 0xebf2f043
and eax, 0xe50fffeb
add eax, 0x6ce403f7
sub eax, 0xc6492b47
sub eax, 0x9cbecab
mov ecx, 0xa95fb5a7
xor edx, edx
div ecx
sub eax, 0x37cd1058
and eax, 0x71175cda
sub eax, 0xba760dc5
mov ecx, 0x97da7507
xor edx, edx
div ecx
or eax, 0x83556aaa
mov ecx, 0xc25739ef
xor edx, edx
div ecx
xor eax, 0x25abdb29
sub eax, 0xa455a399
mov ecx, 0x20202ea9
xor edx, edx
div ecx
xor eax, 0x5323151a
and eax, 0x24cd6829
add eax, 0x44f2f3f5
xor eax, 0xa11fea80
sub eax, 0xd7d507f6
xor eax, 0x94f14e61
imul eax, eax, 0x8a128926
add eax, 0xa3c199f8
add eax, 0x94981d53
or eax, 0x17c7b2cb
and eax, 0x76dc69a9
mov ecx, 0x54dfd8b4
xor edx, edx
div ecx
add eax, 0xa81928a8
and eax, 0xd9fe2d07
add eax, 0x84c17700
imul eax, eax, 0xd46b5330
mov ecx, 0xddb35d6
xor edx, edx
div ecx
add eax, 0xb60a3a7a
sub eax, 0x7472ad8b
imul eax, eax, 0x555891bb
or eax, 0xb89ee826
and eax, 0x60f2187e
or eax, 0x219b4a3f
and eax, 0xba0e0b08
mov ecx, 0x4695f101
xor edx, edx
div ecx
or eax, 0xb9356cd3
imul eax, eax, 0xe111a4d7
cmp eax, 0xb12ae655
jae 0x1006af73
mov eax, dword [0x100d1138]
add eax, dword [0x100d113c]
sub eax, 0x709a96ad
xor eax, 0xa7a7e2a4
and eax, 0x793b5127
or eax, 0x35d25042
imul eax, eax, 0x6fe2dd55
imul eax, eax, 0x66bc6268
mov ecx, 0xe228eff8
xor edx, edx
div ecx
xor eax, 0xaef1adfe
imul eax, eax, 0x8517a966
add eax, 0x51867160
add eax, 0xf3da62c
and eax, 0xc5ce3083
add eax, 0x40205be5
and eax, 0xacef2ea
xor eax, 0xfa1fef4
mov ecx, 0x9dcad87b
xor edx, edx
div ecx
mov ecx, 0xe004f93c
xor edx, edx
div ecx
imul eax, eax, 0xe6b74801
or eax, 0xf1dfecfe
xor eax, 0x15d0ed3a
imul eax, eax, 0x57effc05
imul eax, eax, 0x20fdf3dd
sub eax, 0x3193a6df
mov ecx, 0xa5b397fe
xor edx, edx
div ecx
add eax, 0x2a4ef69b
mov ecx, 0x2db3b84b
xor edx, edx
div ecx
imul eax, eax, 0xa54f72f6
and eax, 0x7259e227
xor eax, 0xe307881b
and eax, 0xc895d6f8
and eax, 0x8c2d7bf3
imul eax, eax, 0xa055c4e5
and eax, 0x81c5ca28
sub eax, 0x1d1e2a7
or eax, 0xfe4f50dd
and eax, 0xf691017c
and eax, 0x36a616a4
imul eax, eax, 0x7e0bd9a1
imul eax, eax, 0x14828b13
imul eax, eax, 0x6dc8c504
sub eax, 0x84a0ccc8
or eax, 0x8ece0440
and eax, 0xcb61324
xor eax, 0xd5caf546
xor eax, 0xa0804787
or eax, 0xcc873cf6
sub eax, 0xc88efbdf
or eax, 0xf017aa07
and eax, 0xa1ad875d
sub eax, 0xe3d03e84
and eax, 0xf6946d26
xor eax, 0x55943fe9
add eax, 0xaca05a83
mov ecx, 0x7fda85b6
xor edx, edx
div ecx
or eax, 0xf1d2049b
and eax, 0xa891f61b
sub eax, 0x89ee4045
add eax, 0x207d3a18
and eax, 0x9bf2a451
sub eax, 0xc251b81
sub eax, 0x849ffe3b
and eax, 0x5fef0eda
or eax, 0x2b0c9d75
mov ecx, 0x96222c9a
xor edx, edx
div ecx
add eax, 0x26418674
and eax, 0x3afea738
and eax, 0x958a58b5
sub eax, 0xf6a21c05
and eax, 0x59af3e9e
add eax, 0x2ce2812f
xor eax, 0x64c2ea90
xor eax, 0x523311cf
cmp eax, 0xb8639276
ja 0x1006adbb
lea esp, [ebp - 4]
pop esi
pop ebp
ret
mov ecx, dword [ebp - 8]
push eax
mov eax, esp
mov dword [eax], ecx
jmp 0x1006ab0a
jmp 0x1006adbb