Function at 0x4375a0
Capabilities:
Create directory
Get disk information

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4670c1
mov eax, dword fs:[0]
push eax
sub esp, 0x454
mov eax, dword [section..data]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [ebp - 0x440], ebx
mov esi, dword [ebp + 8]
lea ecx, [ebp - 0x44c]
push 0
push 0
mov dword [ebp - 0x44c], 0
mov dword [ebp - 0x448], 0
call fcn.00436260
mov dword [ebp - 0x44c], eax
lea eax, [ebp - 0x44c]
mov dword [ebp - 4], 0
push eax
push esi
call fcn.00435df0
lea eax, [ebx + 0x250]
push 0x104
push eax
mov dword [ebp - 0x460], eax
call fcn.004345d0
add esp, 0x10
lea ecx, [ebp - 0x458]
xor edi, edi
mov dword [ebp - 0x454], edi
push edi
push edi
call fcn.00436260
mov ebx, eax
mov dword [ebp - 0x458], ebx
mov eax, dword [ebp - 0x44c]
mov byte [ebp - 4], 1
mov byte [ebp - 0x443], 0
mov byte [ebp - 0x441], 0
mov esi, dword [eax]
mov byte [ebp - 0x442], 0
mov byte [ebp - 0x439], 0
mov byte [ebp - 0x44d], 0
cmp esi, eax
je 0x437e3b
lea ebx, [edi + 0x30]
cmp dword [esi + 0x1c], 8
lea edi, [esi + 8]
jb 0x437694
mov eax, dword [edi]
jmp 0x437696
mov eax, edi
mov ecx, str.install
jmp 0x4376a0
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4376c6
test dx, dx
je 0x4376c2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4376c6
add eax, 4
add ecx, 4
test dx, dx
jne 0x4376a0
xor eax, eax
jmp 0x4376cb
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4376db
mov byte [ebp - 0x443], 1
jmp 0x437e21
cmp dword [edi + 0x14], 8
jb 0x4376e5
mov eax, dword [edi]
jmp 0x4376e7
mov eax, edi
mov ecx, str.pdlcinstall
lea esp, [esp]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x437716
test dx, dx
je 0x437712
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x437716
add eax, 4
add ecx, 4
test dx, dx
jne 0x4376f0
xor eax, eax
jmp 0x43771b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x43772b
mov byte [ebp - 0x441], 1
jmp 0x437e21
cmp dword [edi + 0x14], 8
jb 0x437735
mov eax, dword [edi]
jmp 0x437737
mov eax, edi
mov ecx, str.uninstall_game
lea esp, [esp]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x437766
test dx, dx
je 0x437762
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x437766
add eax, 4
add ecx, 4
test dx, dx
jne 0x437740
xor eax, eax
jmp 0x43776b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x437781
mov eax, dword [ebp - 0x440]
mov byte [eax + 0x209], 1
jmp 0x437e21
cmp dword [edi + 0x14], 8
jb 0x43778b
mov eax, dword [edi]
jmp 0x43778d
mov eax, edi
mov ecx, str.uninstall_pdlc
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4377b8
test dx, dx
je 0x4377b4
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4377b8
add eax, 4
add ecx, 4
test dx, dx
jne 0x437792
xor eax, eax
jmp 0x4377bd
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4377d3
mov eax, dword [ebp - 0x440]
mov byte [eax + 0x20b], 1
jmp 0x437e21
cmp dword [edi + 0x14], 8
jb 0x4377dd
mov eax, dword [edi]
jmp 0x4377df
mov eax, edi
mov ecx, str._update
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x43780a
test dx, dx
je 0x437806
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x43780a
add eax, 4
add ecx, 4
test dx, dx
jne 0x4377e4
xor eax, eax
jmp 0x43780f
sbb eax, eax
or eax, 1
test eax, eax
jne 0x43781f
mov byte [ebp - 0x442], 1
jmp 0x437e21
cmp dword [edi + 0x14], 8
jb 0x437829
mov eax, dword [edi]
jmp 0x43782b
mov eax, edi
mov ecx, str._repair
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x437856
test dx, dx
je 0x437852
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x437856
add eax, 4
add ecx, 4
test dx, dx
jne 0x437830
xor eax, eax
jmp 0x43785b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x43786b
mov byte [ebp - 0x439], 1
jmp 0x437e21
cmp dword [edi + 0x14], 8
jb 0x437875
mov eax, dword [edi]
jmp 0x437877
mov eax, edi
mov ecx, str._autologging
lea esp, [esp]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4378a6
test dx, dx
je 0x4378a2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4378a6
add eax, 4
add ecx, 4
test dx, dx
jne 0x437880
xor eax, eax
jmp 0x4378ab
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4378bb
mov byte [ebp - 0x44d], 1
jmp 0x437e21
cmp dword [edi + 0x14], 8
jb 0x4378c5
mov eax, dword [edi]
jmp 0x4378c7
mov eax, edi
mov ecx, str._norestart
lea esp, [esp]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4378f6
test dx, dx
je 0x4378f2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4378f6
add eax, 4
add ecx, 4
test dx, dx
jne 0x4378d0
xor eax, eax
jmp 0x4378fb
sbb eax, eax
or eax, 1
test eax, eax
jne 0x437911
mov eax, dword [ebp - 0x440]
mov byte [eax + 0x20e], 1
jmp 0x437e21
cmp dword [edi + 0x14], 8
jb 0x43791b
mov eax, dword [edi]
jmp 0x43791d
mov eax, edi
mov ecx, str._respawn
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x437948
test dx, dx
je 0x437944
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x437948
add eax, 4
add ecx, 4
test dx, dx
jne 0x437922
xor eax, eax
jmp 0x43794d
sbb eax, eax
or eax, 1
test eax, eax
jne 0x437963
mov eax, dword [ebp - 0x440]
mov byte [eax + 0x210], 1
jmp 0x437e21
cmp dword [edi + 0x14], 8
jb 0x43796d
mov eax, dword [edi]
jmp 0x43796f
mov eax, edi
mov ecx, str._keepMaintenanceLog
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x43799a
test dx, dx
je 0x437996
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x43799a
add eax, 4
add ecx, 4
test dx, dx
jne 0x437974
xor eax, eax
jmp 0x43799f
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4379b5
mov eax, dword [ebp - 0x440]
mov byte [eax + 0x20f], 1
jmp 0x437e21
cmp dword [edi + 0x14], 8
jb 0x4379bf
mov eax, dword [edi]
jmp 0x4379c1
mov eax, edi
mov ecx, str._quiet
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4379ec
test dx, dx
je 0x4379e8
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4379ec
add eax, 4
add ecx, 4
test dx, dx
jne 0x4379c6
xor eax, eax
jmp 0x4379f1
sbb eax, eax
or eax, 1
test eax, eax
jne 0x437a07
mov eax, dword [ebp - 0x440]
mov byte [eax + 0x211], 1
jmp 0x437e21
cmp dword [edi + 0x14], 8
jb 0x437a11
mov eax, dword [edi]
jmp 0x437a13
mov eax, edi
mov ecx, str._installPath
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x437a3e
test dx, dx
je 0x437a3a
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x437a3e
add eax, 4
add ecx, 4
test dx, dx
jne 0x437a18
xor eax, eax
jmp 0x437a43
sbb eax, eax
or eax, 1
test eax, eax
jne 0x437b27
mov esi, dword [esi]
cmp esi, dword [ebp - 0x44c]
je 0x437e2f
cmp dword [esi + 0x1c], 8
lea ebx, [esi + 8]
jb 0x437a64
mov ebx, dword [ebx]
mov edx, dword [ebp - 0x440]
mov edi, 0x104
add edx, 0x458
mov ecx, edx
sub ebx, edx
lea esp, [esp]
lea eax, [edi + 0x7ffffefa]
test eax, eax
je 0x437a9e
movzx eax, word [ecx + ebx]
test ax, ax
je 0x437a9e
mov word [ecx], ax
add ecx, 2
dec edi
jne 0x437a80
jmp 0x437aa2
test edi, edi
jne 0x437aa5
sub ecx, 2
xor eax, eax
mov word [ecx], ax
mov ecx, edx
lea edi, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x437ab0
sub ecx, edi
sar ecx, 1
mov dword [ebp - 0x45c], ecx
je 0x437e1c
mov eax, ecx
mov ecx, 0x5c
cmp word [edx], 0x2f
jne 0x437adb
mov word [edx], cx
add edx, 2
dec eax
jne 0x437ad2
mov ecx, dword [ebp - 0x45c]
test ecx, ecx
je 0x437e1c
mov eax, dword [ebp - 0x440]
cmp word [eax + ecx*2 + 0x456], 0x5c
je 0x437e1c
mov ebx, 0x30
cmp ecx, 0x102
jae 0x437e21
mov dword [eax + ecx*2 + 0x458], 0x5c
xor edx, edx
jmp 0x437e21
cmp dword [edi + 0x14], 8
jb 0x437b31
mov eax, dword [edi]
jmp 0x437b33
mov eax, edi
mov ecx, str._pdlcInstallPath
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x437b5e
test dx, dx
je 0x437b5a
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x437b5e
add eax, 4
add ecx, 4
test dx, dx
jne 0x437b38
xor eax, eax
jmp 0x437b63
sbb eax, eax
or eax, 1
test eax, eax
jne 0x437c47
mov esi, dword [esi]
cmp esi, dword [ebp - 0x44c]
je 0x437e2f
cmp dword [esi + 0x1c], 8
lea ebx, [esi + 8]
jb 0x437b84
mov ebx, dword [ebx]
mov edx, dword [ebp - 0x440]
mov edi, 0x104
add edx, 0x660
mov ecx, edx
sub ebx, edx
lea esp, [esp]
lea eax, [edi + 0x7ffffefa]
test eax, eax
je 0x437bbe
movzx eax, word [ecx + ebx]
test ax, ax
je 0x437bbe
mov word [ecx], ax
add ecx, 2
dec edi
jne 0x437ba0
jmp 0x437bc2
test edi, edi
jne 0x437bc5
sub ecx, 2
xor eax, eax
mov word [ecx], ax
mov ecx, edx
lea edi, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x437bd0
sub ecx, edi
sar ecx, 1
mov dword [ebp - 0x45c], ecx
je 0x437e1c
mov eax, ecx
mov ecx, 0x5c
cmp word [edx], 0x2f
jne 0x437bfb
mov word [edx], cx
add edx, 2
dec eax
jne 0x437bf2
mov ecx, dword [ebp - 0x45c]
test ecx, ecx
je 0x437e1c
mov eax, dword [ebp - 0x440]
cmp word [eax + ecx*2 + 0x65e], 0x5c
je 0x437e1c
mov ebx, 0x30
cmp ecx, 0x102
jae 0x437e21
mov dword [eax + ecx*2 + 0x660], 0x5c
xor edx, edx
jmp 0x437e21
cmp dword [edi + 0x14], 8
jb 0x437c51
mov eax, dword [edi]
jmp 0x437c53
mov eax, edi
push 0xd
push str._desktopIcon
push eax
call fcn.0043ae94
add esp, 0xc
test eax, eax
jne 0x437cb6
cmp dword [edi + 0x14], 8
jb 0x437c71
mov eax, dword [edi]
jmp 0x437c73
mov eax, edi
cmp word [eax + 0x1a], 0x30
jne 0x437c8c
mov eax, dword [ebp - 0x440]
mov word [eax + 0x216], bx
jmp 0x437e21
cmp dword [edi + 0x14], 8
jb 0x437c94
mov edi, dword [edi]
cmp word [edi + 0x1a], 0x31
jne 0x437e21
mov eax, dword [ebp - 0x440]
mov ecx, 0x31
mov word [eax + 0x216], cx
jmp 0x437e21
cmp dword [edi + 0x14], 8
jb 0x437cc0
mov eax, dword [edi]
jmp 0x437cc2
mov eax, edi
push 0xf
push str._startmenuIcon
push eax
call fcn.0043ae94
add esp, 0xc
test eax, eax
jne 0x437d25
cmp dword [edi + 0x14], 8
jb 0x437ce0
mov eax, dword [edi]
jmp 0x437ce2
mov eax, edi
cmp word [eax + 0x1e], 0x30
jne 0x437cfb
mov eax, dword [ebp - 0x440]
mov word [eax + 0x22e], bx
jmp 0x437e21
cmp dword [edi + 0x14], 8
jb 0x437d03
mov edi, dword [edi]
cmp word [edi + 0x1e], 0x31
jne 0x437e21
mov eax, dword [ebp - 0x440]
mov ecx, 0x31
mov word [eax + 0x22e], cx
jmp 0x437e21
cmp dword [edi + 0x14], 8
jb 0x437d2f
mov eax, dword [edi]
jmp 0x437d31
mov eax, edi
mov ecx, str._locale
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x437d5c
test dx, dx
je 0x437d58
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x437d5c
add eax, 4
add ecx, 4
test dx, dx
jne 0x437d36
xor eax, eax
jmp 0x437d61
sbb eax, eax
or eax, 1
test eax, eax
jne 0x437dc4
mov esi, dword [esi]
cmp esi, dword [ebp - 0x44c]
je 0x437e2f
cmp dword [esi + 0x1c], 8
lea edi, [esi + 8]
jb 0x437d7e
mov edi, dword [edi]
mov ecx, dword [ebp - 0x460]
mov edx, 0x104
sub edi, ecx
jmp 0x437d90
lea eax, [edx + 0x7ffffefa]
test eax, eax
je 0x437db6
movzx eax, word [ecx + edi]
test ax, ax
je 0x437db6
mov word [ecx], ax
add ecx, 2
dec edx
jne 0x437d90
sub ecx, 2
xor eax, eax
mov word [ecx], ax
jmp 0x437e21
test edx, edx
jne 0x437dbd
sub ecx, 2
xor eax, eax
mov word [ecx], ax
jmp 0x437e21
cmp dword [edi + 0x14], 8
jb 0x437dce
mov eax, dword [edi]
jmp 0x437dd0
mov eax, edi
push 5
push str._Opt:
push eax
call fcn.0043ae94
add esp, 0xc
test eax, eax
jne 0x437e21
cmp dword [edi + 0x14], 8
jb 0x437dec
mov edi, dword [edi]
lea eax, [edi + 0xa]
push eax
lea ecx, [ebp - 0x438]
call fcn.004034b0
push eax
lea ecx, [ebp - 0x458]
mov byte [ebp - 4], 2
call fcn.00438cb0
lea ecx, [ebp - 0x438]
mov byte [ebp - 4], 1
call fcn.004035c0
jmp 0x437e21
mov ebx, 0x30
mov esi, dword [esi]
cmp esi, dword [ebp - 0x44c]
jne 0x437687
mov edi, dword [ebp - 0x454]
mov ebx, dword [ebp - 0x458]
mov esi, dword [ebp - 0x440]
push 0x104
push esi
call fcn.00435020
add esp, 8
cmp byte [ebp - 0x44d], 0
je 0x438033
lea ecx, [ebp - 0x218]
mov edx, 0x104
mov eax, ecx
sub esi, eax
jmp 0x437e70
lea eax, [edx + 0x7ffffefa]
test eax, eax
je 0x437e8e
movzx eax, word [ecx + esi]
test ax, ax
je 0x437e8e
mov word [ecx], ax
add ecx, 2
dec edx
jne 0x437e70
jmp 0x437e92
test edx, edx
jne 0x437e95
sub ecx, 2
mov esi, dword [ebp - 0x440]
xor eax, eax
mov word [ecx], ax
lea eax, [ebp - 0x218]
push eax
mov byte [esi + 0x1290], 1
call dword [sym.imp.KERNEL32.dll_GetDriveTypeW]
cmp eax, 3
je 0x437f82
cmp eax, 1
je 0x437f82
push str.shell32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
test eax, eax
je 0x437f7b
push str.SHGetSpecialFolderPathW
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x437f7b
push 0
push 5
lea ecx, [ebp - 0x420]
push ecx
push 0
call eax
cmp eax, 1
jne 0x437f7b
lea ecx, [ebp - 0x420]
lea edx, [ecx + 2]
lea ebx, [ebx]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x437f10
sub ecx, edx
sar ecx, 1
je 0x437f45
cmp word [ebp + ecx*2 - 0x422], 0x5c
jne 0x437f45
lea ecx, [ecx*2 - 2]
cmp ecx, 0x208
jae 0x437f76
xor eax, eax
mov word [ebp + ecx - 0x420], ax
lea eax, [ebp - 0x420]
push eax
push str._sEAInstallerLog_
lea eax, [ebp - 0x218]
push 0x104
push eax
call fcn.00402670
add esp, 0x10
lea eax, [ebp - 0x218]
push 0
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
jmp 0x437f82
call fcn.004399a9
mov byte [esi + 0x1290], 0
lea ecx, [ebp - 0x218]
lea edx, [ecx + 2]
jmp 0x437f90
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x437f90
sub ecx, edx
sar ecx, 1
lea eax, [ecx - 1]
cmp eax, 0x100
ja 0x437fd9
cmp word [ebp + ecx*2 - 0x21a], 0x5c
je 0x437fd9
mov eax, 0x5c
mov word [ebp + ecx*2 - 0x218], ax
lea eax, [ecx*2 + 2]
cmp eax, 0x208
jae 0x437f76
xor ecx, ecx
mov word [ebp + eax - 0x218], cx
cmp byte [ebp - 0x443], 0
jne 0x437ff9
cmp byte [ebp - 0x441], 0
jne 0x437ff9
lea eax, [ebp - 0x218]
push eax
push str._sMaintenanceLog.txt
jmp 0x438005
lea eax, [ebp - 0x218]
push eax
push str._sInstallLog.txt
lea eax, [esi + 0x1292]
push 0x104
push eax
call fcn.00402670
add esp, 0x10
cmp byte [esi + 0x1290], 0
je 0x438033
mov ecx, esi
call fcn.00437210
test al, al
jne 0x438033
mov byte [esi + 0x1290], al
cmp byte [ebp - 0x443], 0
je 0x438158
lea eax, [esi + 0x458]
xor ecx, ecx
cmp cx, word [eax]
jne 0x438094
push str.ERROR:_Install_command_line_parameter_missing__installPath.
push esi
call fcn.00438440
add esp, 8
lea ecx, [ebp - 0x458]
call fcn.00438c50
push dword [ebp - 0x458]
call fcn.0043986c
add esp, 4
lea ecx, [ebp - 0x44c]
call fcn.00438c50
push dword [ebp - 0x44c]
call fcn.0043986c
add esp, 4
xor al, al
jmp 0x43833e
xor edx, edx
lea ecx, [esi + 0x250]
cmp dx, word [ecx]
jne 0x4380e8
push str.ERROR:_Install_command_line_parameter_missing__locale.
push esi
call fcn.00438440
add esp, 8
lea ecx, [ebp - 0x458]
call fcn.00438c50
push dword [ebp - 0x458]
call fcn.0043986c
add esp, 4
lea ecx, [ebp - 0x44c]
call fcn.00438c50
push dword [ebp - 0x44c]
call fcn.0043986c
add esp, 4
xor al, al
jmp 0x43833e
mov cl, byte [ebp - 0x442]
mov dl, byte [ebp - 0x439]
test cl, cl
je 0x438143
test dl, dl
je 0x438143
push str.ERROR:_Should_not_be_having__update_and__repair_happening_on_the_same_command_line.
push esi
call fcn.00438440
add esp, 8
lea ecx, [ebp - 0x458]
call fcn.00438c50
push dword [ebp - 0x458]
call fcn.0043986c
add esp, 4
lea ecx, [ebp - 0x44c]
call fcn.00438c50
push dword [ebp - 0x44c]
call fcn.0043986c
add esp, 4
xor al, al
jmp 0x43833e
push eax
mov dword [esi + 0x208], 1
push str.Install_Location:__s
jmp 0x4381f2
cmp byte [ebp - 0x441], 0
je 0x438247
lea eax, [esi + 0x660]
xor ecx, ecx
cmp cx, word [eax]
jne 0x4381b9
push str.ERROR:_Install_command_line_parameter_missing__pdlcInstallPath.
push esi
call fcn.00438440
add esp, 8
lea ecx, [ebp - 0x458]
call fcn.00438c50
push dword [ebp - 0x458]
call fcn.0043986c
add esp, 4
lea ecx, [ebp - 0x44c]
call fcn.00438c50
push dword [ebp - 0x44c]
call fcn.0043986c
add esp, 4
xor al, al
jmp 0x43833e
xor edx, edx
lea ecx, [esi + 0x250]
cmp dx, word [ecx]
je 0x4380a1
mov cl, byte [ebp - 0x442]
mov dl, byte [ebp - 0x439]
test cl, cl
je 0x4381e2
test dl, dl
jne 0x4380fc
push eax
mov dword [esi + 0x208], 0x10000
push str.Install_DLC_Location:__s
push esi
mov byte [esi + 0x20c], cl
mov byte [esi + 0x20d], dl
call fcn.00438440
lea eax, [esi + 0x250]
push eax
push str.Install_Locale:__s
push esi
call fcn.00438440
add esp, 0x18
cmp byte [esi + 0x20c], 0
je 0x438230
push str.Performing_update_install_
push esi
call fcn.00438440
add esp, 8
cmp byte [esi + 0x20d], 0
je 0x438247
push str.Performing_repair_install_
push esi
call fcn.00438440
add esp, 8
mov dword [esi + 0x248], edi
test edi, edi
je 0x4382fc
xor ecx, ecx
mov eax, edi
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00438f0e
mov dword [esi + 0x24c], eax
add esp, 4
mov esi, dword [ebx]
cmp esi, ebx
je 0x4382f6
xor edi, edi
mov edx, 2
mov eax, dword [esi + 0x18]
xor ecx, ecx
add eax, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00438f0e
mov edx, dword [ebp - 0x440]
mov ecx, dword [edx + 0x24c]
mov dword [edi + ecx], eax
mov eax, dword [esi + 0x18]
add eax, 2
push eax
mov eax, dword [edx + 0x24c]
push 0
push dword [edi + eax]
call fcn.0043a7a0
lea eax, [esi + 8]
add esp, 0x10
cmp dword [eax + 0x14], 8
jb 0x4382ce
mov eax, dword [eax]
push eax
mov eax, dword [esi + 0x18]
inc eax
push eax
mov eax, dword [ebp - 0x440]
mov eax, dword [eax + 0x24c]
push dword [edi + eax]
call fcn.00402580
mov esi, dword [esi]
add edi, 4
mov edx, 2
cmp esi, ebx
jne 0x438283
mov esi, dword [ebp - 0x440]
push str.Initialized_installation_config.
push esi
call fcn.00438440
add esp, 8
lea ecx, [ebp - 0x458]
call fcn.00438c50
push dword [ebp - 0x458]
call fcn.0043986c
add esp, 4
lea ecx, [ebp - 0x44c]
call fcn.00438c50
push dword [ebp - 0x44c]
call fcn.0043986c
add esp, 4
mov al, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00438f17
mov esp, ebp
pop ebp
ret 4