Function at 0x4743b2
Capabilities:
Packed with generic packer

Disassembly:
nop
call 0x404742
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 0x40473c
outsd dx, dword [esi]
add byte [edx], dh
add byte [eax], al
call fcn.004769b9
call 0x40476c
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
dec eax
and al, byte [edi]
add al, ch
and byte [eax], al
add byte [eax], al
call 0x404796
inc esp
add byte [ebp], dh
jo 0x40477c
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 al, ch
push ds
and al, byte [edi]
add al, ch
sub al, byte [eax]
add byte [eax], al
call 0x4047ca
inc esp
add byte [ebp], dh
jo 0x4047a6
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 0x4047b8
bound eax, qword [eax]
jb 0x4047bc
outsd dx, dword [esi]
add byte [ebp], dh
je 0x4047c2
imul eax, dword [eax], 0x65006e
add byte [eax], al
call fcn.004769b9
pushal
push esi
xor ebx, ebx
call fcn.004745ed
cmp dword [0x405084], 0
je 0x404722
cmp dword [0x405084], 0xc
jne 0x47445a
push 5
push 0x403f70
push 0x4670fc
call dword [sym.imp.shlwapi.dll_StrCmpNW]
cmp eax, 0
je 0x474455
push 5
push 0x403f7c
push 0x4670fc
call dword [sym.imp.shlwapi.dll_StrCmpNW]
cmp eax, 0
je 0x474455
call 0x47440e
inc eax
add byte [eax], al
add byte [eax], al
push 0x4670fc
call dword [sym.imp.kernel32.dll_lstrcmpW]
cmp eax, 0
je 0x474446
call fcn.004745d3
test eax, eax
jne 0x4047f9
push 0
call fcn.0046c91b
test eax, eax
jne 0x404771
push 1
call fcn.0046c91b
mov dword [eax + 0x44], esi
jmp 0x474455
call fcn.0046ca1a
mov dword [eax + 0x44], esi
mov dword [eax + 0x48], 0xffffffff
jmp 0x474569
cmp dword [0x405084], 5
jne 0x474479
call fcn.004745d3
cmp eax, 0
jne 0x474474
push 1
call fcn.0046c8d9
jmp 0x474569
cmp dword [0x405084], 0xb
jne 0x47448e
push 1
call fcn.0046c87d
jmp 0x474569
cmp dword [0x405084], 6
jne 0x474569
cmp eax, 0xc0
jne 0x4744ac
call fcn.0046c5cc
jmp 0x474569
cmp eax, 0xc1
je 0x4744ba
cmp eax, 0xc4
jne 0x47450c
mov edi, eax
call fcn.004745ed
cmp dword [0x405084], 8
je 0x4744cf
jmp 0x404722
call fcn.004745d3
test eax, eax
jne 0x4047f9
push 0
call fcn.0046c95e
test eax, eax
jne 0x40479b
push 1
call fcn.0046c95e
mov dword [eax + 0x44], esi
mov dword [eax + 0x48], edi
cmp edi, 0xc1
jne 0x474505
call fcn.0046c78c
call fcn.0046c5cc
jmp 0x474569
cmp eax, 0x97
jne 0x474546
test ebx, ebx
je 0x404c33
mov eax, dword [0x40503c]
nop
call 0x474534
jae 0x474528
add byte gs:[eax + eax + 0x65], ch
add byte [ebx], ah
je 0x474532
add byte [eax], al
push esi
push eax
call dword [sym.imp.shlwapi.dll_StrRStrIW]
test eax, eax
je 0x404c33
jmp 0x474569
cmp eax, 0x96
jne 0x474557
add ebx, 1
call fcn.0046c750
jmp 0x474569
cmp eax, 0x98
jne 0x474569
test ebx, ebx
je 0x404c33
sub ebx, 1
cmp eax, 0xfb
jne 0x4743b6
pop esi
xor ecx, ecx
call fcn.004745ed
cmp dword [0x405084], 2
jne 0x4745aa
mov dx, word [0x4670fc]
cmp dx, 0x28
jne 0x474599
add ecx, 1
mov edi, esi
jmp 0x4745a4
cmp dx, 0x29
jne 0x4745a4
sub ecx, 1
mov edi, esi
test ecx, ecx
jl 0x4745c1
jmp 0x4745ca
cmp dword [0x405084], 1
je 0x4745bc
cmp dword [0x405084], 0xffffffff
jne 0x4745ca
cmp ecx, 0
je 0x4745c8
mov esi, edi
jmp 0x404a29
xor ecx, ecx
cmp eax, 0xfb
jne 0x474577
popal
ret