Function at 0x4855dc
Capabilities:
Packed with generic packer

Disassembly:
lodsb al, byte [esi]
push eax
add byte [eax - 0x53ffaf54], bl
stosd dword es:[edi], eax
push eax
add byte [eax - 0x77ffb6d5], dl
mov ebp, 0xbd380048
dec eax
add byte [eax], al
sub eax, 0x2da80049
dec ecx
add byte [eax - 0x42], bl
dec eax
add ah, bh
mov ebp, 0xc740048
push edx
add byte [esp + ebp + 0x49], al
add byte [eax + 0x2c], ah
dec ecx
add byte [0x46494754], cl
inc ebp
js 0x485444
outsb dx, byte gs:[esi]
jae 0x48543d
outsd dx, dword [esi]
outsb dx, byte [esi]
nop
nop
fcom qword [ebx + 0x48]
add byte [edi], al
pop es
or eax, 0x46494754
inc ebp
js 0x485459
outsb dx, byte gs:[esi]
jae 0x485452
outsd dx, dword [esi]
outsb dx, byte [esi]
xchg esp, eax
push ebx
dec eax
add byte [ecx + edx*2], ch
dec eax
add byte [eax], al
add byte [eax], cl
inc edi
dec ecx
inc esi
dec ecx
insd dword es:[edi], dx
popal
add byte gs:[bx + si], al
adc edx, dword [edx]
loopne 0x485455
push edx
add ah, dl
adc edx, dword [edx]
cmp byte [ecx], dl
push edx
add byte [ecx + edx + 0x52], cl
add byte [eax], bl
mov edi, 0xac900048
nop
lodsb al, byte [esi]
aam 0x13
push edx
add byte [eax], bh
adc dword [edx], edx
dec esp
adc dword [edx], edx
sbb byte [edi - 0x536fffb8], bh
nop
lodsb al, byte [esi]
dec eax
add byte [eax - 0x67ffaf54], dl
nop
lodsb al, byte [esi]
push eax
invalid
cwde
lodsb al, byte [esi]
push eax
add byte [eax - 0x53ffaf54], bl
stosd dword es:[edi], eax
push eax
add byte [ecx + eax*8 + 0x48], bh
lodsb al, byte [esi]
push eax
add byte [ebx + ebp*4 - 0x3e83ffb0], ch
dec eax
add byte [ecx + eax*8], dh
dec eax
add al, dh
out dx, al
dec eax
add byte [ecx], dl
push esp
inc edi
dec ecx
inc esi
inc ebp
js 0x4854e8
outsb dx, byte gs:[esi]
jae 0x4854e1
outsd dx, dword [esi]
outsb dx, byte [esi]
dec esp
imul esi, dword [ebx + 0x74], 0x54cc9090
dec 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], cl
push ebp
dec 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 ah, dh
push esp
dec eax
add byte [eax + eax], bh
add byte [eax], al
lodsb al, byte [esi]
push eax
dec eax
add ah, cl
adc edx, dword [edx]
fcom dword [ebx]
push edx
add ah, bl
adc edx, dword [edx]
loopne 0x4854cd
push edx
add ah, dl
adc edx, dword [edx]
cmp byte [ecx], dl
push edx
add byte [ecx + edx + 0x52], cl
add byte [ecx + esi*8], ch
dec eax
add byte [eax + 9], dh
jo 0x4854d7
or dword [ecx], ecx
cwde
lodsb al, byte [esi]
push eax
add al, bh
dec ecx
add byte [eax - 0x7ffaf54], bl
adc ecx, dword [ecx]
sbb al, 3
dec ecx
add byte [eax + 0x500048bd], cl
invalid
cld
pop es
dec ecx
add byte [eax - 0x42], bl
dec eax
add ah, bh
mov ebp, 0x540c0048
inc edi
dec ecx
inc esi
push ebx
jne 0x48555e
dec ecx
insd dword es:[edi], dx
popal
nop
nop
nop
or byte [ebp + 0x48], dl
add byte [edi], al
pop es
or al, 0x54
inc edi
dec ecx
inc esi
push ebx
jne 0x485573
dec ecx
insd dword es:[edi], dx
popal
int3
push edx
add ah, bl
adc edx, dword [edx]
loopne 0x485579
push edx
add ah, dl
adc edx, dword [edx]
cmp byte [ecx], dl
push edx
add byte [ecx + edx + 0x52], cl
add byte [eax - 0x6fffaf55], al
lodsb al, byte [esi]
push eax
add byte [eax - 0x53ffaf54], bl
stosd dword es:[edi], eax
push eax
add al, ch
mov ebp, 0xbd880048
dec eax
add byte [eax], bh
mov ebp, 0x28e40048
dec ecx
add byte [eax], al
sub dword [ecx], ecx
pop eax
mov esi, 0xbdfc0048
dec eax
add byte [edx], al
add byte [ebx], dl
add ah, ah
sub byte [ecx], cl
or al, 0x53
popal
jbe 0x485612
push esp
outsd dx, dword [esi]
push ebx
je 0x485624
popal
insd dword es:[edi], dx
adc eax, 0x49290000
add byte [esi], cl
dec esp
outsd dx, dword [esi]
popal
inc esi
jb 0x485632
insd dword es:[edi], dx
push ebx
je 0x485639
popal
insd dword es:[edi], dx
or edx, dword [edi + eax*2 + 0x49]
inc esi
push esp
jb 0x485633
imul ebp, dword [ebp + 0x72], 0x55dc9090
dec eax
add byte [ebx], al
add ecx, dword [edi]
push esp
inc esp
invalid
jae 0x485653
outsd dx, dword [esi]
jae 0x485647
insb byte es:[edi], dx
dec ebp
je 0x485653
outsd dx, dword [esi]
add dword fs:[eax], eax
add byte [eax], al
add byte [ebx], al
add byte [eax], al
add al, bl
push ebp
dec eax
add byte [esi], al
insd dword es:[edi], dx
dec esi
outsd dx, dword [esi]
outsb dx, byte [esi]
or al, 0x64
insd dword es:[edi], dx
dec esi
outsd dx, dword [esi]
inc esp
imul esi, dword [ebx + 0x70], 0x6c61736f
or al, 0x64
insd dword es:[edi], dx
inc edx
popal
arpl word [ebx + 0x67], bp
jb 0x485687
jne 0x485688
or ah, byte fs:[ebp + ebp*2 + 0x50]
jb 0x485686
jbe 0x48568c
outsd dx, dword [esi]
jne 0x485699
nop
nop
je 0x485680
dec 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
dec eax
add byte [eax], al
add byte [eax], al
add byte [eax + 0x4f], cl
dec edi
dec 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 + 0x14004856], ch
add byte [eax], al
add byte [eax + 0x53], cl
dec eax
add ah, cl
adc edx, dword [edx]
fcom dword [ebx]
push edx
add ah, bl
adc edx, dword [edx]
loopne 0x485675
push edx
add ah, dl
adc edx, dword [edx]
cmp byte [ecx], dl
push edx
add byte [ecx + edx + 0x52], cl
add byte [eax - 0x6fffb6d2], bl
nop
lodsb al, byte [esi]
push eax
add byte [eax - 0x53ffaf54], bl
stosd dword es:[edi], eax
push eax
add byte [eax - 0x77ffb6d5], dl
mov ebp, 0xbd380048
nop
sub ecx, dword [ecx]
mov byte [ebp - 0x42c7ffb8], bh
dec eax
add byte [eax], bh
mov ebp, 0x31380048
cmp byte [ebp + 0x31380048], bh
dec eax
add byte [eax], bh
xor dword [ecx], ecx
push 0x58004931
mov esi, 0xbdfc0048
dec eax
add al, bh
dec ecx
cmp byte [ecx], dh
dec ecx
add byte [eax + 0x31], ch
dec ecx
add byte [eax - 0x42], bl
dec eax
add ah, bh
mov ebp, 0x2ef80048
dec ecx
add byte [esp + ebp + 0x49], al
add byte [eax], bl
dec ecx
add byte [ebx], bl
push esp
inc edi
dec ecx
inc esi
inc edi
jb 0x485711
jo 0x48571a
imul esp, dword [ebx + 0x43], 0x72746e6f
outsd dx, dword [esi]
insb byte es:[edi], dx
inc ebp
js 0x485732
outsb dx, byte gs:[esi]
jae 0x48572b
outsd dx, dword [esi]
outsb dx, byte [esi]
adc byte [edi + 0x48], 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 [edi + edx*2 + 0x48], 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 [edi + edx*2 + 0x48], al
add byte [eax], ah
add byte [eax], al
add byte [eax + 0x53], cl
dec eax
add ah, cl
adc edx, dword [edx]
fcom dword [ebx]
push edx
add ah, bl
adc edx, dword [edx]
loopne 0x485711
push edx
add ah, dl
adc edx, dword [edx]
cmp byte [ecx], dl
push edx
add byte [ecx + edx + 0x52], cl
add byte [eax - 0x6fffb6ce], ah
nop
lodsb al, byte [esi]
push eax
add byte [eax - 0x53ffaf54], bl
stosd dword es:[edi], eax
push eax
add byte [eax - 0x77ffb6d5], dl
mov ebp, 0xbd380048
dec eax
add byte [eax + 0x35], dl
dec ecx
add byte [eax + 0x58004935], dl
mov esi, 0xbdfc0048
dec eax
add ah, bl
xor cl, byte [ecx]
inc esp
sub al, 0x49
dec eax
add ah, bh
mov ebp, 0x32dc0048
dec ecx
add byte [esp + ebp + 0x49], al
add byte [eax], al
xor cl, byte [ecx]
adc dword [edi + eax*2 + 0x49], edx
inc esi
push esp
js 0x4857c1
inc ebp
js 0x4857c4
outsb dx, byte gs:[esi]
jae 0x4857bd
outsd dx, dword [esi]
outsb dx, byte [esi]
nop
nop
pop esp
push edi
dec eax
add byte [edi], al
pop es
adc dword [edi + eax*2 + 0x49], edx
inc esi
push esp
js 0x4857da
inc ebp
js 0x4857dd
outsb dx, byte gs:[esi]
jae 0x4857d6
outsd dx, dword [esi]
outsb dx, byte [esi]
adc byte [edi + 0x48], dl
add al, bl
push ebx
dec eax
add byte [eax], al
add byte [eax], cl
inc edi
dec ecx
inc esi
dec ecx
insd dword es:[edi], dx
popal
add byte gs:[bx + si], al
rcl byte [edi + 0x48]
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 + 0x484f], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax + ebx*2], al
dec eax
add byte [eax], dl
add byte [eax], al
add byte [eax + 0x53], cl
dec eax
add ah, cl
adc edx, dword [edx]
fcom dword [ebx]
push edx
add ah, bl
adc edx, dword [edx]
loopne 0x4857d1
adc edx, dword [edx]
aam 0x13
push edx
add byte [eax], bh
adc dword [edx], edx
dec esp
adc dword [edx], edx
sub byte [esi], dh
dec ecx
push edx
add ah, dl
adc edx, dword [edx]
cmp byte [ecx], dl
push edx
add byte [ecx + edx + 0x52], cl
add byte [eax], ch
dec ecx
add byte [eax - 0x67ffaf54], dl
lodsb al, byte [esi]
lodsb al, byte [esi]
push eax
add byte [eax - 0x53ffaf54], bl
stosd dword es:[edi], eax
push eax
add byte [ebx + ebp*4 + 0x2b900050], ch
dec ecx
add byte [eax + 0x380048bd], cl
mov ebp, 0x36780048
push eax
add byte [eax - 0x77ffb6d5], dl
mov ebp, 0xbd380048
sub ecx, dword [ecx]
mov byte [ebp - 0x42c7ffb8], bh
dec eax
add byte [eax + 0x36], bh
dec ecx
add byte [esi + esi - 0x41a7ffb7], ah
dec eax
add ah, bh
mov ebp, 0x36640048
dec ecx
add byte [esp + ebp + 0x49], al
add ah, cl
xor eax, 0x54140049
inc edi
dec ecx
inc esi
inc ebx
outsd dx, dword [esi]
insd dword es:[edi], dx
insd dword es:[edi], dx
outsb dx, byte gs:[esi]
je 0x485856
js 0x485887
outsb dx, byte gs:[esi]
jae 0x485880
outsd dx, dword [esi]
outsb dx, byte [esi]
nop
nop
nop
push 0x4858
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add ah, al
pop eax
dec 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 + ebx*2 + 0x180048], ah
add byte [eax], al
dec eax
push ebx
dec eax
add ah, cl
adc edx, dword [edx]
fcom dword [ebx]
push edx
add ah, bl
adc edx, dword [edx]
loopne 0x485869
push edx
add ah, dl
adc edx, dword [edx]
cmp byte [ecx], dl
push edx
add byte [ecx + edx + 0x52], cl
add byte [edx + edi + 0x49], al
add byte [eax - 0x67ffaf54], dl
nop
lodsb al, byte [esi]
push eax
add byte [eax - 0x53ffaf54], bl
stosd dword es:[edi], eax
push eax
add byte [eax - 0x77ffb6d5], dl
mov ebp, 0xbd380048
dec eax
add byte [ebx + edi + 0x49], ch
lodsb al, byte [esi]
push eax
add byte [eax - 0x53ffaf54], bl
stosd dword es:[edi], eax
push eax
add byte [eax - 0x77ffb6d5], dl
mov ebp, 0xbd380048
dec eax
add byte [ebx + edi + 0x49], ch
insb byte es:[edi], dx
cmp ecx, dword [ecx]
mov ah, 0x3b
dec ecx
add byte [ebx + edi - 0x41a7ffb7], dh
add byte [eax - 0x42], bl
dec eax
add ah, bh
mov ebp, 0x3a780048
dec ecx
add byte [eax], dh
cmp dword [ecx], ecx
call 0x7448a1d6
or al, 0x52
add byte [esp + ecx + 0x52], dh
add byte [eax], bl
push esp
inc edi
dec ecx
inc esi
inc ecx
jo 0x48591c
insb byte es:[edi], dx
imul esp, dword [ebx + 0x61], 0x6e6f6974
inc ebp
js 0x48592b
outsb dx, byte gs:[esi]
jae 0x485924
outsd dx, dword [esi]
outsb dx, byte [esi]
nop
nop
nop
les ebx, [eax + 0x48]
add byte [edi], al
pop es
sbb byte [edi + eax*2 + 0x49], dl
inc esi
inc ecx
jo 0x48593d
insb byte es:[edi], dx
imul esp, dword [ebx + 0x61], 0x6e6f6974
inc ebp
js 0x48594c
outsb dx, byte gs:[esi]
jae 0x485945
outsd dx, dword [esi]
outsb dx, byte [esi]
push 0xd8004858
push ebx
dec eax
add byte [eax], al
add byte [eax], cl
inc edi
dec ecx
inc esi
dec ecx
insd dword es:[edi], dx
popal
add byte gs:[bx + si], al
nop
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
push eax
pop ecx
dec eax
add byte [eax + eax], cl
add byte [eax], al
xor al, 0xf4
add byte [esp + esi*8], dh
push ecx
add ah, cl
adc edx, dword [edx]
fcom dword [ebx]
push edx
add ah, bl
adc edx, dword [edx]
loopne 0x485951
adc edx, dword [edx]
aam 0x13
push edx
add byte [eax], bh
push edx
add ah, dl
adc edx, dword [edx]
cmp byte [ecx], dl
push edx
add byte [ecx + edx + 0x52], cl
add ah, ch
adc dword [edx], edx
dec esp
adc dword [edx], edx
in al, dx
cmp al, 0x49
invalid