Function at 0x7597407f
Capabilities:
Encode data using xor

Disassembly:
jne 0x759740f5
push edi
imul esi, dword [eax + ebp*2 + 0x45], 0x646f636e
imul ebp, dword [esi + 0x67], 0x65646f43
push eax
popal
add byte gs:[bx + si + 0x4390], dl
jb 0x75974100
popal
je 0x75974103
pop eax
insd dword es:[edi], dx
insb byte es:[edi], dx
push edi
jb 0x7597410d
je 0x7597410b
jb 0x759740a8
inc ebx
jb 0x75974110
popal
je 0x75974113
pop eax
insd dword es:[edi], dx
insb byte es:[edi], dx
push edx
popal
jb 0x75974101
outsb dx, byte [esi]
jo 0x75974130
je 0x75974114
imul esi, dword [eax + ebp*2 + 0x45], 0x646f636e
imul ebp, dword [esi + 0x67], 0x656d614e
add byte [eax + 0x72439090], dl
popal
je 0x7597413b
pop eax
pop eax
insd dword es:[edi], dx
insb byte es:[edi], dx
push edx
popal
jb 0x75974129
outsb dx, byte [esi]
jo 0x75974158
je 0x7597413c
imul esi, dword [eax + ebp*2 + 0x45], 0x646f636e
imul ebp, dword [esi + 0x67], 0x65646f43
push eax
popal
add byte gs:[bx + si - 0x6f70], dl
inc ebx
jb 0x75974164
popal
je 0x75974167
pop eax
pop eax
insd dword es:[edi], dx
insb byte es:[edi], dx
push edx
popal
jb 0x7597410c
add byte [eax - 0x7f6f6f70], dl
inc esi
nop
nop
nop
nop
sub byte [esi], 0x46
ja 0x7597417d
push 0x68775081
inc esi
ja 0x7597415d
adc dword [eax + 0x77], 0x77462e68
inc eax
js 0x7597416f
ja 0x75974171
inc esi
ja 0x7597414f
adc byte [eax + 0x77], 0x30
inc esi
ja 0x759740e3
adc byte [eax + 0x77], cl
sbb al, 0x2e
inc esi
inc esi
ja 0x75974168
jne 0x75974187
ja 0x75974145
inc esi
ja 0x75974170
xor esi, dword [ebp + 0x50]
jne 0x7597418f
ja 0x7597413d
sub eax, 0x53d07746
push ebx
push eax
ja 0x75974131
sub eax, 0x54887746
inc esi
ja 0x759740d5
push esp
push eax
ja 0x75974121
sub eax, 0x53ed7746
push eax
ja 0x7597410d
mov ah, 0x2d
inc esi
ja 0x7597414a
sub eax, 0x53ed7746
push ebx
push eax
ja 0x759740fd
sub eax, 0x540a7746
push eax
or dl, byte [eax + edx*2 + 0x77]
ja 0x759740ed
test byte [0x54277746], ch
sub eax, 0x54277746
push eax
ja 0x759741d5
sub eax, 0x53ed7746
sub eax, 0x53ed7746
push eax
ja 0x759741c1
sub eax, 0x81687746
push eax
ja 0x759741ad
adc dword [eax + 0x77], 0x77462d2c
or dl, byte [eax + edx*2 + 0x77]
adc byte [0x81687746], ch
sub eax, 0x540a7746
push eax
ja 0x75974199
sub eax, 0x81687746
push eax
ja 0x75974181
sub al, 0x46
ja 0x7597419f
push esp
push eax
ja 0x75974171
sub al, 0x46
ja 0x759741e1
push esp
push eax
ja 0x75974159
sub al, 0x46
inc esi
ja 0x759741e9
push esp
push eax
ja 0x75974149
sub al, 0x46
ja 0x75974135
push esp
push eax
ja 0x75974139
sub al, 0x46
ja 0x759741a2
push ebx
push eax
ja 0x75974225
sub al, 0x46
ja 0x75974201
push esp
push eax
ja 0x75974219
sub al, 0x46
ja 0x75974209
push esp
push eax
ja 0x75974201
sub al, 0x46
ja 0x75974211
inc esp
push esp
push eax
ja 0x759741f1
sub al, 0x46
ja 0x75974219
push esp
push eax
ja 0x759741e1
sub al, 0x46
ja 0x759741e8
jnp 0x7597422f
ja 0x759741d5
sub eax, dword [esi + 0x77]
or edi, dword [ebx + 0x50]
ja 0x759741c9
loopne 0x75974215
sub eax, dword [esi + 0x77]
daa
inc esi
ja 0x75974214
push esp
push eax
ja 0x759741bd
sub eax, dword [esi + 0x77]
in eax, dx
push ebx
push eax
ja 0x759741ad
sub eax, dword [esi + 0x77]
inc eax
js 0x7597424f
ja 0x75974199
sub eax, dword [esi + 0x77]
mov bh, 0x49
dec ecx
dec eax
ja 0x75974189
sub eax, dword [esi + 0x77]
mov byte [eax + edx*2 + 0x77], dl
jo 0x7597423d
ja 0x75974195
push esp
push eax
ja 0x75974281
sub eax, dword [esi + 0x77]
inc esi
ja 0x759741cc
mov bh, 0x49
dec ecx
dec eax
ja 0x75974271
sub eax, dword [esi + 0x77]
mov dh, 0x10
dec eax
ja 0x7597425d
sub eax, dword [esi + 0x77]
mov bh, 0x49
dec ecx
dec eax
ja 0x75974255
sub eax, dword [esi + 0x77]
popal
push esp
push eax
ja 0x7597424d
sub eax, dword [esi + 0x77]
popal
push esp
push eax
ja 0x75974245
sub eax, dword [esi + 0x77]
xor esi, dword [ebp + 0x50]
jne 0x7597428f
ja 0x75974239
sub al, byte [esi + 0x77]
xor esi, dword [ebp + 0x50]
jne 0x75974297
ja 0x75974221
sub al, byte [esi + 0x77]
mov byte [eax + edx*2 + 0x77], dl
shr byte [edx], 0x46
ja 0x7597420b
push esp
push eax
ja 0x75974211
sub al, byte [esi + 0x77]
mov dh, 0x10
dec eax
ja 0x75974205
adc byte [eax + 0x77], cl
lodsb al, byte [esi]
sub al, byte [esi + 0x77]
mov ebp, dword [ecx + 0x50]
ja 0x759741e9
imul edx, dword [eax + 0x77], 0x77462a88
sub al, byte [esi + 0x77]
mov byte [eax + edx*2 + 0x77], dl
jo 0x75974294
inc esi
ja 0x75974277
push esp
push eax
ja 0x759742c8
push ebx
inc esp
pop eax
dec ebp
dec esp
inc edi
je 0x759742d0
popal
insb byte es:[edi], dx
jne 0x759742e3
inc esi
jb 0x759742f0
insd dword es:[edi], dx
inc ecx
outsb dx, byte [esi]
jns 0x75974286
nop
nop
push edi
push ebx
inc esp
pop eax
dec ebp
dec esp
inc edi
je 0x759742e0
popal
insd dword es:[edi], dx
inc esi
jb 0x75974307
outsd dx, dword [esi]
insd dword es:[edi], dx
inc edx
jne 0x75974305
insb byte es:[edi], dx
je 0x75974308
outsb dx, byte [esi]
dec esi
popal
insd dword es:[edi], dx
jae 0x75974316
popal
arpl word [ebp], sp
nop
nop
push edi
push ebx
inc esp
pop eax
dec ebp
dec esp
inc ebx
jb 0x7597431a
popal
je 0x7597431d
inc ebx
outsd dx, dword [esi]
outsb dx, byte [esi]
je 0x75974322
js 0x75974333
add byte [edi + 0x53], dl
inc esp
pop eax
dec ebp
dec esp
inc ebx
insb byte es:[edi], dx
popal
outsb dx, byte [esi]
jne 0x7597433d
inc ebp
insb byte es:[edi], dx
insd dword es:[edi], dx
insd dword es:[edi], dx
outsb dx, byte gs:[esi]
je 0x759742d5
nop
nop
nop
push edi
push ebx
inc esp
pop eax
dec ebp
dec esp
inc edx
jne 0x7597434a
imul ebp, dword [esp + 0x41], 0x6f46796e
insb byte es:[edi], dx
inc ecx
inc ecx
outsb dx, byte [esi]
jns 0x7597432d
outsd dx, dword [esi]
jb 0x7597433d
imul ebp, dword [esi + 0x67], 0x6c45656c
insb byte es:[edi], dx
insd dword es:[edi], dx
outsb dx, byte gs:[esi]
je 0x759742f7
nop
push edi
push ebx
inc esp
pop eax
dec ebp
dec esp
inc ecx
push ebx
imul esp, dword [edx + 0x6c], 0x676e69
nop
nop
nop
imul ebp, dword [esi + 0x67], 0x90909000
add byte [bx + si - 0x6f70], dl
add byte [eax + 0x53579090], dl
push edi
push ebx
inc esp
pop eax
dec ebp
dec esp
inc ecx
inc ebx
push 0x646c69
nop
push edi
add byte [eax + 0x55445357], dl
push ebx
inc esp
push ebp
jb 0x7597438b
inc ebp
outsb dx, byte [esi]
arpl word [edi + 0x64], bp
add byte gs:[eax + 0x53579090], dl
push ebx
inc esp
push ebp
jb 0x7597439b
inc esp
arpl word gs:[edi + 0x64], bp
add byte gs:[eax + 0x53579090], dl
push ebx
inc esp
push ebx
je 0x75974386
outsd dx, dword [esi]
outsb dx, byte [esi]
imul sp, word [edi + 0x75], 0x6172
popal
je 0x759743b6
outsd dx, dword [esi]
outsb dx, byte [esi]
dec edi
jo 0x759743c6
imul ebp, dword [edi + 0x6e], 0x57909000
push ebx
inc esp
push edx
insd dword es:[edi], dx
outsd dx, dword [esi]
jbe 0x759743c6
inc esi
imul esi, dword [edx + 0x65], 0x6c6c6177
inc ebx
push 0x6b6365
nop
push edi
push ebx
inc esp
push eax
jb 0x759743e5
arpl word [ebp + 0x73], sp
jae 0x759743c1
popal
jne 0x759743ea
je 0x75974380
push edi
push ebx
inc esp
dec esi
outsd dx, dword [esi]
je 0x759743f0
imul esp, dword [esi + 0x79], 0x7774654e
jns 0x759743d8
je 0x75974404
je 0x75974404
outsd dx, dword [esi]
jb 0x759743fb
inc ebx
push 0x65676e61
add byte [eax + 0x47445357], dl
inc edi
je 0x759743e2
outsd dx, dword [esi]
outsb dx, byte [esi]
imul sp, word [edi + 0x75], 0x6172
je 0x75974412
outsd dx, dword [esi]
outsb dx, byte [esi]
dec edi
jo 0x75974422
imul ebp, dword [edi + 0x6e], 0x57909000
push ebx
inc esp
outsb dx, byte [esi]
inc esi
add byte [eax + 0x53579090], dl
dec esp