Function at 0x418db0
Capabilities:
Check if file exists
Create directory
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x587452
mov eax, dword fs:[0]
push eax
sub esp, 0x5dc
mov eax, dword [0x5e8e00]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x5c4], ecx
mov ecx, dword [ebp - 0x5c4]
call fcn.00455ade
push 0
mov ecx, dword [ebp - 0x5c4]
call fcn.00432bc0
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0
je 0x418e74
lea ecx, [ebp - 0x558]
call fcn.00401b70
mov dword [ebp - 4], 0
push 0x65
lea ecx, [ebp - 0x558]
call fcn.00403550
mov dword [ebp - 0x55c], eax
lea ecx, [ebp - 0x558]
call fcn.004116e0
movzx eax, al
test eax, eax
jne 0x418e62
push 0
push 0
push 0x800
mov ecx, dword [ebp - 0x54]
call fcn.00433060
lea ecx, [ebp - 0x558]
call fcn.00401500
push eax
push 0x10
push 0
mov ecx, dword [ebp - 0x54]
call fcn.00433060
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x558]
call fcn.00401a00
lea ecx, [ebp - 0x58]
call fcn.00401b70
mov dword [ebp - 4], 1
push 0x32
lea ecx, [ebp - 0x58]
call fcn.00401940
push eax
lea ecx, [ebp - 0x594]
push ecx
call fcn.00414b80
add esp, 8
lea ecx, [ebp - 0x594]
call fcn.00401a00
push 0xffffffffffffffff
lea ecx, [ebp - 0x58]
call fcn.00403170
lea ecx, [ebp - 0x58]
call fcn.00401500
push eax
mov ecx, dword [ebp - 0x5c4]
call fcn.0045e605
push 1
mov edx, dword [ebp - 0x5c4]
mov eax, dword [edx + 0x5454]
push eax
mov ecx, dword [ebp - 0x5c4]
call fcn.00432b90
push 0
mov ecx, dword [ebp - 0x5c4]
mov edx, dword [ecx + 0x5454]
push edx
mov ecx, dword [ebp - 0x5c4]
call fcn.00432b90
lea eax, [ebp - 0x54c]
push eax
call fcn.0043b790
add esp, 4
lea ecx, [ebp - 0x54c]
push ecx
lea edx, [ebp - 0x84]
push edx
call fcn.0040d680
add esp, 8
mov byte [ebp - 0x1fc], 0
push 0x3f
push 0
lea eax, [ebp - 0x1fb]
push eax
call fcn.0055b7e0
add esp, 0xc
push 0x40
push 0
lea ecx, [ebp - 0x1fc]
push ecx
call fcn.0055b7e0
add esp, 0xc
lea edx, [ebp - 0x84]
push edx
push str.start__Y__m__d__H:_M:_S
push 0x40
lea eax, [ebp - 0x1fc]
push eax
call fcn.0055737c
add esp, 0x10
lea ecx, [ebp - 0x1fc]
push ecx
lea ecx, [ebp - 0x43c]
call fcn.00409110
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x43c]
call fcn.00409280
push eax
mov ecx, dword [ebp - 0x5c4]
add ecx, 0x58b8
call fcn.00403820
mov byte [ebp - 0x3fc], 0
push 0x1ff
push 0
lea edx, [ebp - 0x3fb]
push edx
call fcn.0055b7e0
add esp, 0xc
push 0x200
push 0
lea eax, [ebp - 0x3fc]
push eax
call fcn.0055b7e0
add esp, 0xc
push 0x200
lea ecx, [ebp - 0x3fc]
push ecx
call fcn.0043b7b0
add esp, 8
lea edx, [ebp - 0x3fc]
push edx
push str._sReport.INI
mov eax, dword [ebp - 0x5c4]
add eax, 0x58bc
push eax
call fcn.004014d0
add esp, 0xc
mov dword [ebp - 0x554], 0
push 0x5b8d0c
push 0
mov ecx, dword [ebp - 0x5c4]
add ecx, 0x58bc
call fcn.00401940
push eax
call fcn.00558a0b
add esp, 8
mov dword [ebp - 0x554], eax
cmp dword [ebp - 0x554], 0
je 0x41904e
mov ecx, dword [ebp - 0x554]
push ecx
call fcn.00557d38
add esp, 4
jmp 0x41907b
push 0x5b8d10
call fcn.00426fe0
add esp, 4
lea edx, [ebp - 0x3fc]
push edx
push str._sReport_temBAK.INI
mov eax, dword [ebp - 0x5c4]
add eax, 0x58bc
push eax
call fcn.004014d0
add esp, 0xc
mov ecx, dword [ebp - 0x5c4]
add ecx, 0x58bc
call fcn.00401500
push eax
push 0
push 0x5b8d4c
mov ecx, dword [ebp - 0x5c4]
add ecx, 0x58b8
call fcn.00401500
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x1bc], eax
mov ecx, dword [ebp - 0x5c4]
add ecx, 0x58bc
call fcn.00401500
push eax
push 0
push 0x5b8d58
mov ecx, dword [ebp - 0x5c4]
add ecx, 0x58b8
call fcn.00401500
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x550], eax
mov ecx, dword [ebp - 0x5c4]
add ecx, 0x58bc
call fcn.00401500
push eax
push 0
push 0x5b8d64
mov ecx, dword [ebp - 0x5c4]
add ecx, 0x58b8
call fcn.00401500
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x1b8], eax
mov ecx, dword [ebp - 0x5c4]
add ecx, 0x58bc
call fcn.00401500
push eax
push 0
push 0x5b8d74
mov ecx, dword [ebp - 0x5c4]
add ecx, 0x58b8
call fcn.00401500
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x1b4], eax
mov byte [ebp - 0x1b0], 0
xor ecx, ecx
mov dword [ebp - 0x1af], ecx
mov dword [ebp - 0x1ab], ecx
mov dword [ebp - 0x1a7], ecx
mov dword [ebp - 0x1a3], ecx
mov dword [ebp - 0x19f], ecx
mov dword [ebp - 0x19b], ecx
mov dword [ebp - 0x197], ecx
mov word [ebp - 0x193], cx
mov byte [ebp - 0x191], cl
xor edx, edx
mov dword [ebp - 0x1b0], edx
mov dword [ebp - 0x1ac], edx
mov dword [ebp - 0x1a8], edx
mov dword [ebp - 0x1a4], edx
mov dword [ebp - 0x1a0], edx
mov dword [ebp - 0x19c], edx
mov dword [ebp - 0x198], edx
mov dword [ebp - 0x194], edx
mov eax, dword [ebp - 0x1bc]
push eax
push 0x5b8d88
lea ecx, [ebp - 0x1b0]
push ecx
call fcn.00555824
add esp, 0xc
mov ecx, dword [ebp - 0x5c4]
add ecx, 0x58bc
call fcn.00401500
push eax
lea edx, [ebp - 0x1b0]
push edx
push 0x5b8d8c
mov ecx, dword [ebp - 0x5c4]
add ecx, 0x58b8
call fcn.00401500
push eax
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
mov byte [ebp - 0x50], 0
xor eax, eax
mov dword [ebp - 0x4f], eax
mov dword [ebp - 0x4b], eax
mov dword [ebp - 0x47], eax
mov dword [ebp - 0x43], eax
mov dword [ebp - 0x3f], eax
mov dword [ebp - 0x3b], eax
mov dword [ebp - 0x37], eax
mov word [ebp - 0x33], ax
mov byte [ebp - 0x31], al
xor ecx, ecx
mov dword [ebp - 0x50], ecx
mov dword [ebp - 0x4c], ecx
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x34], ecx
mov edx, dword [ebp - 0x550]
push edx
push 0x5b8d98
lea eax, [ebp - 0x50]
push eax
call fcn.00555824
add esp, 0xc
mov ecx, dword [ebp - 0x5c4]
add ecx, 0x58bc
call fcn.00401500
push eax
lea ecx, [ebp - 0x50]
push ecx
push 0x5b8d9c
mov ecx, dword [ebp - 0x5c4]
add ecx, 0x58b8
call fcn.00401500
push eax
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
mov byte [ebp - 0x30], 0
xor edx, edx
mov dword [ebp - 0x2f], edx
mov dword [ebp - 0x2b], edx
mov dword [ebp - 0x27], edx
mov dword [ebp - 0x23], edx
mov dword [ebp - 0x1f], edx
mov dword [ebp - 0x1b], edx
mov dword [ebp - 0x17], edx
mov word [ebp - 0x13], dx
mov byte [ebp - 0x11], dl
xor eax, eax
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x1b8]
push ecx
push 0x5b8da8
lea edx, [ebp - 0x30]
push edx
call fcn.00555824
add esp, 0xc
mov ecx, dword [ebp - 0x5c4]
add ecx, 0x58bc
call fcn.00401500
push eax
lea eax, [ebp - 0x30]
push eax
push 0x5b8dac
mov ecx, dword [ebp - 0x5c4]
add ecx, 0x58b8
call fcn.00401500
push eax
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
mov byte [ebp - 0x420], 0
xor ecx, ecx
mov dword [ebp - 0x41f], ecx
mov dword [ebp - 0x41b], ecx
mov dword [ebp - 0x417], ecx
mov dword [ebp - 0x413], ecx
mov dword [ebp - 0x40f], ecx
mov dword [ebp - 0x40b], ecx
mov dword [ebp - 0x407], ecx
mov word [ebp - 0x403], cx
mov byte [ebp - 0x401], cl
xor edx, edx
mov dword [ebp - 0x420], edx
mov dword [ebp - 0x41c], edx
mov dword [ebp - 0x418], edx
mov dword [ebp - 0x414], edx
mov dword [ebp - 0x410], edx
mov dword [ebp - 0x40c], edx
mov dword [ebp - 0x408], edx
mov dword [ebp - 0x404], edx
mov eax, dword [ebp - 0x1b4]
push eax
push 0x5b8dbc
lea ecx, [ebp - 0x420]
push ecx
call fcn.00555824
add esp, 0xc
mov ecx, dword [ebp - 0x5c4]
add ecx, 0x58bc
call fcn.00401500
push eax
lea edx, [ebp - 0x420]
push edx
push 0x5b8dc0
mov ecx, dword [ebp - 0x5c4]
add ecx, 0x58b8
call fcn.00401500
push eax
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 3
mov ecx, dword [ebp - 0x5c4]
call fcn.0045e6d0
push 0xfffffffffffffff0
mov eax, dword [ebp - 0x5c4]
mov ecx, dword [eax + 0x20]
push ecx
call dword [sym.imp.USER32.dll_GetWindowLongA]
or eax, 0x2000000
push eax
push 0xfffffffffffffff0
mov edx, dword [ebp - 0x5c4]
mov eax, dword [edx + 0x20]
push eax
call dword [sym.imp.USER32.dll_SetWindowLongA]
mov dword [ebp - 0x598], 0x74
mov ecx, dword [ebp - 0x598]
push ecx
call fcn.00453c21
add esp, 4
mov dword [ebp - 0x59c], eax
cmp dword [ebp - 0x59c], 0
je 0x419470
mov edx, dword [ebp - 0x598]
push edx
push 0
mov eax, dword [ebp - 0x59c]
push eax
call fcn.0055b7e0
add esp, 0xc
mov ecx, dword [ebp - 0x59c]
mov dword [ebp - 0x5c8], ecx
jmp 0x41947a
mov dword [ebp - 0x5c8], 0
mov edx, dword [ebp - 0x5c4]
mov eax, dword [ebp - 0x5c8]
mov dword [edx + 0x300], eax
push 0x74
push 0
mov ecx, dword [ebp - 0x5c4]
mov edx, dword [ecx + 0x300]
push edx
call fcn.0055b7e0
add esp, 0xc
mov dword [ebp - 0x5a0], 0x35
mov eax, dword [ebp - 0x5a0]
push eax
call fcn.00453c21
add esp, 4
mov dword [ebp - 0x5a4], eax
cmp dword [ebp - 0x5a4], 0
je 0x4194f3
mov ecx, dword [ebp - 0x5a0]
push ecx
push 0
mov edx, dword [ebp - 0x5a4]
push edx
call fcn.0055b7e0
add esp, 0xc
mov eax, dword [ebp - 0x5a4]
mov dword [ebp - 0x5cc], eax
jmp 0x4194fd
mov dword [ebp - 0x5cc], 0
mov ecx, dword [ebp - 0x5cc]
mov dword [ebp - 0x60], ecx
mov edx, dword [ebp - 0x60]
mov byte [edx], 0
push 0x35
push 0
mov eax, dword [ebp - 0x60]
push eax
call fcn.0055b7e0
add esp, 0xc
mov ecx, dword [ebp - 0x5c4]
mov edx, dword [ecx + 0x300]
mov eax, dword [ebp - 0x60]
mov dword [edx + 0x70], eax
mov ecx, dword [ebp - 0x5c4]
call fcn.00418780
mov ecx, dword [ebp - 0x5c4]
call fcn.00417680
mov ecx, dword [ebp - 0x5c4]
call fcn.00418b60
mov ecx, dword [ebp - 0x5c4]
mov byte [ecx + 0x5339], 0
mov edx, dword [ebp - 0x5c4]
mov dword [edx + 0x533c], 0xffffffff
mov ecx, dword [ebp - 0x5c4]
call fcn.004174a0
mov eax, dword [ebp - 0x5c4]
mov dword [eax + 0x2fc], 0
mov dword [ebp - 0x560], 0
jmp 0x4195a2
mov ecx, dword [ebp - 0x560]
add ecx, 1
mov dword [ebp - 0x560], ecx
cmp dword [ebp - 0x560], 0x30
jge 0x4195cd
push 0
mov edx, dword [ebp - 0x560]
imul edx, edx, 0x98
mov eax, dword [ebp - 0x5c4]
lea ecx, [eax + edx + 0xbd8]
call fcn.0045e6d0
jmp 0x419593
mov dword [ebp - 0x564], 0
jmp 0x4195e8
mov ecx, dword [ebp - 0x564]
add ecx, 1
mov dword [ebp - 0x564], ecx
cmp dword [ebp - 0x564], 0x10
jge 0x419626
push 0
mov edx, dword [ebp - 0x564]
imul edx, edx, 0x98
mov eax, dword [ebp - 0x5c4]
lea ecx, [eax + edx + 0x2858]
call fcn.0045e6d0
mov ecx, dword [ebp - 0x5c4]
add ecx, dword [ebp - 0x564]
mov byte [ecx + 0x5908], 0
jmp 0x4195d9
push 5
mov ecx, dword [ebp - 0x5c4]
add ecx, 0x400
call fcn.0045e6d0
push 0xf0f0f0
mov ecx, dword [ebp - 0x5c4]
add ecx, 0x400
call fcn.00405fc0
push 0xff0000
mov ecx, dword [ebp - 0x5c4]
add ecx, 0x400
call fcn.00405b80
push 1
push 0x5b8dd4
push 0xc8
mov ecx, dword [ebp - 0x5c4]
add ecx, 0x400
mov edx, dword [ebp - 0x5c4]
mov eax, dword [edx + 0x400]
mov edx, dword [eax + 0x168]
call edx
lea eax, [ebp - 0x30]
push eax
mov ecx, dword [ebp - 0x5c4]
add ecx, 0x400
call fcn.0045e605
call fcn.00401ed0
mov dword [ebp - 0x5c], eax
mov ecx, dword [ebp - 0x5c4]
push ecx
mov ecx, dword [ebp - 0x5c]
call fcn.00444e30
call fcn.004022a0
mov dword [ebp - 0x190], eax
mov edx, dword [ebp - 0x5c4]
mov eax, dword [edx + 0x5410]
push eax
mov ecx, dword [ebp - 0x190]
call fcn.00402c60
mov ecx, dword [ebp - 0x190]
call fcn.00401f50
mov ecx, dword [ebp - 0x190]
call fcn.00401500
mov dword [ebp - 0x400], eax
mov ecx, dword [ebp - 0x5c4]
mov edx, dword [ebp - 0x400]
mov dword [ecx + 0x5a2c], edx
mov eax, dword [ebp - 0x5c4]
mov dword [eax + 0x5a28], 0
mov ecx, dword [ebp - 0x5c4]
mov dword [ecx + 0x5ab4], 0
mov edx, dword [ebp - 0x5c4]
mov dword [edx + 0x5a30], 0
mov eax, dword [ebp - 0x5c4]
mov dword [eax + 0x5ab8], 0
cmp dword [ebp - 0x400], 4
jne 0x419767
mov ecx, dword [ebp - 0x5c4]
call fcn.0041a9e0
jmp 0x419805
cmp dword [ebp - 0x400], 6
jne 0x4197db
push 0
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [ebp - 0x568], eax
push 1
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [ebp - 0x56c], eax
push 1
mov ecx, dword [ebp - 0x56c]
push ecx
mov edx, dword [ebp - 0x568]
push edx
push 0
push 0
mov ecx, dword [ebp - 0x5c4]
call fcn.0045e690
mov eax, dword [ebp - 0x568]
cmp eax, dword [ebp - 0x56c]
jge 0x4197ca
push 2
push 3
mov ecx, dword [ebp - 0x5c4]
call fcn.00419f40
jmp 0x4197d9
push 3
push 2
mov ecx, dword [ebp - 0x5c4]
call fcn.00419f40
jmp 0x419805
cmp dword [ebp - 0x400], 9
jne 0x4197f1
mov ecx, dword [ebp - 0x5c4]
call fcn.0041b3e0
jmp 0x419805
cmp dword [ebp - 0x400], 0x10
jne 0x419805
mov ecx, dword [ebp - 0x5c4]
call fcn.0041be20
mov ecx, dword [ebp - 0x5c4]
mov edx, dword [ecx + 0x5410]
cmp dword [edx + 4], 0
jne 0x41982c
mov eax, dword [ebp - 0x5c4]
mov ecx, dword [eax + 0x5410]
cmp dword [ecx], 0
je 0x41993c
mov dword [ebp - 0x570], 0
jmp 0x419847
mov edx, dword [ebp - 0x570]
add edx, 1
mov dword [ebp - 0x570], edx
mov eax, dword [ebp - 0x570]
cmp eax, dword [ebp - 0x400]
jge 0x4198fd
mov ecx, dword [ebp - 0x570]
push ecx
lea edx, [ebp - 0x574]
push edx
mov ecx, dword [ebp - 0x190]
call fcn.004026a0
mov byte [ebp - 4], 3
push 0x10
call fcn.00453c21
add esp, 4
mov dword [ebp - 0x5ac], eax
mov byte [ebp - 4], 4
cmp dword [ebp - 0x5ac], 0
je 0x4198b6
push 0x50
push 0
lea ecx, [ebp - 0x574]
call fcn.00401940
push eax
mov ecx, dword [ebp - 0x5ac]
call fcn.0040d6c0
mov dword [ebp - 0x5d0], eax
jmp 0x4198c0
mov dword [ebp - 0x5d0], 0
mov eax, dword [ebp - 0x5d0]
mov dword [ebp - 0x5a8], eax
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x570]
mov edx, dword [ebp - 0x5c4]
mov eax, dword [ebp - 0x5a8]
mov dword [edx + ecx*4 + 0x3c0], eax
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x574]
call fcn.00401a00
jmp 0x419838
mov ecx, dword [ebp - 0x400]
mov dword [ebp - 0x578], ecx
jmp 0x41991a
mov edx, dword [ebp - 0x578]
add edx, 1
mov dword [ebp - 0x578], edx
cmp dword [ebp - 0x578], 0x10
jge 0x41993c
mov eax, dword [ebp - 0x578]
mov ecx, dword [ebp - 0x5c4]
mov dword [ecx + eax*4 + 0x3c0], 0
jmp 0x41990b
call fcn.0040e020
mov edx, dword [ebp - 0x5c4]
mov dword [edx + 0x53d8], eax
mov eax, dword [ebp - 0x5c4]
mov ecx, dword [eax + 0x53d8]
call fcn.0040ea00
mov ecx, dword [ebp - 0x5c4]
add ecx, 0x53dc
push ecx
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
mov edx, dword [ebp - 0x5c4]
add edx, 0x53f4
push edx
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
mov eax, dword [ebp - 0x5c4]
add eax, 0x581c
push eax
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
mov ecx, dword [ebp - 0x5c4]
add ecx, 0x5b48
push ecx
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
mov edx, dword [ebp - 0x5c4]
mov dword [edx + 0x540c], 0xffffffff
mov eax, dword [ebp - 0x5c4]
mov dword [eax + 0x5340], 0
mov byte [0x5f13b9], 0
mov ecx, dword [ebp - 0x5c4]
mov byte [ecx + 0x5338], 1
mov byte [0x5ea332], 1
mov byte [0x5ea331], 1
mov byte [ebp - 0x544], 0
push 0x103
push 0
lea edx, [ebp - 0x543]
push edx
call fcn.0055b7e0
add esp, 0xc
push 0x104
lea eax, [ebp - 0x544]
push eax
push str.AfZoomInTimeOut
push 0x5b8dec
call fcn.0043b840
add esp, 0x10
lea ecx, [ebp - 0x544]
push ecx
call fcn.005556b4
add esp, 4
mov edx, dword [ebp - 0x5c4]
mov dword [edx + 0x53c8], eax
push 0x104
lea eax, [ebp - 0x544]
push eax
push str.AfZoomOutTimeOut
push 0x5b8e08
call fcn.0043b840
add esp, 0x10
lea ecx, [ebp - 0x544]
push ecx
call fcn.005556b4
add esp, 4
mov edx, dword [ebp - 0x5c4]
mov dword [edx + 0x53cc], eax
push 0x104
lea eax, [ebp - 0x544]
push eax
push str.AfResetTimeOut
push 0x5b8e20
call fcn.0043b840
add esp, 0x10
lea ecx, [ebp - 0x544]
push ecx
call fcn.005556b4
add esp, 4
mov edx, dword [ebp - 0x5c4]
mov dword [edx + 0x53d0], eax
mov ecx, dword [ebp - 0x5c4]
call fcn.0041d340
mov ecx, dword [ebp - 0x5c4]
mov byte [ecx + 0x53d4], al
mov edx, dword [ebp - 0x5c4]
cmp dword [edx + 0x5340], 0
jne 0x419b7d
mov eax, dword [ebp - 0x5c4]
movzx ecx, byte [eax + 0x5414]
test ecx, ecx
je 0x419b7d
push 0
push 4
push 0
push 0
mov edx, dword [ebp - 0x5c4]
push edx
push 0x414980
call fcn.0046717f
mov ecx, dword [ebp - 0x5c4]
mov dword [ecx + 0x5340], eax
mov edx, dword [ebp - 0x5c4]
cmp dword [edx + 0x5340], 0
jne 0x419b59
mov dword [ebp - 0x5b0], 1
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x43c]
call fcn.00409220
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x58]
call fcn.00401a00
mov eax, dword [ebp - 0x5b0]
jmp 0x419f22
mov eax, dword [ebp - 0x5c4]
mov ecx, dword [eax + 0x5340]
mov dword [ecx + 0x28], 1
mov edx, dword [ebp - 0x5c4]
mov ecx, dword [edx + 0x5340]
call fcn.00432b70
mov eax, dword [ebp - 0x5c4]
mov dword [eax + 0x5344], 0
push 0
push 4
push 0
push 0
mov ecx, dword [ebp - 0x5c4]
push ecx
push 0x414a20
call fcn.0046717f
mov edx, dword [ebp - 0x5c4]
mov dword [edx + 0x5344], eax
mov eax, dword [ebp - 0x5c4]
cmp dword [eax + 0x5344], 0
jne 0x419bf4
mov dword [ebp - 0x5b4], 1
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x43c]
call fcn.00409220
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x58]
call fcn.00401a00
mov eax, dword [ebp - 0x5b4]
jmp 0x419f22
mov ecx, dword [ebp - 0x5c4]
mov edx, dword [ecx + 0x5344]
mov dword [edx + 0x28], 1
mov eax, dword [ebp - 0x5c4]
mov ecx, dword [eax + 0x5344]
call fcn.00432b70
mov dword [ebp - 0x57c], 0
jmp 0x419c33
mov ecx, dword [ebp - 0x57c]
add ecx, 1
mov dword [ebp - 0x57c], ecx
cmp dword [ebp - 0x57c], 9
jge 0x419d43
mov edx, dword [ebp - 0x57c]
mov eax, dword [ebp - 0x5c4]
mov dword [eax + edx*4 + 0x5388], 0
mov dword [ebp - 0x5b8], 8
mov ecx, dword [ebp - 0x5b8]
push ecx
call fcn.00453c21
add esp, 4
mov dword [ebp - 0x5bc], eax
cmp dword [ebp - 0x5bc], 0
je 0x419ca5
mov edx, dword [ebp - 0x5b8]
push edx
push 0
mov eax, dword [ebp - 0x5bc]
push eax
call fcn.0055b7e0
add esp, 0xc
mov ecx, dword [ebp - 0x5bc]
mov dword [ebp - 0x5d4], ecx
jmp 0x419caf
mov dword [ebp - 0x5d4], 0
mov edx, dword [ebp - 0x5d4]
mov dword [ebp - 0x580], edx
mov eax, dword [ebp - 0x580]
mov ecx, dword [ebp - 0x5c4]
mov dword [eax], ecx
mov edx, dword [ebp - 0x580]
mov eax, dword [ebp - 0x57c]
mov dword [edx + 4], eax
push 0
push 4
push 0
push 0
mov ecx, dword [ebp - 0x580]
push ecx
push 0x414a40
call fcn.0046717f
mov edx, dword [ebp - 0x57c]
mov ecx, dword [ebp - 0x5c4]
mov dword [ecx + edx*4 + 0x5388], eax
mov edx, dword [ebp - 0x57c]
mov eax, dword [ebp - 0x5c4]
mov ecx, dword [eax + edx*4 + 0x5388]
mov dword [ecx + 0x28], 1
mov edx, dword [ebp - 0x57c]
mov eax, dword [ebp - 0x5c4]
mov ecx, dword [eax + edx*4 + 0x5388]
call fcn.00432b70
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x419c24
mov ecx, dword [ebp - 0x5c4]
add ecx, 0x5758
call fcn.00403600
mov byte [ebp - 0x18c], 0
push 0x103
push 0
lea ecx, [ebp - 0x18b]
push ecx
call fcn.0055b7e0
add esp, 0xc
push 0x104
lea edx, [ebp - 0x18c]
push edx
push 0x5b8e28
push 0x5b8e34
call fcn.0043b840
add esp, 0x10
mov dword [ebp - 0x5d8], 0x5b8e3c
lea eax, [ebp - 0x18c]
mov dword [ebp - 0x5dc], eax
mov ecx, dword [ebp - 0x5dc]
mov dl, byte [ecx]
mov byte [ebp - 0x5dd], dl
mov eax, dword [ebp - 0x5d8]
cmp dl, byte [eax]
jne 0x419e03
cmp byte [ebp - 0x5dd], 0
je 0x419df7
mov ecx, dword [ebp - 0x5dc]
mov dl, byte [ecx + 1]
mov byte [ebp - 0x5de], dl
mov eax, dword [ebp - 0x5d8]
cmp dl, byte [eax + 1]
jne 0x419e03
add dword [ebp - 0x5dc], 2
add dword [ebp - 0x5d8], 2
cmp byte [ebp - 0x5de], 0
jne 0x419da5
mov dword [ebp - 0x5e4], 0
jmp 0x419e0e
sbb ecx, ecx
sbb ecx, 0xffffffff
mov dword [ebp - 0x5e4], ecx
mov edx, dword [ebp - 0x5e4]
mov dword [ebp - 0x5e8], edx
cmp dword [ebp - 0x5e8], 0
jne 0x419ef4
push str.C:CollectSN
lea ecx, [ebp - 0x584]
call fcn.00403840
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x584]
call fcn.00401500
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
mov dword [ebp - 0x588], eax
cmp dword [ebp - 0x588], 0
jne 0x419e70
push 0
lea ecx, [ebp - 0x584]
call fcn.00401500
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
lea eax, [ebp - 0x590]
push eax
call fcn.00432b50
lea ecx, [ebp - 0x590]
call fcn.00432ae0
push eax
lea ecx, [ebp - 0x590]
call fcn.00432a00
push eax
lea ecx, [ebp - 0x590]
call fcn.004329b0
push eax
lea ecx, [ebp - 0x590]
call fcn.00432960
push eax
lea ecx, [ebp - 0x590]
call fcn.00432910
push eax
lea ecx, [ebp - 0x590]
call fcn.004328b0
push eax
mov ecx, dword [ebp - 0x584]
push ecx
push str._s_04d__02d__02d__02d
mov edx, dword [ebp - 0x5c4]
add edx, 0x5758
push edx
call fcn.004014d0
add esp, 0x24
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x584]
call fcn.00401a00
mov dword [ebp - 0x5c0], 1
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x43c]
call fcn.00409220
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x58]
call fcn.00401a00
mov eax, dword [ebp - 0x5c0]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0055509d
mov esp, ebp
pop ebp
ret