Function at 0x432820
Capabilities:
Get number of processors

Disassembly:
push 0xffffffffffffffff
push 0x493534
mov eax, dword fs:[0]
push eax
sub esp, 0x10
push ebx
push esi
push edi
mov eax, dword [0x4ae680]
xor eax, esp
push eax
lea eax, [esp + 0x20]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [esp + 0x28], 0
call fcn.0044c190
cmp dword [esp + 0x30], 0
je 0x432ec3
cmp byte [eax + 0x6d], 0
je 0x43289c
call fcn.0044c190
push 0x4098
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov al, byte [esp + 0x30]
and al, 0xdf
mov byte [esp + 0x30], al
call fcn.0044c190
push 1
lea ecx, [esp + 0x34]
push ecx
push 0x4098
jmp 0x4328d1
call fcn.0044c190
push 0x400b
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov dl, byte [esp + 0x30]
and dl, 0xbf
mov byte [esp + 0x30], dl
call fcn.0044c190
push 1
lea eax, [esp + 0x34]
push eax
push 0x400b
call fcn.0044c630
call fcn.0044c190
cmp byte [eax + 0x6c], 0
je 0x432ad7
mov ecx, dword [esp + 0x3c]
push 0x49c490
push ecx
call fcn.00476a04
add esp, 8
test eax, eax
sete al
test al, al
je 0x432932
call fcn.0044c190
push 0x41d2
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov dl, byte [esp + 0x30]
or dl, 2
mov byte [esp + 0x30], dl
call fcn.0044c190
push 1
lea eax, [esp + 0x34]
push eax
jmp 0x432962
call fcn.0044c190
push 0x41d2
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov cl, byte [esp + 0x30]
and cl, 0xfd
mov byte [esp + 0x30], cl
call fcn.0044c190
push 1
lea edx, [esp + 0x34]
push edx
push 0x41d2
call fcn.0044c630
call fcn.0044c190
cmp byte [eax + 0x64], 0
je 0x4329a8
call fcn.0044c190
push 0x41d2
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov al, byte [esp + 0x30]
or al, 0x10
mov byte [esp + 0x30], al
call fcn.0044c190
push 1
lea ecx, [esp + 0x34]
push ecx
jmp 0x4329d8
call fcn.0044c190
push 0x41d2
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov dl, byte [esp + 0x30]
and dl, 0xef
mov byte [esp + 0x30], dl
call fcn.0044c190
push 1
lea eax, [esp + 0x34]
push eax
push 0x41d2
call fcn.0044c630
call fcn.0044c190
cmp byte [eax + 0x65], 0
je 0x432a1f
call fcn.0044c190
push 0x41d2
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov cl, byte [esp + 0x30]
or cl, 0x20
mov byte [esp + 0x30], cl
call fcn.0044c190
push 1
lea edx, [esp + 0x34]
push edx
jmp 0x432a4e
call fcn.0044c190
push 0x41d2
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov al, byte [esp + 0x30]
and al, 0xdf
mov byte [esp + 0x30], al
call fcn.0044c190
push 1
lea ecx, [esp + 0x34]
push ecx
push 0x41d2
call fcn.0044c630
call fcn.0044c190
cmp dword [eax + 0x60], 0
je 0x432a9d
call fcn.0044c190
push 0x41d2
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov dl, byte [esp + 0x30]
or dl, 8
mov byte [esp + 0x30], dl
call fcn.0044c190
push 1
lea eax, [esp + 0x34]
push eax
push 0x41d2
jmp 0x43332b
call fcn.0044c190
push 0x41d2
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov cl, byte [esp + 0x30]
and cl, 0xf7
mov byte [esp + 0x30], cl
call fcn.0044c190
push 1
lea edx, [esp + 0x34]
push edx
push 0x41d2
jmp 0x43332b
call fcn.0044c190
cmp byte [eax + 0x6d], 0
push 0x49c490
je 0x432cd7
mov eax, dword [esp + 0x40]
push eax
call fcn.00476a04
add esp, 8
test eax, eax
sete al
test al, al
je 0x432b33
call fcn.0044c190
push 0x4097
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov cl, byte [esp + 0x30]
or cl, 0x10
mov byte [esp + 0x30], cl
call fcn.0044c190
push 1
lea edx, [esp + 0x34]
push edx
jmp 0x432b62
call fcn.0044c190
push 0x4097
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov al, byte [esp + 0x30]
and al, 0xef
mov byte [esp + 0x30], al
call fcn.0044c190
push 1
lea ecx, [esp + 0x34]
push ecx
push 0x4097
call fcn.0044c630
call fcn.0044c190
cmp byte [eax + 0x64], 0
je 0x432ba9
call fcn.0044c190
push 0x4097
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov dl, byte [esp + 0x30]
or dl, 1
mov byte [esp + 0x30], dl
call fcn.0044c190
push 1
lea eax, [esp + 0x34]
push eax
jmp 0x432bd9
call fcn.0044c190
push 0x4097
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov cl, byte [esp + 0x30]
and cl, 0xfe
mov byte [esp + 0x30], cl
call fcn.0044c190
push 1
lea edx, [esp + 0x34]
push edx
push 0x4097
call fcn.0044c630
call fcn.0044c190
cmp byte [eax + 0x65], 0
je 0x432c1f
call fcn.0044c190
push 0x4097
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov al, byte [esp + 0x30]
or al, 8
mov byte [esp + 0x30], al
call fcn.0044c190
push 1
lea ecx, [esp + 0x34]
push ecx
jmp 0x432c4f
call fcn.0044c190
push 0x4097
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov dl, byte [esp + 0x30]
and dl, 0xf7
mov byte [esp + 0x30], dl
call fcn.0044c190
push 1
lea eax, [esp + 0x34]
push eax
push 0x4097
call fcn.0044c630
call fcn.0044c190
cmp dword [eax + 0x60], 0
je 0x432c9e
call fcn.0044c190
push 0x4097
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov cl, byte [esp + 0x30]
or cl, 2
mov byte [esp + 0x30], cl
call fcn.0044c190
push 1
lea edx, [esp + 0x34]
push edx
push 0x4097
jmp 0x43332b
call fcn.0044c190
push 0x4097
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov al, byte [esp + 0x30]
and al, 0xfd
mov byte [esp + 0x30], al
call fcn.0044c190
push 1
lea ecx, [esp + 0x34]
push ecx
push 0x4097
jmp 0x43332b
mov edx, dword [esp + 0x40]
push edx
call fcn.00476a04
add esp, 8
test eax, eax
sete al
test al, al
je 0x432d1e
call fcn.0044c190
push 0x40c2
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov al, byte [esp + 0x30]
or al, 2
mov byte [esp + 0x30], al
call fcn.0044c190
push 1
lea ecx, [esp + 0x34]
push ecx
jmp 0x432d4e
call fcn.0044c190
push 0x40c2
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov dl, byte [esp + 0x30]
and dl, 0xfd
mov byte [esp + 0x30], dl
call fcn.0044c190
push 1
lea eax, [esp + 0x34]
push eax
push 0x40c2
call fcn.0044c630
call fcn.0044c190
cmp byte [eax + 0x64], 0
je 0x432d95
call fcn.0044c190
push 0x40c2
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov cl, byte [esp + 0x30]
or cl, 0x10
mov byte [esp + 0x30], cl
call fcn.0044c190
push 1
lea edx, [esp + 0x34]
push edx
jmp 0x432dc4
call fcn.0044c190
push 0x40c2
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov al, byte [esp + 0x30]
and al, 0xef
mov byte [esp + 0x30], al
call fcn.0044c190
push 1
lea ecx, [esp + 0x34]
push ecx
push 0x40c2
call fcn.0044c630
call fcn.0044c190
cmp byte [eax + 0x65], 0
je 0x432e0b
call fcn.0044c190
push 0x40c2
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov dl, byte [esp + 0x30]
or dl, 0x20
mov byte [esp + 0x30], dl
call fcn.0044c190
push 1
lea eax, [esp + 0x34]
push eax
jmp 0x432e3b
call fcn.0044c190
push 0x40c2
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov cl, byte [esp + 0x30]
and cl, 0xdf
mov byte [esp + 0x30], cl
call fcn.0044c190
push 1
lea edx, [esp + 0x34]
push edx
push 0x40c2
call fcn.0044c630
call fcn.0044c190
cmp dword [eax + 0x60], 0
je 0x432e89
call fcn.0044c190
push 0x40c2
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov al, byte [esp + 0x30]
or al, 8
mov byte [esp + 0x30], al
call fcn.0044c190
push 1
lea ecx, [esp + 0x34]
push ecx
push 0x40c2
jmp 0x43332b
call fcn.0044c190
push 0x40c2
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov dl, byte [esp + 0x30]
and dl, 0xf7
mov byte [esp + 0x30], dl
call fcn.0044c190
push 1
lea eax, [esp + 0x34]
push eax
push 0x40c2
jmp 0x43332b
cmp byte [eax + 0x6d], 0
je 0x432f00
call fcn.0044c190
push 0x4098
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov cl, byte [esp + 0x30]
or cl, 0x20
mov byte [esp + 0x30], cl
call fcn.0044c190
push 1
lea edx, [esp + 0x34]
push edx
push 0x4098
jmp 0x432f34
call fcn.0044c190
push 0x400b
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov al, byte [esp + 0x30]
or al, 0x40
mov byte [esp + 0x30], al
call fcn.0044c190
push 1
lea ecx, [esp + 0x34]
push ecx
push 0x400b
call fcn.0044c630
call fcn.0044c190
cmp byte [eax + 0x6d], 0
push 0x49c490
je 0x433142
mov edx, dword [esp + 0x40]
push edx
call fcn.00476a04
add esp, 8
test eax, eax
sete al
test al, al
je 0x432f94
call fcn.0044c190
push 0x4098
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov al, byte [esp + 0x30]
or al, 0x10
mov byte [esp + 0x30], al
call fcn.0044c190
push 1
lea ecx, [esp + 0x34]
push ecx
jmp 0x432fc4
call fcn.0044c190
push 0x4098
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov dl, byte [esp + 0x30]
and dl, 0xef
mov byte [esp + 0x30], dl
call fcn.0044c190
push 1
lea eax, [esp + 0x34]
push eax
push 0x4098
call fcn.0044c630
call fcn.0044c190
cmp byte [eax + 0xa0], 0
je 0x43300e
call fcn.0044c190
push 0x4098
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov cl, byte [esp + 0x30]
or cl, 1
mov byte [esp + 0x30], cl
call fcn.0044c190
push 1
lea edx, [esp + 0x34]
push edx
jmp 0x43303d
call fcn.0044c190
push 0x4098
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov al, byte [esp + 0x30]
and al, 0xfe
mov byte [esp + 0x30], al
call fcn.0044c190
push 1
lea ecx, [esp + 0x34]
push ecx
push 0x4098
call fcn.0044c630
call fcn.0044c190
cmp byte [eax + 0xa1], 0
je 0x433087
call fcn.0044c190
push 0x4098
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov dl, byte [esp + 0x30]
or dl, 8
mov byte [esp + 0x30], dl
call fcn.0044c190
push 1
lea eax, [esp + 0x34]
push eax
jmp 0x4330b7
call fcn.0044c190
push 0x4098
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov cl, byte [esp + 0x30]
and cl, 0xf7
mov byte [esp + 0x30], cl
call fcn.0044c190
push 1
lea edx, [esp + 0x34]
push edx
push 0x4098
call fcn.0044c630
call fcn.0044c190
cmp dword [eax + 0x9c], 0
je 0x433108
call fcn.0044c190
push 0x4098
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov al, byte [esp + 0x30]
or al, 2
mov byte [esp + 0x30], al
call fcn.0044c190
push 1
lea ecx, [esp + 0x34]
push ecx
push 0x4098
jmp 0x43332b
call fcn.0044c190
push 0x4098
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov dl, byte [esp + 0x30]
and dl, 0xfd
mov byte [esp + 0x30], dl
call fcn.0044c190
push 1
lea eax, [esp + 0x34]
push eax
push 0x4098
jmp 0x43332b
mov ecx, dword [esp + 0x40]
push ecx
call fcn.00476a04
add esp, 8
test eax, eax
sete al
test al, al
je 0x43318a
call fcn.0044c190
push 0x40c1
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov dl, byte [esp + 0x30]
or dl, 2
mov byte [esp + 0x30], dl
call fcn.0044c190
push 1
lea eax, [esp + 0x34]
push eax
jmp 0x4331ba
call fcn.0044c190
push 0x40c1
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov cl, byte [esp + 0x30]
and cl, 0xfd
mov byte [esp + 0x30], cl
call fcn.0044c190
push 1
lea edx, [esp + 0x34]
push edx
push 0x40c1
call fcn.0044c630
call fcn.0044c190
cmp byte [eax + 0xa0], 0
je 0x433203
call fcn.0044c190
push 0x40c1
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov al, byte [esp + 0x30]
or al, 0x10
mov byte [esp + 0x30], al
call fcn.0044c190
push 1
lea ecx, [esp + 0x34]
push ecx
jmp 0x433233
call fcn.0044c190
push 0x40c1
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov dl, byte [esp + 0x30]
and dl, 0xef
mov byte [esp + 0x30], dl
call fcn.0044c190
push 1
lea eax, [esp + 0x34]
push eax
push 0x40c1
call fcn.0044c630
call fcn.0044c190
cmp byte [eax + 0xa1], 0
je 0x43327d
call fcn.0044c190
push 0x40c1
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov cl, byte [esp + 0x30]
or cl, 0x20
mov byte [esp + 0x30], cl
call fcn.0044c190
push 1
lea edx, [esp + 0x34]
push edx
jmp 0x4332ac
call fcn.0044c190
push 0x40c1
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov al, byte [esp + 0x30]
and al, 0xdf
mov byte [esp + 0x30], al
call fcn.0044c190
push 1
lea ecx, [esp + 0x34]
push ecx
push 0x40c1
call fcn.0044c630
call fcn.0044c190
cmp dword [eax + 0x9c], 0
je 0x4332f6
call fcn.0044c190
push 0x40c1
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov dl, byte [esp + 0x30]
or dl, 8
mov byte [esp + 0x30], dl
call fcn.0044c190
push 1
lea eax, [esp + 0x34]
push eax
jmp 0x433326
call fcn.0044c190
push 0x40c1
push eax
mov ecx, 1
lea edx, [esp + 0x38]
call fcn.0044c880
mov cl, byte [esp + 0x30]
and cl, 0xf7
mov byte [esp + 0x30], cl
call fcn.0044c190
push 1
lea edx, [esp + 0x34]
push edx
push 0x40c1
call fcn.0044c630
call fcn.0044c190
cmp byte [eax + 0x6c], 0
je 0x433695
call fcn.0044c190
xor eax, eax
mov word [esp + 0x31], ax
mov byte [esp + 0x33], al
mov eax, ebx
shr eax, 0x18
mov byte [esp + 0x33], al
push 4
lea eax, [esp + 0x34]
mov ecx, ebx
mov edx, ebx
push eax
shr ecx, 0x10
shr edx, 8
push 0x41d4
mov byte [esp + 0x3e], cl
mov byte [esp + 0x3d], dl
mov byte [esp + 0x3c], bl
call fcn.0044c630
fild dword [esp + 0x34]
call fcn.0048b890
fmul qword [0x49f6b0]
fmul qword [0x49f6a8]
fidiv dword [esp + 0x38]
fdiv qword [0x49f698]
fnstcw word [esp + 0x38]
movzx eax, word [esp + 0x38]
or eax, 0xc00
mov dword [esp + 0x30], eax
fldcw word [esp + 0x30]
fistp qword [esp + 0x14]
mov ebx, dword [esp + 0x14]
fldcw word [esp + 0x38]
call fcn.0044c190
mov eax, dword [esp + 0x34]
push 2
lea edx, [esp + 0x3c]
mov ecx, eax
push edx
shr ecx, 8
mov byte [esp + 0x41], 0
push 0x41d0
mov byte [esp + 0x45], cl
mov byte [esp + 0x44], al
call fcn.0044c630
call fcn.0044c190
xor eax, eax
mov word [esp + 0x35], ax
mov byte [esp + 0x37], al
mov eax, ebx
shr eax, 0x18
mov byte [esp + 0x37], al
push 4
lea eax, [esp + 0x38]
mov ecx, ebx
mov edx, ebx
push eax
shr ecx, 0x10
shr edx, 8
push 0x41dc
mov byte [esp + 0x42], cl
mov byte [esp + 0x41], dl
mov byte [esp + 0x40], bl
call fcn.0044c630
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
mov bl, 3
mov eax, dword [0x4b29e8]
mov byte [esp + 0x38], 0
test eax, eax
jne 0x433471
push 0x370
call fcn.00455f7d
add esp, 4
mov dword [esp + 0x30], eax
mov byte [esp + 0x28], 1
test eax, eax
je 0x433465
mov esi, eax
call fcn.0044ba50
jmp 0x433467
xor eax, eax
mov byte [esp + 0x28], 0
mov dword [0x4b29e8], eax
push 0x41d3
push eax
mov ecx, 1
lea edx, [esp + 0x40]
call fcn.0044c880
test al, al
je 0x433542
test byte [esp + 0x38], 1
jne 0x433542
mov eax, dword [0x4b29e8]
test eax, eax
jne 0x4334d0
push 0x370
call fcn.00455f7d
add esp, 4
mov dword [esp + 0x38], eax
mov byte [esp + 0x28], 2
test eax, eax
je 0x4334c4
mov esi, eax
call fcn.0044ba50
jmp 0x4334c6
xor eax, eax
mov byte [esp + 0x28], 0
mov dword [0x4b29e8], eax
push 0x41d2
push eax
mov ecx, 1
lea edx, [esp + 0x3c]
call fcn.0044c880
or byte [esp + 0x34], 4
cmp dword [0x4b29e8], 0
jne 0x433520
push 0x370
call fcn.00455f7d
add esp, 4
mov dword [esp + 0x38], eax
mov byte [esp + 0x28], bl
test eax, eax
je 0x433514
mov esi, eax
call fcn.0044ba50
jmp 0x433516
xor eax, eax
mov byte [esp + 0x28], 0
mov dword [0x4b29e8], eax
mov cl, byte [esp + 0x34]
push 1
lea edx, [esp + 0x3c]
push edx
push 0x41d2
mov byte [esp + 0x44], cl
call fcn.0044c630
push 0x64
call edi
jmp 0x433434
call fcn.0044c190
push 0x41d2
push eax
mov ecx, 1
lea edx, [esp + 0x3c]
call fcn.0044c880
movzx eax, byte [esp + 0x34]
and al, 0xfb
mov byte [esp + 0x34], al
call fcn.0044c190
push 1
lea ecx, [esp + 0x38]
push ecx
push 0x41d2
call fcn.0044c630
call fcn.0044c190
push 0x41d2
push eax
mov ecx, 1
lea edx, [esp + 0x3c]
call fcn.0044c880
mov dl, byte [esp + 0x34]
and dl, 0xfe
mov byte [esp + 0x34], dl
call fcn.0044c190
push 1
lea eax, [esp + 0x38]
push eax
push 0x41d2
call fcn.0044c630
call fcn.0044c190
push 0x41d2
push eax
mov ecx, 1
lea edx, [esp + 0x3c]
call fcn.0044c880
mov cl, byte [esp + 0x34]
or cl, 1
mov byte [esp + 0x34], cl
call fcn.0044c190
push 1
lea edx, [esp + 0x38]
push edx
push 0x41d2
call fcn.0044c630
call fcn.0044c190
push 0x41d2
push eax
mov ecx, 1
lea edx, [esp + 0x3c]
call fcn.0044c880
movzx eax, byte [esp + 0x34]
and al, 0xfe
mov byte [esp + 0x34], al
call fcn.0044c190
push 1
lea ecx, [esp + 0x38]
push ecx
push 0x41d2
call fcn.0044c630
lea ebx, [ebx]
mov eax, dword [0x4b29e8]
mov byte [esp + 0x34], 0
test eax, eax
jne 0x43366d
push 0x370
call fcn.00455f7d
add esp, 4
mov dword [esp + 0x38], eax
mov byte [esp + 0x28], 4
test eax, eax
je 0x433661
mov esi, eax
call fcn.0044ba50
jmp 0x433663
xor eax, eax
mov byte [esp + 0x28], 0
mov dword [0x4b29e8], eax
push 0x41d3
push eax
mov ecx, 1
lea edx, [esp + 0x3c]
call fcn.0044c880
test al, al
je 0x433aff
test byte [esp + 0x34], 1
je 0x433630
jmp 0x433aff
call fcn.0044c190
cmp byte [eax + 0x6d], 0
je 0x4338c7
call fcn.0044c190
push 0x40d4
mov eax, ebx
call fcn.0044c940
fild dword [esp + 0x34]
call fcn.0048b890
fmul qword [0x49f6b0]
fmul qword [0x49f6a8]
fidiv dword [esp + 0x38]
fdiv qword [0x49f698]
fnstcw word [esp + 0x38]
movzx eax, word [esp + 0x38]
or eax, 0xc00
mov dword [esp + 0x30], eax
fldcw word [esp + 0x30]
fistp qword [esp + 0x14]
mov esi, dword [esp + 0x14]
fldcw word [esp + 0x38]
call fcn.0044c190
mov eax, dword [esp + 0x34]
mov edx, eax
mov byte [esp + 0x38], al
push 2
lea eax, [esp + 0x3c]
push eax
shr edx, 8
mov byte [esp + 0x41], 0
push 0x40d0
mov byte [esp + 0x45], dl
call fcn.0044c630
call fcn.0044c190
push 0x40dc
mov eax, esi
call fcn.0044c940
mov esi, dword [sym.imp.KERNEL32.dll_Sleep]
lea esp, [esp]
mov byte [esp + 0x34], 0
call fcn.0044c190
push 0x4099
push eax
mov ecx, 1
lea edx, [esp + 0x3c]
call fcn.0044c880
test al, al
je 0x4337ac
test byte [esp + 0x34], 1
jne 0x4337ac
call fcn.0044c190
push 0x4097
push eax
mov ecx, 1
lea edx, [esp + 0x40]
call fcn.0044c880
mov al, byte [esp + 0x38]
or al, 0x40
mov byte [esp + 0x38], al
mov byte [esp + 0x34], al
call fcn.0044c190
push 1
lea ecx, [esp + 0x38]
push ecx
push 0x4097
call fcn.0044c630
push 0x64
call esi
jmp 0x433740
call fcn.0044c190
push 0x4097
push eax
mov ecx, 1
lea edx, [esp + 0x3c]
call fcn.0044c880
movzx edx, byte [esp + 0x34]
and dl, 0xbf
mov byte [esp + 0x34], dl
call fcn.0044c190
push 1
lea eax, [esp + 0x38]
push eax
push 0x4097
call fcn.0044c630
call fcn.0044c190
push 0x4097
push eax
mov ecx, 1
lea edx, [esp + 0x3c]
call fcn.0044c880
mov cl, byte [esp + 0x34]
and cl, 0x7f
mov byte [esp + 0x34], cl
call fcn.0044c190
push 1
lea edx, [esp + 0x38]
push edx
push 0x4097
call fcn.0044c630
call fcn.0044c190
push 0x4097
push eax
mov ecx, 1
lea edx, [esp + 0x3c]
call fcn.0044c880
mov al, byte [esp + 0x34]
or al, 0x80
mov byte [esp + 0x34], al
call fcn.0044c190
push 1
lea ecx, [esp + 0x38]
push ecx
push 0x4097
call fcn.0044c630
call fcn.0044c190
push 0x4097
push eax
mov ecx, 1
lea edx, [esp + 0x3c]
call fcn.0044c880
movzx edx, byte [esp + 0x34]
and dl, 0x7f
mov byte [esp + 0x34], dl
call fcn.0044c190
push 1
lea eax, [esp + 0x38]
push eax
push 0x4097
call fcn.0044c630
mov byte [esp + 0x34], 0
call fcn.0044c190
push 0x4099
push eax
mov ecx, 1
lea edx, [esp + 0x3c]
call fcn.0044c880
test al, al
je 0x433aff
test byte [esp + 0x34], 1
je 0x433895
jmp 0x433aff
call fcn.0044c190
push 0x40b4
mov eax, ebx
call fcn.0044c940
fild dword [esp + 0x34]
call fcn.0048b890
fmul qword [0x49f6b0]
fmul qword [0x49f6a8]
fidiv dword [esp + 0x38]
fdiv qword [0x49f698]
fnstcw word [esp + 0x38]
movzx eax, word [esp + 0x38]
or eax, 0xc00
mov dword [esp + 0x30], eax
fldcw word [esp + 0x30]
fistp qword [esp + 0x14]
mov esi, dword [esp + 0x14]
fldcw word [esp + 0x38]
call fcn.0044c190
mov eax, dword [esp + 0x34]
push 2
lea edx, [esp + 0x3c]
mov ecx, eax
push edx
shr ecx, 8
mov byte [esp + 0x41], 0
push 0x40b0
mov byte [esp + 0x45], cl
mov byte [esp + 0x44], al
call fcn.0044c630
call fcn.0044c190
push 2
lea eax, [esp + 0x38]
push eax
mov byte [esp + 0x3d], 0
push 0x40b2
mov byte [esp + 0x41], 0
mov byte [esp + 0x40], 0xff
call fcn.0044c630
call fcn.0044c190
push 0x40bc
mov eax, esi
call fcn.0044c940
mov esi, dword [sym.imp.KERNEL32.dll_Sleep]
mov byte [esp + 0x34], 0
call fcn.0044c190
push 0x40b3
push eax
mov ecx, 1
lea edx, [esp + 0x3c]
call fcn.0044c880
test al, al
je 0x4339ed
test byte [esp + 0x34], 1
jne 0x4339ed
call fcn.0044c190
push 0x40c2
push eax
mov ecx, 1
lea edx, [esp + 0x40]
call fcn.0044c880
mov al, byte [esp + 0x38]
or al, 4
mov byte [esp + 0x38], al
mov byte [esp + 0x34], al
call fcn.0044c190
push 1
lea ecx, [esp + 0x38]
push ecx
push 0x40c2
call fcn.0044c630
push 0x64
call esi
jmp 0x433981
call fcn.0044c190
push 0x40c2
push eax
mov ecx, 1
lea edx, [esp + 0x3c]
call fcn.0044c880
movzx edx, byte [esp + 0x34]
and dl, 0xfb
mov byte [esp + 0x34], dl
call fcn.0044c190
push 1
lea eax, [esp + 0x38]
push eax
push 0x40c2
call fcn.0044c630
call fcn.0044c190
push 0x40c2
push eax
mov ecx, 1
lea edx, [esp + 0x3c]
call fcn.0044c880
mov cl, byte [esp + 0x34]
and cl, 0xfe
mov byte [esp + 0x34], cl
call fcn.0044c190
push 1
lea edx, [esp + 0x38]
push edx
push 0x40c2
call fcn.0044c630
call fcn.0044c190
push 0x40c2
push eax
mov ecx, 1
lea edx, [esp + 0x3c]
call fcn.0044c880
mov al, byte [esp + 0x34]
or al, 1
mov byte [esp + 0x34], al
call fcn.0044c190
push 1
lea ecx, [esp + 0x38]
push ecx
push 0x40c2
call fcn.0044c630
call fcn.0044c190
push 0x40c2
push eax
mov ecx, 1
lea edx, [esp + 0x3c]
call fcn.0044c880
movzx edx, byte [esp + 0x34]
and dl, 0xfe
mov byte [esp + 0x34], dl
call fcn.0044c190
push 1
lea eax, [esp + 0x38]
push eax
push 0x40c2
call fcn.0044c630
mov byte [esp + 0x34], 0
call fcn.0044c190
push 0x40b3
push eax
mov ecx, 1
lea edx, [esp + 0x3c]
call fcn.0044c880
test al, al
je 0x433aff
test byte [esp + 0x34], 1
je 0x433ad6
mov dword [esp + 0x28], 0xffffffff
mov eax, dword [esp + 0x3c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x433b27
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, 1
mov ecx, dword [esp + 0x20]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
add esp, 0x1c
ret 0x10