Function at 0x43007a
Capabilities:
Encode data using xor

Disassembly:
inc ebp
clc
mov byte [eax], bh
jbe 0x420329
dec ecx
push eax
invalid
ja 0x420337
int1
xchg edi, eax
inc esp
fstp dword [eax - 0x37baf513]
in eax, 0x8d
push ebp
movsb byte es:[edi], byte [esi]
or eax, 0x84487ac0
ror edi, 0xa8
jmp 0xd037ce2
jns 0x4202c2
or al, 0xf8
wait
mov al, byte [0x1d8338f2]
push ebp
lds esp, [ebp + 0x69]
mov ecx, fs
dec ebp
sbb edx, dword [ebx]
xor eax, 0xa2a53019
sbb dword [eax], esi
movsd dword es:[edi], dword [esi]
mov byte [0x38fccd7c], al
inc edx
nop
jl 0x4202e6
cld
cmp byte [edx - 0x70], al
and esi, eax
jge 0x420370
xchg ebp, eax
jo 0x420321
out 0x12, eax
stosd dword es:[edi], eax
mov al, byte [0x8d69df15]
fild qword [ecx - 0x73]
and al, 0x2d
adc al, 0x54
sal byte [ebx - 0x6cb0167f], 1
lodsd eax, dword [esi]
dec ebp
scasb al, byte es:[edi]
mov al, 0xab
fisubr word [ecx - 0x10]
cmp al, 0x48
std
rcr dword [0x832363b4], 1
loop 0x420317
inc ebx
push ss
xor dword [eax - 0x41], edx
or byte [ebp - 0x6c], ah
inc ebx
arpl word [eax + esi*4 + 0x5c], di
cld
stc
jo 0x420387
jnp 0x420370
out 0x3d, eax
ret 0x71cc
cmc
lodsd eax, dword [esi]
lds ebx, [ebp + 6]
mov esp, 0x15687cae
js 0x420388
int1
jne 0x4202ff
mov dword [ebp + ecx*8 + 0x48], 0x6f384062
js 0x4203e0
push edi
jmp 0xac81dfae
cwde
or dword [edx], ebx
invalid
push ebp
mov ebp, esp
mov edx, dword [ebp + 8]
mov eax, dword [eax]
add byte [edx + 0x7fc00000], dl
push ebp
add dword [ebp + edi - 0x72], ebx
pop esp
cmp eax, 0xc000008e
jg 0x430082
add byte [edi + 0x2d], dl
add eax, 0x14d0000
pop esp
sub eax, 0x87
je 0x430092
invalid
je 0x4300e3
pop esp
cmp eax, 0xc000008e
jg 0x430082
add byte [edi + 0x2d], dl
add eax, 0x14d0000
pop esp
sub eax, 0x87
je 0x430092
add byte [esi + ecx*2 - 0x15], dh
pushal
add eax, 0x3fff0158
sub eax, 2
jb 0x4300d7
jmp 0x4300f7
add byte [eax], al
jmp 0x4300f7
mov al, 0x5e
add dword [esi], ebx
mov al, 0xc8
jmp 0x4300f9
mov al, 0xce
jmp 0x4300f9
mov al, 0x3c
add edi, edi
add byte [eax], al
add byte [ebx + 0xc52], cl
loopne 0x430104
invalid
call [ebp - 0x3e]
sbb byte [ecx], al
mov eax, dword [esp + 4]
test dword [eax + 4], 0
jne 0x44b5a4
cmp byte [0x59302c], 0
add byte [edi], cl
lea eax, [esp + 4]
mov edi, 0xffc9f401
inc dword [ebx + 0xf8]
mov eax, dword [esp + 4]
cld
call fcn.0042f63e
mov edx, dword [esp + 8]
add byte [eax], al
push eax
push 0x1404916
add edi, edi
adc eax, 0x59a018
mov eax, dword [eax]
add byte [ecx + eax*4], al
cmp ebx, esi
cli
test eax, 0x14538b01
mov eax, dword [ebx + 0x18]
je 0x430162
add byte [0x59a010], dl
lea eax, [ecx]
je 0x43006a
mov dword [eax], eax
add dl, dl
test eax, eax
je 0x420313
mov edx, dword [ebx + 0xc]
call 0xff4301d6
mov ecx, dword [0x1d4a004]
test ecx, ecx
je 0x430190
call ecx
mov eax, dword [eax]
add byte [eax + edi*4], al
fld dword [eax]
add byte [ecx], ch
add dword [ecx + 0x14], edx
mov dword [esp], edx
jmp 0x43027a
mov eax, dword [edi + ebx*8]
inc ebx
mov dword [0x44], ebx
test eax, eax
je 0x43028a
jb 0x43028b
cmp esi, ebx
jg 0x43027a
jg 0x43027a
xor eax, eax
pop edx
add byte [eax], al
mov dword fs:[eax], edx
jmp 0x4302ac
pop edi
pop esi
pop ebx
pop ebp
ret
iretd
inc eax
add byte [ecx + eax*2], dh
dec eax
add dword [eax], edi
inc ecx
inc eax
add byte [ecx + eax*2], ch
inc eax
add byte [eax], al
inc eax
add byte [eax - 0x33fec6c2], dl
inc eax
add byte [ebx], cl
inc ebp
pop edx
add byte [eax], al
outsd dx, dword [esi]
inc esp
imul esi, dword [esi + 0x69], 0x919c01e9
inc eax
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ecx], ch
add dword [eax], eax
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [edi + 1], bl
pushfd
xchg ecx, eax
inc eax
add byte [eax], dl
add byte [eax], al
add byte [eax], al
nop
inc eax
add byte [ecx + eax*2], ah
nop
add dword [eax], esi
inc ecx
inc eax
add byte [ecx + eax*2], dh
inc eax
add byte [eax], al
inc ecx
inc eax
add byte [ecx + eax*2], ch
mov ebx, 0x403e7401
add byte [eax + 0x403e], dl
inc eax
add byte [ecx], cl
inc ebp
fiadd word [ecx]
jb 0x44b683
insb byte es:[edi], dx
outsd dx, dword [esi]
ja 0x44b5ac
add byte [eax], al
xchg ecx, eax
inc eax
add byte [eax], al
add byte [edi + 1], bl
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
ret
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ecx], al
add dword [eax], eax
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ecx + eax + 0x4c], al
xchg edx, eax
inc eax
add byte [eax], dl
add byte [eax], al
add byte [eax], al
lea eax, [eax]
and al, 0x41
dec eax
add dword [eax], esi
inc ecx
inc eax
add byte [ecx + eax*2], dh
inc eax
add byte [eax], al
inc ecx
inc eax
add byte [ecx + eax*2], ch
cmp dword [ecx], eax
je 0x44b6fa
inc eax
add byte [ebx + ebp*8 + 0x3e000040], dl
inc eax
add byte [edi], cl
inc ebp
les eax, [ecx]
jbe 0x44b72d
insb byte es:[edi], dx
imul esp, dword [eax + edx*2 + 0x6f], 0x65740000
jb 0x44b67f
xchg edx, eax
imul eax, dword [ecx], 0
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
pop edi
add dword [eax], eax
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax + 0xc019092], ch
add byte [eax], al
add byte [eax - 0x74], ah
inc eax
add byte [eax], al
inc ecx
inc eax
or al, 0
add byte [eax], al
pushal
mov word [eax], es
add byte [ecx + 0x40], al
add byte [eax], dh
inc ecx
mov ebx, 0x40413401
add byte [eax], bh
inc ecx
inc eax
add byte [eax], al
inc ecx
inc eax
add byte [esi + edi - 0x2f], dh
add dword [eax - 0x33ffbfc2], edx
inc eax
add byte [eax], al
inc ebp
dec ecx
outsb dx, byte [esi]
jbe 0x44b789
xor eax, dword [ecx]
inc ebx
popal
jae 0x44b7a3
lea eax, [eax]
add byte [ebx + 0x40], dl
ret
add dword [edi + 0x72], ebp
mov eax, eax
pushal
xchg ebx, eax
inc eax
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ecx + eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], cl
add dword [eax], eax
add byte [eax], al
add byte [eax - 0x6d], ah
inc eax
add byte [eax], al
add byte [eax], al
add byte [esi + ecx*4], ch
cmp dword [ecx], eax
and al, 0x41
inc eax
add byte [eax], dh
inc ecx
inc eax
add byte [eax], al
inc ecx
inc eax
add byte [eax], bh
inc ecx
int 1
sub al, 0x41
inc eax
add byte [esi + edi + 0x40], dh
add byte [eax], al
add byte [esi], bh
inc eax
add ah, cl
imul eax, dword ds:[ecx], 0x63414510
arpl word [ebp + 0x73], sp
add byte [eax], al
imul ebp, dword [edi + 0x6c], 0x1367461
outsb dx, byte [esi]
lea eax, [eax]
rcl byte [ebx + 0x40], 0
add byte [eax], al
add al, dl
add dword [eax], eax
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add bl, bh
add dword [eax], eax
add byte [eax], al
add al, al
xchg ebx, eax
inc eax
add byte [eax], al
add byte [eax], al
add byte [esi + ecx*4], ch
rol dword [ecx], 1
and al, 0x41
inc eax
add byte [eax], dh
inc ecx
inc eax
add byte [eax], al
inc ecx
inc eax
add byte [eax], bh
inc ecx
pop ds
add dword [ecx + eax*2], ebp
inc eax
add byte [esi + edi + 0x40], dh
add byte [eax], al
inc eax
add ah, cl
add dword ds:[ecx], 0xa
inc ebp
push eax
jb 0x44b8a8
jbe 0x44b8aa
add byte [eax], al
nop
sbb byte [esp + ebx*2 + 1], dl
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ecx + eax], dh
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
sbb byte [edi + ebp*4 + 0x1001], dl
add byte [esi + ecx*4], ch
inc eax
add byte [eax], al
inc ecx
inc eax
add byte [eax], dh
inc ecx
inc eax
add dword [ecx + eax*2], esi
inc eax
add byte [eax], bh
inc ecx
inc eax
add byte [eax], al
inc ecx
inc eax
add byte [esi + edi + 0x41], dh
add dword [eax - 0x33ffbfc2], edx
inc eax
add byte [eax], al
inc ebp
push ebx
je 0x44b8f8
arpl word [edi], bp
add dword [esi + 0x65], esi
jb 0x44b904
insb byte es:[edi], dx
outsd dx, dword [esi]
ja 0x44b8a2
add byte [eax + eax*2 + 0x8000000], dl
add dword [eax], eax
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ecx + 1], bh
or byte [ecx], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
jns 0x44b8bb
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax + eax*2 - 0x72fff000], dl
add dword [esi + ecx*4], ebp
inc eax
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
xchg esp, eax
inc eax
add byte [eax], dl
add byte [ebp + 0x408e2c01], cl
add byte [ecx + eax*2], ah
inc eax
add byte [eax], al
inc ecx
inc eax
add byte [ecx + eax*2], dh
imul eax, dword [ecx], 0x404138
sub al, 0x41
inc eax
add byte [eax], al
inc eax
add byte [eax - 0x33fee0c2], dl
inc eax
add byte [ecx], cl
inc ebp
inc ebx
add byte [eax], al
je 0x44b967
outsd dx, dword [esi]
insb byte es:[edi], dx
inc ebx
pop ebx
add esp, ecx
xchg esp, eax
inc eax
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add bl, bh
add byte [eax], al
add byte [eax], al
sti
add dword [eax], eax
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ecx + 0x4094cc01], dl
add byte [eax + eax], cl
add byte [eax], al
add byte [eax + eax*2 + 0x1f412400], cl
add dword [eax], esi
inc ecx
inc eax
add byte [ecx + eax*2], dh
inc eax
add byte [eax], al
inc ecx
inc eax
add byte [ecx + eax*2], ch
add dword [ecx], 0x74
inc eax
add byte [eax + 0x403e], dl
inc eax
add byte [0x72014a45], cl
imul esp, dword [ecx + 0x6e], 0x724574
add byte [edx - 0x75], dh
shr byte [eax], 0x95
hlt
add bh, ch
add dword [eax], eax
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], ch
xchg ebp, eax
inc eax
add dword [eax + eax], ecx
add byte [eax], al
pushal
mov word [eax], es
add byte [ecx + 0x40], al
add byte [eax], dh
inc ecx
inc ecx
add dword [ecx + eax*2], esi
inc eax
add byte [eax], bh
inc ecx
inc eax
add byte [eax], al
inc ecx
inc eax
add byte [esi + edi + 4], dh
add dword [eax - 0x33ffbfc2], edx
inc eax
add byte [eax], al
inc ebp
inc ecx
jae 0x44ba1a
jp 0x44b9ab
imul ebp, dword [edi + 0x6e], 0x6c696146
add byte [eax], al
lea eax, [eax]
mov byte [ebp + 0x139], dl
outsd dx, dword [esi]
outsb dx, byte [esi]
inc esi
popal
imul ebp, dword [eax + eax], 0x8800408d
xchg ebp, eax
cmp dword [ecx], eax
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
lea eax, [ecx]
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
mov byte [ebp + 0xc0169], dl
add byte [eax], al
pushal
mov word [eax], es
add byte [ecx + 0x40], al
add byte [eax], dh
inc ecx
pop ds
add dword [ecx + eax*2], esi
inc eax
add byte [eax], bh
inc ecx
inc eax
add byte [eax], al
inc ecx
inc eax
add byte [esi + edi - 0x70], dh
add dword [eax - 0x33ffbfc2], edx
inc eax
add byte [eax], al
inc ebp
inc ecx
bound esi, qword [ebx + 0x74]
mov dword [ecx], eax
arpl word [ebp + eax*2 + 0x72], si
jb 0x44ba7f
jb 0x44ba12
add byte [ebp + 0x40], dl
xchg ecx, eax
add dword [eax], eax
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [edi + 1], bl
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ebp + 0xc0040], dl
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
pop edi
add dword [eax], eax
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
xchg ebp, eax
inc eax
add byte [eax + eax], cl
ret
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ecx], al
add dword [eax], eax
add byte [eax], al
add byte [eax - 0x6a], al
inc eax
add byte [eax], al
add byte [eax], al
add byte [eax - 0x74], ah
add al, 1
and al, 0x41
inc eax
add byte [eax], dh
inc ecx
inc eax
add byte [eax], al
inc ecx
inc eax
add byte [eax], bh
inc ecx
dec eax
add dword [ecx + eax*2], ebp
inc eax
add byte [esi + edi + 0x40], dh
add byte [eax], al
inc eax
add ah, cl
cmp dword ds:[ecx], eax
or byte [ebp + 0x4f], al
push ebx
inc ebp
jb 0x44bb33
add byte [eax], al
lea eax, [eax]
cwde
xchg esi, eax
int 1
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
sub dword [ecx], eax
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
cwde
xchg esi, eax
pop ds
add dword [eax + eax], ecx
add byte [eax], al
pushal
mov word [eax], es
add byte [ecx + 0x40], al
add byte [eax], dh
inc ecx
nop
add dword [ecx + eax*2], esi
inc eax
add byte [eax], bh
inc ecx
inc eax
add byte [eax], al
inc ecx
inc eax
add byte [esi + edi - 0x45], dh
add dword [eax - 0x33ffbfc2], edx
inc eax
add byte [eax], al
inc ebp
push ebx
popal
add word gs:[esp + ebp*2 + 0x45], bp
js 0x44bb82
jo 0x44bb22
add byte [edi + 0x6e], ch
nop
mov al, 0x96
pop ds
add dword [ecx], edx
add ebp, dword [esi]
aaa
xor al, 4
add byte [eax], al
add al, cl
adc byte [eax], al
enter 0x4010, 0
dec eax
ret
add byte [eax], al
add byte [eax], al
add byte [eax], al
add dword [ecx], eax
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
inc esp
add dword [edi + edx*4 + 0x40], ecx
add byte [eax + eax], al
add byte [eax], al
adc dword [eax], eax
and al, 0x41
dec eax
add dword [eax], esi
inc ecx
inc eax
add byte [ecx + eax*2], dh
inc eax
add byte [eax], al
inc ecx
inc eax
add byte [ecx + eax*2], ch
cmp dword [ecx], eax
je 0x44bbfa
inc eax
add byte [eax + 0x403e], dl
pop es
inc ecx
add byte [ebx], dl
push esp
fld dword [ecx]
jb 0x44bc31
popal
dec esp
outsd dx, dword [esi]
arpl word [eax], ax
add byte [ebx + 0x6f], al
jne 0x44bc45
je 0x44bc25
add esp, ecx
add eax, 0xffffffd4
jmp 0x45304e
add byte [ebx - 0x2bfbdbbc], al
jmp 0x43bc05
add byte [ecx - 0x69], ah
pop ds
add dword [ecx - 0x69], ebp
inc eax
add byte [ecx - 0x69], dh
inc eax
add byte [eax], al
xchg edi, eax
inc eax
add byte [ecx], al
add bl, al
add dword [edx - 0x74], edx
adc byte [ebx - 0x71], bh
sbb eax, 0xdf0000db
push edi
loopne 0x44bcb8
sbb dword [ecx], esp
add dword [eax + 0x2c004097], esp
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], ch
cwde
hlt
adc byte [ecx], al
push ebx
jns 0x44bd2c
arpl word [eax + 0x72], bp
add byte [eax], al
imul edi, dword [edx + 0x65], 0x1cd8d72
push ebp
mov ebp, esp
push ebx
mov ebx, edx
mov dword [eax], eax
add dl, ch
adc byte [esi - 9], ah
mov byte [0x89660801], al
add dword [esi - 0x77], esp
adc eax, dword [eax]
add dl, al
add al, 0
push ebp
mov esi, dword [ebx - 0x3ba76ff]
mov ecx, dword [ebp - 4]
mov dl, 0
add byte [eax - 0x17ffbf6e], bh
add al, byte [ecx]
add byte [eax], al
call fcn.00446be6
add byte [eax], al
ret
call fcn.00446be6
add byte [eax], al
pop ebp
ret
and al, byte [esi]
or al, 0x6f
movsb byte es:[edi], byte [esi]
dec ecx
loopne 0x4530a0
salc
adc dword [0xf1127e3c], ecx
adc edx, dword [ecx]
test ecx, edi
mov eax, 0xe291c902
iretd
xchg ebp, eax
in eax, dx
invalid
scasd eax, dword es:[edi]
jecxz 0x453021
salc
pop edx
mov byte [esi - 0x3300681e], ah
je 0x4530b1
mov al, byte [0x580a4b46]
jo 0x45301b
shl dword [esi + 0x36], 1
and dword [edx], esi
sbb eax, 0x210d5ad6
invalid
cld
jl 0x453037
xchg edx, eax
xor al, byte [ebp + 0x40f7ae44]
movsd dword es:[edi], dword ds:[esi]
pushal
mov byte [0xbf5b614], al
cmp dword [edx + 0x1f], edx
or edi, dword [ecx]
push edx
pop ds
invalid