Function at 0x42d260
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
mov eax, ecx
xor ecx, ecx
push ebx
push esi
push edi
mov esi, dword [eax + 0x74]
mov ebx, 2
mov edi, dword [eax + 0x8c]
mov dword [ebp - 0xc], eax
lea eax, [esi + 1]
mul ebx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0046d82e
mov dword [ebp - 4], eax
xor ecx, ecx
lea eax, [edi + 1]
mul ebx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0046d82e
lea ecx, [esi*2 + 2]
mov ebx, eax
push ecx
push 0
push dword [ebp - 4]
mov dword [ebp - 8], ebx
call fcn.00480640
lea ecx, [edi*2 + 2]
push ecx
push 0
push ebx
call fcn.00480640
add esp, 0x20
call fcn.004524ef
test al, al
je 0x42d2f9
push ebp
adc al, 0x2d
hlt
call fcn.00451f8b
test al, al
je 0x42d31b
int 0x8b
test ah, 0x11
or ebx, dword [esi + 0x819d611]
sub bh, dl
leave
jnp 0x42d36f
mov dl, 0x9a
pop es
jae 0x42d2da
call fcn.0045223d
test al, al
je 0x42d340
xlatb
imul edi, dword [esi + 0x78], 0xffffff8b
stosd dword es:[edi], eax
das
sbb eax, 0xf6218ed6
test byte [ebx - 0x7a34aa52], dl
inc esp
cwde
xor al, ah
push edx
mov byte [esi - 0x7491218f], cl
jge 0x42d337
mov edi, dword [ebp - 0xc]
cmp dword [edi + 0x78], 8
lea ecx, [edi + 0x64]
jb 0x42d34e
mov ecx, dword [ecx]
mov esi, dword [ebp - 4]
mov edx, esi
movzx eax, word [ecx]
lea ecx, [ecx + 2]
mov word [edx], ax
lea edx, [edx + 2]
test ax, ax
jne 0x42d353
cmp dword [edi + 0x90], 8
lea ecx, [edi + 0x7c]
jb 0x42d372
add cl, byte [ebx - 0x7a274f7]
mov ecx, dword [ecx]
mov ebx, dword [ebp - 8]
mov edx, ebx
movzx eax, word [ecx]
lea ecx, [ecx + 2]
mov word [edx], ax
lea edx, [edx + 2]
test ax, ax
jne 0x42d377
push ebx
push esi
mov ecx, edi
call fcn.0042d450
test eax, eax
jne 0x42d3b8
test esi, esi
je 0x42d3a2
push esi
call fcn.0046d837
add esp, 4
test ebx, ebx
je 0x42d3af
push ebx
call fcn.0046d837
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.00452603
test al, al
je 0x42d3d4
adc cl, byte [0x9383411]
adc ebx, dword [ebx + 0x5af722d9]
sbb eax, 0x726e3ce6
invalid
call fcn.00452579
test al, al
je 0x42d3f8
test edi, esi
cmp byte [eax + 0x1d], 0x96
pop eax
sbb edi, dword cs:[edi]
loopne 0x42d45b
inc ebp
and bl, byte [edi + 0x33]
invalid
call fcn.00452534
test al, al
je 0x42d41a
arpl sp, cx
push 0x84d86788
das
invalid
mov eax, dword [ebp - 4]
test eax, eax
je 0x42d42a
push eax
call fcn.0046d837
add esp, 4
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x42d43a
push ebx
call fcn.0046d837
add esp, 4
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [pe_dos_header]
push eax
sub esp, 0x238
mov eax, dword [0x67432c]
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 eax, dword [ebp + 8]
mov dword [ebp - 0x240], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x244], eax
mov eax, dword [0x679464]
mov dword [ebp - 0x238], 0xffffffff
mov dword [ebp - 0x234], 0xffffffff
test eax, eax
jne 0x42d4e2
push 0x15c
call fcn.0046d56f
add esp, 4
mov dword [ebp - 0x23c], eax
mov dword [ebp - 4], 0
test eax, eax
je 0x42d4d4
mov ecx, eax
call fcn.00443b90
jmp 0x42d4d6
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x679464], eax
lea ecx, [ebp - 0x230]
push ecx
mov ecx, eax
call fcn.00471e64
push 0x208
lea eax, [ebp - 0x218]
mov dword [ebp - 4], 1
push 0
push eax
call fcn.00480640
add esp, 0xc
call fcn.0045223d
test al, al
je 0x42d526
add esp, esp
pop ss
mov al, 0x53
cmp bh, bl
mov dh, 0xa6
dec edx
clc
aas
xor dword [ecx - 0x34], ebp
call fcn.004525be
test al, al
je 0x42d54f
test byte [eax + 0x4c], bh
invalid
call fcn.00451fd0
test al, al
je 0x42d576
pop es
das
fist word [edx - 0x5a18add7]
pop ds
outsd dx, dword [esi]
xchg edx, eax
mov eax, dword [0x5a4d651c]
rol al, 1
loop 0x42d505
lds eax, [ecx + 0x47]
mov edx, 0xd3f4d5d5
inc edx
add dword [ebx - 0x21b43], eax
dec dword [eax]
cmp dword [ebp - 0x21c], 8
lea eax, [ebp - 0x230]
cmovae eax, dword [ebp - 0x230]
push eax
lea eax, [ebp - 0x218]
push 0x5e89cc
push eax
call fcn.00407f60
add esp, 0xc
call fcn.00452420
test al, al
je 0x42d5c5
add byte [eax + eax*8 - 0x96fe28c], al
pop edx
and dword [ebx], edx
cmp ch, byte [eax + 0xca8f1a4]
nop
neg byte [edx + 0x21]
adc edi, dword [edx]
test al, 0xa4
int1
test al, 0xc
std
movsd dword es:[edi], dword [esi]
jb 0x42d636
pop ecx
cmp al, 0x3e
nop
cmp ch, dl
jg 0x42d5a3
cld
mov eax, 0xe8204c2c
dec esp
add al, byte [eax]
call fcn.004521f8
test al, al
je 0x42d5ee
mov eax, dword [0xd4313bc3]
hlt
mov esi, dword [ebp - 0x240]
mov ecx, esi
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
mov eax, dword [ecx]
add ecx, 2
test ax, ax
jne 0x42d600
sub ecx, edx
sar ecx, 1
je 0x42d632
lea eax, [ebp - 0x218]
push eax
push 0x5e6b2c
push esi
call fcn.00456bb2
add esp, 0xc
neg eax
sbb eax, eax
neg eax
mov dword [ebp - 0x238], eax
invalid
call fcn.00452579
test al, al
je 0x42d651
add byte [eax + eax*8 - 0x5e9ce98c], al
pushal
loope 0x42d601
push ss
arpl word [ecx - 0x7a3e1ea0], sp
cwde
loopne 0x42d678
test dword [eax + 0x42cf34e0], ebx
loopne 0x42d6aa
iretd
mov ebp, 0x14b311d5
invalid
mov esi, dword [ebp - 0x244]
mov ecx, esi
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x42d660
sub ecx, edx
sar ecx, 1
je 0x42d692
lea eax, [ebp - 0x218]
push eax
push 0x5e6b2c
push esi
call fcn.00456bb2
add esp, 0xc
neg eax
sbb eax, eax
neg eax
mov dword [ebp - 0x234], eax
call fcn.004521f8
test al, al
je 0x42d6b6
or dword [edi - 0x72069777], 0x4582593a
je 0x42d630
xchg edx, eax
pop esi
rcr dword [ecx + 0x7f], 0x8d
pop ecx
jg 0x42d63a
cmp byte [eax + ebx - 0x66], bh
or bl, 0xaa
cli
mov edx, 0x249e4e8
add byte [eax + eax*8 + 0x3bf81e74], al
xchg edx, eax
pop es
jge 0x42d692
call fcn.0045209f
test al, al
je 0x42d6dd
clc
cmp edx, dword [edx + 0x31cd7d07]
xchg edx, eax
out 0x15, al
xchg byte [ebx + 0x17], al
xor dword [edx + 0x438615e6], edx
pop ss
mov edi, 0x7f333a42
sub dword [edx - 0x30], ebp
int 0x44
add ebp, dword [ebp + 0x2d]
fidiv word [ebx + ecx - 0x37427432]
std
invalid
mov edi, dword [ebp - 0x238]
mov esi, dword [ebp - 0x234]
cmp edi, 0xffffffff
je 0x42d6f3
cmp esi, 0xffffffff
jne 0x42d761
call fcn.0045209f
test al, al
je 0x42d71b
pop esi
xlatb
push ss
imul edx, eax, 0x44b8b26b
out dx, al
adc eax, dword cs:[ebx - 0x56f45e17]
into
retf
cmp edi, 0xffffffff
jne 0x42d729
cmp esi, edi
jne 0x42d732
lea esi, [edi + 2]
jmp 0x42d763
cmp edi, 1
jne 0x42d732
mov esi, edi
jmp 0x42d763
test esi, esi
jne 0x42d73d
mov esi, 1
jmp 0x42d763
call fcn.00452603
test al, al
je 0x42d761
aas
cld
or dword [ecx - 0x660bcb93], ebp
dec ecx
xchg byte [edi + 0x6182d492], bh
mov eax, 0xdd4ab4bc
sbb al, 0xfe
push ds
and al, 0x3e
imul esi, dword ds:[ebx], 0xe48d8bf6
std
invalid
xor esi, esi
mov ecx, dword [ebp - 0x21c]
cmp ecx, 8
jb 0x42d781
inc ecx
push ecx
push dword [ebp - 0x230]
lea ecx, [ebp - 0x230]
call fcn.00402c20
mov eax, esi
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.0046d81d
mov esp, ebp
pop ebp
ret 8