Function at 0x416b40
Capabilities:
Check if file exists
Get common file path

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x70e107
mov eax, dword fs:[0]
push eax
mov eax, 0x26844
call fcn.00438750
mov eax, dword [0x804580]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x267cc], edi
mov eax, dword [0x817708]
test eax, eax
jne 0x416bb7
push 0xc4
call fcn.00438065
add esp, 4
mov dword [ebp - 0x267c4], eax
mov dword [ebp - 4], 0
test eax, eax
je 0x416ba9
mov ecx, eax
call fcn.0040bf20
jmp 0x416bab
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x817708], eax
push 1
push str.af5f0
push 1
mov ecx, eax
call fcn.0040d660
lea eax, [edi + 0x50]
push eax
lea eax, [ebp - 0x308]
push eax
call fcn.004417f1
add esp, 8
lea ecx, [ebp - 0x26850]
mov dword [ebp - 4], 1
call fcn.00443ae4
cmp dword [ebp - 0x2f4], 0x10
lea eax, [ebp - 0x308]
lea ecx, [ebp - 0x26850]
mov byte [ebp - 4], 2
cmovae eax, dword [ebp - 0x308]
push eax
call fcn.00443d1a
lea ecx, [ebp - 0x26850]
call fcn.0044406b
mov dword [ebp - 0x267c0], eax
mov ecx, dword [eax + 4]
sub ecx, dword [eax]
mov eax, 1
cmove ecx, eax
mov dword [ebp - 0x267c4], ecx
lea esi, [ecx + 1]
push esi
call fcn.0043872d
push esi
push 0
push eax
mov dword [ebp - 0x267bc], eax
call fcn.004c3e70
mov esi, dword [ebp - 0x267c0]
add esp, 0x10
xor edx, edx
mov ecx, dword [esi + 4]
sub ecx, dword [esi]
je 0x416c76
mov ecx, dword [ebp - 0x267bc]
mov eax, dword [esi]
mov al, byte [edx + eax]
mov byte [edx + ecx], al
inc edx
mov eax, dword [esi + 4]
sub eax, dword [esi]
cmp edx, eax
jb 0x416c64
mov esi, dword [ebp - 0x267bc]
lea eax, [ebp - 0x267d4]
push eax
lea eax, [ebp - 0x267d0]
mov dword [ebp - 0x267d0], 0
push eax
push dword [ebp - 0x267c4]
mov dword [ebp - 0x267d4], 0
push esi
call fcn.0044d8b7
mov eax, dword [ebp - 0x267d0]
add esp, 0x10
mov dword [ebp - 0x267c4], eax
test eax, eax
jne 0x416cd5
test esi, esi
je 0x416e2a
push esi
call fcn.00438736
add esp, 4
xor esi, esi
jmp 0x417b19
mov edi, dword [edi + 0x20]
mov esi, dword [edi]
mov ecx, edi
mov byte [ebp - 4], 3
push dword [esi + 4]
call fcn.00411580
mov eax, dword [edi]
mov dword [eax + 4], esi
mov eax, dword [edi]
mov dword [eax], esi
mov eax, dword [edi]
mov dword [eax + 8], esi
mov dword [edi + 4], 0
mov edi, dword [ebp - 0x267cc]
mov edi, dword [edi + 0x24]
mov esi, dword [edi]
mov ecx, edi
mov byte [ebp - 4], 4
push dword [esi + 4]
call fcn.00411580
mov eax, dword [edi]
lea ecx, [ebp - 0x2681c]
mov byte [ebp - 4], 2
mov dword [eax + 4], esi
mov eax, dword [edi]
mov dword [eax], esi
mov eax, dword [edi]
mov dword [eax + 8], esi
mov dword [edi + 4], 0
call fcn.0041c750
push 1
push 0
push dword [ebp - 0x267c4]
lea ecx, [ebp - 0x2681c]
mov byte [ebp - 4], 5
call fcn.0041f170
test eax, eax
jne 0x416d8d
mov eax, dword [ebp - 0x267e8]
mov dword [ebp - method.TiXmlDocument.virtual_0], vtable.TiXmlDocument.0
mov byte [ebp - 4], 2
cmp eax, 0x817a30
je 0x416d7b
push eax
call fcn.00438736
add esp, 4
lea ecx, [ebp - 0x2681c]
call fcn.0041cbf0
xor esi, esi
jmp 0x416e13
push str.d190dc55e5af11
lea ecx, [ebp - 0x2681c]
call fcn.0041d4b0
mov edi, eax
test edi, edi
je 0x416d57
push str.b45b214d1832f4
mov ecx, edi
call fcn.0041d510
mov esi, dword [ebp - 0x267cc]
test eax, eax
je 0x416dc4
push dword [esi + 0x20]
mov ecx, esi
push eax
call fcn.00419990
push str.dd9baaedec4f61
mov ecx, edi
call fcn.0041d510
test eax, eax
je 0x416ddf
push dword [esi + 0x24]
mov ecx, esi
push eax
call fcn.00419990
mov eax, dword [ebp - 0x267e8]
mov byte [ebp - 4], 2
mov dword [ebp - method.TiXmlDocument.virtual_0], vtable.TiXmlDocument.0
cmp eax, 0x817a30
je 0x416e03
push eax
call fcn.00438736
add esp, 4
lea ecx, [ebp - 0x2681c]
call fcn.0041cbf0
mov esi, 1
mov ecx, dword [ebp - 0x267bc]
test ecx, ecx
je 0x416e26
push ecx
call fcn.00438736
add esp, 4
test esi, esi
jne 0x416e31
xor esi, esi
jmp 0x417b19
xor eax, eax
mov dword [ebp - 0x298], 0
mov dword [ebp - 0x294], 7
mov word [ebp - 0x2a8], ax
mov edi, dword [ebp - 0x267cc]
push str.b100b64523ed4c
mov byte [ebp - 4], 6
push dword [edi + 0x24]
call fcn.00418a00
mov edx, eax
add esp, 8
test edx, edx
je 0x416e8f
mov ecx, edx
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x416e73
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x2a8]
call fcn.004050a0
mov eax, dword [0x8176f0]
test eax, eax
jne 0x416ec7
push 0x130
call fcn.00438065
add esp, 4
mov dword [ebp - 0x267c4], eax
mov byte [ebp - 4], 7
test eax, eax
je 0x416ebc
mov ecx, eax
call fcn.0040dbf0
jmp 0x416ebe
xor eax, eax
mov byte [ebp - 4], 6
mov dword [0x8176f0], eax
mov ecx, eax
call fcn.004063c0
test eax, eax
jne 0x416ee3
push eax
push 0x720d00
lea ecx, [ebp - 0x2a8]
call fcn.004050a0
cmp dword [ebp - 0x298], 0
je 0x41723c
call fcn.004400e5
mov esi, eax
call fcn.0044206e
mov dword [ebp - 0x267c4], eax
call fcn.00441eb9
mov ecx, eax
xor eax, eax
mov dword [ebp - 0x267bc], eax
test esi, esi
jne 0x416f7e
cmp dword [ebp - 0x267c4], eax
jne 0x416f7e
test ecx, ecx
je 0x416f7e
push str.b718851be2b499
push dword [edi + 0x24]
call fcn.00418a00
mov esi, eax
add esp, 8
test esi, esi
je 0x416f7e
push 0
push str.3bcc
push str.CMSetting
call fcn.00404050
mov ecx, eax
call fcn.0043c548
mov dword [ebp - 0x267c4], eax
test eax, eax
je 0x416f7e
push esi
call fcn.004cc637
push 0
mov esi, eax
call fcn.004cc70a
sub eax, dword [ebp - 0x267c4]
add esp, 8
cdq
xor eax, edx
sub eax, edx
cmp eax, esi
jl 0x417231
push 1
push str.7adb9
push 1
call fcn.004113b0
mov ecx, eax
call fcn.0040d660
push 0
sub esp, 0x18
xor eax, eax
mov ecx, esp
mov dword [ebp - 0x267c4], esp
push 7
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
push str.__open
mov word [ecx], ax
call fcn.004050a0
sub esp, 0x18
mov byte [ebp - 4], 8
lea eax, [ebp - 0x2a8]
mov ecx, esp
push eax
call fcn.00402550
mov byte [ebp - 4], 6
call fcn.00440da5
add esp, 0x34
test eax, eax
jne 0x417000
push 1
push str.ffe60
push 1
call fcn.004113b0
mov ecx, eax
call fcn.0040d660
xor esi, esi
jmp 0x417add
call fcn.00404050
mov ecx, eax
call fcn.0043c3ff
mov edx, eax
lea esi, [edx + 2]
mov cx, word [edx]
add edx, 2
test cx, cx
jne 0x417011
sub edx, esi
lea esi, [edi + 0xb0]
sar edx, 1
mov ecx, esi
push edx
push eax
call fcn.004050a0
push 7
push str.CfgPath
mov ecx, esi
call fcn.00404f20
push 1
push 0x7227c0
mov ecx, esi
call fcn.00404f20
push 8
push str.Download
mov ecx, esi
call fcn.00404f20
push 1
push 0x7227c0
mov ecx, esi
call fcn.00404f20
xor eax, eax
mov dword [ebp - 0x238], 0
mov dword [ebp - 0x234], 7
mov word [ebp - 0x248], ax
sub esp, 0x18
mov byte [ebp - 4], 9
mov ecx, esp
mov dword [ebp - 0x267c4], esp
push eax
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], 7
push 0x720d00
mov word [ecx], ax
call fcn.004050a0
sub esp, 0x18
mov byte [ebp - 4], 0xa
mov ecx, esp
mov dword [ebp - 0x267c0], esp
xor eax, eax
push 0xb
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
push str.__filename
mov word [ecx], ax
call fcn.004050a0
sub esp, 0x18
mov byte [ebp - 4], 0xb
lea eax, [ebp - 0x2a8]
mov ecx, esp
push eax
call fcn.00402550
lea eax, [ebp - 0x260]
mov byte [ebp - 4], 9
push eax
call fcn.00440bac
add esp, 0x34
mov byte [ebp - 4], 0xc
lea eax, [ebp - 0x260]
mov dword [ebp - 0x267c4], esp
mov ecx, esp
push eax
call fcn.00402550
cmp dword [esi + 0x14], 8
mov byte [ebp - 4], 0xd
jb 0x417125
mov esi, dword [esi]
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x267c0], esp
push esi
call fcn.00413570
sub esp, 0x18
mov byte [ebp - 4], 0xe
lea eax, [ebp - 0x2a8]
mov ecx, esp
push eax
call fcn.00402550
mov ecx, edi
mov byte [ebp - 4], 0xc
call fcn.00413f70
test eax, eax
je 0x41719a
mov ecx, edi
call fcn.00417b90
test eax, eax
je 0x41719a
push 1
push str.97b79
push 1
call fcn.004113b0
mov ecx, eax
call fcn.0040d660
lea ecx, [ebp - 0x260]
call fcn.00402710
lea ecx, [ebp - 0x248]
call fcn.00402710
mov esi, 1
jmp 0x417add
push 1
push str.c7168
push 1
call fcn.004113b0
mov ecx, eax
call fcn.0040d660
mov ecx, edi
call fcn.00415510
push 1
test eax, eax
je 0x4171db
push str.51041
push 1
call fcn.004113b0
mov ecx, eax
call fcn.0040d660
mov dword [ebp - 0x267bc], 1
jmp 0x4171f6
push str.e4c42
push 1
call fcn.004113b0
mov ecx, eax
call fcn.0040d660
xor eax, eax
mov dword [ebp - 0x267bc], eax
cmp dword [edi + 0xc8], 0
jle 0x41721b
mov esi, dword [sym.imp.KERNEL32.dll_Sleep]
push 0x3e8
call esi
dec dword [edi + 0xc8]
cmp dword [edi + 0xc8], 0
jg 0x417205
lea ecx, [ebp - 0x260]
call fcn.00402710
lea ecx, [ebp - 0x248]
call fcn.00402710
mov esi, dword [ebp - 0x267bc]
jmp 0x417add
xor eax, eax
mov dword [ebp - 0x280], 0
push eax
push 0x720d00
lea ecx, [ebp - 0x290]
mov dword [ebp - 0x27c], 7
mov word [ebp - 0x290], ax
call fcn.004050a0
xor eax, eax
mov byte [ebp - 4], 0xf
push eax
push 0x720d00
lea ecx, [ebp - 0x248]
mov dword [ebp - 0x238], 0
mov dword [ebp - 0x234], 7
mov word [ebp - 0x248], ax
call fcn.004050a0
xor eax, eax
mov byte [ebp - 4], 0x10
push eax
push 0x720d00
lea ecx, [ebp - 0x2d8]
mov dword [ebp - 0x2c8], 0
mov dword [ebp - 0x2c4], 7
mov word [ebp - 0x2d8], ax
call fcn.004050a0
xor eax, eax
mov byte [ebp - 4], 0x11
push eax
push 0x720d00
lea ecx, [ebp - 0x2c0]
mov dword [ebp - 0x2b0], 0
mov dword [ebp - 0x2ac], 7
mov word [ebp - 0x2c0], ax
call fcn.004050a0
push str.a9a321001ef494
push dword [edi + 0x20]
mov byte [ebp - 4], 0x12
call fcn.00418a00
mov edx, eax
add esp, 8
test edx, edx
je 0x41733c
mov ecx, edx
lea esi, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x417320
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x290]
call fcn.004050a0
push str.cc3dd72c47582f
push dword [edi + 0x20]
call fcn.00418a00
mov edx, eax
add esp, 8
test edx, edx
je 0x417373
mov ecx, edx
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x417357
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x248]
call fcn.004050a0
push str.c64ca764125a24
push dword [edi + 0x20]
call fcn.00418a00
mov edx, eax
add esp, 8
test edx, edx
je 0x4173ac
mov ecx, edx
lea esi, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x417390
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x2d8]
call fcn.004050a0
push str.d4250d2e6d26ff
push dword [edi + 0x20]
call fcn.00418a00
mov edx, eax
add esp, 8
test edx, edx
je 0x4173e3
mov ecx, edx
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4173c7
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x2c0]
call fcn.004050a0
cmp dword [ebp - 0x280], 0
jne 0x4173f3
xor esi, esi
jmp 0x417ab1
push 0x208
lea eax, [ebp - 0x218]
push 0
push eax
call fcn.004c3e70
add esp, 0xc
lea eax, [ebp - 0x218]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
xor eax, eax
mov dword [ebp - 0x2e0], 0
lea ecx, [ebp - 0x218]
mov dword [ebp - 0x2dc], 7
mov word [ebp - 0x2f0], ax
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x417441
sub ecx, edx
lea eax, [ebp - 0x218]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x2f0]
call fcn.004050a0
mov esi, dword [edi + 4]
xor edx, edx
mov ecx, dword [edi + 8]
sub ecx, esi
mov byte [ebp - 4], 0x13
add ecx, 3
mov dword [ebp - 0x267c0], edx
shr ecx, 2
cmp esi, dword [edi + 8]
cmova ecx, edx
mov dword [ebp - 0x267bc], ecx
test ecx, ecx
je 0x4174bd
mov eax, ecx
nop
mov ecx, dword [esi]
test ecx, ecx
je 0x4174af
mov eax, dword [ecx]
push 0
push 0
push 0x46b
call dword [eax]
mov edx, dword [ebp - 0x267c0]
mov eax, dword [ebp - 0x267bc]
inc edx
add esi, 4
mov dword [ebp - 0x267c0], edx
cmp edx, eax
jne 0x417490
mov eax, dword [edi + 8]
xor edx, edx
mov esi, dword [edi + 4]
mov ecx, eax
sub ecx, esi
xor edi, edi
add ecx, 3
shr ecx, 2
cmp esi, eax
cmova ecx, edx
mov dword [ebp - 0x267c0], ecx
test ecx, ecx
je 0x417503
mov eax, ecx
mov ecx, dword [esi]
test ecx, ecx
je 0x4174fb
mov eax, dword [ecx]
push 0
push 0
push 0x465
call dword [eax]
mov eax, dword [ebp - 0x267c0]
inc edi
add esi, 4
cmp edi, eax
jne 0x4174e2
cmp dword [ebp - 0x27c], 8
lea eax, [ebp - 0x290]
cmovae eax, dword [ebp - 0x290]
push eax
lea eax, [ebp - 0x338]
push eax
call fcn.0044239f
lea eax, [ebp - 0x338]
mov byte [ebp - 4], 0x14
push eax
lea eax, [ebp - 0x2f0]
push eax
lea eax, [ebp - 0x278]
push eax
call fcn.00413060
add esp, 0x14
cmp dword [ebp - 0x264], 8
lea eax, [ebp - 0x278]
mov byte [ebp - 4], 0x15
cmovae eax, dword [ebp - 0x278]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x417585
cmp dword [ebp - 0x264], 8
lea eax, [ebp - 0x278]
cmovae eax, dword [ebp - 0x278]
push eax
call fcn.0044e5eb
add esp, 4
lea eax, [ebp - 0x2f0]
push eax
lea eax, [ebp - 0x320]
push eax
call fcn.004417f1
lea eax, [ebp - 0x290]
mov byte [ebp - 4], 0x16
push eax
lea eax, [ebp - 0x260]
push eax
call fcn.004417f1
mov ecx, eax
add esp, 0x10
cmp dword [ecx + 0x14], 0x10
jb 0x4175bc
mov ecx, dword [ecx]
lea edx, [ebp - 0x980]
sub edx, ecx
mov al, byte [ecx]
lea ecx, [ecx + 1]
mov byte [edx + ecx - 1], al
test al, al
jne 0x4175c4
lea ecx, [ebp - 0x260]
call fcn.004026c0
cmp dword [ebp - 0x30c], 0x10
lea ecx, [ebp - 0x320]
lea edx, [ebp - 0x780]
cmovae ecx, dword [ebp - 0x320]
sub edx, ecx
nop dword [eax + eax]
mov al, byte [ecx]
lea ecx, [ecx + 1]
mov byte [edx + ecx - 1], al
test al, al
jne 0x417600
lea ecx, [ebp - 0x267b8]
call fcn.0044da29
sub esp, 0x300
mov byte [ebp - 4], 0x17
mov edi, esp
lea esi, [ebp - 0x980]
mov ecx, 0xc0
rep movsd dword es:[edi], dword [esi]
lea ecx, [ebp - 0x267b8]
call fcn.0044dad9
lea ecx, [ebp - 0x267b8]
call fcn.0044e4c8
push 0x300
lea eax, [ebp - 0x680]
push 0
push eax
call fcn.004c3e70
xorps xmm0, xmm0
mov dword [ebp - 0x380], 0
add esp, 0xc
movups xmmword [ebp - 0x378], xmm0
lea ecx, [ebp - 0x267b8]
call fcn.0044e1da
test eax, eax
je 0x417714
lea eax, [ebp - 0x680]
push eax
lea ecx, [ebp - 0x267b8]
call fcn.0044de6d
movsd xmm0, qword [ebp - 0x370]
xor edi, edi
divsd xmm0, qword [ebp - 0x378]
mov eax, dword [ebp - 0x267cc]
movsd qword [eax + 0x10], xmm0
mov esi, dword [eax + 4]
mulsd xmm0, qword [0x721b68]
mov eax, dword [eax + 8]
mov ecx, eax
sub ecx, esi
add ecx, 3
shr ecx, 2
cmp esi, eax
cvttsd2si edx, xmm0
cmova ecx, edi
mov dword [ebp - 0x267c0], ecx
mov dword [ebp - 0x267bc], edx
test ecx, ecx
je 0x41770c
mov eax, ecx
mov ecx, dword [esi]
test ecx, ecx
je 0x417704
mov eax, dword [ecx]
push edx
push 0
push 0x466
call dword [eax]
mov eax, dword [ebp - 0x267c0]
mov edx, dword [ebp - 0x267bc]
inc edi
add esi, 4
cmp edi, eax
jne 0x4176e6
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
lea ecx, [ebp - 0x267b8]
call fcn.0044e1e6
test eax, eax
je 0x417671
lea eax, [ebp - 0x680]
push eax
lea ecx, [ebp - 0x267b8]
call fcn.0044de6d
movsd xmm0, qword [ebp - 0x370]
movsd qword [ebp - 0x267c8], xmm0
divsd xmm0, qword [ebp - 0x378]
mov esi, dword [ebp - 0x267cc]
mov ecx, esi
movsd qword [esi + 0x10], xmm0
mulsd xmm0, qword [0x721b68]
cvttsd2si eax, xmm0
push eax
push 0
push 0x466
call fcn.00417f40
movsd xmm0, qword [ebp - 0x267c8]
ucomisd xmm0, qword [ebp - 0x378]
lahf
test ah, 0x44
jp 0x41779f
ucomisd xmm0, qword [0x7239c0]
lahf
test ah, 0x44
jp 0x41782b
lea eax, [ebp - 0x2c0]
xor edi, edi
push 0x720d00
push eax
call fcn.00401d70
add esp, 8
test al, al
jne 0x417a5b
sub esp, 0x18
lea eax, [ebp - 0x278]
mov ecx, esp
push eax
call fcn.00402550
lea eax, [ebp - 0x260]
mov ecx, esi
push eax
call fcn.00418ad0
cmp dword [ebp - 0x2ac], 8
lea ecx, [ebp - 0x2c0]
lea eax, [ebp - 0x260]
cmovae ecx, dword [ebp - 0x2c0]
cmp dword [ebp - 0x24c], 8
push ecx
cmovae eax, dword [ebp - 0x260]
push eax
call fcn.004caa8f
add esp, 8
lea ecx, [ebp - 0x260]
test eax, eax
mov eax, 1
cmove edi, eax
call fcn.00402710
test edi, edi
je 0x417a5b
push 0x64
push 0
push 0x466
mov ecx, esi
call fcn.00417f40
xor eax, eax
mov dword [ebp - 0x220], 0
push eax
push 0x720d00
lea ecx, [ebp - 0x230]
mov dword [ebp - 0x21c], 7
mov word [ebp - 0x230], ax
call fcn.004050a0
push 0xffffffffffffffff
push 0x2e
lea ecx, [ebp - 0x338]
mov byte [ebp - 4], 0x18
call fcn.0041a600
push eax
push 0
lea eax, [ebp - 0x260]
push eax
lea ecx, [ebp - 0x338]
call fcn.0041a660
push 0x723908
push eax
lea eax, [ebp - 0x350]
mov byte [ebp - 4], 0x19
push eax
call fcn.00412ff0
add esp, 0xc
lea ecx, [ebp - 0x260]
mov byte [ebp - 4], 0x1b
call fcn.00402710
lea eax, [ebp - 0x248]
push 0x720d00
push eax
call fcn.00401d70
add esp, 8
test al, al
jne 0x4178f7
cmp dword [ebp - 0x234], 8
lea eax, [ebp - 0x248]
push dword [ebp - 0x238]
cmovae eax, dword [ebp - 0x248]
lea ecx, [ebp - 0x350]
push eax
call fcn.004050a0
lea eax, [ebp - 0x350]
push eax
lea eax, [ebp - 0x2f0]
push eax
lea eax, [ebp - 0x368]
push eax
call fcn.00413060
mov edi, eax
add esp, 0xc
lea eax, [ebp - 0x230]
cmp eax, edi
je 0x417951
mov ecx, eax
call fcn.00402710
movups xmm0, xmmword [edi]
xor eax, eax
movups xmmword [ebp - 0x230], xmm0
movq xmm0, qword [edi + 0x10]
movq qword [ebp - 0x220], xmm0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 7
mov word [edi], ax
lea ecx, [ebp - 0x368]
call fcn.00402710
cmp dword [ebp - 0x21c], 8
lea ecx, [ebp - 0x230]
lea eax, [ebp - 0x278]
cmovae ecx, dword [ebp - 0x230]
cmp dword [ebp - 0x264], 8
push ecx
cmovae eax, dword [ebp - 0x278]
push eax
call fcn.0044eb6f
cmp dword [ebp - 0x21c], 8
lea eax, [ebp - 0x230]
cmovae eax, dword [ebp - 0x230]
push eax
call fcn.0044eb22
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
add esp, 0xc
push 0x3e8
call edi
cmp dword [ebp - 0x21c], 8
lea eax, [ebp - 0x230]
cmovae eax, dword [ebp - 0x230]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x417a0a
cmp dword [ebp - 0x2c4], 8
lea edx, [ebp - 0x2d8]
push 0xffffffffffffffff
cmovae edx, dword [ebp - 0x2d8]
lea eax, [ebp - 0x230]
cmp dword [ebp - 0x21c], 8
push 1
cmovae eax, dword [ebp - 0x230]
push edx
push eax
call fcn.0043f86e
add esp, 0x10
push 0
push 0
push 0x469
mov ecx, esi
call fcn.00417f40
cmp dword [ebp - 0x21c], 8
lea eax, [ebp - 0x230]
cmovae eax, dword [ebp - 0x230]
push eax
call fcn.0044e8b0
add esp, 4
push 0x3e8
call edi
lea ecx, [ebp - 0x350]
call fcn.00402710
lea ecx, [ebp - 0x230]
call fcn.00402710
mov esi, 1
jmp 0x417a7a
movsd xmm0, qword [0x7239c8]
mov ecx, esi
push 0x64
push 0
push 0x467
movsd qword [esi + 0x10], xmm0
call fcn.00417f40
xor esi, esi
lea ecx, [ebp - 0x267b8]
call fcn.0044dace
lea ecx, [ebp - 0x320]
call fcn.004026c0
lea ecx, [ebp - 0x278]
call fcn.00402710
lea ecx, [ebp - 0x338]
call fcn.00402710
lea ecx, [ebp - 0x2f0]
call fcn.00402710
lea ecx, [ebp - 0x2c0]
call fcn.00402710
lea ecx, [ebp - 0x2d8]
call fcn.00402710
lea ecx, [ebp - 0x248]
call fcn.00402710
lea ecx, [ebp - 0x290]
call fcn.00402710
mov edx, dword [ebp - 0x294]
cmp edx, 8
jb 0x417b19
mov ecx, dword [ebp - 0x2a8]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x417b0f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417b77
push edx
push ecx
call fcn.004382df
add esp, 8
lea ecx, [ebp - 0x26850]
call fcn.00443b65
mov edx, dword [ebp - 0x2f4]
cmp edx, 0x10
jb 0x417b5a
mov ecx, dword [ebp - 0x308]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x417b50
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417b7c
push edx
push ecx
call fcn.004382df
add esp, 8
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00438587
mov esp, ebp
pop ebp
ret
call fcn.004c75d7
call fcn.004c75d7
int3