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

Disassembly:
push 0xffffffffffffffff
push 0x7c325b
mov eax, dword fs:[0]
push eax
sub esp, 0x78
push ebx
push ebp
push esi
push edi
mov eax, dword [0x8c8ca0]
xor eax, esp
push eax
lea eax, [esp + 0x8c]
mov dword fs:[0], eax
mov dword [esp + 0x3c], ecx
mov edx, dword [esp + 0xac]
xor edi, edi
cmp edx, edi
je 0x76c467
mov eax, dword [esp + 0xb0]
cmp eax, edi
je 0x76c467
mov esi, dword [esp + 0x9c]
cmp esi, edi
je 0x76c467
cmp dword [esp + 0xa0], edi
je 0x76c467
mov ebp, dword [esp + 0xa4]
cmp ebp, edi
je 0x76c467
mov ebx, dword [esp + 0xa8]
cmp ebx, edi
je 0x76c467
cmp edx, eax
je 0x76c467
mov dword [ecx], edi
lea ecx, [esp + 0x17]
call fcn.0074f72b
mov ecx, 0x913894
mov dword [esp + 0x94], edi
call fcn.0074ee19
fild dword [esp + 0xa4]
fild dword [esp + 0x9c]
cmp dword [eax], edi
fld st(1)
setne byte [esp + 0x17]
cmp ebp, esi
fdiv st(1)
fst qword [esp + 0x7c]
jge 0x76bfb7
fsubp st(2)
fdivp st(1)
fstp qword [esp + 0x7c]
jmp 0x76bfbd
fstp st(2)
fstp st(0)
fstp st(0)
cmp ebx, dword [esp + 0xa0]
fild dword [esp + 0xa8]
fild dword [esp + 0xa0]
fld st(1)
fdiv st(1)
fst qword [esp + 0x84]
jge 0x76bfec
fsubp st(2)
fdivp st(1)
fstp qword [esp + 0x84]
jmp 0x76bff2
fstp st(2)
fstp st(0)
fstp st(0)
mov dword [esp + 0x70], edi
mov dword [esp + 0x6c], edi
mov dword [esp + 0x68], edi
mov dword [esp + 0x64], edi
push esi
lea ecx, [esp + 0x70]
mov byte [esp + 0x98], 2
call fcn.0076fad7
push esi
lea ecx, [esp + 0x68]
call fcn.0076fad7
mov eax, dword [esp + 0x70]
mov ebx, dword [esp + 0x68]
cmp eax, edi
je 0x76c43d
cmp ebx, edi
je 0x76c43d
cmp esi, edi
mov dword [esp + 0x20], edi
jle 0x76c08c
fld qword [esp + 0x7c]
sub eax, ebx
mov edi, ebx
mov dword [esp + 0x2c], eax
fild dword [esp + 0x20]
fmul st(1)
fld st(0)
call fcn.006491e0
mov ebx, eax
shl eax, 8
mov dword [esp + 0x38], eax
fild dword [esp + 0x38]
fsubp st(1)
call fcn.006491e0
mov ecx, dword [esp + 0x2c]
mov dword [ecx + edi], eax
mov eax, dword [esp + 0x20]
inc eax
mov dword [edi], ebx
add edi, 4
cmp eax, esi
mov dword [esp + 0x20], eax
jl 0x76c04a
mov ebx, dword [esp + 0x68]
fstp st(0)
xor edi, edi
lea edx, [ebp + ebp]
push edx
lea ecx, [esp + 0x78]
call fcn.00751fbe
mov eax, dword [esp + 0x78]
add eax, ebp
push esi
lea ecx, [esp + 0x80]
mov byte [esp + 0x98], 3
mov dword [esp + 0x34], eax
call fcn.00751fbe
lea ecx, [esp + 0x18]
mov byte [esp + 0x94], 4
call fcn.0076de3c
cmp dword [esp + 0xa0], edi
mov dword [esp + 0x20], edi
mov edi, dword [esp + 0x80]
jle 0x76c38d
mov edi, dword [esp + 0xa8]
mov ecx, dword [esp + 0xb0]
xor eax, eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x70]
sub eax, ebx
mov dword [esp + 0x2c], eax
lea eax, [esi + 7]
cdq
and edx, 7
dec edi
add eax, edx
sar eax, 3
mov dword [esp + 0x40], edi
mov dword [esp + 0x48], edi
mov dword [esp + 0x60], eax
mov dword [esp + 0x38], ecx
jmp 0x76c13b
mov edi, dword [esp + 0x40]
mov ebp, dword [esp + 0xa4]
fild dword [esp + 0x20]
mov esi, dword [esp + 0xb4]
fmul qword [esp + 0x84]
fld st(0)
call fcn.006491e0
mov ebx, eax
mov dword [esp + 0x34], ebx
fisub dword [esp + 0x34]
fld1
fsub st(1)
fstp qword [esp + 0x50]
fmul qword [0x82e358]
fstp qword [esp + 0x58]
fld qword [esp + 0x58]
fistp dword [esp + 0x24]
fld qword [esp + 0x50]
fmul qword [0x82e358]
fstp qword [esp + 0x58]
fld qword [esp + 0x58]
fistp dword [esp + 0x28]
lea edx, [esp + 0x34]
push edx
lea eax, [esp + 0x48]
push eax
push ebx
mov dword [esp + 0x40], edi
call fcn.0075298b
lea ecx, [esp + 0x54]
push ecx
lea edx, [esp + 0x5c]
push edx
inc ebx
push ebx
mov edi, eax
call fcn.0075298b
imul eax, esi
imul edi, esi
mov esi, dword [esp + 0xc4]
add esp, 0x18
mov ebx, eax
mov eax, dword [esp + 0x78]
push eax
push 1
push 1
push ebp
add edi, esi
push edi
lea ecx, [esp + 0x2c]
call fcn.0075651a
mov ecx, dword [esp + 0x30]
push ecx
push 1
push 1
push ebp
add ebx, esi
push ebx
lea ecx, [esp + 0x2c]
call fcn.0075651a
mov esi, dword [esp + 0x68]
mov dword [esp + 0x1c], 0
mov dword [esp + 0x34], esi
mov edx, dword [esp + 0x2c]
mov ecx, dword [esi + edx]
mov ebx, dword [esp + 0x24]
mov ebp, dword [esp + 0x28]
mov eax, 0x100
sub eax, ecx
mov edi, ebp
imul ebp, ecx
mov edx, ebx
imul edi, eax
imul edx, ecx
mov ecx, ebx
imul ecx, eax
mov eax, dword [esi]
mov dword [esp + 0x58], edx
mov dword [esp + 0x50], ecx
mov esi, eax
test eax, eax
jge 0x76c23d
xor esi, esi
mov ecx, dword [esp + 0xa4]
dec ecx
cmp esi, ecx
jle 0x76c24b
mov esi, ecx
lea ebx, [eax + 1]
test ebx, ebx
jge 0x76c254
xor ebx, ebx
cmp ebx, ecx
jle 0x76c25a
mov ebx, ecx
mov eax, dword [esp + 0x78]
movzx ecx, byte [eax + esi]
movzx edx, byte [eax + ebx]
mov eax, dword [esp + 0x30]
movzx eax, byte [esi + eax]
mov esi, dword [esp + 0x30]
movzx esi, byte [ebx + esi]
lea ebx, [esi + eax]
add ebx, edx
add ebx, ecx
jne 0x76c28f
mov edi, dword [esp + 0x80]
mov eax, dword [esp + 0x1c]
mov byte [edi + eax], bl
jmp 0x76c2d1
cmp ebx, 4
jne 0x76c2a5
mov edi, dword [esp + 0x80]
mov eax, dword [esp + 0x1c]
mov byte [edi + eax], 1
jmp 0x76c2d1
imul eax, dword [esp + 0x50]
imul esi, dword [esp + 0x58]
imul edx, ebp
imul ecx, edi
mov edi, dword [esp + 0x80]
add eax, esi
add eax, edx
add eax, ecx
cmp eax, 0x8000
mov eax, dword [esp + 0x1c]
setg cl
mov byte [edi + eax], cl
mov esi, dword [esp + 0x34]
mov ecx, dword [esp + 0x9c]
inc eax
add esi, 4
cmp eax, ecx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x34], esi
jl 0x76c203
mov edx, dword [esp + 0x60]
mov esi, dword [esp + 0x38]
push 0
push edx
push 0
push 1
push esi
push ecx
push 1
push ecx
push edi
lea ecx, [esp + 0x3c]
call fcn.00756ea3
add esi, dword [esp + 0xb8]
cmp byte [esp + 0x17], 0
mov dword [esp + 0x38], esi
je 0x76c373
mov ecx, 0x913894
call fcn.0074ee19
cmp dword [eax + 4], 1
jne 0x76c373
mov ecx, 0x913894
call fcn.0074ee19
cmp dword [eax], 0
je 0x76c373
mov ecx, 0x913894
call fcn.0074ee19
mov ecx, 0x913894
mov esi, eax
call fcn.0074ee19
mov ecx, dword [esi + 8]
mov edx, dword [esp + 0xa0]
push ecx
mov ecx, dword [esp + 0x24]
push edx
mov edx, dword [eax]
push ecx
call edx
neg eax
sbb eax, eax
add eax, 1
jne 0x76c3e2
mov eax, dword [esp + 0x20]
inc eax
cmp eax, dword [esp + 0xa0]
mov dword [esp + 0x20], eax
jl 0x76c130
mov ebx, dword [esp + 0x68]
test edi, edi
je 0x76c39a
push edi
call fcn.0053b58b
add esp, 4
mov eax, dword [esp + 0x78]
test eax, eax
je 0x76c3ab
push eax
call fcn.0053b58b
add esp, 4
push ebx
call fcn.0053b58b
mov eax, dword [esp + 0x74]
push eax
call fcn.0053b58b
add esp, 8
mov ecx, 0x913894
mov dword [esp + 0x94], 0xffffffff
call fcn.0074ee19
add eax, 4
dec dword [eax]
mov eax, 1
jmp 0x76c46f
mov eax, dword [esp + 0x3c]
mov dword [eax], 0xe
test edi, edi
je 0x76c3f9
push edi
call fcn.0053b58b
add esp, 4
mov eax, dword [esp + 0x78]
test eax, eax
je 0x76c40a
push eax
call fcn.0053b58b
add esp, 4
mov ecx, dword [esp + 0x68]
push ecx
call fcn.0053b58b
mov edx, dword [esp + 0x74]
push edx
call fcn.0053b58b
add esp, 8
mov ecx, 0x913894
mov dword [esp + 0x94], 0xffffffff
call fcn.0074ee19
add eax, 4
dec dword [eax]
jmp 0x76c46d
mov ecx, dword [esp + 0x3c]
mov dword [ecx], 1
cmp ebx, edi
je 0x76c458
push ebx
call fcn.0053b58b
mov eax, dword [esp + 0x74]
add esp, 4
cmp eax, edi
je 0x76c421
push eax
call fcn.0053b58b
add esp, 4
jmp 0x76c421
mov dword [ecx], 5
xor eax, eax
mov ecx, dword [esp + 0x8c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x84
ret 0x24