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

Disassembly:
push ebp
lea ebp, [esp - 0x78]
sub esp, 0xa4
mov ecx, dword [0x4a4d3c]
cmp ecx, 0xfffffffe
push ebx
push esi
push edi
je 0x419465
mov eax, dword [0x4a4d34]
test eax, eax
jne 0x41944f
cmp byte [0x49bcc1], al
jne 0x41944f
cmp dword [0x4a4d40], 0xe
jge 0x419465
cmp ecx, 0xffffffff
je 0x419f12
test ecx, ecx
je 0x41969c
cmp ecx, 1
je 0x41946c
xor eax, eax
jmp 0x419f20
test eax, eax
jne 0x419f1d
push 0x4a2754
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov edi, dword [0x4a274c]
mov eax, dword [0x4a2750]
and dword [ebp + 0x60], 0
add edi, 5
mov esi, edi
imul esi, esi, 0x1c
mov dword [ebp + 0x6c], eax
mov eax, esi
add eax, 3
and eax, 0xfffffffc
mov dword [ebp + 0x74], edi
call fcn.00483980
mov ebx, esp
push esi
push 0
push ebx
call sub.NSCRT.dll_memset
xor eax, eax
inc eax
mov dword [ebx + 4], eax
mov dword [ebx], eax
lea eax, [ebx + 8]
push eax
call fcn.0040a07f
lea eax, [ebx + 0x24]
push eax
call fcn.0040a0d6
mov eax, dword [0x49bcd4]
mov dword [ebx + 0x1c], eax
lea eax, [ebx + 0x40]
push eax
call fcn.0040a14a
mov eax, dword [0x49bce4]
mov dword [ebx + 0x38], eax
lea eax, [ebx + 0x78]
push eax
call fcn.0040a182
mov eax, dword [0x4a0cf0]
add esp, 0x1c
push 5
mov dword [ebx + 0x70], eax
pop eax
cmp edi, eax
mov dword [ebp + 0x70], eax
jle 0x419564
lea eax, [ebx + 0x94]
mov dword [ebp + 0x68], eax
cmp dword [ebp + 0x6c], 0
je 0x419564
mov esi, dword [ebp + 0x6c]
push dword [esi]
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x419532
push dword [esi]
call fcn.00418e28
test eax, eax
pop ecx
jne 0x419532
inc eax
jmp 0x419534
xor eax, eax
mov ecx, dword [ebp + 0x68]
mov dword [ecx - 8], eax
mov eax, dword [ebp + 0x6c]
mov dword [ecx + 0x10], eax
lea esi, [eax + 8]
mov edi, ecx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
and dword [eax + 0x20], 0
mov eax, dword [eax + 0x1c]
inc dword [ebp + 0x70]
mov dword [ebp + 0x6c], eax
mov eax, dword [ebp + 0x70]
add ecx, 0x1c
cmp eax, dword [ebp + 0x74]
mov dword [ebp + 0x68], ecx
jl 0x41950e
mov ecx, dword [0x4a4d38]
and dword [ebp + 0x70], 0
xor eax, eax
inc eax
shr ecx, 2
and ecx, eax
mov dword [0x4a4d34], eax
xor eax, eax
cmp byte [0x49bcaf], al
setne al
xor ecx, eax
je 0x419678
mov eax, dword [ebp + 0x70]
imul eax, eax, 0x1c
add eax, ebx
cmp dword [eax], 0
mov dword [ebp + 0x68], eax
je 0x419607
cmp dword [eax + 4], 0
je 0x419607
and dword [ebp + 0x64], 0
cmp dword [ebp + 0x74], 0
jle 0x419607
lea eax, [ebx + 4]
mov dword [ebp + 0x6c], eax
mov eax, dword [ebp + 0x70]
cmp dword [ebp + 0x64], eax
je 0x4195f8
mov eax, dword [ebp + 0x6c]
cmp dword [eax], 0
jne 0x4195f8
mov esi, eax
add esi, 4
sub esp, 0x10
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp + 0x68]
add esi, 8
sub esp, 0x10
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.0040a226
add esp, 0x20
test eax, eax
je 0x4195f8
mov ecx, dword [ebp + 0x6c]
xor eax, eax
inc eax
mov dword [ecx], eax
mov dword [ebp + 0x60], eax
inc dword [ebp + 0x64]
mov eax, dword [ebp + 0x64]
add dword [ebp + 0x6c], 0x1c
cmp eax, dword [ebp + 0x74]
jl 0x4195b4
mov eax, dword [ebp + 0x70]
xor edx, edx
cmp eax, edx
jne 0x419618
cmp dword [ebp + 0x60], edx
je 0x419625
mov dword [ebp + 0x60], edx
inc eax
cdq
idiv dword [ebp + 0x74]
mov dword [ebp + 0x70], edx
jmp 0x41958e
cmp dword [ebx + 0x20], edx
je 0x419631
or dword [0x4a4d34], 2
cmp dword [ebx + 0x3c], edx
je 0x41963d
or dword [0x4a4d34], 4
cmp dword [ebx + 0x58], edx
je 0x419649
or dword [0x4a4d34], 8
cmp dword [ebx + 0x74], edx
je 0x419655
or dword [0x4a4d34], 0x10
push 5
pop ecx
cmp dword [ebp + 0x74], ecx
jle 0x419678
add ebx, 0xa4
mov eax, dword [ebx]
cmp eax, edx
je 0x419678
mov esi, dword [ebx - 0x14]
inc ecx
add ebx, 0x1c
cmp ecx, dword [ebp + 0x74]
mov dword [eax + 0x20], esi
jl 0x419663
push 0x4a2754
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, dword [0x4a4d44]
mov dword [0x4a4d58], eax
mov eax, dword [0x4a4d40]
mov dword [0x4a4d54], eax
jmp 0x419f1d
test eax, eax
je 0x419f1d
push dword [0x4b0610]
mov esi, dword [sym.imp.USER32.dll_GetParent]
call esi
push dword [0x4b0400]
neg eax
sbb eax, eax
neg eax
mov dword [ebp + 0x64], eax
call esi
push dword [0x4b1240]
neg eax
sbb eax, eax
neg eax
mov dword [ebp + 0x68], eax
call esi
neg eax
sbb eax, eax
neg eax
push 0x4a2754
mov dword [ebp + 0x60], eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea eax, [ebp + 0x2c]
push eax
call fcn.0040a0d6
lea eax, [ebp + 0x1c]
push eax
call fcn.0040a14a
lea eax, [ebp + 0xc]
push eax
call fcn.0040a182
lea eax, [ebp + 0x50]
push eax
call fcn.0040a07f
mov eax, dword [0x4a4d40]
sub eax, dword [0x4a4d54]
lea esi, [ebp + 0x50]
lea edi, [ebp + 0x3c]
movsd dword es:[edi], dword [esi]
push eax
mov eax, dword [0x4a4d44]
sub eax, dword [0x4a4d58]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push eax
lea eax, [ebp + 0x50]
push eax
movsd dword es:[edi], dword [esi]
call fcn.0040a20e
mov eax, dword [0x4a4d38]
shr eax, 2
xor ecx, ecx
add esp, 0x1c
and eax, 1
cmp byte [0x49bcaf], cl
setne cl
xor eax, ecx
je 0x419836
mov ebx, dword [0x4a2750]
lea eax, [ebp + 0x50]
push eax
call fcn.0040acc8
cmp dword [ebp + 0x64], 0
pop ecx
jne 0x419798
cmp dword [0x49bcd4], 0
je 0x419798
test byte [0x4a4d34], 2
jne 0x419798
sub esp, 0x10
mov edi, esp
lea esi, [ebp + 0x2c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea eax, [ebp + 0x50]
push eax
movsd dword es:[edi], dword [esi]
call fcn.0040a2b1
add esp, 0x14
cmp dword [ebp + 0x68], 0
jne 0x4197c8
cmp dword [0x49bce4], 0
je 0x4197c8
test byte [0x4a4d34], 4
jne 0x4197c8
sub esp, 0x10
mov edi, esp
lea esi, [ebp + 0x1c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea eax, [ebp + 0x50]
push eax
movsd dword es:[edi], dword [esi]
call fcn.0040a2b1
add esp, 0x14
cmp dword [ebp + 0x60], 0
jne 0x419832
cmp dword [0x4a0cf0], 0
je 0x419832
test byte [0x4a4d34], 0x10
jne 0x419832
sub esp, 0x10
mov edi, esp
lea esi, [ebp + 0xc]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea eax, [ebp + 0x50]
push eax
movsd dword es:[edi], dword [esi]
call fcn.0040a2b1
add esp, 0x14
jmp 0x419832
push dword [ebx]
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x41982f
push dword [ebx]
call fcn.00418e28
test eax, eax
pop ecx
jne 0x41982f
cmp dword [ebx + 0x20], eax
jne 0x41982f
sub esp, 0x10
mov edi, esp
lea esi, [ebx + 8]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea eax, [ebp + 0x50]
push eax
movsd dword es:[edi], dword [esi]
call fcn.0040a2b1
add esp, 0x14
mov ebx, dword [ebx + 0x1c]
test ebx, ebx
jne 0x4197fa
mov esi, dword [ebp + 0x50]
mov edi, dword [ebp + 0x54]
sub esi, dword [ebp + 0x3c]
sub edi, dword [ebp + 0x40]
test byte [0x4a4d34], 2
mov ebx, dword [0x4a2750]
je 0x41985f
push edi
lea eax, [ebp + 0x2c]
push esi
push eax
call fcn.0040a20e
add esp, 0xc
test byte [0x4a4d34], 4
je 0x419876
push edi
lea eax, [ebp + 0x1c]
push esi
push eax
call fcn.0040a20e
add esp, 0xc
test byte [0x4a4d34], 8
je 0x41988d
push edi
lea eax, [ebp - 0xc]
push esi
push eax
call fcn.0040a20e
add esp, 0xc
test byte [0x4a4d34], 0x10
je 0x4198c8
push edi
lea eax, [ebp + 0xc]
push esi
push eax
call fcn.0040a20e
add esp, 0xc
jmp 0x4198c8
push dword [ebx]
call fcn.00418e28
test eax, eax
pop ecx
jne 0x4198c5
cmp dword [ebx + 0x20], eax
je 0x4198c5
push edi
lea eax, [ebx + 8]
push esi
push eax
call fcn.0040a20e
add esp, 0xc
mov ebx, dword [ebx + 0x1c]
test ebx, ebx
jne 0x4198a6
mov eax, dword [0x4a4d38]
shr eax, 2
xor ecx, ecx
and eax, 1
cmp byte [0x49bcaf], cl
setne cl
xor eax, ecx
je 0x419dbb
test byte [0x49bcb6], 1
je 0x419b71
mov edi, dword [0x4a2750]
mov dword [ebp + 0x6c], edi
xor esi, esi
mov edx, dword [0x4a4d34]
xor eax, eax
inc eax
lea ecx, [esi + 1]
shl eax, cl
mov dword [ebp + 0x4c], ecx
mov ecx, edx
and ecx, eax
not eax
and eax, edx
cmp esi, ebx
mov dword [ebp + 0x74], eax
jne 0x41993b
cmp dword [0x49bcd4], ebx
je 0x419934
cmp dword [ebp + 0x64], ebx
jne 0x419934
xor edx, edx
inc edx
jmp 0x419936
xor edx, edx
lea ebx, [ebp + 0x2c]
jmp 0x4199ae
xor edx, edx
inc edx
cmp esi, edx
jne 0x419956
cmp dword [0x49bce4], ebx
je 0x41994f
cmp dword [ebp + 0x68], ebx
je 0x419951
xor edx, edx
lea ebx, [ebp + 0x1c]
jmp 0x4199ae
cmp esi, 3
jne 0x41996f
cmp dword [0x4a0cf0], ebx
je 0x419968
cmp dword [ebp + 0x60], ebx
je 0x41996a
xor edx, edx
lea ebx, [ebp + 0xc]
jmp 0x4199ae
cmp edi, ebx
je 0x419aa6
push dword [edi]
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x419994
push dword [edi]
call fcn.00418e28
test eax, eax
pop ecx
jne 0x419994
xor edx, edx
inc edx
jmp 0x419996
xor edx, edx
mov eax, dword [ebp + 0x6c]
mov ecx, dword [eax + 0x20]
mov esi, dword [0x4a4d34]
lea ebx, [eax + 8]
mov eax, dword [eax + 0x1c]
mov dword [ebp + 0x74], esi
mov dword [ebp + 0x6c], eax
test edx, edx
je 0x419a99
test ecx, ecx
je 0x419a99
mov eax, dword [0x4a2750]
mov esi, ebx
lea edi, [ebp + 0x3c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push ebx
mov dword [ebp + 0x70], eax
movsd dword es:[edi], dword [esi]
call fcn.0040acc8
mov eax, dword [ebx + 4]
mov edi, dword [ebp + 0x40]
mov esi, dword [ebp + 0x3c]
sub eax, edi
push eax
mov eax, dword [ebx]
sub eax, esi
push eax
lea eax, [ebp + 0x50]
push eax
call fcn.0040a20e
add esp, 0x10
test byte [ebp + 0x74], 2
je 0x419a0f
mov eax, dword [ebx + 4]
sub eax, edi
push eax
mov eax, dword [ebx]
sub eax, esi
push eax
lea eax, [ebp + 0x2c]
push eax
call fcn.0040a20e
add esp, 0xc
test byte [ebp + 0x74], 4
je 0x419a2c
mov eax, dword [ebx + 4]
sub eax, edi
push eax
mov eax, dword [ebx]
sub eax, esi
push eax
lea eax, [ebp + 0x1c]
push eax
call fcn.0040a20e
add esp, 0xc
test byte [ebp + 0x74], 8
je 0x419a49
mov eax, dword [ebx + 4]
sub eax, edi
push eax
mov eax, dword [ebx]
sub eax, esi
push eax
lea eax, [ebp - 0xc]
push eax
call fcn.0040a20e
add esp, 0xc
test byte [ebp + 0x74], 0x10
je 0x419a66
mov eax, dword [ebx + 4]
sub eax, edi
push eax
mov eax, dword [ebx]
sub eax, esi
push eax
lea eax, [ebp + 0xc]
push eax
call fcn.0040a20e
add esp, 0xc
mov esi, dword [ebp + 0x70]
test esi, esi
je 0x419a99
lea eax, [esi + 8]
cmp eax, ebx
je 0x419a8f
cmp dword [esi + 0x20], 0
je 0x419a8f
mov ecx, dword [ebx + 4]
sub ecx, edi
push ecx
mov ecx, dword [ebx]
sub ecx, dword [ebp + 0x3c]
push ecx
push eax
call fcn.0040a20e
add esp, 0xc
mov esi, dword [esi + 0x1c]
test esi, esi
jne 0x419a6d
mov dword [ebp + 0x70], esi
mov esi, dword [ebp + 0x4c]
mov edi, dword [ebp + 0x6c]
xor ebx, ebx
jmp 0x419902
lea esi, [ebp + 0x50]
lea edi, [ebp + 0x3c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea eax, [ebp + 0x50]
push eax
movsd dword es:[edi], dword [esi]
call fcn.0040acc8
test byte [0x4a4d34], 2
mov edi, dword [ebp + 0x3c]
mov ebx, dword [ebp + 0x40]
pop ecx
je 0x419ae1
mov eax, dword [ebp + 0x54]
sub eax, ebx
push eax
mov eax, dword [ebp + 0x50]
sub eax, edi
push eax
lea eax, [ebp + 0x2c]
push eax
call fcn.0040a20e
add esp, 0xc
test byte [0x4a4d34], 4
je 0x419b02
mov eax, dword [ebp + 0x54]
sub eax, ebx
push eax
mov eax, dword [ebp + 0x50]
sub eax, edi
push eax
lea eax, [ebp + 0x1c]
push eax
call fcn.0040a20e
add esp, 0xc
test byte [0x4a4d34], 8
je 0x419b23
mov eax, dword [ebp + 0x54]
sub eax, ebx
push eax
mov eax, dword [ebp + 0x50]
sub eax, edi
push eax
lea eax, [ebp - 0xc]
push eax
call fcn.0040a20e
add esp, 0xc
test byte [0x4a4d34], 0x10
je 0x419b44
mov eax, dword [ebp + 0x54]
sub eax, ebx
push eax
mov eax, dword [ebp + 0x50]
sub eax, edi
push eax
lea eax, [ebp + 0xc]
push eax
call fcn.0040a20e
add esp, 0xc
mov esi, dword [0x4a2750]
jmp 0x419b6d
cmp dword [esi + 0x20], 0
je 0x419b6a
mov eax, dword [ebp + 0x54]
sub eax, ebx
push eax
mov eax, dword [ebp + 0x50]
sub eax, edi
push eax
lea eax, [esi + 8]
push eax
call fcn.0040a20e
add esp, 0xc
mov esi, dword [esi + 0x1c]
test esi, esi
jne 0x419b4c
mov edi, dword [0x4a2750]
mov dword [ebp + 0x6c], edi
xor esi, esi
mov edx, dword [0x4a4d34]
xor eax, eax
inc eax
lea ecx, [esi + 1]
shl eax, cl
mov dword [ebp + 8], ecx
mov ecx, eax
not eax
and eax, edx
and ecx, edx
test esi, esi
mov dword [ebp + 0x74], eax
jne 0x419ba6
mov eax, dword [0x49bcd4]
lea edx, [ebp + 0x2c]
jmp 0x419bfe
cmp esi, 1
jne 0x419bb5
mov eax, dword [0x49bce4]
lea edx, [ebp + 0x1c]
jmp 0x419bfe
cmp esi, 3
jne 0x419bc4
mov eax, dword [0x4a0cf0]
lea edx, [ebp + 0xc]
jmp 0x419bfe
test edi, edi
je 0x419dc1
push dword [edi]
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x419be7
push dword [edi]
call fcn.00418e28
test eax, eax
pop ecx
jne 0x419be7
inc eax
jmp 0x419be9
xor eax, eax
mov edx, dword [0x4a4d34]
mov ecx, dword [edi + 0x20]
mov dword [ebp + 0x74], edx
lea edx, [edi + 8]
mov edi, dword [edi + 0x1c]
mov dword [ebp + 0x6c], edi
test ecx, ecx
mov dword [ebp + 0x70], edx
jne 0x419db3
test eax, eax
je 0x419db3
mov esi, dword [0x4a2750]
mov dword [ebp + 0x4c], esi
xor eax, eax
xor ebx, ebx
inc ebx
lea ecx, [eax + 1]
mov edx, ebx
shl edx, cl
mov dword [ebp + 4], ecx
and edx, dword [ebp + 0x74]
test eax, eax
jne 0x419c3b
mov ecx, dword [0x49bcd4]
lea eax, [ebp + 0x2c]
jmp 0x419c9a
cmp eax, ebx
jne 0x419c4a
mov ecx, dword [0x49bce4]
lea eax, [ebp + 0x1c]
jmp 0x419c9a
cmp eax, 3
jne 0x419c5a
mov ecx, dword [0x4a0cf0]
lea eax, [ebp + 0xc]
jmp 0x419c9a
test esi, esi
je 0x419db3
push dword [esi]
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x419c7e
push dword [esi]
call fcn.00418e28
test eax, eax
pop ecx
jne 0x419c7e
mov ecx, ebx
jmp 0x419c80
xor ecx, ecx
lea eax, [esi + 8]
cmp eax, dword [ebp + 0x70]
je 0x419c92
cmp dword [esi + 0x20], 0
je 0x419c92
mov edx, ebx
jmp 0x419c94
xor edx, edx
mov esi, dword [esi + 0x1c]
mov dword [ebp + 0x4c], esi
test ecx, ecx
je 0x419da5
test edx, edx
je 0x419da5
mov esi, eax
lea edi, [ebp + 0x3c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, eax
lea edi, [ebp - 0x1c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea esi, [ebp + 0x50]
lea edi, [ebp - 0x2c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov ebx, dword [0x4a2750]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp + 0x70]
sub esp, 0x10
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea eax, [ebp + 0x3c]
push eax
movsd dword es:[edi], dword [esi]
call fcn.0040a2b1
mov eax, dword [ebp + 0x40]
sub eax, dword [ebp - 0x18]
push eax
mov eax, dword [ebp + 0x3c]
sub eax, dword [ebp - 0x1c]
push eax
lea eax, [ebp + 0x50]
push eax
call fcn.0040a20e
mov esi, dword [ebp - 0x2c]
mov edi, dword [ebp - 0x28]
add esp, 0x20
test byte [ebp + 0x74], 2
je 0x419d1f
mov eax, dword [ebp + 0x54]
sub eax, edi
push eax
mov eax, dword [ebp + 0x50]
sub eax, esi
push eax
lea eax, [ebp + 0x2c]
push eax
call fcn.0040a20e
add esp, 0xc
test byte [ebp + 0x74], 4
je 0x419d3d
mov eax, dword [ebp + 0x54]
sub eax, edi
push eax
mov eax, dword [ebp + 0x50]
sub eax, esi
push eax
lea eax, [ebp + 0x1c]
push eax
call fcn.0040a20e
add esp, 0xc
test byte [ebp + 0x74], 8
je 0x419d5b
mov eax, dword [ebp + 0x54]
sub eax, edi
push eax
mov eax, dword [ebp + 0x50]
sub eax, esi
push eax
lea eax, [ebp - 0xc]
push eax
call fcn.0040a20e
add esp, 0xc
test byte [ebp + 0x74], 0x10
je 0x419da1
mov eax, dword [ebp + 0x54]
sub eax, edi
push eax
mov eax, dword [ebp + 0x50]
sub eax, esi
push eax
lea eax, [ebp + 0xc]
push eax
call fcn.0040a20e
add esp, 0xc
jmp 0x419da1
lea eax, [ebx + 8]
cmp eax, dword [ebp + 0x70]
je 0x419d9e
cmp dword [ebx + 0x20], 0
je 0x419d9e
mov ecx, dword [ebp + 0x54]
sub ecx, edi
push ecx
mov ecx, dword [ebp + 0x50]
sub ecx, esi
push ecx
push eax
call fcn.0040a20e
add esp, 0xc
mov ebx, dword [ebx + 0x1c]
test ebx, ebx
jne 0x419d7b
mov eax, dword [ebp + 4]
mov esi, dword [ebp + 0x4c]
mov edi, dword [ebp + 0x6c]
jmp 0x419c1c
mov esi, dword [ebp + 8]
jmp 0x419b7c
mov edx, dword [0x4a4d34]
xor ecx, ecx
inc ecx
test dl, 2
je 0x419dd2
cmp dword [ebp + 0x64], 0
jne 0x419dd2
push 2
pop ecx
test dl, 4
je 0x419dde
cmp dword [ebp + 0x68], 0
jne 0x419dde
inc ecx
test dl, 0x10
je 0x419dea
cmp dword [ebp + 0x60], 0
jne 0x419dea
inc ecx
mov eax, dword [0x4a2750]
jmp 0x419dfb
cmp dword [eax + 0x20], 0
je 0x419df8
inc ecx
mov eax, dword [eax + 0x1c]
test eax, eax
jne 0x419df1
push ecx
call dword [sym.imp.USER32.dll_BeginDeferWindowPos]
test byte [0x4a4d34], 2
mov edi, dword [sym.imp.USER32.dll_DeferWindowPos]
push 0x15
mov esi, eax
pop ebx
je 0x419e47
cmp dword [ebp + 0x64], 0
jne 0x419e47
lea eax, [ebp + 0x2c]
push eax
call fcn.0040a1cf
pop ecx
push ebx
xor eax, eax
push eax
push eax
push dword [0x49bcd0]
push dword [0x49bccc]
push eax
push dword [0x4b0610]
push esi
call edi
mov esi, eax
test byte [0x4a4d34], 4
je 0x419e7d
cmp dword [ebp + 0x68], 0
jne 0x419e7d
lea eax, [ebp + 0x1c]
push eax
call fcn.0040a1e4
pop ecx
push ebx
xor eax, eax
push eax
push eax
push dword [0x49bce0]
push dword [0x49bcdc]
push eax
push dword [0x4b0400]
push esi
call edi
mov esi, eax
test byte [0x4a4d34], 0x10
je 0x419eb3
cmp dword [ebp + 0x60], 0
jne 0x419eb3
lea eax, [ebp + 0xc]
push eax
call fcn.0040a1f9
pop ecx
push ebx
xor eax, eax
push eax
push eax
push dword [0x49bd14]
push dword [0x49bd10]
push eax
push dword [0x4b1240]
push esi
call edi
mov esi, eax
lea eax, [ebp + 0x50]
push eax
call fcn.0040a1ba
pop ecx
push ebx
xor eax, eax
push eax
push eax
push dword [0x49bcbc]
push dword [0x49bcb8]
push eax
push dword [0x4ac344]
push esi
call edi
mov esi, dword [0x4a2750]
jmp 0x419efa
cmp dword [esi + 0x20], 0
je 0x419ef7
push ebx
xor ecx, ecx
push ecx
push ecx
push dword [esi + 0xc]
push dword [esi + 8]
push ecx
push dword [esi]
push eax
call edi
mov esi, dword [esi + 0x1c]
test esi, esi
jne 0x419ee0
push eax
call dword [sym.imp.USER32.dll_EndDeferWindowPos]
push 0x4a2754
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x419f1d
test eax, eax
je 0x419f1d
and dword [0x4a4d34], 0
xor eax, eax
inc eax
lea esp, [ebp - 0x38]
pop edi
pop esi
pop ebx
add ebp, 0x78
leave
ret
cmp dword [0x4a4d34], 0
mov eax, dword [esp + 4]
mov dword [0x4a4d44], eax
mov eax, dword [esp + 8]
mov dword [0x4a4d40], eax
mov eax, dword [esp + 0xc]
mov dword [0x4a4d3c], eax
mov eax, dword [esp + 0x10]
mov dword [0x4a4d38], eax
jne 0x41b193
call fcn.0041a998
test eax, eax
jne 0x41b198
call fcn.0041acf0
test eax, eax
jne 0x41b198
call fcn.0041aeb8
test eax, eax
jne 0x41b198
call fcn.0041a7ec
test eax, eax
jne 0x41b198
cmp dword [0x4a4d34], eax
jne 0x41b193
push edi
call fcn.00418eae
mov edi, eax
call fcn.00419269
add edi, eax
call fcn.0041a678
add edi, eax
call fcn.0041a4ec
add edi, eax
call fcn.0041a59a
add edi, eax
call fcn.0041a43e
add edi, eax
call fcn.0041a289
add edi, eax
call fcn.0041a1c5
add edi, eax
pop edi
jne 0x41b198
cmp dword [0x4a4d34], 0
jne 0x41b193
call fcn.00419f2b
test eax, eax
jne 0x41b198
jmp 0x41941c
ret