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

Disassembly:
sub esp, 0x10
push ebx
push ebp
push esi
push edi
mov edi, ecx
mov eax, dword [edi + 0x40]
test eax, eax
je 0x77baa8
mov ecx, dword [edi + 0x50]
lea ebx, [eax + ecx*4]
jmp 0x77baaa
xor ebx, ebx
mov esi, dword [esp + 0x30]
mov ebp, dword [esp + 0x28]
push esi
lea edx, [eax + ebp*4]
push edx
push eax
mov eax, dword [edi + 0x20]
mov ecx, dword [eax + 4]
call fcn.00591b95
mov ecx, dword [esp + 0x34]
mov dword [ebx + ebp*4], ecx
test esi, esi
jne 0x77bb6b
mov ebx, dword [esp + 0x24]
mov ebp, dword [esp + 0x38]
test ebx, ebx
jne 0x77bae5
mov esi, 4
jmp 0x77bb02
mov edi, dword [edi + 0x64]
mov edx, dword [esp + 0x2c]
push 0
push ebp
push ebx
push edx
mov ecx, edi
call fcn.0077c280
mov esi, eax
test esi, esi
je 0x77c07a
mov edi, dword [esp + 0x3c]
push 0
mov ecx, edi
call fcn.0077b9f0
mov ecx, edi
cmp esi, 4
jne 0x77bb31
call fcn.0077b8d0
mov eax, dword [esp + 0x28]
push eax
mov ecx, edi
call fcn.0077ba40
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 0x1c
jae 0x77bb4e
call fcn.0077b910
mov eax, dword [esp + 0x28]
push eax
mov ecx, edi
call fcn.0077ba40
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 0x1c
push ebx
push ebp
call fcn.0077b990
mov eax, dword [esp + 0x28]
push eax
mov ecx, edi
call fcn.0077ba40
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 0x1c
mov eax, dword [edi + 0x20]
cmp esi, dword [eax + 0x7c]
jne 0x77bc08
mov eax, dword [esp + 0x24]
test eax, eax
jne 0x77bb84
lea ebx, [eax + 1]
jmp 0x77bbd5
mov edx, dword [esp + 0x38]
mov ebp, dword [esp + 0x2c]
mov ecx, dword [edi + 0x64]
push esi
push edx
push eax
push ebp
call fcn.0077c280
mov ebx, eax
cmp ebx, 4
jne 0x77bbcd
mov eax, dword [esi + 0x2c]
mov ecx, dword [esi + 0x28]
push 0
push eax
push ecx
lea ecx, [esp + 0x1c]
call fcn.007767e0
mov ecx, dword [edi + 0x20]
lea edx, [esp + 0x10]
push edx
call fcn.00761900
push 0x44e
mov ecx, ebp
call fcn.0075f390
jmp 0x77bbd5
test ebx, ebx
je 0x77c07a
mov esi, dword [esp + 0x3c]
push 0
mov ecx, esi
call fcn.0077b9f0
cmp ebx, 4
jae 0x77bf4f
mov ecx, esi
call fcn.0077b910
mov edx, dword [esp + 0x28]
push edx
mov ecx, esi
call fcn.0077ba40
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 0x1c
cmp esi, dword [eax + 0x70]
jne 0x77bcd7
mov edx, dword [esp + 0x24]
test edx, edx
jne 0x77bc21
mov ebx, dword [eax + 0x14c]
jmp 0x77bc37
mov eax, dword [esp + 0x38]
mov ecx, dword [edi + 0x64]
push esi
push eax
push edx
mov edx, dword [esp + 0x38]
push edx
call fcn.0077c280
mov ebx, eax
mov ebp, ebx
and ebp, 7
cmp ebp, 6
je 0x77bc79
cmp ebp, 7
je 0x77bc74
mov eax, dword [esi + 0x2c]
mov ecx, dword [esi + 0x28]
push 0
push eax
push ecx
lea ecx, [esp + 0x1c]
call fcn.007767e0
mov ecx, dword [edi + 0x20]
lea edx, [esp + 0x10]
push edx
call fcn.00761900
mov ecx, dword [esp + 0x2c]
push 0x44e
call fcn.0075f390
cmp ebp, 6
jne 0x77bc88
mov eax, ebx
sar eax, 3
mov dword [esp + 0x2c], eax
fild dword [esp + 0x2c]
jmp 0x77bc8f
mov ecx, ebx
and ecx, 0xfffffff8
fld qword [ecx]
fldz
fucompp
fnstsw ax
test ah, 0x44
jnp 0x77c07a
mov esi, dword [esp + 0x3c]
push 0
mov ecx, esi
call fcn.0077b9f0
mov edx, dword [edi + 0x20]
cmp ebx, dword [edx + 0x14c]
jne 0x77bf4f
mov ecx, esi
call fcn.0077b890
mov edx, dword [esp + 0x28]
push edx
mov ecx, esi
call fcn.0077ba40
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 0x1c
cmp esi, dword [eax + 0x54]
jne 0x77bd6d
mov eax, dword [esp + 0x24]
mov ebp, dword [esp + 0x2c]
test eax, eax
jne 0x77bcf3
mov ebx, 5
jmp 0x77bd05
mov edx, dword [esp + 0x38]
mov ecx, dword [edi + 0x64]
push esi
push edx
push eax
push ebp
call fcn.0077c280
mov ebx, eax
mov eax, ebx
and eax, 7
cmp al, 5
je 0x77bd3a
mov ecx, dword [esi + 0x2c]
mov edx, dword [esi + 0x28]
push 0
push ecx
push edx
lea ecx, [esp + 0x1c]
call fcn.007767e0
mov ecx, dword [edi + 0x20]
lea eax, [esp + 0x10]
push eax
call fcn.00761900
push 0x44e
mov ecx, ebp
call fcn.0075f390
cmp ebx, 5
je 0x77c07a
mov esi, dword [esp + 0x3c]
push 0
mov ecx, esi
call fcn.0077b9f0
mov ecx, esi
call fcn.0077b950
mov ecx, dword [esp + 0x28]
push ecx
mov ecx, esi
call fcn.0077ba40
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 0x1c
cmp esi, dword [eax + 0x78]
jne 0x77be83
mov eax, dword [esp + 0x24]
mov ebx, dword [esp + 0x2c]
test eax, eax
jne 0x77bd89
mov ebp, 6
jmp 0x77bd9b
mov edx, dword [esp + 0x38]
mov ecx, dword [edi + 0x64]
push esi
push edx
push eax
push ebx
call fcn.0077c280
mov ebp, eax
mov eax, ebp
and eax, 7
cmp eax, 6
je 0x77bdd6
cmp eax, 7
je 0x77bdd6
mov eax, dword [esi + 0x2c]
mov ecx, dword [esi + 0x28]
push 0
push eax
push ecx
lea ecx, [esp + 0x1c]
call fcn.007767e0
mov ecx, dword [edi + 0x20]
lea edx, [esp + 0x10]
push edx
call fcn.00761900
push 0x44e
mov ecx, ebx
call fcn.0075f390
push ebp
call fcn.006ffa18
fnstcw word [esp + 0x30]
movzx eax, word [esp + 0x30]
fld st(0)
or eax, 0xc00
mov dword [esp + 0x34], eax
add esp, 4
fldcw word [esp + 0x30]
fistp qword [esp + 0x10]
mov eax, dword [esp + 0x10]
fldcw word [esp + 0x2c]
fild dword [esp + 0x10]
test eax, eax
jge 0x77be11
fadd qword [0x103049e8]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x77be46
mov ecx, dword [esi + 0x2c]
mov edx, dword [esi + 0x28]
push 0
push ecx
push edx
lea ecx, [esp + 0x1c]
call fcn.007767e0
mov ecx, dword [edi + 0x20]
lea eax, [esp + 0x10]
push eax
call fcn.00761900
push 0x44e
mov ecx, ebx
call fcn.0075f390
cmp ebp, 6
je 0x77c07a
mov esi, dword [esp + 0x3c]
push 0
mov ecx, esi
call fcn.0077b9f0
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x38]
push ecx
push edx
mov ecx, esi
call fcn.0077b990
mov eax, dword [esp + 0x28]
push eax
mov ecx, esi
call fcn.0077ba40
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 0x1c
cmp esi, dword [eax + 0x74]
jne 0x77bf59
mov eax, dword [esp + 0x24]
mov ebx, dword [esp + 0x2c]
test eax, eax
jne 0x77be9f
mov ebp, 6
jmp 0x77beb1
mov edx, dword [esp + 0x38]
mov ecx, dword [edi + 0x64]
push esi
push edx
push eax
push ebx
call fcn.0077c280
mov ebp, eax
mov eax, ebp
and eax, 7
cmp eax, 6
je 0x77beec
cmp eax, 7
je 0x77beec
mov eax, dword [esi + 0x2c]
mov ecx, dword [esi + 0x28]
push 0
push eax
push ecx
lea ecx, [esp + 0x1c]
call fcn.007767e0
mov ecx, dword [edi + 0x20]
lea edx, [esp + 0x10]
push edx
call fcn.00761900
push 0x44e
mov ecx, ebx
call fcn.0075f390
push ebp
call fcn.006ffa18
fld st(0)
add esp, 4
call fcn.00865350
mov dword [esp + 0x2c], eax
fild dword [esp + 0x2c]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x77bf39
mov eax, dword [esi + 0x2c]
mov ecx, dword [esi + 0x28]
push 0
push eax
push ecx
lea ecx, [esp + 0x1c]
call fcn.007767e0
mov ecx, dword [edi + 0x20]
lea edx, [esp + 0x10]
push edx
call fcn.00761900
push 0x44e
mov ecx, ebx
call fcn.0075f390
cmp ebp, 6
je 0x77c07a
mov esi, dword [esp + 0x3c]
push 0
mov ecx, esi
call fcn.0077b9f0
mov eax, dword [esp + 0x24]
push eax
jmp 0x77c00b
cmp esi, dword [eax + 0x84]
jne 0x77bf92
mov ebx, dword [esp + 0x24]
test ebx, ebx
je 0x77c07a
mov eax, dword [esp + 0x38]
mov ebp, dword [esp + 0x2c]
mov ecx, dword [edi + 0x64]
push esi
push eax
push ebx
push ebp
call fcn.0077c280
cmp eax, 4
jb 0x77c07a
push eax
call fcn.006de86d
jmp 0x77bfca
cmp esi, dword [eax + 0x68]
jne 0x77c02d
mov ebx, dword [esp + 0x24]
test ebx, ebx
je 0x77c07a
mov eax, dword [esp + 0x38]
mov ebp, dword [esp + 0x2c]
mov ecx, dword [edi + 0x64]
push esi
push eax
push ebx
push ebp
call fcn.0077c280
cmp eax, 4
jb 0x77c07a
push eax
call fcn.007622d0
add esp, 4
test al, al
jne 0x77bffd
mov ecx, dword [esi + 0x2c]
mov edx, dword [esi + 0x28]
push 0
push ecx
push edx
lea ecx, [esp + 0x1c]
call fcn.007767e0
mov ecx, dword [edi + 0x20]
lea eax, [esp + 0x10]
push eax
call fcn.00761900
push 0x44e
mov ecx, ebp
call fcn.0075f390
mov esi, dword [esp + 0x3c]
push 0
mov ecx, esi
call fcn.0077b9f0
push ebx
mov ecx, dword [esp + 0x3c]
push ecx
mov ecx, esi
call fcn.0077b990
mov edx, dword [esp + 0x28]
push edx
mov ecx, esi
call fcn.0077ba40
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 0x1c
mov eax, dword [esp + 0x24]
test eax, eax
je 0x77c07a
mov edx, dword [esp + 0x38]
mov ebx, dword [esp + 0x2c]
mov ecx, dword [edi + 0x64]
push esi
push edx
push eax
push ebx
call fcn.0077c280
cmp eax, 4
jb 0x77c07a
mov eax, dword [esi + 0x2c]
mov ecx, dword [esi + 0x28]
push 0
push eax
push ecx
lea ecx, [esp + 0x1c]
call fcn.007767e0
mov ecx, dword [edi + 0x20]
lea edx, [esp + 0x10]
push edx
call fcn.00761900
push 0x44e
mov ecx, ebx
call fcn.0075f390
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 0x1c