Function at 0x100d32d0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
sub esp, 0x28
mov dword [ebp - 0x10], ecx
mov eax, dword [ebp + 8]
mov dword [ebp - 0xc], eax
mov eax, dword [0x1014cd88]
or eax, dword [0x1014cd8c]
sub eax, 0xf6ed54c2
add eax, 0xd274508f
xor eax, 0x4fe47348
xor eax, 0x9534713b
mov ecx, 0x51ce61c8
xor edx, edx
div ecx
sub eax, 0x9960ed10
sub eax, 0x37316e28
and eax, 0xc217bc59
sub eax, 0xfaef027
and eax, 0xa1e7e516
add eax, 0xe8ac3317
mov ecx, 0xa3675a10
xor edx, edx
div ecx
imul eax, eax, 0x957acc49
or eax, 0xc4b431f5
xor eax, 0x9bc8700b
add eax, 0x709f699e
or eax, 0x6969d951
sub eax, 0xc5807de6
imul eax, eax, 0xbad4e50c
or eax, 0x68196973
xor eax, 0xf9533337
or eax, 0x60708cb9
and eax, 0x5b307b04
or eax, 0x1594fb4
and eax, 0xa0c0a4d0
or eax, 0x2d350350
sub eax, 0xc320003f
or eax, 0xadf5dc1
add eax, 0x86cadc89
sub eax, 0x3eae6d5
or eax, 0x760ac14b
xor eax, 0x4fe32326
imul eax, eax, 0x5bca027f
cmp eax, 0xbaa334a6
je 0x100d3918
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov eax, 0x72523208
mov dword [ebp - 0x18], eax
push eax
mov edx, esp
mov dword [ebp - 0x24], edx
push eax
mov eax, esp
push eax
mov ecx, esp
mov dword [eax], edi
mov dword [ecx], esi
mov ecx, dword [ecx]
mov dword [ebp - 0x20], ecx
mov dword [edx], ecx
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
call fcn.10041db0
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
cmp ecx, 0
sete cl
mov byte [ebp - 0x11], cl
cmp eax, 0x8f9de95f
ja 0x100d33a7
mov eax, dword [str._Y_aY]
sub eax, dword [0x1014cd9c]
sub eax, 0x41dd8d
add eax, 0x955554ad
mov ecx, 0x452bff3c
xor edx, edx
div ecx
imul eax, eax, 0x71f7c9e7
add eax, 0x65a1a63b
xor eax, 0x92f9041d
or eax, 0xfde60739
and eax, 0x9b7c4a0d
and eax, 0x1c7a7881
mov ecx, 0x156057d7
xor edx, edx
div ecx
or eax, 0x662b119a
xor eax, 0xebffd5d1
and eax, 0x4548145e
imul eax, eax, 0x81ee756d
imul eax, eax, 0xee2ff1d9
add eax, 0x53e2e137
mov ecx, 0xb99020f2
xor edx, edx
div ecx
or eax, 0x21995b97
sub eax, 0x595bc0ee
xor eax, 0x88c5f067
sub eax, 0x6ab6fd95
or eax, 0x71ae71f1
mov ecx, 0x243b1060
xor edx, edx
div ecx
sub eax, 0x966004ed
imul eax, eax, 0xe85415cb
or eax, 0xed880a55
add eax, 0xe08d39d8
sub eax, 0x2620b050
add eax, 0x28fabee7
or eax, 0x864d4515
xor eax, 0xe7cc6814
mov ecx, 0xcc1097a0
xor edx, edx
div ecx
sub eax, 0xe9b5534f
cmp eax, 0xee966d88
je 0x100d3a27
mov eax, dword [0x1014cda0]
imul eax, dword [0x1014cda4]
xor eax, 0xaae10700
sub eax, 0x6d8e9136
and eax, 0xbf2ae333
add eax, 0x445ebce6
xor eax, 0xc402b705
and eax, 0xc40ab691
sub eax, 0xfd335761
and eax, 0x81a414b5
or eax, 0x94d8425f
mov ecx, 0x3a01d6f5
xor edx, edx
div ecx
sub eax, 0x9845424e
or eax, 0xa62802ea
add eax, 0x1b472492
and eax, 0xcd022bf5
sub eax, 0x120cabd
xor eax, 0x29e68e3d
or eax, 0x96ceea02
imul eax, eax, 0xd9f88173
or eax, 0x1f8f9d00
and eax, 0xd5e8ad26
xor eax, 0x4625bd0e
mov ecx, 0x3037e6eb
xor edx, edx
div ecx
xor eax, 0x6bf72c84
xor eax, 0x337b3ad3
sub eax, 0xa7339bae
sub eax, 0x1f7cbde5
add eax, 0xb08a7dd7
imul eax, eax, 0xdadc965a
imul eax, eax, 0x71d17f3f
or eax, 0x48990f2f
and eax, 0x6caae20f
imul eax, eax, 0x57440e85
imul eax, eax, 0x8354dacf
cmp eax, 0x31306da7
je 0x100d3a27
mov al, byte [ebp - 0x11]
test al, 1
jne 0x100d3763
jmp 0x100d359c
mov eax, dword [0x1014cda8]
and eax, dword [0x1014cdac]
imul eax, eax, 0x22a779b5
sub eax, 0xa85896bd
sub eax, 0x12ea33d4
xor eax, 0xc47476d8
or eax, 0x460a3162
add eax, 0x8a75982e
mov ecx, 0x145b86bb
xor edx, edx
div ecx
imul eax, eax, 0xed0dff18
add eax, 0x9c1872f
mov ecx, 0x5144b279
xor edx, edx
div ecx
mov ecx, 0x57321e32
xor edx, edx
div ecx
sub eax, 0x57d68f71
xor eax, 0x70a84f69
or eax, 0x2253e5a4
sub eax, 0xbeefdc65
or eax, 0xef1a386
xor eax, 0x4c924712
mov ecx, 0xd90c0340
xor edx, edx
div ecx
xor eax, 0xf22995be
and eax, 0xf4719fc
add eax, 0x8caa0aed
imul eax, eax, 0xd4b2fb3b
xor eax, 0xc06a35e5
mov ecx, 0x6e88d71a
xor edx, edx
div ecx
or eax, 0x26fef903
sub eax, 0xc50bc796
sub eax, 0x72afb42a
imul eax, eax, 0x9b85580
add eax, 0x6abebe04
and eax, 0x2b271f2a
and eax, 0x4fda2038
or eax, 0x365303f8
or eax, 0x3800270b
cmp eax, 0x4b860d58
je 0x100d3a2c
mov eax, dword [0x1014cdb0]
xor edx, edx
div dword [0x1014cdb4]
imul eax, eax, 0x86649f15
and eax, 0xb0b7665
xor eax, 0x983a8146
or eax, 0xc7abf4af
xor eax, 0x5939c4e3
or eax, 0x55b60de6
add eax, 0x8cd6de61
add eax, 0xad991560
mov ecx, 0xbf3cc47c
xor edx, edx
div ecx
add eax, 0x874494e6
xor eax, 0x6ccf5dbd
imul eax, eax, 0x3ac57893
or eax, 0xae8cb9f6
add eax, 0x5d8ba86
or eax, 0x4f19b6bd
and eax, 0x30162b6c
imul eax, eax, 0xb791cfbb
xor eax, 0xa3da4ab4
mov ecx, 0x2d9a0949
xor edx, edx
div ecx
mov ecx, eax
mov eax, dword [ebp - 0x20]
add ecx, 0x3f72842b
add ecx, 0x712054b5
and ecx, 0x64e0c8bb
xor ecx, 0x176b992a
xor ecx, 0x626d33bc
and ecx, 0x22b60d11
xor ecx, 0xc364ab11
sub ecx, 0xd3d3ed8f
or ecx, 0x86c8c541
xor ecx, 0xc9d82fa1
add ecx, 0x53e3d72
add ecx, 0xe91b13ed
add ecx, 0xf9b8f387
and ecx, 0xee6ba844
mov dword [ebp - 0x28], ecx
sub esp, 4
mov dword [esp], eax
call fcn.1011cf8c
mov eax, dword [ebp - 0x28]
add esp, 4
cmp eax, 0xc7165e9c
ja 0x100d366f
jmp 0x100d3763
mov eax, dword [0x1014cdb8]
add eax, dword [0x1014cdbc]
add eax, 0x5de3b089
xor eax, 0x7203b72a
xor eax, 0xf1eed219
or eax, 0x2c28c864
xor eax, 0x7886386b
or eax, 0xee7b408
xor eax, 0xb069c6ca
sub eax, 0xcc4fabff
and eax, 0x2a11460a
and eax, 0x1417c638
sub eax, 0x3d59685d
imul eax, eax, 0x471ec739
xor eax, 0x23ac96ea
sub eax, 0x926aa32b
and eax, 0xbdac2a0c
mov ecx, 0x4a23ffd2
xor edx, edx
div ecx
xor eax, 0x83c5c8ef
and eax, 0x1f540259
xor eax, 0x13974aa
and eax, 0xf9489716
imul eax, eax, 0xc9aa5fa2
imul eax, eax, 0xcc6b479e
mov ecx, 0x798f33be
xor edx, edx
div ecx
and eax, 0xa2fcdf19
and eax, 0xdda67733
mov ecx, 0x78d7e4f9
xor edx, edx
div ecx
and eax, 0x158a1f0
mov ecx, 0xd66a845b
xor edx, edx
div ecx
and eax, 0x9ad05cc2
xor eax, 0xf2ac7ad5
add eax, 0xdb45c4d4
xor eax, 0x499fd42a
sub eax, 0xaac05e30
cmp eax, 0xdfc28d59
jae 0x100d3a42
mov ecx, dword [ebp - 0x24]
mov eax, dword [0x1014cdc0]
sub eax, dword [0x1014cdc4]
or eax, 0xf3807af3
or eax, 0xb5f1b318
and eax, 0xde0aa648
or eax, 0x92294749
imul eax, eax, 0xdbc4354c
add eax, 0x89498ffc
mov esi, 0x5c5f4d75
xor edx, edx
div esi
add eax, 0xedb9a7c5
add eax, 0x17c6013d
and eax, 0x65b8791a
or eax, 0xa1e6d519
mov esi, 0xb6377bd8
xor edx, edx
div esi
xor eax, 0xefff5295
imul eax, eax, 0x3a05a805
mov esi, 0xda1fda11
xor edx, edx
div esi
or eax, 0xe1ea3b64
imul eax, eax, 0xfc6face6
imul eax, eax, 0x4a41bacc
and eax, 0x65a98dff
xor eax, 0xf07ce191
mov esi, 0x1ac1804
xor edx, edx
div esi
sub eax, 0x1972a67c
mov esi, 0x76781716
xor edx, edx
div esi
add eax, 0x556b7ac9
or eax, 0x775e15b1
sub eax, 0xb2c7ad6e
or eax, 0x11eadbbf
add eax, 0x7448a8e1
add eax, 0x38787117
or eax, 0x7d8f72e3
xor eax, 0xad9f1d5d
add eax, 0x517376e6
or eax, 0x28e9a6ec
mov ecx, dword [ecx]
mov dword [ebp - 0x2c], ecx
cmp eax, 0x7a8be982
jbe 0x100d3a42
mov eax, dword [ebp - 0x2c]
lea esp, [ebp - 8]
pop esi
pop edi
pop ebp
ret 4
mov eax, dword [0x1014cdc8]
sub eax, dword [0x1014cdcc]
or eax, 0xfb4c9505
sub eax, 0xa2e68b88
or eax, 0x520da3e7
add eax, 0x57808668
mov ecx, 0x6a660ee
xor edx, edx
div ecx
or eax, 0x676698c4
xor eax, 0x6c8738ab
imul eax, eax, 0xef3b4453
add eax, 0xd099ae20
add eax, 0x93666288
or eax, 0x8b365f90
xor eax, 0xaaa573b6
imul eax, eax, 0xe82aba24
sub eax, 0xad233ebc
add eax, 0x50cfd01a
mov ecx, 0x38187fb0
xor edx, edx
div ecx
xor eax, 0x9b278c0d
xor eax, 0x7aca7c32
and eax, 0x1cd6eff4
sub eax, 0xe6c2a6b5
or eax, 0x3babf360
or eax, 0x112988f0
imul eax, eax, 0xbb8b5e1
mov ecx, 0xbf2b89c5
xor edx, edx
div ecx
add eax, 0xd92af2eb
mov ecx, 0xaf2967ca
xor edx, edx
div ecx
add eax, 0xf8c358bd
mov ecx, 0xa0bacf67
xor edx, edx
div ecx
imul eax, eax, 0x48edd945
mov ecx, 0x14209b10
xor edx, edx
div ecx
imul eax, eax, 0x9cf71642
xor eax, 0xe79c6c75
add eax, 0xd7ecb744
cmp eax, 0x3f806fe1
ja 0x100d3a47
mov edx, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov eax, 0xefeff2fb
mov dword [ebp - 0x30], eax
push eax
mov eax, esp
push eax
mov esi, esp
push eax
mov ecx, esp
mov dword [esi], edi
mov dword [ecx], edx
mov ecx, dword [ecx]
mov dword [eax], ecx
call fcn.10041db0
mov eax, dword [ebp - 0x30]
cmp eax, 0xc848bb5c
jb 0x100d39f0
jmp 0x100d33a7
jmp 0x100d34c3
mov eax, dword [ebp - 0x20]
sub esp, 4
mov dword [esp], eax
call fcn.1011cf8c
add esp, 4
jmp 0x100d366f
jmp 0x100d3831
mov edx, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
push eax
mov eax, esp
push eax
mov esi, esp
push eax
mov ecx, esp
mov dword [esi], edi
mov dword [ecx], edx
mov ecx, dword [ecx]
mov dword [eax], ecx
call fcn.10041db0
jmp 0x100d39f0