Function at 0x140c760
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1446ea3
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x164
push esi
mov esi, dword [ebp + 8]
xorps xmm0, xmm0
mov ecx, esi
mov dword [ebp - 0xa0], 0
movups xmmword [ebp - 0xb0], xmm0
mov dword [ebp - 0x9c], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x140c7a5
sub ecx, edx
push ecx
push esi
lea ecx, [ebp - 0xb0]
call fcn.014073b0
push 0x1d
push str.metahookconfigsplugins.lst
lea ecx, [ebp - 0xb0]
mov dword [ebp - 4], 0
call fcn.0140f200
push 1
lea ecx, [ebp - 0x170]
call fcn.014083a0
cmp dword [ebp - 0x9c], 0x10
lea eax, [ebp - 0xb0]
push 0x40
cmovae eax, dword [ebp - 0xb0]
lea ecx, [ebp - 0x170]
push 1
push eax
mov byte [ebp - 4], 1
call fcn.014104e0
cmp dword [ebp - 0x114], 0
je 0x140d377
mov ecx, dword [ebp - 0x170]
mov eax, dword [ecx + 4]
test byte [ebp + eax - 0x164], 1
jne 0x140d36c
push edi
nop
xorps xmm0, xmm0
mov dword [ebp - 0x64], 0
movups xmmword [ebp - 0x74], xmm0
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], 0
mov eax, dword [ecx + 4]
mov eax, dword [ebp + eax - 0x140]
mov esi, dword [eax + 4]
mov ecx, esi
mov dword [ebp - 0xb4], esi
mov eax, dword [esi]
call dword [eax + 4]
lea eax, [ebp - 0xb8]
mov byte [ebp - 4], 3
push eax
call fcn.01407e80
add esp, 4
mov ecx, eax
mov edx, dword [eax]
push 0xa
mov eax, dword [edx + 0x20]
call eax
mov byte [ebp - 0x94], al
mov byte [ebp - 4], 2
test esi, esi
je 0x140c8a4
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 8]
call eax
test eax, eax
je 0x140c8a4
mov edx, dword [eax]
mov ecx, eax
push 1
call dword [edx]
push dword [ebp - 0x94]
lea eax, [ebp - 0x74]
push eax
lea eax, [ebp - 0x170]
push eax
call fcn.01407b30
mov edi, dword [ebp - 0x64]
add esp, 0xc
mov esi, dword [ebp - 0x74]
cmp edi, 1
jbe 0x140d31f
mov edx, dword [ebp - 0x60]
lea eax, [ebp - 0x74]
cmp edx, 0x10
cmovae eax, esi
setae cl
mov byte [ebp - 0xd], cl
cmp byte [eax], 0xd
je 0x140c8fd
test cl, cl
lea eax, [ebp - 0x74]
cmovne eax, esi
cmp byte [eax], 0xa
je 0x140c8fd
test cl, cl
lea eax, [ebp - 0x74]
cmovne eax, esi
cmp byte [eax], 0
jne 0x140c911
mov byte [ebp - 4], 1
test cl, cl
je 0x140d354
lea ecx, [edx + 1]
jmp 0x140d32c
test cl, cl
lea eax, [ebp - 0x74]
cmovne eax, esi
cmp byte [eax], 0x3b
jne 0x140c932
mov byte [ebp - 4], 1
test cl, cl
je 0x140d354
lea ecx, [edx + 1]
jmp 0x140d32c
test cl, cl
lea eax, [ebp - 0x74]
cmovne eax, esi
cmp byte [eax], 0x2f
jne 0x140c961
test cl, cl
lea eax, [ebp - 0x74]
cmovne eax, esi
cmp byte [eax + 1], 0x2f
jne 0x140c961
mov byte [ebp - 4], 1
test cl, cl
je 0x140d354
lea ecx, [edx + 1]
jmp 0x140d32c
mov ecx, dword [ebp + 0xc]
xorps xmm0, xmm0
movups xmmword [ebp - 0x5c], xmm0
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x140c980
sub ecx, edx
push ecx
push dword [ebp + 0xc]
lea ecx, [ebp - 0x5c]
call fcn.014073b0
mov eax, dword [ebp - 0x4c]
mov byte [ebp - 4], 4
cmp eax, 1
jb 0x140c9de
mov edx, dword [ebp - 0x5c]
lea ecx, [ebp - 0x5c]
dec eax
cmp dword [ebp - 0x48], 0x10
mov dword [ebp - 0x14], eax
cmovae ecx, edx
setae byte [ebp - 0xe]
cmp byte [ecx + eax], 0x5c
je 0x140c9de
cmp byte [ebp - 0xe], 0
lea eax, [ebp - 0x5c]
mov ecx, dword [ebp - 0x14]
cmovne eax, edx
cmp byte [eax + ecx], 0x2f
je 0x140c9de
push 1
push 0x1448d60
lea ecx, [ebp - 0x5c]
call fcn.0140f200
mov ecx, dword [ebp + 8]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x140c9e4
sub ecx, edx
push ecx
push dword [ebp + 8]
lea ecx, [ebp - 0x5c]
call fcn.0140f200
push 0x12
push str.metahookplugins_
lea ecx, [ebp - 0x5c]
call fcn.0140f200
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], 5
cmp edi, 4
jbe 0x140cb18
cmp byte [ebp - 0xd], 0
lea eax, [ebp - 0x74]
cmovne eax, esi
movsx eax, byte [eax + edi - 1]
push eax
call fcn.014319e2
add esp, 4
cmp eax, 0x6c
jne 0x140cb18
cmp byte [ebp - 0xd], 0
lea eax, [ebp - 0x74]
cmovne eax, esi
movsx eax, byte [eax + edi - 2]
push eax
call fcn.014319e2
add esp, 4
cmp eax, 0x6c
jne 0x140cb18
cmp byte [ebp - 0xd], 0
lea eax, [ebp - 0x74]
cmovne eax, esi
movsx eax, byte [eax + edi - 3]
push eax
call fcn.014319e2
add esp, 4
cmp eax, 0x64
jne 0x140cb18
cmp byte [ebp - 0xd], 0
lea eax, [ebp - 0x74]
lea ecx, [edi - 4]
cmovne eax, esi
mov dword [ebp - 0x14], ecx
movsx eax, byte [eax + ecx]
push eax
call fcn.014319e2
add esp, 4
cmp eax, 0x2e
jne 0x140cb18
mov ecx, dword [ebp - 0x14]
lea eax, [ebp - 0x74]
cmp edi, ecx
mov dword [ebp - 0x1c], 0
xorps xmm0, xmm0
mov dword [ebp - 0x18], 0
cmovb ecx, edi
cmp byte [ebp - 0xd], 0
push ecx
cmovne eax, esi
lea ecx, [ebp - 0x2c]
push eax
movups xmmword [ebp - 0x2c], xmm0
call fcn.014073b0
movups xmm1, xmmword [ebp - 0x2c]
lea ecx, [ebp - 0x44]
movq xmm0, qword [ebp - 0x1c]
movq qword [ebp - 0x34], xmm0
cmp dword [ebp - 0x30], 0x10
push dword [ebp - 0x34]
movd eax, xmm1
movups xmmword [ebp - 0x44], xmm1
cmovae ecx, eax
push ecx
lea ecx, [ebp - 0x5c]
call fcn.0140f200
mov esi, dword [ebp - 0x74]
jmp 0x140cbc7
cmp byte [ebp - 0xd], 0
lea eax, [ebp - 0x74]
cmovne eax, esi
mov dword [ebp - 0x98], eax
cmp edi, 0xf
ja 0x140cb4e
push edi
push eax
lea eax, [ebp - 0x44]
mov dword [ebp - 0x34], edi
push eax
call fcn.014261c0
mov byte [ebp + edi - 0x44], 0
mov eax, dword [ebp - 0x30]
mov edi, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x44]
mov dword [ebp - 0x14], eax
jmp 0x140cbb0
cmp edi, 0x7fffffff
ja 0x140d437
mov eax, edi
or eax, 0xf
cmp eax, 0x7fffffff
jbe 0x140cb6d
mov eax, 0x7fffffff
jmp 0x140cb78
cmp eax, 0x16
mov ecx, 0x16
cmovb eax, ecx
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x44]
inc eax
push eax
call fcn.0140f040
push edi
push dword [ebp - 0x98]
mov ecx, eax
mov dword [ebp - 0x34], edi
mov eax, dword [ebp - 0x14]
push ecx
mov dword [ebp - 0x90], ecx
mov dword [ebp - 0x30], eax
call fcn.014261c0
mov ecx, dword [ebp - 0x90]
mov dword [ebp - 0x44], ecx
mov byte [edi + ecx], 0
add esp, 0xc
lea eax, [ebp - 0x44]
cmp dword [ebp - 0x14], 0x10
cmovae eax, ecx
lea ecx, [ebp - 0x5c]
push edi
push eax
call fcn.0140f200
call dword [sym.imp.KERNEL32.dll_IsDebuggerPresent]
test eax, eax
je 0x140cca2
push str..dll
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.014072d0
push str..dll
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 6
push eax
lea eax, [ebp - 0x8c]
push eax
call fcn.014072d0
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 7
push ecx
push eax
call fcn.0140c510
mov ecx, dword [ebp - 0x78]
add esp, 0x20
mov byte [ebp - 4], 6
mov edi, eax
cmp ecx, 0x10
jb 0x140cc4e
mov edx, dword [ebp - 0x8c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x140cc44
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140d432
push ecx
push edx
call fcn.01423f28
add esp, 8
call dword [sym.imp.KERNEL32.dll_GetLastError]
test edi, edi
je 0x140d277
push eax
lea eax, [ebp - 0x2c]
push edi
push eax
call fcn.0140d570
mov ecx, dword [ebp - 0x18]
add esp, 0xc
mov byte [ebp - 4], 5
cmp ecx, 0x10
jb 0x140cca2
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x140cc98
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140d432
push ecx
push edx
call fcn.01423f28
add esp, 8
push str.SDL2.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x140cdb6
push str.SDL_HasAVX2
push eax
call edi
test eax, eax
je 0x140cdb6
call eax
test al, al
je 0x140cdb6
push str._AVX2.dll
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.014072d0
push str._AVX2.dll
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 8
push eax
lea eax, [ebp - 0x8c]
push eax
call fcn.014072d0
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 9
push ecx
push eax
call fcn.0140c510
mov ecx, dword [ebp - 0x78]
add esp, 0x20
mov byte [ebp - 4], 8
mov edi, eax
cmp ecx, 0x10
jb 0x140cd4e
mov edx, dword [ebp - 0x8c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x140cd44
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140d432
push ecx
push edx
call fcn.01423f28
add esp, 8
call dword [sym.imp.KERNEL32.dll_GetLastError]
test edi, edi
je 0x140d277
cmp edi, 2
jne 0x140cd6a
cmp eax, edi
je 0x140cd78
cmp eax, 0x7e
je 0x140cd78
push eax
lea eax, [ebp - 0x2c]
push edi
push eax
call fcn.0140d570
add esp, 0xc
mov ecx, dword [ebp - 0x18]
mov byte [ebp - 4], 5
cmp ecx, 0x10
jb 0x140cdb0
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x140cda6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140d432
push ecx
push edx
call fcn.01423f28
add esp, 8
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.SDL2.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test eax, eax
je 0x140cebe
push str.SDL_HasAVX
push eax
call edi
test eax, eax
je 0x140cebe
call eax
test al, al
je 0x140cebe
push str._AVX.dll
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.014072d0
push str._AVX.dll
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0xa
push eax
lea eax, [ebp - 0x8c]
push eax
call fcn.014072d0
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0xb
push ecx
push eax
call fcn.0140c510
mov ecx, dword [ebp - 0x78]
add esp, 0x20
mov byte [ebp - 4], 0xa
mov edi, eax
cmp ecx, 0x10
jb 0x140ce5c
mov edx, dword [ebp - 0x8c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x140ce52
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140d432
push ecx
push edx
call fcn.01423f28
add esp, 8
call dword [sym.imp.KERNEL32.dll_GetLastError]
test edi, edi
je 0x140d277
cmp edi, 2
jne 0x140ce78
cmp eax, edi
je 0x140ce86
cmp eax, 0x7e
je 0x140ce86
push eax
lea eax, [ebp - 0x2c]
push edi
push eax
call fcn.0140d570
add esp, 0xc
mov ecx, dword [ebp - 0x18]
mov byte [ebp - 4], 5
cmp ecx, 0x10
jb 0x140cebe
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x140ceb4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140d432
push ecx
push edx
call fcn.01423f28
add esp, 8
push str.SDL2.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x140cfd2
push str.SDL_HasSSE2
push eax
call edi
test eax, eax
je 0x140cfd2
call eax
test al, al
je 0x140cfd2
push str._SSE2.dll
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.014072d0
push str._SSE2.dll
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0xc
push eax
lea eax, [ebp - 0x8c]
push eax
call fcn.014072d0
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0xd
push ecx
push eax
call fcn.0140c510
mov ecx, dword [ebp - 0x78]
add esp, 0x20
mov byte [ebp - 4], 0xc
mov edi, eax
cmp ecx, 0x10
jb 0x140cf6a
mov edx, dword [ebp - 0x8c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x140cf60
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140d432
push ecx
push edx
call fcn.01423f28
add esp, 8
call dword [sym.imp.KERNEL32.dll_GetLastError]
test edi, edi
je 0x140d277
cmp edi, 2
jne 0x140cf86
cmp eax, edi
je 0x140cf94
cmp eax, 0x7e
je 0x140cf94
push eax
lea eax, [ebp - 0x2c]
push edi
push eax
call fcn.0140d570
add esp, 0xc
mov ecx, dword [ebp - 0x18]
mov byte [ebp - 4], 5
cmp ecx, 0x10
jb 0x140cfcc
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x140cfc2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140d432
push ecx
push edx
call fcn.01423f28
add esp, 8
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.SDL2.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test eax, eax
je 0x140d0da
push str.SDL_HasSSE
push eax
call edi
test eax, eax
je 0x140d0da
call eax
test al, al
je 0x140d0da
push str._SSE.dll
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.014072d0
push str._SSE.dll
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0xe
push eax
lea eax, [ebp - 0x8c]
push eax
call fcn.014072d0
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0xf
push ecx
push eax
call fcn.0140c510
mov ecx, dword [ebp - 0x78]
add esp, 0x20
mov byte [ebp - 4], 0xe
mov edi, eax
cmp ecx, 0x10
jb 0x140d078
mov edx, dword [ebp - 0x8c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x140d06e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140d432
push ecx
push edx
call fcn.01423f28
add esp, 8
call dword [sym.imp.KERNEL32.dll_GetLastError]
test edi, edi
je 0x140d277
cmp edi, 2
jne 0x140d094
cmp eax, edi
je 0x140d0a2
cmp eax, 0x7e
je 0x140d0a2
push eax
lea eax, [ebp - 0x2c]
push edi
push eax
call fcn.0140d570
add esp, 0xc
mov ecx, dword [ebp - 0x18]
mov byte [ebp - 4], 5
cmp ecx, 0x10
jb 0x140d0da
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x140d0d0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140d432
push ecx
push edx
call fcn.01423f28
add esp, 8
push str.SDL2.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test eax, eax
je 0x140d1e6
push str.SDL_HasSSE
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x140d1e6
call eax
test al, al
je 0x140d1e6
push str._SSE.dll
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.014072d0
push str._SSE.dll
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0x10
push eax
lea eax, [ebp - 0x8c]
push eax
call fcn.014072d0
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x11
push ecx
push eax
call fcn.0140c510
mov ecx, dword [ebp - 0x78]
add esp, 0x20
mov byte [ebp - 4], 0x10
mov edi, eax
cmp ecx, 0x10
jb 0x140d184
mov edx, dword [ebp - 0x8c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x140d17a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140d432
push ecx
push edx
call fcn.01423f28
add esp, 8
call dword [sym.imp.KERNEL32.dll_GetLastError]
test edi, edi
je 0x140d277
cmp edi, 2
jne 0x140d1a0
cmp eax, edi
je 0x140d1ae
cmp eax, 0x7e
je 0x140d1ae
push eax
lea eax, [ebp - 0x2c]
push edi
push eax
call fcn.0140d570
add esp, 0xc
mov ecx, dword [ebp - 0x18]
mov byte [ebp - 4], 5
cmp ecx, 0x10
jb 0x140d1e6
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x140d1dc
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140d432
push ecx
push edx
call fcn.01423f28
add esp, 8
push str..dll
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.014072d0
push str..dll
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0x12
push eax
lea eax, [ebp - 0x8c]
push eax
call fcn.014072d0
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x13
push ecx
push eax
call fcn.0140c510
mov ecx, dword [ebp - 0x78]
add esp, 0x20
mov byte [ebp - 4], 0x12
mov edi, eax
cmp ecx, 0x10
jb 0x140d25f
mov edx, dword [ebp - 0x8c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x140d255
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140d432
push ecx
push edx
call fcn.01423f28
add esp, 8
call dword [sym.imp.KERNEL32.dll_GetLastError]
test edi, edi
je 0x140d277
push eax
lea eax, [ebp - 0x2c]
push edi
push eax
call fcn.0140d570
add esp, 0xc
mov ecx, dword [ebp - 0x18]
mov byte [ebp - 4], 5
cmp ecx, 0x10
jb 0x140d2af
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x140d2a5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140d432
push ecx
push edx
call fcn.01423f28
add esp, 8
mov ecx, dword [ebp - 0x30]
mov byte [ebp - 4], 4
cmp ecx, 0x10
jb 0x140d2e7
mov edx, dword [ebp - 0x44]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x140d2dd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140d432
push ecx
push edx
call fcn.01423f28
add esp, 8
mov ecx, dword [ebp - 0x48]
mov byte [ebp - 4], 2
cmp ecx, 0x10
jb 0x140d31f
mov edx, dword [ebp - 0x5c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x140d315
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140d432
push ecx
push edx
call fcn.01423f28
add esp, 8
mov ecx, dword [ebp - 0x60]
mov byte [ebp - 4], 1
cmp ecx, 0x10
jb 0x140d354
inc ecx
mov eax, esi
cmp ecx, 0x1000
jb 0x140d34a
mov esi, dword [eax - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140d432
push ecx
push esi
call fcn.01423f28
add esp, 8
mov ecx, dword [ebp - 0x170]
mov eax, dword [ecx + 4]
test byte [ebp + eax - 0x164], 1
je 0x140c830
pop edi
lea ecx, [ebp - 0x170]
call fcn.0140f5d0
mov eax, dword [ebp - 0x170]
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 - 0x170]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x70]
mov dword [ebp + ecx - 0x174], eax
lea ecx, [ebp - 0x160]
call fcn.01408f40
mov eax, dword [ebp - 0x170]
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 - 0x170]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x18]
mov dword [ebp + ecx - 0x174], eax
lea eax, [ebp - 0x100]
mov byte [ebp - 4], 0x14
push eax
mov dword [ebp - method.std::ios_base.virtual_0], vtable.std::ios_base.0
call fcn.01425ab3
mov ecx, dword [ebp - 0x9c]
add esp, 4
pop esi
cmp ecx, 0x10
jb 0x140d424
mov edx, dword [ebp - 0xb0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x140d41a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140d432
push ecx
push edx
call fcn.01423f28
add esp, 8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret
call fcn.01431c47
call fcn.0140f020
int3