Function at 0x111898f0
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x111e9fdb
mov eax, dword fs:[0]
push eax
sub esp, 0x25c
mov eax, dword [0x11279148]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 0x14]
mov edi, dword [ebp + 0x18]
mov ebx, ecx
mov esi, dword [ebx + 8]
mov ecx, dword [esi + 8]
mov edx, dword [esi + 0x68]
mov dword [ebp - 0x1bc], eax
mov eax, dword [esi + 0x6c]
mov dword [ebp - 0x1d0], ebx
mov dword [ebp - 0x1b4], ecx
mov dword [ebp - 0x1cc], edx
mov dword [ebp - 0x1b8], eax
test edi, edi
je 0x1118995a
mov dword [edi], 0
mov ecx, dword [ebp + 0xc]
cmp ecx, 0x200
ja 0x11189a70
je 0x111899b7
lea eax, [ecx - 0x100]
cmp eax, 5
ja case.0x11189a88.515
movzx edx, byte [eax + 0x1118a494]
jmp dword [edx*4 + 0x1118a48c]
test edi, edi
je 0x11189999
cmp dword [esi + 0x6e0], 0
je case.0x1118a283.37
mov eax, dword [ebp - 0x1bc]
mov ecx, dword [ebp + 0x10]
mov edx, dword [ebp + 0xc]
push eax
push ecx
push edx
mov edx, esi
call fcn.11188c60
add esp, 0xc
jmp 0x1118a46d
cmp byte [esi + 0x2b4], 0
jne 0x111899f8
cmp dword [esi + 0xf4], 0
je case.0x1118a283.37
mov eax, dword [esi + 0x6c]
cmp dword [ebp + 8], eax
jne 0x111899f8
push 0
push 2
push eax
call fcn.11143160
add esp, 0xc
mov ecx, ebx
mov byte [esi + 0x2b4], 1
call fcn.11174780
call fcn.1117b860
mov ecx, dword [ebp + 0xc]
cmp dword [esi + 0xf4], 0
je case.0x1118a283.37
test edi, edi
je 0x11189a14
mov eax, dword [ebp - 0x1b8]
cmp dword [ebp + 8], eax
je 0x11189a20
cmp ecx, 0x20a
jne case.0x1118a283.37
cmp ecx, 0x200
jne 0x11189b75
cmp dword [esi + 0x4b8], 0
je 0x11189a51
mov eax, dword [ebp - 0x1bc]
mov ecx, eax
shr ecx, 0x10
movsx edx, cx
mov ecx, dword [esi + 0x4a0]
cwde
push edx
push eax
call fcn.111706f0
mov eax, dword [esi + 0x320]
test eax, eax
je 0x11189ca4
dec eax
mov dword [esi + 0x320], eax
mov eax, 1
jmp 0x1118a46d
lea eax, [ecx - 0x201]
cmp eax, 0xa2
ja case.0x11189a88.515
movzx eax, byte [eax + 0x1118a4ac]
jmp dword [eax*4 + 0x1118a49c]
test byte [esi + 0xc4], 2
je 0x11189ac3
mov ecx, edx
push ecx
call dword [sym.imp.USER32.dll_IsIconic]
test eax, eax
jne 0x11189ac3
mov edx, dword [ebp - 0x1bc]
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0xc]
push edx
push eax
push ecx
mov edx, esi
call fcn.11188c60
add esp, 0xc
jmp 0x1118a46d
push str.ignoring_WM_TOUCH_n
call fcn.111bd7b0
add esp, 4
lea ecx, [ebp - 0x268]
call fcn.1102fb70
mov edx, dword [ebp - 0x1bc]
push edx
lea ecx, [ebp - 0x268]
mov dword [ebp - 4], 0
call fcn.11082710
mov eax, dword [ebp - 0x268]
mov dword [ebp - 4], 0xffffffff
test eax, eax
je 0x11189b0c
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov ecx, dword [ebp + 0xc]
mov eax, dword [ebp + 8]
cmp eax, dword [ebp - 0x1cc]
je 0x11189b26
cmp eax, dword [ebp - 0x1b8]
jne case.0x1118a283.37
cmp ecx, 0x1c
ja 0x1118a264
je case.0x11189b41.6
lea eax, [ecx - 3]
cmp eax, 4
ja case.0x1118a283.37
jmp dword [eax*4 + 0x1118a550]
cmp byte [esi + 0x2b4], 0
je case.0x11189a88.515
cmp byte [esi + 0x298], 0
mov byte [esi + 0x2b4], 0
jne case.0x11189a88.515
push 1
push esi
mov byte [esi + 0x298], 1
call fcn.11187600
add esp, 8
jmp 0x11189b0c
cmp ecx, 0x201
jne 0x11189bbb
test byte [esi + 0xc4], 2
jne 0x1118a160
mov eax, dword [ebp - 0x1bc]
mov edx, dword [ebp - 0x1b8]
movzx ecx, ax
shr eax, 0x10
push edx
mov dword [esi + 0x7d8], ecx
mov dword [esi + 0x7dc], eax
call dword [sym.imp.USER32.dll_SetCapture]
mov byte [esi + 0x7d5], 1
jmp 0x1118a153
cmp ecx, 0x202
je 0x11189bcb
cmp ecx, 0x215
jne 0x11189bea
test byte [esi + 0xc4], 2
jne 0x11189bea
cmp byte [esi + 0x7d5], 0
je 0x11189bea
mov byte [esi + 0x7d5], 0
call dword [sym.imp.USER32.dll_ReleaseCapture]
cmp dword [ebp + 0xc], 0x20a
jne 0x1118a153
test byte [esi + 0xc4], 2
jne 0x1118a160
push 0
mov ecx, esi
call fcn.11174ed0
add esp, 4
lea ecx, [ebp - 0x1b0]
mov dword [ebp - 0x1c4], edx
mov edx, dword [esi + 0x6c]
push ecx
push edx
mov dword [ebp - 0x1c8], eax
call dword [sym.imp.USER32.dll_GetClientRect]
fld qword [esi + 0x150]
fldz
fucompp
fnstsw ax
test ah, 0x44
jp 0x11189d1a
cmp dword [esi + 0x14c], 0
je 0x11189d12
mov eax, dword [esi + 0xb8]
sub eax, dword [ebp - 0x1b0]
mov ecx, dword [esi + 0xbc]
add eax, dword [ebp - 0x1a8]
sub ecx, dword [ebp - 0x1ac]
mov dword [ebp - 0x1b8], eax
fild dword [ebp - 0x1b8]
add ecx, dword [ebp - 0x1a4]
mov dword [ebp - 0x1b8], ecx
fidiv dword [ebp - 0x1c8]
fild dword [ebp - 0x1b8]
fidiv dword [ebp - 0x1c4]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x11189d0e
fstp st(0)
jmp 0x11189d14
test byte [esi + 0xc4], 2
jne 0x1118a160
cmp byte [esi + 0x7d5], 0
je 0x1118a153
cmp dword [esi + 0x14c], 0
jne 0x1118a153
mov eax, dword [ebp - 0x1bc]
movsx ebx, ax
sub ebx, dword [esi + 0x7d8]
shr eax, 0x10
cwde
sub eax, dword [esi + 0x7dc]
mov ecx, ebx
push eax
mov edi, esi
mov dword [ebp - 0x1b8], eax
call fcn.1117c9e0
mov eax, dword [ebp - 0x1b8]
add dword [esi + 0x7d8], ebx
add esp, 4
add dword [esi + 0x7dc], eax
jmp 0x1118a153
fstp st(1)
jmp 0x11189d14
fld1
fstp qword [esi + 0x150]
mov edx, dword [esi + 0x6c]
mov edi, dword [sym.imp.USER32.dll_GetScrollPos]
push 0
push edx
call edi
mov dword [ebp - 0x1b8], eax
mov eax, dword [esi + 0x6c]
push 1
push eax
call edi
mov edi, eax
mov eax, dword [ebp - 0x1bc]
movsx ecx, ax
shr eax, 0x10
movsx edx, ax
lea eax, [ebp - 0x1d8]
mov dword [ebp - 0x1d8], ecx
mov ecx, dword [esi + 0x6c]
push eax
push ecx
mov dword [ebp - 0x1d4], edx
call dword [sym.imp.USER32.dll_ScreenToClient]
mov edx, dword [ebp + 0x10]
fld qword [esi + 0x150]
shr edx, 0x10
fst qword [ebp - 0x1e0]
cmp dx, 1
jle 0x11189e46
fstp st(0)
fld qword [0x11237f28]
fcomp qword [esi + 0x150]
fnstsw ax
test ah, 0x41
jne 0x1118a0d0
mov ecx, dword [esi + 8]
push 1
push 0
push str.ScaleToFit
push str.View
mov dword [esi + 0x14c], 0
call fcn.110bbd40
fld qword [esi + 0x150]
fmul qword [0x11217280]
push 0
mov ebx, esi
fstp qword [esi + 0x150]
call fcn.11181720
mov ecx, dword [ebp - 0x1d0]
add esp, 4
push 0
push 0
call fcn.111788b0
mov ebx, dword [ebp - 0x1d4]
lea eax, [ebx + edi]
mov dword [ebp - 0x1b4], eax
fild dword [ebp - 0x1b4]
fld qword [0x11217280]
fmul st(1), st(0)
fxch st(1)
call fcn.111d9130
sub ebx, eax
add ebx, edi
mov edi, dword [ebp - 0x1b8]
push ebx
mov ebx, dword [ebp - 0x1d8]
lea ecx, [ebx + edi]
mov dword [ebp - 0x1b8], ecx
fild dword [ebp - 0x1b8]
fmulp st(1)
call fcn.111d9130
mov ecx, ebx
sub ecx, eax
add ecx, edi
mov edi, esi
call fcn.1117c9e0
add esp, 4
jmp 0x1118a0d0
mov edx, dword [ebp - 0x1a8]
fild dword [ebp - 0x1c8]
sub edx, dword [ebp - 0x1b0]
mov ecx, dword [ebp - 0x1a4]
fst qword [ebp - 0x1e8]
mov dword [ebp - 0x1b4], edx
fild dword [ebp - 0x1b4]
fld qword [esi + 0x150]
fmulp st(2)
fcompp
fnstsw ax
test ah, 1
jne 0x11189eae
mov eax, ecx
sub eax, dword [ebp - 0x1ac]
mov dword [ebp - 0x1b4], eax
fild dword [ebp - 0x1b4]
fild dword [ebp - 0x1c4]
fmul qword [esi + 0x150]
fcompp
fnstsw ax
test ah, 0x41
jnp 0x1118a0ce
fld qword [esi + 0x150]
sub ecx, dword [ebp - 0x1ac]
fdiv qword [0x11217280]
mov byte [ebp - 0x1bd], 1
push ecx
push edx
sub esp, 0x10
lea ecx, [ebp - 0x1a0]
fst qword [esi + 0x150]
fxch st(1)
fstp qword [esp + 8]
fstp qword [esp]
push str.set_dscale_.4f_from__.4f__cw_d__ch_d
push ecx
call dword [sym.imp.MSVCR100.dll__swprintf]
mov edx, dword [ebp - 0x1a8]
mov ecx, edx
sub ecx, dword [ebp - 0x1b0]
add esp, 0x20
mov dword [ebp - 0x1b4], ecx
fild dword [ebp - 0x1b4]
fld qword [esi + 0x150]
fld qword [ebp - 0x1e8]
fmul st(1), st(0)
fxch st(2)
fcompp
fnstsw ax
test ah, 1
jne 0x1118a003
mov eax, dword [ebp - 0x1a4]
fild dword [ebp - 0x1c4]
sub eax, dword [ebp - 0x1ac]
mov dword [ebp - 0x1b4], eax
fild dword [ebp - 0x1b4]
fld qword [esi + 0x150]
fmul st(2)
fcompp
fnstsw ax
test ah, 0x41
jp 0x1118a001
mov eax, dword [esi + 0xb8]
sub eax, dword [ebp - 0x1b0]
add eax, edx
mov edx, dword [esi + 0xbc]
sub edx, dword [ebp - 0x1ac]
mov dword [ebp - 0x1c4], eax
fild dword [ebp - 0x1c4]
add edx, dword [ebp - 0x1a4]
fdivrp st(2)
mov dword [ebp - 0x1c4], edx
fild dword [ebp - 0x1c4]
fdivrp st(1)
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x11189fa3
fstp st(0)
jmp 0x11189fa5
fstp st(1)
mov eax, dword [ebp - 0x1b4]
fst qword [esi + 0x150]
fld qword [ebp - 0x1e0]
push eax
push ecx
sub esp, 0x10
fstp qword [esp + 8]
lea ecx, [ebp - 0x1a0]
fstp qword [esp]
push str.another_set_dscale_.4f_from__.4f__cw_d__ch_d
push ecx
call dword [sym.imp.MSVCR100.dll__swprintf]
mov ecx, dword [esi + 8]
add esp, 0x20
push 1
push 1
push str.ScaleToFit
push str.View
mov dword [esi + 0x14c], 1
call fcn.110bbd40
mov byte [ebp - 0x1bd], 0
jmp 0x1118a025
fstp st(1)
mov ecx, dword [esi + 8]
fstp st(0)
push 1
push 0
push str.ScaleToFit
push str.View
mov dword [esi + 0x14c], 0
call fcn.110bbd40
push 0
mov ebx, esi
call fcn.11181720
mov ecx, dword [ebp - 0x1d0]
add esp, 4
push 0
push 0
call fcn.111788b0
mov edx, dword [ebp - 0x1b8]
mov ebx, dword [ebp - 0x1d8]
lea eax, [ebx + edx]
mov dword [ebp - 0x1c4], eax
fild dword [ebp - 0x1c4]
fld qword [0x11237e70]
fdiv st(1), st(0)
fxch st(1)
call fcn.111d9130
neg ebx
sub ebx, eax
mov ecx, 0
sets cl
dec ecx
and ecx, ebx
mov ebx, dword [ebp - 0x1d4]
lea edx, [ebx + edi]
mov dword [ebp - 0x1c4], edx
fild dword [ebp - 0x1c4]
mov dword [ebp - 0x1b4], ecx
fdivrp st(1)
call fcn.111d9130
neg ebx
sub ebx, eax
mov eax, 0
sets al
dec eax
and eax, ebx
cmp byte [ebp - 0x1bd], 0
je 0x1118a0d0
mov ecx, dword [ebp - 0x1b8]
sub ecx, dword [ebp - 0x1b4]
sub edi, eax
push edi
mov edi, esi
call fcn.1117c9e0
add esp, 4
jmp 0x1118a0d0
fstp st(0)
fld1
fld qword [ebp - 0x1e0]
fcom st(1)
fnstsw ax
test ah, 5
jp 0x1118a0f6
fxch st(1)
fcom qword [esi + 0x150]
fnstsw ax
test ah, 5
jnp 0x1118a1a0
fxch st(1)
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x1118a110
fcom qword [esi + 0x150]
fnstsw ax
test ah, 0x41
je 0x1118a1a2
fstp st(0)
cmp byte [esi + 0x298], 0
mov edi, dword [sym.imp.USER32.dll_ShowWindow]
je 0x1118a130
mov eax, dword [esi + 0x2a4]
test eax, eax
je 0x1118a130
push 0
push eax
call edi
push 1
push esi
call fcn.11187600
add esp, 8
cmp byte [esi + 0x298], 0
je 0x1118a153
mov eax, dword [esi + 0x2a4]
test eax, eax
je 0x1118a153
push 5
push eax
call edi
test byte [esi + 0xc4], 2
je case.0x1118a283.37
mov eax, dword [ebp - 0x1cc]
push eax
call dword [sym.imp.USER32.dll_IsIconic]
test eax, eax
jne case.0x1118a283.37
mov ecx, dword [ebp - 0x1bc]
mov edx, dword [ebp + 0x10]
mov eax, dword [ebp + 0xc]
push ecx
push edx
push eax
mov edx, esi
call fcn.11188c60
add esp, 0xc
test eax, eax
je case.0x1118a283.37
mov eax, 1
jmp 0x1118a46d
fstp st(1)
push 0
fstp qword [esi + 0x150]
mov ebx, esi
call fcn.11181720
mov ecx, dword [ebp - 0x1d0]
add esp, 4
push 0
push 0
call fcn.111788b0
jmp 0x1118a112
push 0
mov ebx, esi
call fcn.11181720
add esp, 4
cmp dword [esi + 0x14c], 0
je case.0x1118a283.37
test byte [esi + 0xc4], 1
je case.0x1118a283.37
mov ecx, dword [ebp - 0x1d0]
push 0
push 0
call fcn.111788b0
jmp case.0x1118a283.37
cmp dword [esi + 0x19c], 0
jne case.0x1118a283.37
call fcn.1117cb20
mov ecx, dword [esi + 0x6c]
push edx
push eax
push ecx
mov ecx, dword [esi + 0x490]
call fcn.111d64d0
jmp case.0x1118a283.37
push esi
call fcn.1118acd0
add esp, 4
jmp case.0x1118a283.37
xor edx, edx
cmp dword [esi + 0x3c], edx
setne dl
xor eax, eax
cmp ecx, 0x1c
sete al
cmp eax, edx
jne case.0x1118a283.37
movzx ecx, word [ebp + 0x10]
push ecx
mov ecx, esi
call fcn.111827d0
add esp, 4
jmp case.0x1118a283.37
cmp ecx, 0x111
ja 0x1118a2d1
je 0x1118a2c2
lea eax, [ecx - 0x24]
cmp eax, 0xe3
ja case.0x1118a283.37
movzx edx, byte [eax + 0x1118a570]
jmp dword [edx*4 + 0x1118a564]
test byte [esi + 0xc4], 2
je case.0x1118a283.37
mov eax, dword [ebp - 0x1bc]
mov ecx, dword [ebp + 0x10]
mov edx, dword [ebp + 0xc]
push eax
push ecx
push edx
jmp 0x1118a184
mov edx, dword [ebp - 0x1bc]
mov ecx, esi
call fcn.1117c670
mov eax, 1
jmp 0x1118a46d
mov dword [esi + 0xf8], 0
jmp case.0x1118a283.37
cmp ecx, 0x11f
ja 0x1118a3a9
je 0x1118a371
mov eax, ecx
sub eax, 0x112
je 0x1118a320
sub eax, 4
je 0x1118a311
dec eax
jne case.0x1118a283.37
mov dword [esi + 0x2c8], 0xffffffff
mov dword [esi + 0xf8], 1
jmp case.0x1118a283.37
mov dword [esi + 0x104], 0
jmp case.0x1118a283.37
mov eax, dword [ebp + 0x10]
cmp eax, 0xfb8
jne 0x1118a348
mov ecx, dword [ebp - 0x1b4]
push 0
push 0
push str.ScaleToFit
push str.View
call fcn.110bbda0
jmp case.0x1118a283.37
cmp eax, 0x105c
jne case.0x1118a283.37
mov ecx, dword [ebp - 0x1b4]
push 0
push 0
push str.KeepAspect
push str.View
call fcn.110bbda0
jmp case.0x1118a283.37
mov eax, dword [ebp + 0x10]
shr eax, 0x10
cmp eax, 0xffff
jne 0x1118a38b
cmp dword [ebp - 0x1bc], 0
jne 0x1118a38b
xor eax, eax
jmp 0x1118a390
mov eax, 1
mov dword [esi + 0xf8], eax
test eax, eax
jne case.0x1118a283.37
mov dword [esi + 0x108], eax
jmp case.0x1118a283.37
cmp ecx, 0x121
je 0x1118a3cd
cmp ecx, 0x481
jne case.0x1118a283.37
push 0
push 0
mov ecx, ebx
call fcn.1118ae40
jmp case.0x1118a283.37
cmp dword [ebp + 0x10], 2
jne case.0x1118a283.37
cmp dword [esi + 0x140], 0
je case.0x1118a283.37
cmp dword [ebp - 0x1bc], 0
jne 0x1118a45f
cmp dword [esi + 0x104], 0
je 0x1118a422
mov ebx, dword [ebp - 0x1cc]
mov edi, dword [sym.imp.USER32.dll_PostMessageW]
push 0x10010001
push 0x1b
push 0x100
push ebx
call edi
push 0xd0010001
push 0x1b
push 0x101
push ebx
call edi
jmp 0x1118a45f
cmp dword [esi + 0x108], 0
jne 0x1118a45f
mov ebx, dword [ebp - 0x1cc]
mov edi, dword [sym.imp.USER32.dll_PostMessageW]
push 0x10500001
push 0x28
push 0x100
push ebx
call edi
push 0xd0500001
push 0x28
push 0x101
push ebx
call edi
mov dword [esi + 0x108], 1
mov ecx, dword [ebp - 0x1bc]
mov dword [esi + 0x104], ecx
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.111d9022
mov esp, ebp
pop ebp
ret 0x14