Function at 0x529d0e
Capabilities:
Check if file exists
Get file attributes
Read .ini file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc70
push esi
push edi
mov dword [ebp - 0xc68], 1
mov eax, dword [str.FlashID1st]
mov dword [ebp - 0xc64], eax
mov ecx, dword [0x5cb398]
mov dword [ebp - 0xc60], ecx
mov dx, word [0x5cb39c]
mov word [ebp - 0xc5c], dx
mov al, byte [0x5cb39e]
mov byte [ebp - 0xc5a], al
xor ecx, ecx
mov dword [ebp - 0xc59], ecx
mov byte [ebp - 0xc55], cl
mov edx, dword [str.FlashID2nd]
mov dword [ebp - 0xc54], edx
mov eax, dword [0x5cb3a4]
mov dword [ebp - 0xc50], eax
mov cx, word [0x5cb3a8]
mov word [ebp - 0xc4c], cx
mov dl, byte [0x5cb3aa]
mov byte [ebp - 0xc4a], dl
xor eax, eax
mov dword [ebp - 0xc49], eax
mov byte [ebp - 0xc45], al
mov ecx, dword [str.FlashID3rd]
mov dword [ebp - 0xc44], ecx
mov edx, dword [0x5cb3b0]
mov dword [ebp - 0xc40], edx
mov ax, word [0x5cb3b4]
mov word [ebp - 0xc3c], ax
mov cl, byte [0x5cb3b6]
mov byte [ebp - 0xc3a], cl
xor edx, edx
mov dword [ebp - 0xc39], edx
mov byte [ebp - 0xc35], dl
mov eax, dword [str.FlashID4th]
mov dword [ebp - 0xc34], eax
mov ecx, dword [0x5cb3bc]
mov dword [ebp - 0xc30], ecx
mov dx, word [0x5cb3c0]
mov word [ebp - 0xc2c], dx
mov al, byte [0x5cb3c2]
mov byte [ebp - 0xc2a], al
xor ecx, ecx
mov dword [ebp - 0xc29], ecx
mov byte [ebp - 0xc25], cl
mov edx, dword [str.FlashID5th]
mov dword [ebp - 0xc24], edx
mov eax, dword [0x5cb3c8]
mov dword [ebp - 0xc20], eax
mov cx, word [0x5cb3cc]
mov word [ebp - 0xc1c], cx
mov dl, byte [0x5cb3ce]
mov byte [ebp - 0xc1a], dl
xor eax, eax
mov dword [ebp - 0xc19], eax
mov byte [ebp - 0xc15], al
mov ecx, dword [str.FlashID6th]
mov dword [ebp - 0xc14], ecx
mov edx, dword [0x5cb3d4]
mov dword [ebp - 0xc10], edx
mov ax, word [0x5cb3d8]
mov word [ebp - 0xc0c], ax
mov cl, byte [0x5cb3da]
mov byte [ebp - 0xc0a], cl
xor edx, edx
mov dword [ebp - 0xc09], edx
mov byte [ebp - 0xc05], dl
mov eax, dword [str.FlashID1st2]
mov dword [ebp - 0xc04], eax
mov ecx, dword [0x5cb3e0]
mov dword [ebp - 0xc00], ecx
mov edx, dword [0x5cb3e4]
mov dword [ebp - 0xbfc], edx
xor eax, eax
mov dword [ebp - 0xbf8], eax
mov ecx, dword [str.FlashID2nd2]
mov dword [ebp - 0xbf4], ecx
mov edx, dword [0x5cb3ec]
mov dword [ebp - 0xbf0], edx
mov eax, dword [0x5cb3f0]
mov dword [ebp - 0xbec], eax
xor ecx, ecx
mov dword [ebp - 0xbe8], ecx
mov edx, dword [str.FlashID3rd2]
mov dword [ebp - 0xbe4], edx
mov eax, dword [0x5cb3f8]
mov dword [ebp - 0xbe0], eax
mov ecx, dword [0x5cb3fc]
mov dword [ebp - 0xbdc], ecx
xor edx, edx
mov dword [ebp - 0xbd8], edx
mov eax, dword [str.FlashID4th2]
mov dword [ebp - 0xbd4], eax
mov ecx, dword [0x5cb404]
mov dword [ebp - 0xbd0], ecx
mov edx, dword [0x5cb408]
mov dword [ebp - 0xbcc], edx
xor eax, eax
mov dword [ebp - 0xbc8], eax
mov ecx, dword [str.FlashID5th2]
mov dword [ebp - 0xbc4], ecx
mov edx, dword [0x5cb410]
mov dword [ebp - 0xbc0], edx
mov eax, dword [0x5cb414]
mov dword [ebp - 0xbbc], eax
xor ecx, ecx
mov dword [ebp - 0xbb8], ecx
mov edx, dword [str.FlashID6th2]
mov dword [ebp - 0xbb4], edx
mov eax, dword [0x5cb41c]
mov dword [ebp - 0xbb0], eax
mov ecx, dword [0x5cb420]
mov dword [ebp - 0xbac], ecx
xor edx, edx
mov dword [ebp - 0xba8], edx
mov eax, dword [str.FlashID1st3]
mov dword [ebp - 0xba4], eax
mov ecx, dword [0x5cb428]
mov dword [ebp - 0xba0], ecx
mov edx, dword [0x5cb42c]
mov dword [ebp - 0xb9c], edx
xor eax, eax
mov dword [ebp - 0xb98], eax
mov ecx, dword [str.FlashID2nd3]
mov dword [ebp - 0xb94], ecx
mov edx, dword [0x5cb434]
mov dword [ebp - 0xb90], edx
mov eax, dword [0x5cb438]
mov dword [ebp - 0xb8c], eax
xor ecx, ecx
mov dword [ebp - 0xb88], ecx
mov edx, dword [str.FlashID3rd3]
mov dword [ebp - 0xb84], edx
mov eax, dword [0x5cb440]
mov dword [ebp - 0xb80], eax
mov ecx, dword [0x5cb444]
mov dword [ebp - 0xb7c], ecx
xor edx, edx
mov dword [ebp - 0xb78], edx
mov eax, dword [str.FlashID4th3]
mov dword [ebp - 0xb74], eax
mov ecx, dword [0x5cb44c]
mov dword [ebp - 0xb70], ecx
mov edx, dword [0x5cb450]
mov dword [ebp - 0xb6c], edx
xor eax, eax
mov dword [ebp - 0xb68], eax
mov ecx, dword [str.FlashID5th3]
mov dword [ebp - 0xb64], ecx
mov edx, dword [0x5cb458]
mov dword [ebp - 0xb60], edx
mov eax, dword [0x5cb45c]
mov dword [ebp - 0xb5c], eax
xor ecx, ecx
mov dword [ebp - 0xb58], ecx
mov edx, dword [str.FlashID6th3]
mov dword [ebp - 0xb54], edx
mov eax, dword [0x5cb464]
mov dword [ebp - 0xb50], eax
mov ecx, dword [0x5cb468]
mov dword [ebp - 0xb4c], ecx
xor edx, edx
mov dword [ebp - 0xb48], edx
mov eax, dword [str.FlashID1st4]
mov dword [ebp - 0xb44], eax
mov ecx, dword [0x5cb470]
mov dword [ebp - 0xb40], ecx
mov edx, dword [0x5cb474]
mov dword [ebp - 0xb3c], edx
xor eax, eax
mov dword [ebp - 0xb38], eax
mov ecx, dword [str.FlashID2nd4]
mov dword [ebp - 0xb34], ecx
mov edx, dword [0x5cb47c]
mov dword [ebp - 0xb30], edx
mov eax, dword [0x5cb480]
mov dword [ebp - 0xb2c], eax
xor ecx, ecx
mov dword [ebp - 0xb28], ecx
mov edx, dword [str.FlashID3rd4]
mov dword [ebp - 0xb24], edx
mov eax, dword [0x5cb488]
mov dword [ebp - 0xb20], eax
mov ecx, dword [0x5cb48c]
mov dword [ebp - 0xb1c], ecx
xor edx, edx
mov dword [ebp - 0xb18], edx
mov eax, dword [str.FlashID4th4]
mov dword [ebp - 0xb14], eax
mov ecx, dword [0x5cb494]
mov dword [ebp - 0xb10], ecx
mov edx, dword [0x5cb498]
mov dword [ebp - 0xb0c], edx
xor eax, eax
mov dword [ebp - 0xb08], eax
mov ecx, dword [str.FlashID5th4]
mov dword [ebp - 0xb04], ecx
mov edx, dword [0x5cb4a0]
mov dword [ebp - 0xb00], edx
mov eax, dword [0x5cb4a4]
mov dword [ebp - 0xafc], eax
xor ecx, ecx
mov dword [ebp - 0xaf8], ecx
mov edx, dword [str.FlashID6th4]
mov dword [ebp - 0xaf4], edx
mov eax, dword [0x5cb4ac]
mov dword [ebp - 0xaf0], eax
mov ecx, dword [0x5cb4b0]
mov dword [ebp - 0xaec], ecx
xor edx, edx
mov dword [ebp - 0xae8], edx
mov eax, dword [str.FlashID1st5]
mov dword [ebp - 0xae4], eax
mov ecx, dword [0x5cb4b8]
mov dword [ebp - 0xae0], ecx
mov edx, dword [0x5cb4bc]
mov dword [ebp - 0xadc], edx
xor eax, eax
mov dword [ebp - 0xad8], eax
mov ecx, dword [str.FlashID2nd5]
mov dword [ebp - 0xad4], ecx
mov edx, dword [0x5cb4c4]
mov dword [ebp - 0xad0], edx
mov eax, dword [0x5cb4c8]
mov dword [ebp - 0xacc], eax
xor ecx, ecx
mov dword [ebp - 0xac8], ecx
mov edx, dword [str.FlashID3rd5]
mov dword [ebp - 0xac4], edx
mov eax, dword [0x5cb4d0]
mov dword [ebp - 0xac0], eax
mov ecx, dword [0x5cb4d4]
mov dword [ebp - 0xabc], ecx
xor edx, edx
mov dword [ebp - 0xab8], edx
mov eax, dword [str.FlashID4th5]
mov dword [ebp - 0xab4], eax
mov ecx, dword [0x5cb4dc]
mov dword [ebp - 0xab0], ecx
mov edx, dword [0x5cb4e0]
mov dword [ebp - 0xaac], edx
xor eax, eax
mov dword [ebp - 0xaa8], eax
mov ecx, dword [str.FlashID5th5]
mov dword [ebp - 0xaa4], ecx
mov edx, dword [0x5cb4e8]
mov dword [ebp - 0xaa0], edx
mov eax, dword [0x5cb4ec]
mov dword [ebp - 0xa9c], eax
xor ecx, ecx
mov dword [ebp - 0xa98], ecx
mov edx, dword [str.FlashID6th5]
mov dword [ebp - 0xa94], edx
mov eax, dword [0x5cb4f4]
mov dword [ebp - 0xa90], eax
mov ecx, dword [0x5cb4f8]
mov dword [ebp - 0xa8c], ecx
xor edx, edx
mov dword [ebp - 0xa88], edx
mov dword [ebp - 0x78], 0x67d4c4
mov dword [ebp - 0x74], 0x67d5c3
mov dword [ebp - 0x70], 0x67d6c2
mov dword [ebp - 0x6c], 0x67d7c1
mov dword [ebp - 0x68], 0x67d8c0
mov dword [ebp - 0x64], 0x67d9bf
mov dword [ebp - 0x60], 0x67dabe
mov dword [ebp - 0x5c], 0x67dbbd
mov dword [ebp - 0x58], 0x67dcbc
mov dword [ebp - 0x54], 0x67ddbb
mov dword [ebp - 0x50], 0x67deba
mov dword [ebp - 0x4c], 0x67dfb9
mov dword [ebp - 0x48], 0x67e0b8
mov dword [ebp - 0x44], 0x67e1b7
mov dword [ebp - 0x40], 0x67e2b6
mov dword [ebp - 0x3c], 0x67e3b5
mov dword [ebp - 0x38], 0x67e4b4
mov dword [ebp - 0x34], 0x67e5b3
mov dword [ebp - 0x30], 0x67e6b2
mov dword [ebp - 0x2c], 0x67e7b1
mov dword [ebp - 0x28], 0x67e8b0
mov dword [ebp - 0x24], 0x67e9af
mov dword [ebp - 0x20], 0x67eaae
mov dword [ebp - 0x1c], 0x67ebad
mov dword [ebp - 0x18], 0x67ecac
mov dword [ebp - 0x14], 0x67edab
mov dword [ebp - 0x10], 0x67eeaa
mov dword [ebp - 0xc], 0x67efa9
mov dword [ebp - 8], 0x67f0a8
mov dword [ebp - 4], 0x67f1a7
cmp dword [ebp + 0xc], 0
je 0x52a3c5
mov edi, dword [ebp + 0xc]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
add ecx, 0xffffffff
test ecx, ecx
je 0x52a3c5
mov eax, dword [ebp + 0xc]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x52a3c5
mov edi, dword [ebp + 0xc]
lea edx, [ebp - 0x17c]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov eax, ecx
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]
jmp 0x52a3ed
mov edi, 0x6785ac
lea edx, [ebp - 0x17c]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov eax, ecx
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]
mov edi, 0x5eddc0
lea edx, [ebp - 0x280]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov eax, ecx
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]
cmp dword [ebp + 8], 0
je 0x52a6e9
mov dword [ebp - 0x284], 0
jmp 0x52a43a
mov ecx, dword [ebp - 0x284]
add ecx, 1
mov dword [ebp - 0x284], ecx
cmp dword [ebp - 0x284], 0xf2
jge 0x52a6bc
mov edx, dword [ebp - 0x284]
shl edx, 5
mov eax, dword [edx + 0x5ac070]
mov dword [ebp - 0xc6c], eax
cmp dword [ebp - 0xc6c], 9
ja case.0x52a472.3
mov ecx, dword [ebp - 0xc6c]
jmp dword [ecx*4 + 0x52a9e8]
lea edx, [ebp - 0x17c]
push edx
mov eax, dword [ebp - 0x284]
shl eax, 5
mov ecx, dword [eax + 0x5ac078]
push ecx
mov edx, dword [ebp - 0x284]
shl edx, 5
mov eax, dword [edx + 0x5ac06c]
push eax
mov ecx, dword [ebp - 0x284]
shl ecx, 5
mov edx, dword [ecx + 0x5ac068]
push edx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0x284]
shl ecx, 5
mov edx, dword [ecx + 0x5ac074]
mov dword [edx], eax
jmp case.0x52a472.3
lea eax, [ebp - 0x17c]
push eax
mov ecx, dword [ebp - 0x284]
shl ecx, 5
mov edx, dword [ecx + 0x5ac07c]
push edx
mov eax, dword [ebp - 0x284]
shl eax, 5
mov ecx, dword [eax + 0x5ac080]
push ecx
mov edx, dword [ebp - 0x284]
shl edx, 5
mov eax, dword [edx + 0x5ac084]
push eax
mov ecx, dword [ebp - 0x284]
shl ecx, 5
mov edx, dword [ecx + 0x5ac06c]
push edx
mov eax, dword [ebp - 0x284]
shl eax, 5
mov ecx, dword [eax + 0x5ac068]
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
jmp case.0x52a472.3
lea edx, [ebp - 0x17c]
push edx
push 0x800
lea eax, [ebp - 0xa84]
push eax
mov ecx, dword [ebp - 0x284]
shl ecx, 5
mov edx, dword [ecx + 0x5ac084]
push edx
mov eax, dword [ebp - 0x284]
shl eax, 5
mov ecx, dword [eax + 0x5ac06c]
push ecx
mov edx, dword [ebp - 0x284]
shl edx, 5
mov eax, dword [edx + 0x5ac068]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea ecx, [ebp - 0xa84]
push ecx
call fcn.00529529
add esp, 4
mov edx, dword [ebp - 0x284]
shl edx, 5
mov ecx, dword [edx + 0x5ac074]
mov dword [ecx], eax
jmp case.0x52a472.3
lea edx, [ebp - 0x280]
push edx
mov eax, dword [ebp - 0x284]
shl eax, 5
mov ecx, dword [eax + 0x5ac078]
push ecx
mov edx, dword [ebp - 0x284]
shl edx, 5
mov eax, dword [edx + 0x5ac06c]
push eax
mov ecx, dword [ebp - 0x284]
shl ecx, 5
mov edx, dword [ecx + 0x5ac068]
push edx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0x284]
shl ecx, 5
mov edx, dword [ecx + 0x5ac074]
mov dword [edx], eax
jmp case.0x52a472.3
lea eax, [ebp - 0x280]
push eax
mov ecx, dword [ebp - 0x284]
shl ecx, 5
mov edx, dword [ecx + 0x5ac07c]
push edx
mov eax, dword [ebp - 0x284]
shl eax, 5
mov ecx, dword [eax + 0x5ac080]
push ecx
mov edx, dword [ebp - 0x284]
shl edx, 5
mov eax, dword [edx + 0x5ac084]
push eax
mov ecx, dword [ebp - 0x284]
shl ecx, 5
mov edx, dword [ecx + 0x5ac06c]
push edx
mov eax, dword [ebp - 0x284]
shl eax, 5
mov ecx, dword [eax + 0x5ac068]
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
jmp case.0x52a472.3
lea edx, [ebp - 0x280]
push edx
push 0x800
lea eax, [ebp - 0xa84]
push eax
mov ecx, dword [ebp - 0x284]
shl ecx, 5
mov edx, dword [ecx + 0x5ac084]
push edx
mov eax, dword [ebp - 0x284]
shl eax, 5
mov ecx, dword [eax + 0x5ac06c]
push ecx
mov edx, dword [ebp - 0x284]
shl edx, 5
mov eax, dword [edx + 0x5ac068]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea ecx, [ebp - 0xa84]
push ecx
call fcn.00529529
add esp, 4
mov edx, dword [ebp - 0x284]
shl edx, 5
mov ecx, dword [edx + 0x5ac074]
mov dword [ecx], eax
jmp 0x52a42b
lea edx, [ebp - 0x17c]
push edx
push 0
push 0x5cb4fc
push 0x5cb510
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x5e91bc], eax
mov eax, dword [0x5e91bc]
mov dword [0x67f7b4], eax
jmp 0x52a9dc
mov dword [ebp - 0x284], 0
jmp 0x52a704
mov ecx, dword [ebp - 0x284]
add ecx, 1
mov dword [ebp - 0x284], ecx
cmp dword [ebp - 0x284], 0xf2
jge 0x52a940
mov edx, dword [ebp - 0x284]
shl edx, 5
mov eax, dword [edx + 0x5ac070]
mov dword [ebp - 0xc70], eax
cmp dword [ebp - 0xc70], 9
ja case.0x52a73c.3
mov ecx, dword [ebp - 0xc70]
jmp dword [ecx*4 + 0x52aa10]
mov edx, dword [ebp - 0x284]
shl edx, 5
mov eax, dword [edx + 0x5ac074]
mov ecx, dword [eax]
push ecx
push 0x5cb518
lea edx, [ebp - 0xa84]
push edx
call fcn.0054c6e3
add esp, 0xc
lea eax, [ebp - 0x17c]
push eax
lea ecx, [ebp - 0xa84]
push ecx
mov edx, dword [ebp - 0x284]
shl edx, 5
mov eax, dword [edx + 0x5ac06c]
push eax
mov ecx, dword [ebp - 0x284]
shl ecx, 5
mov edx, dword [ecx + 0x5ac068]
push edx
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
jmp case.0x52a73c.3
lea eax, [ebp - 0x17c]
push eax
mov ecx, dword [ebp - 0x284]
shl ecx, 5
mov edx, dword [ecx + 0x5ac080]
push edx
mov eax, dword [ebp - 0x284]
shl eax, 5
mov ecx, dword [eax + 0x5ac06c]
push ecx
mov edx, dword [ebp - 0x284]
shl edx, 5
mov eax, dword [edx + 0x5ac068]
push eax
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
jmp case.0x52a73c.3
mov ecx, dword [ebp - 0x284]
shl ecx, 5
mov edx, dword [ecx + 0x5ac074]
mov eax, dword [edx]
push eax
push 0x5cb51c
lea ecx, [ebp - 0xa84]
push ecx
call fcn.0054c6e3
add esp, 0xc
lea edx, [ebp - 0x17c]
push edx
lea eax, [ebp - 0xa84]
push eax
mov ecx, dword [ebp - 0x284]
shl ecx, 5
mov edx, dword [ecx + 0x5ac06c]
push edx
mov eax, dword [ebp - 0x284]
shl eax, 5
mov ecx, dword [eax + 0x5ac068]
push ecx
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
jmp case.0x52a73c.3
mov edx, dword [ebp - 0x284]
shl edx, 5
mov eax, dword [edx + 0x5ac074]
mov ecx, dword [eax]
push ecx
push 0x5cb520
lea edx, [ebp - 0xa84]
push edx
call fcn.0054c6e3
add esp, 0xc
lea eax, [ebp - 0x280]
push eax
lea ecx, [ebp - 0xa84]
push ecx
mov edx, dword [ebp - 0x284]
shl edx, 5
mov eax, dword [edx + 0x5ac06c]
push eax
mov ecx, dword [ebp - 0x284]
shl ecx, 5
mov edx, dword [ecx + 0x5ac068]
push edx
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
jmp case.0x52a73c.3
lea eax, [ebp - 0x280]
push eax
mov ecx, dword [ebp - 0x284]
shl ecx, 5
mov edx, dword [ecx + 0x5ac080]
push edx
mov eax, dword [ebp - 0x284]
shl eax, 5
mov ecx, dword [eax + 0x5ac06c]
push ecx
mov edx, dword [ebp - 0x284]
shl edx, 5
mov eax, dword [edx + 0x5ac068]
push eax
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
jmp case.0x52a73c.3
mov ecx, dword [ebp - 0x284]
shl ecx, 5
mov edx, dword [ecx + 0x5ac074]
mov eax, dword [edx]
push eax
push 0x5cb524
lea ecx, [ebp - 0xa84]
push ecx
call fcn.0054c6e3
add esp, 0xc
lea edx, [ebp - 0x280]
push edx
lea eax, [ebp - 0xa84]
push eax
mov ecx, dword [ebp - 0x284]
shl ecx, 5
mov edx, dword [ecx + 0x5ac06c]
push edx
mov eax, dword [ebp - 0x284]
shl eax, 5
mov ecx, dword [eax + 0x5ac068]
push ecx
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
jmp 0x52a6f5
mov dword [ebp - 0x284], 0
jmp 0x52a95b
mov edx, dword [ebp - 0x284]
add edx, 1
mov dword [ebp - 0x284], edx
cmp dword [ebp - 0x284], 0x1e
jae 0x52a994
lea eax, [ebp - 0x17c]
push eax
mov ecx, dword [ebp - 0x284]
mov edx, dword [ebp + ecx*4 - 0x78]
push edx
mov eax, dword [ebp - 0x284]
shl eax, 4
lea ecx, [ebp + eax - 0xc64]
push ecx
push 0x5cb528
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
jmp 0x52a94c
mov ecx, 0x200
xor eax, eax
lea edi, [ebp - 0xa84]
rep stosd dword es:[edi], eax
mov edx, dword [0x67f7b4]
push edx
push 0x5cb530
lea eax, [ebp - 0xa84]
push eax
call fcn.0054c6e3
add esp, 0xc
lea ecx, [ebp - 0x17c]
push ecx
lea edx, [ebp - 0xa84]
push edx
push str.CheckFlashIDMode
push 0x5cb548
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
mov eax, dword [ebp - 0xc68]
pop edi
pop esi
mov esp, ebp
pop ebp
ret