Function at 0x4061bd
Capabilities:
Encode data using xor

Disassembly:
cmp byte [ebp - 0xc], 0
je 0x4061b6
mov eax, dword [ebp - 0x18]
xor edx, edx
jmp 0x4061c9
movsx eax, word [ebp - 0x40]
cmp eax, dword [ebp - 0x18]
mov edx, 0x1363101
mov esi, 0x3ac10c0c
xor edx, esi
push edx
push 0x4c90b077
mov ebx, 0x7727dc12
pop edx
xor ebx, edx
pop ecx
xor ebx, ecx
mov ecx, 0x54ed8bcf
mov edi, 0x54ed8bcf
xor edi, ecx
mov esi, 0x6f3b30dd
xor esi, 0x6f3bb0dd
xor edi, esi
xor ebx, edi
mov edx, ebx
mov esi, 0x1706c702
mov edi, 0xe8f938b8
xor esi, edi
sub edx, esi
mov esi, 1
sub edx, esi
mov eax, dword [edx - 0x45]
mov ebx, 0x7a60a5a6
xor ebx, 0x7fbe6aa
mov ecx, 0x7d9b430c
xor ebx, ecx
mov edx, 0x6094138e
mov edi, 0x6094138e
xor edi, edx
mov ecx, 0
mov edx, 0
xor ecx, edx
xor edi, ecx
xor ebx, edi
mov edx, 0
xor edx, ebx
mov esi, 4
sub esp, esi
mov dword [esp], edx
xor ebx, ebx
add ebx, esp
push ebx
pop edi
add esp, 0xfffffffc
mov ecx, esp
mov dword [ecx], edi
mov ecx, 0
mov edi, 0
xor ecx, edi
mov edx, 0x4b748df2
xor edx, 0x4b748df2
xor ecx, edx
mov edx, 0x2d21122b
mov esi, 0x5c87b9d
xor esi, edx
mov ebx, 0x20684182
mov edx, 0x8812874
xor ebx, edx
xor ebx, esi
xor ecx, ebx
mov esi, 0xfffffffc
add esp, esi
mov edx, 0
xor edx, esp
mov dword [edx], ecx
mov ecx, 0x1e8be286
xor ecx, 0x37cb0c3c
push ecx
mov edi, 0x4dc9b79
xor edi, 0x7f37f215
pop ebx
xor edi, ebx
xor ebx, ebx
add ebx, edi
mov ecx, 0x80c52fff
xor ebx, ecx
xor ebx, 0x7f3ad000
and ebx, 0x52ab13d6
and edi, 0xad54ec29
or edi, ebx
mov esi, 0xfffffffc
add esp, esi
xor ebx, ebx
add ebx, esp
mov dword [ebx], edi
mov edx, 0x12040098
mov edi, 0x29702
xor edx, edi
mov esi, edx
xor esi, 0xffffffff
and esi, 0x4f11048a
and edx, 0xb0eefb75
or edx, esi
mov esi, edx
add esp, 0xfffffffc
mov dword [esp], esi
push 0xabac07e
mov edi, 0x77607d4f
pop esi
xor edi, esi
push edi
push 0x3468f83e
mov ecx, 0x14e5c61f
pop edi
xor ecx, edi
pop edx
xor ecx, edx
pop ebx
xor ecx, ebx
xor esi, esi
add esi, ecx
mov edi, esi
add esp, 0xfffffffc
mov dword [esp], edi
call eax
pop esi
mov edx, 0x53375315
mov ecx, 0x1137d114
xor ecx, edx
push 0x496d27cc
mov ebx, 0x69812fcc
pop edx
xor ebx, edx
xor ecx, ebx
mov edx, 0x59db8b11
mov eax, 0x3b370235
xor eax, edx
xor ecx, eax
mov ebx, 0x365951c6
xor ebx, 0x130e2d89
mov esi, 0x1102052
mov edi, 0x24071c04
xor esi, edi
xor esi, ebx
mov eax, 0x802218
mov ebx, 0x10349c03
xor eax, ebx
push 0x4a79b84c
mov edx, 0x5acd2617
pop edi
xor edx, edi
xor edx, eax
xor esi, edx
mov edx, 0x1a7c6001
mov eax, 0x1a7c4604
xor eax, edx
mov edi, 0x11f3f234
xor edi, 0x5df23234
xor eax, edi
push eax
pop edi
mov ebx, 0xb45abd82
xor edi, ebx
xor edi, 0x4ba5427d
and edi, 0x4c416ab7
and eax, 0xb3be9548
or eax, edi
xor edx, edx
add edx, ecx
mov edi, edx
add esp, 0xfffffffc
mov ebx, esp
mov dword [ebx], edi
xor edx, edx
add edx, eax
mov edi, 0x28d06097
xor edi, 0xd72f9f6b
add esp, edi
mov dword [esp], edx
xor ecx, ecx
mov cl, byte [esi]
add eax, ecx
mov cl, byte [eax]
pop eax
mov byte [esi], cl
push 0x3d8b4962
mov ebx, 0x3d8b4963
pop edi
xor ebx, edi
push 0x69c985a4
mov edx, 0x69c985a4
pop edi
xor edx, edi
xor ebx, edx
sub esi, ebx
pop ecx
mov edx, 0x3d6da16d
xor edx, 0x3d6da16c
sub ecx, edx
xor edi, edi
add edi, ecx
or edi, 0
jne 0x4063d5
mov eax, 0x44520640
mov edx, 0x1859829
xor eax, edx
mov edi, eax
xor edi, 0xffffffff
and edi, 0x4460a617
and eax, 0xbb9f59e8
or eax, edi
mov ebx, 0x4bb6655c
mov edi, 0x2c80a3f2
xor edi, ebx
xor eax, edi
mov edx, 0x66c1a3e5
xor eax, edx
call eax
pop edx
pop edx
ret