Function at 0x1006c900
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
mov eax, dword [0x100db8d8]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [0x100db1d0]
xor eax, dword [0x100db1d4]
xor eax, 0xb8eeaa43
xor eax, 0x14fad4c9
xor eax, 0x9ea54263
add eax, 0xf1c24114
imul eax, eax, 0xed25ef63
add eax, 0x95d7a57d
and eax, 0x42c60a87
sub eax, 0xaa9b0182
mov ecx, 0x837fefc7
xor edx, edx
div ecx
sub eax, 0x2ea29d0d
add eax, 0x4e18cc08
imul eax, eax, 0x9305e5b4
add eax, 0x57bb85db
xor eax, 0x9f36f5ad
and eax, 0xe1fc7007
imul eax, eax, 0x18dd3b56
imul eax, eax, 0x86dc3dd6
xor eax, 0x62325092
sub eax, 0xd9ee66ac
or eax, 0x7e60694f
sub eax, 0xdbcf4e4b
or eax, 0xfdffd39b
sub eax, 0x9192d01d
add eax, 0xd3ffd5a2
add eax, 0x47718ab1
xor eax, 0x6ae70f96
sub eax, 0x7cb4fbcb
or eax, 0xb9719deb
sub eax, 0xfea6e196
or eax, 0x8db59128
imul eax, eax, 0x7587c466
add eax, 0x5ea93613
and eax, 0x893f52ac
and eax, 0x76443394
imul eax, eax, 0x44aa95b6
mov ecx, 0x349e1872
xor edx, edx
div ecx
sub eax, 0xf8af5e5b
sub eax, 0x1a761d4a
mov ecx, 0xf2c6ed42
xor edx, edx
div ecx
and eax, 0xe0c4267
add eax, 0x65ffb44a
and eax, 0x33d97494
imul eax, eax, 0xc4cf114e
add eax, 0x216930f2
add eax, 0x2af479eb
xor eax, 0xe09beda7
mov ecx, 0xb91fb8de
xor edx, edx
div ecx
and eax, 0xe2ffae16
xor eax, 0x1eebc8ea
mov ecx, 0xac8dc341
xor edx, edx
div ecx
mov ecx, 0x1bd8577e
xor edx, edx
div ecx
and eax, 0x82ac01b8
mov ecx, 0x68b68f06
xor edx, edx
div ecx
add eax, 0x7d99700f
xor eax, 0x8e328d79
and eax, 0x775a64dc
xor eax, 0xa416ec92
add eax, 0xf25d4123
xor eax, 0xb7793046
imul eax, eax, 0xbc0d4a8a
or eax, 0x94ff61ac
and eax, 0x3a5ecbe4
add eax, 0xcaa18b63
or eax, 0xe929f06b
xor eax, 0xe638e0df
mov ecx, 0x5cac59d3
xor edx, edx
div ecx
or eax, 0xe0ba656a
or eax, 0xa7b74e6
add eax, 0xf69aabef
and eax, 0xa38a0058
or eax, 0x3febb233
add eax, 0xe1b9203b
cmp eax, 0x8012a1e
jbe 0x1006d4e5
mov eax, dword [0x100db1d8]
xor edx, edx
div dword [0x100db1dc]
sub eax, 0x96cbf566
imul eax, eax, 0x8087dc7e
add eax, 0xd071a905
or eax, 0xf5167d2d
or eax, 0xb300d799
imul eax, eax, 0xf04d4ba8
imul eax, eax, 0x65e80486
sub eax, 0xa6df9de
mov ecx, 0xc68eea7c
xor edx, edx
div ecx
add eax, 0x42b69882
and eax, 0xf1bc434f
and eax, 0x13169fa4
add eax, 0xae420644
or eax, 0x9b1ad8f5
and eax, 0x107b5e56
and eax, 0xe6dd4836
imul eax, eax, 0xba9922fd
mov ecx, 0x3819c3c
xor edx, edx
div ecx
sub eax, 0x85caef55
and eax, 0xf773fdb0
and eax, 0xa754a9a5
imul eax, eax, 0x546e05a0
or eax, 0x7914a947
add eax, 0xc6405f06
imul eax, eax, 0x2a151a73
sub eax, 0x39749c98
mov ecx, 0x91565dc6
xor edx, edx
div ecx
xor eax, 0x62266d08
add eax, 0xdeb34fa9
sub eax, 0x5fc85bee
and eax, 0xa820903b
or eax, 0x3aecb734
sub eax, 0x7bcb95df
or eax, 0x2058c2b4
xor eax, 0xc0e3234d
add eax, 0x567dfc80
sub eax, 0x1856c877
mov ecx, 0x90eee7c8
xor edx, edx
div ecx
or eax, 0x5e6578b4
imul eax, eax, 0x6a3cfa02
imul eax, eax, 0xbecaaa3d
sub eax, 0xec07e1e0
and eax, 0xb53d2611
imul eax, eax, 0x84eb92f8
mov ecx, 0xa4153dc4
xor edx, edx
div ecx
mov ecx, 0x6e8245a7
xor edx, edx
div ecx
sub eax, 0x36290aff
mov ecx, 0x5a37468a
xor edx, edx
div ecx
and eax, 0x62cd8e30
and eax, 0xfa01448b
or eax, 0xdfacca09
sub eax, 0x58559f3c
imul eax, eax, 0xe26c7ab7
sub eax, 0x872a4de9
add eax, 0xa712a28c
and eax, 0xcab599b7
and eax, 0xc2dd9815
imul eax, eax, 0xcf796461
xor eax, 0x24c477e6
sub eax, 0xc222e293
add eax, 0x8c631909
or eax, 0xbdfe6f6a
add eax, 0xfd974b5e
add eax, 0x59b688de
imul eax, eax, 0xb317e8e6
and eax, 0xbf82d9c9
and eax, 0x57065429
mov ecx, 0x7d16858b
xor edx, edx
div ecx
sub eax, 0xffaa1ed0
sub eax, 0x9ceef63f
and eax, 0x37dda704
and eax, 0x9680c7f7
cmp dword [0x100dc4bc], 0
sete cl
mov byte [ebp - 5], cl
cmp eax, 0x691ff732
jae 0x1006cab6
mov al, byte [ebp - 5]
test al, 1
jne 0x1006cc7f
jmp 0x1006d045
mov eax, dword [0x100db1e0]
and eax, dword [0x100db1e4]
mov ecx, 0xbd83931d
xor edx, edx
div ecx
imul eax, eax, 0x41213bd4
or eax, 0xc2935f0f
xor eax, 0xb25b82b
add eax, 0x2fdad901
or eax, 0x7f823047
mov ecx, 0xbfcb2871
xor edx, edx
div ecx
xor eax, 0xfbc49272
sub eax, 0xb20a8b21
mov ecx, 0x99f4c910
xor edx, edx
div ecx
or eax, 0x19578ca5
mov ecx, 0x60f1ecb3
xor edx, edx
div ecx
sub eax, 0x4fd41a0
sub eax, 0x1a756c2c
and eax, 0xf1b129be
add eax, 0xf6ce17cc
or eax, 0xe6d4695e
add eax, 0xa0e7cb78
add eax, 0x7c5386d6
add eax, 0xf9c667a2
or eax, 0xd5f8f328
xor eax, 0xb9328be
and eax, 0x88ce5c7e
sub eax, 0x1e08d533
or eax, 0xcd16f609
xor eax, 0x6fed8f75
sub eax, 0x7b7d6c5
and eax, 0x380b4684
and eax, 0x54020198
and eax, 0x3351ef7f
sub eax, 0x244c7567
add eax, 0x1ae3d4b7
xor eax, 0x7f0f9e54
imul eax, eax, 0x88314d0b
xor eax, 0x2d7061a2
xor eax, 0x6a2ab63e
add eax, 0xb308cd42
mov ecx, 0x595b558b
xor edx, edx
div ecx
xor eax, 0x36badf39
or eax, 0x53376051
sub eax, 0xa0430a6
sub eax, 0xa4717109
and eax, 0x6cffb5b2
or eax, 0xb823d4ac
imul eax, eax, 0x8ae77a91
imul eax, eax, 0x4d479a00
or eax, 0x1f5fe9b5
sub eax, 0x9fbe4d0d
xor eax, 0xf6c03880
and eax, 0x38199ed8
sub eax, 0xa693c3e3
imul eax, eax, 0x905964c3
mov ecx, 0xfe56a3b6
xor edx, edx
div ecx
or eax, 0xdedbbd72
imul eax, eax, 0x1ea5b26
xor eax, 0x51401c7c
sub eax, 0x702b1d65
add eax, 0x4e762967
or eax, 0x8b30c4a
mov ecx, 0x509b667
xor edx, edx
div ecx
imul eax, eax, 0xb047cfea
sub eax, 0xeab86d9d
add eax, 0xfbd69d38
sub eax, 0x74f5f904
xor eax, 0xc509266d
and eax, 0x1512a343
or eax, 0x5587c178
xor eax, 0xb2608226
or eax, 0xf769aefe
or eax, 0xd836bf8c
mov ecx, 0x3274f557
xor edx, edx
div ecx
mov ecx, 0x89608ae1
xor edx, edx
div ecx
cmp eax, 0x21d6b06e
je 0x1006d4ef
mov eax, dword [0x100db1e8]
add eax, dword [0x100db1ec]
mov ecx, 0xff991408
xor edx, edx
div ecx
xor eax, 0xd2eef5ff
or eax, 0x136c3b1
mov ecx, 0xa25ee328
xor edx, edx
div ecx
mov ecx, 0xf8743333
xor edx, edx
div ecx
xor eax, 0x30dc88e9
add eax, 0x23e53127
add eax, 0xde12f709
add eax, 0x7f137dc7
and eax, 0xf6cbda7e
add eax, 0xb071f472
imul eax, eax, 0x77842185
mov ecx, 0x742b84de
xor edx, edx
div ecx
add eax, 0xe3c447e4
mov ecx, 0x399f0f92
xor edx, edx
div ecx
xor eax, 0xf85632a5
imul eax, eax, 0x29b674ca
add eax, 0x66d5c7ca
imul eax, eax, 0x74c875ec
or eax, 0x78aa207b
add eax, 0x447f04cf
sub eax, 0x7634b917
imul eax, eax, 0x4424c1d5
imul eax, eax, 0x8db7b48e
mov ecx, 0x93e22732
xor edx, edx
div ecx
add eax, 0x88960446
xor eax, 0x2e25f200
and eax, 0xb6ad5118
and eax, 0x381947b3
sub eax, 0xd14f690
imul eax, eax, 0x4b9e2d5d
sub eax, 0x2f37a13c
sub eax, 0x5ca96420
xor eax, 0x6fc38d6a
and eax, 0x7b26b2d
xor eax, 0xe1faf8b0
or eax, 0xafbf3766
or eax, 0xec0c7eee
or eax, 0x6dc99ab9
imul eax, eax, 0x567445fe
add eax, 0x562e778e
or eax, 0x916e38ff
imul eax, eax, 0x97ba9456
imul eax, eax, 0x79b84f7b
add eax, 0x541a7c07
mov ecx, 0x23accc67
xor edx, edx
div ecx
imul eax, eax, 0xf765c39f
and eax, 0xd4b54349
mov ecx, 0x5d68ec07
xor edx, edx
div ecx
add eax, 0x441a9360
sub eax, 0x93dbb8e6
mov ecx, 0x9dfe1dda
xor edx, edx
div ecx
add eax, 0x54eb9bf1
or eax, 0x9dd905d8
add eax, 0x58912b0c
mov ecx, 0x35bdc75d
xor edx, edx
div ecx
and eax, 0xfee083b4
add eax, 0x429dccfe
mov ecx, 0x8eb0b6bf
xor edx, edx
div ecx
imul eax, eax, 0x17aafd2b
mov ecx, 0x3027875a
xor edx, edx
div ecx
xor eax, 0xa2c8b1c
and eax, 0xdfd44af9
add eax, 0x8ef6c7a4
imul eax, eax, 0x107c01cd
add eax, 0xd32143be
add eax, 0x13e61bdf
xor eax, 0xc7d1e253
mov ecx, 0x9e940411
xor edx, edx
div ecx
xor eax, 0x2863a834
or eax, 0x5163ffe7
and eax, 0xf458e2ef
mov cl, byte [0x100d92bd]
xor cl, 0x9b
mov byte [0x100d92c3], cl
mov cl, byte [0x100d92be]
xor cl, 0xbd
mov byte [0x100d92c4], cl
mov cl, byte [0x100d92bf]
xor cl, 0xbb
mov byte [0x100d92c5], cl
mov cl, byte [0x100d92c0]
xor cl, 0x84
mov byte [0x100d92c6], cl
mov cl, byte [0x100d92c1]
xor cl, 0x24
mov byte [0x100d92c9], cl
mov cl, byte [0x100d92c2]
xor cl, 0x24
mov byte [0x100d92ca], cl
cmp eax, 0xfbcdd3ce
je 0x1006ce28
jmp 0x1006d045
mov dword [0x100dc4bc], 1
push eax
sub esp, 8
mov ecx, esp
mov dword [ebp - 0x10], ecx
sub esp, 0x104
mov eax, esp
mov dword [ebp - 0x14], eax
push eax
mov edx, esp
mov dword [ebp - 0xc], edx
mov edx, dword [0x100d92c3]
mov dword [ecx], edx
mov edx, dword [str..ez_]
mov dword [ecx + 4], edx
mov dl, byte [0x100d92cb]
mov byte [ecx + 8], dl
xor ecx, ecx
sub esp, 0xc
mov dword [esp], 0
mov dword [esp + 4], eax
mov dword [esp + 8], 0x104
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
mov eax, dword [ebp - 0x14]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecA]
mov ecx, dword [ebp - 0x14]
lea eax, [0x100ce48a]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.100a3430
mov ecx, dword [ebp - 0x14]
add esp, 8
mov eax, dword [ebp - 0x10]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.100a3430
sub esp, 4
mov dword [esp], 2
mov dword [esp + 4], 4
mov dword [esp + 8], 6
call fcn.1003af40
add esp, 0xc
mov eax, dword [ebp - 0x10]
xor ecx, ecx
sub esp, 8
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.100564c0
add esp, 8
mov ecx, eax
mov eax, dword [ebp - 0xc]
mov dword [eax], ecx
cmp dword [eax], 0
jne 0x1006d4d7
mov eax, dword [0x100db1f0]
xor edx, edx
div dword [0x100db1f4]
xor eax, 0xec08178d
add eax, 0x704490a8
mov ecx, 0x7d751100
xor edx, edx
div ecx
sub eax, 0x64bf52c5
or eax, 0xfb09c660
add eax, 0x7ce9db14
xor eax, 0x70c43f3
xor eax, 0x5fc55883
add eax, 0xd30cc093
xor eax, 0x2aa5db32
xor eax, 0x8c31fba6
and eax, 0xea5eb6cb
imul eax, eax, 0x61069c02
and eax, 0x8fe0572e
imul eax, eax, 0x5363f0c1
and eax, 0x10566bb1
add eax, 0xff600b54
sub eax, 0x1cd137e1
sub eax, 0x3a7e180
sub eax, 0x6481de58
add eax, 0xed266fc3
mov ecx, 0xce2eaf0d
xor edx, edx
div ecx
xor eax, 0x46d9e375
xor eax, 0xe9149b41
xor eax, 0xa1a5f3b9
sub eax, 0x599ac32d
or eax, 0xda354de5
xor eax, 0x44b26196
imul eax, eax, 0x2df76261
and eax, 0x9f1a34af
and eax, 0x88de9f1c
add eax, 0xa1ae4b5e
and eax, 0xb132fb0c
and eax, 0xa8d69ef0
mov ecx, 0xaa1e7a5c
xor edx, edx
div ecx
mov ecx, 0xdb610912
xor edx, edx
div ecx
xor eax, 0x491d3071
mov ecx, 0x89d357af
xor edx, edx
div ecx
and eax, 0x1a3f0b7c
mov ecx, 0x48c80f04
xor edx, edx
div ecx
add eax, 0x2e7d21fd
or eax, 0xfbfcf93b
imul eax, eax, 0xc07b143
xor eax, 0xf3681cdd
add eax, 0x3f8f25ca
or eax, 0x1fd6c2fd
and eax, 0x19775497
and eax, 0x3d9fa85e
mov ecx, 0xe355a967
xor edx, edx
div ecx
add eax, 0x9891110c
or eax, 0x7715e86b
or eax, 0xd789a367
sub eax, 0x976f9986
or eax, 0x9567c3ce
and eax, 0x856ba0d6
add eax, 0xdcc272cd
imul eax, eax, 0xadb4a491
xor eax, 0xaa110a57
imul eax, eax, 0x77a2d992
mov ecx, 0x284b94ec
xor edx, edx
div ecx
imul eax, eax, 0x7930ae13
mov ecx, 0x7c3a975c
xor edx, edx
div ecx
sub eax, 0x66d8866b
imul eax, eax, 0x1cb396e4
xor eax, 0x50929155
or eax, 0xfcb36043
sub eax, 0x7c7643de
and eax, 0x3b311534
xor eax, 0x298f2af6
xor eax, 0x9e88e60c
imul eax, eax, 0xd1193800
sub eax, 0x632ea070
cmp eax, 0xc88f75a
je 0x1006d53c
mov eax, dword [0x100db1f8]
imul eax, dword [0x100db1fc]
and eax, 0x3b33e86b
imul eax, eax, 0xa5e40486
mov ecx, 0xde7ca09a
xor edx, edx
div ecx
or eax, 0x5dd94ffe
and eax, 0xedd5aac0
imul eax, eax, 0x7a8f70e9
xor eax, 0xcc5e8873
mov ecx, 0xd11aa232
xor edx, edx
div ecx
mov ecx, 0x761e949d
xor edx, edx
div ecx
xor eax, 0xc01d4795
sub eax, 0x917c6733
mov ecx, 0xe25d1567
xor edx, edx
div ecx
mov ecx, 0x60590314
xor edx, edx
div ecx
or eax, 0x4f4af472
xor eax, 0x8d5e6a84
xor eax, 0x80180b7f
or eax, 0xc6ef2146
imul eax, eax, 0xe525b375
imul eax, eax, 0x41f9cd33
sub eax, 0xfe36b543
sub eax, 0x2801ffa4
or eax, 0x794e8443
add eax, 0xac460278
xor eax, 0x85613d29
imul eax, eax, 0x6fee2c36
mov ecx, 0x9b9b6de1
xor edx, edx
div ecx
and eax, 0x6c1923e5
and eax, 0xc527563d
sub eax, 0x2749a88b
sub eax, 0xb32cc87a
mov ecx, 0x301b91bb
xor edx, edx
div ecx
mov ecx, 0xfe0ade59
xor edx, edx
div ecx
and eax, 0x90bd838b
or eax, 0xe3fce3b9
xor eax, 0xd5b61620
sub eax, 0x6fa6cea3
or eax, 0x6af2021b
and eax, 0x99f04464
and eax, 0x1d809edb
mov ecx, 0x50a3086f
xor edx, edx
div ecx
sub eax, 0x324964ce
imul eax, eax, 0xa163e92e
imul eax, eax, 0xbe7ede48
mov ecx, 0x8df7c4d8
xor edx, edx
div ecx
mov ecx, 0x8077da6d
xor edx, edx
div ecx
and eax, 0xe53f1e72
add eax, 0x4997dba3
or eax, 0x91cd9f20
mov ecx, 0x54493841
xor edx, edx
div ecx
and eax, 0xe776618f
sub eax, 0x9cd694a9
xor eax, 0x1f12d538
mov ecx, 0x4047cbb9
xor edx, edx
div ecx
and eax, 0xc9dffae3
add eax, 0x3e5b5657
xor eax, 0xcee42680
or eax, 0xa09be7b6
imul eax, eax, 0x313133
imul eax, eax, 0x339a049d
and eax, 0x20765572
add eax, 0xc8b928e9
xor eax, 0xb37c1c83
mov ecx, 0x48fe1b70
xor edx, edx
div ecx
or eax, 0xb795550d
sub eax, 0x6534b2bc
or eax, 0x82b23520
or eax, 0x96c0b4fa
mov ecx, 0xf3137279
xor edx, edx
div ecx
mov ecx, eax
mov eax, dword [ebp - 0x14]
sub ecx, 0x4017efcd
sub ecx, 0x16572c7f
sub ecx, 0x7209b5d1
sub ecx, 0x5857fa54
mov dword [ebp - 0x18], ecx
sub esp, 8
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.1006c4f0
add esp, 4
mov dword [esp], 1
call fcn.100637d0
add esp, 4
mov eax, dword [ebp - 0x18]
cmp eax, 0x42011a59
je 0x1006d2da
jmp 0x1006d4d7
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1008271f
mov esp, ebp
pop ebp
ret
mov eax, dword [0x100dc4bc]
jmp 0x1006cab6
mov al, byte [0x100d92bd]
xor al, 0x9b
mov byte [0x100d92c3], al
mov al, byte [0x100d92be]
xor al, 0xbd
mov byte [0x100d92c4], al
mov al, byte [0x100d92bf]
xor al, 0xbb
mov byte [0x100d92c5], al
mov al, byte [0x100d92c0]
xor al, 0x84
mov byte [0x100d92c6], al
mov al, byte [0x100d92c1]
xor al, 0x24
mov byte [0x100d92c9], al
mov al, byte [0x100d92c2]
xor al, 0x24
mov byte [0x100d92ca], al
jmp 0x1006ce28
mov eax, dword [ebp - 0x14]
sub esp, 8
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.1006c4f0
add esp, 4
mov dword [esp], 1
call fcn.100637d0
add esp, 4
jmp 0x1006d2da