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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x34
mov eax, dword [0x1008400c]
xor eax, esp
mov dword [esp + 0x30], eax
push ebx
mov ebx, dword [ebp + 8]
push esi
mov esi, dword [ebp + 0x10]
push edi
mov eax, dword [ebx]
mov edi, ecx
mov dword [esp + 0x18], esi
test eax, eax
je 0x1005f394
mov dword [edi + 0x2c], eax
mov eax, dword [ebx + 0x1c]
mov dword [edi + 0x30], eax
mov eax, dword [ebx + 0x14]
mov dword [edi + 0x34], eax
mov eax, dword [ebx + 0x18]
push 1
mov dword [edi + 0x38], eax
call dword [sym.imp.GDI32.dll_GdiSetBatchLimit]
mov dword [edi + 0x60], eax
mov eax, dword [esi + 0x78]
mov ecx, dword [esi + 0x74]
sub eax, ecx
je 0x1005f394
cmp dword [edi + 0x78], 0
lea eax, [ecx + 0x64]
mov dword [esp + 0x10], eax
jne 0x1005f0bd
push 0
call dword [sym.imp.USER32.dll_GetDC]
mov esi, eax
push esi
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
push esi
push 0
mov dword [edi + 0x78], eax
call dword [sym.imp.USER32.dll_ReleaseDC]
mov esi, dword [esp + 0x18]
mov eax, dword [esp + 0x10]
push eax
mov ecx, edi
call fcn.1005fd40
cmp dword [ebx + 4], 0
xorps xmm2, xmm2
movsd xmm3, qword [0x10076f50]
jne 0x1005f22c
cmp dword [ebx + 0xc], 0
jne 0x1005f22c
cmp dword [ebx + 8], 0
jne 0x1005f22c
cmp dword [ebx + 0x10], 0
jne 0x1005f22c
mov byte [edi + 0x3c], 0
mov eax, dword [esi + 0x84]
mov dword [esp + 0x20], eax
mov eax, dword [esi + 0x88]
mov dword [esp + 0x1c], eax
mov eax, dword [esi + 0x8c]
mov dword [esp + 0x14], eax
mov eax, dword [esi + 0x90]
mov dword [esp + 0x10], eax
lea eax, [edi + 0x7c]
push ecx
push eax
lea eax, [esp + 0x2c]
mov ecx, edi
push eax
call fcn.100608f0
call fcn.1003b920
movsd xmm3, qword [0x10076ec0]
xorps xmm2, xmm2
movss xmm1, dword [eax + 8]
xor eax, eax
comiss xmm1, xmm2
jbe 0x1005f15a
movaps xmm0, xmm1
subss xmm0, xmm2
jmp 0x1005f161
xorps xmm0, xmm0
subss xmm0, xmm1
cvtps2pd xmm0, xmm0
comisd xmm3, xmm0
seta al
test eax, eax
je 0x1005f17e
movsd xmm3, qword [0x10076f50]
mov eax, 0xa
jmp 0x1005f1cd
movss xmm4, dword [0x10076f24]
xor eax, eax
comiss xmm1, xmm4
jbe 0x1005f199
movaps xmm0, xmm1
subss xmm0, xmm4
cvtps2pd xmm0, xmm0
jmp 0x1005f1a0
subss xmm4, xmm1
cvtps2pd xmm0, xmm4
comisd xmm3, xmm0
movsd xmm3, qword [0x10076f50]
seta al
test eax, eax
je 0x1005f1ba
mov eax, 0xa
jmp 0x1005f1cd
mulss xmm1, dword [0x10077010]
cvtps2pd xmm0, xmm1
addsd xmm0, xmm3
cvttsd2si eax, xmm0
movss xmm1, dword [edi + 0x30]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mov esi, dword [esp + 0x14]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x34], esi
mulss xmm0, xmm1
addss xmm0, xmm0
cvtps2pd xmm0, xmm0
addsd xmm0, xmm3
cvttsd2si eax, xmm0
add eax, dword [esp + 0x28]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvtps2pd xmm0, xmm0
addsd xmm0, xmm3
cvttsd2si eax, xmm0
mov dword [edi + 0xa0], eax
mov dword [edi + 0xa4], eax
mov eax, dword [esp + 0x10]
mov dword [esp + 0x38], eax
jmp 0x1005f270
mov ecx, dword [ebp + 0xc]
movss xmm1, dword [edi + 0x30]
mov byte [edi + 0x3c], 1
mov eax, dword [ecx + 8]
mov dword [edi + 0x48], eax
movups xmm0, xmmword [ecx + 0xc]
movups xmmword [edi + 0x4c], xmm0
mov eax, dword [esi + 0x8c]
mov ecx, dword [esi + 0x84]
mov edx, dword [esi + 0x88]
mov esi, dword [esi + 0x90]
mov dword [esp + 0x10], esi
mov dword [esp + 0x38], esi
mov esi, eax
mov dword [esp + 0x14], eax
mov dword [esp + 0x34], eax
xor eax, eax
mov dword [esp + 0x30], edx
comiss xmm1, xmm2
mov dword [esp + 0x2c], ecx
jbe 0x1005f28b
movaps xmm0, xmm1
subss xmm0, xmm2
cvtps2pd xmm0, xmm0
jmp 0x1005f292
subss xmm2, xmm1
cvtps2pd xmm0, xmm2
movsd xmm2, qword [0x10076ec0]
comisd xmm2, xmm0
seta al
test eax, eax
jne 0x1005f30f
xorps xmm0, xmm0
cvtsi2ss xmm0, ecx
mulss xmm0, xmm1
cvtps2pd xmm0, xmm0
addsd xmm0, xmm3
cvttsd2si eax, xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, edx
mov dword [esp + 0x2c], eax
mulss xmm0, xmm1
cvtps2pd xmm0, xmm0
addsd xmm0, xmm3
cvttsd2si eax, xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, esi
mov dword [esp + 0x30], eax
mulss xmm0, xmm1
cvtps2pd xmm0, xmm0
addsd xmm0, xmm3
cvttsd2si eax, xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [esp + 0x10]
mov dword [esp + 0x34], eax
mulss xmm0, xmm1
cvtps2pd xmm0, xmm0
addsd xmm0, xmm3
cvttsd2si eax, xmm0
mov dword [esp + 0x38], eax
lea eax, [esp + 0x2c]
push eax
push dword [ebx]
call dword [sym.imp.USER32.dll_ClientToScreen]
lea eax, [esp + 0x34]
push eax
push dword [ebx]
call dword [sym.imp.USER32.dll_ClientToScreen]
push dword [esp + 0x1c]
mov esi, dword [edi + 0x2c]
lea eax, [edi + 0x20]
push eax
push 0x100841c8
call fcn.10051dd0
add esp, 8
movzx eax, ax
mov ecx, edi
push eax
push 0
push 0x80
push 0x90000000
push str.ZoomAnnoTextInputContainer
lea eax, [esp + 0x44]
push eax
push esi
call fcn.10051ce0
mov ecx, edi
call fcn.100609e0
mov dword [edi + 0x28], eax
test eax, eax
je 0x1005f394
push dword [ebp + 0x18]
push ecx
push dword [esp + 0x20]
mov ecx, eax
call fcn.10061240
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x30]
xor ecx, esp
call fcn.10069210
mov esp, ebp
pop ebp
ret 0x14
mov ecx, dword [esp + 0x3c]
mov eax, 1
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.10069210
mov esp, ebp
pop ebp
ret 0x14