Function at 0x43fbf1
Capabilities:
Encode data using xor

Disassembly:
shr ch, 0x40
je 0x427951
jne 0x40d909
cpuid
sbb eax, 0x34870fc3
mov al, byte [0x2760001]
ja 0x427943
jbe 0x40d913
rep movsb byte es:[edi], byte [esi]
jbe 0x427943
xor eax, 0x42b71b2c
add byte [eax], al
inc eax
add byte [eax], al
xor al, 0
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ecx], ah
cmp byte [eax], 0
add byte [eax], al
add byte [ecx], ah
add byte [eax], al
push esi
add byte [eax], al
add byte [eax + 0x5d004337], bl
cmovno eax, dword [eax]
inc esp
add byte [eax], al
add byte [edx + edx*2 + 0x259c0041], dh
jno 0x40d9ca
and eax, 0x417b71
mov cl, 0
add byte [eax], al
xor byte [eax], al
add byte [eax], al
add al, 0x54
inc ecx
add byte [ecx + 0x30000000], dh
add byte [eax], al
add byte [esp + edx*2], al
inc ecx
add dl, ch
fiadd dword [eax]
pushfd
inc edx
inc ecx
add byte [eax], al
add byte [eax], al
dec esp
add byte [eax], al
add byte [edx], cl
mov byte [edx], al
js 0x40d94c
inc eax
add byte [ebx - 0x1a], ah
sti
or cl, byte [eax - 0x2515ffbe]
inc eax
add byte [ebx], bl
mov bh, 0x42
add byte [eax], al
popal
add byte [eax + 0x38], al
add byte [ecx], ah
add byte [eax], al
mov esp, 0
adc byte [eax], al
add byte [eax], al
inc eax
add byte [eax], al
dec eax
add byte [eax], al
add byte [eax - 0x34ffbcc9], bl
cmovno eax, dword [eax]
inc eax
add byte [eax], al
add byte [eax + eax], dh
add byte [eax], al
sbb esi, dword [edi + 0x41000042]
add byte [eax + 0x30], al
add byte [ecx], al
add byte [eax], al
movsd dword es:[edi], dword [esi]
add dword [eax], eax
add byte [eax], al
add dword [eax], eax
add byte [eax], al
inc ecx
add byte [eax], al
xor al, 0
add byte [eax], al
out dx, eax
jae 0x40da14
add ah, al
in al, 0x40
add byte [eax], al
add byte [eax], al
add byte [eax + eax], cl
add byte [ebx], dl
lds eax, [edx]
invalid
push esp
push ebx
add byte [eax], al
xor al, 0
add byte [eax], al
inc esp
bound eax, qword [ecx]
and eax, 0xe500435a
pop ecx
inc ebx
add byte [eax], dh
add byte [eax], al
add byte [eax + eax], cl
add ch, ah
pop ecx
inc ebx
add byte [eax + eax], cl
add byte [eax], dh
add byte [eax], al
add byte [ebx], bl
mov bh, 0x42
add byte [eax], al
inc eax
add byte [eax], al
xor al, 0
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ecx], ah
cmp byte [eax], 0
add byte [eax], al
add byte [ecx], ah
add byte [eax], al
or al, byte [eax]
add byte [eax], al
cwde
aaa
inc ebx
add byte [edi + 0x340041a7], bl
add byte [eax], al
add byte [ebp + 0xf], bl
inc ecx
add byte [eax + eax], dh
add byte [eax], al
pop ebp
cmovno eax, dword [eax]
inc esp
add byte [eax], al
add dh, bh
fiadd dword [edx]
inc esp
add byte [eax], al
add byte [eax + eax], bh
add byte [eax], al
invalid
cld
sub eax, 0xe3c0008d
and byte [ebx + 0x5e8b0446], cl
or byte [esi - 0x75], ah
inc esp
add eax, 0x4e850f00
mov es, word [edx]
add byte [esi + 0x74f986cf], al
add al, 0xb0
lcall 0x8e3e, 0x840fd5b8
add al, byte [eax]
sbb eax, esp
push ds
jo 0x424459
sub byte [ebp - 0x3f], 0xea
inc eax
mov cl, byte [ebp + 0x34]
mov ebx, dword [esi + 4]
shr bx, 0x40
lea esi, [esi + 8]
sar word [ebx], cl
xchg dx, ax
xchg dx, ax
jmp dword [esi]
fdiv dword [esi - 0x3fdf1b40]
in al, 0x20
push ebp
mov ebp, esp
or edx, edx
shr cx, 0x40
jno 0x41a807
mov bl, 0x65
adc esi, dword [esi - 0x485e7ef1]
add dword [eax], eax
jno 0x435fae
inc ecx
jmp 0x427944
push eax
call fcn.0042c2fe
add esp, 4
cmp dl, dl
test edi, edi
jb 0x411d81
je 0x42799b
jne 0x427967
pop esi
cpuid
ret
cmp edi, 0xffffffff
je 0x42799b
jne 0x427979
mov dword [0xc13b3f60], eax
jecxz 0x42799c
shl ebx, 0x20
mov edx, dword [esi]
push 0
push edx
call fcn.00424c65
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
shr edx, 0x40
pop ebp
shl eax, 0x20
ret
cmp word [ebp - 0x38], 0
je 0x41d8f9
cmp dword [ebp - 0x38], 0x840f0000
push edx
pop edi
invalid
jne 0x4279ad
add dword [edi], ebx
sub eax, 0xc8458bcc
mov eax, dword [ebp - 0x38]
mov ecx, dword [esi]
ja 0x43ddad
jbe 0x4279be
cpuid
lodsb al, byte [esi]
ret
jbe 0x43ddad
invalid
pop ebp
ret
push 0x434f72
ret
push eax
push ecx
jne 0x41d8e2
je 0x43ddbb
imul ecx, dword [ecx + ebx*8 + 0x21840fcd], 0xfffffffb
std
push dword [0xc5e856b0]
je 0x41d8e2
xor eax, 0xc5e856b0
popfd
cld
dec dword [ebx + 0x39660c7d]
rol byte [ecx + 0x8c4], cl
add dh, dh
invalid
lea esp, [esp + 4]
mov ax, ax
pop esi
xor eax, eax
jb 0x41a7f0
pop ebx
ja 0x4324c6
jbe 0x43fbe9
mov ebx, dword [edi - 0x2879f0a4]
sub bh, bh
inc edi
daa
pop dword [esp - 4]
push ebx
call fcn.004500d0
mov eax, dword [ebp + 8]
add esp, 4
jbe 0x4324c6
invalid
test eax, eax
jb 0x411d59
jne 0x40d8fa
je 0x43fc17
fcmovnbe st(0), st(5)
je 0x40d8fa
xchg si, di
shr bl, 0x40
xchg di, si
mov word [esi + 0xbc], di
mov edx, edx
mov cl, cl
jne 0x409fbb
shl esi, 0x20
shr dl, 0x40
je 0x43fc41
mov eax, 0xe9c1667d
inc eax
shr cx, 0x40
mov cx, word [esi + 0x20]
mov di, di
mov dx, di
shl bh, 0x20
mov eax, edi
mov cl, cl
lea ebx, [ebx]
shr dx, 0xb
shl eax, 5
test cx, 0x834e
or edx, eax
jb 0x414ab7
or bp, bp
test si, 0xa543
sub cx, 0
push esi
pop esi
and eax, eax
xor edx, 0x85
jb 0x414ac0
sub cx, dx
xor ecx, 0x5120
jb 0x42445e
cmc
call fcn.0042ae08
fcom dword [ebp - 0x792e79a2]
retf 0x895b