Function at 0x414070
Capabilities:
Check for time delay via gettickcount
Create process on windows
Create thread
Delete file
Get common file path

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x48da9e
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x950
mov eax, dword [0x4bc8c0]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
cmp dword [0x4cb884], 0
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount]
je 0x41438a
call esi
mov ecx, dword [0x4cb884]
add ecx, 0x3e8
cmp ecx, eax
jae 0x41438a
push 0x400
lea eax, [ebp - 0x818]
push 0
push eax
call fcn.0046b870
add esp, 0xc
lea eax, [ebp - 0x218]
push 0x200
push 0
push eax
call fcn.0046b870
add esp, 0xc
lea eax, [ebp - 0x418]
push 0x200
push 0
push eax
call fcn.0046b870
add esp, 0xc
mov dword [ebp - 0x824], 0
xorps xmm0, xmm0
mov dword [ebp - 0x820], 0
lea ecx, [ebp - 0x834]
movups xmmword [ebp - 0x834], xmm0
push 4
push str.Game
call fcn.0040cfd0
lea eax, [ebp - 0x81c]
mov dword [ebp - 4], 0
push eax
mov dword [ebp - 0x81c], 0
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [sym.imp.KERNEL32.dll_IsWow64Process]
test eax, eax
je 0x41417e
cmp dword [ebp - 0x81c], 0
jne 0x414190
push 8
push str.Game_x86
lea ecx, [ebp - 0x834]
call fcn.00408ca0
lea eax, [ebp - 0x218]
push eax
push 0x200
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
cmp dword [ebp - 0x820], 0xf
lea eax, [ebp - 0x834]
cmova eax, dword [ebp - 0x834]
push eax
lea eax, [ebp - 0x218]
push eax
lea eax, [ebp - 0x818]
push str._s_s.exe
push eax
call fcn.00418370
cmp dword [ebp - 0x820], 0xf
lea eax, [ebp - 0x834]
push str._new_losttale_launcher__wf
cmova eax, dword [ebp - 0x834]
push eax
lea eax, [ebp - 0x418]
push str._s.exe__s
push eax
call fcn.00418390
push 0x40
lea eax, [ebp - 0x88c]
mov dword [ebp - 0x890], 0x44
push 0
push eax
call fcn.0046b870
add esp, 0x2c
lea eax, [ebp - 0x848]
xorps xmm0, xmm0
movups xmmword [ebp - 0x848], xmm0
push eax
lea eax, [ebp - 0x890]
push eax
lea eax, [ebp - 0x218]
push eax
push 0
push 0
push 0
push 0
push 0
lea eax, [ebp - 0x418]
push eax
lea eax, [ebp - 0x818]
push eax
call dword [sym.imp.KERNEL32.dll_CreateProcessA]
test eax, eax
jne 0x414325
push 0xb0
push eax
lea eax, [ebp - 0x940]
push eax
call fcn.0046b870
add esp, 8
lea ecx, [ebp - 0x940]
call fcn.00406870
mov byte [ebp - 4], 1
lea eax, [ebp - 0x834]
cmp dword [ebp - 0x820], 0xf
push dword [ebp - 0x824]
cmova eax, dword [ebp - 0x834]
push eax
lea eax, [ebp - 0x930]
push eax
call fcn.0041ab10
add esp, 0xc
mov edx, str._was_not_found.
mov ecx, eax
call fcn.0040a030
lea eax, [ebp - 0x960]
push eax
lea ecx, [ebp - 0x940]
call fcn.00406780
cmp dword [eax + 0x14], 0xf
jbe 0x4142d0
mov eax, dword [eax]
push 0x10
push str.Error
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
mov ecx, dword [ebp - 0x94c]
cmp ecx, 0xf
jbe 0x41431a
mov edx, dword [ebp - 0x960]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x414310
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x414a05
push ecx
push edx
call fcn.004697ab
add esp, 8
lea ecx, [ebp - 0x940]
call fcn.00405d40
cmp dword [0x4bd3b4], 0xf
mov eax, 0x4bd3a0
cmova eax, dword [0x4bd3a0]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
push 0
call dword [sym.imp.USER32.dll_PostQuitMessage]
mov ecx, dword [ebp - 0x820]
cmp ecx, 0xf
jbe 0x4149e7
mov edx, dword [ebp - 0x834]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41437b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x414a0a
push ecx
push edx
call fcn.004697ab
add esp, 8
jmp 0x4149e7
cmp dword [0x4cb888], 0
je 0x4143aa
call esi
cmp dword [0x4cb888], eax
jae 0x4143aa
push 0
call dword [sym.imp.USER32.dll_PostQuitMessage]
jmp 0x4149e7
cmp byte [0x4cb894], 0
mov eax, dword [0x4cb7c0]
je 0x4143c1
cmp eax, 6
jne 0x4149e7
cmp eax, 6
je 0x4143eb
cmp dword [0x4cb880], 0xf
mov eax, 0x4cb86c
mov dword [0x4cb87c], 0
cmova eax, dword [0x4cb86c]
mov byte [eax], 0
mov eax, dword [0x4cb7c0]
dec eax
cmp eax, 8
ja case.0x4143f5.3
jmp dword [eax*4 + 0x414a4c]
push 0xb
push str.Maintenance
mov ecx, 0x4cb854
mov dword [0x4cb794], 0x1414ff
call fcn.00408ca0
call esi
add eax, 0xbb8
jmp 0x4149db
push 0xd
push str.Unknown_Error
jmp 0x414403
push 0xb
push str.Updating...
mov ecx, 0x4cb854
mov dword [0x4cb794], 0xb4ff
call fcn.00408ca0
push 0x31
xorps xmm0, xmm0
mov dword [ebp - 0x824], 0
push str.https:__legacy.losttale.com_Launcher_Versions.txt
lea ecx, [ebp - 0x834]
mov dword [ebp - 0x820], 0
movups xmmword [ebp - 0x834], xmm0
call fcn.0040cfd0
push ecx
lea eax, [ebp - 0x834]
mov dword [ebp - 4], 2
push eax
mov ecx, 0x4cb7c8
call fcn.00405780
mov ecx, dword [ebp - 0x820]
cmp ecx, 0xf
jbe case.0x4143f5.3
mov edx, dword [ebp - 0x834]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4144c4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x414a05
push ecx
push edx
call fcn.004697ab
add esp, 8
jmp case.0x4143f5.3
push 0x12
push str.Verifying_Files...
mov ecx, 0x4cb854
mov dword [0x4cb794], 0xb4ff
call fcn.00408ca0
push 4
call fcn.004697b9
add esp, 4
mov dword [ebp - 0x81c], eax
mov dword [eax], 0x4cb7c0
lea ecx, [ebp - 0x83c]
mov dword [ebp - 4], 3
push ecx
push 0
push eax
push 0x41fe60
push 0
push 0
call fcn.0047607d
add esp, 0x18
mov dword [ebp - 0x840], eax
test eax, eax
je 0x414a16
mov dword [ebp - 4], 4
mov ecx, dword [ebp - 0x83c]
test ecx, ecx
je 0x414a0f
push ecx
push eax
call fcn.0046898b
add esp, 8
test eax, eax
jne 0x414a0f
jmp case.0x4143f5.3
push dword [0x4cb88c]
lea eax, [ebp - 0x960]
mov dword [0x4cb794], 0xa0a0a0
push eax
call fcn.00420b80
lea eax, [ebp - 0x960]
mov dword [ebp - 4], 5
push eax
lea eax, [ebp - 0x834]
push str.Downloading__
push eax
call fcn.004183b0
add esp, 0x14
mov edi, eax
mov byte [ebp - 4], 6
mov edx, dword [edi + 0x14]
mov eax, edx
mov ecx, dword [edi + 0x10]
sub eax, ecx
cmp eax, 6
jb 0x4145db
lea eax, [ecx + 6]
mov dword [edi + 0x10], eax
mov eax, edi
cmp edx, 0xf
jbe 0x4145c2
mov eax, dword [edi]
push 6
lea esi, [eax + ecx]
push str._..._r_n
push esi
call fcn.0046b2f0
add esp, 0xc
mov byte [esi + 6], 0
jmp 0x4145fa
push 6
push str._..._r_n
mov byte [ebp - 0x81c], 0
mov ecx, edi
push dword [ebp - 0x81c]
push 6
call fcn.0040abf0
mov edi, eax
movups xmm0, xmmword [edi]
movq xmm1, qword [edi + 0x10]
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0xf
mov byte [edi], 0
mov ecx, dword [0x4cb868]
movq qword [ebp - 0x948], xmm1
movups xmmword [ebp - 0x848], xmm0
cmp ecx, 0xf
jbe 0x41466a
mov eax, dword [0x4cb854]
inc ecx
cmp ecx, 0x1000
jb 0x414651
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x414a27
mov eax, edx
push ecx
push eax
call fcn.004697ab
movups xmm0, xmmword [ebp - 0x848]
add esp, 8
movq xmm1, qword [ebp - 0x948]
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x820]
movq qword [0x4cb864], xmm1
movups xmmword [0x4cb854], xmm0
cmp ecx, 0xf
jbe 0x4146b7
mov edx, dword [ebp - 0x834]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4146ad
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x414a27
push ecx
push edx
call fcn.004697ab
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x94c]
mov dword [ebp - 0x824], 0
mov dword [ebp - 0x820], 0xf
mov byte [ebp - 0x834], 0
cmp ecx, 0xf
jbe 0x414713
mov edx, dword [ebp - 0x960]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x414709
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x414a27
push ecx
push edx
call fcn.004697ab
add esp, 8
push 0x4cb7cc
lea ecx, [ebp - 0x960]
call fcn.00407580
mov ecx, dword [0x4cb880]
cmp ecx, 0xf
jbe 0x41475c
mov eax, dword [0x4cb86c]
inc ecx
cmp ecx, 0x1000
jb 0x414752
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x414a05
mov eax, edx
push ecx
push eax
call fcn.004697ab
add esp, 8
movups xmm0, xmmword [ebp - 0x960]
movups xmmword [0x4cb86c], xmm0
movq xmm0, qword [ebp - 0x950]
movq qword [0x4cb87c], xmm0
jmp case.0x4143f5.3
push dword [0x4cb88c]
lea eax, [ebp - 0x960]
mov dword [0x4cb794], 0xa0a0a0
push eax
call fcn.00420b80
lea eax, [ebp - 0x960]
mov dword [ebp - 4], 7
push eax
lea eax, [ebp - 0x834]
push str.Instaling__
push eax
call fcn.004183b0
add esp, 0x14
mov ecx, eax
mov byte [ebp - 4], 8
mov edi, dword [ecx + 0x14]
mov eax, edi
mov edx, dword [ecx + 0x10]
sub eax, edx
cmp eax, 4
jb 0x4147f0
lea eax, [edx + 4]
mov esi, ecx
mov dword [ecx + 0x10], eax
cmp edi, 0xf
jbe 0x4147e1
mov esi, dword [ecx]
mov eax, dword [str._...]
mov dword [esi + edx], eax
mov byte [esi + edx + 4], 0
jmp 0x41480d
push 4
push str._...
mov byte [ebp - 0x81c], 0
push dword [ebp - 0x81c]
push 4
call fcn.0040abf0
mov ecx, eax
movups xmm0, xmmword [ecx]
movq xmm1, qword [ecx + 0x10]
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
mov byte [ecx], 0
mov ecx, dword [0x4cb868]
movq qword [ebp - 0x948], xmm1
movups xmmword [ebp - 0x848], xmm0
cmp ecx, 0xf
jbe 0x41487d
mov eax, dword [0x4cb854]
inc ecx
cmp ecx, 0x1000
jb 0x414864
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x414a2c
mov eax, edx
push ecx
push eax
call fcn.004697ab
movups xmm0, xmmword [ebp - 0x848]
add esp, 8
movq xmm1, qword [ebp - 0x948]
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x820]
movq qword [0x4cb864], xmm1
movups xmmword [0x4cb854], xmm0
cmp ecx, 0xf
jbe 0x4148ca
mov edx, dword [ebp - 0x834]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4148c0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x414a2c
push ecx
push edx
call fcn.004697ab
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x94c]
mov dword [ebp - 0x824], 0
mov dword [ebp - 0x820], 0xf
mov byte [ebp - 0x834], 0
cmp ecx, 0xf
jbe 0x414926
mov edx, dword [ebp - 0x960]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41491c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x414a2c
push ecx
push edx
call fcn.004697ab
add esp, 8
push 4
call fcn.004697b9
add esp, 4
mov dword [ebp - 0x81c], eax
mov dword [eax], 0x4cb7c0
lea ecx, [ebp - 0x944]
mov dword [ebp - 4], 9
push ecx
push 0
push eax
push 0x41fec0
push 0
push 0
call fcn.0047607d
add esp, 0x18
mov dword [ebp - 0x948], eax
test eax, eax
je 0x414a38
mov dword [ebp - 4], 0xa
mov ecx, dword [ebp - 0x944]
test ecx, ecx
je 0x414a31
push ecx
push eax
call fcn.0046898b
add esp, 8
test eax, eax
jne 0x414a31
jmp case.0x4143f5.3
push 6
push str.Online
mov ecx, 0x4cb854
mov dword [0x4cb794], 0x14ff14
call fcn.00408ca0
call esi
mov dword [0x4cb884], eax
jmp case.0x4143f5.3
push 0x21
push str.Failed_to_update._Game_is_opened.
mov ecx, 0x4cb854
mov dword [0x4cb794], 0x1414ff
call fcn.00408ca0
call esi
add eax, 0x1388
mov dword [0x4cb888], eax
mov byte [0x4cb894], 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0046977a
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.0046e96f
call fcn.0046e96f
push 1
call fcn.00466b73
push 6
mov dword [ebp - 0x83c], 0
call fcn.00466b73
call fcn.0046e96f
call fcn.0046e96f
push 1
call fcn.00466b73
push 6
mov dword [ebp - 0x944], 0
call fcn.00466b73
nop dword [eax]
cld
inc ebx
inc ecx
add byte [ebx], ah
inc esp
inc ecx
add al, ah
dec ecx
inc ecx
add byte [esp + eax*2], ch
inc ecx
add bl, dl
inc esp
inc ecx
add byte [eax + 0x45], ah
inc ecx
add byte [edi + 0x47], bh
inc ecx
add byte [ebp - 0x46ffbeb7], dl
dec ecx
inc ecx
add byte [ebp - 0x75], dl
in al, dx
push 0xffffffffffffffff
push 0x48daf8
mov eax, dword fs:[0]
push eax
sub esp, 0x138
mov eax, dword [0x4bc8c0]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x12c], esi
mov eax, dword [esi]
sub eax, 3
je 0x415057
sub eax, 1
je 0x414acb
sub eax, 2
jne 0x415071
mov eax, 7
lea ecx, [eax - 5]
jmp 0x415061
cmp byte [ebp + 8], 0
jne 0x414ae3
mov dword [esi], 2
mov byte [esi + 0xd4], 0
jmp 0x415071
push 0xb8
lea eax, [ebp - 0x11c]
push 0
push eax
call fcn.0046b870
cmp dword [0x4bd3b4], 0xf
lea ecx, [ebp - 0x11c]
mov eax, 0x4bd3a0
cmova eax, dword [0x4bd3a0]
push eax
call fcn.00416590
mov eax, dword [ebp - 0x11c]
mov eax, dword [eax + 4]
mov dword [ebp + eax - method.std::basic_ifstream_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov eax, dword [ebp - 0x11c]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x70]
mov dword [ebp + ecx - 0x120], eax
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x11c]
mov eax, dword [eax + 4]
cmp dword [ebp + eax - 0x110], 0
jne 0x414fcf
xorps xmm0, xmm0
mov dword [ebp - 0x1c], 0
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
mov byte [ebp - 4], 1
mov byte [ebp - 0x11d], 0
nop
lea ecx, [ebp - 0x11c]
call fcn.00417300
movzx ecx, byte [ebp - 0x11d]
cmp eax, 0xffffffff
movzx edx, al
mov eax, dword [ebp - 0x11c]
cmove edx, ecx
mov cl, dl
mov byte [ebp - 0x11d], cl
mov eax, dword [eax + 4]
test byte [ebp + eax - 0x110], 6
jne 0x414bf8
mov edx, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x18]
mov byte [ebp - 0x14], cl
cmp edx, esi
jae 0x414bdd
lea eax, [edx + 1]
cmp esi, 0xf
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x2c]
cmova eax, dword [ebp - 0x2c]
mov byte [eax + edx], cl
mov byte [eax + edx + 1], 0
jmp 0x414b80
push dword [ebp - 0x14]
mov byte [ebp - 0x128], 0
push dword [ebp - 0x128]
push ecx
lea ecx, [ebp - 0x2c]
call fcn.0040aab0
jmp 0x414b80
cmp dword [0x4bd3b4], 0xf
mov eax, 0x4bd3a0
cmova eax, dword [0x4bd3a0]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
xor edi, edi
cmp dword [ebp - 0x18], 0xf
lea ecx, [ebp - 0x2c]
mov edx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x1c]
cmova ecx, edx
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x124], eax
cmp eax, 4
jb 0x414ca8
add eax, 0xfffffffc
cmp edi, eax
ja 0x414ca8
inc eax
add eax, ecx
add ecx, edi
mov dword [ebp - 0x128], eax
sub eax, ecx
push eax
push 0x20
push ecx
call fcn.0046b9e0
add esp, 0xc
test eax, eax
je 0x414ca5
mov edx, eax
mov esi, 0x4aa6c8
mov ecx, dword [edx]
cmp ecx, dword [esi]
je 0x414c7f
cmp cl, byte [esi]
jne 0x414c83
mov cl, byte [edx + 1]
cmp cl, byte [esi + 1]
jne 0x414c83
mov cl, byte [edx + 2]
cmp cl, byte [esi + 2]
jne 0x414c83
mov cl, byte [edx + 3]
cmp cl, byte [esi + 3]
jne 0x414c83
xor ecx, ecx
jmp 0x414c88
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x414cf5
mov ecx, dword [ebp - 0x128]
inc eax
sub ecx, eax
push ecx
push 0x20
push eax
call fcn.0046b9e0
add esp, 0xc
test eax, eax
jne 0x414c56
mov edx, dword [ebp - 0x2c]
mov esi, dword [ebp - 0x12c]
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x18]
mov dword [esi], 5
mov byte [esi + 0xd4], 0
cmp eax, 0xf
jbe 0x414fdc
lea ecx, [eax + 1]
mov eax, edx
cmp ecx, 0x1000
jb 0x414fc3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41508e
jmp 0x414fc3
sub eax, dword [ebp - 0x14]
cmp eax, 0xffffffff
je 0x414ca5
mov ecx, dword [ebp - 0x124]
lea esi, [eax + 4]
sub eax, edi
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x5c], xmm0
cmp ecx, edi
jb 0x415098
sub ecx, edi
cmp ecx, eax
cmovb eax, ecx
cmp dword [ebp - 0x18], 0xf
lea ecx, [ebp - 0x2c]
cmova ecx, dword [ebp - 0x2c]
add ecx, edi
push eax
push ecx
lea ecx, [ebp - 0x5c]
call fcn.0040cfd0
xorps xmm0, xmm0
mov dword [ebp - 0x34], 0
movups xmmword [ebp - 0x44], xmm0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x2c]
cmp dword [ebp - 0x18], 0xf
mov edi, dword [ebp - 0x1c]
cmova ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x124], ecx
cmp esi, edi
jae 0x414d97
mov eax, edi
sub eax, esi
push eax
lea eax, [esi + ecx]
push 0xa
push eax
call fcn.0046b9e0
add esp, 0xc
test eax, eax
je 0x414d97
sub eax, dword [ebp - 0x124]
jmp 0x414d9a
or eax, 0xffffffff
mov dword [ebp - 0x14], eax
xorps xmm0, xmm0
mov dword [ebp - 0x134], 0
mov dword [ebp - 0x130], 0
movups xmmword [ebp - 0x144], xmm0
cmp eax, 0xffffffff
jne 0x414dd0
cmp edi, esi
jb 0x415098
sub edi, esi
or ecx, eax
cmp edi, eax
jmp 0x414de0
mov ecx, eax
sub ecx, esi
cmp edi, esi
jb 0x415098
sub edi, esi
cmp edi, ecx
cmovb ecx, edi
lea eax, [ebp - 0x2c]
cmp dword [ebp - 0x18], 0xf
push ecx
cmova eax, dword [ebp - 0x2c]
lea ecx, [ebp - 0x144]
add eax, esi
push eax
call fcn.0040cfd0
mov ecx, dword [ebp - 0x30]
cmp ecx, 0xf
jbe 0x414e31
mov edx, dword [ebp - 0x44]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x414e27
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x415093
push ecx
push edx
call fcn.004697ab
add esp, 8
movups xmm0, xmmword [ebp - 0x144]
cmp dword [ebp - 0x48], 0xf
lea eax, [ebp - 0x5c]
cmova eax, dword [ebp - 0x5c]
movups xmmword [ebp - 0x44], xmm0
push eax
movq xmm0, qword [ebp - 0x134]
movq qword [ebp - 0x34], xmm0
call fcn.00474d15
cmp dword [ebp - 0x30], 0xf
lea ecx, [ebp - 0x44]
mov esi, eax
cmova ecx, dword [ebp - 0x44]
push ecx
mov dword [ebp - 0x64], esi
call fcn.00474d15
mov edi, dword [ebp - 0x12c]
add esp, 8
mov dword [ebp - 0x60], eax
mov ecx, dword [edi + 0x8c]
cmp ecx, dword [edi + 0x90]
je 0x414e98
mov dword [ecx], esi
mov dword [ecx + 4], eax
add dword [edi + 0x8c], 8
jmp 0x414ea8
lea eax, [ebp - 0x64]
push eax
push ecx
lea ecx, [edi + 0x88]
call fcn.0041adc0
mov edi, dword [ebp - 0x14]
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x30]
cmp edi, 0xffffffff
je 0x414f3f
cmp ecx, 0xf
jbe 0x414eec
mov edx, dword [ebp - 0x44]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x414ee2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x415093
push ecx
push edx
call fcn.004697ab
add esp, 8
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x48]
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
cmp ecx, 0xf
jbe 0x414c14
mov edx, dword [ebp - 0x5c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x414f30
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x415093
push ecx
push edx
call fcn.004697ab
add esp, 8
jmp 0x414c14
cmp ecx, 0xf
jbe 0x414f70
mov edx, dword [ebp - 0x44]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x414f66
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x415093
push ecx
push edx
call fcn.004697ab
add esp, 8
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x48]
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
cmp ecx, 0xf
jbe 0x414ca5
mov edx, dword [ebp - 0x5c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x414fb4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x415093
push ecx
push edx
call fcn.004697ab
add esp, 8
jmp 0x414ca5
push ecx
push edx
call fcn.004697ab
add esp, 8
jmp 0x414fdc
mov dword [esi], 2
mov byte [esi + 0xd4], 0
mov eax, dword [ebp - 0x11c]
mov eax, dword [eax + 4]
mov dword [ebp + eax - method.std::basic_ifstream_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov eax, dword [ebp - 0x11c]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x70]
mov dword [ebp + ecx - 0x120], eax
lea ecx, [ebp - 0x10c]
call fcn.00416430
mov eax, dword [ebp - 0x11c]
mov eax, dword [eax + 4]
mov dword [ebp + eax - method.std::basic_istream_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov eax, dword [ebp - 0x11c]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x18]
mov dword [ebp + ecx - 0x120], eax
lea eax, [ebp - 0xac]
mov dword [ebp - 4], 4
push eax
mov dword [ebp - 0xac], vtable.std::ios_base.0
call fcn.00468347
add esp, 4
jmp 0x415071
mov eax, 1
mov ecx, 4
cmp byte [ebp + 8], 0
mov byte [esi + 0xd4], 0
cmove eax, ecx
mov dword [esi], eax
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.0046977a
mov esp, ebp
pop ebp
ret 4
call fcn.0046e96f
call fcn.0046e96f
call fcn.00409bb0
int3