Function at 0x443a00
Capabilities:
Check for time delay via queryperformancecounter

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x6c
mov eax, dword [0x519008]
xor eax, esp
mov dword [esp + 0x68], eax
push ebx
push esi
mov esi, ecx
push edi
push str.CPUBridgeServer::priv_enterState_compatibilityCheck___n
mov eax, dword [esi + 4]
push eax
mov ecx, dword [eax]
call dword [ecx + 0xc]
push 0x72
lea eax, [esi + 0x8e4]
mov dword [esi + 0xe0], 5
push 0
push eax
call fcn.00405490
add esp, 0x14
lea eax, [esi + 0x958]
push 0x120
push 0
push eax
call fcn.00405490
add esp, 0xc
lea eax, [esi + 0xac0]
push 0xf0
push 0
push eax
call fcn.00405490
xor eax, eax
mov dword [esi + 0x978], 1
lea edi, [esi + 0x986]
mov dword [esi + 0xbb0], eax
add esp, 0xc
mov dword [esi + 0x96c], 0x67
mov word [edi], ax
test edi, edi
je 0x443ac1
xor ecx, ecx
jmp 0x443aa0
cmp ecx, 0x77
jae 0x443abb
movsx ax, byte [ecx + str.COMPATIBILITY____CHECK]
mov word [edi + ecx*2], ax
inc ecx
cmp byte [ecx + str.COMPATIBILITY____CHECK], 0
jne 0x443aa0
xor eax, eax
mov word [edi + ecx*2], ax
xor ebx, ebx
mov byte [esi + 0xa76], 0x7b
cmp dword [esi + 0xaa8], ebx
jbe 0x443b49
movzx eax, word [esi + 0x974]
xor edx, edx
push eax
movzx eax, byte [esi + 0x971]
push eax
movzx eax, byte [esi + 0x970]
push eax
mov eax, dword [esi + 0xa9c]
push dword [esi + 0x96c]
push dword [esi + 4]
mov ecx, dword [eax + ebx*4]
add ecx, 4
call fcn.00438230
add esp, 0x14
lea eax, [esi + 0x97c]
xor edx, edx
push eax
mov eax, dword [esi + 0xa9c]
push dword [esi + 4]
mov ecx, dword [eax + ebx*4]
add ecx, 4
call fcn.00437de0
mov eax, dword [esi + 0xa9c]
xor edx, edx
push edi
push dword [esi + 4]
mov ecx, dword [eax + ebx*4]
add ecx, 4
call fcn.00437f40
inc ebx
add esp, 0x10
cmp ebx, dword [esi + 0xaa8]
jb 0x443ad2
mov ecx, dword [esi + 0xe0]
mov eax, dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
cmp ecx, 0xff
je 0x443fc5
lea edx, [ecx - 1]
cmp edx, 8
ja case.default.0x443b6c
jmp dword [edx*4 + 0x44408c]
mov ecx, esi
call fcn.0043de50
jmp 0x443fae
mov ecx, esi
call fcn.0043d6b0
jmp 0x443fae
mov ecx, esi
call fcn.0043d140
jmp 0x443fae
mov ecx, esi
call fcn.0043bbf0
jmp 0x443fae
xor edi, edi
xor bh, bh
mov dword [esp + 0xc], edi
cmp ecx, 3
jne 0x443fb3
lea ecx, [esp + 0x20]
push ecx
call eax
push dword [0x51dbec]
mov ecx, dword [esp + 0x24]
sub ecx, dword [0x51dbf0]
push dword [0x51dbe8]
mov eax, dword [esp + 0x2c]
sbb eax, dword [0x51dbf4]
push eax
push ecx
call fcn.004fce10
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], edx
cmp edx, dword [esp + 0xc]
jb 0x443d08
ja 0x443bfe
cmp eax, edi
jb 0x443d08
mov al, byte [esi + 0xbb3]
xor dl, dl
mov cl, byte [esi + 0xabc]
xor bl, bl
mov byte [esp + 0x64], al
mov word [esp + 0x65], 0
mov byte [esp + 0x67], 0
mov eax, dword [esp + 0x64]
mov byte [esp + 0x4b], cl
xor cl, cl
mov dword [esp + 0x47], eax
xor eax, eax
mov word [esp + 0x44], 0x4223
mov byte [esp + 0x46], 9
lea ebx, [ebx]
add cl, byte [esp + eax + 0x44]
add dl, byte [esp + eax + 0x45]
add eax, 2
cmp eax, 7
jb 0x443c40
cmp eax, 8
jae 0x443c59
mov bl, byte [esp + eax + 0x44]
push 0
push 0x1f4
push dword [esi + 4]
lea eax, [esp + 0x18]
mov dword [esp + 0x18], 0x800
push eax
add bl, cl
lea edi, [esi + 0xe4]
mov ecx, dword [esi + 8]
lea eax, [esp + 0x54]
push edi
add bl, dl
push 9
push eax
mov byte [esp + 0x68], bl
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
test al, al
je 0x443cb7
xor eax, eax
cmp ax, word [esp + 0xc]
je 0x443cb7
push ecx
push edi
mov ecx, esi
xor bh, bh
call fcn.0043c130
cmp dword [esi + 0x96c], 4
jne 0x443fa7
jmp 0x443cbe
inc bh
cmp bh, 8
jae 0x443d25
mov edi, dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
lea eax, [esp + 0x28]
push eax
call edi
push dword [0x51dbec]
mov ecx, dword [esp + 0x2c]
sub ecx, dword [0x51dbf0]
push dword [0x51dbe8]
mov eax, dword [esp + 0x34]
sbb eax, dword [0x51dbf4]
push eax
push ecx
call fcn.004fce10
mov edi, eax
mov eax, edx
mov dword [esp + 0x28], edi
add edi, 0x32
mov dword [esp + 0x2c], eax
adc eax, 0
mov dword [esp + 0xc], eax
push 0x32
sub esp, 8
mov ecx, esi
call fcn.00443620
mov eax, dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
cmp dword [esi + 0xe0], 3
jmp 0x443bae
mov ecx, esi
call fcn.0043d570
jmp 0x443fae
mov ecx, esi
call fcn.0043b6c0
jmp 0x443fae
xor edi, edi
xor ebx, ebx
cmp ecx, 8
jne 0x443fb3
lea ecx, [esp + 0x30]
push ecx
call eax
push dword [0x51dbec]
mov ecx, dword [esp + 0x34]
sub ecx, dword [0x51dbf0]
push dword [0x51dbe8]
mov eax, dword [esp + 0x3c]
sbb eax, dword [0x51dbf4]
push eax
push ecx
call fcn.004fce10
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], edx
cmp edx, ebx
jb 0x443e8c
ja 0x443d92
cmp eax, edi
jb 0x443e8c
mov al, byte [esi + 0xbb3]
xor dl, dl
mov cl, byte [esi + 0xabc]
xor bl, bl
mov byte [esp + 0x6c], al
mov word [esp + 0x6d], 0
mov byte [esp + 0x6f], 0
mov eax, dword [esp + 0x6c]
mov byte [esp + 0x4b], cl
xor cl, cl
mov dword [esp + 0x47], eax
xor eax, eax
mov word [esp + 0x44], 0x4223
mov byte [esp + 0x46], 9
mov edi, edi
add cl, byte [esp + eax + 0x44]
add dl, byte [esp + eax + 0x45]
add eax, 2
cmp eax, 7
jb 0x443dd0
cmp eax, 8
jae 0x443de9
mov bl, byte [esp + eax + 0x44]
push 0
push 0x1f4
push dword [esi + 4]
lea eax, [esp + 0x18]
mov dword [esp + 0x18], 0x800
push eax
add bl, cl
lea edi, [esi + 0xe4]
mov ecx, dword [esi + 8]
lea eax, [esp + 0x54]
push edi
add bl, dl
push 9
push eax
mov byte [esp + 0x68], bl
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
test al, al
je 0x443e43
xor eax, eax
cmp ax, word [esp + 0xc]
je 0x443e43
push ecx
push edi
mov ecx, esi
call fcn.0043c130
test byte [esi + 0x974], 2
je 0x443fa7
mov edi, dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
lea eax, [esp + 0x38]
push eax
call edi
push dword [0x51dbec]
mov ecx, dword [esp + 0x3c]
sub ecx, dword [0x51dbf0]
push dword [0x51dbe8]
mov eax, dword [esp + 0x44]
sbb eax, dword [0x51dbf4]
push eax
push ecx
call fcn.004fce10
mov edi, eax
mov ebx, edx
mov dword [esp + 0x38], edi
add edi, 0x1f4
mov dword [esp + 0x3c], ebx
adc ebx, 0
push 0x1f4
sub esp, 8
mov ecx, esi
call fcn.00443620
mov eax, dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
cmp dword [esi + 0xe0], 8
jmp 0x443d44
mov ecx, esi
call fcn.0043b0f0
jmp 0x443fae
mov word [esp + 0x18], 2
xor cl, cl
mov ax, word [esp + 0x18]
xor dl, dl
mov word [esp + 0x47], ax
xor bl, bl
mov word [esp + 0x44], 0x4323
xor eax, eax
mov byte [esp + 0x49], cl
mov byte [esp + 0x46], 7
add dl, byte [esp + eax + 0x44]
add cl, byte [esp + eax + 0x45]
add eax, 2
cmp eax, 5
jb 0x443ee1
cmp eax, 6
jae 0x443efa
mov bl, byte [esp + eax + 0x44]
add cl, bl
add cl, dl
cmp dword [esi + 0xe0], 0
mov byte [esp + 0x4a], cl
jne 0x443fae
mov edi, dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
lea ebx, [esi + 0xe4]
jmp 0x443f20
lea eax, [esp + 0x10]
push eax
call edi
push dword [0x51dbec]
mov ecx, dword [esp + 0x14]
sub ecx, dword [0x51dbf0]
push dword [0x51dbe8]
mov eax, dword [esp + 0x1c]
sbb eax, dword [0x51dbf4]
push eax
push ecx
call fcn.004fce10
mov ecx, dword [esi + 8]
push 0
push 0x7d0
push dword [esi + 4]
mov dword [esp + 0x1c], eax
lea eax, [esp + 0x28]
push eax
push ebx
push 7
lea eax, [esp + 0x5c]
mov dword [esp + 0x34], 0x800
push eax
mov eax, dword [ecx]
mov dword [esp + 0x30], edx
mov eax, dword [eax + 0xc]
call eax
mov ecx, esi
test al, al
jne 0x443f9d
push 0xbb8
sub esp, 8
call fcn.00443620
cmp dword [esi + 0xe0], 0
je 0x443f20
jmp 0x443fae
push dword [esp + 0x1c]
push ebx
call fcn.0043d380
mov ecx, esi
call fcn.0043dc10
mov eax, dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov ecx, dword [esi + 0xe0]
cmp ecx, 0xff
jne 0x443b60
mov eax, dword [esi + 4]
push str.Quitting_due_to_CPUBRIDGE_SUBSCRIBER_ASK_DIE..._n
push eax
mov ecx, dword [eax]
call dword [ecx + 0xc]
mov edi, dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
add esp, 8
mov ebx, 0xa
lea eax, [esp + 0x10]
push eax
call edi
push dword [0x51dbec]
mov ecx, dword [esp + 0x14]
sub ecx, dword [0x51dbf0]
push dword [0x51dbe8]
mov eax, dword [esp + 0x1c]
sbb eax, dword [0x51dbf4]
push eax
push ecx
call fcn.004fce10
push 0x32
sub esp, 8
mov dword [esp + 0x1c], eax
mov ecx, esi
mov dword [esp + 0x20], edx
call fcn.00443620
sub ebx, 1
jne 0x443fe1
lea eax, [esp + 0x10]
push eax
call edi
push dword [0x51dbec]
mov ecx, dword [esp + 0x14]
sub ecx, dword [0x51dbf0]
push dword [0x51dbe8]
mov eax, dword [esp + 0x1c]
sbb eax, dword [0x51dbf4]
push eax
push ecx
call fcn.004fce10
push 0x1f4
sub esp, 8
mov dword [esp + 0x1c], eax
mov ecx, esi
mov dword [esp + 0x20], edx
call fcn.00443620
test al, al
jne 0x444028
mov ecx, dword [esp + 0x74]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.00403d8c
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.0043dca0
mov edi, edi
mov edi, dword [ebx]
inc esp
add byte [edi - 0x5cffbbc5], dl
cmp eax, dword [eax + eax + 0x31]
cmp eax, 0x3b730044
inc esp
add byte [ebx + 0x7f004440], al
cmp eax, dword [eax + eax + 0x3d]
cmp eax, 0x3eac0044
inc esp
add byte [ebp - 0x75], dl
push ebp
mov ebp, esp