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

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x5c
mov edx, dword [esp + 0x78]
mov ecx, dword [esp + 0x88]
mov eax, dword [esp + 0x74]
mov edi, dword [esp + 0x8c]
mov dword [esp + 0x44], edx
mov edx, dword [esp + 0x7c]
mov dword [esp + 0x34], ecx
mov ecx, dword [esp + 0x90]
mov dword [esp + 0x40], eax
and eax, 0xf
mov dword [esp + 0x1c], edi
mov dword [esp + 0x48], edx
mov edx, dword [esp + 0x80]
cmp al, 7
mov dword [esp + 0x38], edi
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x4c], edx
mov edx, dword [esp + 0x84]
mov dword [esp + 0x30], edx
mov byte [esp + 0x1b], dl
je 0x411621
mov dword [esp + 8], 0x472
mov dword [esp + 4], 0x475f30
mov dword [esp], str.jv_get_kind_object___JV_KIND_OBJECT
call dbg._assert
movzx eax, byte [esp + 0x1b]
and eax, 0xf
cmp al, 5
je 0x411665
mov dword [esp + 8], 0x473
mov dword [esp + 4], 0x475f30
mov dword [esp], str.jv_get_kind_key___JV_KIND_STRING
call dbg._assert
mov dword [esp + 8], 0x41a
mov dword [esp + 4], 0x475f30
mov dword [esp], str.jv_get_kind_key___JV_KIND_STRING
call dbg._assert
mov eax, dword [esp + 0x40]
mov dword [esp], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0xc], eax
lea eax, [esp + 0x20]
call dbg.jvp_object_unshare
movzx ebx, byte [esp + 0x1b]
mov esi, dword [esp + 0x24]
mov ebp, dword [esp + 0x1c]
mov edi, dword [esp + 0x28]
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x20]
mov dword [esp + 0x44], esi
mov dword [esp + 0x14], esi
mov dword [esp + 4], ebp
mov ecx, edi
mov byte [esp], bl
mov dword [esp + 0x4c], edx
mov edx, esi
mov dword [esp + 0x40], eax
mov dword [esp + 0x48], edi
mov byte [esp + 0x1a], al
call sym._jvp_object_find_bucket.isra.14
mov edx, ebp
mov esi, eax
mov eax, ebx
call sym._jvp_string_hash.isra.8
mov ebp, eax
nop
lea esi, [esi]
mov eax, dword [esi]
mov edx, dword [esp + 0x14]
mov ecx, edi
mov dword [esp], eax
movzx eax, byte [esp + 0x1a]
call sym._jvp_object_get_slot.isra.17
test eax, eax
mov ebx, eax
je 0x411770
cmp ebp, dword [eax + 4]
je 0x411704
mov esi, ebx
jmp 0x4116e0
movzx ecx, byte [eax + 8]
mov eax, dword [eax + 0x10]
mov edx, dword [esp + 0x1c]
mov dword [esp], eax
movzx eax, byte [esp + 0x1b]
call sym._jvp_string_equal.isra.20
test eax, eax
je 0x411700
mov eax, dword [ebx]
mov dword [esi], eax
movzx eax, byte [ebx + 8]
mov edx, dword [ebx + 0x10]
call sym._jvp_string_free.isra.9
mov eax, dword [ebx + 0x18]
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
mov dword [ebx + 0x10], 0
mov dword [ebx + 0x14], 0
mov byte [ebx + 8], 1
mov dword [esp], eax
mov eax, dword [ebx + 0x1c]
mov dword [esp + 4], eax
mov eax, dword [ebx + 0x20]
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x24]
mov dword [esp + 0xc], eax
call dbg.jv_free
mov eax, dword [esp + 0x30]
mov dword [esp], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0xc], eax
call dbg.jv_free
mov edi, dword [esp + 0x70]
mov eax, dword [esp + 0x40]
mov dword [edi], eax
mov eax, dword [esp + 0x44]
mov dword [edi + 4], eax
mov eax, dword [esp + 0x48]
mov dword [edi + 8], eax
mov eax, dword [esp + 0x4c]
mov dword [edi + 0xc], eax
add esp, 0x5c
mov eax, edi
pop ebx
pop esi
pop edi
pop ebp
ret