Function at 0x436e1e
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0xcf256c
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x118
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x14], ebx
mov eax, dword [ecx + 8]
mov dword [ebp - 0x20], ecx
cmp eax, 0x3ffffffe
jb 0x436f5c
mov dword [ebp - 0x48], 0xf
lea edx, [ebp - 0x60]
xor eax, eax
mov ecx, 0x13
mov dword [ebp - 0x4c], eax
mov byte [ebp - 0x5c], al
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x2c], 0xd27f1c
mov dword [ebp - 0x30], edx
cmp eax, 0x10
mov dword [ebp - 0x28], 0x13
jb 0x436e8e
mov ebx, dword [ebp - 0x5c]
jmp 0x436e91
lea ebx, [ebp - 0x5c]
mov edx, 0xd27f1c
cmp edx, ebx
jae 0x4376d4
xor edx, edx
test edx, edx
je 0x436ef5
cmp eax, 0x10
jb 0x436eae
mov edx, dword [ebp - 0x5c]
jmp 0x436eb1
lea edx, [ebp - 0x5c]
lea eax, [ebp - 0x60]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], eax
mov ebx, 0xd27f1c
sub ebx, edx
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x38], ebx
cmp edx, ebx
jae 0x436ed9
call 0xd1bf4b
mov edx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x28]
mov ebx, dword [ebp - 0x38]
mov eax, edx
sub eax, ebx
cmp ecx, eax
jb 0x436ee3
mov ecx, eax
mov dword [ebp - 0x44], ecx
jmp 0x4374af
mov dword [ebp - 0x34], 0x13
cmp eax, 0x13
jb 0x4375f3
mov eax, dword [ebp - 0x34]
test eax, eax
ja 0x4375a1
mov dword [ebp - 4], 8
lea eax, [ebp - 0x60]
push eax
lea ecx, [ebp - 0x90]
call fcn.00439b42
push 0xe4a7c0
lea eax, [ebp - 0x90]
push eax
call 0xce9624
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x48]
cmp eax, 0x10
jae 0x437593
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0x48], 0x62eed915
mov eax, 0x62eed915
cmp edi, ebp
add eax, 0x16f32180
xor byte [ecx + 0x5c], 0x64
fst qword [ebx + 0x154c80a3]
jno 0x436fba
fst qword fs:[ebx + 0x154c80a3]
pop ebx
movsd dword es:[edi], dword [esi]
cmp al, 0x95
scasd eax, dword es:[edi]
rcr byte [0xadec3bb9], cl
pop ss
scasd eax, dword es:[edi]
test dword [edx], esi
cmp esi, 0x2e
xlatb
std
or byte [ebp - 0x5e114e83], 0xa5
or cl, byte [esi]
mov edi, 0xe673bcb5
jno 0x436f4d
jnp 0x436f4f
and eax, 0x1a5d3a62
movsd dword es:[edi], dword [esi]
push es
cld
aas
xchg ebx, eax
push edx
nop
cmp eax, 0x697c4849
les esp, [ebp - 0x317d75e4]
mov ebp, ebp
cwde
pop esi
aam 0xc
in eax, 0x84
sub eax, 0x5191f62c
popfd
push eax
invalid
in eax, dx
xor byte [ebp - 0x61], ch
or edi, ebp
push es
insd dword es:[edi], dx
cmp byte [eax - 0x77], al
jg 0x436fc6
push edx
adc dword [esi + 0x3ca52749], eax
adc dword [esi + 0x3ca52749], eax
leave
pop ebp
sub dh, dl
wait
dec ecx
mov dword ss:[0x9ce9cd2b], eax
mov edi, 0x60b8a3a4
lea ebx, [ecx]
wait
mov dword [0x5f856ac8], eax
in eax, 0x7d
aam 0x1a
mov dh, 0x8f
invalid
in eax, 0x19
in al, dx
dec ebp
ret 0x8731
pop ss
and eax, 0x594bcb79
cmpsb byte [esi], byte es:[edi]
push cs
daa
rcl ch, 1
mov cl, 0xb7
inc edi
sub dword [ebp + 0x264ecba5], eax
imul esp, dword [0x2fa3c5f3], 0x13b1e12d
sbb al, byte [ecx + ebx*8]
mov bh, 8
int1
mov byte [0x2eb5757f], al
or al, 0x2d
enter 0x5a5, 0xfffffffffffffff6
invalid
sub esp, ebx
clc
xor esp, ecx
std
imul ecx, dword [ebx - 0x13], 0xffffff95
cmc
xor byte gs:[edx + edi + 0x7fb24efb], 0xa1
adc eax, 0x1e224eb
fcomp dword [eax - 0x2a4aa21b]
out dx, al
int 0x16
pop esi
cmpsb byte [esi], byte es:[edi]
fld xword [esi - 0x73]
inc eax
and bh, ch
test eax, 0x85b7bd64
int1
dec ebp
xor dword [ebp - 0x5d], ebx
or dh, cl
xor dword [ecx - 6], edi
xchg ebp, eax
mov ebp, 0x3715f65a
dec eax
stc
jmp 0x7d560d30
xchg dword [ecx + 0x41b47ed5], ebp
into
cli
das
out 0x20, eax
or dword [edi - 0x35], ecx
in eax, dx
ret 0x9fb
outsd dx, dword [esi]
stosb byte es:[edi], al
sbb dword [eax], edi
loope 0x4376e2
add ch, cl
xlatb
adc eax, 0x20c270ff
xor eax, 0x9579c9d5
aad 0x9a
xchg byte [ebp + 0x5f504dc8], ah
jp 0x4376ed
mov ch, 0x13
dec ebx
insb byte es:[edi], dx
jg 0x43763e
push ss
cli
fdivr dword [ebp + 0x3a9129de]
fistp word [ebx - 0x2153cfc5]
and dword [edx + eax + 0x7f320ee], edx
cmp bl, bh
wait
cmp esi, dword [eax]
lodsb al, byte [esi]
fisub word [ecx]
xchg esp, eax
add ch, dh
and bl, dh
pop es
test dword [ebp - 0x4f7e2454], ebx
pop ss
loope 0x4376b1
jmp 0xad50ea15
stosb byte es:[edi], al
aad 0x75
jge 0x437701
jl 0x437687
mov ecx, 0x64eab220
inc edi
pop edi
add al, 0xd
adc al, 0x11
mov byte [0xbc4543f8], al
sub ebx, ebx
aas
or byte [ebx + 0x78], dh
lodsb al, byte [esi]
inc esp
inc edi
jp 0x437712
fcomp st(0)
inc esp
sub eax, 0xa1b1ee71
mov dword [0xf8440e95], eax
push cs
inc esp
clc
mov ah, 0xfd
movsd dword es:[edi], dword [esi]
cmp eax, 0x19c11d5
or eax, 0x15cdb0fd
mov dh, 9
or bh, bl
or dword [edx], ecx
sti
cwde
and eax, 0xe9d9736
invalid