Function at 0x1001f410
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100501d6
mov eax, dword fs:[0]
push eax
sub esp, 0x138
mov eax, dword [0x100701bc]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, dword [ebp + 0x10]
push 0x5c
push str.SSCardExt.cpp
mov dword [ebp - 0x140], esi
call fcn.1002fae0
add esp, 8
test eax, eax
je 0x1001f46b
push 0x5c
push str.SSCardExt.cpp
call fcn.1002fae0
add esp, 8
inc eax
jmp 0x1001f470
mov eax, str.SSCardExt.cpp
push dword [ebp + 0xc]
push dword [ebp + 8]
push str.iGetPassword_TimeOut__d__VoiceMsg__d_
push 0x41f
push eax
push 2
call fcn.10018c90
add esp, 0x18
mov dword [ebp - 0x12c], 0
xorps xmm0, xmm0
lea ecx, [ebp - 0x13c]
movups xmmword [ebp - 0x13c], xmm0
call fcn.10014980
mov dword [ebp - 4], 0
mov dword [ebp - 0x114], 0xf
mov dword [ebp - 0x118], 0
mov byte [ebp - 0x128], 0
push 0x100
lea eax, [ebp - 0x110]
mov byte [ebp - 4], 1
push 0
push eax
call fcn.10030f30
add esp, 0xc
xor ecx, ecx
nop dword [eax + eax]
mov al, byte [ecx + 0x100725d0]
lea ecx, [ecx + 1]
mov byte [ebp + ecx - 0x111], al
test al, al
jne 0x1001f4f0
lea edi, [ebp - 0x110]
dec edi
nop dword [eax + eax]
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x1001f510
mov ax, word [0x10060a58]
lea ecx, [ebp - 0x110]
mov word [edi], ax
dec ecx
nop word [eax + eax]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x1001f530
mov eax, dword [str.config.ini]
mov dword [ecx], eax
mov eax, dword [0x10060df0]
mov dword [ecx + 4], eax
mov ax, word [0x10060df4]
mov word [ecx + 8], ax
mov al, byte [0x10060df6]
mov byte [ecx + 0xa], al
lea eax, [ebp - 0x110]
push eax
push 0x65
push 0x10062048
push str.KEYPAD
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
cmp eax, 0x65
jne 0x1001f618
mov edx, esi
lea ecx, [ebp - 0x13c]
call fcn.10022aa0
mov esi, eax
test esi, esi
jne 0x1001f6ef
mov edi, dword [ebp - 0x140]
lea eax, [ebp - 0x128]
push edi
push eax
sub esp, 0x14
lea eax, [ebp - 0x13c]
mov ecx, esp
push eax
call fcn.1001f760
mov edx, dword [ebp + 0xc]
lea ecx, [esi + 0x1e]
call fcn.10021eb0
mov esi, eax
add esp, 0x1c
test esi, esi
je 0x1001f60b
push 0x5c
push str.SSCardExt.cpp
call fcn.1002fae0
add esp, 8
test eax, eax
je 0x1001f5ec
push 0x5c
push str.SSCardExt.cpp
call fcn.1002fae0
add esp, 8
inc eax
jmp 0x1001f5f1
mov eax, str.SSCardExt.cpp
push str.KeyPad_GetPin_fail
push 0x434
push eax
push 2
call fcn.10018c90
add esp, 0x10
jmp 0x1001f6ef
mov ecx, dword [ebp - 0x138]
mov eax, dword [ecx]
call dword [eax + 0xc]
jmp 0x1001f68e
push esi
lea eax, [ebp - 0x128]
push eax
sub esp, 0x14
lea eax, [ebp - 0x13c]
mov ecx, esp
push eax
call fcn.1001f760
mov edx, dword [ebp + 0xc]
mov ecx, 0x1e
call fcn.10021eb0
mov esi, eax
add esp, 0x1c
test esi, esi
je 0x1001f688
push 0x5c
push str.SSCardExt.cpp
call fcn.1002fae0
add esp, 8
test eax, eax
je 0x1001f66c
push 0x5c
push str.SSCardExt.cpp
call fcn.1002fae0
add esp, 8
inc eax
jmp 0x1001f671
mov eax, str.SSCardExt.cpp
push str.KeyPad_GetPin_fail___
push 0x43e
push eax
push 2
call fcn.10018c90
add esp, 0x10
jmp 0x1001f6ef
mov edi, dword [ebp - 0x140]
cmp dword [ebp - 0x114], 0x10
lea eax, [ebp - 0x128]
cmovae eax, dword [ebp - 0x128]
push eax
push 0x10060f18
push edi
call fcn.100188e0
push 0x5c
push str.SSCardExt.cpp
call fcn.1002fae0
add esp, 0x14
test eax, eax
je 0x1001f6d3
push 0x5c
push str.SSCardExt.cpp
call fcn.1002fae0
add esp, 8
inc eax
jmp 0x1001f6d8
mov eax, str.SSCardExt.cpp
push str.KeyPad_GetPin_end___
push 0x444
push eax
push 2
call fcn.10018c90
add esp, 0x10
xor esi, esi
mov eax, dword [ebp - 0x114]
cmp eax, 0x10
jb 0x1001f70d
inc eax
lea ecx, [ebp - 0x128]
push eax
push dword [ebp - 0x128]
call fcn.1000e380
lea ecx, [ebp - 0x13c]
mov dword [ebp - 0x114], 0xf
mov dword [ebp - 0x118], 0
mov byte [ebp - 0x128], 0
call fcn.10014840
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1002db4b
mov esp, ebp
pop ebp
ret 0xc