Function at 0x140b3b0
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1445d41
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 0x140b3f5
sub ecx, edx
push ecx
push esi
lea ecx, [ebp - 0xb0]
call fcn.014060f0
push 0x1d
push str.metahookconfigsplugins.lst
lea ecx, [ebp - 0xb0]
mov dword [ebp - 4], 0
call fcn.0140de50
push 1
lea ecx, [ebp - 0x170]
call fcn.014072d0
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.0140f450
cmp dword [ebp - 0x114], 0
je 0x140bf8b
mov ecx, dword [ebp - 0x170]
mov eax, dword [ecx + 4]
test byte [ebp + eax - 0x164], 1
jne 0x140bf80
push edi
nop
xorps xmm0, xmm0
mov dword [ebp - 0x4c], 0
movups xmmword [ebp - 0x5c], xmm0
mov dword [ebp - 0x48], 0xf
mov byte [ebp - 0x5c], 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.01406db0
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 0x140b4f4
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 8]
call eax
test eax, eax
je 0x140b4f4
mov edx, dword [eax]
mov ecx, eax
push 1
call dword [edx]
push dword [ebp - 0x94]
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp - 0x170]
push eax
call fcn.01406a60
mov edi, dword [ebp - 0x4c]
add esp, 0xc
mov esi, dword [ebp - 0x5c]
cmp edi, 1
jbe 0x140bf33
mov edx, dword [ebp - 0x48]
lea eax, [ebp - 0x5c]
cmp edx, 0x10
cmovae eax, esi
setae cl
mov byte [ebp - 0xd], cl
cmp byte [eax], 0xd
je 0x140b54d
test cl, cl
lea eax, [ebp - 0x5c]
cmovne eax, esi
cmp byte [eax], 0xa
je 0x140b54d
test cl, cl
lea eax, [ebp - 0x5c]
cmovne eax, esi
cmp byte [eax], 0
jne 0x140b561
mov byte [ebp - 4], 1
test cl, cl
je 0x140bf68
lea ecx, [edx + 1]
jmp 0x140bf40
test cl, cl
lea eax, [ebp - 0x5c]
cmovne eax, esi
cmp byte [eax], 0x3b
jne 0x140b582
mov byte [ebp - 4], 1
test cl, cl
je 0x140bf68
lea ecx, [edx + 1]
jmp 0x140bf40
test cl, cl
lea eax, [ebp - 0x5c]
cmovne eax, esi
cmp byte [eax], 0x2f
jne 0x140b5b1
test cl, cl
lea eax, [ebp - 0x5c]
cmovne eax, esi
cmp byte [eax + 1], 0x2f
jne 0x140b5b1
mov byte [ebp - 4], 1
test cl, cl
je 0x140bf68
lea ecx, [edx + 1]
jmp 0x140bf40
mov ecx, dword [ebp + 0xc]
xorps xmm0, xmm0
movups xmmword [ebp - 0x90], xmm0
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x140b5d0
sub ecx, edx
push ecx
push dword [ebp + 0xc]
lea ecx, [ebp - 0x90]
call fcn.014060f0
push 1
push 0x1447d14
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 4
call fcn.0140de50
mov ecx, dword [ebp + 8]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x140b604
sub ecx, edx
push ecx
push dword [ebp + 8]
lea ecx, [ebp - 0x90]
call fcn.0140de50
push 0x12
push str.metahookplugins_
lea ecx, [ebp - 0x90]
call fcn.0140de50
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 0x140b741
cmp byte [ebp - 0xd], 0
lea eax, [ebp - 0x5c]
cmovne eax, esi
movsx eax, byte [eax + edi - 1]
push eax
call fcn.01430952
add esp, 4
cmp eax, 0x6c
jne 0x140b741
cmp byte [ebp - 0xd], 0
lea eax, [ebp - 0x5c]
cmovne eax, esi
movsx eax, byte [eax + edi - 2]
push eax
call fcn.01430952
add esp, 4
cmp eax, 0x6c
jne 0x140b741
cmp byte [ebp - 0xd], 0
lea eax, [ebp - 0x5c]
cmovne eax, esi
movsx eax, byte [eax + edi - 3]
push eax
call fcn.01430952
add esp, 4
cmp eax, 0x64
jne 0x140b741
cmp byte [ebp - 0xd], 0
lea eax, [ebp - 0x5c]
lea ecx, [edi - 4]
cmovne eax, esi
mov dword [ebp - 0x2c], ecx
movsx eax, byte [eax + ecx]
push eax
call fcn.01430952
add esp, 4
cmp eax, 0x2e
jne 0x140b741
mov ecx, dword [ebp - 0x2c]
lea eax, [ebp - 0x5c]
cmp edi, ecx
mov dword [ebp - 0x18], 0
xorps xmm0, xmm0
mov dword [ebp - 0x14], 0
cmovb ecx, edi
cmp byte [ebp - 0xd], 0
push ecx
cmovne eax, esi
lea ecx, [ebp - 0x28]
push eax
movups xmmword [ebp - 0x28], xmm0
call fcn.014060f0
movups xmm1, xmmword [ebp - 0x28]
lea ecx, [ebp - 0x44]
movq xmm0, qword [ebp - 0x18]
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 - 0x90]
call fcn.0140de50
mov esi, dword [ebp - 0x5c]
jmp 0x140b7ed
cmp byte [ebp - 0xd], 0
lea eax, [ebp - 0x5c]
cmovne eax, esi
mov dword [ebp - 0x98], eax
cmp edi, 0xf
ja 0x140b777
push edi
push eax
lea eax, [ebp - 0x44]
mov dword [ebp - 0x34], edi
push eax
call fcn.01425130
mov byte [ebp + edi - 0x44], 0
mov eax, dword [ebp - 0x30]
mov edi, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x44]
mov dword [ebp - 0x2c], eax
jmp 0x140b7d3
cmp edi, 0x7fffffff
ja 0x140c04b
mov eax, edi
or eax, 0xf
cmp eax, 0x7fffffff
jbe 0x140b796
mov eax, 0x7fffffff
jmp 0x140b7a1
cmp eax, 0x16
mov ecx, 0x16
cmovb eax, ecx
mov dword [ebp - 0x2c], eax
lea ecx, [ebp - 0x44]
inc eax
push eax
call fcn.0140dc30
push edi
push dword [ebp - 0x98]
mov ecx, eax
mov dword [ebp - 0x34], edi
mov eax, dword [ebp - 0x2c]
push ecx
mov dword [ebp - 0x78], ecx
mov dword [ebp - 0x30], eax
call fcn.01425130
mov ecx, dword [ebp - 0x78]
mov dword [ebp - 0x44], ecx
mov byte [edi + ecx], 0
add esp, 0xc
lea eax, [ebp - 0x44]
cmp dword [ebp - 0x2c], 0x10
cmovae eax, ecx
lea ecx, [ebp - 0x90]
push edi
push eax
call fcn.0140de50
call dword [sym.imp.KERNEL32.dll_IsDebuggerPresent]
test eax, eax
je 0x140b8c5
push str..dll
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.01406010
push str..dll
lea eax, [ebp - 0x90]
mov byte [ebp - 4], 6
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.01406010
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 7
push ecx
push eax
call fcn.0140b160
mov ecx, dword [ebp - 0x60]
add esp, 0x20
mov byte [ebp - 4], 6
mov edi, eax
cmp ecx, 0x10
jb 0x140b871
mov edx, dword [ebp - 0x74]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x140b867
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140c046
push ecx
push edx
call fcn.01423512
add esp, 8
call dword [sym.imp.KERNEL32.dll_GetLastError]
test edi, edi
je 0x140be88
push eax
lea eax, [ebp - 0x28]
push edi
push eax
call fcn.0140c180
mov ecx, dword [ebp - 0x14]
add esp, 0xc
mov byte [ebp - 4], 5
cmp ecx, 0x10
jb 0x140b8c5
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x140b8bb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140c046
push ecx
push edx
call fcn.01423512
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 0x140b9d6
push str.SDL_HasAVX2
push eax
call edi
test eax, eax
je 0x140b9d6
call eax
test al, al
je 0x140b9d6
push str._AVX2.dll
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.01406010
push str._AVX2.dll
lea eax, [ebp - 0x90]
mov byte [ebp - 4], 8
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.01406010
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 9
push ecx
push eax
call fcn.0140b160
mov ecx, dword [ebp - 0x60]
add esp, 0x20
mov byte [ebp - 4], 8
mov edi, eax
cmp ecx, 0x10
jb 0x140b96e
mov edx, dword [ebp - 0x74]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x140b964
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140c046
push ecx
push edx
call fcn.01423512
add esp, 8
call dword [sym.imp.KERNEL32.dll_GetLastError]
test edi, edi
je 0x140be88
cmp edi, 2
jne 0x140b98a
cmp eax, edi
je 0x140b998
cmp eax, 0x7e
je 0x140b998
push eax
lea eax, [ebp - 0x28]
push edi
push eax
call fcn.0140c180
add esp, 0xc
mov ecx, dword [ebp - 0x14]
mov byte [ebp - 4], 5
cmp ecx, 0x10
jb 0x140b9d0
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x140b9c6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140c046
push ecx
push edx
call fcn.01423512
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 0x140badb
push str.SDL_HasAVX
push eax
call edi
test eax, eax
je 0x140badb
call eax
test al, al
je 0x140badb
push str._AVX.dll
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.01406010
push str._AVX.dll
lea eax, [ebp - 0x90]
mov byte [ebp - 4], 0xa
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.01406010
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0xb
push ecx
push eax
call fcn.0140b160
mov ecx, dword [ebp - 0x60]
add esp, 0x20
mov byte [ebp - 4], 0xa
mov edi, eax
cmp ecx, 0x10
jb 0x140ba79
mov edx, dword [ebp - 0x74]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x140ba6f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140c046
push ecx
push edx
call fcn.01423512
add esp, 8
call dword [sym.imp.KERNEL32.dll_GetLastError]
test edi, edi
je 0x140be88
cmp edi, 2
jne 0x140ba95
cmp eax, edi
je 0x140baa3
cmp eax, 0x7e
je 0x140baa3
push eax
lea eax, [ebp - 0x28]
push edi
push eax
call fcn.0140c180
add esp, 0xc
mov ecx, dword [ebp - 0x14]
mov byte [ebp - 4], 5
cmp ecx, 0x10
jb 0x140badb
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x140bad1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140c046
push ecx
push edx
call fcn.01423512
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 0x140bbec
push str.SDL_HasSSE2
push eax
call edi
test eax, eax
je 0x140bbec
call eax
test al, al
je 0x140bbec
push str._SSE2.dll
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.01406010
push str._SSE2.dll
lea eax, [ebp - 0x90]
mov byte [ebp - 4], 0xc
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.01406010
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0xd
push ecx
push eax
call fcn.0140b160
mov ecx, dword [ebp - 0x60]
add esp, 0x20
mov byte [ebp - 4], 0xc
mov edi, eax
cmp ecx, 0x10
jb 0x140bb84
mov edx, dword [ebp - 0x74]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x140bb7a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140c046
push ecx
push edx
call fcn.01423512
add esp, 8
call dword [sym.imp.KERNEL32.dll_GetLastError]
test edi, edi
je 0x140be88
cmp edi, 2
jne 0x140bba0
cmp eax, edi
je 0x140bbae
cmp eax, 0x7e
je 0x140bbae
push eax
lea eax, [ebp - 0x28]
push edi
push eax
call fcn.0140c180
add esp, 0xc
mov ecx, dword [ebp - 0x14]
mov byte [ebp - 4], 5
cmp ecx, 0x10
jb 0x140bbe6
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x140bbdc
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140c046
push ecx
push edx
call fcn.01423512
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 0x140bcf1
push str.SDL_HasSSE
push eax
call edi
test eax, eax
je 0x140bcf1
call eax
test al, al
je 0x140bcf1
push str._SSE.dll
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.01406010
push str._SSE.dll
lea eax, [ebp - 0x90]
mov byte [ebp - 4], 0xe
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.01406010
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0xf
push ecx
push eax
call fcn.0140b160
mov ecx, dword [ebp - 0x60]
add esp, 0x20
mov byte [ebp - 4], 0xe
mov edi, eax
cmp ecx, 0x10
jb 0x140bc8f
mov edx, dword [ebp - 0x74]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x140bc85
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140c046
push ecx
push edx
call fcn.01423512
add esp, 8
call dword [sym.imp.KERNEL32.dll_GetLastError]
test edi, edi
je 0x140be88
cmp edi, 2
jne 0x140bcab
cmp eax, edi
je 0x140bcb9
cmp eax, 0x7e
je 0x140bcb9
push eax
lea eax, [ebp - 0x28]
push edi
push eax
call fcn.0140c180
add esp, 0xc
mov ecx, dword [ebp - 0x14]
mov byte [ebp - 4], 5
cmp ecx, 0x10
jb 0x140bcf1
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x140bce7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140c046
push ecx
push edx
call fcn.01423512
add esp, 8
push str.SDL2.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test eax, eax
je 0x140bdfa
push str.SDL_HasSSE
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x140bdfa
call eax
test al, al
je 0x140bdfa
push str._SSE.dll
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.01406010
push str._SSE.dll
lea eax, [ebp - 0x90]
mov byte [ebp - 4], 0x10
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.01406010
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x11
push ecx
push eax
call fcn.0140b160
mov ecx, dword [ebp - 0x60]
add esp, 0x20
mov byte [ebp - 4], 0x10
mov edi, eax
cmp ecx, 0x10
jb 0x140bd98
mov edx, dword [ebp - 0x74]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x140bd8e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140c046
push ecx
push edx
call fcn.01423512
add esp, 8
call dword [sym.imp.KERNEL32.dll_GetLastError]
test edi, edi
je 0x140be88
cmp edi, 2
jne 0x140bdb4
cmp eax, edi
je 0x140bdc2
cmp eax, 0x7e
je 0x140bdc2
push eax
lea eax, [ebp - 0x28]
push edi
push eax
call fcn.0140c180
add esp, 0xc
mov ecx, dword [ebp - 0x14]
mov byte [ebp - 4], 5
cmp ecx, 0x10
jb 0x140bdfa
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x140bdf0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140c046
push ecx
push edx
call fcn.01423512
add esp, 8
push str..dll
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.01406010
push str..dll
lea eax, [ebp - 0x90]
mov byte [ebp - 4], 0x12
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.01406010
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x13
push ecx
push eax
call fcn.0140b160
mov ecx, dword [ebp - 0x60]
add esp, 0x20
mov byte [ebp - 4], 0x12
mov edi, eax
cmp ecx, 0x10
jb 0x140be70
mov edx, dword [ebp - 0x74]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x140be66
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140c046
push ecx
push edx
call fcn.01423512
add esp, 8
call dword [sym.imp.KERNEL32.dll_GetLastError]
test edi, edi
je 0x140be88
push eax
lea eax, [ebp - 0x28]
push edi
push eax
call fcn.0140c180
add esp, 0xc
mov ecx, dword [ebp - 0x14]
mov byte [ebp - 4], 5
cmp ecx, 0x10
jb 0x140bec0
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x140beb6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140c046
push ecx
push edx
call fcn.01423512
add esp, 8
mov ecx, dword [ebp - 0x30]
mov byte [ebp - 4], 4
cmp ecx, 0x10
jb 0x140bef8
mov edx, dword [ebp - 0x44]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x140beee
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140c046
push ecx
push edx
call fcn.01423512
add esp, 8
mov ecx, dword [ebp - 0x7c]
mov byte [ebp - 4], 2
cmp ecx, 0x10
jb 0x140bf33
mov edx, dword [ebp - 0x90]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x140bf29
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140c046
push ecx
push edx
call fcn.01423512
add esp, 8
mov ecx, dword [ebp - 0x48]
mov byte [ebp - 4], 1
cmp ecx, 0x10
jb 0x140bf68
inc ecx
mov eax, esi
cmp ecx, 0x1000
jb 0x140bf5e
mov esi, dword [eax - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140c046
push ecx
push esi
call fcn.01423512
add esp, 8
mov ecx, dword [ebp - 0x170]
mov eax, dword [ecx + 4]
test byte [ebp + eax - 0x164], 1
je 0x140b480
pop edi
lea ecx, [ebp - 0x170]
call fcn.0140e540
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.01407f00
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.01424bd7
mov ecx, dword [ebp - 0x9c]
add esp, 4
pop esi
cmp ecx, 0x10
jb 0x140c038
mov edx, dword [ebp - 0xb0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x140c02e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x140c046
push ecx
push edx
call fcn.01423512
add esp, 8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret
call fcn.01430d04
call fcn.0140dc00
int3