Function at 0x41e7c0
Capabilities:
Encode data using xor

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x50
mov eax, dword [0x44bbcc]
mov dword [esp + 8], 0x518d4f6b
mov dword [esp + 0xc], 0x55a253a0
mov dword [esp + 0x10], 0x59b55790
mov dword [esp + 0x14], 0x5db95bac
mov dword [esp + 0x18], 0x61825f7b
mov dword [esp + 0x1c], 0x658a63b4
mov dword [esp + 0x20], 0x69886793
mov dword [esp + 0x24], 0x6d8d6b8c
mov dword [esp + 0x28], 0x718c6f9e
mov dword [esp + 0x2c], 0x7580739b
mov dword [esp + 0x30], 0x79aa7790
mov dword [esp + 0x34], 0x7d887ba8
mov dword [esp + 0x38], 0x1987f8d
mov dword [esp + 0x3c], 0x5ee03eb
mov dword [esp + 0x40], 0x9f307e3
mov dword [esp + 0x44], 0xb08
mov byte [esp + 0x48], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 0x40
ja 0x41e890
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 8]
add ecx, 0x1e09d90d
xor ecx, edx
mov dword [esp + 4], ecx
mov ecx, dword [esp + 4]
add cl, 0xbf
mov edx, dword [esp]
mov byte [esp + edx + 8], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 0x41
jb 0x41e860
lea ebx, [esp + 0x4c]
lea ecx, [esp + 8]
push ebx
push 0
push 0
push 0x1e
push ecx
push 0
call eax
mov ebp, dword [esp + 0x4c]
test ebp, ebp
jns 0x41e8b3
mov eax, 0xffffffff
jmp 0x41e8ba
lea eax, [ebp*2]
push eax
call fcn.00408680
add esp, 4
mov esi, eax
mov eax, dword [0x44bbcc]
mov dword [esp + 8], 0x49f54b17
mov dword [esp + 0xc], 0x45d647d8
mov dword [esp + 0x10], 0x41dd43f8
mov dword [esp + 0x14], 0xbd21bfcc
mov dword [esp + 0x18], 0xb91ebbe7
mov dword [esp + 0x1c], 0xb52eb714
mov dword [esp + 0x20], 0xb120b33f
mov dword [esp + 0x24], 0xad35af2c
mov dword [esp + 0x28], 0xa934ab22
mov dword [esp + 0x2c], 0xa528a73f
mov dword [esp + 0x30], 0xa106a338
mov dword [esp + 0x34], 0x9d109f10
mov dword [esp + 0x38], 0x99009b0d
mov dword [esp + 0x3c], 0x9502970f
mov dword [esp + 0x40], 0x911f930f
mov dword [esp + 0x44], 0x8f90
mov byte [esp + 0x48], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 0x40
ja 0x41e9ae
nop
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 8]
mov edi, ecx
and edi, 0xd52076f3
xor ecx, 0x552076f3
lea ecx, [ecx + edi*2]
lea edi, [ecx + edx]
and ecx, edx
add ecx, ecx
sub edi, ecx
mov dword [esp + 4], edi
mov ecx, dword [esp + 4]
mov edx, ecx
not edx
and edx, 0xbf
and ecx, 0x40
sub ecx, edx
mov edx, dword [esp]
mov byte [esp + edx + 8], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 0x41
jb 0x41e960
mov edi, dword [esp + 0x64]
push ebx
push ebp
push esi
push 0x1e
lea ebx, [esp + 0x18]
push ebx
push 0
call eax
mov dword [esp + 8], 0x8f36895c
mov dword [esp + 0xc], 0x83308d39
mov dword [esp + 0x10], 0x87238124
mov dword [esp + 0x14], 0x9b3c8532
mov dword [esp + 0x18], 0x9f289921
mov dword [esp + 0x1c], 0x93929d38
mov byte [esp + 0x20], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x18
ja 0x41ea3e
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 8]
add eax, 0xdf01e362
xor eax, ecx
mov dword [esp + 4], eax
mov eax, dword [esp + 4]
add al, 0x16
mov ecx, dword [esp]
mov byte [esp + ecx + 8], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x19
jb 0x41ea10
push 0
push 0
push ebx
push esi
push edi
call fcn.00418d90
add esp, 0x14
jmp dword [0x446d4c]