Function at 0x10045490
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1c
mov eax, dword [ebp + 8]
mov eax, dword [0x100c21f8]
xor eax, ebp
mov dword [ebp - 4], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0xc], 8
mov dword [esp], 0x3e
call fcn.10017cc0
lea eax, [ebp - 0xc]
mov dword [esp], eax
call dword [sym.imp.USER32.dll_GetLastInputInfo]
sub esp, 4
cmp eax, 0
jne 0x100454e3
mov dword [ebp - 0x10], 0
jmp 0x10045863
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 8]
cmp eax, dword [ebp + 8]
jbe 0x1004585c
mov eax, dword [0x100c17a8]
imul eax, dword [0x100c17ac]
sub eax, 0xcd04e06
or eax, 0xeaffebff
mov ecx, 0xf17abaec
xor edx, edx
div ecx
add eax, 0xfa6a5e4e
imul eax, eax, 0x75603868
imul eax, eax, 0xd477141c
imul eax, eax, 0xab29ed44
and eax, 0x6a38aa34
or eax, 0xe02396fb
and eax, 0x4055f22d
and eax, 0x4ae9cb8f
xor eax, 0xbdc8b212
sub eax, 0x47af39ee
xor eax, 0x4f9f5b05
add eax, 0xae7fa72b
xor eax, 0xf0389643
mov ecx, 0x6a0609bb
xor edx, edx
div ecx
sub eax, 0x40938b69
xor eax, 0x467a1872
and eax, 0x271e0ab3
and eax, 0x2e9aa0a7
mov ecx, 0xadad4aef
xor edx, edx
div ecx
and eax, 0xfac82cf9
xor eax, 0x5414731e
or eax, 0x71d5dde6
and eax, 0x24b1701f
mov ecx, 0x95e924f9
xor edx, edx
div ecx
mov ecx, 0x622d95a2
xor edx, edx
div ecx
add eax, 0x42c926fb
xor eax, 0xfc172023
xor eax, 0x904af97e
xor eax, 0xf67d1573
add eax, 0x57f01826
xor eax, 0x6ed6c35
sub eax, 0x61937d39
add eax, 0x18c5ccdf
and eax, 0xf0c94552
imul eax, eax, 0x920c40f5
imul eax, eax, 0xea1eb453
or eax, 0x2de3efc
xor eax, 0x694a61ec
sub eax, 0x5be88ec0
or eax, 0x4de5691c
add eax, 0xf776de50
add eax, 0xb47f480
imul eax, eax, 0x8d2c019
imul eax, eax, 0x1e4e5a6b
mov ecx, 0x8fee6d50
xor edx, edx
div ecx
and eax, 0xf1de0b1a
mov ecx, 0x9fe644bd
xor edx, edx
div ecx
add eax, 0xb8d89e80
mov ecx, 0x23dd82ed
xor edx, edx
div ecx
add eax, 0x82827039
xor eax, 0x88cf8a82
imul eax, eax, 0x66e4a26c
xor eax, 0x1dd77157
imul eax, eax, 0x2774733c
and eax, 0xe3636d6a
imul eax, eax, 0x37f30617
and eax, 0x7576cdba
or eax, 0x3f050b0f
and eax, 0xa149a5e8
sub eax, 0x399de9ce
or eax, 0x5a87aac9
mov ecx, 0x40277756
xor edx, edx
div ecx
sub eax, 0x58b1c30a
or eax, 0x6f1533fe
mov ecx, 0xb4481929
xor edx, edx
div ecx
sub eax, 0x86860113
and eax, 0x4a99de89
and eax, 0xbf638dd0
add eax, 0x8421c2a
cmp eax, 0x64b9c220
jae 0x1004587b
mov eax, dword [0x100c17b0]
or eax, dword [0x100c17b4]
and eax, 0x5f6714fe
add eax, 0x6f0bc139
add eax, 0x948b470c
mov ecx, 0x5176e3f1
xor edx, edx
div ecx
add eax, 0x6db91a7
imul eax, eax, 0x868ab01b
and eax, 0x135ad839
or eax, 0x66cf1173
mov ecx, 0x827e0485
xor edx, edx
div ecx
and eax, 0xf8d5882a
sub eax, 0x1f614166
sub eax, 0xd80912f7
sub eax, 0x48746bf2
add eax, 0xd3975be3
sub eax, 0x974cbda6
add eax, 0x37ed56e7
imul eax, eax, 0xb8d8954e
and eax, 0xf9ab3a99
add eax, 0xead5587b
add eax, 0xc79bf46f
mov ecx, 0x4098b3d0
xor edx, edx
div ecx
mov ecx, 0xa9a1f5ae
xor edx, edx
div ecx
and eax, 0xc12e3007
mov ecx, 0xed1b433
xor edx, edx
div ecx
add eax, 0x335e37bc
mov ecx, 0xfc1a6e52
xor edx, edx
div ecx
imul eax, eax, 0xf20c88b9
sub eax, 0xbd97b527
imul eax, eax, 0x6421a216
add eax, 0xbc2489b5
xor eax, 0xcf4507cf
and eax, 0x96d8b11
sub eax, 0xe4c65791
xor eax, 0x32ad79e0
and eax, 0x4b198e05
imul eax, eax, 0xedd13b34
mov ecx, 0x75baa6da
xor edx, edx
div ecx
xor eax, 0xd8e54f41
xor eax, 0xfc152460
imul eax, eax, 0x88eaa63c
add eax, 0x6bfce851
sub eax, 0xea0994fc
or eax, 0x32e5677a
imul eax, eax, 0xac8602e7
add eax, 0xbad9b0ee
mov ecx, 0xefab1f25
xor edx, edx
div ecx
xor eax, 0x74d43c6f
or eax, 0x34fec185
xor eax, 0xcc0ad4cf
sub eax, 0x1b0ab15c
and eax, 0x722332e9
xor eax, 0x145bb2e2
or eax, 0x9607b739
and eax, 0x9fbab8e6
add eax, 0x5dc51269
mov ecx, 0x1f6ef725
xor edx, edx
div ecx
or eax, 0x9275f97c
add eax, 0x59a8aa65
sub eax, 0xd22a759b
and eax, 0x2782c1b1
or eax, 0xb4feb4a9
and eax, 0xbf0e184d
add eax, 0xe7305916
and eax, 0x4e39c463
mov ecx, 0xe49fa431
xor edx, edx
div ecx
add eax, 0xccb6804e
xor eax, 0x5cace96a
or eax, 0x1a262c0a
or eax, 0x8c014215
add eax, 0x54263b79
add eax, 0x58e687f6
or eax, 0x2671ea4
mov dword [ebp - 0x10], 0
cmp eax, 0x5df9510b
je 0x100456a3
jmp 0x10045863
mov dword [ebp - 0x10], 1
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1006978f
mov eax, dword [ebp - 0x18]
add esp, 0x1c
pop ebp
ret
mov dword [ebp - 0x10], 0
jmp 0x100456a3