Function at 0x455060
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x51826a
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x17c
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov edi, ecx
mov ebx, edx
mov dword [ebp - 0x88], 7
mov dword [ebp - 0x8c], 0
xor eax, eax
mov word [ebp - 0x9c], ax
push 1
mov eax, 0x52f22c
lea esi, [ebp - 0x9c]
call fcn.00412b10
xor eax, eax
mov dword [ebp - 4], eax
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x1c], eax
xor ecx, ecx
mov word [ebp - 0x2c], cx
push eax
mov eax, 0x528928
lea esi, [ebp - 0x2c]
call fcn.00412b10
mov byte [ebp - 4], 1
mov dword [ebp - 0xdc], 7
mov dword [ebp - 0xe0], 0
xor edx, edx
mov word [ebp - 0xf0], dx
push edx
mov eax, 0x528928
lea esi, [ebp - 0xf0]
call fcn.00412b10
mov byte [ebp - 4], 2
push 0x29
mov eax, str.SoftwareABG_Ltd.TamnunClientFunctions_
call fcn.00412b10
mov byte [ebp - 4], 3
push ebx
mov eax, esi
push eax
lea ecx, [ebp - 0xd4]
push ecx
call fcn.00413c30
mov byte [ebp - 4], 4
push 0x528e74
push ebx
lea edx, [ebp - 0x48]
push edx
call fcn.00413af0
mov byte [ebp - 4], 5
push edi
lea ecx, [ebp - 0xb8]
push ecx
mov ecx, eax
call fcn.00413df0
add esp, 0x20
mov byte [ebp - 4], 7
lea esi, [ebp - 0x48]
call fcn.004150b0
mov eax, 8
cmp dword [edi + 0x14], eax
jb 0x455171
mov edi, dword [edi]
cmp dword [ebp - 0xc0], eax
mov eax, dword [ebp - 0xd4]
jae 0x455185
lea eax, [ebp - 0xd4]
push edi
push eax
lea ecx, [ebp - 0x2c]
call fcn.00466ce0
mov ebx, eax
lea edx, [ebp - 0x10c]
push edx
lea ecx, [ebp - 0x2c]
call fcn.004ee570
mov byte [ebp - 4], 8
push 1
lea ecx, [ebp - 0x48]
push ecx
mov edx, eax
call fcn.004ef3e0
add esp, 0x14
mov byte [ebp - 4], 9
mov edi, eax
lea esi, [ebp - 0x2c]
call fcn.00411aa0
mov byte [ebp - 4], 8
lea esi, [ebp - 0x48]
call fcn.004150b0
mov byte [ebp - 4], 7
lea esi, [ebp - 0x10c]
call fcn.004150b0
test ebx, ebx
je 0x4551f4
lea edx, [ebp - 0x2c]
push edx
mov eax, 0x528928
call fcn.0040fb40
jmp 0x4552e1
mov esi, str.Y_NS
lea ecx, [ebp - 0x2c]
call fcn.00447fc0
test al, al
je 0x4552e1
mov esi, 0x535168
lea ecx, [ebp - 0x2c]
call fcn.00447fc0
test al, al
je 0x4552e1
mov esi, 0x537820
lea ecx, [ebp - 0x2c]
call fcn.00447fc0
test al, al
je 0x4552e1
mov esi, 0x53516c
lea ecx, [ebp - 0x2c]
call fcn.00447fc0
test al, al
je 0x4552e1
mov esi, 0x535164
lea ecx, [ebp - 0x2c]
call fcn.00447fc0
test al, al
je 0x4552e1
lea ecx, [ebp - 0x9c]
lea esi, [ebp - 0x64]
call fcn.0040fab0
mov bl, 0xa
mov byte [ebp - 4], bl
lea eax, [ebp - 0x2c]
push eax
push 0x52e510
lea ecx, [ebp - 0x48]
push ecx
call fcn.00414000
add esp, 0xc
mov byte [ebp - 4], 0xb
push 0
push eax
or eax, 0xffffffff
call fcn.00412830
mov byte [ebp - 4], bl
lea esi, [ebp - 0x48]
call fcn.004150b0
lea edx, [ebp - 0x64]
push edx
mov eax, str.____is_not_Y_N_W_S___in_Registry
call fcn.0040fb70
push 0
push 1
lea eax, [ebp - 0x64]
push eax
push 0x360
push str.NameFiltering::CheckOneOutputMode
call fcn.0044d970
add esp, 0x14
lea ecx, [ebp - 0x2c]
push ecx
mov eax, 0x528928
call fcn.0040fb40
mov byte [ebp - 4], 7
lea esi, [ebp - 0x64]
call fcn.004150b0
cmp dword [ebp - 0x1c], 0
jne 0x45571f
lea edx, [ebp - 0x80]
push edx
call fcn.00461880
mov byte [ebp - 4], 0xc
push 1
lea eax, [ebp - 0x48]
push eax
lea edx, [ebp - 0x80]
call fcn.004ef450
add esp, 0xc
mov byte [ebp - 4], 0xd
mov esi, 0x52b45c
mov ecx, eax
call fcn.00447fc0
mov bl, al
mov byte [ebp - 4], 0xc
lea esi, [ebp - 0x48]
call fcn.004150b0
test bl, bl
je 0x455339
lea ecx, [ebp - 0x80]
push ecx
mov eax, 0x52b45c
call fcn.0040fb70
push str.AutoReg.ini
lea edx, [ebp - 0x80]
push edx
lea eax, [ebp - 0x128]
push eax
call fcn.00413af0
add esp, 0xc
mov byte [ebp - 4], 0xe
mov eax, 8
cmp dword [ebp - 0x114], eax
mov ecx, dword [ebp - 0x128]
jae 0x45536e
lea ecx, [ebp - 0x128]
cmp dword [ebp - 0xa4], eax
mov eax, dword [ebp - 0xb8]
jae 0x455382
lea eax, [ebp - 0xb8]
push ecx
push 0x10
lea ecx, [ebp - 0x188]
push ecx
push 0x528928
push eax
push 0x5351c4
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea edx, [ebp - 0x2c]
push edx
lea eax, [ebp - 0x188]
call fcn.0040fb40
lea eax, [ebp - 0x10c]
push eax
lea ecx, [ebp - 0x2c]
call fcn.004ee570
mov bl, 0xf
mov byte [ebp - 4], bl
push 1
lea ecx, [ebp - 0x48]
push ecx
mov edx, eax
call fcn.004ef3e0
add esp, 0xc
mov byte [ebp - 4], 0x10
mov edi, eax
lea esi, [ebp - 0x2c]
call fcn.00411aa0
mov byte [ebp - 4], bl
lea esi, [ebp - 0x48]
call fcn.004150b0
mov byte [ebp - 4], 0xe
lea esi, [ebp - 0x10c]
call fcn.004150b0
cmp dword [ebp - 0x1c], 0
je 0x4554ef
mov esi, str.Y_NS
lea ecx, [ebp - 0x2c]
call fcn.00447fc0
test al, al
je 0x4554ef
mov esi, 0x535168
lea ecx, [ebp - 0x2c]
call fcn.00447fc0
test al, al
je 0x4554ef
mov esi, 0x537820
lea ecx, [ebp - 0x2c]
call fcn.00447fc0
test al, al
je 0x4554ef
mov esi, 0x53516c
lea ecx, [ebp - 0x2c]
call fcn.00447fc0
test al, al
je 0x4554ef
mov esi, 0x535164
lea ecx, [ebp - 0x2c]
call fcn.00447fc0
test al, al
je 0x4554ef
lea ecx, [ebp - 0x9c]
lea esi, [ebp - 0x64]
call fcn.0040fab0
mov bl, 0x11
mov byte [ebp - 4], bl
lea edx, [ebp - 0x2c]
push edx
push 0x52e510
lea eax, [ebp - 0x48]
push eax
call fcn.00414000
add esp, 0xc
mov byte [ebp - 4], 0x12
push 0
push eax
or eax, 0xffffffff
call fcn.00412830
mov byte [ebp - 4], bl
lea esi, [ebp - 0x48]
call fcn.004150b0
lea ecx, [ebp - 0x64]
push ecx
mov eax, str.____is_not_Y_N_W_S__._in_AutoReg
call fcn.0040fb70
push 0
push 1
lea edx, [ebp - 0x64]
push edx
push 0x375
push str.NameFiltering::CheckOneOutputMode
call fcn.0044d970
add esp, 0x14
lea eax, [ebp - 0x2c]
push eax
mov eax, 0x528928
call fcn.0040fb40
mov byte [ebp - 4], 0xe
lea esi, [ebp - 0x64]
call fcn.004150b0
mov byte [ebp - 4], 0xc
lea esi, [ebp - 0x128]
call fcn.004150b0
mov byte [ebp - 4], 7
lea esi, [ebp - 0x80]
call fcn.004150b0
cmp dword [ebp - 0x1c], 0
jne 0x45571f
lea ecx, [ebp - 0x64]
push ecx
call fcn.00461880
mov byte [ebp - 4], 0x13
push 1
lea edx, [ebp - 0x48]
push edx
lea edx, [ebp - 0x64]
call fcn.004ef450
add esp, 0xc
mov byte [ebp - 4], 0x14
mov esi, 0x52b45c
mov ecx, eax
call fcn.00447fc0
mov bl, al
mov byte [ebp - 4], 0x13
lea esi, [ebp - 0x48]
call fcn.004150b0
test bl, bl
je 0x455562
lea eax, [ebp - 0x64]
push eax
mov eax, 0x52b45c
call fcn.0040fb70
lea ecx, [ebp - 0x64]
push ecx
mov eax, str.Filters.ini
call fcn.0040fb70
mov eax, 8
cmp dword [ebp - 0x50], eax
mov ecx, dword [ebp - 0x64]
jae 0x455580
lea ecx, [ebp - 0x64]
cmp dword [ebp - 0xa4], eax
mov eax, dword [ebp - 0xb8]
jae 0x455594
lea eax, [ebp - 0xb8]
push ecx
push 0x10
lea edx, [ebp - 0x188]
push edx
push 0x528928
push eax
push 0x5351c4
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x188]
call fcn.0040fb40
lea ecx, [ebp - 0x10c]
push ecx
lea ecx, [ebp - 0x2c]
call fcn.004ee570
mov bl, 0x15
mov byte [ebp - 4], bl
push 1
lea edx, [ebp - 0x48]
push edx
mov edx, eax
call fcn.004ef3e0
add esp, 0xc
mov byte [ebp - 4], 0x16
mov edi, eax
lea esi, [ebp - 0x2c]
call fcn.00411aa0
mov byte [ebp - 4], bl
lea esi, [ebp - 0x48]
call fcn.004150b0
mov byte [ebp - 4], 0x13
lea esi, [ebp - 0x10c]
call fcn.004150b0
lea ecx, [ebp - 0x2c]
cmp dword [ebp - 0x1c], 0
jne 0x455626
push 0
mov eax, dword [ebp + 8]
push eax
or eax, 0xffffffff
call fcn.00411b10
jmp 0x455713
mov esi, str.Y_NS
call fcn.00447fc0
test al, al
je 0x455713
mov esi, 0x535168
lea ecx, [ebp - 0x2c]
call fcn.00447fc0
test al, al
je 0x455713
mov esi, 0x537820
lea ecx, [ebp - 0x2c]
call fcn.00447fc0
test al, al
je 0x455713
mov esi, 0x53516c
lea ecx, [ebp - 0x2c]
call fcn.00447fc0
test al, al
je 0x455713
mov esi, 0x535164
lea ecx, [ebp - 0x2c]
call fcn.00447fc0
test al, al
je 0x455713
lea ecx, [ebp - 0x9c]
lea esi, [ebp - 0x80]
call fcn.0040fab0
mov bl, 0x17
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x2c]
push ecx
push 0x52e510
lea edx, [ebp - 0x48]
push edx
call fcn.00414000
add esp, 0xc
mov byte [ebp - 4], 0x18
push 0
push eax
or eax, 0xffffffff
call fcn.00412830
mov byte [ebp - 4], bl
lea esi, [ebp - 0x48]
call fcn.004150b0
lea eax, [ebp - 0x80]
push eax
mov eax, str.____is_not_Y_N_W_S__._in_the_INI
call fcn.0040fb70
push 0
push 1
lea ecx, [ebp - 0x80]
push ecx
push 0x38d
push str.NameFiltering::CheckOneOutputMode
call fcn.0044d970
add esp, 0x14
push 0
mov edx, dword [ebp + 8]
push edx
or eax, 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00411b10
mov byte [ebp - 4], 0x13
lea esi, [ebp - 0x80]
call fcn.004150b0
mov byte [ebp - 4], 7
lea esi, [ebp - 0x64]
call fcn.004150b0
cmp dword [ebp - 0x18], 8
mov eax, dword [ebp - 0x2c]
jae 0x45572b
lea eax, [ebp - 0x2c]
movzx eax, word [eax]
cmp eax, 0x59
je 0x4558bb
cmp eax, 0x43
je 0x4558bb
cmp eax, 0x4e
je 0x45585d
cmp eax, 0x2d
je 0x45585d
cmp eax, 0x53
jne 0x4557bc
call fcn.00462f50
mov bl, al
mov byte [ebp - 4], 4
lea esi, [ebp - 0xb8]
call fcn.004150b0
mov byte [ebp - 4], 3
lea esi, [ebp - 0xd4]
call fcn.004150b0
mov byte [ebp - 4], 1
lea esi, [ebp - 0xf0]
call fcn.004150b0
mov byte [ebp - 4], 0
lea esi, [ebp - 0x2c]
call fcn.004150b0
mov dword [ebp - 4], 0xffffffff
lea esi, [ebp - 0x9c]
call fcn.004150b0
mov al, bl
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 0x57
jne 0x4557cd
call fcn.00462f50
test al, al
sete bl
jmp 0x45575e
lea ecx, [ebp - 0x9c]
lea esi, [ebp - 0x80]
call fcn.0040fab0
mov byte [ebp - 4], 0x19
lea eax, [ebp - 0x2c]
push eax
push 0x537978
lea ecx, [ebp - 0x10c]
push ecx
call fcn.00414000
mov bl, 0x1a
mov byte [ebp - 4], bl
push str.___t_Values_must_include_Y_N_W_S___only____
push eax
lea edx, [ebp - 0x48]
push edx
call fcn.004139a0
add esp, 0x18
mov byte [ebp - 4], 0x1b
push 0
push eax
or eax, 0xffffffff
call fcn.00412830
mov byte [ebp - 4], bl
lea esi, [ebp - 0x48]
call fcn.004150b0
mov byte [ebp - 4], 0x19
lea esi, [ebp - 0x10c]
call fcn.004150b0
push 0
push 0x20000000
lea eax, [ebp - 0x80]
push eax
push 0x3a3
push str.NameFiltering::CheckOneOutputMode
call fcn.0044d970
add esp, 0x14
mov byte [ebp - 4], 7
lea esi, [ebp - 0x80]
call fcn.004150b0
mov byte [ebp - 4], 4
lea esi, [ebp - 0xb8]
call fcn.004150b0
mov byte [ebp - 4], 3
lea esi, [ebp - 0xd4]
call fcn.004150b0
mov byte [ebp - 4], 1
lea esi, [ebp - 0xf0]
call fcn.004150b0
mov byte [ebp - 4], 0
lea esi, [ebp - 0x2c]
call fcn.004150b0
mov dword [ebp - 4], 0xffffffff
lea esi, [ebp - 0x9c]
call fcn.004150b0
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov byte [ebp - 4], 4
lea esi, [ebp - 0xb8]
call fcn.004150b0
mov byte [ebp - 4], 3
lea esi, [ebp - 0xd4]
call fcn.004150b0
mov byte [ebp - 4], 1
lea esi, [ebp - 0xf0]
call fcn.004150b0
mov byte [ebp - 4], 0
lea esi, [ebp - 0x2c]
call fcn.004150b0
mov dword [ebp - 4], 0xffffffff
lea esi, [ebp - 0x9c]
call fcn.004150b0
mov al, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret