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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
sub esp, 0x2f4
mov eax, dword [0x6d0f8610]
xor eax, esp
mov dword [esp + 0x2f0], eax
fldz
mov eax, dword [ebp + 0x14]
fld qword [ebp + 0x30]
push ebx
mov ebx, dword [ebp + 0x10]
fcom st(1)
mov dword [esp + 0x40], eax
push esi
mov esi, dword [ebp + 8]
push edi
mov edi, dword [ebp + 0xc]
fnstsw ax
fld qword [ebp + 0x18]
mov dword [esp + 0x64], esi
fld qword [ebp + 0x28]
mov dword [esp + 0x30], ebx
test ah, 5
jp 0x6d0038a8
fadd st(1), st(0)
fxch st(1)
fst qword [ebp + 0x18]
fld qword [ebp + 0x20]
fadd st(3)
fstp qword [ebp + 0x20]
fxch st(1)
fchs
fst qword [ebp + 0x28]
fxch st(2)
fchs
fst qword [ebp + 0x30]
jmp 0x6d0038aa
fxch st(2)
fld qword [ebp + 0x40]
fcom st(4)
fnstsw ax
fstp st(4)
fld qword [ebp + 0x38]
test ah, 5
jp 0x6d0038da
fadd st(2), st(0)
fxch st(2)
fst qword [ebp + 0x18]
fld qword [ebp + 0x20]
fadd st(5)
fstp qword [ebp + 0x20]
fxch st(2)
fchs
fst qword [ebp + 0x38]
fxch st(4)
fchs
fst qword [ebp + 0x40]
jmp 0x6d0038dc
fxch st(4)
fld st(3)
fmul st(1)
fld st(2)
fmul st(6)
fcompp
fnstsw ax
test ah, 5
jp 0x6d003911
fxch st(4)
fst qword [ebp + 0x28]
fxch st(3)
fst qword [ebp + 0x38]
fxch st(4)
fst qword [ebp + 0x30]
fxch st(1)
fst qword [ebp + 0x40]
fld qword [ebp + 0x48]
fld qword [ebp + 0x50]
fst qword [ebp + 0x48]
fxch st(1)
fst qword [ebp + 0x50]
jmp 0x6d003917
fld qword [ebp + 0x48]
fld qword [ebp + 0x50]
fld st(5)
fmul st(2)
fst qword [esp + 0x90]
fxch st(4)
fmulp st(2)
fxch st(1)
fst qword [esp + 0x88]
fld st(6)
fmul st(2)
fst qword [esp + 0xc0]
fxch st(3)
fmulp st(2)
fxch st(1)
fst qword [esp + 0xa8]
fxch st(2)
fadd st(3)
fld qword [0x6d0b6868]
fmul st(1), st(0)
fxch st(5)
fsubrp st(1)
fst qword [esp + 0x98]
fxch st(2)
faddp st(1)
fmul st(3)
fsubr qword [ebp + 0x20]
fstp qword [esp + 0x58]
fld st(1)
fadd st(4)
fst qword [esp + 0xd8]
fldz
fcom st(1)
fnstsw ax
fstp st(1)
fld st(1)
test ah, 0x41
jne 0x6d00398d
faddp st(5)
fxch st(4)
faddp st(2)
jmp 0x6d003997
fxch st(2)
faddp st(5)
fxch st(4)
faddp st(2)
fxch st(1)
fst qword [esp + 0x68]
fld qword [esp + 0xc0]
faddp st(5)
fxch st(4)
fst qword [esp + 0xd0]
fcom st(3)
fnstsw ax
fstp st(3)
test ah, 5
jp 0x6d0039c0
fstp st(3)
fxch st(1)
faddp st(2)
jmp 0x6d0039cc
fxch st(2)
faddp st(3)
fxch st(2)
fstp qword [esp + 0x68]
fxch st(1)
faddp st(1)
sub esp, 8
fstp qword [esp]
call dword [sym.imp.MSVCR100.dll_floor]
call fcn.6d0b0a20
fld qword [esp + 0x70]
fadd qword [0x6d0b6868]
mov dword [esp + 0x48], eax
fstp qword [esp]
call dword [sym.imp.MSVCR100.dll_floor]
call fcn.6d0b0a20
fld qword [esp + 0x60]
fadd qword [0x6d0b6868]
mov dword [esp + 0x44], eax
fst qword [esp + 0xc0]
fstp qword [esp]
call dword [sym.imp.MSVCR100.dll_floor]
call fcn.6d0b0a20
fld qword [esp + 0x60]
fadd qword [ebp + 0x30]
mov dword [esp + 0x2c], eax
fadd qword [esp + 0x90]
fadd qword [ebp + 0x40]
fadd qword [esp + 0xb0]
fadd qword [0x6d0b6868]
fstp qword [esp]
call dword [sym.imp.MSVCR100.dll_floor]
add esp, 8
call fcn.6d0b0a20
push edi
push esi
mov dword [esp + 0x30], eax
call sym.awt.dll__GetNativePrim_8
mov edi, eax
mov dword [esp + 0x2c], edi
test edi, edi
je 0x6d004b38
push ebx
push esi
call sym.awt.dll__GrPrim_Sg2dGetPixel_8
mov ecx, dword [edi + 8]
cmp dword [ecx + 8], 0
mov dword [esp + 0x38], eax
je 0x6d003a8e
lea edx, [esp + 0x16c]
push edx
push edi
push ebx
push esi
call sym.awt.dll__GrPrim_Sg2dGetCompInfo_16
mov eax, dword [esp + 0x48]
push eax
push esi
call sym.awt.dll__SurfaceData_GetOps_8
mov ebx, eax
mov dword [esp + 0x7c], ebx
test ebx, ebx
je 0x6d004b38
mov edx, dword [esp + 0x30]
lea ecx, [esp + 0xe8]
push ecx
push edx
push esi
call sym.awt.dll__GrPrim_Sg2dGetClip_12
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x24]
push eax
mov eax, dword [esp + 0x44]
push ecx
push edx
push eax
lea ecx, [esp + 0xf8]
push ecx
call fcn.6d05f1d0
mov edx, dword [esp + 0xf4]
cmp edx, dword [esp + 0xec]
jle 0x6d004b38
mov eax, dword [esp + 0xf0]
cmp eax, dword [esp + 0xe8]
jle 0x6d004b38
mov ecx, dword [edi + 0x1c]
mov eax, dword [ebx]
push ecx
lea edx, [esp + 0xec]
push edx
push ebx
push esi
call eax
add esp, 0x10
test eax, eax
jne 0x6d004b38
mov eax, dword [esp + 0xe8]
mov ecx, dword [esp + 0xf0]
mov edx, dword [esp + 0xec]
mov edi, dword [esp + 0xf4]
mov dword [esp + 0x40], eax
mov dword [esp + 0x24], edx
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x28], edi
cmp ecx, eax
jle 0x6d004b22
cmp edi, edx
jle 0x6d004b22
mov edx, dword [ebx + 4]
lea ecx, [esp + 0xe8]
push ecx
push ebx
push esi
call edx
add esp, 0xc
cmp dword [esp + 0xf8], 0
je 0x6d004afc
fld qword [ebp + 0x30]
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax + 0x10]
fld st(0)
fldz
mov edx, dword [ecx]
fld st(0)
mov dword [esp + 0x44], edx
fucomp st(2)
fnstsw ax
fstp st(1)
test ah, 0x44
jp 0x6d003ba1
fld st(0)
jmp 0x6d003ba6
fld qword [ebp + 0x28]
fdiv st(2)
fst qword [esp + 0x68]
fld qword [ebp + 0x40]
fld st(0)
fld st(3)
fucompp
fnstsw ax
test ah, 0x44
jp 0x6d003bbe
fstp st(0)
jmp 0x6d003bc5
fstp st(2)
fld qword [ebp + 0x38]
fdivrp st(2)
fxch st(1)
fst qword [esp + 0x30]
fld st(1)
fld qword [0x6d0b6a78]
fmul st(1), st(0)
fxch st(1)
call fcn.6d05f1d0
fmulp st(1)
mov edi, eax
mov ebx, edx
call fcn.6d05f1d0
fld1
fcom qword [ebp + 0x48]
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], edx
fnstsw ax
test ah, 0x41
jne 0x6d00476f
fcomp qword [ebp + 0x50]
fnstsw ax
test ah, 0x41
jne 0x6d004771
fstp st(0)
sub esp, 8
fstp st(0)
fld qword [esp + 0x90]
fmul st(0), st(0)
fld qword [esp + 0x98]
fmul st(0), st(0)
faddp st(1)
fstp qword [esp]
call sub.MSVCR100.dll_sqrt
fstp qword [ebp + 0x48]
fld qword [esp + 0xb0]
fmul st(0), st(0)
fld qword [esp + 0xc8]
fmul st(0), st(0)
faddp st(1)
fstp qword [esp]
call sub.MSVCR100.dll_sqrt
fld qword [0x6d0b6a88]
add esp, 8
fcom qword [ebp + 0x48]
fnstsw ax
test ah, 1
jne 0x6d0044ee
fcompp
fnstsw ax
test ah, 1
jne 0x6d0044f2
fld qword [ebp + 0x18]
mov eax, dword [esp + 0x2c]
fld qword [ebp + 0x28]
mov ecx, dword [eax + 0x10]
fadd st(1)
mov edx, dword [ecx + 4]
sub esp, 8
mov dword [esp + 0x38], edx
fst qword [ebp + 0x28]
fld qword [ebp + 0x20]
fld qword [ebp + 0x30]
fadd st(1)
fst qword [ebp + 0x30]
fld qword [ebp + 0x38]
fadd st(3), st(0)
fxch st(3)
fstp qword [esp + 0x98]
fld qword [ebp + 0x40]
fadd st(1), st(0)
fxch st(1)
fstp qword [esp + 0x90]
fld st(3)
faddp st(3)
fxch st(2)
fstp qword [ebp + 0x38]
faddp st(1)
fstp qword [ebp + 0x40]
fstp qword [esp]
call dword [sym.imp.MSVCR100.dll_floor]
call fcn.6d0b0a20
fld qword [ebp + 0x28]
fstp qword [esp]
mov esi, eax
call dword [sym.imp.MSVCR100.dll_floor]
call fcn.6d0b0a20
fld qword [ebp + 0x20]
fstp qword [esp]
mov ebx, eax
call dword [sym.imp.MSVCR100.dll_floor]
call fcn.6d0b0a20
fld qword [ebp + 0x30]
fstp qword [esp]
mov edi, eax
call dword [sym.imp.MSVCR100.dll_floor]
add esp, 8
call fcn.6d0b0a20
cmp edi, eax
jne 0x6d003d9e
cmp edi, dword [esp + 0xec]
jl 0x6d003eb7
cmp edi, dword [esp + 0xf4]
jge 0x6d003eb7
cmp esi, ebx
jge 0x6d003d3b
mov ecx, esi
lea eax, [ebx - 1]
jmp 0x6d003d40
lea ecx, [ebx + 1]
mov eax, esi
inc eax
mov dword [esp + 0x24], ecx
cmp eax, ecx
jge 0x6d003d4a
dec eax
mov edx, dword [esp + 0xe8]
cmp ecx, edx
jge 0x6d003d5b
mov ecx, edx
mov dword [esp + 0x24], ecx
mov edx, dword [esp + 0xf0]
cmp eax, edx
jle 0x6d003d68
mov eax, edx
cmp ecx, eax
jge 0x6d003eb7
lea edx, [esp + 0x16c]
push edx
mov edx, dword [esp + 0x30]
push edx
push 0
push 0
push 0
push 1
push 0
sub eax, ecx
push eax
mov eax, dword [esp + 0x58]
push eax
push edi
push ecx
lea ecx, [esp + 0x114]
push ecx
jmp 0x6d003eb0
cmp esi, ebx
jne 0x6d003e2c
cmp esi, dword [esp + 0xe8]
jl 0x6d003eb7
cmp esi, dword [esp + 0xf0]
jge 0x6d003eb7
cmp edi, eax
jge 0x6d003dc9
mov ecx, edi
dec eax
jmp 0x6d003dce
lea ecx, [eax + 1]
mov eax, edi
inc eax
mov dword [esp + 0x28], ecx
cmp eax, ecx
jge 0x6d003dd8
dec eax
mov edx, dword [esp + 0xec]
cmp ecx, edx
jge 0x6d003de9
mov ecx, edx
mov dword [esp + 0x28], ecx
mov edx, dword [esp + 0xf4]
cmp eax, edx
jle 0x6d003df6
mov eax, edx
cmp ecx, eax
jge 0x6d003eb7
lea edx, [esp + 0x16c]
push edx
mov edx, dword [esp + 0x30]
push edx
push 0
push 0
push 0
push 4
push 0
sub eax, ecx
push eax
mov eax, dword [esp + 0x58]
push eax
push ecx
push esi
lea ecx, [esp + 0x114]
push ecx
jmp 0x6d003eb0
lea edx, [esp + 0x40]
push edx
lea ecx, [esp + 0x4c]
push ecx
lea edx, [esp + 0x60]
push edx
lea ecx, [esp + 0x48]
push ecx
lea edx, [esp + 0x60]
push edx
lea ecx, [esp + 0x58]
push ecx
lea edx, [esp + 0x40]
push edx
lea ecx, [esp + 0x40]
push ecx
lea edx, [esp + 0x108]
push edx
push 1
push eax
push ebx
push edi
push esi
call fcn.6d005290
add esp, 0x38
test al, al
je 0x6d003eb7
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x48]
lea eax, [esp + 0x16c]
push eax
mov eax, dword [esp + 0x44]
push ecx
mov ecx, dword [esp + 0x44]
push edx
mov edx, dword [esp + 0x64]
push eax
mov eax, dword [esp + 0x60]
push ecx
mov ecx, dword [esp + 0x58]
push edx
mov edx, dword [esp + 0x50]
push eax
mov eax, dword [esp + 0x44]
push ecx
mov ecx, dword [esp + 0x44]
push edx
push eax
push ecx
lea edx, [esp + 0x114]
push edx
call dword [esp + 0x60]
add esp, 0x30
fld qword [ebp + 0x28]
sub esp, 8
fstp qword [esp]
call dword [sym.imp.MSVCR100.dll_floor]
call fcn.6d0b0a20
fld qword [esp + 0x98]
fstp qword [esp]
mov ebx, eax
call dword [sym.imp.MSVCR100.dll_floor]
call fcn.6d0b0a20
fld qword [ebp + 0x30]
fstp qword [esp]
mov esi, eax
call dword [sym.imp.MSVCR100.dll_floor]
call fcn.6d0b0a20
fld qword [esp + 0x90]
fstp qword [esp]
mov edi, eax
call dword [sym.imp.MSVCR100.dll_floor]
add esp, 8
call fcn.6d0b0a20
cmp edi, eax
jne 0x6d003f9f
cmp edi, dword [esp + 0xec]
jl 0x6d0040b8
cmp edi, dword [esp + 0xf4]
jge 0x6d0040b8
cmp ebx, esi
jge 0x6d003f3c
mov ecx, ebx
lea eax, [esi - 1]
jmp 0x6d003f41
lea ecx, [esi + 1]
mov eax, ebx
inc eax
mov dword [esp + 0x28], ecx
cmp eax, ecx
jge 0x6d003f4b
dec eax
mov edx, dword [esp + 0xe8]
cmp ecx, edx
jge 0x6d003f5c
mov ecx, edx
mov dword [esp + 0x28], ecx
mov edx, dword [esp + 0xf0]
cmp eax, edx
jle 0x6d003f69
mov eax, edx
cmp ecx, eax
jge 0x6d0040b8
lea edx, [esp + 0x16c]
push edx
mov edx, dword [esp + 0x30]
push edx
push 0
push 0
push 0
push 1
push 0
sub eax, ecx
push eax
mov eax, dword [esp + 0x58]
push eax
push edi
push ecx
lea ecx, [esp + 0x114]
push ecx
jmp 0x6d0040b1
cmp ebx, esi
jne 0x6d00402d
cmp ebx, dword [esp + 0xe8]
jl 0x6d0040b8
cmp ebx, dword [esp + 0xf0]
jge 0x6d0040b8
cmp edi, eax
jge 0x6d003fca
mov ecx, edi
dec eax
jmp 0x6d003fcf
lea ecx, [eax + 1]
mov eax, edi
inc eax
mov dword [esp + 0x24], ecx
cmp eax, ecx
jge 0x6d003fd9
dec eax
mov edx, dword [esp + 0xec]
cmp ecx, edx
jge 0x6d003fea
mov ecx, edx
mov dword [esp + 0x24], ecx
mov edx, dword [esp + 0xf4]
cmp eax, edx
jle 0x6d003ff7
mov eax, edx
cmp ecx, eax
jge 0x6d0040b8
lea edx, [esp + 0x16c]
push edx
mov edx, dword [esp + 0x30]
push edx
push 0
push 0
push 0
push 4
push 0
sub eax, ecx
push eax
mov eax, dword [esp + 0x58]
push eax
push ecx
push ebx
lea ecx, [esp + 0x114]
push ecx
jmp 0x6d0040b1
lea edx, [esp + 0x50]
push edx
lea ecx, [esp + 0x48]
push ecx
lea edx, [esp + 0x50]
push edx
lea ecx, [esp + 0x64]
push ecx
lea edx, [esp + 0x50]
push edx
lea ecx, [esp + 0x50]
push ecx
lea edx, [esp + 0x3c]
push edx
lea ecx, [esp + 0x44]
push ecx
lea edx, [esp + 0x108]
push edx
push 1
push eax
push esi
push edi
push ebx
call fcn.6d005290
add esp, 0x38
test al, al
je 0x6d0040b8
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x44]
lea eax, [esp + 0x16c]
push eax
mov eax, dword [esp + 0x54]
push ecx
mov ecx, dword [esp + 0x60]
push edx
mov edx, dword [esp + 0x54]
push eax
mov eax, dword [esp + 0x50]
push ecx
mov ecx, dword [esp + 0x50]
push edx
mov edx, dword [esp + 0x50]
push eax
mov eax, dword [esp + 0x40]
push ecx
mov ecx, dword [esp + 0x48]
push edx
push eax
push ecx
lea edx, [esp + 0x114]
push edx
call dword [esp + 0x60]
add esp, 0x30
fld qword [esp + 0x90]
sub esp, 8
fstp qword [esp]
call dword [sym.imp.MSVCR100.dll_floor]
call fcn.6d0b0a20
fld qword [ebp + 0x38]
fstp qword [esp]
mov ebx, eax
call dword [sym.imp.MSVCR100.dll_floor]
call fcn.6d0b0a20
fld qword [esp + 0x90]
fstp qword [esp]
mov esi, eax
call dword [sym.imp.MSVCR100.dll_floor]
call fcn.6d0b0a20
fld qword [ebp + 0x40]
fstp qword [esp]
mov edi, eax
call dword [sym.imp.MSVCR100.dll_floor]
add esp, 8
call fcn.6d0b0a20
cmp edi, eax
jne 0x6d0041a0
cmp edi, dword [esp + 0xec]
jl 0x6d0042b9
cmp edi, dword [esp + 0xf4]
jge 0x6d0042b9
cmp ebx, esi
jge 0x6d00413d
mov ecx, ebx
lea eax, [esi - 1]
jmp 0x6d004142
lea ecx, [esi + 1]
mov eax, ebx
inc eax
mov dword [esp + 0x28], ecx
cmp eax, ecx
jge 0x6d00414c
dec eax
mov edx, dword [esp + 0xe8]
cmp ecx, edx
jge 0x6d00415d
mov ecx, edx
mov dword [esp + 0x28], ecx
mov edx, dword [esp + 0xf0]
cmp eax, edx
jle 0x6d00416a
mov eax, edx
cmp ecx, eax
jge 0x6d0042b9
lea edx, [esp + 0x16c]
push edx
mov edx, dword [esp + 0x30]
push edx
push 0
push 0
push 0
push 1
push 0
sub eax, ecx
push eax
mov eax, dword [esp + 0x58]
push eax
push edi
push ecx
lea ecx, [esp + 0x114]
push ecx
jmp 0x6d0042b2
cmp ebx, esi
jne 0x6d00422e
cmp ebx, dword [esp + 0xe8]
jl 0x6d0042b9
cmp ebx, dword [esp + 0xf0]
jge 0x6d0042b9
cmp edi, eax
jge 0x6d0041cb
mov ecx, edi
dec eax
jmp 0x6d0041d0
lea ecx, [eax + 1]
mov eax, edi
inc eax
mov dword [esp + 0x24], ecx
cmp eax, ecx
jge 0x6d0041da
dec eax
mov edx, dword [esp + 0xec]
cmp ecx, edx
jge 0x6d0041eb
mov ecx, edx
mov dword [esp + 0x24], ecx
mov edx, dword [esp + 0xf4]
cmp eax, edx
jle 0x6d0041f8
mov eax, edx
cmp ecx, eax
jge 0x6d0042b9
lea edx, [esp + 0x16c]
push edx
mov edx, dword [esp + 0x30]
push edx
push 0
push 0
push 0
push 4
push 0
sub eax, ecx
push eax
mov eax, dword [esp + 0x58]
push eax
push ecx
push ebx
lea ecx, [esp + 0x114]
push ecx
jmp 0x6d0042b2
lea edx, [esp + 0x50]
push edx
lea ecx, [esp + 0x48]
push ecx
lea edx, [esp + 0x50]
push edx
lea ecx, [esp + 0x64]
push ecx
lea edx, [esp + 0x50]
push edx
lea ecx, [esp + 0x50]
push ecx
lea edx, [esp + 0x3c]
push edx
lea ecx, [esp + 0x44]
push ecx
lea edx, [esp + 0x108]
push edx
push 1
push eax
push esi
push edi
push ebx
call fcn.6d005290
add esp, 0x38
test al, al
je 0x6d0042b9
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x44]
lea eax, [esp + 0x16c]
push eax
mov eax, dword [esp + 0x54]
push ecx
mov ecx, dword [esp + 0x60]
push edx
mov edx, dword [esp + 0x54]
push eax
mov eax, dword [esp + 0x50]
push ecx
mov ecx, dword [esp + 0x50]
push edx
mov edx, dword [esp + 0x50]
push eax
mov eax, dword [esp + 0x40]
push ecx
mov ecx, dword [esp + 0x48]
push edx
push eax
push ecx
lea edx, [esp + 0x114]
push edx
call dword [esp + 0x60]
add esp, 0x30
fld qword [ebp + 0x38]
sub esp, 8
fstp qword [esp]
call dword [sym.imp.MSVCR100.dll_floor]
call fcn.6d0b0a20
fld qword [ebp + 0x18]
fstp qword [esp]
mov ebx, eax
call dword [sym.imp.MSVCR100.dll_floor]
call fcn.6d0b0a20
fld qword [ebp + 0x40]
fstp qword [esp]
mov esi, eax
call dword [sym.imp.MSVCR100.dll_floor]
call fcn.6d0b0a20
fld qword [ebp + 0x20]
fstp qword [esp]
mov edi, eax
call dword [sym.imp.MSVCR100.dll_floor]
add esp, 8
call fcn.6d0b0a20
cmp edi, eax
jne 0x6d004399
cmp edi, dword [esp + 0xec]
jl 0x6d0044b2
cmp edi, dword [esp + 0xf4]
jge 0x6d0044b2
cmp ebx, esi
jge 0x6d004336
mov ecx, ebx
lea eax, [esi - 1]
jmp 0x6d00433b
lea ecx, [esi + 1]
mov eax, ebx
inc eax
mov dword [esp + 0x28], ecx
cmp eax, ecx
jge 0x6d004345
dec eax
mov edx, dword [esp + 0xe8]
cmp ecx, edx
jge 0x6d004356
mov ecx, edx
mov dword [esp + 0x28], ecx
mov edx, dword [esp + 0xf0]
cmp eax, edx
jle 0x6d004363
mov eax, edx
cmp ecx, eax
jge 0x6d0044b2
lea edx, [esp + 0x16c]
push edx
mov edx, dword [esp + 0x30]
push edx
push 0
push 0
push 0
push 1
push 0
sub eax, ecx
push eax
mov eax, dword [esp + 0x58]
push eax
push edi
push ecx
lea ecx, [esp + 0x114]
push ecx
jmp 0x6d0044ab
cmp ebx, esi
jne 0x6d004427
cmp ebx, dword [esp + 0xe8]
jl 0x6d0044b2
cmp ebx, dword [esp + 0xf0]
jge 0x6d0044b2
cmp edi, eax
jge 0x6d0043c4
mov ecx, edi
dec eax
jmp 0x6d0043c9
lea ecx, [eax + 1]
mov eax, edi
inc eax
mov dword [esp + 0x24], ecx
cmp eax, ecx
jge 0x6d0043d3
dec eax
mov edx, dword [esp + 0xec]
cmp ecx, edx
jge 0x6d0043e4
mov ecx, edx
mov dword [esp + 0x24], ecx
mov edx, dword [esp + 0xf4]
cmp eax, edx
jle 0x6d0043f1
mov eax, edx
cmp ecx, eax
jge 0x6d0044b2
lea edx, [esp + 0x16c]
push edx
mov edx, dword [esp + 0x30]
push edx
push 0
push 0
push 0
push 4
push 0
sub eax, ecx
push eax
mov eax, dword [esp + 0x58]
push eax
push ecx
push ebx
lea ecx, [esp + 0x114]
push ecx
jmp 0x6d0044ab
lea edx, [esp + 0x50]
push edx
lea ecx, [esp + 0x48]
push ecx
lea edx, [esp + 0x50]
push edx
lea ecx, [esp + 0x64]
push ecx
lea edx, [esp + 0x50]
push edx
lea ecx, [esp + 0x50]
push ecx
lea edx, [esp + 0x3c]
push edx
lea ecx, [esp + 0x44]
push ecx
lea edx, [esp + 0x108]
push edx
push 1
push eax
push esi
push edi
push ebx
call fcn.6d005290
add esp, 0x38
test al, al
je 0x6d0044b2
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x44]
lea eax, [esp + 0x16c]
push eax
mov eax, dword [esp + 0x54]
push ecx
mov ecx, dword [esp + 0x60]
push edx
mov edx, dword [esp + 0x54]
push eax
mov eax, dword [esp + 0x50]
push ecx
mov ecx, dword [esp + 0x50]
push edx
mov edx, dword [esp + 0x50]
push eax
mov eax, dword [esp + 0x40]
push ecx
mov ecx, dword [esp + 0x48]
push edx
push eax
push ecx
lea edx, [esp + 0x114]
push edx
call dword [esp + 0x60]
add esp, 0x30
mov esi, dword [esp + 0x7c]
mov eax, dword [esi + 8]
test eax, eax
je 0x6d0044d0
mov edx, dword [esp + 0x64]
lea ecx, [esp + 0xe8]
push ecx
push esi
push edx
call eax
add esp, 0xc
mov eax, dword [esi + 0xc]
test eax, eax
je 0x6d004b38
mov edx, dword [esp + 0x64]
lea ecx, [esp + 0xe8]
push ecx
push esi
push edx
jmp 0x6d004b33
fstp st(1)
fstp st(0)
fld qword [esp + 0x98]
sub esp, 8
fadd qword [esp + 0x98]
mov dword [esp + 0x200], edi
mov dword [esp + 0x204], ebx
fadd qword [esp + 0xc8]
fst qword [esp + 0x50]
fstp qword [esp + 0x1e0]
fld qword [esp + 0x60]
fld qword [esp + 0x90]
fadd st(1), st(0)
fxch st(1)
fadd qword [esp + 0xb0]
fst qword [esp + 0x88]
fst qword [esp + 0x1e8]
fld qword [ebp + 0x30]
fsubrp st(2)
fadd st(1), st(0)
fxch st(1)
fst qword [esp + 0x78]
fstp qword [esp + 0x1f0]
fld qword [esp + 0x70]
fstp qword [esp + 0x1f8]
fadd qword [0x6d0b6868]
fst qword [esp + 0xb8]
fstp qword [esp]
call dword [sym.imp.MSVCR100.dll_floor]
call fcn.6d0b0a20
fld qword [esp + 0x78]
fadd qword [0x6d0b6868]
mov dword [esp + 0x208], eax
fst qword [esp + 0xa8]
fstp qword [esp]
call dword [sym.imp.MSVCR100.dll_floor]
call fcn.6d0b0a20
fld qword [esp + 0x50]
mov esi, dword [esp + 0x58]
fstp qword [esp + 0x240]
fld qword [esp + 0x88]
mov dword [esp + 0x20c], eax
mov eax, dword [esp + 0x5c]
fst qword [esp + 0x248]
fld qword [ebp + 0x40]
mov dword [esp + 0x260], esi
fsub qword [esp + 0xb0]
mov dword [esp + 0x264], eax
fst qword [esp + 0xd0]
faddp st(1)
fst qword [esp + 0x88]
fstp qword [esp + 0x250]
fld qword [esp + 0x38]
fstp qword [esp + 0x258]
fld qword [esp + 0xb8]
fstp qword [esp]
call dword [sym.imp.MSVCR100.dll_floor]
call fcn.6d0b0a20
fld qword [esp + 0x88]
fadd qword [0x6d0b6868]
mov dword [esp + 0x268], eax
fst qword [esp + 0xb8]
fstp qword [esp]
call dword [sym.imp.MSVCR100.dll_floor]
call fcn.6d0b0a20
fld qword [ebp + 0x28]
fsub qword [esp + 0x98]
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x26c], eax
mov dword [esp + 0x230], esi
fadd qword [esp + 0x50]
mov dword [esp + 0x234], ecx
fstp qword [esp + 0x210]
fld qword [esp + 0x78]
fst qword [esp + 0x218]
fadd qword [esp + 0xd0]
fst qword [esp + 0x78]
fstp qword [esp + 0x220]
fld qword [esp + 0x38]
fstp qword [esp + 0x228]
fld qword [esp + 0xa8]
fstp qword [esp]
call dword [sym.imp.MSVCR100.dll_floor]
call fcn.6d0b0a20
fld qword [esp + 0x78]
fadd qword [0x6d0b6868]
mov dword [esp + 0x238], eax
fst qword [esp + 0xa8]
fstp qword [esp]
call dword [sym.imp.MSVCR100.dll_floor]
call fcn.6d0b0a20
fld qword [ebp + 0x38]
fsub qword [esp + 0xc8]
mov dword [esp + 0x23c], eax
mov dword [esp + 0x290], edi
mov dword [esp + 0x294], ebx
fadd qword [esp + 0x50]
fstp qword [esp + 0x270]
fld qword [esp + 0x88]
fstp qword [esp + 0x278]
fld qword [esp + 0x78]
fstp qword [esp + 0x280]
fld qword [esp + 0x70]
fstp qword [esp + 0x288]
fld qword [esp + 0xb8]
fstp qword [esp]
call dword [sym.imp.MSVCR100.dll_floor]
call fcn.6d0b0a20
fld qword [esp + 0xa8]
fstp qword [esp]
mov dword [esp + 0x298], eax
call dword [sym.imp.MSVCR100.dll_floor]
add esp, 8
call fcn.6d0b0a20
fld qword [ebp + 0x30]
fld qword [esp + 0x68]
mov dword [esp + 0x294], eax
mov esi, 8
jmp 0x6d004776
fstp st(0)
mov esi, 4
fld qword [esp + 0x98]
sub esp, 8
fstp qword [esp + 0x180]
mov dword [esp + 0x50], esi
fld qword [esp + 0x60]
mov dword [esp + 0x1a0], edi
fst qword [esp + 0x188]
mov dword [esp + 0x1a4], ebx
fld qword [esp + 0x90]
faddp st(3)
faddp st(2)
fxch st(1)
fst qword [esp + 0x88]
fstp qword [esp + 0x190]
fstp qword [esp + 0x198]
fld qword [esp + 0xc0]
fstp qword [esp]
call dword [sym.imp.MSVCR100.dll_floor]
call fcn.6d0b0a20
fld qword [esp + 0x88]
fadd qword [0x6d0b6868]
mov dword [esp + 0x1a8], eax
fst qword [esp + 0xd0]
fstp qword [esp]
call dword [sym.imp.MSVCR100.dll_floor]
call fcn.6d0b0a20
fld qword [esp + 0xa0]
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x1ac], eax
mov eax, dword [esp + 0x58]
lea edx, [esi + esi*2 - 6]
lea esi, [esi + esi*2]
add edx, edx
fstp qword [esp + edx*8 + 0x180]
add esi, esi
fld qword [esp + 0x60]
lea esi, [esp + esi*8 + 0x180]
fst qword [esi - 0x58]
fld qword [esp + 0xb0]
fadd qword [ebp + 0x40]
fst qword [esp + 0xa8]
faddp st(1)
fst qword [esp + 0x78]
fstp qword [esi - 0x50]
fld qword [esp + 0x38]
fstp qword [esi - 0x48]
mov dword [esi - 0x40], eax
fld qword [esp + 0xc0]
mov dword [esi - 0x3c], ecx
fstp qword [esp]
call dword [sym.imp.MSVCR100.dll_floor]
call fcn.6d0b0a20
fld qword [esp + 0x78]
fadd qword [0x6d0b6868]
mov dword [esi - 0x38], eax
fst qword [esp + 0xb8]
fstp qword [esp]
call dword [sym.imp.MSVCR100.dll_floor]
call fcn.6d0b0a20
fld qword [esp + 0xe0]
fadd qword [esp + 0xa0]
mov edx, dword [esp + 0x58]
mov dword [esi - 0x34], eax
mov eax, dword [esp + 0x5c]
fstp qword [esp + 0x1b0]
mov dword [esp + 0x1d0], edx
fld qword [esp + 0x88]
mov dword [esp + 0x1d4], eax
fst qword [esp + 0x1b8]
fadd qword [esp + 0xa8]
fst qword [esp + 0xc0]
fstp qword [esp + 0x1c0]
fld qword [esp + 0x38]
fstp qword [esp + 0x1c8]
fld qword [esp + 0xd0]
fstp qword [esp]
call dword [sym.imp.MSVCR100.dll_floor]
call fcn.6d0b0a20
fld qword [esp + 0xc0]
fadd qword [0x6d0b6868]
mov dword [esp + 0x1d8], eax
fst qword [esp + 0xe0]
fstp qword [esp]
call dword [sym.imp.MSVCR100.dll_floor]
call fcn.6d0b0a20
fld qword [esp + 0xd8]
fadd qword [esp + 0xa0]
mov dword [esp + 0x1dc], eax
fstp qword [esi - 0x30]
fld qword [esp + 0x78]
fstp qword [esi - 0x28]
fld qword [esp + 0xc0]
fstp qword [esi - 0x20]
fld qword [esp + 0x70]
fstp qword [esi - 0x18]
mov dword [esi - 0x10], edi
fld qword [esp + 0xb8]
mov dword [esi - 0xc], ebx
fstp qword [esp]
call dword [sym.imp.MSVCR100.dll_floor]
call fcn.6d0b0a20
fld qword [esp + 0xe0]
fstp qword [esp]
mov dword [esi - 8], eax
call dword [sym.imp.MSVCR100.dll_floor]
add esp, 8
call fcn.6d0b0a20
mov dword [esi - 4], eax
mov eax, dword [esp + 0x1a0]
mov dword [esp + 0x30], eax
cmp eax, dword [esp + 0x24]
jge 0x6d0049b4
mov eax, dword [esp + 0x24]
mov dword [esp + 0x30], eax
cmp eax, dword [esp + 0x28]
jge 0x6d004afc
fld qword [0x6d0b6a70]
mov ecx, dword [esp + 0x48]
mov ebx, dword [esp + 0x28]
xor esi, esi
mov dword [esp + 0x24], esi
test ecx, ecx
jle 0x6d004a13
lea eax, [esp + 0x1a0]
mov edi, ecx
mov ecx, dword [eax + 4]
cmp dword [esp + 0x30], ecx
jge 0x6d004a09
mov edx, dword [eax]
cmp dword [esp + 0x30], edx
jge 0x6d0049f8
cmp ebx, edx
jle 0x6d004a09
mov ebx, edx
jmp 0x6d004a09
lea edx, [eax - 0x28]
mov dword [esp + esi*4 + 0xd8], edx
inc esi
cmp ebx, ecx
jle 0x6d004a09
mov ebx, ecx
add eax, 0x30
dec edi
jne 0x6d0049df
mov dword [esp + 0x24], esi
xor edi, edi
cmp dword [esp + 0x24], edi
jle 0x6d004aec
fild dword [esp + 0x30]
fadd qword [0x6d0b6868]
fst qword [esp + 0xd0]
jmp 0x6d004a47
fld qword [esp + 0xd0]
mov eax, dword [esp + edi*4 + 0xdc]
fld st(0)
fsub qword [eax + 8]
mov edx, dword [esp + 0x2c]
mov esi, dword [esp + edi*4 + 0xd8]
lea ecx, [esp + 0x16c]
fmul qword [eax + 0x18]
push ecx
mov ecx, dword [esp + 0x3c]
push edx
fadd qword [eax]
mov edx, dword [eax + 0x24]
push ecx
mov ecx, dword [eax + 0x20]
push edx
fmul st(2)
push ecx
call fcn.6d05f1d0
fsub qword [esi + 8]
mov ecx, SysReAllocString
sub ecx, eax
fmul qword [esi + 0x18]
mov eax, 0
sbb eax, edx
mov edx, dword [esi + 0x20]
fadd qword [esi]
push eax
push ecx
mov ecx, dword [esi + 0x24]
push ecx
fmulp st(1)
push edx
call fcn.6d05f1d0
mov ecx, SysReAllocString
sub ecx, eax
mov eax, 0
sbb eax, edx
mov edx, dword [esp + 0x54]
push eax
mov eax, dword [esp + 0x68]
push ecx
mov ecx, dword [esp + 0x68]
push ebx
push ecx
push edx
push eax
lea ecx, [esp + 0x124]
push ecx
call dword [esp + 0x84]
fld qword [0x6d0b6a70]
add edi, 2
add esp, 0x40
cmp edi, dword [esp + 0x24]
jl 0x6d004a40
mov dword [esp + 0x30], ebx
cmp ebx, dword [esp + 0x28]
jl 0x6d0049c4
fstp st(0)
mov ecx, dword [esp + 0x7c]
mov eax, dword [ecx + 8]
test eax, eax
je 0x6d004b1a
lea edx, [esp + 0xe8]
push edx
push ecx
mov ecx, dword [esp + 0x6c]
push ecx
call eax
add esp, 0xc
mov esi, dword [esp + 0x64]
mov ebx, dword [esp + 0x7c]
mov eax, dword [ebx + 0xc]
test eax, eax
je 0x6d004b38
lea edx, [esp + 0xe8]
push edx
push ebx
push esi
call eax
add esp, 0xc
mov ecx, dword [esp + 0x2fc]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.6d0b0acb
mov esp, ebp
pop ebp
ret 0x50