Function at 0x4b1110
Capabilities:
Read .ini file

Disassembly:
push 0xffffffffffffffff
push 0x69c40c
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x11c
push ebx
push ebp
mov ebp, ecx
xor ebx, ebx
push esi
lea esi, [ebp + 0x9c]
mov dword [ebp], 0x6ad9cc
push edi
mov dword [esp + 0x24], ebp
mov dword [esi + 4], ebx
mov dword [esi], ebx
mov dword [esi + 8], ebx
mov dword [esi + 0xc], ebx
mov dword [esp + 0x134], ebx
mov dword [ebp + 0xb0], ebx
mov dword [ebp + 0xac], ebx
mov dword [ebp + 0xb4], ebx
mov dword [ebp + 0xb8], ebx
lea edi, [ebp + 0xbc]
mov dword [edi + 4], ebx
mov dword [edi], ebx
mov dword [edi + 8], ebx
mov dword [edi + 0xc], ebx
mov dword [ebp + 0xd0], ebx
mov dword [ebp + 0xcc], ebx
mov dword [ebp + 0xd4], ebx
mov dword [ebp + 0xd8], ebx
mov dword [ebp + 0xe0], ebx
mov dword [ebp + 0xdc], ebx
mov dword [ebp + 0xe4], ebx
mov dword [ebp + 0xe8], ebx
mov dword [ebp + 0xf0], ebx
mov dword [ebp + 0xec], ebx
mov dword [ebp + 0xf4], ebx
mov dword [ebp + 0xf8], ebx
lea ecx, [ebp + 0x100]
mov byte [esp + 0x134], 5
call fcn.004ddcf0
lea ecx, [ebp + 0x1a28]
mov byte [esp + 0x134], 6
call fcn.005167e0
lea ecx, [ebp + 0x1efc]
mov byte [esp + 0x134], 7
call fcn.005167e0
lea ecx, [ebp + 0x23d0]
mov byte [esp + 0x134], 8
call fcn.005167e0
lea ecx, [ebp + 0x28a4]
mov byte [esp + 0x134], 9
call fcn.005167e0
lea ecx, [ebp + 0x2d78]
mov byte [esp + 0x134], 0xa
call fcn.005167e0
lea ecx, [ebp + 0x324c]
mov byte [esp + 0x134], 0xb
call fcn.005167e0
lea ecx, [ebp + 0x3720]
mov byte [esp + 0x134], 0xc
call fcn.005167e0
mov dword [ebp + 0x3c10], ebx
mov dword [ebp + 0x3c14], ebx
mov dword [ebp + 0x3c18], ebx
mov dword [ebp + 0x3c1c], ebx
mov dword [ebp + 0x3c20], ebx
mov byte [esp + 0x134], 0xd
mov dword [ebp + 0x3c0c], ebx
mov dword [ebp + 0x3bf4], 4
push pe_nt_image_headers32
push pe_nt_image_headers32
push str.login.tga
push str.data_interface
mov ecx, esi
mov dword [ebp + 0x3bf8], ebx
call fcn.00538940
push 0x20
push 0x80
push str.passpod.tga
push str.data_interface
mov ecx, edi
call fcn.00538940
push pe_nt_image_headers32
push pe_nt_image_headers32
push str.message2.tga
push str.data_interface
lea ecx, [ebp + 0xcc]
call fcn.00538940
push 0x20
push pe_nt_image_headers32
push str.ch_cardnum.tga
push str.data_interface
lea ecx, [ebp + 0xdc]
call fcn.00538940
cmp dword [0x6f3558], 1
mov ecx, dword [0x7034d4]
jne 0x4b133f
cmp ecx, ebx
je 0x4b1338
mov eax, dword [ecx]
push 0xf
call dword [eax + 4]
test al, al
je 0x4b1338
push 0x200
push 0x200
push str.shaiyalogo01_new.TGA
jmp 0x4b136e
push 0x200
jmp 0x4b1364
cmp ecx, ebx
je 0x4b135f
mov edx, dword [ecx]
push 0xf
call dword [edx + 4]
test al, al
je 0x4b135f
push pe_nt_image_headers32
push 0x200
push str.shaiyalogo01_new.TGA
jmp 0x4b136e
push pe_nt_image_headers32
push 0x200
push str.shaiyalogo01.TGA
lea ecx, [ebp + 0xac]
push str.data_interface
call fcn.00538940
mov eax, dword [0x6f355c]
mov ecx, dword [0x6f3560]
cdq
sub eax, edx
sar eax, 1
sub eax, 0x6f
mov dword [esp + 0x1c], eax
mov eax, ecx
fild dword [esp + 0x1c]
cdq
and edx, 0x1f
add eax, edx
sar eax, 5
fstp dword [esp + 0x20]
sub ecx, eax
sub ecx, 0x114
mov dword [esp + 0x1c], ecx
mov ecx, dword [0x7034d4]
cmp ecx, ebx
fild dword [esp + 0x1c]
fstp dword [esp + 0x1c]
je 0x4b13e7
mov eax, dword [ecx]
push 0x18
call dword [eax + 4]
test al, al
je 0x4b13e7
cmp dword [0x703a9c], ebx
jle 0x4b13e7
fld dword [esp + 0x1c]
fadd dword [0x6a86cc]
fstp dword [esp + 0x1c]
fld dword [esp + 0x1c]
call fcn.005b8b18
fld dword [esp + 0x20]
mov edi, eax
call fcn.005b8b18
push 0x3f800000
push 0x3f400000
push 0x3f800000
push ebx
push 0x3f400000
push 0x3f000000
push 0x3f800000
push ebx
push 0x3f400000
push 0x3f000000
push 0x3f800000
push ebx
push 0x3f000000
push 0x3e800000
push 0x3f800000
push ebx
push 0x3e800000
push ebx
push 0x3f800000
push ebx
push 1
push 0x80
push 0x80
push str.ok_button.tga
push ebx
push 0x19
push 0x41
push 0x20
push 0x80
push 0x9f
push 0x25
mov esi, eax
push edi
push esi
lea ecx, [ebp + 0x1a28]
call fcn.00517f80
push 0x3f800000
push 0x3f400000
push 0x3f800000
push ebx
push 0x3f400000
push 0x3f000000
push 0x3f800000
push ebx
push 0x3f400000
push 0x3f000000
push 0x3f800000
push ebx
push 0x3f000000
push 0x3e800000
push 0x3f800000
push ebx
push 0x3e800000
push ebx
push 0x3f800000
push ebx
push 1
push 0x80
push 0x80
push str.cancel_button.tga
push ebx
push 0x19
push 0x41
push 0x20
push 0x80
push 0x9f
push 0x7a
push edi
push esi
lea ecx, [ebp + 0x1efc]
call fcn.00517f80
fld dword [esp + 0x1c]
fadd dword [0x6ad4a4]
call fcn.005b8b18
mov dword [esp + 0x20], eax
push 0x3f800000
push 0x3f400000
push 0x3f800000
push ebx
push 0x3f400000
push 0x3f000000
push 0x3f800000
push ebx
push 0x3f400000
push 0x3f000000
push 0x3f800000
push ebx
push 0x3f000000
push 0x3e800000
push 0x3f800000
push ebx
push 0x3e800000
push ebx
push 0x3f800000
push ebx
push 1
push 0x80
push 0x80
push str.ok_button.tga
push ebx
push 0x19
push 0x41
push 0x20
push 0x80
push 0x9f
push 0x25
push eax
push esi
lea ecx, [ebp + 0x324c]
call fcn.00517f80
push 0x3f800000
push 0x3f400000
push 0x3f800000
push ebx
push 0x3f400000
push 0x3f000000
push 0x3f800000
push ebx
push 0x3f400000
push 0x3f000000
push 0x3f800000
push ebx
push 0x3f000000
push 0x3e800000
push 0x3f800000
push ebx
push 0x3e800000
push ebx
push 0x3f800000
push ebx
mov ecx, dword [esp + 0x70]
push 1
push 0x80
push 0x80
push str.cancel_button.tga
push ebx
push 0x19
push 0x41
push 0x20
push 0x80
push 0x9f
push 0x7a
push ecx
push esi
lea ecx, [ebp + 0x3720]
call fcn.00517f80
push ebx
push ebx
push ebx
push ebx
push 0x3f800000
push ebx
push 0x3f800000
push ebx
push 0x3f800000
push ebx
push 0x3f800000
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push 3
push 0x10
push 0x10
push str.chat_check.tga
push ebx
push 0x10
push 0x10
push 0x66
push 0x93
push edi
push esi
lea ecx, [ebp + 0x23d0]
call fcn.00517e50
mov ecx, dword [0x7034d4]
cmp ecx, ebx
je 0x4b170d
mov edx, dword [ecx]
push 0x33
call dword [edx + 4]
test al, al
je 0x4b170d
push ebx
push ebx
push ebx
push ebx
push 0x3f800000
push ebx
push 0x3f800000
push ebx
push 0x3f800000
push ebx
push 0x3f800000
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push 2
push 0x10
push 0x10
push str.chat_check.tga
push ebx
push 0x10
push 0x10
push 0x80
push 0x13
push edi
push esi
lea ecx, [ebp + 0x2d78]
call fcn.00517e50
push ebx
push ebx
push ebx
push ebx
push 0x3f800000
push ebx
push 0x3f800000
push ebx
push 0x3f800000
push ebx
push 0x3f800000
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push 2
push 0x10
push 0x10
push str.chat_check.tga
push ebx
push 0x10
push 0x10
push 0x80
push 0x93
push edi
push esi
lea ecx, [ebp + 0x28a4]
mov byte [ebp + 0x2e1b], 1
call fcn.00517e50
mov byte [ebp + 0x2947], bl
mov ecx, 0x7063a0
call fcn.0041da90
xor ecx, ecx
lea eax, [ebp + 4]
mov dword [eax], ecx
mov dword [eax + 4], ecx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], ecx
mov dword [eax + 0x14], ecx
mov dword [eax + 0x18], ecx
mov dword [eax + 0x1c], ecx
mov word [eax + 0x20], cx
mov byte [eax + 0x22], cl
xor edx, edx
lea eax, [ebp + 0x27]
mov dword [eax], edx
mov dword [eax + 4], edx
mov dword [eax + 8], edx
mov dword [eax + 0xc], edx
mov dword [eax + 0x10], edx
mov dword [eax + 0x14], edx
mov dword [eax + 0x18], edx
mov dword [eax + 0x1c], edx
mov word [eax + 0x20], dx
mov byte [eax + 0x22], dl
mov ecx, 0x21ec34c
mov dword [0x703a68], ebx
call fcn.00523c40
mov ecx, dword [0x703bfc]
push 1
push ecx
mov ecx, 0x21ec34c
call fcn.00521870
mov eax, dword [0x6f3558]
cmp eax, 3
push ebx
push 1
push 0x96
jne 0x4b1796
push 0xc
jmp 0x4b17a1
cmp eax, 0xa
jne 0x4b179f
push 0x1f
jmp 0x4b17a1
push 0x13
mov ecx, 0x21ec34c
call fcn.005218a0
mov esi, dword [sym.imp.kernel32.dll_GetPrivateProfileStringA]
push 0x7034e0
push 0x104
lea edx, [esp + 0x30]
push edx
push 0x6a75d5
push str.LOGIN_ID_SAVE
push str.INTERFACE
mov byte [ebp + 0xfc], bl
call esi
test eax, eax
je 0x4b17fc
mov edi, str.TRUE
lea esi, [esp + 0x28]
mov ecx, 5
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
mov esi, dword [sym.imp.kernel32.dll_GetPrivateProfileStringA]
sete cl
mov byte [ebp + 0x2473], cl
cmp byte [ebp + 0x2473], 1
jne 0x4b18d8
push 0x7034e0
push 0x104
lea edx, [esp + 0x30]
push edx
push 0x6a75d5
push 0x6ad954
push str.LOGIN
call esi
test eax, eax
je 0x4b1855
lea eax, [esp + 0x28]
lea edx, [ebp + 4]
mov ecx, eax
sub edx, ecx
mov cl, byte [eax]
mov byte [eax + edx], cl
inc eax
cmp cl, bl
jne 0x4b1838
mov ecx, 0x21ec34c
mov byte [ebp + 0xfc], 1
call fcn.00523c40
jmp 0x4b186f
push 0x7034e0
lea edx, [esp + 0x2c]
push edx
push 0x6ad954
push str.LOGIN
call dword [sym.imp.kernel32.dll_WritePrivateProfileStringA]
mov ecx, dword [0x7034d4]
cmp ecx, ebx
je 0x4b18d8
mov eax, dword [ecx]
push 0x33
call dword [eax + 4]
test al, al
je 0x4b18d8
push 0x7034e0
push 0x104
lea ecx, [esp + 0x30]
push ecx
push 0x6a75d5
push 0x6ad948
push str.LOGIN
call esi
test eax, eax
je 0x4b18d8
mov edi, str.TRUE
lea esi, [esp + 0x28]
mov ecx, 5
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x4b18cb
mov byte [ebp + 0x2947], 1
mov byte [ebp + 0x2e1b], bl
jmp 0x4b18d8
mov byte [ebp + 0x2947], bl
mov byte [ebp + 0x2e1b], 1
mov dword [ebp + 0x3c00], ebx
mov dword [ebp + 0x3c04], ebx
mov dword [ebp + 0x3c08], ebx
mov ecx, dword [0x7034d4]
cmp ecx, ebx
je 0x4b19c5
mov eax, dword [ecx]
push 0xf
call dword [eax + 4]
test al, al
je 0x4b1972
mov dword [esp + 0x10], 0x43dc9ae1
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x14], 0x43b6ef5c
mov edx, dword [esp + 0x14]
mov dword [esp + 0x18], 0x43d20000
mov eax, dword [esp + 0x18]
mov dword [0x21f1d38], ecx
mov dword [0x21f1d3c], edx
mov dword [0x21f1d40], eax
mov dword [esp + 0x10], 0x43dc9ae1
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x14], 0x4398ef5c
mov edx, dword [esp + 0x14]
mov dword [esp + 0x18], 0x43f7af5c
mov eax, dword [esp + 0x18]
mov dword [0x21f1d44], ecx
mov dword [0x21f1d48], edx
mov dword [0x21f1d4c], eax
jmp 0x4b1a2f
mov ecx, dword [0x7034d4]
cmp ecx, ebx
je 0x4b19c5
mov edx, dword [ecx]
push 0xe
call dword [edx + 4]
test al, al
je 0x4b19c5
mov dword [esp + 0x10], 0x42d0bdf4
mov eax, dword [esp + 0x10]
mov dword [esp + 0x14], 0x420eb127
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x18], 0xc1a1ed91
mov edx, dword [esp + 0x18]
mov dword [esp + 0x10], 0x42d09604
mov dword [esp + 0x14], 0x422071aa
mov dword [esp + 0x18], 0xc123df3b
jmp 0x4b1a01
mov dword [esp + 0x10], 0x4288bdf4
mov eax, dword [esp + 0x10]
mov dword [esp + 0x14], 0xc195624e
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x18], 0x42b87b64
mov edx, dword [esp + 0x18]
mov dword [esp + 0x10], 0x42889604
mov dword [esp + 0x14], 0xc151c6a8
mov dword [esp + 0x18], 0x42ae7be7
mov dword [0x21f1d38], eax
mov eax, dword [esp + 0x10]
mov dword [0x21f1d3c], ecx
mov ecx, dword [esp + 0x14]
mov dword [0x21f1d40], edx
mov edx, dword [esp + 0x18]
mov dword [0x21f1d44], eax
mov dword [0x21f1d48], ecx
mov dword [0x21f1d4c], edx
mov dword [ebp + 0x3c24], ebx
mov dword [ebp + 0x3c2c], ebx
mov dword [ebp + 0x3c30], ebx
mov dword [ebp + 0x3c28], ebx
mov dword [ebp + 0x3ea0], ebx
mov dword [ebp + 0x3f70], ebx
mov dword [ebp + 0x3ea4], ebx
mov dword [ebp + 0x3c34], ebx
mov dword [ebp + 0x3c38], ebx
mov dword [ebp + 0x3c3c], ebx
mov dword [ebp + 0x3c40], ebx
mov dword [esp + 0x10], 0
mov edx, dword [esp + 0x10]
lea ecx, [ebp + 0x3ef8]
mov dword [ecx], edx
mov dword [esp + 0x14], 0
mov edx, dword [esp + 0x14]
mov dword [ecx + 4], edx
mov dword [esp + 0x18], 0
mov edx, dword [esp + 0x18]
mov dword [ecx + 8], edx
mov dword [esp + 0x10], 0
mov edx, dword [esp + 0x10]
lea ecx, [ebp + 0x3f04]
mov dword [ecx], edx
mov dword [esp + 0x14], 0
mov edx, dword [esp + 0x14]
mov dword [ecx + 4], edx
mov dword [esp + 0x18], 0
mov edx, dword [esp + 0x18]
mov dword [ecx + 8], edx
mov dword [esp + 0x10], 0
mov edx, dword [esp + 0x10]
lea ecx, [ebp + 0x3f10]
mov dword [ecx], edx
mov dword [esp + 0x14], 0
mov edx, dword [esp + 0x14]
mov dword [ecx + 4], edx
mov dword [esp + 0x18], 0
mov edx, dword [esp + 0x18]
mov dword [ecx + 8], edx
mov dword [esp + 0x10], 0
mov edx, dword [esp + 0x10]
lea ecx, [ebp + 0x3f1c]
mov dword [ecx], edx
mov dword [esp + 0x14], 0
mov edx, dword [esp + 0x14]
mov dword [ecx + 4], edx
mov dword [esp + 0x18], 0
mov edx, dword [esp + 0x18]
mov dword [ecx + 8], edx
mov dword [esp + 0x10], 0
mov edx, dword [esp + 0x10]
lea ecx, [ebp + 0x3f28]
mov dword [ecx], edx
mov dword [esp + 0x14], 0
mov edx, dword [esp + 0x14]
mov dword [ecx + 4], edx
mov dword [esp + 0x18], 0
mov edx, dword [esp + 0x18]
mov eax, 0x3f800000
mov dword [ecx + 8], edx
mov dword [esp + 0x10], 0
mov edx, dword [esp + 0x10]
lea ecx, [ebp + 0x3f34]
mov dword [esp + 0x14], 0
mov dword [ecx], edx
mov edx, dword [esp + 0x14]
mov dword [ebp + 0x3ea8], eax
mov dword [ebp + 0x3ed0], ebx
mov dword [ebp + 0x3eac], eax
mov dword [ebp + 0x3ed4], ebx
mov dword [ebp + 0x3eb0], eax
mov dword [ebp + 0x3ed8], ebx
mov dword [ebp + 0x3eb4], eax
mov dword [ebp + 0x3edc], ebx
mov dword [ebp + 0x3eb8], eax
mov dword [ebp + 0x3ee0], ebx
mov dword [ebp + 0x3ebc], eax
mov dword [ebp + 0x3ee4], ebx
mov dword [esp + 0x18], 0
mov dword [ecx + 4], edx
mov edx, dword [esp + 0x18]
mov dword [ecx + 8], edx
mov dword [esp + 0x10], 0
mov edx, dword [esp + 0x10]
lea ecx, [ebp + 0x3f40]
mov dword [ecx], edx
mov dword [esp + 0x14], 0
mov edx, dword [esp + 0x14]
mov dword [ecx + 4], edx
mov dword [esp + 0x18], 0
mov edx, dword [esp + 0x18]
mov dword [ecx + 8], edx
mov dword [esp + 0x10], 0
mov edx, dword [esp + 0x10]
lea ecx, [ebp + 0x3f4c]
mov dword [ecx], edx
mov dword [esp + 0x14], 0
mov edx, dword [esp + 0x14]
mov dword [ecx + 4], edx
mov dword [esp + 0x18], 0
mov edx, dword [esp + 0x18]
mov dword [ecx + 8], edx
mov dword [esp + 0x10], 0
mov edx, dword [esp + 0x10]
lea ecx, [ebp + 0x3f58]
mov dword [ecx], edx
mov dword [esp + 0x14], 0
mov edx, dword [esp + 0x14]
mov dword [ecx + 4], edx
mov dword [esp + 0x18], 0
mov edx, dword [esp + 0x18]
mov dword [ebp + 0x3ec0], eax
mov dword [ebp + 0x3ec4], eax
mov dword [ebp + 0x3ec8], eax
mov dword [ecx + 8], edx
mov dword [ebp + 0x3ecc], eax
mov dword [esp + 0x10], 0
mov ecx, dword [esp + 0x10]
lea eax, [ebp + 0x3f64]
mov dword [eax], ecx
mov dword [esp + 0x14], 0
mov edx, dword [esp + 0x14]
mov dword [esp + 0x18], 0
mov ecx, dword [esp + 0x18]
mov dword [eax + 4], edx
mov dword [ebp + 0x3ee8], ebx
mov dword [ebp + 0x3eec], ebx
mov dword [ebp + 0x3ef0], ebx
mov dword [ebp + 0x3ef4], ebx
mov dword [eax + 8], ecx
mov ecx, dword [0x7034d4]
cmp ecx, ebx
je 0x4b1da8
mov edx, dword [ecx]
push 0x18
call dword [edx + 4]
test al, al
je 0x4b1da8
push 0x378
call fcn.005b8072
add esp, 4
mov dword [esp + 0x20], eax
cmp eax, ebx
mov byte [esp + 0x134], 0xe
je 0x4b1d27
mov ecx, eax
call fcn.005084b0
mov esi, eax
jmp 0x4b1d29
xor esi, esi
mov dword [ebp + 0x3f70], esi
mov edi, dword [0x6f355c]
cmp edi, 0x400
mov byte [esp + 0x134], 0xd
jl 0x4b1d7e
mov ecx, dword [0x6f3560]
cmp ecx, 0x300
jl 0x4b1d7e
mov eax, 0x55555556
imul ecx
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [esp + 0x20], eax
fild dword [esp + 0x20]
fadd dword [0x6a8520]
call fcn.005b8b18
mov ecx, eax
mov dword [esi + 0x1d4], ecx
jmp 0x4b1d84
mov dword [esi + 0x1d4], ebx
mov eax, edi
cdq
sub eax, edx
sar eax, 1
sub eax, 0xf0
mov dword [esi + 0x1d0], eax
mov ecx, dword [0x21f1c70]
push ecx
mov ecx, dword [ebp + 0x3f70]
call fcn.00507df0
mov byte [ebp + 0x5e], bl
mov dword [ebp + 0x3f74], ebx
xor edx, edx
lea eax, [ebp + 0x4a]
mov dword [eax], edx
mov dword [eax + 4], edx
mov dword [eax + 8], edx
mov dword [eax + 0xc], edx
mov dword [eax + 0x10], edx
xor eax, eax
lea edi, [ebp + 0x5f]
mov ecx, 0xf
rep stosd dword es:[edi], eax
mov ecx, dword [esp + 0x12c]
pop edi
mov dword [ebp + 0x3f78], ebx
mov dword [ebp + 0x3f7c], ebx
mov dword [ebp + 0x3f80], ebx
mov dword [ebp + 0x3f84], ebx
mov dword [ebp + 0x3f88], ebx
mov dword [ebp + 0x3f8c], ebx
mov dword [ebp + 0x3f94], ebx
mov dword [ebp + 0x3f98], ebx
mov dword [ebp + 0x3f9c], ebx
mov dword [ebp + 0x3fa0], ebx
mov dword [ebp + 0x3f90], ebx
mov dword [ebp + 0x3fac], ebx
mov dword [ebp + 0x3fb0], ebx
pop esi
mov dword [ebp + 0x3fb4], 0x43f00000
mov dword [ebp + 0x3fb8], 0x43fa0000
mov eax, ebp
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x128
ret