Function at 0x4c65bc
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x571238
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
mov eax, 0x124c
call fcn.0054cd40
push ebx
mov dword [ebp - 0x1248], ecx
mov dword [ebp - 0x11d0], 1
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x118c], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x1188], 0
mov dword [ebp - 0x1180], 0
mov dword [ebp - 0x1184], 0
mov dword [ebp - 0x11d8], 0
mov dword [ebp - 0x28], 0
lea ecx, [ebp - 0x24]
call fcn.004013e0
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x20]
call fcn.004013e0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x11d4]
call fcn.004013e0
mov byte [ebp - 4], 2
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x86c], 0
mov dword [ebp - 0x10], 0
mov eax, dword [ebp + 0x20]
push eax
mov ecx, dword [ebp + 0x1c]
push ecx
mov edx, dword [ebp + 0x18]
push edx
mov eax, dword [ebp + 0x14]
push eax
mov ecx, dword [ebp + 0x10]
push ecx
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x1248]
call fcn.004d3e93
test eax, eax
je 0x4c66e2
mov dword [ebp - 0x122c], 1
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x11d4]
call fcn.00560ea1
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x20]
call fcn.00560ea1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x24]
call fcn.00560ea1
mov eax, dword [ebp - 0x122c]
jmp 0x4c71b5
mov ecx, dword [ebp + 0x18]
push ecx
push 0
mov edx, dword [ebp + 0x14]
push edx
call fcn.0054bfb0
add esp, 0xc
mov eax, dword [ebp + 0xc]
push eax
push 0
lea ecx, [ebp - 0x970]
push ecx
mov edx, dword [ebp + 8]
push edx
mov ecx, dword [ebp - 0x1248]
call fcn.004c62af
test eax, eax
je 0x4c672e
lea eax, [ebp - 0x970]
push eax
push 0x5ae07c
lea ecx, [ebp - 0x24]
push ecx
call fcn.0055ea77
add esp, 0xc
jmp 0x4c676d
mov dword [ebp - 0x1230], 0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x11d4]
call fcn.00560ea1
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x20]
call fcn.00560ea1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x24]
call fcn.00560ea1
mov eax, dword [ebp - 0x1230]
jmp 0x4c71b5
mov edx, dword [ebp + 0xc]
push edx
lea eax, [ebp - 0x970]
push eax
call fcn.0054bec0
add esp, 8
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x118c], 0
cmp dword [ebp + 0x20], 0
je 0x4c6c3d
push 0x20
push 0
lea ecx, [ebp - 0x11cc]
push ecx
call fcn.0054bfb0
add esp, 0xc
mov dword [ebp - 0x118c], 0
jmp 0x4c67c9
mov edx, dword [ebp - 0x118c]
add edx, 1
mov dword [ebp - 0x118c], edx
cmp dword [ebp - 0x118c], 0x17
jge 0x4c680f
mov eax, dword [ebp - 0x118c]
imul eax, eax, 0x14
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x4764]
cmp edx, dword [eax + 0x5b8460]
jne 0x4c680d
mov eax, dword [ebp - 0x118c]
imul eax, eax, 0x14
mov ecx, dword [eax + 0x5b8458]
push ecx
lea edx, [ebp - 0x11cc]
push edx
call fcn.0054bec0
add esp, 8
jmp 0x4c680f
jmp 0x4c67ba
mov eax, dword [ebp + 0x10]
xor ecx, ecx
mov cl, byte [eax + 3]
push ecx
mov edx, dword [ebp + 0x10]
xor eax, eax
mov al, byte [edx + 2]
push eax
mov ecx, dword [ebp + 0x10]
xor edx, edx
mov dl, byte [ecx + 1]
push edx
mov eax, dword [ebp + 0x10]
xor ecx, ecx
mov cl, byte [eax]
push ecx
push str.Flash__02X_02X_02X_02X
lea edx, [ebp - 0x868]
push edx
call fcn.0054c45b
add esp, 0x18
lea eax, [ebp - 0x970]
push eax
push 0x800
lea ecx, [ebp - 0x1174]
push ecx
push 0x5d96e8
lea edx, [ebp - 0x868]
push edx
lea eax, [ebp - 0x11cc]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
jne 0x4c6887
mov ecx, dword [ebp - 0x14]
push ecx
call fcn.0054c543
add esp, 4
jmp 0x4c6c3d
lea edx, [ebp - 0x1174]
mov dword [ebp - 0x14], edx
mov eax, dword [ebp - 0x14]
push eax
call fcn.0054c3e0
add esp, 4
test eax, eax
jne 0x4c68a5
jmp 0x4c6bee
mov dword [ebp - 0x86c], 0
push 0x5ae098
mov ecx, dword [ebp - 0x14]
push ecx
call fcn.0054ccc0
add esp, 8
mov dword [ebp - 0x86c], eax
cmp dword [ebp - 0x86c], 0
jne 0x4c68e4
mov edx, dword [ebp - 0x14]
push edx
lea eax, [ebp - 0x848]
push eax
call fcn.0054bec0
add esp, 8
jmp 0x4c6907
mov ecx, dword [ebp - 0x86c]
sub ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 0x14]
mov byte [edx + ecx], 0
mov eax, dword [ebp - 0x14]
push eax
lea ecx, [ebp - 0x848]
push ecx
call fcn.0054bec0
add esp, 8
lea edx, [ebp - 0x848]
push edx
call fcn.0054c3e0
add esp, 4
mov dword [ebp - 0x1180], eax
mov dword [ebp - 0x10], 0
push 0x5ae09c
lea eax, [ebp - 0x848]
push eax
call fcn.0054ccc0
add esp, 8
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jne 0x4c6a25
push 0x800
push 0
lea ecx, [ebp - 0x828]
push ecx
call fcn.0054bfb0
add esp, 0xc
lea edx, [ebp - 0x970]
push edx
push 0x800
lea eax, [ebp - 0x828]
push eax
push 0x5d96ec
lea ecx, [ebp - 0x848]
push ecx
lea ecx, [ebp - 0x24]
call fcn.00401440
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
jne 0x4c699d
mov edx, dword [ebp - 0x86c]
add edx, 1
mov dword [ebp - 0x14], edx
jmp 0x4c6be1
mov eax, dword [ebp - 0x14]
push eax
call fcn.0054c3e0
add esp, 4
test eax, eax
jne 0x4c69be
mov ecx, dword [ebp - 0x86c]
add ecx, 1
mov dword [ebp - 0x14], ecx
jmp 0x4c6be1
lea edx, [ebp - 0x828]
push edx
call fcn.0054c3e0
add esp, 4
mov ecx, dword [ebp - 0x1c]
lea edx, [ecx + eax + 1]
cmp edx, dword [ebp + 0x18]
jge 0x4c6a20
push 0x5ae0a0
lea eax, [ebp - 0x828]
push eax
call fcn.0054ccc0
add esp, 8
test eax, eax
jne 0x4c6a20
lea ecx, [ebp - 0x828]
push ecx
mov edx, dword [ebp + 0x14]
add edx, dword [ebp - 0x1c]
push edx
call fcn.0054bed0
add esp, 8
mov eax, dword [ebp + 0x14]
add eax, dword [ebp - 0x1c]
push eax
call fcn.0054c3e0
add esp, 4
mov ecx, dword [ebp - 0x1c]
lea edx, [ecx + eax + 1]
mov dword [ebp - 0x1c], edx
jmp 0x4c6bca
push 0x20
push 0
lea eax, [ebp - 0x11f8]
push eax
call fcn.0054bfb0
add esp, 0xc
push 0x20
push 0
lea ecx, [ebp - 0x11ac]
push ecx
call fcn.0054bfb0
add esp, 0xc
mov edx, dword [ebp - 0x10]
sub edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov byte [eax + edx], 0
mov ecx, dword [ebp - 0x14]
push ecx
lea edx, [ebp - 0x11f8]
push edx
call fcn.0054bec0
add esp, 8
mov eax, dword [ebp - 0x10]
add eax, 1
push eax
lea ecx, [ebp - 0x11ac]
push ecx
call fcn.0054bec0
add esp, 8
lea edx, [ebp - 0x1184]
push edx
push 0x5ae0ac
lea eax, [ebp - 0x11f8]
push eax
call fcn.0054c6fc
add esp, 0xc
lea ecx, [ebp - 0x11d8]
push ecx
push 0x5ae0b0
lea edx, [ebp - 0x11ac]
push edx
call fcn.0054c6fc
add esp, 0xc
mov eax, dword [ebp - 0x1184]
mov dword [ebp - 0x118c], eax
jmp 0x4c6ad4
mov ecx, dword [ebp - 0x118c]
add ecx, 1
mov dword [ebp - 0x118c], ecx
mov edx, dword [ebp - 0x118c]
cmp edx, dword [ebp - 0x11d8]
jg 0x4c6bca
mov eax, dword [ebp - 0x118c]
push eax
push 0x5ae0b4
lea ecx, [ebp - 0x848]
push ecx
call fcn.0054c45b
add esp, 0xc
push 0x800
push 0
lea edx, [ebp - 0x828]
push edx
call fcn.0054bfb0
add esp, 0xc
lea eax, [ebp - 0x970]
push eax
push 0x800
lea ecx, [ebp - 0x828]
push ecx
push 0x5d96f0
lea edx, [ebp - 0x848]
push edx
lea ecx, [ebp - 0x24]
call fcn.00401440
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
jne 0x4c6b4e
jmp 0x4c6ac5
mov eax, dword [ebp - 0x14]
push eax
call fcn.0054c3e0
add esp, 4
test eax, eax
jne 0x4c6b63
jmp 0x4c6ac5
lea ecx, [ebp - 0x828]
push ecx
call fcn.0054c3e0
add esp, 4
mov edx, dword [ebp - 0x1c]
lea eax, [edx + eax + 1]
cmp eax, dword [ebp + 0x18]
jge 0x4c6bc5
push 0x5ae0b8
lea ecx, [ebp - 0x828]
push ecx
call fcn.0054ccc0
add esp, 8
test eax, eax
jne 0x4c6bc5
lea edx, [ebp - 0x828]
push edx
mov eax, dword [ebp + 0x14]
add eax, dword [ebp - 0x1c]
push eax
call fcn.0054bed0
add esp, 8
mov ecx, dword [ebp + 0x14]
add ecx, dword [ebp - 0x1c]
push ecx
call fcn.0054c3e0
add esp, 4
mov edx, dword [ebp - 0x1c]
lea eax, [edx + eax + 1]
mov dword [ebp - 0x1c], eax
jmp 0x4c6ac5
cmp dword [ebp - 0x86c], 0
jne 0x4c6bd5
jmp 0x4c6bee
mov ecx, dword [ebp - 0x86c]
add ecx, 1
mov dword [ebp - 0x14], ecx
mov edx, 1
test edx, edx
jne 0x4c6890
mov eax, dword [ebp + 0x14]
push eax
call fcn.0054c3e0
add esp, 4
test eax, eax
je 0x4c6c3d
mov dword [ebp - 0x1234], 1
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x11d4]
call fcn.00560ea1
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x20]
call fcn.00560ea1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x24]
call fcn.00560ea1
mov eax, dword [ebp - 0x1234]
jmp 0x4c71b5
push 0x800
push 0
lea ecx, [ebp - 0x1174]
push ecx
call fcn.0054bfb0
add esp, 0xc
mov dword [ebp - 0x974], 1
mov edx, 1
test edx, edx
je 0x4c7179
cmp dword [ebp - 0x974], 0
je 0x4c6ce1
mov eax, dword [ebp - 0x28]
push eax
mov ecx, dword [ebp + 0x10]
xor edx, edx
mov dl, byte [ecx + 1]
push edx
mov eax, dword [ebp + 0x10]
xor ecx, ecx
mov cl, byte [eax]
push ecx
push str._.2X__.2X__d
lea edx, [ebp - 0x20]
push edx
call fcn.0055ea77
add esp, 0x14
lea eax, [ebp - 0x970]
push eax
push 0xffffffffffffffff
lea ecx, [ebp - 0x20]
call fcn.00401440
push eax
lea ecx, [ebp - 0x24]
call fcn.00401440
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x118c], eax
cmp dword [ebp - 0x118c], 0
jge 0x4c6cce
jmp 0x4c7179
mov dword [ebp - 0x974], 0
mov ecx, dword [ebp - 0x28]
add ecx, 1
mov dword [ebp - 0x28], ecx
mov edx, dword [ebp - 0x118c]
mov dword [ebp - 0x11fc], edx
mov dword [ebp - 0x1200], 1
mov eax, dword [ebp - 0x118c]
push eax
push 0x5ae0d4
lea ecx, [ebp - 0x20]
push ecx
call fcn.0055ea77
add esp, 0xc
lea edx, [ebp - 0x970]
push edx
push 0x800
lea eax, [ebp - 0x1174]
push eax
push 0x5d96f4
lea ecx, [ebp - 0x20]
call fcn.00401440
push eax
lea ecx, [ebp - 0x24]
call fcn.00401440
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
jne 0x4c6d48
jmp 0x4c7179
lea ecx, [ebp - 0x1174]
push ecx
lea ecx, [ebp - 0x11d4]
call fcn.0056102a
lea edx, [ebp - 0x970]
push edx
push 0x800
lea eax, [ebp - 0x1174]
push eax
push 0x5d96f8
lea ecx, [ebp - 0x11d4]
call fcn.00401440
push eax
lea ecx, [ebp - 0x24]
call fcn.00401440
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
jne 0x4c6d96
jmp 0x4c7179
lea ecx, [ebp - 0x1174]
push ecx
lea ecx, [ebp - 0x20]
call fcn.0056102a
mov dword [ebp - 0x1208], 0
jmp 0x4c6dc0
mov edx, dword [ebp - 0x1208]
add edx, 1
mov dword [ebp - 0x1208], edx
cmp dword [ebp - 0x1208], 6
jge 0x4c6f29
lea ecx, [ebp - 0x1220]
call fcn.004013e0
mov byte [ebp - 4], 3
push 0x5ae0d8
lea ecx, [ebp - 0x20]
call fcn.0055e6f1
mov dword [ebp - 0x121c], eax
cmp dword [ebp - 0x121c], 0xffffffff
jne 0x4c6e46
mov dword [ebp - 0x1238], 0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x1220]
call fcn.00560ea1
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x11d4]
call fcn.00560ea1
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x20]
call fcn.00560ea1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x24]
call fcn.00560ea1
mov eax, dword [ebp - 0x1238]
jmp 0x4c71b5
mov eax, dword [ebp - 0x121c]
push eax
lea ecx, [ebp - 0x123c]
push ecx
lea ecx, [ebp - 0x20]
call fcn.0055e657
mov dword [ebp - 0x124c], eax
mov edx, dword [ebp - 0x124c]
mov dword [ebp - 0x1250], edx
mov byte [ebp - 4], 4
mov eax, dword [ebp - 0x1250]
push eax
lea ecx, [ebp - 0x1220]
call fcn.00560fda
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x123c]
call fcn.00560ea1
lea ecx, [ebp - 0x1220]
call fcn.00401400
push eax
lea ecx, [ebp - 0x1220]
call fcn.005612d1
push eax
call fcn.005353c2
add esp, 4
mov ecx, dword [ebp - 0x1208]
mov byte [ebp + ecx - 0x117c], al
lea ecx, [ebp - 0x20]
call fcn.00401400
sub eax, dword [ebp - 0x121c]
sub eax, 1
push eax
lea edx, [ebp - 0x1240]
push edx
lea ecx, [ebp - 0x20]
call fcn.0055e5db
mov dword [ebp - 0x1254], eax
mov eax, dword [ebp - 0x1254]
mov dword [ebp - 0x1258], eax
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x1258]
push ecx
lea ecx, [ebp - 0x20]
call fcn.00560fda
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x1240]
call fcn.00560ea1
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x1220]
call fcn.00560ea1
jmp 0x4c6db1
cmp dword [ebp - 0x11fc], 0
je 0x4c6f6b
mov edx, dword [ebp - 0x117c]
and edx, 0xff
mov eax, dword [ebp + 0x10]
xor ecx, ecx
mov cl, byte [eax]
cmp edx, ecx
jne 0x4c6f61
mov edx, dword [ebp - 0x117b]
and edx, 0xff
mov eax, dword [ebp + 0x10]
xor ecx, ecx
mov cl, byte [eax + 1]
cmp edx, ecx
je 0x4c6f6b
mov dword [ebp - 0x974], 1
mov dword [ebp - 0x1204], 6
mov byte [ebp - 0x1218], 0x98
mov byte [ebp - 0x1217], 0xd7
mov byte [ebp - 0x1216], 0x94
mov byte [ebp - 0x1215], 0x32
mov byte [ebp - 0x1214], 0x98
mov byte [ebp - 0x1213], 0xd5
mov byte [ebp - 0x1212], 0x94
mov byte [ebp - 0x1211], 0x32
mov byte [ebp - 0x1210], 0x98
mov byte [ebp - 0x120f], 0xd7
mov byte [ebp - 0x120e], 0x98
mov byte [ebp - 0x120d], 0xb2
mov dword [ebp - 0x120c], 0
jmp 0x4c6fe4
mov edx, dword [ebp - 0x120c]
add edx, 1
mov dword [ebp - 0x120c], edx
cmp dword [ebp - 0x120c], 3
jae 0x4c7062
mov dword [ebp - 0x1200], 1
mov dword [ebp - 0x1224], 0
jmp 0x4c7012
mov eax, dword [ebp - 0x1224]
add eax, 1
mov dword [ebp - 0x1224], eax
cmp dword [ebp - 0x1224], 4
jge 0x4c7052
mov ecx, dword [ebp + 0x10]
add ecx, dword [ebp - 0x1224]
xor edx, edx
mov dl, byte [ecx]
mov eax, dword [ebp - 0x120c]
lea ecx, [ebp + eax*4 - 0x1218]
mov eax, dword [ebp - 0x1224]
xor ebx, ebx
mov bl, byte [ecx + eax]
cmp edx, ebx
je 0x4c7050
mov dword [ebp - 0x1200], 0
jmp 0x4c7052
jmp 0x4c7003
cmp dword [ebp - 0x1200], 0
je 0x4c705d
jmp 0x4c7062
jmp 0x4c6fd5
cmp dword [ebp - 0x1200], 0
je 0x4c707f
mov dword [ebp - 0x1204], 6
mov dword [ebp - 0x1228], 0
mov dword [ebp - 0x1200], 1
mov dword [ebp - 0x1208], 0
jmp 0x4c70a4
mov ecx, dword [ebp - 0x1208]
add ecx, 1
mov dword [ebp - 0x1208], ecx
mov edx, dword [ebp - 0x1208]
cmp edx, dword [ebp - 0x1204]
jge 0x4c70e0
mov eax, dword [ebp - 0x1208]
xor ecx, ecx
mov cl, byte [ebp + eax - 0x117c]
mov edx, dword [ebp + 0x10]
add edx, dword [ebp - 0x1208]
xor eax, eax
mov al, byte [edx]
cmp ecx, eax
je 0x4c70de
mov dword [ebp - 0x1200], 0
jmp 0x4c70e0
jmp 0x4c7095
cmp dword [ebp - 0x1200], 0
je 0x4c715a
lea ecx, [ebp - 0x11d4]
call fcn.00401440
push eax
call fcn.0054c3e0
add esp, 4
mov ecx, dword [ebp - 0x1c]
lea edx, [ecx + eax + 1]
cmp edx, dword [ebp + 0x18]
jge 0x4c715a
push str.Ext_intlv4
lea ecx, [ebp - 0x11d4]
call fcn.00401440
push eax
call fcn.0054ccc0
add esp, 8
test eax, eax
jne 0x4c715a
lea ecx, [ebp - 0x11d4]
call fcn.00401440
push eax
mov eax, dword [ebp + 0x14]
add eax, dword [ebp - 0x1c]
push eax
call fcn.0054bed0
add esp, 8
mov ecx, dword [ebp + 0x14]
add ecx, dword [ebp - 0x1c]
push ecx
call fcn.0054c3e0
add esp, 4
mov edx, dword [ebp - 0x1c]
lea eax, [edx + eax + 1]
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1200], 0
je 0x4c7165
jmp 0x4c7179
mov ecx, dword [ebp - 0x118c]
add ecx, 1
mov dword [ebp - 0x118c], ecx
jmp 0x4c6c5d
mov edx, dword [ebp - 0x11d0]
mov dword [ebp - 0x1244], edx
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x11d4]
call fcn.00560ea1
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x20]
call fcn.00560ea1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x24]
call fcn.00560ea1
mov eax, dword [ebp - 0x1244]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 0x1c