Function at 0x61051310
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
push eax
mov eax, 0x20038
call sym.cygwin1.dll__alloca
mov eax, dword [esp + 0x20038]
mov dword [ebp - 0x20020], edx
mov dword [ebp - 0x20024], ecx
mov esi, eax
mov eax, dword [eax]
xor eax, 0x7b
or eax, dword [esi + 4]
jne 0x6105134f
mov eax, dword [esi + 8]
xor eax, 0x7d
or eax, dword [esi + 0xc]
je 0x6105144c
mov edx, 0x7b
mov eax, esi
call sym.g_strchr_unsigned_long_long__wchar_t_
test eax, eax
mov ecx, eax
je 0x6105145c
lea ebx, [ebp - 0x20018]
jmp 0x61051380
mov eax, dword [esi]
mov edx, dword [esi + 4]
add esi, 8
mov dword [ebx], eax
mov dword [ebx + 4], edx
add ebx, 8
cmp esi, ecx
jne 0x61051370
mov dword [ebx], 0
xor eax, eax
mov dword [ebx + 4], 0
mov edx, dword [ecx + 8]
mov dword [ebp - 0x20030], ebx
lea ebx, [ecx + 8]
mov ecx, dword [ecx + 0xc]
mov dword [ebp - 0x2002c], eax
mov edi, ebx
mov dword [ebp - 0x20028], ebx
mov eax, ecx
or eax, edx
je 0x6105140f
lea esi, [esi]
lea edi, [edi]
mov eax, edx
xor eax, 0x5b
or eax, ecx
jne 0x61051480
mov esi, edi
add edi, 8
mov ecx, dword [edi]
mov ebx, dword [edi + 4]
mov eax, ecx
xor eax, 0x5d
or eax, ebx
mov eax, dword [edi + 4]
setne dl
or eax, dword [edi]
setne al
test al, dl
jne 0x610513cf
mov eax, ebx
or eax, ecx
jne 0x610514c0
lea edi, [esi + 8]
mov ecx, dword [edi + 4]
mov edx, dword [edi]
mov ebx, ecx
or ebx, edx
jne 0x610513c0
mov eax, dword [ebp - 0x2002c]
test eax, eax
jne 0x6105141e
mov edx, dword [edi + 4]
mov eax, dword [edi]
mov ecx, edx
or ecx, eax
jne 0x610514d1
mov ecx, dword [ebp - 0x20024]
lea eax, [ebp - 0x20018]
mov edx, dword [ebp - 0x20020]
call sym.glob0_unsigned_long_long_const__glob_t__unsigned_int_
mov dword [ebp - 0x2001c], eax
mov eax, dword [ebp - 0x2001c]
add esp, 0x2003c
pop ebx
pop esi
pop edi
pop ebp
ret
mov edx, dword [esi + 0x14]
mov eax, dword [esi + 0x10]
mov ecx, edx
or ecx, eax
jne 0x6105134f
mov ecx, dword [ebp - 0x20024]
mov eax, esi
mov edx, dword [ebp - 0x20020]
call sym.glob0_unsigned_long_long_const__glob_t__unsigned_int_
add esp, 0x2003c
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, edx
xor eax, 0x7b
or eax, ecx
jne 0x61051497
inc dword [ebp - 0x2002c]
add edi, 8
jmp 0x610513fa
mov eax, edx
xor eax, 0x7d
or eax, ecx
jne 0x610514c0
mov esi, dword [ebp - 0x2002c]
test esi, esi
je 0x6105140f
dec dword [ebp - 0x2002c]
lea esi, [esi]
lea edi, [edi]
add edi, 8
mov ecx, dword [edi + 4]
mov edx, dword [edi]
mov eax, ecx
or eax, edx
jmp 0x61051403
mov esi, dword [ebp - 0x20028]
mov dword [ebp - 0x20034], esi
jmp 0x6105150f
cmp ecx, 0
ja 0x61051560
cmp edx, 0x5b
ja 0x61051560
mov eax, edx
xor eax, 0x2c
or eax, ecx
je 0x610515a8
mov esi, esi
lea edi, [edi]
add esi, 8
mov dword [ebp - 0x2003c], esi
mov esi, dword [ebp - 0x2003c]
cmp esi, edi
ja 0x6105159b
mov edx, dword [esi]
mov ecx, dword [esi + 4]
mov eax, edx
xor eax, 0x5b
or eax, ecx
jne 0x610514e0
mov dword [ebp - 0x20038], esi
add esi, 8
mov ecx, dword [esi]
mov ebx, dword [esi + 4]
mov eax, ecx
xor eax, 0x5d
or eax, ebx
mov eax, dword [esi + 4]
setne dl
or eax, dword [esi]
setne al
test al, dl
jne 0x6105152b
mov eax, dword [ebp - 0x20038]
add eax, 8
mov dword [ebp - 0x2003c], eax
mov eax, ebx
or eax, ecx
je 0x61051509
jmp 0x61051500
mov eax, edx
xor eax, 0x7b
or eax, ecx
je 0x61051590
mov eax, edx
lea ebx, [esi + 8]
xor eax, 0x7d
mov dword [ebp - 0x2003c], ebx
or eax, ecx
jne 0x61051509
mov ecx, dword [ebp - 0x2002c]
test ecx, ecx
je 0x610515bf
dec dword [ebp - 0x2002c]
jmp 0x61051500
inc dword [ebp - 0x2002c]
jmp 0x61051500
xor ebx, ebx
mov dword [ebp - 0x2001c], ebx
jmp 0x6105143b
mov edx, dword [ebp - 0x2002c]
lea ecx, [esi + 8]
mov dword [ebp - 0x2003c], ecx
test edx, edx
jne 0x61051509
cmp dword [ebp - 0x20034], esi
mov ebx, dword [ebp - 0x20030]
jae 0x610515ed
mov ecx, dword [ebp - 0x20034]
mov eax, dword [ecx]
mov edx, dword [ecx + 4]
add ecx, 8
mov dword [ebx], eax
mov dword [ebx + 4], edx
add ebx, 8
cmp ecx, esi
mov dword [ebp - 0x20034], ecx
jb 0x610515cd
lea eax, [edi + 8]
mov dword [ebp - 0x20034], eax
mov ecx, dword [ebp - 0x20034]
mov edx, dword [ecx + 4]
mov eax, dword [ecx]
add ecx, 8
mov dword [ebp - 0x20034], ecx
mov ecx, edx
mov dword [ebx], eax
mov dword [ebx + 4], edx
add ebx, 8
or ecx, eax
jne 0x610515f6
mov ecx, dword [ebp - 0x20024]
lea eax, [ebp - 0x20018]
add esi, 8
mov edx, dword [ebp - 0x20020]
call sym.globexp1_unsigned_long_long_const__glob_t__unsigned_int_
mov dword [ebp - 0x2001c], eax
mov dword [ebp - 0x2003c], esi
mov dword [ebp - 0x20034], esi
jmp 0x61051509