Function at 0x4173c0
Capabilities:
Encode data using xor

Disassembly:
push edi
push esi
push ebp
sub esp, 0x40
mov ecx, dword [esp + 0x50]
mov ebp, dword [esp + 0x54]
mov esi, 0x4e5e2c
and esi, 0xff
mov eax, esi
shl eax, 8
or esi, eax
mov edx, esi
shl edx, 0x10
or esi, edx
mov dword [esp], esi
mov esi, dword [ebp + 0x10]
xor edx, edx
add esi, 1
movzx eax, byte [esi - 1]
add edx, 1
xor byte [ecx], al
add ecx, 1
cmp edx, 0x10
jb 0x4173ef
add ecx, 0xfffffff0
mov edx, 0x48e7ec
call fcn.0041be04
mov dword [0x48e7a8], eax
call fcn.0040876c
mov dword [esp + 0x30], eax
call fcn.0040876c
mov dword [esp + 0x34], eax
call fcn.0040876c
mov dword [esp + 0x38], eax
call fcn.0040876c
mov dword [esp + 0x3c], eax
push dword [ebp + 8]
push eax
call fcn.004087c4
push 0x4e5e30
push dword [esp + 0x44]
call fcn.004087c4
push 0x48e7ec
push dword [esp + 0x48]
call fcn.004087c4
push dword [esp + 0x54]
push dword [esp + 0x54]
push dword [esp + 0x54]
push dword [esp + 0x54]
call fcn.00408204
lea eax, [esp + 0x29]
push 0x20
push eax
push dword [esp + 0x60]
call fcn.004087ac
push 0x48e788
call fcn.0041b55c
add esp, 0x38
push dword [0x48e7a8]
lea edx, [esp + 4]
mov ecx, 0x48e798
call fcn.0041b4c8
lea eax, [esp + 0x30]
push eax
call fcn.00408728
lea eax, [esp + 0x38]
push eax
call fcn.00408728
lea eax, [esp + 0x40]
push eax
call fcn.00408728
lea eax, [esp + 0x48]
push eax
call fcn.00408728
add esp, 0x10
movzx eax, byte [0x42b760]
test eax, eax
je 0x4174f1
movzx eax, byte [0x48e798]
test eax, eax
jne 0x4174f1
mov eax, 0xff
add esp, 0x40
pop ebp
pop esi
pop edi
ret
movzx eax, byte [0x42b761]
test eax, eax
je 0x41753d
mov esi, 0x48e799
mov edi, 0x48e789
mov ecx, 1
xor eax, eax
test ecx, ecx
je 0x417522
mov al, byte [esi]
sub al, byte [edi]
jne 0x417522
add esi, 1
add edi, 1
sub ecx, 1
jne 0x417511
seta al
setb cl
sub al, cl
movsx eax, al
test eax, eax
je 0x41753d
mov eax, 9
add esp, 0x40
pop ebp
pop esi
pop edi
ret
movzx eax, byte [0x42b762]
test eax, eax
je 0x417589
mov esi, 0x48e79a
mov edi, 0x48e78a
mov ecx, 2
xor eax, eax
test ecx, ecx
je 0x41756e
mov al, byte [esi]
sub al, byte [edi]
jne 0x41756e
add esi, 1
add edi, 1
sub ecx, 1
jne 0x41755d
seta al
setb cl
sub al, cl
movsx eax, al
test eax, eax
je 0x417589
mov eax, 9
add esp, 0x40
pop ebp
pop esi
pop edi
ret
movzx eax, byte [0x42b763]
test eax, eax
je 0x4175d5
mov esi, 0x48e79c
mov edi, 0x48e78c
mov ecx, 1
xor eax, eax
test ecx, ecx
je 0x4175ba
mov al, byte [esi]
sub al, byte [edi]
jne 0x4175ba
add esi, 1
add edi, 1
sub ecx, 1
jne 0x4175a9
seta al
setb cl
sub al, cl
movsx eax, al
test eax, eax
je 0x4175d5
mov eax, 9
add esp, 0x40
pop ebp
pop esi
pop edi
ret
movzx eax, byte [0x42b764]
test eax, eax
je 0x417621
mov esi, 0x48e79d
mov edi, 0x48e78d
mov ecx, 1
xor eax, eax
test ecx, ecx
je 0x417606
mov al, byte [esi]
sub al, byte [edi]
jne 0x417606
add esi, 1
add edi, 1
sub ecx, 1
jne 0x4175f5
seta al
setb cl
sub al, cl
movsx eax, al
test eax, eax
je 0x417621
mov eax, 9
add esp, 0x40
pop ebp
pop esi
pop edi
ret
movzx eax, byte [0x42b765]
test eax, eax
je 0x41766d
mov esi, 0x48e79e
mov edi, 0x48e78e
mov ecx, 1
xor eax, eax
test ecx, ecx
je 0x417652
mov al, byte [esi]
sub al, byte [edi]
jne 0x417652
add esi, 1
add edi, 1
sub ecx, 1
jne 0x417641
seta al
setb cl
sub al, cl
movsx eax, al
test eax, eax
je 0x41766d
mov eax, 9
add esp, 0x40
pop ebp
pop esi
pop edi
ret
movzx eax, byte [0x42b766]
test eax, eax
je 0x4176b9
mov esi, 0x48e79f
mov edi, 0x48e78f
mov ecx, 2
xor eax, eax
test ecx, ecx
je 0x41769e
mov al, byte [esi]
sub al, byte [edi]
jne 0x41769e
add esi, 1
add edi, 1
sub ecx, 1
jne 0x41768d
seta al
setb cl
sub al, cl
movsx eax, al
test eax, eax
je 0x4176b9
mov eax, 9
add esp, 0x40
pop ebp
pop esi
pop edi
ret
movzx eax, byte [0x42b767]
test eax, eax
je 0x417705
mov esi, 0x48e7a2
mov edi, 0x48e792
mov ecx, 2
xor eax, eax
test ecx, ecx
je 0x4176ea
mov al, byte [esi]
sub al, byte [edi]
jne 0x4176ea
add esi, 1
add edi, 1
sub ecx, 1
jne 0x4176d9
seta al
setb cl
sub al, cl
movsx eax, al
test eax, eax
je 0x417705
mov eax, 9
add esp, 0x40
pop ebp
pop esi
pop edi
ret
movzx eax, byte [0x42b768]
test eax, eax
je 0x417751
mov esi, 0x48e7a4
mov edi, 0x48e794
mov ecx, 2
xor eax, eax
test ecx, ecx
je 0x417736
mov al, byte [esi]
sub al, byte [edi]
jne 0x417736
add esi, 1
add edi, 1
sub ecx, 1
jne 0x417725
seta al
setb cl
sub al, cl
movsx eax, al
test eax, eax
je 0x417751
mov eax, 9
add esp, 0x40
pop ebp
pop esi
pop edi
ret
mov eax, 1
add esp, 0x40
pop ebp
pop esi
pop edi
ret