Function at 0x41e680
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0xc
push ebx
push ebp
mov ebp, dword [sym.imp.lua51.dll_lua_settop]
push esi
mov esi, dword [sym.imp.lua51.dll_lua_gettop]
push edi
mov edi, ecx
mov eax, dword [edi + 0x58]
cmp eax, 0xfffffffe
je 0x41e6dd
cmp eax, 0xffffffff
je 0x41e6dd
push dword [edi + 0x5c]
lea ecx, [edi + 0x58]
call fcn.00427c00
mov ebx, eax
neg ebx
lea eax, [ebx + 0x270f]
cmp eax, 0x270e
ja 0x41e6c9
push dword [edi + 0x5c]
call esi
inc ebx
add esp, 4
add ebx, eax
mov ecx, dword [edi + 0x5c]
mov edx, ebx
call fcn.0041e050
push 0xfffffffffffffffe
push dword [edi + 0x5c]
call ebp
add esp, 8
mov eax, dword [edi + 0x60]
cmp eax, 0xfffffffe
je 0x41e725
cmp eax, 0xffffffff
je 0x41e725
push dword [edi + 0x64]
lea ecx, [edi + 0x60]
call fcn.00427c00
mov ebx, eax
neg ebx
lea eax, [ebx + 0x270f]
cmp eax, 0x270e
ja 0x41e711
push dword [edi + 0x64]
call esi
inc ebx
add esp, 4
add ebx, eax
mov ecx, dword [edi + 0x64]
mov edx, ebx
call fcn.0041e050
push 0xfffffffffffffffe
push dword [edi + 0x64]
call ebp
add esp, 8
mov eax, dword [edi + 0x68]
cmp eax, 0xfffffffe
je 0x41e76d
cmp eax, 0xffffffff
je 0x41e76d
push dword [edi + 0x6c]
lea ecx, [edi + 0x68]
call fcn.00427c00
mov ebx, eax
neg ebx
lea eax, [ebx + 0x270f]
cmp eax, 0x270e
ja 0x41e759
push dword [edi + 0x6c]
call esi
inc ebx
add esp, 4
add ebx, eax
mov ecx, dword [edi + 0x6c]
mov edx, ebx
call fcn.0041e050
push 0xfffffffffffffffe
push dword [edi + 0x6c]
call ebp
add esp, 8
mov eax, dword [edi + 0x70]
cmp eax, 0xfffffffe
je 0x41e7b5
cmp eax, 0xffffffff
je 0x41e7b5
push dword [edi + 0x74]
lea ecx, [edi + 0x70]
call fcn.00427c00
mov ebx, eax
neg ebx
lea eax, [ebx + 0x270f]
cmp eax, 0x270e
ja 0x41e7a1
push dword [edi + 0x74]
call esi
inc ebx
add esp, 4
add ebx, eax
mov ecx, dword [edi + 0x74]
mov edx, ebx
call fcn.0041e050
push 0xfffffffffffffffe
push dword [edi + 0x74]
call ebp
add esp, 8
mov eax, dword [edi + 0x78]
cmp eax, 0xfffffffe
je 0x41e7fd
cmp eax, 0xffffffff
je 0x41e7fd
push dword [edi + 0x7c]
lea ecx, [edi + 0x78]
call fcn.00427c00
mov ebx, eax
neg ebx
lea eax, [ebx + 0x270f]
cmp eax, 0x270e
ja 0x41e7e9
push dword [edi + 0x7c]
call esi
inc ebx
add esp, 4
add ebx, eax
mov ecx, dword [edi + 0x7c]
mov edx, ebx
call fcn.0041e050
push 0xfffffffffffffffe
push dword [edi + 0x7c]
call ebp
add esp, 8
mov ecx, dword [edi + 0x80]
cmp ecx, 0xfffffffe
je 0x41e857
cmp ecx, 0xffffffff
je 0x41e857
push dword [edi + 0x84]
lea ecx, [edi + 0x80]
call fcn.00427c00
mov ebx, eax
neg ebx
lea eax, [ebx + 0x270f]
cmp eax, 0x270e
ja 0x41e83d
push dword [edi + 0x84]
call esi
inc ebx
add esp, 4
add ebx, eax
mov ecx, dword [edi + 0x84]
mov edx, ebx
call fcn.0041e050
push 0xfffffffffffffffe
push dword [edi + 0x84]
call ebp
add esp, 8
mov eax, dword [edi + 0x88]
lea ebx, [edi + 0x88]
cmp eax, 0xfffffffe
je 0x41e8af
cmp eax, 0xffffffff
je 0x41e8af
push dword [ebx + 4]
mov ecx, ebx
call fcn.00427c00
mov ecx, eax
neg ecx
mov dword [esp + 0x14], ecx
lea eax, [ecx + 0x270f]
cmp eax, 0x270e
ja 0x41e89b
push dword [ebx + 4]
call esi
mov ecx, dword [esp + 0x18]
add esp, 4
inc ecx
add ecx, eax
mov edx, ecx
mov ecx, dword [ebx + 4]
call fcn.0041e050
push 0xfffffffffffffffe
push dword [ebx + 4]
call ebp
add esp, 8
mov eax, dword [edi + 0x90]
lea ebx, [edi + 0x90]
cmp eax, 0xfffffffe
je 0x41e907
cmp eax, 0xffffffff
je 0x41e907
push dword [ebx + 4]
mov ecx, ebx
call fcn.00427c00
mov ecx, eax
neg ecx
mov dword [esp + 0x14], ecx
lea eax, [ecx + 0x270f]
cmp eax, 0x270e
ja 0x41e8f3
push dword [ebx + 4]
call esi
mov ecx, dword [esp + 0x18]
add esp, 4
inc ecx
add ecx, eax
mov edx, ecx
mov ecx, dword [ebx + 4]
call fcn.0041e050
push 0xfffffffffffffffe
push dword [ebx + 4]
call ebp
add esp, 8
mov eax, dword [edi + 0x98]
lea ebx, [edi + 0x98]
cmp eax, 0xfffffffe
je 0x41e9ce
cmp eax, 0xffffffff
je 0x41e9ce
mov eax, dword [edi + 0x9c]
mov ecx, ebx
push dword [ebx + 4]
mov dword [esp + 0x18], eax
call fcn.00427c00
mov edx, eax
neg edx
mov dword [esp + 0x18], edx
lea ecx, [edx + 0x270f]
cmp ecx, 0x270e
ja 0x41e95e
push dword [ebx + 4]
call esi
mov edx, dword [esp + 0x1c]
add esp, 4
inc edx
add edx, eax
push edx
push dword [esp + 0x18]
call dword [sym.imp.lua51.dll_lua_getmetatable]
add esp, 8
cmp eax, 1
jne 0x41e985
push dword [esp + 0x14]
call esi
mov ecx, dword [esp + 0x18]
add esp, 4
mov edx, eax
call fcn.0041e050
push dword [ebx + 4]
mov ecx, ebx
call fcn.00427c00
mov ecx, eax
neg ecx
mov dword [esp + 0x18], ecx
lea eax, [ecx + 0x270f]
cmp eax, 0x270e
ja 0x41e9b3
push dword [ebx + 4]
call esi
mov ecx, dword [esp + 0x1c]
add esp, 4
inc ecx
add ecx, eax
mov edx, ecx
mov ecx, dword [ebx + 4]
call fcn.0041e050
push 0xfffffffffffffffe
push dword [ebx + 4]
call ebp
push 0xfffffffffffffffe
push dword [ebx + 4]
call ebp
add esp, 0x10
mov eax, dword [edi + 0x58]
mov esi, dword [sym.imp.lua51.dll_luaL_unref]
cmp eax, 0xfffffffe
je 0x41e9ef
cmp eax, 0xffffffff
je 0x41e9ef
push eax
push 0xffffd8f0
push dword [edi + 0x5c]
call esi
add esp, 0xc
mov dword [edi + 0x5c], 0
mov dword [edi + 0x58], 0xfffffffe
mov eax, dword [edi + 0x60]
cmp eax, 0xfffffffe
je 0x41ea18
cmp eax, 0xffffffff
je 0x41ea18
push eax
push 0xffffd8f0
push dword [edi + 0x64]
call esi
add esp, 0xc
mov dword [edi + 0x64], 0
mov dword [edi + 0x60], 0xfffffffe
mov eax, dword [edi + 0x68]
cmp eax, 0xfffffffe
je 0x41ea41
cmp eax, 0xffffffff
je 0x41ea41
push eax
push 0xffffd8f0
push dword [edi + 0x6c]
call esi
add esp, 0xc
mov dword [edi + 0x6c], 0
mov dword [edi + 0x68], 0xfffffffe
mov eax, dword [edi + 0x70]
cmp eax, 0xfffffffe
je 0x41ea6a
cmp eax, 0xffffffff
je 0x41ea6a
push eax
push 0xffffd8f0
push dword [edi + 0x74]
call esi
add esp, 0xc
mov dword [edi + 0x74], 0
mov dword [edi + 0x70], 0xfffffffe
mov eax, dword [edi + 0x78]
cmp eax, 0xfffffffe
je 0x41ea93
cmp eax, 0xffffffff
je 0x41ea93
push eax
push 0xffffd8f0
push dword [edi + 0x7c]
call esi
add esp, 0xc
mov dword [edi + 0x7c], 0
mov dword [edi + 0x78], 0xfffffffe
mov eax, dword [edi + 0x80]
cmp eax, 0xfffffffe
je 0x41eac2
cmp eax, 0xffffffff
je 0x41eac2
push eax
push 0xffffd8f0
push dword [edi + 0x84]
call esi
add esp, 0xc
mov dword [edi + 0x84], 0
mov dword [edi + 0x80], 0xfffffffe
mov eax, dword [edi + 0x88]
cmp eax, 0xfffffffe
je 0x41eaf7
cmp eax, 0xffffffff
je 0x41eaf7
push eax
push 0xffffd8f0
push dword [edi + 0x8c]
call esi
add esp, 0xc
mov dword [edi + 0x8c], 0
mov dword [edi + 0x88], 0xfffffffe
mov eax, dword [edi + 0x90]
cmp eax, 0xfffffffe
je 0x41eb2c
cmp eax, 0xffffffff
je 0x41eb2c
push eax
push 0xffffd8f0
push dword [edi + 0x94]
call esi
add esp, 0xc
mov dword [edi + 0x94], 0
mov dword [edi + 0x90], 0xfffffffe
mov eax, dword [ebx]
cmp eax, 0xfffffffe
je 0x41eb5a
cmp eax, 0xffffffff
je 0x41eb5a
push eax
push 0xffffd8f0
push dword [ebx + 4]
call esi
add esp, 0xc
mov dword [ebx + 4], 0
mov dword [ebx], 0xfffffffe
mov esi, dword [edi]
mov ebx, dword [edi + 4]
cmp esi, ebx
je 0x41eb89
mov ecx, dword [esi]
test ecx, ecx
je 0x41eb7d
mov eax, dword [ecx]
push 1
call dword [eax + 4]
add esi, 4
cmp esi, ebx
jne 0x41eb70
mov eax, dword [edi]
mov dword [edi + 4], eax
lea ecx, [edi + 0x18]
call fcn.00426730
cmp dword [edi + 0x40], 0
je 0x41ebcb
mov edx, dword [edi + 0x3c]
call fcn.0042c150
mov eax, dword [edi + 0x3c]
mov dword [eax], eax
mov eax, dword [edi + 0x3c]
mov dword [eax + 4], eax
mov dword [edi + 0x40], 0
mov eax, dword [edi + 0x3c]
mov edx, dword [edi + 0x48]
mov ecx, dword [edi + 0x44]
mov dword [esp + 0x18], eax
lea eax, [esp + 0x18]
push eax
call fcn.0042bb70
add esp, 4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret