Function at 0x1003f2e0
Capabilities:
Hide graphical window

Disassembly:
push 0x28c
mov eax, 0x10089048
call fcn.10085435
mov edi, ecx
sub esp, 0x10
mov dword [ebp - 0x27c], edi
lea ecx, [edi + 0xc]
call fcn.1002eb3b
push 0xfffffffffffffff2
xor ebx, ebx
lea ecx, [edi + 0x16a0]
pop edx
mov dword [ebp - 4], ebx
call fcn.1003f212
push 0xfffffffffffffffe
lea ecx, [edi + 0x16a4]
pop edx
call fcn.1003f212
lea ecx, [edi + 0x16a8]
xor edx, edx
call fcn.1003f212
mov ecx, edi
call fcn.1003e9be
test eax, eax
jns 0x1003f342
push eax
call dword [sym.imp.PhotoBase.dll_void___stdcall_Base::Throw_long_int_]
push dword [edi + 0x34]
lea ecx, [ebp - 0x20]
call fcn.10063ddc
push 0x60
push dword [ebp - 0x1c]
push 0x10
call dword [sym.imp.KERNEL32.dll_MulDiv]
push 0x60
push dword [ebp - 0x20]
mov esi, eax
push 0x10
call dword [sym.imp.KERNEL32.dll_MulDiv]
push ecx
push ecx
push 0x21
mov edx, esi
mov ecx, eax
call fcn.1002f286
test eax, eax
jne 0x1003f381
call fcn.100154b3
jmp 0x1003f33b
push eax
push ebx
push 0x402
push 0x417
push dword [edi + 0x34]
call dword [sym.imp.USER32.dll_SendDlgItemMessageW]
cmp dword [edi + 0x16b8], ebx
je 0x1003f3e0
push 0x60
push dword [ebp - 0x1c]
push 0x10
call dword [sym.imp.KERNEL32.dll_MulDiv]
push 0x60
push dword [ebp - 0x20]
mov esi, eax
push 0x10
call dword [sym.imp.KERNEL32.dll_MulDiv]
push ecx
push ecx
push 0x21
mov edx, esi
mov ecx, eax
call fcn.1002f286
test eax, eax
je 0x1003f37a
push eax
push ebx
push 0x402
push 0x419
push dword [edi + 0x34]
call dword [sym.imp.USER32.dll_SendDlgItemMessageW]
mov dword [ebp - 0x28c], ebx
mov dword [ebp - 0x288], ebx
mov dword [ebp - 0x284], ebx
mov dword [ebp - 0x280], ebx
lea ecx, [ebp - 0x28c]
mov byte [ebp - 4], 1
call fcn.1005e1d4
mov esi, 0x441
push esi
push dword [edi + 0x34]
call dword [sym.imp.USER32.dll_GetDlgItem]
mov ecx, dword [ebp - 0x288]
neg ecx
sbb ecx, ecx
and ecx, 5
push ecx
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
push esi
push dword [edi + 0x34]
call dword [sym.imp.USER32.dll_GetDlgItem]
xor ecx, ecx
cmp dword [ebp - 0x288], ecx
setne cl
push ecx
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
push ebx
mov ecx, edi
call fcn.1003f7f2
mov al, bl
mov byte [ebp - 0x275], al
cmp ebx, 5
jae 0x1003f555
lea eax, [ebp - 0x1c]
push eax
imul eax, ebx, 0x28
lea ecx, [edi + 0x78]
push dword [eax + 0x10004540]
call fcn.10041861
test eax, eax
js 0x1003f33b
mov esi, dword [ebp - 0x1c]
push 0xa
push 0x100046b0
push dword [esi + 0x460]
push dword [esi + 0x2c]
call fcn.10040146
test eax, eax
jne 0x1003f49d
and dword [esi + 0x2c], eax
mov eax, dword [esi + 0x460]
push 8
push 0x10004610
push eax
push dword [esi + 0x30]
call fcn.10040146
test eax, eax
jne 0x1003f4ba
and dword [esi + 0x30], eax
lea eax, [esi + 0x34]
push eax
lea ecx, [ebp - 0x274]
call fcn.1003d225
lea eax, [ebp - 0x274]
mov byte [ebp - 4], 2
push eax
lea ecx, [edi + 0x58]
call fcn.1003dbdb
mov byte [ebp - 4], 1
test eax, eax
js 0x1003f33b
cmp dword [edi + 0x16b8], 0
je 0x1003f522
lea eax, [esi + 0x248]
push eax
lea ecx, [ebp - 0x274]
call fcn.1003d225
lea eax, [ebp - 0x274]
mov byte [ebp - 4], 3
push eax
lea ecx, [edi + 0x68]
call fcn.1003dbdb
mov byte [ebp - 4], 1
test eax, eax
js 0x1003f33b
mov eax, dword [esi + 0x18]
cmp dword [eax - 0xc], 0
jne 0x1003f535
cmp byte [esi + 0x28], 0
je 0x1003f535
mov byte [esi + 0x28], 0
mov al, byte [ebp - 0x275]
test al, al
jne 0x1003f54f
mov eax, dword [esi + 0x18]
cmp dword [eax - 0xc], 0
setne al
mov byte [ebp - 0x275], al
inc ebx
jmp 0x1003f458
test al, al
jne 0x1003f751
mov esi, 0x448
push esi
push dword [edi + 0x34]
call dword [sym.imp.USER32.dll_GetDlgItem]
push 0
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
push esi
push dword [edi + 0x34]
call dword [sym.imp.USER32.dll_GetDlgItem]
push 0
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
push esi
push dword [edi + 0x34]
call dword [sym.imp.USER32.dll_GetDlgItem]
lea edx, [ebp - 0x58]
mov ecx, eax
call fcn.1003ecff
test eax, eax
je 0x1003f37a
push 0x417
push dword [edi + 0x34]
call dword [sym.imp.USER32.dll_GetDlgItem]
lea edx, [ebp - 0x48]
mov ecx, eax
call fcn.1003ecff
test eax, eax
je 0x1003f37a
mov ebx, dword [ebp - 0x44]
mov eax, dword [edi + 0x16b8]
sub ebx, dword [ebp - 0x54]
neg eax
sbb eax, eax
and eax, 3
add eax, 0x16
push eax
call dword [sym.imp.USER32.dll_BeginDeferWindowPos]
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x1003f751
xor esi, esi
push dword [esi + 0x1000c490]
push dword [edi + 0x34]
call dword [sym.imp.USER32.dll_GetDlgItem]
mov dword [ebp - 0x27c], eax
test eax, eax
je 0x1003f643
push dword [esi + 0x1000c490]
push dword [edi + 0x34]
call dword [sym.imp.USER32.dll_GetDlgItem]
lea edx, [ebp - 0x38]
mov ecx, eax
call fcn.1003ecff
test eax, eax
je 0x1003f643
mov eax, dword [ebp - 0x34]
xor ecx, ecx
push 0x15
push ecx
push ecx
sub eax, ebx
push eax
push dword [ebp - 0x38]
push ecx
push dword [ebp - 0x27c]
push dword [ebp - 0x1c]
call dword [sym.imp.USER32.dll_DeferWindowPos]
add esi, 4
cmp esi, 0x50
jb 0x1003f5ee
cmp dword [edi + 0x16b8], 0
je 0x1003f6b3
xor esi, esi
push dword [esi + 0x1000c484]
push dword [edi + 0x34]
call dword [sym.imp.USER32.dll_GetDlgItem]
mov dword [ebp - 0x27c], eax
test eax, eax
je 0x1003f6ab
push dword [esi + 0x1000c484]
push dword [edi + 0x34]
call dword [sym.imp.USER32.dll_GetDlgItem]
lea edx, [ebp - 0x38]
mov ecx, eax
call fcn.1003ecff
test eax, eax
je 0x1003f6ab
mov eax, dword [ebp - 0x34]
xor ecx, ecx
push 0x15
push ecx
push ecx
sub eax, ebx
push eax
push dword [ebp - 0x38]
push ecx
push dword [ebp - 0x27c]
push dword [ebp - 0x1c]
call dword [sym.imp.USER32.dll_DeferWindowPos]
add esi, 4
cmp esi, 0xc
jb 0x1003f656
push 0x44e
push dword [edi + 0x34]
call dword [sym.imp.USER32.dll_GetDlgItem]
mov esi, eax
test esi, esi
je 0x1003f704
push 0x44e
push dword [edi + 0x34]
call dword [sym.imp.USER32.dll_GetDlgItem]
lea edx, [ebp - 0x38]
mov ecx, eax
call fcn.1003ecff
test eax, eax
je 0x1003f704
mov eax, dword [ebp - 0x2c]
sub eax, dword [ebp - 0x34]
push 0x16
sub eax, ebx
push eax
mov eax, dword [ebp - 0x30]
sub eax, dword [ebp - 0x38]
push eax
xor eax, eax
push eax
push eax
push eax
push esi
push dword [ebp - 0x1c]
call dword [sym.imp.USER32.dll_DeferWindowPos]
push dword [ebp - 0x1c]
call dword [sym.imp.USER32.dll_EndDeferWindowPos]
push 0xfffffffffffffff0
push dword [edi + 0x34]
call dword [sym.imp.USER32.dll_GetWindowLongW]
test eax, 0x40000000
jne 0x1003f751
lea eax, [ebp - 0x28]
push eax
push dword [edi + 0x34]
call dword [sym.imp.USER32.dll_GetWindowRect]
test eax, eax
je 0x1003f751
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x24]
push 0
sub eax, ebx
push eax
mov eax, dword [ebp - 0x20]
sub eax, dword [ebp - 0x28]
push eax
push dword [ebp - 0x24]
push dword [ebp - 0x28]
push dword [edi + 0x34]
call dword [sym.imp.USER32.dll_MoveWindow]
mov ecx, edi
call fcn.1003ed33
cmp dword [ebp - 0x28c], 0
je 0x1003f76e
push dword [ebp - 0x28c]
call dword [sym.imp.msvcrt.dll_free]
pop ecx
xor eax, eax
inc eax
call fcn.10085387
ret 0x10