Function at 0x100e2300
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x38
mov dword [ebp - 0x18], ecx
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x10], eax
mov eax, dword [0x1014d6d8]
or eax, dword [0x1014d6dc]
or eax, 0x6e0f18c0
mov ecx, 0xfa6eed85
xor edx, edx
div ecx
add eax, 0x63a8930a
imul eax, eax, 0xee202497
add eax, 0x3f7ef500
sub eax, 0x38a8cd44
sub eax, 0x7a8451dc
mov ecx, 0xf008dc13
xor edx, edx
div ecx
sub eax, 0x2a6b369a
or eax, 0x5027a095
mov ecx, 0x98a426f5
xor edx, edx
div ecx
or eax, 0x1c668259
and eax, 0xcfac931d
or eax, 0xcae76bc2
or eax, 0xa42bc198
mov ecx, 0x7009acc
xor edx, edx
div ecx
and eax, 0x7423315a
sub eax, 0x1a6a963c
imul eax, eax, 0x10829c0
mov ecx, 0xa5609486
xor edx, edx
div ecx
imul eax, eax, 0xb2b7d0b0
and eax, 0x31c489fd
sub eax, 0xd30ea043
mov ecx, 0x1a36d676
xor edx, edx
div ecx
xor eax, 0x1e83ba8f
xor eax, 0xb3b9c2bf
and eax, 0x5e97868c
mov ecx, 0x309fb502
xor edx, edx
div ecx
imul eax, eax, 0x396357ae
or eax, 0xe86e1e15
add eax, 0xcbcb43c8
xor eax, 0x29780dfe
xor eax, 0xcadd3983
cmp eax, 0x9e2bcb2
jbe 0x100e28db
mov eax, dword [0x1014d6e0]
sub eax, dword [0x1014d6e4]
add eax, 0x74e3ddb9
mov ecx, 0x2897fbb9
xor edx, edx
div ecx
add eax, 0xd35f849
and eax, 0x7c70ea8b
add eax, 0x99be9704
add eax, 0x836e92e1
or eax, 0xe38602be
mov ecx, 0xf9ae8ba5
xor edx, edx
div ecx
sub eax, 0x8ce29e0d
xor eax, 0x3e06a59e
add eax, 0xff78a4b4
imul eax, eax, 0x2ab12f50
add eax, 0x198825dc
and eax, 0x48bc4607
or eax, 0xadc69526
or eax, 0x92e5882a
sub eax, 0x4eace484
xor eax, 0xfbfe35a9
sub eax, 0xe072ab3f
xor eax, 0xb16549ff
sub eax, 0x204fa283
imul eax, eax, 0xf1c18fbc
sub eax, 0x990fca6b
xor eax, 0x2ae58d35
mov ecx, 0x3776e152
xor edx, edx
div ecx
and eax, 0xc0e60de8
sub eax, 0x524874bb
and eax, 0x7c6a8ad2
or eax, 0xd6a565d5
xor eax, 0x6a3da7a0
imul eax, eax, 0x460e7a
sub eax, 0xf5142528
imul eax, eax, 0x64436a56
cmp eax, 0x4ca20d5b
jbe 0x100e23f3
mov eax, dword [0x1014d6e8]
add eax, dword [0x1014d6ec]
or eax, 0x282ef508
or eax, 0xba4b6a50
or eax, 0xb9807276
mov ecx, 0xb9f26555
xor edx, edx
div ecx
imul eax, eax, 0xf264af92
add eax, 0x415c2487
xor eax, 0xf273e3b1
xor eax, 0xb4644c3f
or eax, 0x5fd7c9ba
add eax, 0x78350e23
xor eax, 0xe7456a9e
imul eax, eax, 0x73e564c2
add eax, 0x32925e26
imul eax, eax, 0x7cb1237
xor eax, 0x5c2f729c
imul eax, eax, 0xadec499b
imul eax, eax, 0xe5e6030a
xor eax, 0x5e859c6b
add eax, 0x11fa116c
add eax, 0x3d719cf5
and eax, 0x2dab8542
imul eax, eax, 0x387ade67
xor eax, 0x4459bfa9
xor eax, 0xb2a06bd1
sub eax, 0x1de70885
and eax, 0xad399ad7
add eax, 0xdd84a848
add eax, 0x41f9ef7
and eax, 0x5044fe66
add eax, 0xcf718fd
and eax, 0xb9902fd8
and eax, 0x24157ae1
mov ecx, 0xdc7a2812
xor edx, edx
div ecx
cmp eax, 0xe3421cfa
ja 0x100e27a0
mov edi, dword [ebp - 0x10]
mov edx, dword [ebp - 0x14]
mov eax, 0xe40000
mov dword [ebp - 0x1c], eax
push eax
mov ebx, esp
mov dword [ebp - 0x20], ebx
push eax
mov esi, esp
mov dword [ebp - 0x28], esi
push eax
mov ecx, esp
push eax
mov eax, esp
mov dword [ebx], edx
mov edx, dword [ebp - 0x18]
mov dword [esi], edi
mov dword [ecx], edx
mov ecx, dword [ecx]
mov dword [ebp - 0x24], ecx
sub esp, 4
mov al, byte [eax]
mov byte [esp], al
call fcn.1008f020
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov edx, dword [edx]
sub esp, 8
mov dword [esp], edx
mov dword [esp + 4], eax
call fcn.100e2fa0
mov eax, dword [ebp - 0x1c]
cmp eax, 0x43746154
ja 0x100e2587
mov eax, dword [0x1014d6f8]
imul eax, dword [0x1014d6fc]
or eax, 0xbd47ea82
add eax, 0xec0a6cd7
imul eax, eax, 0xfe4af2f7
or eax, 0x172f79b8
and eax, 0xe440f92e
or eax, 0xaa6a521
and eax, 0xec6bac9d
and eax, 0x582e62ce
imul eax, eax, 0xee528345
or eax, 0xac7530e1
add eax, 0xf5af0ca4
imul eax, eax, 0x45fc41c5
sub eax, 0x7c01db47
add eax, 0xd2da785d
add eax, 0x89a4ba7c
mov ecx, 0x8d5977f3
xor edx, edx
div ecx
xor eax, 0x6b9866e1
or eax, 0x6db56580
xor eax, 0x23ee989d
imul eax, eax, 0x8639de5f
add eax, 0x8cca0abb
add eax, 0xd5ef492c
sub eax, 0xcd573f6a
xor eax, 0xf8fedc65
or eax, 0xaadf8114
and eax, 0x256ec5bd
sub eax, 0x88d4a14
mov ecx, 0xa15e65af
xor edx, edx
div ecx
mov ecx, 0xdd94e74f
xor edx, edx
div ecx
imul eax, eax, 0x6acc5d43
or eax, 0x2c55d506
or eax, 0xd375a88e
xor eax, 0xeedb4944
cmp eax, 0x58ce0471
ja 0x100e28e0
mov eax, dword [0x1014d700]
add eax, dword [0x1014d704]
mov ecx, 0xbfda2ae
xor edx, edx
div ecx
add eax, 0xaf66d7bb
xor eax, 0x62a3b9f0
xor eax, 0x8465f215
add eax, 0x41bf29fd
or eax, 0x1b716d69
mov ecx, 0xcd16de10
xor edx, edx
div ecx
imul eax, eax, 0x4e3b44d9
sub eax, 0x3df1dc1c
or eax, 0xe8b9d60b
or eax, 0xc34c5bee
and eax, 0xadcaa342
imul eax, eax, 0x3b945c4b
mov ecx, 0x44392a03
xor edx, edx
div ecx
sub eax, 0x2ff1f111
or eax, 0x30f93c22
mov ecx, 0x8cf031dc
xor edx, edx
div ecx
mov ecx, 0xa70ad362
xor edx, edx
div ecx
imul eax, eax, 0x19f17be9
or eax, 0x7a9fafed
xor eax, 0x7b3f6893
or eax, 0x7cb82bf
and eax, 0x7f79e74a
add eax, 0x63a8d0ca
xor eax, 0x31bd0a29
mov ecx, 0x318aeaa3
xor edx, edx
div ecx
and eax, 0x9fb3f785
or eax, 0x3bbbb54d
add eax, 0xdcfa0dd7
sub eax, 0x2cc1c1ae
mov ecx, 0x18274a40
xor edx, edx
div ecx
or eax, 0x4ca8088
and eax, 0x509ec2a3
cmp eax, 0xa4d8b47
je 0x100e26b9
mov eax, dword [ebp - 0x24]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 8
mov eax, dword [str._tk_yMb]
or eax, dword [0x1014d70c]
mov ecx, 0x98b1a378
xor edx, edx
div ecx
sub eax, 0x6680f9c5
imul eax, eax, 0xc4730d0b
xor eax, 0xd4dcfe5f
add eax, 0xe596f37a
or eax, 0xd95c54a6
imul eax, eax, 0x7167c34f
xor eax, 0x55483b07
and eax, 0x7551775
imul eax, eax, 0x26aba277
xor eax, 0x12566c03
add eax, 0xb4fb90ce
add eax, 0x2d8494e4
sub eax, 0xc91bdc8d
add eax, 0xb9efe80e
xor eax, 0x69376f78
xor eax, 0x320fbf3f
imul eax, eax, 0x7cd13393
sub eax, 0xbf32834d
and eax, 0x2f212c24
add eax, 0xa2cc1f20
imul eax, eax, 0x7fd23956
mov ecx, 0xdb5eb7e5
xor edx, edx
div ecx
mov ecx, 0xb032c35f
xor edx, edx
div ecx
sub eax, 0xdabaa4fc
add eax, 0xcb9d8804
mov ecx, 0x50812414
xor edx, edx
div ecx
imul eax, eax, 0xb0adbd37
add eax, 0xb395c4b0
add eax, 0x8af37b60
xor eax, 0x9d79a52e
add eax, 0xd211cb78
sub eax, 0xbb8dfbfb
cmp eax, 0xdd39ec2a
je 0x100e28e5
mov edi, dword [ebp - 0x10]
mov edx, dword [ebp - 0x14]
mov eax, 0x6c6e7a7c
mov dword [ebp - 0x2c], eax
push eax
mov ebx, esp
mov dword [ebp - 0x30], ebx
push eax
mov esi, esp
mov dword [ebp - 0x38], esi
push eax
mov ecx, esp
push eax
mov eax, esp
mov dword [ebx], edx
mov edx, dword [ebp - 0x18]
mov dword [esi], edi
mov dword [ecx], edx
mov ecx, dword [ecx]
mov dword [ebp - 0x34], ecx
sub esp, 4
mov al, byte [eax]
mov byte [esp], al
call fcn.1008f020
mov edx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x30]
mov eax, dword [eax]
mov edx, dword [edx]
sub esp, 8
mov dword [esp], edx
mov dword [esp + 4], eax
call fcn.100e2fa0
mov eax, dword [ebp - 0x2c]
cmp eax, 0x9c057262
je 0x100e28e5
jmp 0x100e2587
jmp 0x100e23f3
jmp 0x100e26b9
mov edi, dword [ebp - 0x10]
mov edx, dword [ebp - 0x14]
push eax
mov ebx, esp
mov dword [ebp - 0x3c], ebx
push eax
mov esi, esp
mov dword [ebp - 0x44], esi
push eax
mov ecx, esp
push eax
mov eax, esp
mov dword [ebx], edx
mov edx, dword [ebp - 0x18]
mov dword [esi], edi
mov dword [ecx], edx
mov ecx, dword [ecx]
mov dword [ebp - 0x40], ecx
sub esp, 4
mov al, byte [eax]
mov byte [esp], al
call fcn.1008f020
mov edx, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x3c]
mov eax, dword [eax]
mov edx, dword [edx]
sub esp, 8
mov dword [esp], edx
mov dword [esp + 4], eax
call fcn.100e2fa0
jmp 0x100e2871