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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4689ae
mov eax, dword fs:[0]
push eax
sub esp, 0x320
mov eax, dword [0x4947b8]
xor eax, esp
mov dword [esp + 0x318], eax
push ebx
push esi
push edi
mov eax, dword [0x4947b8]
xor eax, esp
push eax
lea eax, [esp + 0x330]
mov dword fs:[0], eax
mov edi, ecx
mov dword [esp + 0x2c], edi
push dword [0x49e350]
lea eax, [edi + 0x160]
push str.Bootstrapper::parseCmdLine_params_counter___d
push eax
call fcn.00408e53
add esp, 0xc
cmp dword [0x49e350], 1
jne 0x416cfd
mov byte [edi + 0x47], 1
mov eax, dword [edi]
mov ebx, dword [0x49e358]
mov ecx, edi
call dword [eax + 0xd0]
mov esi, eax
push esi
call dword [sym.imp.KERNEL32.dll_lstrlenW]
push eax
push esi
push dword [ebx + 4]
call dword [sym.imp.SHLWAPI.dll_StrCmpNW]
test eax, eax
jne 0x417196
push dword [ebx + 4]
lea ecx, [esp + 0x60]
mov dword [esp + 0x2c], 0x2b
call fcn.004082fa
push ecx
lea eax, [esp + 0x2c]
xor ebx, ebx
push eax
lea edx, [esp + 0x64]
lea ecx, [esp + 0x40]
mov dword [esp + 0x340], ebx
call fcn.00429c61
pop ecx
pop ecx
push ebx
push 1
lea ecx, [esp + 0x64]
mov byte [esp + 0x340], 2
call fcn.004095c3
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], ebx
call fcn.0042081d
mov dword [esp + 0x14], eax
mov byte [esp + 0x338], 3
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x38]
sub eax, ecx
push 0x18
cdq
pop esi
idiv esi
mov dword [esp + 0x4c], esi
test eax, eax
je 0x416f69
mov esi, ebx
mov edi, ebx
lea eax, [esi + ecx]
push 0x47b128
mov dword [esp + 0x14], eax
call fcn.004010b3
pop ecx
mov ecx, dword [esp + 0x10]
push eax
push ebx
push 0x47b128
call fcn.00409520
mov dword [esp + 0x28], eax
cmp eax, 0xffffffff
je 0x416ea3
mov ecx, dword [esp + 0x10]
push eax
push ebx
lea eax, [esp + 0x64]
push eax
call fcn.0041edf0
mov byte [esp + 0x338], 4
cmp dword [esp + 0x70], 8
mov eax, dword [esp + 0x6c]
lea ecx, [esp + 0x5c]
cmovae ecx, dword [esp + 0x5c]
lea edx, [esp + 0x5c]
cmovae edx, dword [esp + 0x5c]
lea eax, [ecx + eax*2]
push edx
lea ecx, [esp + 0x60]
cmovae ecx, dword [esp + 0x60]
push eax
push ecx
lea ecx, [esp + 0x50]
call fcn.00420d7f
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x44]
add esp, 0xc
inc eax
push 0xffffffffffffffff
push eax
lea eax, [esp + 0x94]
lea ecx, [esi + ecx]
push eax
call fcn.0041edf0
lea eax, [esp + 0x8c]
push eax
lea edx, [esp + 0x60]
lea ecx, [esp + 0xa8]
mov byte [esp + 0x33c], 5
call fcn.00420dc5
pop ecx
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x33c], 6
call fcn.00422bf0
push eax
add eax, 0x10
push eax
push ecx
lea eax, [esp + 0x80]
push eax
lea ecx, [esp + 0x24]
call fcn.00422c2a
lea ecx, [esp + 0xa4]
call fcn.00407027
lea ecx, [esp + 0x8c]
jmp 0x416f2c
push dword [esp + 0x10]
lea ecx, [esp + 0x60]
call fcn.004082d2
mov byte [esp + 0x338], 7
cmp dword [esp + 0x70], 8
mov eax, dword [esp + 0x6c]
lea ecx, [esp + 0x5c]
cmovae ecx, dword [esp + 0x5c]
lea edx, [esp + 0x5c]
cmovae edx, dword [esp + 0x5c]
lea eax, [ecx + eax*2]
push edx
lea ecx, [esp + 0x60]
cmovae ecx, dword [esp + 0x60]
push eax
push ecx
lea ecx, [esp + 0x28]
call fcn.00420d7f
add esp, 8
lea edx, [esp + 0x60]
lea ecx, [esp + 0xa8]
call fcn.00420e17
pop ecx
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x33c], 8
call fcn.00422ce7
push eax
add eax, 0x10
push eax
push ecx
lea eax, [esp + 0x60]
push eax
lea ecx, [esp + 0x24]
call fcn.00422c2a
lea ecx, [esp + 0xa4]
push ebx
push 1
call fcn.004095c3
push ebx
push 1
lea ecx, [esp + 0x64]
mov byte [esp + 0x340], 3
call fcn.004095c3
mov ecx, dword [esp + 0x38]
push 0x18
pop eax
add esi, eax
mov eax, dword [esp + 0x3c]
sub eax, ecx
cdq
idiv dword [esp + 0x4c]
inc edi
cmp edi, eax
jb 0x416da8
mov edi, dword [esp + 0x2c]
push 0x47b12c
lea ecx, [esp + 0x90]
call fcn.004082fa
lea eax, [esp + 0x8c]
push eax
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x1c]
call fcn.0041f5ac
mov esi, dword [eax]
push ebx
push 1
lea ecx, [esp + 0x94]
call fcn.004095c3
cmp esi, dword [esp + 0x14]
je 0x416fe7
lea edx, [esi + 0x28]
lea ecx, [esp + 0x5c]
call fcn.0042974d
lea esi, [edi + 0xec]
push eax
mov ecx, esi
call fcn.00407ded
lea ecx, [esp + 0x5c]
call fcn.00407e25
cmp dword [esi + 0x14], 0x10
jb 0x416fd2
mov esi, dword [esi]
push esi
lea eax, [edi + 0x160]
push str.Bootstrapper::parseCmdLine:_browserTracerId__value___s
push eax
call fcn.00408e53
add esp, 0xc
push str.launchtime
lea ecx, [esp + 0x90]
call fcn.004082fa
lea eax, [esp + 0x8c]
push eax
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x1c]
call fcn.0041f5ac
mov esi, dword [eax]
push ebx
push 1
lea ecx, [esp + 0x94]
call fcn.004095c3
cmp esi, dword [esp + 0x14]
je 0x417114
cmp dword [esi + 0x3c], 8
jb 0x417034
mov ecx, dword [esi + 0x28]
jmp 0x417037
lea ecx, [esi + 0x28]
mov eax, dword [esi + 0x38]
mov dword [esp + 0x74], ecx
lea eax, [ecx + eax*2]
mov dword [esp + 0x78], eax
lea eax, [esp + 0x54]
push eax
lea ecx, [esp + 0x78]
call fcn.0042332b
test al, al
je 0x417159
push ecx
mov ecx, esp
push 1
call fcn.00412e8c
push ecx
mov ecx, esp
push ecx
push 1
call fcn.00412ef0
mov ecx, esp
push 0x7b2
call fcn.00412eba
lea ecx, [esp + 0x50]
call fcn.00412f1e
mov eax, dword [eax]
mov dword [esp + 0x2c], eax
push ecx
lea eax, [esp + 0x50]
push eax
lea eax, [esp + 0x34]
xorps xmm0, xmm0
push eax
lea ecx, [esp + 0x28]
movlpd qword [esp + 0x58], xmm0
call fcn.0041ee21
lea ecx, [esp + 0x44]
call fcn.0041fa42
lea ecx, [esp + 0x44]
call fcn.004203a1
test al, al
jne 0x4170cb
lea ecx, [esp + 0x1c]
call fcn.004203a1
test al, al
je 0x417114
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x20]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0x20], eax
lea eax, [esp + 0x2c]
push eax
lea eax, [esp + 0x58]
push eax
lea ecx, [esp + 0x24]
call fcn.004213fd
push dword [eax + 4]
push dword [eax]
call fcn.0041fe31
pop ecx
pop ecx
push eax
lea ecx, [esp + 0x78]
call fcn.00412ff6
mov eax, dword [edi]
lea ecx, [esp + 0x14]
push ecx
mov ecx, edi
call dword [eax + 0xf8]
lea ecx, [esp + 0x14]
call fcn.0041f583
lea ecx, [esp + 0x38]
call fcn.0041f54b
mov ecx, dword [esp + 0x330]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x318]
xor ecx, esp
call fcn.004492e4
mov esp, ebp
pop ebp
ret
push str.bad_cast
lea ecx, [esp + 0x78]
call fcn.0044930e
mov dword [esp + 0x74], vtable.boost::bad_lexical_cast.0
mov dword [esp + 0x80], 0x496a90
mov dword [esp + 0x84], 0x496ae0
lea ecx, [esp + 0x74]
mov byte [esp + 0x338], 9
call fcn.004232f8
xor eax, eax
inc eax
mov dword [esp + 0x10], eax
cmp dword [0x49e350], eax
jle 0x417135
xor ebx, ebx
mov eax, dword [0x49e358]
mov ecx, dword [esp + 0x10]
mov esi, dword [eax + ecx*4]
push esi
push ecx
lea eax, [edi + 0x160]
push str.Bootstrapper::parseCmdLine_paramIndex___d__value___S
push eax
call fcn.00408e53
add esp, 0x10
mov edx, str._wait
mov ecx, esi
call fcn.0040c561
test eax, eax
jne 0x41720b
mov ecx, dword [esp + 0x10]
lea eax, [ecx + 1]
cmp eax, dword [0x49e350]
jge 0x41764e
mov eax, dword [0x49e358]
push dword [eax + ecx*4 + 4]
call fcn.0044ae8b
pop ecx
push eax
call dword [sym.imp.KERNEL32.dll_Sleep]
inc dword [esp + 0x10]
jmp 0x417634
mov edx, str._ide
mov ecx, esi
call fcn.0040c561
test eax, eax
jne 0x4173a3
lea eax, [edi + 0x160]
push str.option:_ide
push eax
call fcn.00408e53
pop ecx
pop ecx
push 0x47565c
lea ecx, [esp + 0x90]
mov dword [edi + 0x3c], 1
call fcn.00407d9b
lea edx, [esp + 0x8c]
lea ecx, [esp + 0x5c]
mov dword [esp + 0x338], 0xb
call fcn.004297c4
lea esi, [edi + 0x148]
push eax
mov ecx, esi
call fcn.00408350
push ebx
push 1
lea ecx, [esp + 0x64]
call fcn.004095c3
or dword [esp + 0x338], 0xffffffff
lea ecx, [esp + 0x8c]
call fcn.00407e25
mov ecx, dword [esp + 0x10]
lea edx, [ecx + 1]
cmp edx, dword [0x49e350]
jge 0x417634
mov eax, dword [0x49e358]
mov eax, dword [eax + ecx*4 + 4]
cmp word [eax], 0x2d
je 0x417634
lea eax, [esp + 0xd4]
push eax
mov eax, dword [0x49e358]
mov dword [esp + 0x14], edx
push dword [eax + edx*4]
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
cmp eax, 0xffffffff
je 0x417634
push 0x47a4f8
call fcn.004010b3
pop ecx
push eax
push 0x47a4f8
mov ecx, esi
call fcn.0040b363
push str._fileLocation
lea ecx, [esp + 0x78]
call fcn.00407d9b
lea edx, [esp + 0x74]
lea ecx, [esp + 0xa4]
mov dword [esp + 0x338], 0xc
call fcn.004297c4
push 0xffffffffffffffff
push ebx
push eax
mov ecx, esi
mov byte [esp + 0x344], 0xd
call fcn.004093e7
push ebx
push 1
lea ecx, [esp + 0xac]
call fcn.004095c3
or dword [esp + 0x338], 0xffffffff
lea ecx, [esp + 0x74]
call fcn.00407e25
push 0x47b200
call fcn.004010b3
pop ecx
push eax
push 0x47b200
mov ecx, esi
call fcn.0040b363
mov ecx, dword [0x49e358]
mov eax, dword [esp + 0x10]
mov esi, dword [ecx + eax*4]
push esi
call fcn.004010b3
pop ecx
push eax
push esi
lea esi, [edi + 0x148]
mov ecx, esi
call fcn.0040b363
push 0x47a4f4
call fcn.004010b3
pop ecx
push eax
push 0x47a4f4
mov ecx, esi
jmp 0x41762f
mov edx, 0x47b208
mov ecx, esi
call fcn.0040c561
test eax, eax
jne 0x4173ce
lea eax, [edi + 0x160]
push str.option:_q
push eax
call fcn.00408e53
pop ecx
pop ecx
mov byte [edi + 0x4b], bl
jmp 0x417634
mov edx, str._qbg
mov ecx, esi
call fcn.0040c561
test eax, eax
jne 0x4173fc
lea eax, [edi + 0x160]
push str.option:_qbg
push eax
call fcn.00408e53
pop ecx
pop ecx
mov word [edi + 0x4b], 0x100
jmp 0x417634
mov edx, str._qbgnorun
mov ecx, esi
call fcn.0040c561
test eax, eax
jne 0x417431
lea eax, [edi + 0x160]
push str.option:_qbgnorun
push eax
call fcn.00408e53
pop ecx
pop ecx
mov word [edi + 0x4b], 0x100
mov byte [edi + 0xa0], 1
jmp 0x417634
mov edx, str._alluser
mov ecx, esi
call fcn.0040c561
test eax, eax
jne 0x41745c
lea eax, [edi + 0x160]
push str.option:_alluser
push eax
call fcn.00408e53
pop ecx
pop ecx
mov byte [edi + 0x4d], bl
jmp 0x417634
mov edx, str._browser
mov ecx, esi
call fcn.0040c561
test eax, eax
jne 0x41748b
lea eax, [edi + 0x160]
push str.option:_browser
push eax
call fcn.00408e53
mov dword [edi + 0x3c], 1
mov esi, str._browser
jmp 0x4174b5
mov edx, str._uninstall
mov ecx, esi
call fcn.0040c561
test eax, eax
jne 0x4174d0
lea eax, [edi + 0x160]
push str.option:_Uninstall
push eax
call fcn.00408e53
mov byte [edi + 0x48], 1
mov esi, 0x477da8
push esi
call fcn.004010b3
add esp, 0xc
lea ecx, [edi + 0x148]
push eax
push esi
call fcn.0040a09d
jmp 0x417634
mov edx, str._install
mov ecx, esi
call fcn.0040c561
test eax, eax
jne 0x4174f7
lea eax, [edi + 0x160]
push str.option:_Install
push eax
call fcn.00408e53
mov byte [edi + 0x51], 1
jmp 0x41751c
mov edx, str._failIfNotUpToDate
mov ecx, esi
call fcn.0040c561
test eax, eax
jne 0x417543
lea eax, [edi + 0x160]
push str.option:_FailIfNotUpToDate
push eax
call fcn.00408e53
mov byte [edi + 0x49], 1
mov esi, 0x477da8
push esi
call fcn.004010b3
add esp, 0xc
lea ecx, [edi + 0x148]
push eax
push esi
call fcn.0040a09d
mov dword [edi + 0x3c], 0xa
jmp 0x417634
mov edx, str._force
mov ecx, esi
call fcn.0040c561
test eax, eax
jne 0x41756f
lea eax, [edi + 0x160]
push str.option:_force
push eax
call fcn.00408e53
pop ecx
pop ecx
mov byte [edi + 0x46], 1
jmp 0x417634
mov edx, str._debug
mov ecx, esi
call fcn.0040c561
test eax, eax
jne 0x41759b
lea eax, [edi + 0x160]
push str.option:_debug
push eax
call fcn.00408e53
pop ecx
pop ecx
mov byte [edi + 0x4a], 1
jmp 0x417634
mov edx, str._prePlay
mov ecx, esi
call fcn.0040c561
test eax, eax
jne 0x4175dd
lea eax, [edi + 0x160]
push str.option:_prePlay
push eax
call fcn.00408e53
mov esi, str._nop
push esi
call fcn.004010b3
add esp, 0xc
lea ecx, [edi + 0x148]
push eax
push esi
call fcn.0040a09d
mov byte [edi + 0x50], 1
jmp 0x417634
push dword [0x49e350]
mov eax, dword [edi]
lea ecx, [esp + 0x14]
push ecx
push dword [0x49e358]
mov ecx, edi
call dword [eax + 0xfc]
test al, al
jne 0x417634
cmp dword [edi + 0x158], ebx
je 0x417620
push 0x47a4f8
call fcn.004010b3
pop ecx
push eax
push 0x47a4f8
lea ecx, [edi + 0x148]
call fcn.0040b363
push esi
call fcn.004010b3
pop ecx
push eax
push esi
lea ecx, [edi + 0x148]
call fcn.0040b363
mov ecx, dword [esp + 0x10]
inc ecx
mov dword [esp + 0x10], ecx
cmp ecx, dword [0x49e350]
jl 0x4171a7
jmp 0x417135
push esi
lea eax, [esp + 0x90]
push str.Bad_argument__s
push eax
call fcn.004299b0
add esp, 0xc
push eax
lea ecx, [esp + 0x3c]
mov dword [esp + 0x33c], 0xa
call fcn.00401208
push 0x488818
lea eax, [esp + 0x3c]
push eax
call fcn.0044e4d3
int3