Function at 0x471c30
Capabilities:
Access peb ldr_data
Get number of processors

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4c9c6c
mov eax, dword fs:[0]
push eax
sub esp, 0x288
mov eax, dword [0x53856c]
xor eax, esp
mov dword [esp + 0x280], eax
push ebx
push esi
push edi
mov eax, dword [0x53856c]
xor eax, esp
push eax
lea eax, [esp + 0x298]
mov dword fs:[0], eax
mov eax, dword [ebp + 0xc]
mov ebx, dword [ebp + 8]
push 0x206
mov esi, edx
mov dword [esp + 0x24], eax
xor edi, edi
lea eax, [esp + 0x8a]
xor edx, edx
push edi
push eax
mov dword [esp + 0x30], esi
mov dword [esp + 0x34], ecx
mov word [esp + 0x90], dx
call fcn.004ad860
mov ecx, dword [esi + 0x24c]
mov edx, dword [ebp + 0x10]
mov eax, dword [ecx]
add esp, 0xc
push edx
mov edx, dword [eax + 0x10]
call edx
push eax
push 0x526aec
lea eax, [esp + 0x90]
push 0x104
push eax
call fcn.004aafd2
add esp, 0x14
mov dword [esp + 0x7c], 0x51f6c8
mov dword [esp + 0x80], edi
add esi, 0xc
mov dword [esp + 0x2a0], edi
push ebx
mov edi, esi
mov dword [esp + 0x40], esi
call fcn.0043a1f0
test al, al
je 0x471d5f
mov edx, dword [esp + 0x28]
lea ecx, [esp + 0x17]
push ecx
mov ecx, dword [esp + 0x28]
push edx
lea eax, [esp + 0x8c]
push eax
push ecx
mov ecx, ebx
mov dword [esp + 0x90], esi
mov byte [esp + 0x27], 0
call fcn.00471a90
test al, al
jne 0x471d72
mov ecx, ebx
call fcn.004384d0
push 0x526b8c
push case.0x44a944.0
mov edx, eax
call fcn.004397d0
add esp, 8
mov dword [esp + 0x2a0], 0xffffffff
test esi, esi
je 0x471d58
call fcn.0043a330
xor al, al
jmp 0x472250
push 0x526b6c
push ebx
call fcn.00438580
add esp, 8
jmp 0x472250
cmp byte [esp + 0x17], 0
je 0x471d80
test esi, esi
jmp 0x47223c
xor eax, eax
mov byte [esp + 0x15], 0
mov dword [esp + 0x40], str.UrlGuide_AutoUpdate
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], eax
mov edi, dword [esp + 0x20]
push edi
push ebx
lea ecx, [esp + 0x48]
mov byte [esp + 0x2a8], 1
mov byte [esp + 0x1e], al
call fcn.004455f0
test al, al
jne 0x471de5
mov ecx, edi
call fcn.00434f70
test al, al
je 0x471e1c
mov ecx, edi
call fcn.00439760
push eax
push 0x526ba0
mov ecx, ebx
call fcn.00408400
mov ecx, eax
call fcn.00438920
jmp 0x4721fe
push 0x2c
lea edx, [esp + 0x54]
push edx
push ebx
lea ecx, [esp + 0x4c]
mov byte [esp + 0x22], 1
call fcn.0048df50
test al, al
sete al
test al, al
je 0x471e27
mov ecx, edi
call fcn.00439760
push eax
push 0x526bb8
push ebx
call fcn.00438580
add esp, 0xc
jmp 0x471e98
xor esi, esi
mov dword [esp + 0x64], esi
jmp 0x471eb6
mov eax, dword [esp + 0x24]
mov ecx, dword [eax + 0x24c]
mov edx, dword [esp + 0x54]
cmp edx, dword [ecx + 4]
je 0x471e52
mov ecx, edi
call fcn.00439760
push eax
push 0x526be8
push ebx
call fcn.00438580
add esp, 0xc
jmp 0x471e98
mov eax, dword [esp + 0x60]
mov esi, dword [esp + 0x5c]
mov ecx, dword [esp + 0x64]
imul eax, esi
add eax, dword [esp + 0x50]
add eax, ecx
cmp dword [esp + 0x68], eax
je 0x471e85
mov ecx, edi
call fcn.00439760
push eax
push 0x526c1c
push ebx
call fcn.00438580
add esp, 0xc
jmp 0x471e98
cmp eax, 0x200000
jbe 0x471eca
push 0x526c54
mov ecx, ebx
call fcn.00408400
mov ecx, ebx
call fcn.00438770
mov ecx, ebx
call fcn.00438520
xor esi, esi
mov dword [esp + 0x64], esi
mov byte [esp + 0x16], 0
mov byte [esp + 0x15], 0
mov dword [esp + 0x5c], esi
mov dword [esp + 0x60], 0x18
mov dword [esp + 0x58], 0x132420d
mov ecx, dword [esp + 0x64]
lea eax, [esi + 0x64]
add ecx, 0x3200
lea edx, [eax + eax*2]
lea eax, [ecx + edx*8 + 0x10]
push eax
mov dword [esp + 0x30], ecx
mov dword [esp + 0x2c], eax
call fcn.004aada2
mov edi, eax
add esp, 4
mov dword [esp + 0x18], edi
test edi, edi
jne 0x471f03
mov byte [esp + 0x15], 1
jmp 0x4721e2
mov dword [esp + 0x34], 0x526fb0
mov dword [esp + 0x38], edi
cmp byte [esp + 0x16], 0
mov byte [esp + 0x2a0], 2
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x2c]
mov dword [edi + 4], eax
lea eax, [esi + 0x64]
mov dword [edi], esi
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
je 0x4720d7
mov eax, dword [esp + 0x60]
mov byte [esp + 0x16], 1
cmp eax, 0x18
ja 0x471fc8
mov eax, dword [esp + 0x38]
lea edx, [esi + esi*2]
add edx, edx
add edx, edx
add edx, edx
push edx
add eax, 0x10
push 0
push eax
call fcn.004ad860
add esp, 0xc
mov dword [esp + 0x1c], 0
test esi, esi
jle 0x472056
mov eax, dword [esp + 0x38]
xor edi, edi
lea esp, [esp]
mov ecx, dword [esp + 0x60]
push ecx
lea edx, [edi + eax + 0x10]
push edx
push ebx
lea ecx, [esp + 0x4c]
call fcn.0048df50
test al, al
sete al
test al, al
jne 0x472052
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x64]
cmp dword [edi + eax + 0x10], ecx
jae 0x472052
mov ecx, dword [esp + 0x1c]
inc ecx
add edi, 0x18
cmp ecx, esi
mov dword [esp + 0x1c], ecx
jl 0x471f80
jmp 0x47206f
push eax
call fcn.004ad224
mov edi, eax
xor eax, eax
add esp, 4
cmp esi, eax
mov dword [esp + 0x1c], eax
jle 0x472042
mov dword [esp + 0x2c], eax
mov edx, dword [esp + 0x60]
push edx
push edi
push ebx
lea ecx, [esp + 0x4c]
call fcn.0048df50
test al, al
sete al
mov byte [esp + 0x16], al
test al, al
jne 0x472042
mov eax, dword [esp + 0x38]
mov edx, dword [edi]
mov ecx, dword [esp + 0x2c]
mov dword [ecx + eax + 0x10], edx
mov edx, dword [edi + 4]
lea eax, [ecx + eax + 0x10]
mov dword [eax + 4], edx
mov edx, dword [edi + 8]
mov dword [eax + 8], edx
mov edx, dword [edi + 0xc]
mov dword [eax + 0xc], edx
mov edx, dword [edi + 0x10]
mov dword [eax + 0x10], edx
mov edx, dword [edi + 0x14]
mov dword [eax + 0x14], edx
mov eax, dword [esp + 0x1c]
inc eax
add ecx, 0x18
cmp eax, esi
mov dword [esp + 0x1c], eax
mov dword [esp + 0x2c], ecx
jl 0x471fe1
push edi
call fcn.004ad219
add esp, 4
cmp byte [esp + 0x16], 0
je 0x47206b
mov edi, dword [esp + 0x18]
push 0x526c6c
push ebx
call fcn.00438580
add esp, 8
mov byte [esp + 0x15], 1
jmp 0x4720d7
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0x64]
test edx, edx
jbe 0x4720d3
mov ecx, dword [eax + 8]
lea ecx, [ecx + ecx*2]
lea eax, [eax + ecx*8 + 0x10]
push edx
push eax
push ebx
lea ecx, [esp + 0x4c]
call fcn.0048df50
test al, al
jne 0x4720a4
push 0x526c98
push ebx
call fcn.00438580
add esp, 8
mov byte [esp + 0x15], 1
lea edi, [esp + 0x34]
call fcn.00473c10
test al, al
jne 0x4720d3
mov ecx, dword [esp + 0x20]
call fcn.00439760
push eax
push 0x526cd0
mov ecx, ebx
call fcn.00408400
mov ecx, eax
call fcn.00438920
mov byte [esp + 0x15], 1
mov edi, dword [esp + 0x18]
cmp byte [esp + 0x15], 0
mov byte [esp + 0x2a0], 1
mov dword [esp + 0x34], 0x526f98
jne 0x4721e2
mov dword [esp + 0x30], 0
mov dword [esp + 0x2c], 0x4dae98
push ebx
mov edi, 0x53ff80
mov byte [esp + 0x2a4], 3
call fcn.0043a1f0
test al, al
je 0x472165
mov eax, dword [esp + 0x24]
cmp dword [eax + 0x228], 0
mov dword [esp + 0x30], edi
je 0x472139
lea esi, [eax + 0x224]
call fcn.0043b570
mov eax, dword [esp + 0x24]
mov edi, dword [esp + 0x28]
lea esi, [eax + 0x224]
add edi, 0x208
push ebx
mov cl, 1
lea edx, [esp + 0x88]
mov eax, esi
call fcn.00443650
test al, al
jne 0x47217a
mov byte [esp + 0x15], 1
jmp 0x4721c9
push 0x526cec
push ebx
call fcn.00438580
add esp, 8
mov byte [esp + 0x15], 1
jmp 0x4721c9
mov eax, dword [esi + 8]
test eax, eax
jne 0x472185
xor edi, edi
jmp 0x472188
lea edi, [eax + 8]
mov ecx, dword [esp + 0x20]
call fcn.00439760
push eax
push 0x104
push edi
call fcn.004ab011
mov edx, dword [esp + 0x34]
mov eax, dword [esp + 0x24]
add esp, 0xc
push edx
push eax
add edi, 0x208
push edi
call fcn.004ad8e0
add esp, 0xc
cmp dword [esi + 4], 0
je 0x4721c9
mov esi, dword [esi + 8]
mov dword [esi + 4], 1
mov byte [esp + 0x2a0], 1
mov edi, dword [esp + 0x30]
test edi, edi
je 0x4721de
call fcn.0043a330
mov edi, dword [esp + 0x18]
test edi, edi
je 0x4721ef
push edi
call fcn.004aacc5
add esp, 4
cmp byte [esp + 0x15], 0
je 0x47222d
mov esi, dword [esp + 0x3c]
mov edi, dword [esp + 0x20]
call fcn.00437c50
mov ecx, ebx
call fcn.00438770
lea ecx, [esp + 0x40]
call fcn.004455b0
mov dword [esp + 0x2a0], 0xffffffff
test esi, esi
je 0x472229
mov edi, esi
call fcn.0043a330
xor al, al
jmp 0x472250
lea ecx, [esp + 0x40]
call fcn.004455b0
mov edi, dword [esp + 0x3c]
test edi, edi
mov dword [esp + 0x2a0], 0xffffffff
je 0x47224e
call fcn.0043a330
mov al, 1
mov ecx, dword [esp + 0x298]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x280]
xor ecx, esp
call fcn.004aac2b
mov esp, ebp
pop ebp
ret 0xc