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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x64
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
mov edx, dword [edi + 0x3880]
xor ebx, ebx
xor ecx, ecx
cmp edx, ebx
mov dword [esp + 0x14], ebx
jle 0x4e7738
mov si, word [eax + 2]
lea edx, [edi + 0x3382]
jmp 0x4e7720
cmp word [edx], si
je 0x4e7ad5
inc ecx
add edx, 0xa0
cmp ecx, dword [edi + 0x3880]
jl 0x4e7720
xor ecx, ecx
mov cx, word [eax]
test cl, 1
mov dword [esp + 0x1c], ecx
je 0x4e7aeb
mov dx, word [eax + 6]
mov esi, dword [edi + 4]
mov cx, word [eax + 4]
imul esi, esi, 0x8c
mov word [esp + 0x2a], dx
mov dx, word [eax + 0xa]
mov word [esp + 0x2e], dx
mov dx, word [eax + 8]
mov ax, word [eax + 2]
mov word [esp + 0x2c], dx
mov edx, dword [esi + 0xf9aaac]
mov word [esp + 0x26], ax
mov dword [esp + 0x14], edx
movzx eax, cx
fild dword [esp + 0x14]
mov dword [esp + 0x18], eax
fidiv dword [esi + 0xf9aacc]
fild dword [esp + 0x18]
fmul st(1)
call fcn.00581d24
movzx ecx, word [esp + 0x2c]
mov dword [esp + 0x18], ecx
mov word [esp + 0x28], ax
fild dword [esp + 0x18]
fmul st(1)
call fcn.00581d24
fstp st(0)
mov edx, dword [esi + 0xf9aab0]
mov word [esp + 0x2c], ax
movzx eax, word [esp + 0x2a]
mov dword [esp + 0x18], edx
mov dword [esp + 0x20], eax
fild dword [esp + 0x18]
fidiv dword [esi + 0xf9aad0]
fild dword [esp + 0x20]
fmul st(1)
call fcn.00581d24
movzx ecx, word [esp + 0x2e]
mov dword [esp + 0x20], ecx
mov si, ax
mov word [esp + 0x2a], si
fild dword [esp + 0x20]
fmul st(1)
call fcn.00581d24
fstp st(0)
movzx edx, word [esp + 0x28]
mov ecx, dword [esp + 0x14]
cmp edx, ecx
mov word [esp + 0x2e], ax
jle 0x4e781e
mov word [esp + 0x28], cx
movzx eax, word [esp + 0x28]
movzx edx, word [esp + 0x2c]
add edx, eax
cmp edx, ecx
mov dword [esp + 0x20], eax
jle 0x4e783b
sub ecx, dword [esp + 0x28]
mov word [esp + 0x2c], cx
mov eax, dword [esp + 0x18]
movzx ecx, si
cmp ecx, eax
jle 0x4e784e
mov word [esp + 0x2a], ax
mov si, ax
movzx edx, word [esp + 0x2e]
movzx esi, si
add edx, esi
cmp edx, eax
jle 0x4e7865
sub eax, dword [esp + 0x2a]
mov word [esp + 0x2e], ax
mov eax, dword [edi + 0x3880]
push eax
lea eax, [esp + 0x34]
push str.FECKREGION_d
push eax
call fcn.0057ed49
movzx ecx, word [esp + 0x3a]
movzx edx, word [esp + 0x38]
mov eax, dword [esp + 0x2c]
push ebx
push ebx
push 0x30
push 6
push 1
push ecx
push edx
push esi
push eax
mov eax, dword [edi + 4]
lea ecx, [esp + 0x60]
push ecx
call fcn.0050bc40
mov ecx, dword [edi + 4]
mov esi, eax
mov dword [esp + 0x48], eax
mov eax, dword [0xf9b300]
shl ecx, 6
shl esi, 6
add ecx, eax
add esp, 0x34
add eax, esi
call fcn.00407fe0
mov ecx, dword [esp + 0x14]
mov dword [ecx*4 + 0xeb0b48], 1
mov eax, dword [edi + 0x3880]
lea edx, [eax + eax*4]
shl edx, 5
lea eax, [edx + edi + 0x3380]
mov dx, word [esp + 0x28]
mov word [eax + 4], dx
mov dx, word [esp + 0x2a]
mov word [eax + 6], dx
mov dx, word [esp + 0x2e]
mov word [eax + 0xa], dx
mov dx, word [esp + 0x2c]
mov word [eax + 8], dx
mov dx, word [esp + 0x1c]
mov word [eax], dx
mov dx, word [esp + 0x26]
mov word [eax + 2], dx
mov eax, dword [edi + 0x3880]
lea eax, [eax + eax*4]
shl eax, 5
mov dword [eax + edi + 0x338c], ebx
mov eax, dword [edi + 0x3880]
lea edx, [eax + eax*4]
shl edx, 5
mov dword [edx + edi + 0x3390], ecx
mov eax, dword [edi + 0x3880]
lea eax, [eax + eax*4]
mov ecx, 0x3f800000
shl eax, 5
lea eax, [eax + edi + 0x33a0]
mov dword [eax + 0x3c], ecx
mov dword [eax + 0x28], ecx
mov dword [eax + 0x14], ecx
mov dword [eax], ecx
mov dword [eax + 0x38], ebx
mov dword [eax + 0x34], ebx
mov dword [eax + 0x30], ebx
mov dword [eax + 0x2c], ebx
mov dword [eax + 0x24], ebx
mov dword [eax + 0x20], ebx
mov dword [eax + 0x1c], ebx
mov dword [eax + 0x18], ebx
mov dword [eax + 0x10], ebx
mov dword [eax + 0xc], ebx
mov dword [eax + 8], ebx
mov dword [eax + 4], ebx
mov eax, dword [edi + 0x3880]
lea ecx, [edi + 0x3890]
add eax, 0x53
lea eax, [eax + eax*4]
shl eax, 5
add eax, edi
call fcn.00407fe0
inc dword [edi + 0x3880]
mov eax, dword [esp + 0x14]
mov dword [esi + 0xf9b310], ebx
mov dword [esi + 0xf9b314], ebx
mov dword [esi + 0xf9b318], ebx
mov dword [esi + 0xf9b31c], ebx
mov dword [esi + 0xf9b130], ebx
mov dword [esi + 0xf9b134], ebx
mov dword [esi + 0xf9b138], ebx
mov dword [esi + 0xf9b13c], ebx
mov dword [esi + 0xf9afb0], ebx
mov dword [esi + 0xf9afb4], ebx
mov dword [esi + 0xf9afb8], ebx
mov dword [esi + 0xf9afbc], ebx
mov dword [esi + 0xf9b320], ebx
mov dword [esi + 0xf9b324], ebx
mov dword [esi + 0xf9b328], ebx
mov dword [esi + 0xf9b32c], ebx
mov dword [esi + 0xf9b140], ebx
mov dword [esi + 0xf9b144], ebx
mov dword [esi + 0xf9b148], ebx
mov dword [esi + 0xf9b14c], ebx
mov dword [esi + 0xf9afc0], ebx
mov dword [esi + 0xf9afc4], ebx
mov dword [esi + 0xf9afc8], ebx
mov dword [esi + 0xf9afcc], ebx
mov dword [esi + 0xf9b330], ebx
mov dword [esi + 0xf9b334], ebx
mov dword [esi + 0xf9b338], ebx
mov dword [esi + 0xf9b33c], ebx
mov dword [esi + 0xf9b150], ebx
mov dword [esi + 0xf9b154], ebx
mov dword [esi + 0xf9b158], ebx
mov dword [esi + 0xf9b15c], ebx
mov dword [esi + 0xf9afd0], ebx
mov dword [esi + 0xf9afd4], ebx
mov dword [esi + 0xf9afd8], ebx
mov dword [esi + 0xf9afdc], ebx
mov dword [esi + 0xf9b340], ebx
mov dword [esi + 0xf9b344], ebx
mov dword [esi + 0xf9b348], ebx
mov dword [esi + 0xf9b34c], ebx
mov dword [esi + 0xf9b160], ebx
mov dword [esi + 0xf9b164], ebx
mov dword [esi + 0xf9b168], ebx
mov dword [esi + 0xf9b16c], ebx
mov dword [esi + 0xf9afe0], ebx
mov dword [esi + 0xf9afe4], ebx
mov dword [esi + 0xf9afe8], ebx
mov dword [esi + 0xf9afec], ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
lea eax, [ecx + ecx*4]
shl eax, 5
mov eax, dword [eax + edi + 0x3390]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
test cl, 4
je 0x4e7e69
mov edx, dword [edi + 0x3370]
xor ecx, ecx
cmp edx, ebx
lea esi, [edi + 0x32e0]
jle 0x4e7b25
mov dx, word [eax + 2]
lea ebx, [ebx]
cmp word [esi + 8], dx
je 0x4e7b25
inc ecx
add esi, 0x90
cmp ecx, dword [edi + 0x3370]
jl 0x4e7b10
mov cx, word [eax + 4]
mov dx, word [eax + 6]
mov word [esp + 0x28], cx
mov cx, word [eax + 2]
mov word [esp + 0x2a], dx
mov word [esp + 0x26], cx
mov cx, word [eax + 8]
mov edx, 0x100
cmp cx, dx
mov word [esp + 0x2c], dx
ja 0x4e7b58
mov word [esp + 0x2c], cx
mov ax, word [eax + 0xa]
cmp ax, dx
mov word [esp + 0x2e], dx
ja 0x4e7b6b
mov word [esp + 0x2e], ax
lea edx, [esp + 0x30]
push str.SPECREGION
push edx
call fcn.0057ed49
movzx eax, word [esp + 0x36]
movzx ecx, word [esp + 0x34]
push eax
push ecx
push 0x30
push 6
push 0x86
push eax
push ecx
push ebx
lea eax, [esp + 0x58]
push ebx
push eax
xor eax, eax
call fcn.0050bc40
mov ecx, eax
imul ecx, ecx, 0x8c
mov dword [ecx + 0xf9aad4], 0xff000000
mov edi, dword [esi]
push ebx
mov dword [esp + 0x48], eax
call fcn.00504e00
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x3880]
mov cx, word [esp + 0x5c]
lea eax, [eax + eax*4]
shl eax, 5
mov word [eax + edx + 0x3384], cx
mov cx, word [esp + 0x5e]
mov word [eax + edx + 0x3386], cx
mov cx, word [esp + 0x62]
mov word [eax + edx + 0x338a], cx
mov cx, word [esp + 0x60]
mov word [eax + edx + 0x3388], cx
mov cx, word [esp + 0x50]
mov word [eax + edx + 0x3380], cx
mov cx, word [esp + 0x5a]
lea eax, [eax + edx + 0x3380]
mov word [eax + 2], cx
mov eax, dword [edx + 0x3880]
lea eax, [eax + eax*4]
shl eax, 5
mov dword [eax + edx + 0x338c], esi
mov eax, dword [edx + 0x3880]
lea ecx, [eax + eax*4]
mov eax, dword [esp + 0x48]
shl ecx, 5
mov dword [ecx + edx + 0x3390], eax
mov ecx, dword [edx + 0x3880]
mov edi, dword [esi + 0x10]
lea ecx, [ecx + ecx*4]
add esp, 0x34
shl ecx, 5
lea ecx, [ecx + edx + 0x33a0]
mov dword [ecx], edi
fld dword [esi + 0x14]
fstp dword [ecx + 4]
fld dword [esi + 0x18]
fstp dword [ecx + 8]
fld dword [esi + 0x1c]
fstp dword [ecx + 0xc]
mov edi, dword [esi + 0x20]
mov dword [ecx + 0x10], edi
fld dword [esi + 0x24]
fstp dword [ecx + 0x14]
fld dword [esi + 0x28]
fstp dword [ecx + 0x18]
fld dword [esi + 0x2c]
fstp dword [ecx + 0x1c]
mov edi, dword [esi + 0x30]
mov dword [ecx + 0x20], edi
fld dword [esi + 0x34]
fstp dword [ecx + 0x24]
fld dword [esi + 0x38]
fstp dword [ecx + 0x28]
fld dword [esi + 0x3c]
fstp dword [ecx + 0x2c]
mov edi, dword [esi + 0x40]
mov dword [ecx + 0x30], edi
fld dword [esi + 0x44]
fstp dword [ecx + 0x34]
fld dword [esi + 0x48]
fstp dword [ecx + 0x38]
fld dword [esi + 0x4c]
fstp dword [ecx + 0x3c]
mov ecx, dword [edx + 0x3880]
mov edi, dword [esi + 0x50]
add ecx, 0x53
lea ecx, [ecx + ecx*4]
shl ecx, 5
mov dword [ecx + edx], edi
fld dword [esi + 0x54]
add ecx, edx
fstp dword [ecx + 4]
fld dword [esi + 0x58]
fstp dword [ecx + 8]
fld dword [esi + 0x5c]
fstp dword [ecx + 0xc]
mov edi, dword [esi + 0x60]
mov dword [ecx + 0x10], edi
fld dword [esi + 0x64]
fstp dword [ecx + 0x14]
fld dword [esi + 0x68]
fstp dword [ecx + 0x18]
fld dword [esi + 0x6c]
fstp dword [ecx + 0x1c]
mov edi, dword [esi + 0x70]
mov dword [ecx + 0x20], edi
fld dword [esi + 0x74]
fstp dword [ecx + 0x24]
fld dword [esi + 0x78]
fstp dword [ecx + 0x28]
fld dword [esi + 0x7c]
fstp dword [ecx + 0x2c]
mov edi, dword [esi + 0x80]
mov dword [ecx + 0x30], edi
fld dword [esi + 0x84]
fstp dword [ecx + 0x34]
fld dword [esi + 0x88]
fstp dword [ecx + 0x38]
fld dword [esi + 0x8c]
fstp dword [ecx + 0x3c]
mov esi, dword [edx + 0x3880]
inc esi
shl eax, 6
mov dword [edx + 0x3880], esi
mov dword [eax + 0xf9b310], ebx
mov dword [eax + 0xf9b314], ebx
mov dword [eax + 0xf9b318], ebx
mov dword [eax + 0xf9b31c], ebx
mov dword [eax + 0xf9b130], ebx
mov dword [eax + 0xf9b134], ebx
mov dword [eax + 0xf9b138], ebx
mov dword [eax + 0xf9b13c], ebx
mov dword [eax + 0xf9afb0], ebx
mov dword [eax + 0xf9afb4], ebx
mov dword [eax + 0xf9afb8], ebx
mov dword [eax + 0xf9afbc], ebx
mov dword [eax + 0xf9b320], ebx
mov dword [eax + 0xf9b324], ebx
mov dword [eax + 0xf9b328], ebx
mov dword [eax + 0xf9b32c], ebx
mov dword [eax + 0xf9b140], ebx
mov dword [eax + 0xf9b144], ebx
mov dword [eax + 0xf9b148], ebx
mov dword [eax + 0xf9b14c], ebx
mov dword [eax + 0xf9afc0], ebx
mov dword [eax + 0xf9afc4], ebx
mov dword [eax + 0xf9afc8], ebx
mov dword [eax + 0xf9afcc], ebx
mov dword [eax + 0xf9b330], ebx
mov dword [eax + 0xf9b334], ebx
mov dword [eax + 0xf9b338], ebx
mov dword [eax + 0xf9b33c], ebx
mov dword [eax + 0xf9b150], ebx
mov dword [eax + 0xf9b154], ebx
mov dword [eax + 0xf9b158], ebx
mov dword [eax + 0xf9b15c], ebx
mov dword [eax + 0xf9afd0], ebx
mov dword [eax + 0xf9afd4], ebx
mov dword [eax + 0xf9afd8], ebx
mov dword [eax + 0xf9afdc], ebx
mov dword [eax + 0xf9b340], ebx
mov dword [eax + 0xf9b344], ebx
mov dword [eax + 0xf9b348], ebx
mov dword [eax + 0xf9b34c], ebx
mov dword [eax + 0xf9b160], ebx
mov dword [eax + 0xf9b164], ebx
mov dword [eax + 0xf9b168], ebx
mov dword [eax + 0xf9b16c], ebx
mov dword [eax + 0xf9afe0], ebx
mov dword [eax + 0xf9afe4], ebx
mov dword [eax + 0xf9afe8], ebx
mov dword [eax + 0xf9afec], ebx
mov eax, dword [esp + 0x14]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4