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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x7c
push ebx
push esi
mov esi, dword [ebp + 0xc]
mov ebx, dword [ebp + 8]
push edi
mov ecx, ebx
fld dword [esi]
fmul dword [esi + 0xc]
fld dword [esi + 4]
fmul dword [esi + 8]
fsubp st(1)
fdivr dword [0x100f73d8]
fld st(0)
fmul dword [esi + 0xc]
fstp dword [esp + 0x78]
fld st(0)
fmul dword [esi + 8]
fchs
fstp dword [esp + 0x80]
fld st(0)
fmul dword [esi + 4]
fchs
fstp dword [esp + 0x7c]
fmul dword [esi]
fstp dword [esp + 0x84]
fild dword [ebp + 0x10]
fstp dword [esp + 0x18]
fild dword [ebp + 0x14]
fstp dword [esp + 0x14]
fld dword [esp + 0x18]
fchs
fst dword [esp + 0x34]
fstp dword [esp + 0x68]
fld dword [esp + 0x14]
fchs
fst dword [esp + 0x38]
fstp dword [esp + 0x6c]
call fcn.10049100
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x38]
fild dword [esp + 0x3c]
mov ecx, ebx
mov dword [esp + 0x54], eax
fsub dword [esp + 0x18]
fstp dword [esp + 0x50]
call fcn.10049100
mov dword [esp + 0x3c], eax
mov ecx, ebx
fild dword [esp + 0x3c]
fsub dword [esp + 0x18]
fstp dword [esp + 0x48]
call fcn.10049110
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x3c], eax
fild dword [esp + 0x3c]
mov dword [esp + 0x40], ecx
mov ecx, ebx
fsub dword [esp + 0x14]
fstp dword [esp + 0x4c]
call fcn.10049110
mov dword [esp + 0x3c], eax
fild dword [esp + 0x3c]
fsub dword [esp + 0x14]
fld dword [esp + 0x6c]
fmul dword [esi + 4]
fld dword [esp + 0x68]
fmul dword [esi]
faddp st(1)
fstp dword [esp + 0x60]
fld dword [esp + 0x68]
fmul dword [esi + 8]
fld dword [esp + 0x6c]
fmul dword [esi + 0xc]
faddp st(1)
fstp dword [esp + 0x64]
fld dword [esp + 0x54]
fmul dword [esi + 4]
fld dword [esp + 0x50]
fmul dword [esi]
faddp st(1)
fstp dword [esp + 0x58]
fld dword [esp + 0x50]
fmul dword [esi + 8]
fld dword [esp + 0x54]
fmul dword [esi + 0xc]
faddp st(1)
fstp dword [esp + 0x5c]
fld dword [esp + 0x4c]
fmul dword [esi + 4]
fld dword [esp + 0x48]
fmul dword [esi]
faddp st(1)
fstp dword [esp + 0x50]
fld dword [esp + 0x48]
fmul dword [esi + 8]
fld dword [esp + 0x4c]
fmul dword [esi + 0xc]
faddp st(1)
fstp dword [esp + 0x54]
fld st(0)
fmul dword [esi + 4]
fld dword [esp + 0x40]
fmul dword [esi]
faddp st(1)
fstp dword [esp + 0x48]
fld dword [esp + 0x40]
fmul dword [esi + 8]
fxch st(1)
fmul dword [esi + 0xc]
faddp st(1)
fstp dword [esp + 0x4c]
fld dword [esp + 0x60]
fld dword [esp + 0x58]
fcomp dword [esp + 0x60]
fnstsw ax
test ah, 1
je 0x10026893
fstp st(0)
fld dword [esp + 0x58]
fld dword [esp + 0x50]
fcomp st(1)
fnstsw ax
test ah, 1
je 0x100268a6
fstp st(0)
fld dword [esp + 0x50]
fld dword [esp + 0x48]
fcomp st(1)
fnstsw ax
test ah, 1
je 0x100268b9
fstp st(0)
fld dword [esp + 0x48]
sub esp, 8
fstp qword [esp]
call fcn.100de0ed
fstp dword [esp + 0x24]
fld dword [esp + 0x6c]
fld dword [esp + 0x64]
fcomp dword [esp + 0x6c]
add esp, 8
fnstsw ax
test ah, 1
je 0x100268e4
fstp st(0)
fld dword [esp + 0x5c]
fld dword [esp + 0x54]
fcomp st(1)
fnstsw ax
test ah, 1
je 0x100268f7
fstp st(0)
fld dword [esp + 0x54]
fld dword [esp + 0x4c]
fcomp st(1)
fnstsw ax
test ah, 1
je 0x1002690a
fstp st(0)
fld dword [esp + 0x4c]
sub esp, 8
fstp qword [esp]
call fcn.100de0ed
fstp dword [esp + 0x28]
fld dword [esp + 0x68]
fld dword [esp + 0x60]
fcomp dword [esp + 0x68]
add esp, 8
fnstsw ax
test ah, 0x41
jne 0x10026935
fstp st(0)
fld dword [esp + 0x58]
fld dword [esp + 0x50]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x10026948
fstp st(0)
fld dword [esp + 0x50]
fld dword [esp + 0x48]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x1002695b
fstp st(0)
fld dword [esp + 0x48]
sub esp, 8
fstp qword [esp]
call fcn.100de3eb
fstp dword [esp + 0x44]
fld dword [esp + 0x6c]
fld dword [esp + 0x64]
fcomp dword [esp + 0x6c]
add esp, 8
fnstsw ax
test ah, 0x41
jne 0x10026986
fstp st(0)
fld dword [esp + 0x5c]
fld dword [esp + 0x54]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x10026999
fstp st(0)
fld dword [esp + 0x54]
fld dword [esp + 0x4c]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x100269ac
fstp st(0)
fld dword [esp + 0x4c]
fld dword [esp + 0x3c]
fsub dword [esp + 0x1c]
call fcn.100dde0c
sub esp, 8
mov esi, eax
mov dword [esp + 0x40], esi
fstp qword [esp]
call fcn.100de3eb
fsub dword [esp + 0x28]
add esp, 8
call fcn.100dde0c
mov ecx, dword [0x101167b8]
mov edi, eax
push 0
push edi
push esi
mov dword [esp + 0x64], edi
call fcn.1004ac70
fld dword [esp + 0x20]
mov esi, eax
fchs
mov dword [esp + 0x3c], esi
call fcn.100dde0c
fld dword [esp + 0x1c]
fchs
push eax
call fcn.100dde0c
push eax
mov ecx, esi
call fcn.10048070
mov ecx, ebx
call fcn.100491c0
push eax
mov ecx, esi
call fcn.10047ed0
mov ecx, ebx
call fcn.10049790
mov ecx, esi
call fcn.10049790
fld dword [esp + 0x20]
fadd dword [0x100f73d0]
test edi, edi
mov dword [esp + 0x28], 0
fstp dword [esp + 0x6c]
jle 0x10026da6
fld dword [esp + 0x1c]
fadd dword [0x100f73d0]
fstp dword [esp + 0x40]
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0x40]
xor edi, edi
mov dword [esp + 0x68], edx
test eax, eax
mov dword [esp + 0x34], edi
jle 0x10026d83
fld dword [esp + 0x6c]
fmul dword [esp + 0x7c]
fstp dword [esp + 0x48]
fld dword [esp + 0x6c]
fmul dword [esp + 0x84]
fstp dword [esp + 0x50]
fld dword [esp + 0x68]
fmul dword [esp + 0x78]
mov al, byte [0x101167d8]
test al, al
fadd dword [esp + 0x48]
fstp dword [esp + 0x70]
fld dword [esp + 0x68]
fmul dword [esp + 0x80]
fadd dword [esp + 0x50]
fadd dword [esp + 0x14]
je 0x10026d17
fstp dword [esp + 0x20]
fld dword [esp + 0x70]
fadd dword [esp + 0x18]
mov al, byte [0x10115cc0]
test al, al
fstp dword [esp + 0x1c]
je 0x10026aeb
mov ecx, dword [0x101167b8]
push ebx
call fcn.1004ade0
test eax, eax
je 0x10026dbf
fld dword [esp + 0x1c]
fsub dword [0x100f73d0]
sub esp, 8
fstp dword [esp + 0x24]
fld dword [esp + 0x28]
fsub dword [0x100f73d0]
fstp dword [esp + 0x28]
fld dword [esp + 0x24]
fstp qword [esp]
call fcn.100de0ed
fstp dword [esp + 0x18]
fld dword [esp + 0x28]
fstp qword [esp]
call fcn.100de0ed
fld dword [esp + 0x18]
add esp, 8
call fcn.100dde0c
fld st(0)
mov esi, eax
call fcn.100dde0c
fld dword [esp + 0x1c]
fsub dword [esp + 0x10]
push eax
push esi
mov ecx, ebx
mov dword [esp + 0x2c], eax
fstp dword [esp + 0x18]
fld dword [esp + 0x28]
fsub st(1)
fstp dword [esp + 0x28]
fstp st(0)
call fcn.10049960
mov ecx, dword [esp + 0x24]
mov edi, eax
lea eax, [esi + 1]
push ecx
push eax
mov ecx, ebx
call fcn.10049960
mov edx, dword [esp + 0x24]
mov ecx, dword [ebp + 8]
mov ebx, eax
lea eax, [edx + 1]
mov dword [esp + 0x30], eax
push eax
lea eax, [esi + 1]
push eax
call fcn.10049960
mov ecx, dword [ebp + 8]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x30]
push eax
push esi
call fcn.10049960
fld dword [0x100f73d8]
fsub dword [esp + 0x20]
fld dword [0x100f73d8]
fsub dword [esp + 0x10]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x30], eax
sar ecx, 0x10
and ecx, 0xff
mov edx, ebx
fst dword [esp + 0x2c]
fmul st(1)
sar eax, 0x10
and eax, 0xff
sar edx, 0x10
fstp dword [esp + 0x24]
fmul dword [esp + 0x10]
fld dword [esp + 0x2c]
fmul dword [esp + 0x20]
fld dword [esp + 0x20]
fmul dword [esp + 0x10]
mov dword [esp + 0x2c], ecx
fild dword [esp + 0x2c]
mov dword [esp + 0x2c], eax
fmul st(1)
fild dword [esp + 0x2c]
fmul st(3)
faddp st(1)
and edx, 0xff
mov eax, edi
mov dword [esp + 0x2c], edx
fild dword [esp + 0x2c]
sar eax, 0x10
and eax, 0xff
fmul st(4)
mov dword [esp + 0x2c], eax
faddp st(1)
fild dword [esp + 0x2c]
fmul dword [esp + 0x24]
faddp st(1)
fadd dword [0x100f73d0]
call fcn.100dde0c
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x30]
sar ecx, 8
and ecx, 0xff
mov esi, eax
mov dword [esp + 0x2c], ecx
mov eax, ebx
fild dword [esp + 0x2c]
sar edx, 8
and edx, 0xff
mov ecx, edi
fmul st(1)
mov dword [esp + 0x2c], edx
fild dword [esp + 0x2c]
sar eax, 8
and eax, 0xff
fmul st(3)
mov dword [esp + 0x2c], eax
sar ecx, 8
faddp st(1)
fild dword [esp + 0x2c]
and ecx, 0xff
mov dword [esp + 0x2c], ecx
fmul st(4)
shl esi, 8
faddp st(1)
fild dword [esp + 0x2c]
fmul dword [esp + 0x24]
faddp st(1)
fadd dword [0x100f73d0]
call fcn.100dde0c
or esi, eax
mov eax, dword [esp + 0x1c]
and eax, 0xff
and ebx, 0xff
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x30]
fild dword [esp + 0x2c]
and eax, 0xff
and edi, 0xff
mov dword [esp + 0x30], eax
fmul st(1)
fild dword [esp + 0x30]
mov dword [esp + 0x30], ebx
shl esi, 8
fmul st(3)
faddp st(1)
fild dword [esp + 0x30]
mov dword [esp + 0x30], edi
fmul st(4)
faddp st(1)
fild dword [esp + 0x30]
fmul dword [esp + 0x24]
faddp st(1)
fadd dword [0x100f73d0]
call fcn.100dde0c
mov edi, dword [esp + 0x34]
mov ebx, dword [ebp + 8]
fstp st(0)
fstp st(0)
fstp st(0)
or esi, eax
jmp 0x10026d50
sub esp, 8
fstp qword [esp]
call fcn.100de0ed
add esp, 8
call fcn.100dde0c
fld dword [esp + 0x70]
fadd dword [esp + 0x18]
push eax
sub esp, 8
fstp qword [esp]
call fcn.100de0ed
add esp, 8
call fcn.100dde0c
push eax
mov ecx, ebx
call fcn.10049960
mov esi, eax
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x3c]
push esi
push edx
push edi
call fcn.10049840
fld dword [esp + 0x68]
fadd dword [0x100f73d8]
mov eax, dword [esp + 0x38]
inc edi
cmp edi, eax
mov dword [esp + 0x34], edi
fstp dword [esp + 0x68]
jl 0x10026a8e
mov esi, dword [esp + 0x3c]
fld dword [esp + 0x6c]
fadd dword [0x100f73d8]
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x58]
inc eax
cmp eax, ecx
mov dword [esp + 0x28], eax
fstp dword [esp + 0x6c]
jl 0x10026a59
mov ecx, esi
call fcn.10049800
mov ecx, ebx
call fcn.10049800
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
mov eax, str.Buffer_does_not_exist
test eax, eax
je 0x10026dd4
mov ecx, dword [0x10115cc4]
push eax
call fcn.1003e900
lea ecx, [esp + 0x60]
push 0x100fd940
push ecx
mov dword [esp + 0x68], str.Buffer_does_not_exist
call fcn.100ddb78
nop
nop
nop
nop
nop
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x100f1248
push eax
mov al, byte [0x10115cc0]
mov dword fs:[0], esp
sub esp, 0x10
push ebx
xor ebx, ebx
push edi
mov edi, dword [esp + 0x28]
cmp al, bl
je 0x10026e55
mov ecx, dword [0x101167b8]
push edi
call fcn.1004ade0
test eax, eax
jne 0x10026e55
mov eax, str.Buffer_does_not_exist
test eax, eax
je 0x10026e3e
mov ecx, dword [0x10115cc4]
push eax
call fcn.1003e900
lea ecx, [esp + 0x28]
push 0x100fd940
push ecx
mov dword [esp + 0x30], str.Buffer_does_not_exist
call fcn.100ddb78
mov eax, dword [0x100f7360]
push esi
mov esi, dword [esp + 0x30]
push eax
push ebx
push esi
mov dl, byte [esi]
lea ecx, [esp + 0x18]
mov byte [esp + 0x18], dl
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
call fcn.10001ec4
cmp esi, ebx
mov dword [esp + 0x24], ebx
je 0x10026e92
mov ecx, esi
call fcn.10004eb0
push esi
call fcn.10004ae0
lea ecx, [esp + 0xc]
push ecx
push edi
call fcn.10026ee0
neg al
mov ecx, dword [esp + 0x10]
sbb eax, eax
neg eax
cmp ecx, ebx
mov esi, eax
je 0x10026ec9
mov al, byte [ecx - 1]
cmp al, bl
je 0x10026ebf
cmp al, 0xff
je 0x10026ebf
dec al
mov byte [ecx - 1], al
jmp 0x10026ec9
dec ecx
push ecx
call fcn.100d0293
add esp, 4
mov ecx, dword [esp + 0x1c]
mov eax, esi
pop esi
pop edi
pop ebx
mov dword fs:[0], ecx
add esp, 0x1c
ret 8