Function at 0x432a50
Capabilities:
Check if file exists
Check os version
Delete file
Move file
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4934c5
mov eax, dword fs:[0]
push eax
sub esp, 0x73c
mov eax, dword [0x4c1280]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x688], ecx
mov dword [ebp - 4], 1
mov ecx, dword [ebp + 0x28]
call fcn.00453d00
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 1
jge 0x432ac9
mov dword [ebp - 0x564], 1
mov byte [ebp - 4], 0
lea ecx, [ebp + 8]
call fcn.0042ed20
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0xc]
call fcn.00401ce0
mov eax, dword [ebp - 0x564]
jmp 0x433f3f
mov dword [ebp - 0x40], 1
push 0x49aed0
lea ecx, [ebp - 0x5c]
call fcn.00401c70
mov byte [ebp - 4], 2
push 0x49aed4
lea ecx, [ebp - 0x3c]
call fcn.00401c70
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x18]
call fcn.00442170
mov dword [ebp - 0x1c], 1
lea eax, [ebp - 0x56c]
push eax
mov ecx, dword [ebp + 0x28]
call fcn.00442000
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x14], edx
lea eax, [ebp - 0x574]
push eax
mov ecx, dword [ebp + 0x28]
call fcn.00442030
push eax
lea ecx, [ebp - 0x18]
call fcn.00442210
movzx ecx, al
test ecx, ecx
je 0x433efc
push 0x49aed8
lea edx, [ebp + 8]
push edx
lea eax, [ebp - 0x578]
push eax
call fcn.0042f3f0
mov dword [ebp - 0x68c], eax
mov ecx, dword [ebp - 0x68c]
mov dword [ebp - 0x690], ecx
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x690]
call fcn.00453990
push eax
lea ecx, [ebp - 0x7c]
call fcn.00401c70
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x578]
call fcn.0042ed20
lea ecx, [ebp - 0x18]
call fcn.00442190
push eax
lea ecx, [ebp - 0x7c]
call fcn.00441d60
lea ecx, [ebp - 0x18]
call fcn.00442190
mov ecx, eax
call fcn.00401ff0
push eax
lea ecx, [ebp - 0x9c]
call fcn.0042deb0
mov byte [ebp - 4], 7
push 0x49aedc
push 0x49aee4
lea ecx, [ebp - 0x9c]
call fcn.004453f0
lea ecx, [ebp - 0x9c]
call fcn.004453d0
lea ecx, [ebp - 0x9c]
call fcn.00453990
push eax
lea ecx, [ebp - 0x5c]
call fcn.00401f70
lea ecx, [ebp - 0x7c]
call fcn.00401ff0
push eax
lea ecx, [ebp - 0x60]
call fcn.0042deb0
mov byte [ebp - 4], 8
push 0x5c
lea ecx, [ebp - 0x60]
call fcn.00445660
mov dword [ebp - 0xa0], eax
mov edx, dword [ebp - 0xa0]
push edx
lea eax, [ebp - 0x57c]
push eax
lea ecx, [ebp - 0x60]
call fcn.00445310
mov dword [ebp - 0x694], eax
mov ecx, dword [ebp - 0x694]
mov dword [ebp - 0x698], ecx
mov byte [ebp - 4], 9
mov edx, dword [ebp - 0x698]
push edx
lea ecx, [ebp - 0x60]
call fcn.0042e090
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x57c]
call fcn.0042ed20
lea ecx, [ebp - 0x60]
call fcn.00453990
push eax
mov ecx, dword [ebp - 0x688]
call fcn.00439280
push 0x49aee8
lea eax, [ebp + 0xc]
push eax
call fcn.00444a50
add esp, 8
movzx ecx, al
test ecx, ecx
je 0x432dcf
mov edx, dword [0x4b13f8]
push edx
push 0x5c
lea ecx, [ebp - 0x18]
call fcn.004421b0
mov ecx, eax
call fcn.00441dd0
mov dword [ebp - 0xa0], eax
mov eax, dword [0x4b13f8]
cmp eax, dword [ebp - 0xa0]
je 0x432dcf
push str.RfTemplate
mov ecx, dword [ebp - 0xa0]
push ecx
push 0
lea edx, [ebp - 0x59c]
push edx
lea ecx, [ebp - 0x18]
call fcn.004421b0
mov ecx, eax
call fcn.0042b040
mov dword [ebp - 0x69c], eax
mov eax, dword [ebp - 0x69c]
mov dword [ebp - 0x6a0], eax
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x6a0]
push ecx
call fcn.00444a50
add esp, 8
mov byte [ebp - 0x57d], al
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x59c]
call fcn.00401ce0
movzx edx, byte [ebp - 0x57d]
test edx, edx
je 0x432dcf
lea ecx, [ebp - 0x18]
call fcn.004421b0
mov ecx, eax
call fcn.00401d40
sub eax, dword [ebp - 0xa0]
sub eax, 6
push eax
mov eax, dword [ebp - 0xa0]
add eax, 1
push eax
lea ecx, [ebp - 0xbc]
push ecx
lea ecx, [ebp - 0x18]
call fcn.004421b0
mov ecx, eax
call fcn.0042b040
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0xbc]
call fcn.00401ff0
push eax
push str.template:_s
push 0x49af28
call fcn.00401340
add esp, 4
push eax
call fcn.004013f0
add esp, 0xc
mov ecx, 0x4c3950
call fcn.0040a370
movzx edx, al
test edx, edx
jne 0x432daf
push 0x49af4c
mov ecx, 0x4c3950
call fcn.00441d80
lea eax, [ebp - 0xbc]
push eax
mov ecx, 0x4c3950
call fcn.00441d60
mov byte [ebp - 4], 8
lea ecx, [ebp - 0xbc]
call fcn.00401ce0
lea ecx, [ebp - 0x7c]
push ecx
lea ecx, [ebp - 0x3c]
call fcn.00407700
cmp dword [0x4c3704], 6
jae 0x432e87
push 0x49af50
lea ecx, [ebp - 0x5c]
call fcn.00401ff0
push eax
call fcn.00476593
add esp, 8
test eax, eax
je 0x432e1c
push str.SDCredPrd.dll
lea ecx, [ebp - 0x5c]
call fcn.00401ff0
push eax
call fcn.00476593
add esp, 8
test eax, eax
jne 0x432e82
mov edx, dword [ebp - 0x18]
mov dword [ebp - 0x5a4], edx
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x5a0], eax
mov ecx, dword [ebp - 0x5a0]
push ecx
mov edx, dword [ebp - 0x5a4]
push edx
lea eax, [ebp - 0x5ac]
push eax
mov ecx, dword [ebp + 0x28]
call fcn.004420a0
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x14], edx
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x60]
call fcn.0042ed20
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x9c]
call fcn.0042ed20
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x7c]
call fcn.00401ce0
jmp 0x432b1b
jmp 0x432f07
push str.SDGina.dll
lea ecx, [ebp - 0x5c]
call fcn.00401ff0
push eax
call fcn.00476593
add esp, 8
test eax, eax
jne 0x432f07
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x5b4], eax
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x5b0], ecx
mov edx, dword [ebp - 0x5b0]
push edx
mov eax, dword [ebp - 0x5b4]
push eax
lea ecx, [ebp - 0x5bc]
push ecx
mov ecx, dword [ebp + 0x28]
call fcn.004420a0
mov edx, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0x18], edx
mov dword [ebp - 0x14], eax
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x60]
call fcn.0042ed20
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x9c]
call fcn.0042ed20
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x7c]
call fcn.00401ce0
jmp 0x432b1b
push 0x49afa0
lea ecx, [ebp - 0x5c]
call fcn.00401ff0
push eax
call fcn.00476593
add esp, 8
test eax, eax
je 0x432f3b
push str.detoured.dll
lea ecx, [ebp - 0x5c]
call fcn.00401ff0
push eax
call fcn.00476593
add esp, 8
test eax, eax
jne 0x432faf
cmp dword [0x4c36b8], 0
jne 0x432faa
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x5c4], ecx
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x5c0], edx
mov eax, dword [ebp - 0x5c0]
push eax
mov ecx, dword [ebp - 0x5c4]
push ecx
lea edx, [ebp - 0x5cc]
push edx
mov ecx, dword [ebp + 0x28]
call fcn.004420a0
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x14], edx
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x60]
call fcn.0042ed20
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x9c]
call fcn.0042ed20
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x7c]
call fcn.00401ce0
jmp 0x432b1b
jmp 0x433210
push 0x49afdc
lea ecx, [ebp - 0x5c]
call fcn.00401ff0
push eax
call fcn.00476593
add esp, 8
test eax, eax
jne 0x433210
call dword [sym.imp.KERNEL32.dll_GetVersion]
and eax, 0xffff
movzx eax, ax
and eax, 0xff
movzx ecx, al
cmp ecx, 6
jle 0x433210
push str..tmp
lea edx, [ebp - 0x3c]
push edx
lea eax, [ebp - 0xd8]
push eax
call fcn.00444a70
add esp, 0xc
mov byte [ebp - 4], 0xc
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x5d0], esp
lea edx, [ebp + 0xc]
push edx
call fcn.00401cb0
mov dword [ebp - 0x6a4], eax
mov eax, dword [ebp - 0x6a4]
mov dword [ebp - 0x6a8], eax
mov byte [ebp - 4], 0xd
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x5d4], esp
lea edx, [ebp - 0x5c]
push edx
call fcn.00401cb0
mov dword [ebp - 0x6ac], eax
mov eax, dword [ebp - 0x6ac]
mov dword [ebp - 0x6b0], eax
mov byte [ebp - 4], 0xe
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x5d8], esp
lea edx, [ebp - 0xd8]
push edx
call fcn.00401cb0
mov dword [ebp - 0x6b4], eax
mov byte [ebp - 4], 0xc
mov ecx, 0x4c3688
call fcn.0045ef90
mov dword [ebp - 0x6b8], eax
cmp dword [ebp - 0x6b8], 0
je 0x433201
lea ecx, [ebp - 0xd8]
call fcn.00401ff0
push eax
mov ecx, dword [ebp - 0x688]
call fcn.0043f050
mov dword [ebp - 0xdc], eax
lea ecx, [ebp - 0xd8]
call fcn.00401ff0
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
cmp dword [ebp - 0xdc], 0
jne 0x433201
cmp dword [0x4c36c8], 1
jne 0x43318c
lea ecx, [ebp - 0x5c]
call fcn.00401ff0
push eax
push 0x49b008
push str.file____s___hasnot_microsoft_sign.
push 0x49affc
call fcn.00401340
add esp, 4
push eax
call fcn.00401590
add esp, 0x10
mov dword [ebp - 0x5dc], 0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0xd8]
call fcn.00401ce0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x60]
call fcn.0042ed20
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x9c]
call fcn.0042ed20
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x7c]
call fcn.00401ce0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x3c]
call fcn.00401ce0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x5c]
call fcn.00401ce0
mov byte [ebp - 4], 0
lea ecx, [ebp + 8]
call fcn.0042ed20
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0xc]
call fcn.00401ce0
mov eax, dword [ebp - 0x5dc]
jmp 0x433f3f
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x5e4], eax
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x5e0], ecx
mov edx, dword [ebp - 0x5e0]
push edx
mov eax, dword [ebp - 0x5e4]
push eax
lea ecx, [ebp - 0x5ec]
push ecx
mov ecx, dword [ebp + 0x28]
call fcn.004420a0
mov edx, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0x18], edx
mov dword [ebp - 0x14], eax
mov byte [ebp - 4], 8
lea ecx, [ebp - 0xd8]
call fcn.00401ce0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x60]
call fcn.0042ed20
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x9c]
call fcn.0042ed20
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x7c]
call fcn.00401ce0
jmp 0x432b1b
mov byte [ebp - 4], 8
lea ecx, [ebp - 0xd8]
call fcn.00401ce0
push 0
lea ecx, [ebp - 0x5f4]
push ecx
lea ecx, [ebp - 0x18]
call fcn.004421d0
lea edx, [ebp - 0x5f8]
push edx
call fcn.0042a690
add esp, 4
mov dword [ebp - 0x6bc], eax
mov eax, dword [ebp - 0x6bc]
mov dword [ebp - 0x6c0], eax
mov byte [ebp - 4], 0xf
mov ecx, dword [ebp - 0x6c0]
call fcn.00453990
push eax
lea ecx, [ebp - 0x98]
call fcn.00401c70
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x5f8]
call fcn.0042ed20
cmp dword [0x4c36c8], 1
jne 0x43355f
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x5fc], esp
lea edx, [ebp + 0xc]
push edx
call fcn.00401cb0
mov dword [ebp - 0x6c4], eax
mov eax, dword [ebp - 0x6c4]
mov dword [ebp - 0x6c8], eax
mov byte [ebp - 4], 0x12
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x600], esp
lea edx, [ebp - 0x5c]
push edx
call fcn.00401cb0
mov dword [ebp - 0x6cc], eax
mov eax, dword [ebp - 0x6cc]
mov dword [ebp - 0x6d0], eax
mov byte [ebp - 4], 0x13
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x604], esp
lea edx, [ebp - 0x3c]
push edx
call fcn.00401cb0
mov dword [ebp - 0x6d4], eax
mov byte [ebp - 4], 0x11
mov ecx, 0x4c3688
call fcn.0045ef90
mov dword [ebp - 0x6d8], eax
cmp dword [ebp - 0x6d8], 0
jne 0x43355a
push 0x49b014
lea eax, [ebp - 0x98]
push eax
lea ecx, [ebp - 0x3c]
push ecx
lea edx, [ebp - 0x620]
push edx
call fcn.004449c0
add esp, 0xc
mov dword [ebp - 0x6dc], eax
mov eax, dword [ebp - 0x6dc]
mov dword [ebp - 0x6e0], eax
mov byte [ebp - 4], 0x14
mov ecx, dword [ebp - 0x6e0]
push ecx
lea edx, [ebp - 0xf8]
push edx
call fcn.00444a70
add esp, 0xc
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x620]
call fcn.00401ce0
lea ecx, [ebp - 0xf8]
call fcn.00401ff0
push eax
lea ecx, [ebp - 0x3c]
call fcn.00401ff0
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileW]
test eax, eax
jne 0x4333ba
lea ecx, [ebp - 0xf8]
call fcn.00401ff0
push eax
lea ecx, [ebp - 0x3c]
call fcn.00401ff0
push eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x49b074
push 0x49b068
call fcn.00401340
add esp, 4
push eax
call fcn.00401590
add esp, 0x14
jmp 0x433402
push 4
push 0
lea ecx, [ebp - 0xf8]
call fcn.00401ff0
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileExW]
test eax, eax
jne 0x433402
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea ecx, [ebp - 0xf8]
call fcn.00401ff0
push eax
push 0x49b098
push 0x49b08c
call fcn.00401340
add esp, 4
push eax
call fcn.00401590
add esp, 0x10
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x624], esp
lea eax, [ebp + 0xc]
push eax
call fcn.00401cb0
mov dword [ebp - 0x6e4], eax
mov ecx, dword [ebp - 0x6e4]
mov dword [ebp - 0x6e8], ecx
mov byte [ebp - 4], 0x17
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x628], esp
lea edx, [ebp - 0x5c]
push edx
call fcn.00401cb0
mov dword [ebp - 0x6ec], eax
mov eax, dword [ebp - 0x6ec]
mov dword [ebp - 0x6f0], eax
mov byte [ebp - 4], 0x18
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x62c], esp
lea edx, [ebp - 0x3c]
push edx
call fcn.00401cb0
mov dword [ebp - 0x6f4], eax
mov byte [ebp - 4], 0x16
mov ecx, 0x4c3688
call fcn.0045ef90
mov dword [ebp - 0x6f8], eax
cmp dword [ebp - 0x6f8], 0
jne 0x43354b
lea ecx, [ebp - 0x3c]
call fcn.00401ff0
push eax
lea ecx, [ebp - 0x5c]
call fcn.00401ff0
push eax
push 0x49b0c8
push 0x49b0bc
call fcn.00401340
add esp, 4
push eax
call fcn.00401590
add esp, 0x10
mov dword [ebp - 0x630], 0
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0xf8]
call fcn.00401ce0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x98]
call fcn.00401ce0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x60]
call fcn.0042ed20
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x9c]
call fcn.0042ed20
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x7c]
call fcn.00401ce0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x3c]
call fcn.00401ce0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x5c]
call fcn.00401ce0
mov byte [ebp - 4], 0
lea ecx, [ebp + 8]
call fcn.0042ed20
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0xc]
call fcn.00401ce0
mov eax, dword [ebp - 0x630]
jmp 0x433f3f
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0xf8]
call fcn.00401ce0
jmp 0x433e97
mov dword [ebp - 0xfc], 0
mov dword [ebp - 0x100], 0
lea ecx, [ebp - 0x3c]
call fcn.00401ff0
push eax
lea ecx, [ebp - 0x108]
call fcn.0042deb0
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x108]
call fcn.0042e1b0
push str.version.ini
lea ecx, [ebp - 0x10c]
call fcn.0042deb0
mov byte [ebp - 4], 0x1a
push 0x49b0fc
lea ecx, [ebp - 0x104]
call fcn.0042deb0
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x10c]
call fcn.0042e1b0
lea ecx, [ebp - 0x104]
call fcn.0042e1b0
lea ecx, [ebp - 0x10c]
call fcn.00453990
push eax
lea ecx, [ebp - 0x108]
call fcn.004456b0
cmp eax, 0xffffffff
je 0x433615
lea ecx, [ebp - 0x108]
call fcn.00453990
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x433610
mov dword [ebp - 0xfc], 1
jmp 0x433b45
lea ecx, [ebp - 0x104]
call fcn.00453990
push eax
lea ecx, [ebp - 0x108]
call fcn.004456b0
cmp eax, 0xffffffff
je 0x433b45
lea ecx, [ebp - 0x108]
call fcn.00453990
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x433b45
mov dword [ebp - 0x100], 1
lea eax, [ebp - 0x12c]
push eax
call fcn.0040ad60
add esp, 4
mov byte [ebp - 4], 0x1c
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x634], esp
lea edx, [ebp + 0xc]
push edx
call fcn.00401cb0
mov dword [ebp - 0x6fc], eax
mov eax, dword [ebp - 0x6fc]
mov dword [ebp - 0x700], eax
mov byte [ebp - 4], 0x1d
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x638], esp
lea edx, [ebp - 0x5c]
push edx
call fcn.00401cb0
mov dword [ebp - 0x704], eax
mov eax, dword [ebp - 0x704]
mov dword [ebp - 0x708], eax
mov byte [ebp - 4], 0x1e
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x63c], esp
lea edx, [ebp - 0x12c]
push edx
call fcn.00401cb0
mov dword [ebp - 0x70c], eax
mov byte [ebp - 4], 0x1c
mov ecx, 0x4c3688
call fcn.0045ef90
mov dword [ebp - 0x710], eax
cmp dword [ebp - 0x710], 0
jne 0x4337e8
lea ecx, [ebp - 0x12c]
call fcn.00401ff0
push eax
lea ecx, [ebp - 0x5c]
call fcn.00401ff0
push eax
push 0x49b120
push 0x49b114
call fcn.00401340
add esp, 4
push eax
call fcn.00401590
add esp, 0x10
mov dword [ebp - 0x640], 0
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x12c]
call fcn.00401ce0
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x104]
call fcn.0042ed20
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x10c]
call fcn.0042ed20
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x108]
call fcn.0042ed20
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x98]
call fcn.00401ce0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x60]
call fcn.0042ed20
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x9c]
call fcn.0042ed20
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x7c]
call fcn.00401ce0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x3c]
call fcn.00401ce0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x5c]
call fcn.00401ce0
mov byte [ebp - 4], 0
lea ecx, [ebp + 8]
call fcn.0042ed20
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0xc]
call fcn.00401ce0
mov eax, dword [ebp - 0x640]
jmp 0x433f3f
xor eax, eax
mov word [ebp - 0x334], ax
push 0x206
push 0
lea ecx, [ebp - 0x332]
push ecx
call fcn.00472990
add esp, 0xc
lea ecx, [ebp - 0x12c]
call fcn.00401ff0
push eax
push 0x104
lea edx, [ebp - 0x334]
push edx
push 0x49b13c
push 0x49b140
push 0x49b14c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea eax, [ebp - 0x334]
push eax
call fcn.00472967
add esp, 4
test eax, eax
jne 0x433932
lea ecx, [ebp - 0x12c]
call fcn.00401ff0
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
push str.parse_Config_File_cant_get_com_count.
push 0x49b160
call fcn.00401340
add esp, 4
push eax
call fcn.00401590
add esp, 8
mov dword [ebp - 0x644], 0
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x12c]
call fcn.00401ce0
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x104]
call fcn.0042ed20
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x10c]
call fcn.0042ed20
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x108]
call fcn.0042ed20
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x98]
call fcn.00401ce0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x60]
call fcn.0042ed20
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x9c]
call fcn.0042ed20
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x7c]
call fcn.00401ce0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x3c]
call fcn.00401ce0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x5c]
call fcn.00401ce0
mov byte [ebp - 4], 0
lea ecx, [ebp + 8]
call fcn.0042ed20
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0xc]
call fcn.00401ce0
mov eax, dword [ebp - 0x644]
jmp 0x433f3f
lea ecx, [ebp - 0x3c]
call fcn.00401ff0
push eax
lea ecx, [ebp - 0x334]
push ecx
push str.count
push 0x49b1c8
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
lea edx, [ebp - 0x334]
push edx
call fcn.00474b5c
add esp, 4
mov dword [ebp - 0x110], eax
mov dword [ebp - 0x338], 1
jmp 0x433982
mov eax, dword [ebp - 0x338]
add eax, 1
mov dword [ebp - 0x338], eax
mov ecx, dword [ebp - 0x338]
cmp ecx, dword [ebp - 0x110]
jg 0x433b24
xor edx, edx
mov word [ebp - 0x544], dx
push 0x206
push 0
lea eax, [ebp - 0x542]
push eax
call fcn.00472990
add esp, 0xc
mov ecx, dword [ebp - 0x338]
push ecx
push str.com_d
lea edx, [ebp - 0x544]
push edx
call fcn.00441b10
add esp, 0xc
lea ecx, [ebp - 0x12c]
call fcn.00401ff0
push eax
push 0x104
lea eax, [ebp - 0x334]
push eax
push 0x49b1e8
lea ecx, [ebp - 0x544]
push ecx
push 0x49b1ec
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea edx, [ebp - 0x334]
push edx
call fcn.00472967
add esp, 4
test eax, eax
jne 0x433afd
lea ecx, [ebp - 0x12c]
call fcn.00401ff0
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
push str.parse_Config_File_cant_get_component_name.
push 0x49b200
call fcn.00401340
add esp, 4
push eax
call fcn.00401590
add esp, 8
mov dword [ebp - 0x648], 0
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x12c]
call fcn.00401ce0
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x104]
call fcn.0042ed20
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x10c]
call fcn.0042ed20
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x108]
call fcn.0042ed20
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x98]
call fcn.00401ce0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x60]
call fcn.0042ed20
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x9c]
call fcn.0042ed20
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x7c]
call fcn.00401ce0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x3c]
call fcn.00401ce0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x5c]
call fcn.00401ce0
mov byte [ebp - 4], 0
lea ecx, [ebp + 8]
call fcn.0042ed20
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0xc]
call fcn.00401ce0
mov eax, dword [ebp - 0x648]
jmp 0x433f3f
lea ecx, [ebp - 0x3c]
call fcn.00401ff0
push eax
lea eax, [ebp - 0x334]
push eax
lea ecx, [ebp - 0x544]
push ecx
push str.component
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
jmp 0x433973
lea ecx, [ebp - 0x12c]
call fcn.00401ff0
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x12c]
call fcn.00401ce0
cmp dword [ebp - 0xfc], 0
jne 0x433b57
cmp dword [ebp - 0x100], 0
je 0x433b5c
jmp 0x433e6a
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x64c], esp
lea edx, [ebp + 0xc]
push edx
call fcn.00401cb0
mov dword [ebp - 0x714], eax
mov eax, dword [ebp - 0x714]
mov dword [ebp - 0x718], eax
mov byte [ebp - 4], 0x1f
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x650], esp
lea edx, [ebp - 0x5c]
push edx
call fcn.00401cb0
mov dword [ebp - 0x71c], eax
mov eax, dword [ebp - 0x71c]
mov dword [ebp - 0x720], eax
mov byte [ebp - 4], 0x20
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x654], esp
lea edx, [ebp - 0x3c]
push edx
call fcn.00401cb0
mov dword [ebp - 0x724], eax
mov byte [ebp - 4], 0x1b
mov ecx, 0x4c3688
call fcn.0045ef90
mov dword [ebp - 0x728], eax
cmp dword [ebp - 0x728], 0
jne 0x433e6a
push str..del
lea eax, [ebp - 0x98]
push eax
lea ecx, [ebp - 0x3c]
push ecx
lea edx, [ebp - 0x670]
push edx
call fcn.004449c0
add esp, 0xc
mov dword [ebp - 0x72c], eax
mov eax, dword [ebp - 0x72c]
mov dword [ebp - 0x730], eax
mov byte [ebp - 4], 0x21
mov ecx, dword [ebp - 0x730]
push ecx
lea edx, [ebp - 0x560]
push edx
call fcn.00444a70
add esp, 0xc
mov byte [ebp - 4], 0x23
lea ecx, [ebp - 0x670]
call fcn.00401ce0
lea ecx, [ebp - 0x560]
call fcn.00401ff0
push eax
lea ecx, [ebp - 0x3c]
call fcn.00401ff0
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileW]
test eax, eax
jne 0x433c9d
lea ecx, [ebp - 0x560]
call fcn.00401ff0
push eax
lea ecx, [ebp - 0x3c]
call fcn.00401ff0
push eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.0x_x__s__s
push 0x49b288
call fcn.00401340
add esp, 4
push eax
call fcn.00401590
add esp, 0x14
jmp 0x433ce5
push 4
push 0
lea ecx, [ebp - 0x560]
call fcn.00401ff0
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileExW]
test eax, eax
jne 0x433ce5
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea ecx, [ebp - 0x560]
call fcn.00401ff0
push eax
push str.mv__s_error:0x_x
push 0x49b2ac
call fcn.00401340
add esp, 4
push eax
call fcn.00401590
add esp, 0x10
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x674], esp
lea eax, [ebp + 0xc]
push eax
call fcn.00401cb0
mov dword [ebp - 0x734], eax
mov ecx, dword [ebp - 0x734]
mov dword [ebp - 0x738], ecx
mov byte [ebp - 4], 0x24
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x678], esp
lea edx, [ebp - 0x5c]
push edx
call fcn.00401cb0
mov dword [ebp - 0x73c], eax
mov eax, dword [ebp - 0x73c]
mov dword [ebp - 0x740], eax
mov byte [ebp - 4], 0x25
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x67c], esp
lea edx, [ebp - 0x3c]
push edx
call fcn.00401cb0
mov dword [ebp - 0x744], eax
mov byte [ebp - 4], 0x23
mov ecx, 0x4c3688
call fcn.0045ef90
mov dword [ebp - 0x748], eax
cmp dword [ebp - 0x748], 0
jne 0x433e5b
lea ecx, [ebp - 0x3c]
call fcn.00401ff0
push eax
lea ecx, [ebp - 0x5c]
call fcn.00401ff0
push eax
push str._s__s_error
push 0x49b2dc
call fcn.00401340
add esp, 4
push eax
call fcn.00401590
add esp, 0x10
mov dword [ebp - 0x680], 0
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x560]
call fcn.00401ce0
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x104]
call fcn.0042ed20
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x10c]
call fcn.0042ed20
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x108]
call fcn.0042ed20
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x98]
call fcn.00401ce0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x60]
call fcn.0042ed20
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x9c]
call fcn.0042ed20
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x7c]
call fcn.00401ce0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x3c]
call fcn.00401ce0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x5c]
call fcn.00401ce0
mov byte [ebp - 4], 0
lea ecx, [ebp + 8]
call fcn.0042ed20
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0xc]
call fcn.00401ce0
mov eax, dword [ebp - 0x680]
jmp 0x433f3f
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x560]
call fcn.00401ce0
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x104]
call fcn.0042ed20
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x10c]
call fcn.0042ed20
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x108]
call fcn.0042ed20
push 0
mov eax, dword [ebp - 0x1c]
imul eax, dword [ebp + 0x30]
cdq
idiv dword [ebp - 0x20]
add eax, dword [ebp + 0x2c]
push eax
push 0x40a
mov ecx, dword [ebp - 0x688]
call fcn.004413a0
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x98]
call fcn.00401ce0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x60]
call fcn.0042ed20
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x9c]
call fcn.0042ed20
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x7c]
call fcn.00401ce0
jmp 0x432b1b
mov dword [ebp - 0x684], 1
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x3c]
call fcn.00401ce0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x5c]
call fcn.00401ce0
mov byte [ebp - 4], 0
lea ecx, [ebp + 8]
call fcn.0042ed20
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0xc]
call fcn.00401ce0
mov eax, dword [ebp - 0x684]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00472a79
mov esp, ebp
pop ebp
ret 0x2c