Function at 0x100d4bc0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
sub esp, 0x14
mov dword [ebp - 0x10], ecx
mov eax, dword [ebp + 8]
mov dword [ebp - 0xc], eax
mov eax, dword [0x1014ce78]
add eax, dword [0x1014ce7c]
xor eax, 0x387f82f5
sub eax, 0xd19e14bd
and eax, 0x23883fa0
or eax, 0x77e4af0f
xor eax, 0x6382b2c5
sub eax, 0xdd0753a3
sub eax, 0x57de995
mov ecx, 0x725f4452
xor edx, edx
div ecx
or eax, 0xcf8a24d6
and eax, 0x38ea2373
mov ecx, 0x527deedb
xor edx, edx
div ecx
mov ecx, 0x53e48ab1
xor edx, edx
div ecx
add eax, 0x88173b67
or eax, 0x74865f33
sub eax, 0xfd1d67be
mov ecx, 0x23f6cf9e
xor edx, edx
div ecx
imul eax, eax, 0x374d6fcf
add eax, 0x1ed309a9
or eax, 0x7586f994
sub eax, 0xadddfadc
or eax, 0x8b6b0765
xor eax, 0x5f2f3956
and eax, 0xf4790294
and eax, 0xb028643c
xor eax, 0x388264ca
and eax, 0x26ac3c1c
mov ecx, 0xf4a2c633
xor edx, edx
div ecx
add eax, 0x72a46bfe
xor eax, 0x8e37bff
add eax, 0x5fa68786
xor eax, 0x88e980a9
add eax, 0x2b20929
and eax, 0x3c3acfa3
cmp eax, 0xd7c7f8a1
ja 0x100d4f23
mov eax, dword [0x1014ce80]
xor eax, dword [0x1014ce84]
xor eax, 0xa7cc1986
add eax, 0xd5896b04
and eax, 0x3d50a56f
or eax, 0xb55d2b
add eax, 0xa8c2bef7
imul eax, eax, 0x199b82d1
sub eax, 0xcb253a16
sub eax, 0x36c757b1
or eax, 0x74d2cf60
mov ecx, 0x6027cfad
xor edx, edx
div ecx
add eax, 0x423b735e
xor eax, 0xc02161ec
xor eax, 0x8c24838d
add eax, 0x3fa226ef
or eax, 0x2969e16d
imul eax, eax, 0x1704d241
mov ecx, 0x20a6c1cd
xor edx, edx
div ecx
xor eax, 0x6aa84a16
mov ecx, 0xd57b1601
xor edx, edx
div ecx
mov ecx, 0x259b0761
xor edx, edx
div ecx
mov ecx, 0xa247e738
xor edx, edx
div ecx
imul eax, eax, 0x46136e5e
and eax, 0xe1595dbf
add eax, 0x33c86ea7
add eax, 0x231147f4
or eax, 0x92db3015
xor eax, 0x2a3577dd
or eax, 0x802a3b73
mov ecx, 0xb0dd878e
xor edx, edx
div ecx
add eax, 0xe95fab23
mov ecx, 0xa11c2a86
xor edx, edx
div ecx
sub eax, 0x3924ea90
imul eax, eax, 0xf931025d
cmp eax, 0x7eae6804
jb 0x100d503c
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov eax, dword [0x1014ce88]
mov ecx, dword [0x1014ce8c]
and eax, ecx
or eax, 0x5b342810
and eax, 0x5bb52833
imul eax, eax, 0xf49b395f
add eax, 0x9bf60c7
and eax, 0x8882288c
xor eax, 0xd9fa59a6
add eax, 0xb39ee46a
mov ecx, 0xf0346725
mul ecx
shr edx, 0x1f
lea eax, [edx + edx - 0x48370eee]
shr eax, 1
mov ecx, 0x892fefa3
mul ecx
mov eax, edx
shr eax, 0x1c
xor eax, 0x8a000c8e
or eax, 0x75bd2270
mov ecx, 0x85371919
mul ecx
shr edx, 0x1b
imul eax, edx, 0x3d7c25b8
add eax, 0x2139bde2
xor eax, 0x4488fcb7
mov ecx, 0x202ecba1
mul ecx
mov eax, edx
shr eax, 0x1b
xor eax, 0x6de09d8d
add eax, 0xec979c22
xor eax, 0xc2374adf
mov dword [ebp - 0x18], eax
push eax
mov edx, esp
push eax
mov eax, esp
push eax
mov ecx, esp
mov dword [eax], edi
mov dword [ecx], esi
mov ecx, dword [ecx]
mov dword [edx], ecx
mov eax, dword [eax]
xor edx, edx
sub edx, dword [ecx - 4]
add ecx, edx
sub esp, 4
mov dword [esp], eax
call fcn.100d50a0
mov ecx, eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x14], ecx
cmp eax, 0x52537c0e
je 0x100d4d7c
mov eax, dword [0x1014ce90]
sub eax, dword [0x1014ce94]
imul eax, eax, 0x98eef64f
mov ecx, 0x5a4ee1c6
xor edx, edx
div ecx
sub eax, 0x2f8e35e9
xor eax, 0x253b6d86
imul eax, eax, 0xe72145c1
xor eax, 0xcd88b5a3
xor eax, 0x3c3fea52
add eax, 0x1c0974f2
xor eax, 0x7983d2e4
xor eax, 0x36592d5b
and eax, 0x2636b343
sub eax, 0xdb44ad63
and eax, 0x5c0c7a8b
xor eax, 0xb3163d7f
xor eax, 0xf5e26d45
or eax, 0x654f9528
mov ecx, 0x1413182c
xor edx, edx
div ecx
sub eax, 0x15d9932a
imul eax, eax, 0x297d2b7e
sub eax, 0xb28f6b2e
sub eax, 0x3621bfa3
or eax, 0xd4af56bd
and eax, 0x69128681
imul eax, eax, 0xa24face4
add eax, 0x31c2a902
add eax, 0x36ecc37d
add eax, 0x51ceef92
mov ecx, 0x89c765e2
xor edx, edx
div ecx
add eax, 0x4eb73a62
sub eax, 0x6788e9ee
and eax, 0x9dba32d
xor eax, 0x7edc54c9
xor eax, 0xe9bb6960
cmp eax, 0x6f313ed7
jbe 0x100d4ca1
mov eax, dword [ebp - 0x14]
lea esp, [ebp - 8]
pop esi
pop edi
pop ebp
ret 4
mov eax, dword [0x1014ce98]
xor edx, edx
div dword [0x1014ce9c]
sub eax, 0x339ded61
sub eax, 0xa34385eb
add eax, 0x4cde79db
mov ecx, 0x968d368d
xor edx, edx
div ecx
or eax, 0x4d5f434c
and eax, 0xc9c09207
imul eax, eax, 0xaf2c278c
add eax, 0xfe705e0
or eax, 0x2708648a
xor eax, 0x6d24029d
mov ecx, 0xda4063a1
xor edx, edx
div ecx
sub eax, 0xf21e94ea
or eax, 0x408548a8
imul eax, eax, 0x6ca2e51a
xor eax, 0x7a6dfafc
mov ecx, 0xc51a4b1e
xor edx, edx
div ecx
and eax, 0x71a2fd70
add eax, 0xff029b06
imul eax, eax, 0xf156d8a0
and eax, 0xb45781f7
and eax, 0xdb042465
imul eax, eax, 0x44662b4d
and eax, 0xe1436ccf
and eax, 0xcf5ff6f9
mov ecx, 0xea9d262d
xor edx, edx
div ecx
sub eax, 0x6ae95d52
xor eax, 0x858da698
or eax, 0x928ac990
add eax, 0xa573fa2
xor eax, 0xf23fd0f9
and eax, 0x8fb51451
and eax, 0xe37b5802
sub eax, 0xfd457e
cmp eax, 0x175e9c05
jae 0x100d506e
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov eax, 0x8d73ed44
mov dword [ebp - 0x1c], eax
push eax
mov edx, esp
push eax
mov eax, esp
push eax
mov ecx, esp
mov dword [eax], edi
mov dword [ecx], esi
mov ecx, dword [ecx]
mov dword [edx], ecx
mov eax, dword [eax]
mov esi, dword [ecx - 4]
xor edx, edx
sub edx, esi
add ecx, edx
sub esp, 4
mov dword [esp], eax
call fcn.100d50a0
mov eax, dword [ebp - 0x1c]
cmp eax, 0x3e8c30d8
jbe 0x100d506e
jmp 0x100d4ca1
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
push eax
mov edx, esp
push eax
mov eax, esp
push eax
mov ecx, esp
mov dword [eax], edi
mov dword [ecx], esi
mov ecx, dword [ecx]
mov dword [edx], ecx
mov eax, dword [eax]
mov esi, dword [ecx - 4]
xor edx, edx
sub edx, esi
add ecx, edx
sub esp, 4
mov dword [esp], eax
call fcn.100d50a0
jmp 0x100d4d7c
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
push eax
mov edx, esp
push eax
mov eax, esp
push eax
mov ecx, esp
mov dword [eax], edi
mov dword [ecx], esi
mov ecx, dword [ecx]
mov dword [edx], ecx
mov eax, dword [eax]
mov esi, dword [ecx - 4]
xor edx, edx
sub edx, esi
add ecx, edx
sub esp, 4
mov dword [esp], eax
call fcn.100d50a0
jmp 0x100d4ff4