Function at 0x421066
Capabilities:
Hide graphical window

Disassembly:
push 0x1c
mov eax, 0x4f7277
call fcn.004cc2a7
mov esi, ecx
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 0x10]
mov ebx, dword [ebp + 0x14]
mov dword [ebp - 0x28], ecx
cmp eax, 0x31e
jne 0x4210d5
mov edi, esi
lea eax, [esi - 0x28]
neg edi
push 0
sbb edi, edi
and edi, eax
push dword [edi + 4]
call dword [sym.imp.USER32.dll_ShowWindow]
mov ecx, esi
call fcn.00420f42
mov ecx, dword [esi + 0x14]
mov eax, dword [ecx]
call dword [eax + 8]
mov ecx, esi
call fcn.00420d86
mov ecx, dword [esi + 0x1c]
test ecx, ecx
je 0x4210bf
mov eax, dword [ecx]
call dword [eax + 0xc]
push 5
push dword [edi + 4]
call dword [sym.imp.USER32.dll_ShowWindow]
and dword [ebx], 0
xor eax, eax
inc eax
jmp 0x4211a5
cmp eax, 0xc
jne 0x421126
lea eax, [esi - 0x28]
neg esi
sbb esi, esi
and esi, eax
mov ecx, esi
neg ecx
sbb ecx, ecx
lea eax, [esi + 4]
and ecx, eax
push ecx
lea ecx, [ebp - 0x1c]
call fcn.004250a4
and dword [ebp - 4], 0
push dword [ebp - 0x28]
push dword [ebp + 0xc]
push 0xc
push dword [esi + 4]
call dword [sym.imp.USER32.dll_DefWindowProcW]
mov esi, eax
or dword [ebp - 4], 0xffffffff
push dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x18]
push 0xfffffffffffffff0
push dword [ecx]
call dword [sym.imp.USER32.dll_SetWindowLongW]
mov dword [ebx], esi
jmp 0x4210cd
cmp eax, 0x80
jne 0x421180
lea eax, [esi - 0x28]
neg esi
sbb esi, esi
and esi, eax
mov ecx, esi
neg ecx
sbb ecx, ecx
lea eax, [esi + 4]
and ecx, eax
push ecx
lea ecx, [ebp - 0x1c]
call fcn.004250a4
xor edi, edi
inc edi
mov dword [ebp - 4], edi
push dword [ebp - 0x28]
push dword [ebp + 0xc]
push 0x80
push dword [esi + 4]
call dword [sym.imp.USER32.dll_DefWindowProcW]
mov esi, eax
or dword [ebp - 4], 0xffffffff
push dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x18]
push 0xfffffffffffffff0
push dword [ecx]
call dword [sym.imp.USER32.dll_SetWindowLongW]
mov dword [ebx], esi
mov eax, edi
jmp 0x4211a5
cmp eax, 5
jne 0x4211ad
mov ecx, dword [esi + 0x14]
mov eax, dword [ecx]
call dword [eax + 4]
test al, al
jne 0x421199
mov ecx, dword [esi + 0x14]
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, esi
call fcn.00420d86
and dword [ebx], 0
xor eax, eax
call fcn.004cc251
ret 0x10
mov edx, 0x86
cmp eax, edx
jne 0x4211d6
lea eax, [ebp - 0x28]
xor edi, edi
push eax
push ecx
push dword [ebp + 0xc]
inc edi
mov ecx, esi
push edx
mov dword [ebp - 0x28], edi
call fcn.00421cf2
cmp dword [ebp - 0x28], 0
mov dword [ebx], eax
je 0x4211a3
jmp 0x42117c
cmp eax, 6
jne 0x42120b
mov ecx, dword [esi + 0x1c]
xor edi, edi
movzx eax, word [ebp + 0xc]
inc edi
mov dword [esi + 4], edi
test ecx, ecx
je 0x421202
cmp eax, edi
je 0x4211fc
cmp eax, 2
je 0x4211fc
test eax, eax
jne 0x421202
push eax
jmp 0x4211fd
push edi
mov eax, dword [ecx]
call dword [eax + 8]
and dword [ebx], 0
cmp dword [esi + 4], 0
jmp 0x4211d2
cmp eax, 0x84
jne 0x421228
lea eax, [ebp - 0x28]
xor edi, edi
push eax
push ecx
push ecx
inc edi
push ecx
mov ecx, esi
mov dword [ebp - 0x28], edi
call fcn.00421c6e
jmp 0x4211cc
cmp eax, 0x83
jne 0x421284
mov ecx, dword [esi + 0x14]
lea edx, [ebp - 0x24]
push edx
xor edi, edi
mov eax, dword [ecx]
call dword [eax + 0x10]
mov ecx, dword [ebp - 0x18]
mov edx, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x20]
cmp dword [ebp - 0x24], edi
jne 0x42125b
test edx, edx
jne 0x42125b
test esi, esi
jne 0x42125b
test ecx, ecx
jne 0x42125b
xor eax, eax
jmp 0x421272
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
add dword [eax], ecx
add dword [eax + 4], esi
sub dword [eax + 8], edx
mov ecx, dword [ebp - 0x18]
sub dword [eax + 0xc], ecx
lea eax, [edi + 1]
and dword [ebx], edi
test eax, eax
je 0x4211a3
lea eax, [edi + 1]
jmp 0x4211a5
cmp eax, 0x85
jne 0x4212a6
lea eax, [ebp - 0x28]
xor edi, edi
push eax
push ecx
push dword [ebp + 0xc]
inc edi
push ecx
mov ecx, esi
mov dword [ebp - 0x28], edi
call fcn.00421b25
jmp 0x4211cc
cmp eax, 0xa1
jne 0x4212c3
push ecx
push dword [ebp + 0xc]
xor edi, edi
mov ecx, esi
inc edi
mov dword [esi + 4], edi
call fcn.00421aa0
jmp 0x421202
cmp eax, 0xa2
jne 0x4212e5
lea eax, [ebp - 0x28]
xor edi, edi
push eax
push ecx
push dword [ebp + 0xc]
inc edi
push ecx
mov ecx, esi
mov dword [ebp - 0x28], edi
call fcn.004219f7
jmp 0x4211cc
cmp eax, 0xa4
jne 0x421304
xor eax, eax
cmp byte [esi + 0x21], al
setne al
and dword [ebx], 0
test eax, eax
je 0x4211a3
jmp 0x4210cd
cmp eax, 0xa0
jne 0x421326
lea eax, [ebp - 0x28]
xor edi, edi
push eax
push ecx
push dword [ebp + 0xc]
inc edi
push ecx
mov ecx, esi
mov dword [ebp - 0x28], edi
call fcn.004218e8
jmp 0x4211cc
cmp eax, 0x2a2
jne 0x421346
lea eax, [ebp - 0x28]
xor edi, edi
push eax
sub esp, 0xc
inc edi
mov ecx, esi
mov dword [ebp - 0x28], edi
call fcn.00421874
jmp 0x4211cc
cmp eax, 0x113
jne 0x4211a3
mov edx, dword [esi + 0x28]
xor edi, edi
mov eax, dword [esi + 0x24]
mov ecx, dword [ebp + 0xc]
jmp 0x421365
cmp dword [eax], ecx
je 0x421369
add eax, 4
cmp eax, edx
jne 0x42135e
cmp eax, edx
je 0x421257
mov eax, dword [ecx]
push ecx
call dword [eax]
jmp 0x42126f