Function at 0x101265e0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
sub esp, 0xc
mov dword [ebp - 0x10], ecx
mov eax, dword [ebp + 8]
mov dword [ebp - 0xc], eax
mov eax, dword [0x101835ac]
add eax, dword [0x101835b0]
sub eax, 0x3fdd313e
imul eax, eax, 0x9dd53d8d
mov ecx, 0x69234501
xor edx, edx
div ecx
and eax, 0xc976e749
imul eax, eax, 0xbdf4085d
or eax, 0xb829c603
imul eax, eax, 0x6bb91963
add eax, 0xbd6ec3e
and eax, 0x3f3f573e
imul eax, eax, 0x35e5f31d
imul eax, eax, 0x6245965e
xor eax, 0x62a98f1d
and eax, 0x2f8d8d89
mov ecx, 0xc067a2d1
xor edx, edx
div ecx
or eax, 0x8c565601
mov ecx, 0xa170acc3
xor edx, edx
div ecx
xor eax, 0x1d2765d6
imul eax, eax, 0xe83b3c5b
or eax, 0xed268163
mov ecx, 0xf14e9851
xor edx, edx
div ecx
add eax, 0x113737d9
sub eax, 0x72551792
or eax, 0xd41ea117
sub eax, 0x9e399a0f
add eax, 0xd8644bc5
and eax, 0xdf2c985e
and eax, 0x3b5ae719
or eax, 0xcae31f69
and eax, 0xfec3af9a
mov ecx, 0xae85384c
xor edx, edx
div ecx
imul eax, eax, 0x67f488f7
and eax, 0x3ea5ca93
or eax, 0x5fd707e0
or eax, 0x7ff2fd73
add eax, 0x317f9a35
xor eax, 0xf06a74ef
imul eax, eax, 0x20b95517
imul eax, eax, 0x6d0503a7
cmp eax, 0xc4ea82a3
ja 0x10126acc
mov eax, dword [0x101835b4]
sub eax, dword [0x101835b8]
add eax, 0xfe33b96e
add eax, 0xf76757ff
and eax, 0x74f47f73
mov ecx, 0x167ae2b7
xor edx, edx
div ecx
and eax, 0x5747704c
xor eax, 0x3bc8a510
xor eax, 0xef14032f
xor eax, 0x3203d82
or eax, 0xb92a6ef2
sub eax, 0x6b156917
add eax, 0x7bd6835f
or eax, 0x3162beac
or eax, 0x733e1ae4
add eax, 0xccb4b312
and eax, 0xd613b183
mov ecx, 0x2c8e594f
xor edx, edx
div ecx
sub eax, 0x6cc3a4c1
add eax, 0x68c54de9
mov ecx, 0x64642e81
xor edx, edx
div ecx
or eax, 0x87e985b7
or eax, 0x5fc345f4
imul eax, eax, 0x605968b8
imul eax, eax, 0xbe8ebfe3
imul eax, eax, 0x6c5a8f4c
and eax, 0x58520655
and eax, 0x651a7fc5
imul eax, eax, 0x1f6b24f0
add eax, 0x127b9b57
imul eax, eax, 0x572fa0d5
or eax, 0xf760bc62
or eax, 0x4fd11906
and eax, 0x94a1a6de
and eax, 0x42495af
or eax, 0xacbd3e3d
add eax, 0xec6bffc1
imul eax, eax, 0x8d1c1caa
xor eax, 0xc3f28e0d
imul eax, eax, 0x63aa1800
cmp eax, 0x25369e46
jbe 0x10126bf2
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
xor eax, eax
push eax
mov edx, esp
push eax
mov ecx, esp
mov dword [edx], edi
mov dword [ecx], esi
mov ecx, dword [ecx]
mov dword [ebp - 0x14], ecx
mov edx, dword [edx]
movsd xmm0, qword [edx]
movsd qword [ecx], xmm0
cmp eax, 0x2736f782
ja 0x101267c9
mov eax, dword [0x101835c4]
xor eax, dword [0x101835c8]
imul eax, eax, 0xd7ec7327
imul eax, eax, 0x41812da7
mov ecx, 0xa014fcac
xor edx, edx
div ecx
xor eax, 0xb4445e76
xor eax, 0xdcc4a4fd
xor eax, 0x82452c8d
xor eax, 0xd7a8a4cd
add eax, 0xa7dd6ebe
imul eax, eax, 0x7bf5653f
xor eax, 0xcbc7e647
and eax, 0xa8d85c90
add eax, 0x6467ef7
sub eax, 0x4f28896
mov ecx, 0xf91b519e
xor edx, edx
div ecx
sub eax, 0x444948ed
or eax, 0xef71401a
add eax, 0x9d663efb
xor eax, 0xa8cb479
xor eax, 0xc2f17015
and eax, 0x4c928d45
mov ecx, 0xd96a6d37
xor edx, edx
div ecx
mov ecx, 0xa113e961
xor edx, edx
div ecx
xor eax, 0x865cf69f
and eax, 0xf7406a11
or eax, 0x98ed5e0a
or eax, 0x6b012664
xor eax, 0x6e1b5dec
or eax, 0xa94c03c3
mov ecx, 0xcae37c36
xor edx, edx
div ecx
xor eax, 0xab32a28d
or eax, 0x81acb188
or eax, 0x5949ade8
or eax, 0xdb882966
or eax, 0x300ed4a3
add eax, 0x1d3d6eb1
xor eax, 0xd2d9367e
xor eax, 0x33f6db0b
mov ecx, 0xa0739a70
xor edx, edx
div ecx
cmp eax, 0xd2f51b73
ja 0x10126acc
mov eax, dword [0x101835cc]
sub eax, dword [0x101835d0]
add eax, 0x7bd79d65
imul eax, eax, 0xdfbb92e7
or eax, 0x9bb52fd6
xor eax, 0x756256de
imul eax, eax, 0xebe19031
sub eax, 0x2b5e3635
and eax, 0x878ec478
or eax, 0x5c4e9735
sub eax, 0xb0742440
and eax, 0xf0b2762b
imul eax, eax, 0xaa18d245
and eax, 0x4f736066
or eax, 0xf06ae9e8
mov ecx, 0xdf31d238
xor edx, edx
div ecx
or eax, 0x1ab6b07a
and eax, 0x4c7d9736
add eax, 0xb7364893
or eax, 0x29d5404c
add eax, 0x8f6258a6
mov ecx, 0xb178ca40
xor edx, edx
div ecx
or eax, 0x867050e
mov ecx, 0x2cdc8d2a
xor edx, edx
div ecx
add eax, 0x1696e4ec
imul eax, eax, 0x76b80257
mov ecx, 0x5a889d92
xor edx, edx
div ecx
add eax, 0xde7eb88d
mov ecx, 0x26c8da73
xor edx, edx
div ecx
add eax, 0x49aa1423
add eax, 0x816782fe
or eax, 0x5ceeb9d8
sub eax, 0xcaed0490
sub eax, 0x770bf0e7
and eax, 0xa0ca4975
xor eax, 0x4940c83f
or eax, 0x84a60312
and eax, 0xe9d3d6a3
add eax, 0x678344f0
xor eax, 0x22f5a0a3
cmp eax, 0x6283e42f
je 0x10126c13
mov eax, dword [0x101835d4]
xor edx, edx
div dword [0x101835d8]
and eax, 0x43a69586
and eax, 0x2a3cebeb
or eax, 0xb6adeb29
add eax, 0x6db2f8d
add eax, 0x3eab309f
imul eax, eax, 0xf3b81134
mov ecx, 0x20892ad4
xor edx, edx
div ecx
and eax, 0x56f20e1c
imul eax, eax, 0x1293821
add eax, 0xcc957948
imul eax, eax, 0xcf8deec5
imul eax, eax, 0x5a7a58da
or eax, 0xabf4470f
mov ecx, 0x87cb78e9
xor edx, edx
div ecx
xor eax, 0x3a071904
mov ecx, 0x8df89004
xor edx, edx
div ecx
imul eax, eax, 0xe9833bac
imul eax, eax, 0xd047cc73
imul eax, eax, 0xa285e5b1
mov ecx, 0xad47d94f
xor edx, edx
div ecx
or eax, 0x7ae53cb1
or eax, 0xce61acac
or eax, 0x9f9963dc
xor eax, 0x73ed7d28
imul eax, eax, 0xb4b4d72c
xor eax, 0x9bda9e18
imul eax, eax, 0xa74c26a0
and eax, 0xea3282d
imul eax, eax, 0x47764ff9
add eax, 0xd2de3da6
xor eax, 0xabdbdb
and eax, 0xa50af46
add eax, 0x2b73577e
add eax, 0xcbab459e
and eax, 0x342ab198
sub eax, 0xb4bce581
and eax, 0xc4971423
or eax, 0x4abeec52
cmp eax, 0x8b3514d9
ja 0x101269d0
mov eax, dword [ebp - 0x14]
lea esp, [ebp - 8]
pop esi
pop edi
pop ebp
ret 4
mov eax, dword [0x101835dc]
or eax, dword [0x101835e0]
and eax, 0x1d46a60c
xor eax, 0x2e01e8bf
mov ecx, 0x53c13040
xor edx, edx
div ecx
and eax, 0x559919a9
mov ecx, 0xcc89b7df
xor edx, edx
div ecx
sub eax, 0xc0b8c050
mov ecx, 0x76cc9c51
xor edx, edx
div ecx
xor eax, 0x419d017e
sub eax, 0xe88f146b
sub eax, 0x218ab687
add eax, 0x640cf883
imul eax, eax, 0x40e383e3
and eax, 0x3155e3fe
and eax, 0x42be8ead
add eax, 0x82ec455
and eax, 0xe3c63cfa
imul eax, eax, 0x79ca8b64
imul eax, eax, 0x8d7ad72c
mov ecx, 0x84389dda
xor edx, edx
div ecx
xor eax, 0xdcf12a9e
mov ecx, 0xa07d8109
xor edx, edx
div ecx
xor eax, 0xe425c581
or eax, 0x328db899
or eax, 0x64ab577
add eax, 0x50491f83
imul eax, eax, 0x9a705d58
xor eax, 0xfce0cc95
xor eax, 0xdc43bfaf
mov ecx, 0x2a1be07
xor edx, edx
div ecx
and eax, 0x3d18bb15
imul eax, eax, 0xfe4c4710
xor eax, 0xc99eeec5
or eax, 0x95e38b0
and eax, 0xb061f81
xor eax, 0xd5fa25fa
sub eax, 0x5ca65f4
sub eax, 0x21fe69ba
mov ecx, 0x5b0aa96c
xor edx, edx
div ecx
cmp eax, 0x32acb9b8
jae 0x10126c18
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov eax, 0x65c67437
push eax
mov edx, esp
push eax
mov ecx, esp
mov dword [edx], edi
mov dword [ecx], esi
mov ecx, dword [ecx]
mov edx, dword [edx]
movsd xmm0, qword [edx]
movsd qword [ecx], xmm0
cmp eax, 0xd7cf458c
ja 0x10126bc1
jmp 0x101266e2
mov edx, dword [ebp - 0x10]
mov esi, dword [ebp - 0xc]
push eax
mov ecx, esp
push eax
mov eax, esp
mov dword [ecx], esi
mov dword [eax], edx
mov eax, dword [eax]
mov ecx, dword [ecx]
movsd xmm0, qword [ecx]
movsd qword [eax], xmm0
jmp 0x101267c9
jmp 0x101269d0
mov edx, dword [ebp - 0x10]
mov esi, dword [ebp - 0xc]
push eax
mov ecx, esp
push eax
mov eax, esp
mov dword [ecx], esi
mov dword [eax], edx
mov eax, dword [eax]
mov ecx, dword [ecx]
movsd xmm0, qword [ecx]
movsd qword [eax], xmm0
jmp 0x10126bc1