Function at 0x42bf01
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ecx
mov eax, dword [0x437fa4]
sar eax, 6
and eax, 0xc58cde7f
cmp eax, 0x8c9ff656
jg 0x42bf2f
inc dword [0x437544]
mov eax, dword [0x437544]
and eax, 0xea3ca452
sub dword [0x43d220], eax
mov ecx, dword [0x43a438]
mov eax, dword [0x4398c0]
imul ecx, eax
movsx eax, word [0x435792]
add eax, ecx
cmp eax, 0x52c451a1
jl 0x42bf57
add dword [0x437cc4], 0x27b31d12
add dword [0x43c580], 0xf042235b
imul eax, dword [0x436e84], 0x3eaf8cb2
push ebx
mov ebx, dword [ebp + 0xc]
push esi
push edi
mov dword [0x436e84], eax
lea eax, [ebx + 4]
push eax
call fcn.0040a660
mov edi, dword [ebp + 8]
mov esi, eax
mov eax, dword [0x43afb8]
shl eax, 7
sub eax, 0x4c5d5595
mov dword [ebp - 4], esi
or eax, 0x434f968a
sub dword [0x43c218], eax
and dword [0x43e574], 0x39410356
pop ecx
mov eax, dword [0x43bf58]
inc dword [0x43bf58]
cmp eax, 0x5e30d9f5
jge 0x42bfce
movzx eax, word [0x434552]
or eax, 0x285b8575
mov word [0x434552], ax
mov al, byte [edi + section..data]
mov byte [esi], al
add dword [0x43b13c], 0xd9b77941
mov eax, dword [0x43e794]
mov al, byte [eax + edi]
xor byte [esi], al
movsx ecx, word [0x43621c]
movsx eax, word [0x4368ca]
not eax
shl ecx, 8
add eax, ecx
mov ecx, dword [0x43c32c]
or ecx, eax
movzx eax, word [0x436a58]
imul eax, ecx
mov word [0x436a58], ax
movzx eax, word [0x4346fe]
imul eax, eax, 0x9663edbd
mov word [0x4346fe], ax
inc dword [0x437b68]
mov eax, dword [0x437b68]
or eax, 0xbfb936ff
cmp eax, 0x4ae8d8b6
jle 0x42c053
movzx eax, word [0x433016]
sub eax, 0x6281b21
mov word [0x433016], ax
mov al, byte [edi + 0x42f001]
mov byte [esi + 1], al
movsx eax, word [0x433842]
sar eax, 7
add eax, 0x4fb09921
mov dword [0x43bd40], eax
mov eax, dword [0x43e794]
mov al, byte [eax + edi + 1]
add edi, 2
xor byte [esi + 1], al
or dword [0x43d9d4], 0x89406221
and dword [0x43ca78], 0x4e8c89ea
add dword [0x43e2e4], 0x76e1cd77
mov ax, word [0x43514c]
movzx ecx, word [esi]
cwde
sub dword [0x436fac], eax
mov eax, ecx
mov dword [ebp + 0xc], eax
add eax, 3
push eax
lea eax, [edi + section..data]
push eax
push esi
call fcn.0040f934
mov edx, dword [ebp + 0xc]
mov eax, 0xffffe0db
add edx, 3
mov word [0x434f04], ax
or dword [0x436d54], 0xacf02380
add esp, 0xc
add edx, esi
cmp dword [0x43b6ac], 0xb559f221
jge 0x42c119
mov ecx, dword [0x43b1d4]
mov eax, dword [0x43a778]
xor ecx, 0xeb3c0c1c
shl eax, 2
cmp eax, ecx
jne 0x42c119
movzx eax, word [0x435e0a]
add eax, 0x4e73a6a8
mov word [0x435e0a], ax
movzx eax, word [0x4347cc]
add edi, dword [0x43e794]
imul eax, eax, 0xbd94f48b
mov word [0x4347cc], ax
cmp esi, edx
je 0x42c16f
sub edi, esi
inc dword [0x43bce0]
mov eax, dword [0x43bce0]
xor dword [0x439be8], eax
mov al, byte [edi + esi]
xor byte [esi], al
mov ax, word [0x4345d2]
mov ecx, dword [0x43d7ac]
cwde
add ecx, eax
mov word [0x4345d2], cx
dec dword [0x43d7ac]
inc esi
cmp esi, edx
jne 0x42c138
mov eax, dword [0x43d88c]
mov word [0x43317a], ax
cmp ebx, dword [ebp + 0xc]
je 0x42c203
inc dword [0x43918c]
mov eax, dword [0x43918c]
or eax, 0x14fd1ee9
add eax, dword [0x43cdc0]
mov dword [0x43cdc0], eax
mov byte [edx], 0
and dword [0x43ba48], 0x8b1cc5b0
cmp dword [0x43c8e4], 0x55d6a604
jge 0x42c1c1
mov dword [0x43d0dc], 0xaada621f
mov edi, dword [edx - 3]
lea esi, [edx - 3]
and dword [0x43b5ac], 0x6ddae3ec
inc dword [0x43dc18]
mov eax, dword [0x43dc18]
mov ecx, dword [0x437010]
imul ecx, eax
imul eax, ecx, 0x480ffd94
xor dword [0x437ee8], eax
sub ebx, dword [ebp + 0xc]
mov dword [0x4393d4], 0x2e7fb16d
jmp 0x42bfaa
mov ecx, dword [0x439120]
mov eax, dword [ebp - 4]
add ecx, 0xc76370c3
xor dword [0x439b2c], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret