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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x5726b6
mov eax, dword fs:[0]
push eax
sub esp, 0x2c
push ebx
push ebp
push esi
push edi
mov eax, dword [0x59ad00]
xor eax, esp
push eax
lea eax, [esp + 0x40]
mov dword fs:[0], eax
mov esi, ecx
mov eax, dword [esi + 0x24]
add eax, dword [esi + 0x14]
add eax, dword [esi]
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
call sub.MSVCR100.dll__CIsqrt
call fcn.00551b80
lea ebp, [eax + 3]
lea ecx, [ebp - 2]
mov dword [esp + 0x14], ecx
fild dword [esp + 0x14]
fld qword [esi + 0x90]
push 0x60
fsub qword [esi + 0x80]
mov dword [esp + 0x1c], ebp
fdiv st(1)
fst qword [esp + 0x20]
fld qword [esi + 0x98]
fsub qword [esi + 0x88]
fdivrp st(2)
fxch st(1)
fst qword [esp + 0x28]
fld qword [esi + 0x80]
fsubrp st(2)
fxch st(1)
fstp qword [esp + 0x30]
fsubr qword [esi + 0x88]
fstp qword [esp + 0x38]
call sub.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
mov dword [esp + 0x14], eax
mov dword [esp + 0x48], 0
test eax, eax
je 0x44c01e
mov ecx, eax
call fcn.0044be00
mov esi, eax
jmp 0x44c020
xor esi, esi
fld qword [esp + 0x1c]
xor ecx, ecx
mov eax, ebp
fstp qword [esi + 0x10]
fld qword [esp + 0x24]
mov edx, 8
mul edx
fstp qword [esi + 0x18]
seto cl
mov dword [esp + 0x48], 0xffffffff
mov dword [esi + 4], ebp
mov dword [esi + 8], ebp
neg ecx
or ecx, eax
push ecx
call fcn.005518e0
mov dword [esi + 0x20], eax
xor ecx, ecx
mov eax, ebp
mov edx, 8
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.005518e0
mov dword [esi + 0x28], eax
xor ecx, ecx
mov eax, ebp
mov edx, 8
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.005518e0
mov dword [esi + 0x24], eax
xor ecx, ecx
mov eax, ebp
mov edx, 8
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.005518e0
fld qword [esp + 0x3c]
fld qword [esp + 0x2c]
mov dword [esi + 0x2c], eax
add esp, 0x10
xor eax, eax
cmp ebp, 4
jl 0x44c171
lea edi, [ebp - 3]
test eax, eax
jne 0x44c0c9
fld st(1)
jmp 0x44c0d0
mov ecx, dword [esi + 0x28]
fld qword [ecx + eax*8 - 8]
mov edx, dword [esi + 0x20]
fstp qword [edx + eax*8]
mov edx, dword [esi + 0x28]
lea ecx, [eax + 1]
mov dword [esp + 0x14], ecx
fild dword [esp + 0x14]
fmul st(1)
fadd st(2)
fstp qword [edx + eax*8]
test ecx, ecx
jne 0x44c0f3
fld st(1)
jmp 0x44c0f9
mov ecx, dword [esi + 0x28]
fld qword [ecx + eax*8]
mov edx, dword [esi + 0x20]
fstp qword [edx + eax*8 + 8]
mov ecx, dword [esi + 0x28]
lea edx, [eax + 2]
mov dword [esp + 0x14], edx
fild dword [esp + 0x14]
fmul st(1)
fadd st(2)
fstp qword [ecx + eax*8 + 8]
test edx, edx
jne 0x44c11e
fld st(1)
jmp 0x44c125
mov ecx, dword [esi + 0x28]
fld qword [ecx + eax*8 + 8]
mov ecx, dword [esi + 0x20]
fstp qword [ecx + edx*8]
mov ebx, dword [esi + 0x28]
lea ecx, [eax + 3]
mov dword [esp + 0x14], ecx
fild dword [esp + 0x14]
fmul st(1)
fadd st(2)
fstp qword [ebx + edx*8]
test ecx, ecx
jne 0x44c148
fld st(1)
jmp 0x44c14e
mov ebx, dword [esi + 0x28]
fld qword [ebx + edx*8]
mov edx, dword [esi + 0x20]
fstp qword [edx + ecx*8]
mov edx, dword [esi + 0x28]
add eax, 4
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
fmul st(1)
fadd st(2)
fstp qword [edx + ecx*8]
cmp eax, edi
jl 0x44c0c1
cmp eax, ebp
jge 0x44c1a5
test eax, eax
jne 0x44c17d
fld st(1)
jmp 0x44c184
mov ecx, dword [esi + 0x28]
fld qword [ecx + eax*8 - 8]
mov edx, dword [esi + 0x20]
fstp qword [edx + eax*8]
mov edx, dword [esi + 0x28]
lea ecx, [eax + 1]
mov dword [esp + 0x14], ecx
fild dword [esp + 0x14]
fmul st(1)
fadd st(2)
fstp qword [edx + eax*8]
mov eax, ecx
cmp eax, ebp
jl 0x44c175
fstp st(1)
xor eax, eax
fstp st(0)
fld qword [esp + 0x34]
fld qword [esp + 0x24]
cmp ebp, 4
jl 0x44c26f
lea edi, [ebp - 3]
test eax, eax
jne 0x44c1c7
fld st(1)
jmp 0x44c1ce
mov ecx, dword [esi + 0x2c]
fld qword [ecx + eax*8 - 8]
mov edx, dword [esi + 0x24]
fstp qword [edx + eax*8]
mov edx, dword [esi + 0x2c]
lea ecx, [eax + 1]
mov dword [esp + 0x14], ecx
fild dword [esp + 0x14]
fmul st(1)
fadd st(2)
fstp qword [edx + eax*8]
test ecx, ecx
jne 0x44c1f1
fld st(1)
jmp 0x44c1f7
mov ecx, dword [esi + 0x2c]
fld qword [ecx + eax*8]
mov edx, dword [esi + 0x24]
fstp qword [edx + eax*8 + 8]
mov ecx, dword [esi + 0x2c]
lea edx, [eax + 2]
mov dword [esp + 0x14], edx
fild dword [esp + 0x14]
fmul st(1)
fadd st(2)
fstp qword [ecx + eax*8 + 8]
test edx, edx
jne 0x44c21c
fld st(1)
jmp 0x44c223
mov ecx, dword [esi + 0x2c]
fld qword [ecx + eax*8 + 8]
mov ecx, dword [esi + 0x24]
fstp qword [ecx + edx*8]
mov ebx, dword [esi + 0x2c]
lea ecx, [eax + 3]
mov dword [esp + 0x14], ecx
fild dword [esp + 0x14]
fmul st(1)
fadd st(2)
fstp qword [ebx + edx*8]
test ecx, ecx
jne 0x44c246
fld st(1)
jmp 0x44c24c
mov ebx, dword [esi + 0x2c]
fld qword [ebx + edx*8]
mov edx, dword [esi + 0x24]
fstp qword [edx + ecx*8]
mov edx, dword [esi + 0x2c]
add eax, 4
mov dword [esp + 0x14], eax
fild dword [esp + 0x14]
fmul st(1)
fadd st(2)
fstp qword [edx + ecx*8]
cmp eax, edi
jl 0x44c1bf
cmp eax, ebp
jge 0x44c2a3
test eax, eax
jne 0x44c27b
fld st(1)
jmp 0x44c282
mov ecx, dword [esi + 0x2c]
fld qword [ecx + eax*8 - 8]
mov edx, dword [esi + 0x24]
fstp qword [edx + eax*8]
mov edx, dword [esi + 0x2c]
lea ecx, [eax + 1]
mov dword [esp + 0x14], ecx
fild dword [esp + 0x14]
fmul st(1)
fadd st(2)
fstp qword [edx + eax*8]
mov eax, ecx
cmp eax, ebp
jl 0x44c273
xor ecx, ecx
fstp st(1)
mov eax, ebp
fstp st(0)
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.005518e0
add esp, 4
xor edi, edi
mov dword [esi], eax
test ebp, ebp
jle 0x44c52e
xor ecx, ecx
mov eax, ebp
mov edx, 0x58
mul edx
seto cl
neg ecx
or ecx, eax
xor eax, eax
add ecx, 4
setb al
neg eax
or eax, ecx
push eax
call fcn.005518e0
add esp, 4
mov dword [esp + 0x14], eax
mov dword [esp + 0x48], 1
test eax, eax
je 0x44c31f
push 0x44b5a0
push 0x44bca0
push ebp
lea ebx, [eax + 4]
push 0x58
push ebx
mov dword [eax], ebp
call fcn.00551a22
jmp 0x44c321
xor ebx, ebx
mov ecx, dword [esi]
mov dword [ecx + edi*4], ebx
xor ecx, ecx
mov dword [esp + 0x48], 0xffffffff
cmp ebp, 4
jl 0x44c4c1
xor eax, eax
jmp 0x44c340
mov edx, dword [esi + 0x20]
fld qword [edx + edi*8]
mov ebx, dword [esi]
mov ebx, dword [ebx + edi*4]
fstp qword [ebx + eax + 8]
mov edx, dword [esi + 0x28]
fld qword [edx + edi*8]
mov ebx, dword [esi]
mov ebx, dword [ebx + edi*4]
fstp qword [ebx + eax + 0x10]
mov edx, dword [esi + 0x24]
fld qword [edx + ecx*8]
mov ebx, dword [esi]
mov ebx, dword [ebx + edi*4]
fstp qword [ebx + eax + 0x18]
mov edx, dword [esi + 0x2c]
fld qword [edx + ecx*8]
mov ebx, dword [esi]
mov ebx, dword [ebx + edi*4]
fstp qword [ebx + eax + 0x20]
mov edx, dword [esi]
mov edx, dword [edx + edi*4]
mov dword [eax + edx], edi
mov edx, dword [esi]
mov edx, dword [edx + edi*4]
mov dword [edx + eax + 4], ecx
mov edx, dword [esi + 0x20]
fld qword [edx + edi*8]
mov ebx, dword [esi]
mov ebx, dword [ebx + edi*4]
fstp qword [ebx + eax + 0x60]
mov edx, dword [esi + 0x28]
fld qword [edx + edi*8]
mov ebx, dword [esi]
mov ebx, dword [ebx + edi*4]
fstp qword [ebx + eax + 0x68]
mov edx, dword [esi + 0x24]
fld qword [edx + ecx*8 + 8]
mov ebx, dword [esi]
mov ebx, dword [ebx + edi*4]
fstp qword [ebx + eax + 0x70]
mov edx, dword [esi + 0x2c]
fld qword [edx + ecx*8 + 8]
mov ebx, dword [esi]
mov ebx, dword [ebx + edi*4]
fstp qword [ebx + eax + 0x78]
mov edx, dword [esi]
mov edx, dword [edx + edi*4]
mov dword [edx + eax + 0x58], edi
mov ebx, dword [esi]
mov ebx, dword [ebx + edi*4]
lea edx, [ecx + 1]
mov dword [ebx + eax + 0x5c], edx
mov edx, dword [esi + 0x20]
fld qword [edx + edi*8]
mov ebx, dword [esi]
mov ebx, dword [ebx + edi*4]
fstp qword [ebx + eax + 0xb8]
mov edx, dword [esi + 0x28]
fld qword [edx + edi*8]
mov ebx, dword [esi]
mov ebx, dword [ebx + edi*4]
fstp qword [ebx + eax + 0xc0]
mov edx, dword [esi + 0x24]
fld qword [edx + ecx*8 + 0x10]
mov ebx, dword [esi]
mov ebx, dword [ebx + edi*4]
fstp qword [ebx + eax + 0xc8]
mov edx, dword [esi + 0x2c]
fld qword [edx + ecx*8 + 0x10]
mov ebx, dword [esi]
mov ebx, dword [ebx + edi*4]
fstp qword [ebx + eax + 0xd0]
mov edx, dword [esi]
mov edx, dword [edx + edi*4]
mov dword [edx + eax + 0xb0], edi
mov ebx, dword [esi]
mov ebx, dword [ebx + edi*4]
lea edx, [ecx + 2]
mov dword [ebx + eax + 0xb4], edx
mov edx, dword [esi + 0x20]
fld qword [edx + edi*8]
mov ebx, dword [esi]
mov ebx, dword [ebx + edi*4]
fstp qword [ebx + eax + 0x110]
mov edx, dword [esi + 0x28]
fld qword [edx + edi*8]
mov ebx, dword [esi]
mov ebx, dword [ebx + edi*4]
fstp qword [ebx + eax + 0x118]
mov edx, dword [esi + 0x24]
fld qword [edx + ecx*8 + 0x18]
mov ebx, dword [esi]
mov ebx, dword [ebx + edi*4]
mov ebp, dword [esp + 0x18]
fstp qword [ebx + eax + 0x120]
mov edx, dword [esi + 0x2c]
fld qword [edx + ecx*8 + 0x18]
mov ebx, dword [esi]
mov ebx, dword [ebx + edi*4]
fstp qword [ebx + eax + 0x128]
mov edx, dword [esi]
mov edx, dword [edx + edi*4]
mov dword [eax + edx + 0x108], edi
mov ebx, dword [esi]
mov ebx, dword [ebx + edi*4]
lea edx, [ecx + 3]
mov dword [ebx + eax + 0x10c], edx
add ecx, 4
lea edx, [ebp - 3]
add eax, 0x160
cmp ecx, edx
jl 0x44c340
cmp ecx, ebp
jge 0x44c525
mov eax, ecx
imul eax, eax, 0x58
lea ebx, [ebx]
mov edx, dword [esi + 0x20]
fld qword [edx + edi*8]
mov ebx, dword [esi]
mov ebx, dword [ebx + edi*4]
fstp qword [ebx + eax + 8]
mov edx, dword [esi + 0x28]
fld qword [edx + edi*8]
mov ebx, dword [esi]
mov ebx, dword [ebx + edi*4]
fstp qword [ebx + eax + 0x10]
mov edx, dword [esi + 0x24]
fld qword [edx + ecx*8]
mov ebx, dword [esi]
mov ebx, dword [ebx + edi*4]
fstp qword [ebx + eax + 0x18]
mov edx, dword [esi + 0x2c]
fld qword [edx + ecx*8]
mov ebx, dword [esi]
mov ebx, dword [ebx + edi*4]
fstp qword [ebx + eax + 0x20]
mov edx, dword [esi]
mov edx, dword [edx + edi*4]
mov dword [eax + edx], edi
mov edx, dword [esi]
mov edx, dword [edx + edi*4]
mov dword [edx + eax + 4], ecx
inc ecx
add eax, 0x58
cmp ecx, ebp
jl 0x44c4d0
inc edi
cmp edi, ebp
jl 0x44c2ce
mov eax, esi
mov ecx, dword [esp + 0x40]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret