Function at 0x42c700
Capabilities:
Encode data using xor

Disassembly:
dec dword [edx - 0xbb2743d]
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5e219c
mov eax, dword fs:[0]
push eax
sub esp, 0x78
mov eax, dword [0x678390]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x84], ecx
push 0
call fcn.00486e66
add esp, 4
call fcn.00453bfa
test al, al
je 0x42c760
cmp al, 0xd5
jge 0x42c6d2
sub eax, 0xd687c818
mov ecx, 0xd6ab041f
salc
out dx, eax
sub al, 0xc7
mov al, 0x98
push ds
and eax, dword [eax + 0x343b0783]
and ah, byte [ecx + 0x67d4e4]
mov eax, dword [0x67d4e4]
test eax, eax
jne 0x42c79b
push 0x15c
call fcn.0047045e
add esp, 4
mov dword [ebp - 0x80], eax
mov dword [ebp - 4], 0
test eax, eax
je 0x42c78d
mov ecx, eax
call fcn.00444f40
jmp 0x42c78f
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x67d4e4], eax
push 1
push str.8b9aa
push str.Setting
mov ecx, eax
call fcn.00475069
add byte [eax - 0x68], ch
wait
pop esi
add byte [ebx - 0x77441738], cl
add al, 0
mov ebx, 0x85000488
sal byte [ebp + 0x4a], 0xa1
in al, 0xd4
add byte [di + 0x75c0], al
xor ch, byte [eax + 0x5c]
add dword [eax], eax
add al, ch
cdq
cmp al, 4
add byte [ebx + 0x458904c4], al
add bh, 0x45
cld
add dword [eax], eax
add byte [eax], al
test eax, eax
jne 0x42c7fc
mov eax, dword [0x67d4e4]
test eax, eax
jne 0x42c7ed
push 0x15c
call fcn.0047045e
add esp, 4
mov dword [ebp - 0x80], eax
mov dword [ebp - 4], 1
test eax, eax
je 0x42c7df
mov ecx, eax
call fcn.00444f40
jmp 0x42c7e1
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x67d4e4], eax
mov ecx, eax
call fcn.004760dd
test al, al
je 0x42ccff
call fcn.00453bb5
test al, al
je 0x42c816
shl dword [edx], 1
ja 0x42c7aa
sbb al, 0xaa
cmp byte [ebx], 0xcd
scasb al, byte es:[edi]
mov eax, dword [0x24ee2566]
pushal
inc eax
call fcn.004538be
test al, al
je 0x42c83e
jbe 0x42c7a1
shl dword [edi], 1
inc ebx
inc edi
movsd dword es:[edi], dword [esi]
mov dl, 0xc
jno 0x42c889
ljmp 0xc973:0xd3dc4859
call fcn.004536db
test al, al
je 0x42c85d
wait
into
push 0xffffffffffffff97
inc ecx
invalid
push 0xa
xor eax, eax
mov dword [ebp - 0x44], 7
push str.WnTool.exe
lea ecx, [ebp - 0x58]
mov dword [ebp - 0x48], 0
mov word [ebp - 0x58], ax
call fcn.00402b90
cmp dword [ebp - 0x48], 0
mov dword [ebp - 4], 2
add byte [eax], al
je 0x42ccea
call fcn.00453cc9
test al, al
je 0x42c8ad
pop ebp
mov dword [eax + 0x7c], esp
jno 0x42c825
push ss
retf 0xe145
call fcn.00453c3f
test al, al
je 0x42c8d1
cmp al, bl
cmp byte [eax + ebx - 0x4e], dh
stosb byte es:[edi], al
lodsb al, byte [esi]
adc dword [esi], ecx
push eax
push ecx
rcr eax, 0xd4
jnp 0x42c91c
or esi, 0x34
mov word [ebx - 0x5552aa02], ds
mov cl, 0xe8
and al, 0x73
add al, byte [eax]
call fcn.00453bfa
test al, al
je 0x42c8f3
shr eax, cl
cld
in eax, 0xe2
invalid
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
cmp dword [ebp - 0x44], 8
lea ecx, [ebp - 0x58]
push 0x5ec8e8
cmovae ecx, dword [ebp - 0x58]
push ecx
push eax
call fcn.0046190e
add esp, 0xc
test eax, eax
jne 0x42ccea
call fcn.00453696
jbe 0x42c98b
add al, byte [eax]
test al, al
je 0x42c938
nop
dec esi
popfd
adc dword [ebp + 0x8277f06], esp
jecxz 0x42c92d
mov ebp, ebx
xor cl, cl
add eax, 0x24da4c55
lea eax, [ebp - 0x70]
push str.51298224030128170638112326144266
push eax
call fcn.00454157
add esp, 8
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0
push 0x5ea6bc
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 4
call fcn.00406430
cmp dword [ebp - 0x5c], 0x10
lea eax, [ebp - 0x70]
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 5
cmovae eax, dword [ebp - 0x70]
push eax
call fcn.00406430
lea eax, [ebp - 0x7c]
mov byte [ebp - 4], 6
inc ebp
cld
push es
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.004589cb
mov eax, dword [ebp - 0x14]
add esp, 0xc
cmp eax, 0x10
jb 0x42c9b4
inc eax
lea ecx, [ebp - 0x28]
push eax
push dword [ebp - 0x28]
call fcn.00402c90
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x14], 0xf
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x28], 0
mov byte [ebp - 4], 4
cmp eax, 0x10
jb 0x42c9df
inc eax
lea ecx, [ebp - 0x40]
push eax
push dword [ebp - 0x40]
call fcn.00402c90
call fcn.00453903
test al, al
je 0x42c9f8
and byte [edi + 8], dh
mov cl, 0xd0
mov cl, 0xe9
jnp 0x42ca54
pop es
mov esp, 0xed42beaa
ljmp 0x8400
call fcn.00453c84
test al, al
je 0x42ca21
outsd dx, dword [esi]
mov al, 0xfa
jmp 0x42ca31
call fcn.00453696
test al, al
je 0x42ca48
pop ebp
xlatb
dec ecx
popal
fild qword [ebp + 0x2c]
inc esi
ret 0x821b
mov edi, dword [ebp - 0x7c]
cmp edi, dword [ebp - 0x78]
je 0x42cb2a
call fcn.00453b70
test al, al
je 0x42ca6e
aam 0xdc
dec esp
and bl, byte [eax - 0x5ae3a63f]
inc ebx
add ch, byte [ebp + ebp*2 - 0x7c57d290]
jg 0x42ca85
cmp dword [edi + 0x14], 0x10
jb 0x42ca78
adc byte [edx + 4], dh
mov edx, dword [edi]
jmp 0x42ca7a
mov edx, edi
mov dword [ebp - 0x2c], 0xf
mov dword [ebp - 0x30], 0
mov byte [ebp - 0x40], 0
cmp byte [edx], 0
add byte [eax], al
add dh, al
inc ebp
rol byte [eax], 0x80
cmp al, byte [eax]
jne 0x42ca95
xor ecx, ecx
jmp 0x42caa9
mov ecx, edx
lea esi, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42caa0
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x40]
call fcn.00402970
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 7
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.0045dd82
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 8
cmovae eax, dword [ebp - 0x28]
push eax
call fcn.00461ce8
mov eax, dword [ebp - 0x14]
add esp, 0xc
cmp eax, 8
jb 0x42caf1
inc eax
lea ecx, [ebp - 0x28]
push eax
push dword [ebp - 0x28]
call fcn.00402ce0
xor eax, eax
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x18], 0
mov byte [ebp - 4], 4
cmp eax, 0x10
jb 0x42cb1e
inc eax
lea ecx, [ebp - 0x40]
push eax
push dword [ebp - 0x40]
call fcn.00402c90
add edi, 0x18
cmp edi, dword [ebp - 0x78]
jne 0x42ca54
call fcn.00453ae6
test al, al
je 0x42cb50
cmp al, 0x5e
inc ebp
invalid
call fcn.004538be
test al, al
je 0x42cb79
sti
adc eax, 0xdf05c279
rcl dword [ebx + eax*2 + 0x11a1a61f], 0x9e
movsd dword es:[edi], dword [esi]
mov dl, 0xf3
loopne 0x42cba9
stosb byte es:[edi], al
je 0x42cbd2
inc esi
jecxz 0x42cb36
stc
outsb dx, byte [esi]
cmp bl, ah
xchg byte [esi], dl
pop ecx
call fcn.00453c3f
test al, al
je 0x42cb98
imul esi, dword [edx + 0x74ce4baf], 0x70e4ea40
mov bh, 0x80
xor ecx, dword [edi]
pop edx
add esi, dword [eax - 0x146ee4cc]
out dx, al
mov ebx, dword [ebp - 0x84]
mov ecx, ebx
call fcn.0042d240
call fcn.00453aa1
test al, al
je 0x42cbbe
invalid
add byte [eax + eax*8 - 0x782def8c], al
cmp al, 0x86
into
cmc
rol byte [edi - 0xa3179c4], cl
iretd
cmp dword [ebx], 0
je 0x42cbcd
push dword [ebp + 8]
mov ecx, ebx
call fcn.0042da60
call fcn.00453bb5
test al, al
je 0x42cbf5
mov ebp, 0x65530403
fdivr dword [esi + 0x5c5a3481]
xchg ebp, eax
add al, 0xc6
mov dl, byte [esi]
dec edi
sub dword [esi - 0x7dfbe924], esi
out dx, al
aaa
jne 0x42cb9b
and esi, dword [edi]
call fcn.00453651
test al, al
je 0x42cc17
add al, 0x58
bound esp, qword [eax - 0x11400c76]
pop ss
inc bh
add byte [esi - 0x34], bl
xor esp, edi
cld
jae 0x42cc65
imul byte [ebx + 0x18]
pop es
mov cl, 0x19
call fcn.00453903
test al, al
je 0x42cc3c
mov ecx, 0x654f140f
mov al, 0x11
jae 0x42cbd4
and byte [eax - 0x354f4562], dh
stc
xor ah, al
movsb byte es:[edi], byte [esi]
fadd st(3), st(0)
aam 0x14
outsd dx, dword [esi]
scasd eax, dword es:[edi]
scasd eax, dword es:[edi]
inc edx
imul ecx, dword [ebx - 0x3f7a7bbb], 0x75ff4b74
or byte [ebp - 0xae7bb3], 0x75
mov byte [eax - 0x18], dl
lodsd eax, dword [esi]
xchg esi, eax
std
dec dword [ebx - 0x544773b3]
stosb byte es:[edi], al
stosb byte es:[edi], al
sub cl, byte [ebx - 0x3b7c7b8b]
adc byte [ebx], ch
into
mov eax, dword [ebp - 0x7c]
test eax, eax
je 0x42cc8e
push dword [ebp - 0x80]
lea ecx, [ebp - 0x7c]
push ecx
push dword [ebp - 0x78]
push eax
call fcn.00406300
mov ecx, dword [ebp - 0x74]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0x7c]
add esp, 0x10
sub ecx, esi
imul ecx
lea ecx, [ebp - 0x7c]
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
push eax
push esi
call fcn.00407c80
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0
mov eax, dword [ebp - 0x5c]
cmp eax, 0x10
jb 0x42ccd8
mov ecx, dword [ebp - 0x70]
inc eax
cmp eax, 0x1000
jb 0x42cccf
test cl, 0x1f
je 0x42ccab
call fcn.00485fa1
mov eax, dword [ecx - 4]
cmp eax, ecx
jb 0x42ccb7
call fcn.00485fa1
sub ecx, eax
cmp ecx, 4
jae 0x42ccc3
call fcn.00485fa1
cmp ecx, 0x23
jbe 0x42cccd
call fcn.00485fa1
mov ecx, eax
push ecx
call fcn.00470491
add esp, 4
mov dword [ebp - 0x5c], 0xf
mov dword [ebp - 0x60], 0
mov byte [ebp - 0x70], 0
mov eax, dword [ebp - 0x44]
cmp eax, 8
jb 0x42ccff
inc eax
lea ecx, [ebp - 0x58]
push eax
push dword [ebp - 0x58]
call fcn.00402ce0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0047070c
mov esp, ebp
pop ebp
ret 4