Function at 0x10008450
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x18
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x10], eax
mov eax, dword [0x1013aaa4]
xor edx, edx
div dword [0x1013aaa8]
and eax, 0x18fe96b5
imul eax, eax, 0x8c5bd190
xor eax, 0x4b4104f4
mov ecx, 0xaa165e15
xor edx, edx
div ecx
and eax, 0x111f1be4
sub eax, 0x9b493e39
xor eax, 0xa049ded
imul eax, eax, 0xca55dad9
mov ecx, 0x82974122
xor edx, edx
div ecx
xor eax, 0xd97b0e4d
and eax, 0xcc870a8a
or eax, 0xc739e043
and eax, 0xcedfcb51
xor eax, 0xff31a86d
sub eax, 0x4839c30a
imul eax, eax, 0x3e0cea2b
sub eax, 0x4fef3c7f
sub eax, 0xe8efabf6
mov ecx, 0x3894ed99
xor edx, edx
div ecx
and eax, 0x2eb231a
cmp eax, 0x1e2d0f59
jae 0x1000882c
mov eax, dword [0x1013aaac]
xor edx, edx
div dword [0x1013aab0]
xor eax, 0xf5815c6c
add eax, 0x33871f27
sub eax, 0x28983b3a
and eax, 0x63652ecc
imul eax, eax, 0x8432250b
sub eax, 0x50ad8bdc
or eax, 0xd6c18e37
or eax, 0x1281e188
and eax, 0xa39e3da
or eax, 0xef108b6c
and eax, 0xf71874dd
mov ecx, 0xad88a88e
xor edx, edx
div ecx
xor eax, 0xc9f30cdc
or eax, 0x80d7ec52
mov ecx, 0xb87c119c
xor edx, edx
div ecx
add eax, 0x60208cd6
or eax, 0xf5dd3182
imul eax, eax, 0x9176d8fb
or eax, 0x75091054
add eax, 0x30d653d7
cmp eax, 0x6f741783
ja 0x100084f6
mov eax, dword [0x1013aab4]
or eax, dword [0x1013aab8]
add eax, 0x5660b7c5
or eax, 0xd1aac219
imul eax, eax, 0xf06371db
or eax, 0xf5843260
and eax, 0x66688f40
sub eax, 0xd4986256
xor eax, 0xc3c6fc92
and eax, 0x98a266c6
mov ecx, 0x797eb89f
xor edx, edx
div ecx
or eax, 0x4ffe3c4b
sub eax, 0xaeaba6bc
sub eax, 0xd789a251
sub eax, 0x639a5431
or eax, 0xaaca7911
imul eax, eax, 0x13831215
add eax, 0xca1f7dca
or eax, 0x22b5346f
xor eax, 0x5930e858
xor eax, 0x211dd739
imul eax, eax, 0x5be42d07
cmp eax, 0x13f0859c
jae 0x10008755
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0x14]
mov ebx, dword [ebp - 0x18]
xor eax, eax
mov dword [ebp - 0x20], eax
push eax
mov eax, esp
push eax
mov ecx, esp
push eax
mov edx, esp
mov dword [eax], ebx
mov dword [ecx], edi
mov dword [edx], esi
mov eax, dword [eax]
mov ecx, dword [ecx]
mov edx, dword [edx]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSectionEx]
mov ecx, eax
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x1c], ecx
cmp eax, 0x373ee065
je 0x100085fd
mov eax, dword [0x1013aac4]
add eax, dword [str.2PAF]
xor eax, 0x4662a384
xor eax, 0x7c86a310
sub eax, 0xbaea5c00
sub eax, 0x12b81643
add eax, 0x794b296e
or eax, 0xb08b0dc3
xor eax, 0x41e225d3
imul eax, eax, 0xea962046
or eax, 0x4f795190
xor eax, 0xee3e06c0
or eax, 0x28490e54
add eax, 0xa913548f
xor eax, 0x207bae04
or eax, 0xea2009f1
imul eax, eax, 0x32fbd23b
xor eax, 0x6b8ce593
add eax, 0x46593305
mov ecx, 0xa1a02b19
xor edx, edx
div ecx
xor eax, 0x847a241b
imul eax, eax, 0xf52a9310
cmp eax, 0x4c7f6bbb
ja 0x10008831
mov eax, dword [0x1013aacc]
sub eax, dword [0x1013aad0]
add eax, 0x3cfa023
and eax, 0x59108d73
and eax, 0x54f1b9a
imul eax, eax, 0xeb11568e
imul eax, eax, 0x52856ba3
or eax, 0xd9bb8771
or eax, 0xac27dab3
imul eax, eax, 0xdd577299
mov ecx, 0x82672b68
xor edx, edx
div ecx
or eax, 0x5c29fc33
and eax, 0x5a6ea382
or eax, 0x3cb146b2
xor eax, 0xe1848112
sub eax, 0xf5bf025c
and eax, 0x53341ef0
imul eax, eax, 0x66d00939
add eax, 0xa9d23d39
xor eax, 0xcf15d7c0
or eax, 0x3b752e41
sub eax, 0xe7ed2f9d
cmp eax, 0x3902880
je 0x10008831
mov eax, dword [ebp - 0x1c]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [0x1013aad4]
sub eax, dword [0x1013aad8]
or eax, 0x95890309
and eax, 0x3ba9ef20
imul eax, eax, 0x9667ed0b
imul eax, eax, 0x3ca80cc0
mov ecx, 0x640f073b
xor edx, edx
div ecx
xor eax, 0x399c4fe1
mov ecx, 0x5cdd8914
xor edx, edx
div ecx
xor eax, 0xc6bd891e
mov ecx, 0x64d73948
xor edx, edx
div ecx
sub eax, 0xf028d357
or eax, 0x1308087a
sub eax, 0x86051308
imul eax, eax, 0x4666da9
and eax, 0xd1fa751a
imul eax, eax, 0xd39b99ad
sub eax, 0x8be5a88
and eax, 0x13b326bf
add eax, 0x7f40e437
add eax, 0x1cde4cc4
xor eax, 0x847509d4
cmp eax, 0x3a64fb10
jae 0x10008836
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0x14]
mov ebx, dword [ebp - 0x18]
mov eax, 0x9f5497ff
mov dword [ebp - 0x24], eax
push eax
mov eax, esp
push eax
mov ecx, esp
push eax
mov edx, esp
mov dword [eax], ebx
mov dword [ecx], edi
mov dword [edx], esi
mov eax, dword [eax]
mov ecx, dword [ecx]
mov edx, dword [edx]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSectionEx]
mov eax, dword [ebp - 0x24]
cmp eax, 0xd4dceac6
ja 0x100087df
jmp 0x100085fd
jmp 0x100084f6
jmp 0x100086c8
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0x14]
mov ebx, dword [ebp - 0x18]
push eax
mov eax, esp
push eax
mov ecx, esp
push eax
mov edx, esp
mov dword [eax], ebx
mov dword [ecx], edi
mov dword [edx], esi
mov eax, dword [eax]
mov ecx, dword [ecx]
mov edx, dword [edx]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSectionEx]
jmp 0x100087df