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

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffffc
push edi
push esi
push edx
push ecx
push ebx
mov edx, dword [ebp + 8]
mov eax, edx
mov edi, dword [ebp + 0xc]
and edx, 3
shr eax, 2
shl edx, 7
mov esi, dword [edi + 0x34]
mov esi, dword [esi + eax*4]
add esi, edx
movzx eax, word [esi + 0x40]
cmp eax, 0x40
jae 0x4a97c9
or eax, eax
je 0x4a97c9
mov eax, dword [edi]
mov dword [ebp - 4], eax
mov edx, dword [esi + 0x74]
mov ebx, dword [esi + 0x78]
mov eax, dword [esi]
mov edi, dword [edi + 0x44]
cmp eax, 0x610044
jne 0x4a957e
mov dword [edi + 0xc], edx
mov dword [edi + 0x10], ebx
sub ebx, 0x1000
sbb ecx, ecx
not ecx
and ecx, 3
shl eax, cl
push dword [ebp + 0xc]
push eax
push edx
call fcn.004a93f4
add eax, dword [ebp - 4]
mov dword [edi + 0x14], eax
jmp 0x4a97a7
cmp eax, 0x540031
jne 0x4a95ba
cmp dword [edi + 0x28], 0
jne 0x4a95ba
mov dword [edi + 0x24], edx
mov dword [edi + 0x28], ebx
mov eax, 0x40
sub ebx, 0x1000
sbb ecx, ecx
not ecx
and ecx, 3
shl eax, cl
push dword [ebp + 0xc]
push eax
push edx
call fcn.004a93f4
add eax, dword [ebp - 4]
mov dword [edi + 0x2c], eax
jmp 0x4a97a7
cmp eax, 0x540030
jne 0x4a95f6
cmp dword [edi + 0x1c], 0
jne 0x4a95f6
mov dword [edi + 0x18], edx
mov dword [edi + 0x1c], ebx
mov eax, 0x40
sub ebx, 0x1000
sbb ecx, ecx
not ecx
and ecx, 3
shl eax, cl
push dword [ebp + 0xc]
push eax
push edx
call fcn.004a93f4
add eax, dword [ebp - 4]
mov dword [edi + 0x20], eax
jmp 0x4a97a7
cmp eax, 0x6f0057
jne 0x4a963a
cmp dword [esi + 4], 0x640072
jne 0x4a963a
cmp dword [edi + 4], 0
jne 0x4a963a
mov dword [edi], edx
mov dword [edi + 4], ebx
mov eax, 0x40
sub ebx, 0x1000
sbb ecx, ecx
not ecx
and ecx, 3
shl eax, cl
push dword [ebp + 0xc]
push eax
push edx
call fcn.004a93f4
add eax, dword [ebp - 4]
mov dword [edi + 8], eax
jmp 0x4a97a7
cmp eax, 0x6f0057
jne 0x4a964a
cmp dword [esi + 4], 0x6b0072
je 0x4a965a
cmp eax, 0x4f0057
jne 0x4a9689
cmp dword [esi + 4], 0x4b0052
jne 0x4a9689
mov dword [edi + 0x30], edx
mov dword [edi + 0x34], ebx
mov eax, 0x40
sub ebx, 0x1000
sbb ecx, ecx
not ecx
and ecx, 3
shl eax, cl
push dword [ebp + 0xc]
push eax
push edx
call fcn.004a93f4
add eax, dword [ebp - 4]
mov dword [edi + 0x38], eax
jmp 0x4a97a7
cmp eax, 0x6f0042
jne 0x4a96c8
cmp dword [esi + 4], 0x6b006f
jne 0x4a96c8
mov dword [edi + 0x30], edx
mov dword [edi + 0x34], ebx
mov eax, 0x40
sub ebx, 0x1000
sbb ecx, ecx
not ecx
and ecx, 3
shl eax, cl
push dword [ebp + 0xc]
push eax
push edx
call fcn.004a93f4
add eax, dword [ebp - 4]
mov dword [edi + 0x38], eax
jmp 0x4a97a7
cmp eax, 0x530005
jne 0x4a9707
cmp dword [esi + 4], 0x6d0075
jne 0x4a9707
mov dword [edi + 0x54], edx
mov dword [edi + 0x58], ebx
mov eax, 0x40
sub ebx, 0x1000
sbb ecx, ecx
not ecx
and ecx, 3
shl eax, cl
push dword [ebp + 0xc]
push eax
push edx
call fcn.004a93f4
add eax, dword [ebp - 4]
mov dword [edi + 0x5c], eax
jmp 0x4a97a7
cmp eax, 0x650054
jne 0x4a9743
cmp dword [esi + 4], 0x740078
jne 0x4a9743
mov dword [edi + 0x6c], edx
mov dword [edi + 0x70], ebx
mov eax, 0x40
sub ebx, 0x1000
sbb ecx, ecx
not ecx
and ecx, 3
shl eax, cl
push dword [ebp + 0xc]
push eax
push edx
call fcn.004a93f4
add eax, dword [ebp - 4]
mov dword [edi + 0x74], eax
jmp 0x4a97a7
cmp eax, 0x6f0050
jne 0x4a9776
mov dword [edi + 0x3c], edx
mov dword [edi + 0x40], ebx
mov eax, 0x40
sub ebx, 0x1000
sbb ecx, ecx
not ecx
and ecx, 3
shl eax, cl
push dword [ebp + 0xc]
push eax
push edx
call fcn.004a93f4
add eax, dword [ebp - 4]
mov dword [edi + 0x44], eax
jmp 0x4a97a7
cmp eax, 0x750043
jne 0x4a97a7
mov dword [edi + 0x48], edx
mov dword [edi + 0x4c], ebx
mov eax, 0x40
sub ebx, 0x1000
sbb ecx, ecx
not ecx
and ecx, 3
shl eax, cl
push dword [ebp + 0xc]
push eax
push edx
call fcn.004a93f4
add eax, dword [ebp - 4]
mov dword [edi + 0x50], eax
mov eax, dword [esi + 0x44]
cmp eax, 0xffffffff
je 0x4a97b8
push dword [ebp + 0xc]
push eax
call fcn.004a9504
mov eax, dword [esi + 0x48]
cmp eax, 0xffffffff
je 0x4a97c9
push dword [ebp + 0xc]
push eax
call fcn.004a9504
pop ebx
pop ecx
pop edx
pop esi
pop edi
leave
ret 8