Function at 0x10010490
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x28
mov ecx, dword [0x1003e9e4]
xor eax, eax
push ebx
push esi
push edi
mov esi, str.313_3A3E3a3k3q3u3
mov dword [ebp - 0x10], edx
lea edi, [ebp - 0x28]
lea ebx, [ecx + 0x6b35119f]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
cmp byte [ebp - 0x28], 0x57
mov esi, dword [0x1003eb24]
jne 0x100104f1
mov dl, 0x57
test dl, dl
je 0x100104de
cmp byte [ebp + eax - 0x28], 0
je 0x100104de
mov dl, byte [eax + 0x10036955]
inc eax
cmp dl, byte [ebp + eax - 0x28]
je 0x100104c6
cmp dword [ebp + 8], eax
jae 0x100104f1
imul edi, esi, 0x945e36c7
mov dword [0x1003ea48], edi
jmp 0x100104f7
mov edi, dword [0x1003ea48]
xor eax, eax
xor ecx, 0x6fd19a41
inc eax
cmp byte [eax + str.HeapFreeW], 0
jne 0x100104f9
cmp eax, 0x473
jne 0x1001051e
mov esi, ebx
or esi, 0x5357b6aa
mov dword [0x1003eb24], esi
lea edx, [ecx - 0x49cf3626]
xor eax, eax
mov dword [ebp - 8], edx
add ebx, 0x6cb4934c
mov edx, dword [ebp - 0x10]
cmp byte [edx], al
je 0x10010550
lea edx, [edi + 0x29f14335]
mov dword [ebp - 8], edx
mov edx, dword [ebp - 0x10]
inc eax
cmp byte [eax + edx], 0
jne 0x10010542
cmp eax, 0x9c
je 0x10010556
lea ebx, [ecx - 0x2600846d]
xor eax, eax
lea edx, [edi + 0x20d6cac8]
mov ecx, eax
mov dword [0x1003e9e4], edx
inc ecx
cmp word [ecx*2 + str.fuettertdasnetz], ax
jne 0x10010566
mov eax, dword [ebp + 8]
cmp eax, ecx
jae 0x1001059c
lea esi, [ebx + 0x3709864d]
mov dword [0x1003eb24], esi
cmp eax, 0x2ef
jne 0x10010597
add edx, 0x1ac96ae3
mov dword [0x1003e9e4], edx
inc eax
cmp eax, ecx
jb 0x10010584
mov ecx, dword [ebp + 0xc]
mov ebx, edx
xor ebx, 0x9d9ca393
xor eax, eax
mov dword [ebp - 0x10], ebx
mov dword [0x1003eac4], ebx
mov cl, byte [ecx]
mov byte [ebp - 1], cl
test cl, cl
je 0x100105ea
mov ecx, dword [ebp - 8]
mov edx, ecx
mov ebx, dword [ebp + 0xc]
and edx, 0xf46fa7df
mov dword [0x1003e9e4], edx
inc eax
cmp byte [eax + ebx], 0
jne 0x100105cf
mov ebx, dword [ebp - 0x10]
cmp eax, 0x356
jne 0x100105ea
mov edi, ecx
xor edi, 0x5e67884b
jmp 0x100105f0
add edi, 0x8fc9fe56
xor eax, eax
mov dword [0x1003ea84], edi
mov dword [ebp - 0xc], eax
mov eax, dword [ebp + 8]
movzx eax, word [eax]
mov ecx, eax
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp - 8]
test ax, ax
je 0x1001065b
mov ebx, dword [ebp + 8]
imul eax, edx, 0x803b17cd
xor ecx, ecx
mov dword [0x1003ea48], eax
mov eax, dword [ebp - 0xc]
inc eax
cmp word [ebx + eax*2], cx
jne 0x10010621
mov ebx, dword [ebp - 0x10]
mov ecx, dword [ebp - 8]
mov dword [ebp - 0xc], eax
mov eax, dword [ebp + 8]
cmp eax, dword [ebp - 0xc]
jae 0x1001065b
cmp eax, 0x585
jne 0x10010646
imul ecx, esi, 0xeb134daf
add ebx, 0x34cd1c18
inc eax
mov dword [0x1003eac4], ebx
cmp eax, dword [ebp - 0xc]
jb 0x10010639
mov dword [ebp - 0x10], ebx
xor ecx, 0x4ceafbdd
xor eax, eax
mov dword [0x1003e9f8], ecx
mov ecx, eax
cmp byte [ebp - 1], al
je 0x100106b3
mov eax, dword [ebp + 0xc]
mov edx, edi
and edx, 0xa18a4cc1
mov dword [0x1003e9e4], edx
inc ecx
cmp byte [ecx + eax], 0
jne 0x10010681
mov eax, dword [ebp + 8]
cmp eax, ecx
jae 0x100106b3
cmp eax, 0x26f1
jne 0x100106a2
or edx, 0x86ea2960
mov dword [0x1003eb24], edx
inc eax
lea edx, [ebx + 0x7adb4e9]
cmp eax, ecx
jb 0x1001068f
mov dword [0x1003e9e4], edx
xor ecx, ecx
lea edi, [ebp - 0x28]
mov eax, ecx
mov esi, str.astronomy
push 5
pop ecx
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0x14]
cmp cx, word [ebp - 0x28]
jne 0x100106f5
mov ebx, dword [ebp + 8]
xor edi, edi
movzx esi, cx
mov ecx, edi
test si, si
je 0x100106f2
cmp word [ebp + ecx - 0x28], di
je 0x100106f2
inc eax
lea ecx, [eax + eax]
movzx esi, word [ecx + ebx]
cmp si, word [ebp + ecx - 0x28]
je 0x100106d7
mov ebx, dword [ebp - 0x10]
mov ecx, dword [ebp + 8]
movzx ecx, byte [ecx + eax*2]
movzx eax, byte [ebp + eax*2 - 0x28]
sub ecx, eax
cmp ecx, 0x194c
jbe 0x10010719
xor edx, 0x96f27379
mov dword [0x1003eb24], edx
jmp 0x10010724
lea eax, [ebx - 0x5f22b8c6]
mov dword [0x1003ea48], eax
pop edi
pop esi
pop ebx
leave
ret