Function at 0x10073a40
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x1c
mov dword [ebp - 0x14], ecx
mov eax, dword [ebp + 8]
mov dword [ebp - 0x10], eax
mov eax, dword [0x100d5460]
or eax, dword [0x100d5464]
add eax, 0xc499bd3b
add eax, 0xb6d9ed6
and eax, 0xc12637d7
imul eax, eax, 0xe2260072
sub eax, 0x8bc54320
sub eax, 0xc349edc9
or eax, 0xec11ef53
or eax, 0x9d2fc12f
or eax, 0xbb8f4e60
and eax, 0x712b3e75
mov ecx, 0x5a27b83b
xor edx, edx
div ecx
and eax, 0x7689d13b
or eax, 0x40adeb9e
and eax, 0x203dd824
sub eax, 0x2734d4c2
imul eax, eax, 0xe9bcaab7
sub eax, 0xafa63487
xor eax, 0xa25ffefb
or eax, 0x4398a55b
imul eax, eax, 0x6ee4e290
add eax, 0xbfdfb8b
xor eax, 0x88384ec1
xor eax, 0xc79629db
mov ecx, 0x1b3c9534
xor edx, edx
div ecx
add eax, 0x5abf1066
mov ecx, 0x780046cd
xor edx, edx
div ecx
mov ecx, 0xa3d084e9
xor edx, edx
div ecx
xor eax, 0x89569f14
add eax, 0x9fe1d53c
xor eax, 0xd66412ae
mov ecx, 0xfeed6a61
xor edx, edx
div ecx
sub eax, 0x664d70b0
add eax, 0x8fad60dc
or eax, 0x92cb9d0a
or eax, 0x94fe3467
imul eax, eax, 0x9c612289
xor eax, 0xe6b6189b
imul eax, eax, 0x93d826ea
mov ecx, 0xc0ea5d51
xor edx, edx
div ecx
imul eax, eax, 0x5aaab70b
add eax, 0x5c733cb3
mov ecx, 0x13d6f4f4
xor edx, edx
div ecx
sub eax, 0xa9c19e8e
or eax, 0xe78c8739
xor eax, 0x139bf1f0
add eax, 0x7e009d92
and eax, 0xdfc43347
add eax, 0x6686fa71
imul eax, eax, 0x89fc2eff
or eax, 0x479850ae
mov ecx, 0x7cc027ee
xor edx, edx
div ecx
xor eax, 0x332175d6
sub eax, 0xa04f60ef
mov ecx, 0x577d140c
xor edx, edx
div ecx
or eax, 0xc9accff7
add eax, 0x5a6a24dd
sub eax, 0xc11527bd
imul eax, eax, 0x44ed2b0c
and eax, 0x94613c5e
mov ecx, 0x67a469e1
xor edx, edx
div ecx
sub eax, 0x93f193df
or eax, 0xaf3994ab
sub eax, 0xabf4cb90
sub eax, 0xb205cea1
or eax, 0xb4cbbd10
mov ecx, 0x17b2e25e
xor edx, edx
div ecx
and eax, 0x88a84fe
imul eax, eax, 0x1b2fd8b7
add eax, 0xea64f4e8
or eax, 0x24594eb3
sub eax, 0x343bad8e
mov ecx, 0x43fe39e
xor edx, edx
div ecx
cmp eax, 0xc9cede85
je 0x10074005
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov eax, 0x6fb4c5c1
push eax
mov ecx, esp
mov dword [ebp - 0x24], ecx
push eax
mov edx, esp
push eax
mov ebx, esp
mov dword [ebp - 0x20], ebx
mov dword [ecx], edi
mov dword [edx], esi
mov edx, dword [edx]
mov dword [ebp - 0x1c], edx
cmp dword [ecx], 0
setne cl
mov byte [ebp - 0x15], cl
cmp eax, 0x84730fa5
je 0x10074005
mov al, byte [ebp - 0x15]
test al, 1
jne 0x10073c50
jmp 0x10073ffb
mov eax, dword [0x100d5470]
imul eax, dword [0x100d5474]
or eax, 0x43129c44
add eax, 0xeab60c63
mov ecx, 0xdccbbf45
xor edx, edx
div ecx
add eax, 0x27cb3903
sub eax, 0xb3819fcd
mov ecx, 0x394a20c6
xor edx, edx
div ecx
or eax, 0xaeec6ff6
sub eax, 0xb611391a
mov ecx, 0xf531a35f
xor edx, edx
div ecx
mov ecx, 0x95932e9d
xor edx, edx
div ecx
imul eax, eax, 0xf1d6af40
imul eax, eax, 0x12b6ff78
imul eax, eax, 0x8158bd52
or eax, 0x951915c2
or eax, 0xe47144c4
and eax, 0xb99f23de
and eax, 0x9c72d107
xor eax, 0x2550e4ea
imul eax, eax, 0xe025975f
and eax, 0xe8a19202
mov ecx, 0x5c6a192b
xor edx, edx
div ecx
and eax, 0xfd8a49b3
xor eax, 0x687d85
and eax, 0x6f220fee
mov ecx, 0x16396a43
xor edx, edx
div ecx
mov ecx, 0x9ece0442
xor edx, edx
div ecx
or eax, 0x3c551dd6
xor eax, 0xe59278ea
and eax, 0x7d951c12
imul eax, eax, 0x5969a921
or eax, 0xbd1147ba
imul eax, eax, 0x9bcbc315
and eax, 0xcfaec025
sub eax, 0x1efeec78
or eax, 0xf3451491
sub eax, 0x9f6b0890
and eax, 0x43605686
add eax, 0xa6c664e3
add eax, 0xdafd41cc
xor eax, 0x3be3ae11
add eax, 0xf377401
imul eax, eax, 0xf757f3ab
sub eax, 0xbe1adc75
and eax, 0x82097ef9
mov ecx, 0x32240602
xor edx, edx
div ecx
mov ecx, 0xcacefc38
xor edx, edx
div ecx
sub eax, 0x26694879
xor eax, 0xae0193e7
xor eax, 0xb06dea57
xor eax, 0xc223d3d0
or eax, 0xa5302213
or eax, 0xf592866a
add eax, 0xc656f5ca
or eax, 0x490b190
and eax, 0xb38d34da
sub eax, 0x3cffef26
add eax, 0x85deae7b
imul eax, eax, 0x14376c12
mov ecx, 0x6b9be86
xor edx, edx
div ecx
and eax, 0x376c119
mov ecx, 0x4f3eb696
xor edx, edx
div ecx
or eax, 0x39874a0a
mov ecx, 0xf68fad8c
xor edx, edx
div ecx
add eax, 0x54d376c2
sub eax, 0xf316026a
imul eax, eax, 0xda99673d
imul eax, eax, 0x936f1e3a
xor eax, 0x1a5fc88
and eax, 0x790726b0
or eax, 0xc24f8ab6
mov ecx, 0x63065a51
xor edx, edx
div ecx
and eax, 0x2837cda8
cmp eax, 0xb101d138
jae 0x1007401a
mov ecx, dword [ebp - 0x1c]
mov eax, dword [0x100d5478]
imul eax, dword [0x100d547c]
imul eax, eax, 0xc31d43d3
mov esi, 0x968ae5ef
xor edx, edx
div esi
sub eax, 0xfa2d06bb
mov esi, 0xa0d8468e
xor edx, edx
div esi
add eax, 0x9269fc15
sub eax, 0xdf9bb9d2
add eax, 0x837b0fa8
xor eax, 0x9a7419f5
xor eax, 0x7f6dd83c
imul eax, eax, 0xdb6121bb
xor eax, 0x594d67a3
mov esi, 0xada82127
xor edx, edx
div esi
and eax, 0x5c44da68
imul eax, eax, 0x5d2b669c
mov esi, 0xb468c340
xor edx, edx
div esi
and eax, 0x93b9e45a
or eax, 0x3ad47b0
and eax, 0xbb4b373d
or eax, 0x8b1caf88
or eax, 0x3c6b1ce1
add eax, 0xda68eb0
xor eax, 0x8490e8dc
or eax, 0x12903839
xor eax, 0xb1c37b7e
xor eax, 0xb3b150ff
imul eax, eax, 0x3a574953
imul eax, eax, 0xada99704
mov esi, 0x53e352e7
xor edx, edx
div esi
sub eax, 0xa7c7c96c
add eax, 0x75da1036
sub eax, 0x4ac23371
and eax, 0x8c7834fb
and eax, 0x6de6853b
add eax, 0xfea0b5d
and eax, 0x64ff1467
xor eax, 0xe98a2524
xor eax, 0xe3734c02
or eax, 0x741e2f1e
add eax, 0xf6eb7674
and eax, 0xd020e170
and eax, 0x24fb50c8
add eax, 0xac98919b
sub eax, 0x897c4728
xor eax, 0xd07bdde8
add eax, 0xa23da24c
xor eax, 0x774b9bda
and eax, 0x680a39da
mov esi, 0x7a645bd2
xor edx, edx
div esi
and eax, 0x13f6c2dd
and eax, 0xc557e7a7
or eax, 0x4f5b26a6
imul eax, eax, 0xbed7f82d
or eax, 0x4117c490
xor eax, 0xd24efbea
imul eax, eax, 0x26c26404
xor eax, 0x1bac8990
xor eax, 0x67e5236
imul eax, eax, 0xd095298d
mov esi, 0xfe1bf6d9
xor edx, edx
div esi
sub eax, 0x294ba19d
sub eax, 0x5a2d2681
add eax, 0x55aa8ed1
or eax, 0xd3ebdf43
mov esi, 0xf5e0d371
xor edx, edx
div esi
mov esi, 0xc6a3f291
xor edx, edx
div esi
or eax, 0xc8bbf945
xor eax, 0xbb6450d0
and eax, 0x57b69f64
mov esi, 0x26c8c3bc
xor edx, edx
div esi
mov esi, 0x61c2212a
xor edx, edx
div esi
mov edx, eax
mov eax, dword [ebp - 0x24]
xor edx, 0xa69ea5c0
sub edx, 0x303cfadb
mov dword [ebp - 0x28], edx
mov eax, dword [eax]
mov ecx, dword [ecx + 4]
xor edx, edx
sub esp, 0xc
mov dword [esp], ecx
mov dword [esp + 4], 0
mov dword [esp + 8], eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov ecx, dword [ebp - 0x20]
mov edx, eax
mov eax, dword [ebp - 0x28]
mov dword [ecx], edx
cmp eax, 0x3e2f9567
jbe 0x10073e0d
jmp 0x10073ffb
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 4
mov ecx, dword [ebp - 0x14]
mov esi, dword [ebp - 0x10]
push eax
mov edx, esp
push eax
mov eax, esp
mov dword [edx], esi
mov dword [eax], ecx
jmp 0x10073c09
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x24]
mov eax, dword [eax]
mov ecx, dword [ecx + 4]
xor edx, edx
sub esp, 0xc
mov dword [esp], ecx
mov dword [esp + 4], 0
mov dword [esp + 8], eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov ecx, eax
mov eax, dword [ebp - 0x20]
mov dword [eax], ecx
jmp 0x10073e0d