Function at 0x463170
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4fa92d
mov eax, dword fs:[0]
push eax
sub esp, 0x3b4
mov eax, dword [0x544320]
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 esi, ecx
mov dword [ebp - 0x390], esi
mov eax, dword [ebp + 8]
lea ebx, [esi + 0xe0]
mov dword [ebp - 0x3b8], eax
mov ecx, ebx
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x3b4], eax
mov eax, dword [ebp + 0x10]
push 0
mov dword [ebp - 0x3b0], eax
mov eax, dword [ebp + 0x14]
push 0x50c888
mov dword [ebp - 0x3bc], eax
call fcn.00409fc0
lea edi, [esi + 0xf8]
push 0
push 0x50c888
mov ecx, edi
mov dword [ebp - 0x388], edi
call fcn.00409fc0
lea eax, [esi + 0x110]
push 0
push 0x50c888
mov ecx, eax
mov dword [ebp - 0x394], eax
call fcn.00409fc0
lea eax, [esi + 0x128]
push 0
push 0x50c888
mov ecx, eax
mov dword [ebp - 0x38c], eax
call fcn.00409fc0
push str.read_path_from_pathconfig.ini
push 0x144
push str.LDMultiModel::getPlayerPath
call fcn.00482c20
add esp, 0xc
mov dword [ebp - 0x398], 7
xor eax, eax
mov dword [ebp - 0x39c], 0
lea ecx, [ebp - 0x3ac]
mov word [ebp - 0x3ac], ax
push 7
push str.player5
call fcn.00409fc0
lea edx, [ebp - 0x3ac]
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x368]
call fcn.004629d0
mov byte [ebp - 4], 2
cmp dword [ebp - 0x398], 8
mov esi, dword [sym.imp.MSVCR120.dll_void___cdecl_operator_delete_void__]
jb 0x4632a8
push dword [ebp - 0x3ac]
call esi
add esp, 4
xor eax, eax
mov dword [ebp - 0x398], 7
mov dl, 1
mov dword [ebp - 0x39c], 0
lea ecx, [ebp - 0x368]
mov word [ebp - 0x3ac], ax
call fcn.00462c10
test al, al
je 0x4632ec
lea eax, [ebp - 0x368]
cmp ebx, eax
je 0x4632ec
push 0xffffffffffffffff
push 0
push eax
mov ecx, ebx
call fcn.00409bd0
push 8
xor eax, eax
mov dword [ebp - 0x370], 7
push str.player64
lea ecx, [ebp - 0x384]
mov dword [ebp - 0x374], 0
mov word [ebp - 0x384], ax
call fcn.00409fc0
lea edx, [ebp - 0x384]
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x2f0]
call fcn.004629d0
mov byte [ebp - 4], 5
cmp dword [ebp - 0x370], 8
jb 0x463348
push dword [ebp - 0x384]
call esi
add esp, 4
xor eax, eax
mov dword [ebp - 0x370], 7
xor dl, dl
mov dword [ebp - 0x374], 0
lea ecx, [ebp - 0x2f0]
mov word [ebp - 0x384], ax
call fcn.00462c10
test al, al
je 0x46338c
lea eax, [ebp - 0x2f0]
cmp edi, eax
je 0x46338c
push 0xffffffffffffffff
push 0
push eax
mov ecx, edi
call fcn.00409bd0
push 7
xor eax, eax
mov dword [ebp - 0x398], 7
push str.player9
lea ecx, [ebp - 0x3ac]
mov dword [ebp - 0x39c], 0
mov word [ebp - 0x3ac], ax
call fcn.00409fc0
lea edx, [ebp - 0x3ac]
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x338]
call fcn.004629d0
mov byte [ebp - 4], 8
cmp dword [ebp - 0x398], 8
jb 0x4633e8
push dword [ebp - 0x3ac]
call esi
add esp, 4
xor eax, eax
mov dword [ebp - 0x398], 7
lea ecx, [ebp - 0x338]
mov dword [ebp - 0x39c], 0
mov word [ebp - 0x3ac], ax
call fcn.00462d50
test al, al
je 0x46342e
mov ecx, dword [ebp - 0x394]
lea eax, [ebp - 0x338]
cmp ecx, eax
je 0x46342e
push 0xffffffffffffffff
push 0
push eax
call fcn.00409bd0
push 7
xor eax, eax
mov dword [ebp - 0x370], 7
push str.player3
lea ecx, [ebp - 0x384]
mov dword [ebp - 0x374], 0
mov word [ebp - 0x384], ax
call fcn.00409fc0
lea edx, [ebp - 0x384]
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x350]
call fcn.004629d0
mov byte [ebp - 4], 0xb
cmp dword [ebp - 0x370], 8
jb 0x46348a
push dword [ebp - 0x384]
call esi
add esp, 4
xor eax, eax
mov dword [ebp - 0x370], 7
mov dl, 1
mov dword [ebp - 0x374], 0
lea ecx, [ebp - 0x350]
mov word [ebp - 0x384], ax
call fcn.00462c10
mov edi, dword [ebp - 0x38c]
test al, al
je 0x4634d4
lea eax, [ebp - 0x350]
cmp edi, eax
je 0x4634d4
push 0xffffffffffffffff
push 0
push eax
mov ecx, edi
call fcn.00409bd0
cmp dword [edi + 0x14], 8
jb 0x4634dc
mov edi, dword [edi]
mov eax, dword [ebp - 0x394]
cmp dword [eax + 0x14], 8
jb 0x4634ec
mov edx, dword [eax]
jmp 0x4634ee
mov edx, eax
mov eax, dword [ebp - 0x388]
cmp dword [eax + 0x14], 8
jb 0x4634fe
mov ecx, dword [eax]
jmp 0x463500
mov ecx, eax
cmp dword [ebx + 0x14], 8
jb 0x46350a
mov eax, dword [ebx]
jmp 0x46350c
mov eax, ebx
push edi
push edx
push ecx
push eax
push str.configpath_player32:_s_player64:_s_player9__s_player3__s
push 0x158
push str.LDMultiModel::getPlayerPath
call fcn.00482c20
mov edi, dword [ebp - 0x390]
add esp, 0x1c
cmp dword [edi + 0xf0], 0
jne 0x4635e0
push str.SoftwareXuanZhiLDPlayer
lea ecx, [ebp - 0x308]
call fcn.00463030
add esp, 4
mov byte [ebp - 4], 0xc
lea eax, [ebp - 0x308]
cmp dword [ebp - 0x2f4], 8
cmovae eax, dword [ebp - 0x308]
push eax
push str.read_player32_path_from_ldplayer__s
push 0x15d
push str.LDMultiModel::getPlayerPath
call fcn.00482c20
add esp, 0x10
lea ecx, [ebp - 0x308]
mov dl, 1
call fcn.00462c10
test al, al
je 0x4635c8
lea eax, [ebp - 0x308]
cmp ebx, eax
je 0x4635a4
push 0xffffffffffffffff
push 0
push eax
mov ecx, ebx
call fcn.00409bd0
cmp dword [ebx + 0x14], 8
jb 0x4635ae
mov eax, dword [ebx]
jmp 0x4635b0
mov eax, ebx
push eax
push str.32_player_path__s
push 0x160
push str.LDMultiModel::getPlayerPath
call fcn.00482c20
add esp, 0x10
mov byte [ebp - 4], 0xb
cmp dword [ebp - 0x2f4], 8
jb 0x4635e0
push dword [ebp - 0x308]
call esi
add esp, 4
cmp dword [edi + 0x108], 0
jne 0x46369f
push str.SoftwareXuanZhiLDPlayer64
lea ecx, [ebp - 0x320]
call fcn.00463030
add esp, 4
mov byte [ebp - 4], 0xd
lea eax, [ebp - 0x320]
cmp dword [ebp - 0x30c], 8
cmovae eax, dword [ebp - 0x320]
push eax
push str.read_player64_path_from_ldplayer__s
push 0x166
push str.LDMultiModel::getPlayerPath
call fcn.00482c20
add esp, 0x10
lea ecx, [ebp - 0x320]
xor dl, dl
call fcn.00462c10
test al, al
je 0x463687
mov edi, dword [ebp - 0x388]
lea eax, [ebp - 0x320]
cmp edi, eax
je 0x46365d
push 0xffffffffffffffff
push 0
push eax
mov ecx, edi
call fcn.00409bd0
cmp dword [edi + 0x14], 8
jb 0x463667
mov eax, dword [edi]
jmp 0x463669
mov eax, edi
push eax
push str.64_player_path__s
push 0x169
push str.LDMultiModel::getPlayerPath
call fcn.00482c20
mov edi, dword [ebp - 0x390]
add esp, 0x10
mov byte [ebp - 4], 0xb
cmp dword [ebp - 0x30c], 8
jb 0x46369f
push dword [ebp - 0x320]
call esi
add esp, 4
cmp dword [edi + 0x120], 0
jne 0x46375c
push str.SoftwareXuanZhiLDPlayer9
lea ecx, [ebp - 0x2d8]
call fcn.00463030
add esp, 4
mov byte [ebp - 4], 0xe
lea eax, [ebp - 0x2d8]
cmp dword [ebp - 0x2c4], 8
cmovae eax, dword [ebp - 0x2d8]
push eax
push str.read_player9_path_from_ldplayer__s
push 0x16f
push str.LDMultiModel::getPlayerPath
call fcn.00482c20
add esp, 0x10
lea ecx, [ebp - 0x2d8]
call fcn.00462d50
test al, al
je 0x463744
lea eax, [ebp - 0x2d8]
lea ecx, [edi + 0x110]
cmp ecx, eax
je 0x463718
push 0xffffffffffffffff
push 0
push eax
call fcn.00409bd0
cmp dword [ebp - 0x2c4], 8
lea eax, [ebp - 0x2d8]
cmovae eax, dword [ebp - 0x2d8]
push eax
push str.9_player_path__s
push 0x172
push str.LDMultiModel::getPlayerPath
call fcn.00482c20
add esp, 0x10
mov byte [ebp - 4], 0xb
cmp dword [ebp - 0x2c4], 8
jb 0x46375c
push dword [ebp - 0x2d8]
call esi
add esp, 4
cmp dword [edi + 0x138], 0
jne 0x46381b
push str.SoftwareChangZhiLDPlayer
lea ecx, [ebp - 0x2c0]
call fcn.00463030
add esp, 4
mov byte [ebp - 4], 0xf
lea eax, [ebp - 0x2c0]
cmp dword [ebp - 0x2ac], 8
cmovae eax, dword [ebp - 0x2c0]
push eax
push str.read_player3_path_from_ldplayer__s
push 0x178
push str.LDMultiModel::getPlayerPath
call fcn.00482c20
add esp, 0x10
lea ecx, [ebp - 0x2c0]
mov dl, 1
call fcn.00462c10
test al, al
je 0x463803
mov ecx, dword [ebp - 0x38c]
lea eax, [ebp - 0x2c0]
cmp ecx, eax
je 0x4637d7
push 0xffffffffffffffff
push 0
push eax
call fcn.00409bd0
cmp dword [ebp - 0x2ac], 8
lea eax, [ebp - 0x2c0]
cmovae eax, dword [ebp - 0x2c0]
push eax
push str.3_player_path__s
push 0x17b
push str.LDMultiModel::getPlayerPath
call fcn.00482c20
add esp, 0x10
mov byte [ebp - 4], 0xb
cmp dword [ebp - 0x2ac], 8
jb 0x46381b
push dword [ebp - 0x2c0]
call esi
add esp, 4
xor eax, eax
push 0x206
push eax
mov word [ebp - 0x218], ax
lea eax, [ebp - 0x216]
push eax
call sub.MSVCR120.dll_memset
add esp, 0xc
lea eax, [ebp - 0x36c]
push eax
push 0x10
push 0
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderLocation]
test eax, eax
js 0x463861
lea eax, [ebp - 0x218]
push eax
push dword [ebp - 0x36c]
call dword [sym.imp.SHELL32.dll_SHGetPathFromIDListW]
xor eax, eax
mov dword [ebp - 0x294], 7
mov dword [ebp - 0x298], 0
mov word [ebp - 0x2a8], ax
cmp word [ebp - 0x218], ax
jne 0x46388b
xor ecx, ecx
jmp 0x4638a3
lea ecx, [ebp - 0x218]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x463894
sub ecx, edx
sar ecx, 1
push ecx
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x2a8]
call fcn.00409fc0
mov byte [ebp - 4], 0x10
cmp dword [ebp - 0x298], 0
je 0x463f39
cmp dword [edi + 0x120], 0
jne 0x463a14
xor eax, eax
mov dword [ebp - 0x24c], 7
mov dword [ebp - 0x250], 0
mov word [ebp - 0x260], ax
push str.LDPlayer9.lnk
lea edx, [ebp - 0x2a8]
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x384]
call fcn.0041d6e0
add esp, 4
lea ecx, [ebp - 0x260]
mov byte [ebp - 4], 0x12
push ecx
push eax
call fcn.0048e5f0
add esp, 8
mov byte [ebp - 4], 0x11
cmp dword [ebp - 0x370], 8
jb 0x46393a
push dword [ebp - 0x384]
call esi
add esp, 4
cmp dword [ebp - 0x250], 0
je 0x463979
lea eax, [ebp - 0x260]
push eax
lea eax, [ebp - 0x384]
push eax
call fcn.00490b90
add esp, 8
lea ecx, [ebp - 0x260]
push eax
call fcn.00427c80
cmp dword [ebp - 0x370], 8
jb 0x463979
push dword [ebp - 0x384]
call esi
add esp, 4
cmp dword [ebp - 0x24c], 8
lea eax, [ebp - 0x260]
cmovae eax, dword [ebp - 0x260]
push eax
push str.read_player9_path_from_shortcut__s
push 0x18d
push str.LDMultiModel::getPlayerPath
call fcn.00482c20
add esp, 0x10
lea ecx, [ebp - 0x260]
call fcn.00462d50
test al, al
je 0x4639fc
lea ecx, [ebp - 0x260]
lea eax, [edi + 0x110]
cmp eax, ecx
je 0x4639d0
push 0xffffffffffffffff
push 0
push ecx
mov ecx, eax
call fcn.00409bd0
cmp dword [ebp - 0x24c], 8
lea eax, [ebp - 0x260]
cmovae eax, dword [ebp - 0x260]
push eax
push str.9_player_path__s
push 0x190
push str.LDMultiModel::getPlayerPath
call fcn.00482c20
add esp, 0x10
mov byte [ebp - 4], 0x10
cmp dword [ebp - 0x24c], 8
jb 0x463a14
push dword [ebp - 0x260]
call esi
add esp, 4
cmp dword [edi + 0xf0], 0
jne 0x463c9d
xor eax, eax
mov dword [ebp - 0x27c], 7
mov dword [ebp - 0x280], 0
mov word [ebp - 0x290], ax
push str.LDPlayer5.lnk
lea edx, [ebp - 0x2a8]
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x384]
call fcn.0041d6e0
add esp, 4
lea ecx, [ebp - 0x290]
mov byte [ebp - 4], 0x14
push ecx
push eax
call fcn.0048e5f0
add esp, 8
mov byte [ebp - 4], 0x13
cmp dword [ebp - 0x370], 8
jb 0x463a87
push dword [ebp - 0x384]
call esi
add esp, 4
cmp dword [ebp - 0x280], 0
je 0x463ac6
lea eax, [ebp - 0x290]
push eax
lea eax, [ebp - 0x384]
push eax
call fcn.00490b90
add esp, 8
lea ecx, [ebp - 0x290]
push eax
call fcn.00427c80
cmp dword [ebp - 0x370], 8
jb 0x463ac6
push dword [ebp - 0x384]
call esi
add esp, 4
cmp dword [ebp - 0x27c], 8
lea eax, [ebp - 0x290]
cmovae eax, dword [ebp - 0x290]
push eax
push str.read_player32_path_from_shortcut__s
push 0x19a
push str.LDMultiModel::getPlayerPath
call fcn.00482c20
add esp, 0x10
lea ecx, [ebp - 0x290]
mov dl, 1
call fcn.00462c10
test al, al
je 0x463b45
lea eax, [ebp - 0x290]
cmp ebx, eax
je 0x463b19
push 0xffffffffffffffff
push 0
push eax
mov ecx, ebx
call fcn.00409bd0
cmp dword [ebp - 0x27c], 8
lea eax, [ebp - 0x290]
cmovae eax, dword [ebp - 0x290]
push eax
push str.32_player_path__s
push 0x19d
push str.LDMultiModel::getPlayerPath
call fcn.00482c20
add esp, 0x10
mov byte [ebp - 4], 0x10
cmp dword [ebp - 0x27c], 8
jb 0x463b5d
push dword [ebp - 0x290]
call esi
add esp, 4
cmp dword [edi + 0xf0], 0
jne 0x463c9d
xor eax, eax
mov dword [ebp - 0x264], 7
mov dword [ebp - 0x268], 0
mov word [ebp - 0x278], ax
push str.LDPlayer4.lnk
lea edx, [ebp - 0x2a8]
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x384]
call fcn.0041d6e0
add esp, 4
lea ecx, [ebp - 0x278]
mov byte [ebp - 4], 0x16
push ecx
push eax
call fcn.0048e5f0
add esp, 8
mov byte [ebp - 4], 0x15
cmp dword [ebp - 0x370], 8
jb 0x463bd0
push dword [ebp - 0x384]
call esi
add esp, 4
cmp dword [ebp - 0x268], 0
je 0x463c06
lea eax, [ebp - 0x278]
push eax
lea eax, [ebp - 0x384]
push eax
call fcn.00490b90
add esp, 8
lea ecx, [ebp - 0x278]
push eax
call fcn.00427c80
lea ecx, [ebp - 0x384]
call fcn.00409ab0
cmp dword [ebp - 0x264], 8
lea eax, [ebp - 0x278]
cmovae eax, dword [ebp - 0x278]
push eax
push str.read_player32_path_from_shortcut__s
push 0x1a7
push str.LDMultiModel::getPlayerPath
call fcn.00482c20
add esp, 0x10
lea ecx, [ebp - 0x278]
mov dl, 1
call fcn.00462c10
test al, al
je 0x463c85
lea eax, [ebp - 0x278]
cmp ebx, eax
je 0x463c59
push 0xffffffffffffffff
push 0
push eax
mov ecx, ebx
call fcn.00409bd0
cmp dword [ebp - 0x264], 8
lea eax, [ebp - 0x278]
cmovae eax, dword [ebp - 0x278]
push eax
push str.32_player_path__s
push 0x1aa
push str.LDMultiModel::getPlayerPath
call fcn.00482c20
add esp, 0x10
mov byte [ebp - 4], 0x10
cmp dword [ebp - 0x264], 8
jb 0x463c9d
push dword [ebp - 0x278]
call esi
add esp, 4
cmp dword [edi + 0x108], 0
jne 0x463de5
xor eax, eax
mov dword [ebp - 0x21c], 7
mov dword [ebp - 0x220], 0
mov word [ebp - 0x230], ax
push str.LDPlayer64.lnk
lea edx, [ebp - 0x2a8]
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x384]
call fcn.0041d6e0
add esp, 4
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 0x18
push ecx
push eax
call fcn.0048e5f0
add esp, 8
mov byte [ebp - 4], 0x17
cmp dword [ebp - 0x370], 8
jb 0x463d10
push dword [ebp - 0x384]
call esi
add esp, 4
cmp dword [ebp - 0x220], 0
je 0x463d46
lea eax, [ebp - 0x230]
push eax
lea eax, [ebp - 0x384]
push eax
call fcn.00490b90
add esp, 8
lea ecx, [ebp - 0x230]
push eax
call fcn.00427c80
lea ecx, [ebp - 0x384]
call fcn.00409ab0
cmp dword [ebp - 0x21c], 8
lea eax, [ebp - 0x230]
cmovae eax, dword [ebp - 0x230]
push eax
push str.read_player64_path_from_shortcut__s
push 0x1b4
push str.LDMultiModel::getPlayerPath
call fcn.00482c20
add esp, 0x10
lea ecx, [ebp - 0x230]
xor dl, dl
call fcn.00462c10
mov edi, dword [ebp - 0x388]
test al, al
je 0x463dcb
lea eax, [ebp - 0x230]
cmp edi, eax
je 0x463d9f
push 0xffffffffffffffff
push 0
push eax
mov ecx, edi
call fcn.00409bd0
cmp dword [ebp - 0x21c], 8
lea eax, [ebp - 0x230]
cmovae eax, dword [ebp - 0x230]
push eax
push str.64_player_path__s
push 0x1b7
push str.LDMultiModel::getPlayerPath
call fcn.00482c20
add esp, 0x10
mov byte [ebp - 4], 0x10
cmp dword [ebp - 0x21c], 8
jb 0x463deb
push dword [ebp - 0x230]
call esi
add esp, 4
jmp 0x463deb
mov edi, dword [ebp - 0x388]
mov eax, dword [ebp - 0x390]
cmp dword [eax + 0x138], 0
jne 0x463f3f
xor eax, eax
mov dword [ebp - 0x234], 7
mov dword [ebp - 0x238], 0
mov word [ebp - 0x248], ax
push str.LDPlayer.lnk
lea edx, [ebp - 0x2a8]
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x384]
call fcn.0041d6e0
add esp, 4
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 0x1a
push ecx
push eax
call fcn.0048e5f0
add esp, 8
mov byte [ebp - 4], 0x19
cmp dword [ebp - 0x370], 8
jb 0x463e64
push dword [ebp - 0x384]
call esi
add esp, 4
cmp dword [ebp - 0x238], 0
je 0x463e9a
lea eax, [ebp - 0x248]
push eax
lea eax, [ebp - 0x384]
push eax
call fcn.00490b90
add esp, 8
lea ecx, [ebp - 0x248]
push eax
call fcn.00427c80
lea ecx, [ebp - 0x384]
call fcn.00409ab0
cmp dword [ebp - 0x234], 8
lea eax, [ebp - 0x248]
cmovae eax, dword [ebp - 0x248]
push eax
push str.read_player3_path_from_shortcut__s
push 0x1c1
push str.LDMultiModel::getPlayerPath
call fcn.00482c20
add esp, 0x10
lea ecx, [ebp - 0x248]
mov dl, 1
call fcn.00462c10
test al, al
je 0x463f1f
mov eax, dword [ebp - 0x38c]
lea ecx, [ebp - 0x248]
cmp eax, ecx
je 0x463ef3
push 0xffffffffffffffff
push 0
push ecx
mov ecx, eax
call fcn.00409bd0
cmp dword [ebp - 0x234], 8
lea eax, [ebp - 0x248]
cmovae eax, dword [ebp - 0x248]
push eax
push str.3_player_path__s
push 0x1c4
push str.LDMultiModel::getPlayerPath
call fcn.00482c20
add esp, 0x10
mov byte [ebp - 4], 0x10
cmp dword [ebp - 0x234], 8
jb 0x463f3f
push dword [ebp - 0x248]
call esi
add esp, 4
jmp 0x463f3f
mov edi, dword [ebp - 0x388]
mov eax, dword [ebp - 0x3b8]
cmp eax, ebx
je 0x463f55
push 0xffffffffffffffff
push 0
push ebx
mov ecx, eax
call fcn.00409bd0
mov eax, dword [ebp - 0x3b4]
cmp eax, edi
je 0x463f6b
push 0xffffffffffffffff
push 0
push edi
mov ecx, eax
call fcn.00409bd0
mov eax, dword [ebp - 0x394]
mov ecx, dword [ebp - 0x3b0]
cmp ecx, eax
je 0x463f85
push 0xffffffffffffffff
push 0
push eax
call fcn.00409bd0
mov eax, dword [ebp - 0x38c]
mov ecx, dword [ebp - 0x3bc]
cmp ecx, eax
je 0x463f9f
push 0xffffffffffffffff
push 0
push eax
call fcn.00409bd0
cmp dword [ebp - 0x294], 8
jb 0x463fb3
push dword [ebp - 0x2a8]
call esi
add esp, 4
xor eax, eax
mov dword [ebp - 0x294], 7
cmp dword [ebp - 0x33c], 8
mov dword [ebp - 0x298], 0
mov word [ebp - 0x2a8], ax
jb 0x463fe4
push dword [ebp - 0x350]
call esi
add esp, 4
xor eax, eax
mov dword [ebp - 0x33c], 7
cmp dword [ebp - 0x324], 8
mov dword [ebp - 0x340], 0
mov word [ebp - 0x350], ax
jb 0x464015
push dword [ebp - 0x338]
call esi
add esp, 4
xor eax, eax
mov dword [ebp - 0x324], 7
cmp dword [ebp - 0x2dc], 8
mov dword [ebp - 0x328], 0
mov word [ebp - 0x338], ax
jb 0x464046
push dword [ebp - 0x2f0]
call esi
add esp, 4
xor eax, eax
mov dword [ebp - 0x2dc], 7
cmp dword [ebp - 0x354], 8
mov dword [ebp - 0x2e0], 0
mov word [ebp - 0x2f0], ax
jb 0x464077
push dword [ebp - 0x368]
call esi
add esp, 4
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.004f009a
mov esp, ebp
pop ebp
ret 0x10