Function at 0x4742de
Capabilities:
Packed with generic packer

Disassembly:
nop
call 0x404874
push ebx
add byte [ecx], bh
outsb dx, byte [esi]
add byte [eax + eax + 0x61], dh
add byte [eax], bh
and byte [eax], al
add byte gs:[edx], dh
jb 0x40486e
outsd dx, dword [esi]
add byte [edx], dh
add byte [eax], al
call fcn.00476921
call 0x40489e
push ebp
add byte [esi], ch
add byte fs:[ebp], ah
add byte [ecx], ch
outsb dx, byte [esi]
add byte [ebp], ah
add byte fs:[eax], ah
add byte [eax + eax + 0x61], ch
add byte [edx], ah
add byte gs:[eax + eax], ch
add al, ch
jle 0x4048c1
pop es
add al, ch
and byte [eax], al
add byte [eax], al
call 0x4048c8
inc esp
add byte [ebp], dh
jo 0x4048ae
insb byte es:[edi], dx
add byte [ecx], ch
arpl word [eax], ax
popal
add byte [eax + eax + 0x65], dh
add byte [eax], ah
add byte [eax + eax + 0x61], ch
add byte [edx], ah
add byte gs:[eax + eax], ch
add byte [ebp], ah
insb byte es:[edi], dx
add byte [eax], al
add al, ch
push esp
and byte [edi], al
add al, ch
sub al, byte [eax]
add byte [eax], al
call 0x4048fc
inc esp
add byte [ebp], dh
jo 0x4048d8
insb byte es:[edi], dx
add byte [ecx], ch
arpl word [eax], ax
popal
add byte [eax + eax + 0x65], dh
add byte [eax], ah
add byte [ebx], dh
jne 0x4048ea
bound eax, qword [eax]
jb 0x4048ee
outsd dx, dword [esi]
add byte [ebp], dh
je 0x4048f4
imul eax, dword [eax], 0x65006e
add byte [eax], al
call fcn.00476921
push ebp
mov ebp, esp
sub esp, 4
mov dword [ebp - 4], 0
pushal
push esi
call fcn.0047452b
cmp dword [0x405198], 0
je 0x404854
cmp dword [0x405198], 0xc
jne 0x474392
push 5
push 0x40409c
push 0x467210
call dword [sym.imp.shlwapi.dll_StrCmpNW]
cmp eax, 0
je 0x47438d
push 5
push 0x4040a8
push 0x467210
call dword [sym.imp.shlwapi.dll_StrCmpNW]
cmp eax, 0
je 0x47438d
nop
call 0x474346
inc eax
add byte [eax], al
add byte [eax], al
push 0x467210
call dword [sym.imp.kernel32.dll_lstrcmpW]
cmp eax, 0
je 0x47437e
call fcn.00474511
test eax, eax
jne 0x40492b
push 0
call fcn.0046c811
test eax, eax
jne 0x4048a3
push 1
call fcn.0046c811
mov dword [eax + 0x44], esi
jmp 0x47438d
call fcn.0046c910
mov dword [eax + 0x44], esi
mov dword [eax + 0x48], 1
jmp 0x4744a6
cmp dword [0x405198], 5
jne 0x4743b1
call fcn.00474511
cmp eax, 0
jne 0x4743ac
push 1
call fcn.0046c7cf
jmp 0x4744a6
cmp dword [0x405198], 0xb
jne 0x4743c6
push 1
call fcn.0046c773
jmp 0x4744a6
cmp dword [0x405198], 6
jne 0x4744a6
cmp eax, 0xbf
jne 0x4743e4
call fcn.0046c493
jmp 0x4744a6
cmp eax, 0xc0
je 0x4743f2
cmp eax, 0xc3
jne 0x474444
mov edi, eax
call fcn.0047452b
cmp dword [0x405198], 8
je 0x474407
jmp 0x404854
call fcn.00474511
test eax, eax
jne 0x40492b
push 0
call fcn.0046c854
test eax, eax
jne 0x4048cd
push 1
call fcn.0046c854
mov dword [eax + 0x44], esi
mov dword [eax + 0x48], edi
cmp edi, 0xc0
jne 0x47443d
call fcn.0046c653
call fcn.0046c493
jmp 0x4744a6
cmp eax, 0x97
jne 0x47447f
cmp dword [ebp - 4], 0
je 0x404d65
call 0x474468
jae 0x47445c
add byte gs:[eax + eax + 0x65], ch
add byte [ebx], ah
je 0x474466
add byte [eax], al
push esi
push dword [0x405150]
call dword [sym.imp.shlwapi.dll_StrRStrIW]
test eax, eax
je 0x404d65
jmp 0x4744a6
cmp eax, 0x96
jne 0x474491
add dword [ebp - 4], 1
call fcn.0046c617
jmp 0x4744a6
cmp eax, 0x98
jne 0x4744a6
cmp dword [ebp - 4], 0
je 0x404d65
sub dword [ebp - 4], 1
cmp eax, 0xfa
jne 0x4742ed
pop esi
xor ecx, ecx
call fcn.0047452b
cmp dword [0x405198], 2
jne 0x4744e7
mov dx, word [0x467210]
cmp dx, 0x28
jne 0x4744d6
add ecx, 1
mov edi, esi
jmp 0x4744e1
cmp dx, 0x29
jne 0x4744e1
sub ecx, 1
mov edi, esi
test ecx, ecx
jl 0x4744fe
jmp 0x474507
cmp dword [0x405198], 1
je 0x4744f9
cmp dword [0x405198], 0xffffffff
jne 0x474507
cmp ecx, 0
je 0x474505
mov esi, edi
jmp 0x404b5b
xor ecx, ecx
cmp eax, 0xfa
jne 0x4744b4
popal
leave
ret