Function at 0x430ee8
Capabilities:
Encode data using xor

Disassembly:
push ebx
push esi
push edi
push esp
add esp, 0xffffffe0
mov byte [esp + 4], cl
mov byte [esp], al
mov ecx, 0x10
mov al, dl
mov ebx, dword [esp + 4]
mov dh, byte [eax]
mov edi, esi
shl edi, 0x18
mov ebp, esi
and esp, 0xff00
shl esp, 8
or edi, ebp
mov ebp, esi
and ebp, 0xfe0000
shr ebp, 8
or edi, esp
shr esi, 0x18
or bh, dh
mov dword [ebx], edi
add ebx, 4
add eax, 4
dec eax
jne 0x430f01
mov ecx, 0x40
mov dl, byte [esp + 4]
add dl, 0x34
mov esi, dword [edx]
xor esi, dword [edx - 0x14]
xor dh, byte [edx - 0x2c]
xor esi, dword [edx - 0x34]
mov al, dh
add eax, eax
shr esi, 0x1f
or eax, esi
mov dword [edx + 0xc], eax
add dl, 4
dec ecx
je 0x430f3e
mov ebx, dword [esp]
mov ebx, dword [edx]
mov edx, dword [esp]
mov dl, byte [edx + 4]
mov eax, dword [esp]
mov al, byte [eax + 8]
mov dword [esp + 8], eax
mov eax, dword [esp]
mov al, byte [eax + 0xc]
mov ecx, dword [esp]
mov cl, byte [ecx + 0x10]
mov dword [esp + 0xc], ecx
mov ecx, 0x14
mov dh, byte [esp + 4]
mov byte [esp + 0x10], dh
mov dh, bl
shl esi, 5
mov edi, ebx
shr edi, 0x1b
or esi, edi
mov edi, dword [esp + 8]
xor bh, al
and edi, edx
xor edi, eax
add esi, edi
add esi, dword [esp + 0xc]
mov bh, byte [esp + 0x10]
add dh, byte [edi]
add esi, 0x5a827999
mov byte [esp + 0xc], al
mov al, byte [esp + 8]
mov bh, dl
shl edi, 0x1e
shr edx, 2
or bh, dl
mov dword [esp + 8], edi
mov dl, bl
mov ebx, esi
add dword [esp + 0x10], 4
dec ecx
je 0x430f8d
mov ecx, 0x14
mov esi, dword [esp + 4]
add esi, 0x50
mov byte [esp + 0x14], dh
mov dh, bl
shl esi, 5
mov edi, ebx
shr edi, 0x1b
or esi, edi
mov edi, dword [esp + 8]
xor bh, dl
xor edi, eax
add esi, edi
add esi, dword [esp + 0xc]
mov bh, byte [esp + 0x14]
add dh, byte [edi]
add esi, 0x6ed9eba1
mov dword [esp + 0xc], eax
mov al, byte [esp + 8]
mov bh, dl
shl edi, 0x1e
shr edx, 2
or bh, dl
mov dword [esp + 8], edi
mov dl, bl
mov ebx, esi
add dword [esp + 0x14], 4
dec ecx
je 0x430fe7
mov ecx, 0x14
mov esi, dword [esp + 4]
add esi, 0xa0
mov dword [esp + 0x18], esi
mov esi, edx
shl esi, 5
mov bh, bl
shr edi, 0x1b
or esi, edi
mov edi, dword [esp + 8]
and edi, edx
mov ebp, eax
and ebp, edx
or edi, esp
mov ebp, dword [esp + 8]
and ebp, eax
or edi, esp
add esi, edi
add esi, dword [esp + 0xc]
mov edi, dword [esp + 0x18]
add esi, dword [esi]
add esi, 0x8e1bbcdc
mov dword [esp + 0xc], eax
mov eax, dword [esp + 8]
mov edi, edx
shl esi, 0x1e
shr edx, 2
or edi, edx
mov dword [esp + 8], edi
mov edx, edx
mov ebx, esi
add dword [esp + 0x18], 4
dec eax
jne 0x431042
mov ecx, 0x14
mov dh, byte [esp + 4]
add dh, 0xf0
add byte [eax], al
add byte [eax - 0x75e3db8c], cl
shl esi, 5
mov dh, bl
shl esi, 5
mov edi, ebx
shr edi, 0x1b
or esi, edi
mov edi, dword [esp + 8]
xor bh, dl
xor edi, eax
add esi, edi
add esi, dword [esp + 0xc]
mov bh, byte [esp + 0x1c]
add dh, byte [edi]
add esi, 0xca62c1d6
mov byte [esp + 0xc], al
mov al, byte [esp + 8]
mov bh, dl
shl edi, 0x1e
shr edx, 2
or bh, dl
mov dword [esp + 8], edi
mov dl, bl
mov ebx, esi
add dword [esp + 0x1c], 4
dec ecx
je 0x4310a9
mov ecx, dword [esp]
add dword [eax], ebx
mov ecx, dword [esp]
add byte [ecx + 4], dl
mov edx, dword [esp]
mov cl, byte [esp + 8]
add byte [edx + 8], cl
mov edx, dword [esp]
add byte [edx + 0xc], al
mov eax, dword [esp]
mov dl, byte [esp + 0xc]
add byte [eax + 0x10], dl
add esp, 0x20
pop esp
pop edi
pop esi
pop ebx
ret 0xc08b