Function at 0x4055a0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x590
mov eax, dword [esp + 0x594]
push ebp
push esi
push edi
push 0x41a4dc
push eax
mov dword [esp + 0x1c], str.PortBase
mov dword [esp + 0x20], str.MaxUser
mov dword [esp + 0x24], str.Password
mov dword [esp + 0x28], str.LogFile
mov dword [esp + 0x2c], str.RelayServer
mov dword [esp + 0x30], str.RelayPort
mov dword [esp + 0x34], str.PublicServer
mov dword [esp + 0x38], str.NameLookups
mov dword [esp + 0x3c], str.HistoryLogOLD
mov dword [esp + 0x40], str.HistoryLogTimeOLD
mov dword [esp + 0x44], str.RealTime
mov dword [esp + 0x48], str.ScreenLog
mov dword [esp + 0x4c], str.IntroFile
mov dword [esp + 0x50], str.AutoDumpUsers
mov dword [esp + 0x54], str.DestIP
mov dword [esp + 0x58], str.SrcIP
mov dword [esp + 0x5c], str.AutoDumpSourceTime
mov dword [esp + 0x60], str.BackupFile
mov dword [esp + 0x64], str.CurrentLogInOLD
mov dword [esp + 0x68], str.CurrentLogOutOLD
mov dword [esp + 0x6c], str.CurrentLogTimeOLD
mov dword [esp + 0x70], str.TitleFormat
mov dword [esp + 0x74], str.URLFormat
mov dword [esp + 0x78], str.MetaInterval
mov dword [esp + 0x7c], str.Yport
mov dword [esp + 0x80], str.BanFile
mov dword [esp + 0x84], str.RipFile
mov dword [esp + 0x88], str.AdminPassword
mov dword [esp + 0x8c], str.ShowLastSongs
mov dword [esp + 0x90], str.CpuCount
mov dword [esp + 0x94], str.AllowRelay
mov dword [esp + 0x98], str.AllowPublicRelay
mov dword [esp + 0x9c], str.ListenerTimer
mov dword [esp + 0xa0], str.WebLog
mov dword [esp + 0xa4], str.TchLog
mov dword [esp + 0xa8], str.Sleep
mov dword [esp + 0xac], str.Include
mov dword [esp + 0xb0], str.Unique
mov dword [esp + 0xb4], str.ContentDir
mov dword [esp + 0xb8], str.W3CLog
mov dword [esp + 0xbc], str.W3CEnable
mov dword [esp + 0xc0], str.CleanXml
mov dword [esp + 0xc4], str.RIPOnly
mov dword [esp + 0xc8], str.AuthFile
mov dword [esp + 0xcc], str.AuthDupe
mov dword [esp + 0xd0], str.AuthRealm
mov dword [esp + 0xd4], str.AuthPort
mov dword [esp + 0xd8], str.AuthServer
mov dword [esp + 0xdc], str.AuthAddLine
mov dword [esp + 0xe0], str.AuthRemLine
mov dword [esp + 0xe4], str.AuthMainLine
call fcn.004118a7
add esp, 8
mov dword [esp + 0x10], eax
test eax, eax
jne 0x4057d2
push 0x428780
lea ecx, [esp + 0x18]
push str._conf__Couldnt_find__s____assuming_defaults_n
push ecx
call fcn.00411644
lea edx, [esp + 0x20]
push edx
call fcn.0040f520
add esp, 0x10
jmp 0x405fbd
push ebx
mov dword [esp + 0x10], 0
mov esi, dword [esp + 0x14]
lea eax, [esp + 0x218]
push esi
push 0x184
push eax
call fcn.004117cd
mov al, byte [esi + 0xc]
add esp, 0xc
test al, 0x10
jne 0x405fb3
lea edi, [esp + 0x218]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp byte [esp + ecx + 0x217], 0xa
je 0x405836
lea edi, [esp + 0x218]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp byte [esp + ecx + 0x217], 0xd
jne 0x405850
lea edi, [esp + 0x218]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov byte [esp + ecx + 0x217], al
jmp 0x405800
mov eax, dword [esp + 0x10]
lea edi, [esp + 0x218]
inc eax
mov dword [esp + 0x10], eax
mov al, byte [edi]
cmp al, 0x20
je 0x40586a
cmp al, 9
jne 0x40586d
inc edi
jmp 0x405860
mov al, byte [edi]
test al, al
je case.0x405953.8
cmp al, 0x3b
je case.0x405953.8
cmp al, 0x5b
je case.0x405953.8
cmp al, 0x23
je case.0x405953.8
cmp al, 0x3d
mov ebx, edi
je 0x4058a5
cmp al, 0xd
je 0x4058a5
test al, al
je 0x4058a5
mov al, byte [edi + 1]
inc edi
cmp al, 0x3d
jne 0x405895
cmp byte [edi], 0
jne 0x4058de
mov ecx, dword [esp + 0x5a4]
mov edx, dword [esp + 0x10]
push ecx
push edx
lea eax, [esp + 0x424]
push str._conf__Warning:_invalid_statement_on_line__d__in__s_n
push eax
call fcn.00411644
lea ecx, [esp + 0x42c]
push ecx
call fcn.0040f520
add esp, 0x14
jmp case.0x405953.8
mov byte [edi], 0
inc edi
xor esi, esi
lea ebp, [esp + 0x18]
mov edx, dword [ebp]
push ebx
push edx
call fcn.00418060
add esp, 8
test eax, eax
je 0x405904
inc esi
add ebp, 4
cmp esi, 0x33
jb 0x4058e8
jmp 0x405909
cmp esi, 0x33
jb 0x40593d
mov eax, dword [esp + 0x5a4]
mov ecx, dword [esp + 0x10]
push eax
push ecx
lea edx, [esp + 0x3a4]
push str._conf__Warning:_invalid_item_on_line__d__in__s_n
push edx
call fcn.00411644
lea eax, [esp + 0x3ac]
push eax
call fcn.0040f520
add esp, 0x14
jmp case.0x405953.8
cmp byte [edi], 0x20
jne 0x40594a
mov al, byte [edi + 1]
inc edi
cmp al, 0x20
je 0x405942
cmp esi, 0x32
ja case.0x405953.8
jmp dword [esi*4 + 0x4061b4]
push edi
call fcn.00411639
add esp, 4
mov word [0x41b2cc], ax
jmp case.0x405953.8
push edi
call fcn.00411639
add esp, 4
mov dword [0x41b900], eax
jmp case.0x405953.8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, str.changeme
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp case.0x405953.8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push str.sc_serv.log
mov eax, ecx
mov esi, edi
mov edi, str.sc_serv.log
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.00406280
add esp, 4
jmp case.0x405953.8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x423fd8
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp case.0x405953.8
push edi
call fcn.00411639
add esp, 4
mov word [0x4240d8], ax
jmp case.0x405953.8
push 0x20
push edi
push str.default
call fcn.004114b0
add esp, 0xc
jmp case.0x405953.8
push edi
call fcn.00411639
add esp, 4
test eax, eax
jne case.0x405953.8
mov dword [0x41b2c8], eax
jmp case.0x405953.8
push edi
call fcn.00411639
add esp, 4
test eax, eax
jne case.0x405953.8
mov dword [0x41b5e4], eax
jmp case.0x405953.8
push edi
call fcn.00411639
add esp, 4
test eax, eax
jne case.0x405953.8
mov dword [0x41b5e8], eax
jmp case.0x405953.8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push 0x4240e4
mov eax, ecx
mov esi, edi
mov edi, 0x4240e4
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.00406280
add esp, 4
jmp case.0x405953.8
push edi
call fcn.00411639
add esp, 4
mov dword [0x424308], eax
jmp case.0x405953.8
push 0x41a974
push edi
call fcn.00418060
add esp, 8
test eax, eax
je case.0x405953.8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x423818
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp case.0x405953.8
push 0x41a974
push edi
call fcn.00418060
add esp, 8
test eax, eax
je case.0x405953.8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x423798
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp case.0x405953.8
push edi
call fcn.00411639
add esp, 4
mov dword [0x41b8fc], eax
jmp case.0x405953.8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push 0x4241e8
mov edx, ecx
mov esi, edi
mov edi, 0x4241e8
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.00406280
add esp, 4
jmp case.0x405953.8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x42430c
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp case.0x405953.8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x42440c
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp case.0x405953.8
push edi
call fcn.00411639
add esp, 4
cmp eax, 0x100
mov dword [0x41b904], eax
jge case.0x405953.8
mov dword [0x41b904], 0x100
jmp case.0x405953.8
push edi
call fcn.00411639
add esp, 4
mov word [0x41b3d0], ax
jmp case.0x405953.8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push str.sc_serv.ban
mov eax, ecx
mov esi, edi
mov edi, str.sc_serv.ban
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.00406280
add esp, 4
jmp case.0x405953.8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push str.sc_serv.rip
mov edx, ecx
mov esi, edi
mov edi, str.sc_serv.rip
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.00406280
add esp, 4
jmp case.0x405953.8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x423898
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp case.0x405953.8
push edi
call fcn.00411639
add esp, 4
mov dword [0x41b3d4], eax
jmp case.0x405953.8
push edi
call fcn.00411639
add esp, 4
mov dword [0x424640], eax
jmp case.0x405953.8
push 0x41a970
push edi
call fcn.00418060
add esp, 8
test eax, eax
jne case.0x405953.8
mov dword [0x41b944], eax
jmp case.0x405953.8
push 0x41a970
push edi
call fcn.00418060
add esp, 8
test eax, eax
jne case.0x405953.8
mov dword [0x41b948], eax
jmp case.0x405953.8
push edi
call fcn.00411639
add esp, 4
mov dword [0x42464c], eax
jmp case.0x405953.8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x41b5f8
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp case.0x405953.8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x41b6f8
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp case.0x405953.8
push edi
call fcn.00411639
add esp, 4
mov dword [0x41b0a0], eax
jmp case.0x405953.8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [esp + 0x49c]
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x49c]
push ecx
call fcn.00406280
lea edx, [esp + 0x4a0]
push edx
call fcn.004055a0
add esp, 8
jmp case.0x405953.8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x41b7fc
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp case.0x405953.8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push str.._content_
mov edx, ecx
mov esi, edi
mov edi, str.._content_
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.00406280
add esp, 4
jmp case.0x405953.8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push str.sc_w3c.log
mov eax, ecx
mov esi, edi
mov edi, str.sc_w3c.log
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.00406280
add esp, 4
jmp case.0x405953.8
push 0x41a970
push edi
call fcn.00418060
add esp, 8
test eax, eax
jne case.0x405953.8
mov dword [0x41b5f4], eax
jmp case.0x405953.8
push 0x41a970
push edi
call fcn.00418060
add esp, 8
test eax, eax
jne case.0x405953.8
mov dword [0x41b950], eax
jmp case.0x405953.8
push 0x41a96c
push edi
call fcn.00418060
add esp, 8
test eax, eax
jne case.0x405953.8
mov dword [0x424664], 1
jmp case.0x405953.8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push 0x424678
mov edx, ecx
mov esi, edi
mov edi, 0x424678
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.00406280
add esp, 4
jmp case.0x405953.8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x424d78
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp case.0x405953.8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x41b95c
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp case.0x405953.8
push edi
call fcn.00411639
add esp, 4
mov dword [0x41b958], eax
jmp case.0x405953.8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x424778
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp case.0x405953.8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x424878
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp case.0x405953.8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x424978
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp case.0x405953.8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x424c78
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp case.0x405953.8
push esi
call fcn.00411750
add esp, 4
pop ebx
push str.none
push str.sc_serv.log
call fcn.00418060
add esp, 8
test eax, eax
je 0x405ffd
push str._dev_null
push str.sc_serv.log
call fcn.00418060
add esp, 8
test eax, eax
je 0x405ffd
mov edi, str.sc_serv.log
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp ecx, 1
jae 0x406007
mov dword [0x41b5ec], 0
push 0x41a954
push 0x41b5f8
call fcn.00418060
add esp, 8
test eax, eax
jne 0x406024
mov byte [0x4242ec], 1
push 0x41a950
push 0x41b6f8
call fcn.00418060
add esp, 8
test eax, eax
jne 0x40603f
mov byte [0x41b7f8], al
push 0x41a94c
push str.sc_w3c.log
call fcn.004116d0
mov ebp, dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
add esp, 8
test eax, eax
jne 0x4060da
lea eax, [esp + 0x14]
push 0x104
push eax
push 0
call ebp
lea edi, [esp + 0x14]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea eax, [esp + ecx + 0x14]
lea ecx, [esp + 0x14]
cmp eax, ecx
jb 0x406091
cmp byte [eax], 0x5c
je 0x406091
dec eax
lea edx, [esp + 0x14]
cmp eax, edx
jae 0x406083
lea edx, [eax + 1]
mov edi, str.sc_w3c.log
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [esp + 0x14]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, str.sc_w3c.log
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push 0x41a94c
push str.sc_serv.log
call fcn.004116d0
add esp, 8
test eax, eax
jne 0x40616f
lea eax, [esp + 0x14]
push 0x104
push eax
push 0
call ebp
lea edi, [esp + 0x14]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea eax, [esp + ecx + 0x14]
lea ecx, [esp + 0x14]
cmp eax, ecx
jb 0x406126
cmp byte [eax], 0x5c
je 0x406126
dec eax
lea edx, [esp + 0x14]
cmp eax, edx
jae 0x406118
lea edx, [eax + 1]
mov edi, str.sc_serv.log
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [esp + 0x14]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, str.sc_serv.log
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [0x424664]
pop edi
pop esi
cmp eax, 1
pop ebp
jne 0x406198
push str.never
push str.default
call fcn.00411644
add esp, 8
mov dword [0x529244], 0
mov eax, dword [0x41b900]
test eax, eax
jge 0x4061ab
mov dword [0x41b900], 0
add esp, 0x590
ret