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

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x5c
mov ebx, dword [esp + 0x70]
mov edx, dword [ebx + 0x64]
mov dword [esp + 0x2c], edx
mov ecx, dword [esp + 0x74]
mov esi, dword [ecx + 4]
test esi, esi
je 0x4f45d4
mov dword [esp + 0x3c], 0
mov eax, dword [esp + 0x84]
mov dword [eax], 0xfffffffd
mov edx, dword [esp + 0x78]
and edx, 1
mov dword [esp + 0x28], edx
je 0x4f43dc
mov edi, dword [ebx + 0x14]
mov eax, dword [edi + 0xec]
test eax, eax
je 0x4f4368
test dword [esp + 0x78], 0x40000
jne 0x4f4378
mov ebp, dword [ebx + 0xf8]
test eax, eax
je 0x4f431c
lea ecx, [esp + 0x38]
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x78]
mov dword [esp + 0xc], ecx
mov dword [esp + 8], edi
mov dword [esp + 4], esi
mov dword [esp], ebx
call eax
cmp eax, 4
jne 0x4f4350
nop
test ebp, ebp
je 0x4f4378
mov eax, dword [ebp + 8]
test eax, eax
je 0x4f44ac
lea edx, [esp + 0x38]
mov dword [esp + 0x10], edx
mov ecx, dword [esp + 0x78]
mov dword [esp + 0xc], ecx
mov dword [esp + 8], edi
mov dword [esp + 4], esi
mov dword [esp], ebx
call eax
mov ebp, dword [ebp + 0x10]
cmp eax, 4
je 0x4f431c
test eax, eax
jne 0x4f44f4
mov edx, dword [esp + 0x38]
mov eax, edx
add esp, 0x5c
pop ebx
pop esi
pop edi
pop ebp
ret
mov edx, dword [ebx + 0xf8]
test edx, edx
jne 0x4f42e0
nop
test byte [esp + 0x78], 3
je 0x4f43e8
mov eax, dword [esp + 0x28]
test eax, eax
je 0x4f4470
mov eax, dword [esp + 0x84]
mov dword [eax], 0xffffffff
and dword [esp + 0x78], 0xfffffffc
or dword [esp + 0x78], 1
mov ebp, 1
mov eax, dword [esp + 0x78]
and eax, 0xfffbfdff
or eax, 0x40000
mov dword [esp], eax
mov ecx, edi
mov edx, dword [esp + 0x74]
mov eax, ebx
call fcn.004f1de8
mov edx, eax
test eax, eax
je 0x4f44fc
mov eax, edx
add esp, 0x5c
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [ebx + 0x64]
mov edi, dword [eax]
jmp 0x4f42d2
mov edx, dword [esp + 0x2c]
test byte [edx + 4], 1
je 0x4f437f
mov dword [esp + 4], 0x60c9af
mov dword [esp], esi
call sub.msvcrt.dll_strstr
test eax, eax
jne 0x4f437f
mov edx, dword [esp + 0x2c]
mov edi, dword [edx + 0x24]
mov ecx, dword [edx + 0x30]
mov ebp, ecx
add ebp, 8
xor ebx, ebx
test edi, edi
jg 0x4f442d
jmp 0x4f45f6
inc ebx
cmp ebx, edi
je 0x4f45f6
mov edx, dword [ebp + ebx*4]
test edx, edx
je 0x4f4424
mov eax, dword [edx + 4]
test eax, eax
je 0x4f45e3
mov cl, byte [eax]
cmp byte [esi], cl
jne 0x4f4424
mov dword [esp + 4], eax
mov dword [esp], esi
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x4f4424
mov eax, dword [esp + 0x84]
mov dword [eax], ebx
mov edx, dword [esp + 0x2c]
mov eax, dword [edx + 0x28]
lea edx, [eax + ebx*8]
jmp 0x4f43cf
cmp dword [ebx + 0x14], edi
je 0x4f438b
cmp byte [esi], 0x3a
je 0x4f45c4
test dword [esp + 0x78], 0x40000
je 0x4f4491
or dword [esp + 0x78], 2
test byte [esp + 0x78], 2
je 0x4f44b4
mov ecx, dword [esp + 0x84]
mov dword [ecx], 0xfffffffe
xor ebp, ebp
jmp 0x4f43a7
mov ebp, dword [ebp + 0x10]
jmp 0x4f431c
xor ebp, ebp
jmp 0x4f43a7
test ebx, ebx
je 0x4f44e4
mov dword [esp + 8], 0
mov edx, dword [esp + 0x74]
mov dword [esp + 4], edx
mov dword [esp], ebx
call dword [ebx + 0x30]
test eax, eax
je 0x4f44e4
mov edx, eax
sub edx, 0xc
jne 0x4f43cf
mov ecx, dword [esp + 0x80]
mov dword [ecx], 0x60ca59
lea esi, [esi]
xor edx, edx
jmp 0x4f43cf
mov eax, dword [esp + 0x7c]
test eax, eax
je 0x4f4633
lea eax, [esp + 0x4c]
mov dword [esp + 0x1c], eax
lea eax, [esp + 0x44]
mov dword [esp + 0x18], eax
lea eax, [esp + 0x40]
mov dword [esp + 0x14], eax
lea eax, [esp + 0x3c]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 0xc], eax
mov dword [esp + 8], edi
mov dword [esp + 4], esi
mov dword [esp], ebx
mov dword [esp + 0x20], edx
call fcn.005295ac
mov ecx, dword [esp + 0x3c]
test ecx, ecx
mov edx, dword [esp + 0x20]
je 0x4f4657
mov eax, dword [esp + 0x4c]
test eax, eax
je 0x4f4645
cmp esi, eax
je 0x4f45f0
mov dword [esp + 4], 0xffffffff
mov dword [esp], eax
mov dword [esp + 0x20], edx
call fcn.004eaf6c
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x20]
lea ebx, [esp + 0x48]
mov dword [esp + 8], ebx
mov dword [esp + 4], eax
lea eax, [ecx + 0x98]
mov dword [esp], eax
mov dword [esp + 0x20], edx
call dword [ecx + 0xc8]
test eax, eax
mov edx, dword [esp + 0x20]
je 0x4f45ae
lea edx, [eax - 0xc]
cmp ebp, 1
sbb eax, eax
dec eax
mov ecx, dword [esp + 0x84]
mov dword [ecx], eax
jmp 0x4f43cf
cmp byte [esi + 1], 0x3a
jne 0x4f4482
jmp 0x4f438b
mov dword [esp], ecx
call fcn.004dd280
mov esi, eax
jmp 0x4f42a9
mov dword [esp], edx
call fcn.004dd280
jmp 0x4f4440
mov eax, dword [esp + 0x74]
jmp 0x4f4584
mov edx, dword [esp + 0x2c]
mov ebx, dword [edx + 0x20]
mov esi, dword [esp + 0x7c]
test esi, esi
je 0x4f44bb
test ebx, ebx
je 0x4f4669
lea eax, [esp + 0x48]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 4], eax
mov dword [esp], ebx
call dword [ebx + 0x30]
test eax, eax
je 0x4f44f4
lea edx, [eax - 0xc]
jmp 0x4f43cf
mov eax, dword [esp + 0x80]
mov dword [eax], 0x60ca59
jmp 0x4f43cf
mov eax, dword [esp + 0x80]
mov dword [eax], str.missing_variable_name
jmp 0x4f43cf
mov ecx, dword [esp + 0x80]
mov dword [ecx], str.parent_namespace_doesnt_exist
jmp 0x4f43cf
mov dword [esp], 0x3c
call fcn.004edaf0
mov ebx, eax
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.004f4008
mov ecx, dword [esp + 0x2c]
mov dword [ecx + 0x20], ebx
jmp 0x4f460d