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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4bf90e
mov eax, dword fs:[0]
push eax
sub esp, 0xb0
mov eax, dword [0x57e030]
xor eax, esp
mov dword [esp + 0xa8], eax
push ebx
push esi
push edi
mov eax, dword [0x57e030]
xor eax, esp
push eax
lea eax, [esp + 0xc0]
mov dword fs:[0], eax
mov edi, ecx
push 0
mov dword [esp + 0x18], edi
call fcn.00481614
add esp, 4
push eax
call fcn.004815e0
add esp, 4
xor esi, esi
jmp 0x421340
call fcn.004815f2
mov byte [esp + esi + 0x98], al
inc esi
cmp esi, 0x10
jb 0x421340
mov ebx, dword [edi + 4]
xor esi, esi
mov edi, 0x10
lea esp, [esp]
mov ecx, dword [ebx + 4]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
push edi
lea edx, [esp + esi + 0x9c]
push edx
call eax
add esi, eax
sub edi, eax
cmp esi, 0x10
jb 0x421360
mov ecx, dword [esp + 0x14]
mov ebx, dword [ecx + 8]
xor esi, esi
mov edi, 0x10
lea ebx, [ebx]
mov ecx, dword [ebx + 4]
mov edx, dword [ecx]
mov edx, dword [edx + 4]
push edi
lea eax, [esp + esi + 0xac]
push eax
call edx
add esi, eax
sub edi, eax
cmp esi, 0x10
jb 0x421390
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0x18]
mov edx, dword [ecx]
mov eax, dword [eax + 0x1c]
mov edx, dword [edx + 8]
push eax
call edx
test al, al
je 0x421412
lea ecx, [esp + 0x1c]
mov dword [esp + 0x18], vtable.Exception.0
call fcn.00404990
mov dword [esp + 0xc8], 0
mov eax, dword [esp + 0x1c]
mov edx, dword [eax + 4]
push str.Your_connection_has_been_rejected
lea ecx, [esp + 0x20]
call edx
push 0x56e718
lea eax, [esp + 0x1c]
mov dword [esp + 0xcc], 0xffffffff
push eax
mov dword [esp + 0x20], vtable.AuthException.0
call fcn.004841dc
mov edx, dword [vtable.LocalMutex.0]
mov eax, dword [edx + 4]
mov ecx, 0x580d40
call eax
mov edx, dword [vtable.LocalMutex.0]
mov eax, dword [edx + 8]
mov ebx, dword [0x594960]
mov ecx, 0x580d40
call eax
mov edx, dword [ebx + 0x104]
mov eax, dword [edx + 4]
lea esi, [ebx + 0x104]
mov ecx, esi
call eax
movzx ecx, byte [ebx + 0x100]
mov edx, dword [esi]
mov eax, dword [edx + 8]
mov byte [esp + 0x13], cl
mov ecx, esi
call eax
mov edx, dword [esi]
mov eax, dword [edx + 4]
mov ecx, esi
call eax
movzx ecx, byte [ebx + 0x101]
mov edx, dword [esi]
mov eax, dword [edx + 8]
mov byte [esp + 0x12], cl
mov ecx, esi
call eax
cmp byte [esp + 0x13], 0
jne 0x4214b4
cmp byte [esp + 0x12], 0
jne 0x421536
push str.Server_is_not_configured_properly
lea ecx, [esp + 0x1c]
push ecx
call fcn.004048f0
push 0x56e718
lea edx, [esp + 0x1c]
push edx
mov dword [esp + 0x20], vtable.AuthException.0
call fcn.004841dc
mov eax, dword [esi]
mov edx, dword [eax + 4]
mov ecx, esi
call edx
mov eax, dword [ebx + 0x4e]
mov ecx, dword [ebx + 0x52]
mov edx, dword [esi]
mov dword [esp + 0x90], eax
mov eax, dword [edx + 8]
mov dword [esp + 0x94], ecx
mov ecx, esi
call eax
lea ecx, [esp + 0x1c]
push ecx
mov edi, 8
mov dword [esp + 0x1c], vtable.VncPassCrypt.0
call fcn.004510a0
lea edx, [esp + 0x90]
push edx
lea eax, [esp + 0x1c]
call fcn.0045d3c0
lea eax, [esp + 0xa8]
push eax
lea edx, [esp + 0x9c]
lea ecx, [esp + 0x1c]
call fcn.0045d440
lea ecx, [esp + 0x18]
test al, al
jne 0x4215ac
call fcn.0045d340
cmp byte [esp + 0x12], 0
je 0x4215da
mov edx, dword [esi]
mov eax, dword [edx + 4]
mov ecx, esi
call eax
mov ecx, dword [ebx + 0x56]
mov edx, dword [ebx + 0x5a]
mov eax, dword [esi]
mov dword [esp + 0x90], ecx
mov dword [esp + 0x94], edx
mov edx, dword [eax + 8]
mov ecx, esi
call edx
lea eax, [esp + 0x1c]
push eax
mov edi, 8
mov dword [esp + 0x1c], vtable.VncPassCrypt.0
call fcn.004510a0
lea ecx, [esp + 0x90]
push ecx
lea eax, [esp + 0x1c]
call fcn.0045d3c0
lea edx, [esp + 0xa8]
push edx
lea edx, [esp + 0x9c]
lea ecx, [esp + 0x1c]
call fcn.0045d440
lea ecx, [esp + 0x18]
test al, al
je 0x4215d5
mov eax, dword [esp + 0x14]
mov byte [eax + 0x14], 1
call fcn.0045d340
mov ecx, dword [esp + 0xc0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0xa8]
xor ecx, esp
call fcn.004807f8
mov esp, ebp
pop ebp
ret
call fcn.0045d340
mov esi, dword [esp + 0x14]
mov ecx, dword [esi + 0x18]
mov edx, dword [ecx]
mov eax, dword [esi + 0x1c]
mov edx, dword [edx + 0xc]
push eax
call edx
lea ecx, [esp + 0x38]
call fcn.00404990
lea eax, [esp + 0x38]
mov dword [esp + 0xc8], 1
mov ecx, dword [esi + 0x1c]
push eax
push ecx
call fcn.0041fc90
lea ecx, [esp + 0x54]
call fcn.00404990
mov byte [esp + 0xc8], 2
mov eax, dword [esp + 0x48]
mov esi, eax
cmp eax, dword [esp + 0x4c]
jbe 0x421630
call fcn.00480e22
mov eax, dword [esp + 0x3c]
test eax, eax
jne 0x4216a8
call fcn.00480e22
xor eax, eax
cmp esi, dword [eax + 0x10]
jb 0x421649
call fcn.00480e22
push esi
lea edx, [esp + 0x58]
push str.Authentication_failed_from__s
push edx
call fcn.004056a0
mov eax, dword [esp + 0x70]
add esp, 0xc
mov esi, eax
cmp eax, dword [esp + 0x68]
jbe 0x42166d
call fcn.00480e22
mov eax, dword [esp + 0x58]
test eax, eax
jne 0x4216ac
call fcn.00480e22
xor eax, eax
cmp esi, dword [eax + 0x10]
jb 0x421686
call fcn.00480e22
push esi
lea eax, [esp + 0x74]
push eax
call fcn.004048f0
push 0x56e718
lea ecx, [esp + 0x74]
push ecx
mov dword [esp + 0x78], vtable.AuthException.0
call fcn.004841dc
mov eax, dword [eax]
jmp 0x42163f
mov eax, dword [eax]
jmp 0x42167c