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

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x46fd8f
mov eax, dword fs:[0]
push eax
sub esp, 0xc8
mov eax, dword [0x47c144]
xor eax, esp
mov dword [esp + 0xc0], eax
push ebx
push esi
push edi
mov eax, dword [0x47c144]
xor eax, esp
push eax
lea eax, [esp + 0xd8]
mov dword fs:[0], eax
mov esi, ecx
mov ecx, dword [0x481200]
push 0x40d530
call fcn.0042d50a
xor edi, edi
lea eax, [esi + 0x9c]
cmp dword [eax + 0x18], 8
mov dword [esp + 0x20], edi
mov dword [esp + 0x1c], edi
mov dword [esp + 0x60], edi
mov dword [esp + 0x5c], edi
mov dword [esp + 0x64], edi
mov dword [esp + 0x68], edi
jb 0x41dd6c
mov eax, dword [eax + 4]
jmp 0x41dd6f
add eax, 4
push eax
push 0x125c
lea eax, [esp + 0xa0]
push eax
call fcn.0044be86
mov dword [esp + 0xe0], edi
lea ebx, [esi + 0x64]
push eax
mov ecx, ebx
call fcn.00411d93
or dword [esp + 0xe0], 0xffffffff
push edi
push 1
lea ecx, [esp + 0xa0]
call fcn.00411dad
push ebx
lea ecx, [esp + 0xb8]
call fcn.004132f9
mov dword [esp + 0xe0], 1
cmp dword [esp + 0xcc], 8
mov eax, dword [esp + 0xb8]
jae 0x41dddb
lea eax, [esp + 0xb8]
push 0x2b
mov dword [esp + 0x1c], eax
pop eax
call fcn.0041bb33
mov ebx, eax
dec ebx
neg ebx
sbb ebx, ebx
and ebx, 0xffc00000
add ebx, 0x400000
call dword [sym.imp.USER32.dll_GetDesktopWindow]
mov dword [esp + 0x24], eax
cmp dword [0x47dd78], edi
jne 0x41de12
mov dword [0x47dd78], edi
push dword [esp + 0x28]
lea eax, [esi + 0x20]
push eax
push 0x47dd48
call fcn.0041f8b6
movzx eax, ax
cmp dword [esp + 0x18], edi
jne 0x41de31
mov dword [esp + 0x18], edi
push eax
xor eax, eax
push eax
push ebx
push 0xca0000
push dword [esp + 0x28]
lea eax, [esp + 0x70]
push eax
push dword [esp + 0x3c]
mov ebx, esi
call fcn.0041f772
test eax, eax
jne 0x41dea0
mov esi, dword [0x481200]
push 0x40d578
call fcn.0042d74e
or dword [esp + 0xe0], 0xffffffff
push edi
push 1
lea ecx, [esp + 0xbc]
call fcn.00411dad
xor al, al
mov ecx, dword [esp + 0xd8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0xc0]
xor ecx, esp
call fcn.0043e052
mov esp, ebp
pop ebp
ret
or dword [esp + 0xe0], 0xffffffff
push edi
push 1
lea ecx, [esp + 0xbc]
call fcn.00411dad
push 0xdd
push dword [0x47ed8c]
call dword [sym.imp.USER32.dll_LoadIconW]
push eax
push 1
lea ebx, [esi + 4]
push 0x80
push dword [ebx]
mov dword [esp + 0x28], ebx
call dword [sym.imp.USER32.dll_SendMessageW]
push ebx
call fcn.0041fa94
push esi
call fcn.0041d747
test al, al
jne 0x41df04
mov esi, dword [0x481200]
push 0x40d5b4
call fcn.0042d74e
jmp 0x41de7a
push dword [esi + 0xd0]
mov ecx, dword [esi + 0xd4]
push dword [esi + 0xcc]
mov edx, dword [ecx]
push dword [esi + 0xc8]
lea eax, [esi + 0x28]
push eax
lea eax, [esi + 0x24]
push eax
call dword [edx + 4]
mov eax, dword [esi + 0x34]
mov dword [esp + 0x2c], edi
mov dword [esp + 0x30], edi
mov dword [esp + 0x34], edi
mov dword [esp + 0x38], edi
mov ecx, dword [eax]
mov dword [esi + 0x3c], ecx
cmp eax, ecx
je 0x41dfe3
mov eax, dword [esi + 0x3c]
mov eax, dword [eax + 8]
cmp eax, edi
je 0x41df58
add eax, 4
jmp 0x41df5a
xor eax, eax
lea ecx, [esp + 0x2c]
push ecx
push dword [eax]
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [esp + 0x34]
sub eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x38]
sub ecx, dword [esp + 0x30]
mov dword [esp + 0x14], eax
mov dword [esp + 0x24], ecx
cmp eax, dword [esp + 0x20]
jbe 0x41df89
mov dword [esp + 0x20], eax
cmp ecx, dword [esp + 0x1c]
jbe 0x41df93
mov dword [esp + 0x1c], ecx
push 0x80
push ecx
push eax
mov eax, dword [esi + 0x3c]
mov eax, dword [eax + 8]
push edi
push edi
push edi
push dword [eax + 4]
call dword [sym.imp.USER32.dll_SetWindowPos]
movzx ecx, word [esp + 0x24]
movzx edx, word [esp + 0x14]
mov eax, dword [esi + 0x3c]
mov eax, dword [eax + 8]
mov eax, dword [eax + 4]
shl ecx, 0x10
or ecx, edx
push ecx
push edi
push 5
push eax
call dword [sym.imp.USER32.dll_PostMessageW]
mov eax, dword [esi + 0x3c]
mov eax, dword [eax]
mov dword [esi + 0x3c], eax
mov eax, dword [esi + 0x34]
cmp eax, dword [esi + 0x3c]
jne 0x41df49
lea eax, [esp + 0x6c]
push eax
push dword [ebx]
call dword [sym.imp.USER32.dll_GetClientRect]
lea eax, [esp + 0x4c]
push eax
push dword [ebx]
call dword [sym.imp.USER32.dll_GetWindowRect]
mov ebx, dword [esp + 0x6c]
mov edi, dword [esp + 0x70]
sub ebx, dword [esp + 0x74]
sub edi, dword [esp + 0x78]
sub ebx, dword [esp + 0x4c]
sub edi, dword [esp + 0x50]
add ebx, dword [esp + 0x54]
add edi, dword [esp + 0x58]
push 0
lea eax, [esp + 0x40]
push eax
push 0
push 0x30
call dword [sym.imp.USER32.dll_SystemParametersInfoW]
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x44]
sub eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x48]
sub ecx, dword [esp + 0x40]
add edx, ebx
mov ebx, dword [esp + 0x1c]
add edi, ebx
cmp eax, edx
jb 0x41e06f
cmp ecx, edi
jb 0x41e06f
push 2
push edi
mov edi, dword [esp + 0x20]
push edx
xor ebx, ebx
push ebx
push ebx
push ebx
push dword [edi]
call dword [sym.imp.USER32.dll_SetWindowPos]
push edi
call fcn.0041fa94
jmp 0x41e09c
xor eax, eax
cmp dword [esp + 0x40], eax
jne 0x41e085
cmp dword [esp + 0x3c], eax
jne 0x41e085
push 2
push edi
push edx
push eax
push eax
jmp 0x41e08d
push 4
push edi
push edx
push 0xffffffffffffffff
push 0xffffffffffffffff
push eax
mov eax, dword [esp + 0x30]
push dword [eax]
call dword [sym.imp.USER32.dll_SetWindowPos]
xor ebx, ebx
mov eax, dword [esi + 0x34]
mov eax, dword [eax]
mov dword [esi + 0x3c], eax
mov eax, dword [eax + 8]
cmp eax, ebx
je 0x41e0b0
add eax, 4
jmp 0x41e0b2
xor eax, eax
mov edi, dword [sym.imp.USER32.dll_ShowWindow]
push 5
mov dword [esi + 0x40], eax
push dword [eax]
call edi
mov eax, dword [esp + 0x18]
push 5
push dword [eax]
call edi
mov dword [esi + 0x5c], 1
push 0x4ff
push 0xffffffffffffffff
push ebx
lea edi, [esi + 0x4c]
push edi
push 4
call dword [sym.imp.USER32.dll_MsgWaitForMultipleObjects]
sub eax, ebx
je 0x41e1c7
dec eax
je 0x41e198
dec eax
je 0x41e182
dec eax
je 0x41e16a
dec eax
jne 0x41e0d2
jmp 0x41e14e
cmp dword [esp + 0x80], 0x12
je 0x41e1ea
mov eax, dword [esi + 0x40]
mov edi, dword [eax]
lea eax, [esp + 0x7c]
push eax
push edi
call dword [sym.imp.USER32.dll_IsDialogMessageW]
push edi
mov dword [esp + 0x18], eax
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x41e138
cmp dword [esp + 0x14], ebx
jne 0x41e14e
lea eax, [esp + 0x7c]
push eax
call dword [sym.imp.USER32.dll_TranslateMessage]
lea eax, [esp + 0x7c]
push eax
call dword [sym.imp.USER32.dll_DispatchMessageW]
push 1
push ebx
push ebx
push ebx
lea eax, [esp + 0x8c]
push eax
call dword [sym.imp.USER32.dll_PeekMessageW]
test eax, eax
jne 0x41e104
jmp 0x41e0d2
push dword [esi + 0x58]
call dword [sym.imp.KERNEL32.dll_ResetEvent]
test eax, eax
je 0x41e20d
push 0xbd5
jmp 0x41e1dc
push dword [esi + 0x54]
call dword [sym.imp.KERNEL32.dll_ResetEvent]
test eax, eax
je 0x41e262
xor eax, eax
inc eax
jmp 0x41e1b3
push dword [esi + 0x50]
mov edi, dword [sym.imp.KERNEL32.dll_ResetEvent]
call edi
test eax, eax
je 0x41e2b3
push dword [esi + 0x54]
call edi
or eax, 0xffffffff
lea ecx, [esp + 0x14]
mov edx, esi
mov dword [esp + 0x14], ebx
call fcn.0041e4bd
jmp 0x41e0d2
push dword [edi]
call dword [sym.imp.KERNEL32.dll_ResetEvent]
test eax, eax
je 0x41e307
push 0xbd3
mov edi, esi
call fcn.0041d6e2
xor ebx, ebx
jmp 0x41e0d2
mov eax, dword [esp + 0x18]
push dword [eax]
call dword [sym.imp.USER32.dll_DestroyWindow]
mov ecx, dword [0x481200]
push 0x40d610
call fcn.0042d50a
mov al, 1
jmp 0x41de7c
push 0x828
call fcn.0043e592
pop ecx
mov dword [esp + 0x14], eax
mov dword [esp + 0xe0], 5
cmp eax, ebx
je 0x41e245
push 0x40d5dc
mov eax, 0x1fff
push eax
push eax
push dword [esp + 0x20]
call fcn.00411c0e
add esp, 0x10
jmp 0x41e247
xor eax, eax
or dword [esp + 0xe0], 0xffffffff
mov dword [esp + 0x24], eax
push 0x473bd4
lea eax, [esp + 0x28]
push eax
call fcn.00443a5e
push 0x828
call fcn.0043e592
pop ecx
mov dword [esp + 0x14], eax
mov dword [esp + 0xe0], 4
cmp eax, ebx
je 0x41e29a
push 0x40d5dc
mov eax, 0x1fff
push eax
push eax
push dword [esp + 0x20]
call fcn.00411c0e
add esp, 0x10
jmp 0x41e29c
xor eax, eax
or dword [esp + 0xe0], 0xffffffff
mov dword [esp + 0x1c], eax
push 0x473bd4
lea eax, [esp + 0x20]
jmp 0x41e25c
push 0x828
call fcn.0043e592
pop ecx
mov dword [esp + 0x14], eax
mov dword [esp + 0xe0], 3
cmp eax, ebx
je 0x41e2eb
push 0x40d5dc
mov eax, 0x1fff
push eax
push eax
push dword [esp + 0x20]
call fcn.00411c0e
add esp, 0x10
jmp 0x41e2ed
xor eax, eax
or dword [esp + 0xe0], 0xffffffff
mov dword [esp + 0x20], eax
push 0x473bd4
lea eax, [esp + 0x24]
jmp 0x41e25c
push 0x828
call fcn.0043e592
pop ecx
mov dword [esp + 0x14], eax
mov dword [esp + 0xe0], 2
cmp eax, ebx
je 0x41e33f
push 0x40d5dc
mov eax, 0x1fff
push eax
push eax
push dword [esp + 0x20]
call fcn.00411c0e
add esp, 0x10
jmp 0x41e341
xor eax, eax
or dword [esp + 0xe0], 0xffffffff
mov dword [esp + 0x28], eax
push 0x473bd4
lea eax, [esp + 0x2c]
jmp 0x41e25c