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

Disassembly:
push 0x184
mov eax, 0x60b4a2
call fcn.0042d958
mov ebx, ecx
mov dword [ebp - 0x18c], ebx
call fcn.0040f50b
mov byte [ebp - 0x185], al
test al, al
jne 0x410686
mov esi, 0x8004ee05
mov dword [ebp - 0x180], esi
mov byte [ebp - 0x65], 0
jmp 0x41072d
cmp dword [ebx + 0x74], 1
je 0x410692
cmp dword [ebx + 0x74], 2
jne 0x410697
call fcn.00411e80
lea eax, [ebp - 0xe4]
mov byte [ebp - 0x65], 0
mov dword [ebp - 0xe4], vtable.std::_Func_impl_no_alloc_class__lambda_d9529c606a8347c7aebc3448db82f05e___void__class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const__.0
mov dword [ebp - 0xc0], eax
and dword [ebp - 4], 0
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x3c], vtable.std::_Func_impl_no_alloc_class__lambda_0dcbc077c8888dd6053e00addd9b53bc___void__unsigned_long_long_unsigned___int64___long_int_.0
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0xe4]
mov byte [ebp - 4], 1
push eax
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp - 0x65]
push eax
call fcn.004c9b1f
lea ecx, [ebp - 0x3c]
mov esi, eax
call fcn.00414116
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xe4]
call fcn.00414116
test esi, esi
jns 0x4106fe
push esi
push ecx
call 0x4069ee
cmp byte [ebp - 0x65], 0
je 0x41070e
mov esi, 0x8004ee07
jmp 0x410677
mov ecx, ebx
call fcn.0040fa5f
mov esi, eax
mov edx, 0x454
push esi
push ecx
mov dword [ebp - 0x180], esi
call fcn.00405c09
mov byte [ebp - 0x65], 1
push esi
call fcn.004a48a6
test al, al
je 0x41078f
mov edi, dword [ebx + 0x40]
mov eax, dword [edi]
mov esi, dword [eax + 0x28]
mov ecx, esi
call dword [0x62c6dc]
mov ecx, edi
call esi
mov bl, al
mov byte [ebp - 0x184], bl
push dword [ebp - 0x184]
push ecx
call 0x406853
test bl, bl
je 0x410784
mov ecx, dword [ebp - 0x18c]
call fcn.0040fa5f
mov esi, eax
mov edx, 0x466
push esi
push ecx
mov dword [ebp - 0x180], esi
call fcn.00405c09
jmp 0x41078f
mov esi, 0x8004ee39
mov dword [ebp - 0x180], esi
xor ebx, ebx
push esi
mov byte [ebp - 0x184], bl
mov byte [ebp - 0x190], bl
call fcn.004a48a6
test al, al
jne 0x4107b3
cmp esi, 0x8004ee39
jne 0x410c36
call fcn.004c12ba
mov edi, eax
mov ecx, dword [edi]
mov esi, dword [ecx + 0x11c]
mov ecx, esi
call dword [0x62c6dc]
mov ecx, edi
call esi
test al, al
je 0x410c36
push 7
pop edx
xor eax, eax
mov dword [ebp - 0xd4], ebx
mov dword [ebp - 0xc4], ebx
mov dword [ebp - 0xc0], edx
mov word [ebp - 0xd4], ax
push 2
pop ecx
mov dword [ebp - 4], ecx
mov dword [ebp - 0xb8], ebx
mov dword [ebp - 0xa8], ebx
mov dword [ebp - 0xa4], edx
mov word [ebp - 0xb8], ax
push ebx
push ecx
push 1
push 0x30066fc6
push 0x677a4c
push str.StandaloneUpdater::RunUpdaterMode
push 0x476
push str.d:dbs_shodct1105_210049_0cmd7clientonedriveProductStandaloneUpdater_standaloneupdaterlibStandaloneUpdater.cpp
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 3
call fcn.0045dd2d
push ebx
lea eax, [ebp - 0x34]
push eax
call fcn.0045ea98
call fcn.0045e7ff
lea eax, [ebp - 0xb8]
push eax
lea eax, [ebp - 0xd4]
push eax
push 0x6bde50
call fcn.004a63dc
mov dword [ebp - 0x178], eax
test eax, eax
jns 0x410879
push eax
push ecx
mov edx, 0x47b
call fcn.0040a4f7
mov edi, dword [0x6b5c44]
mov dword [ebp - 0x17c], ebx
mov eax, dword [edi]
mov esi, dword [eax + 0x48]
lea eax, [ebp - 0x17c]
push eax
mov ecx, esi
call dword [0x62c6dc]
mov ecx, edi
call esi
cmp dword [ebp - 0x17c], 0
mov esi, eax
mov dword [ebp - 0x6c], esi
je 0x4108ed
test esi, esi
js 0x4108ed
mov edi, dword [0x6b5c4c]
push dword [ebp - 0x17c]
mov edx, dword [edi]
mov esi, dword [edx + 4]
mov ecx, esi
call dword [0x62c6dc]
mov ecx, edi
call esi
test eax, eax
jne 0x4108f6
call dword [sym.imp.KERNEL32.dll_GetLastError]
movzx esi, ax
or esi, 0x80070000
test eax, eax
cmovle esi, eax
push esi
push ecx
call 0x40a560
jmp 0x4108f9
push esi
push ecx
call 0x40a5cd
jmp 0x4108f9
mov esi, dword [ebp - 0x6c]
push 7
pop ecx
xor eax, eax
mov dword [ebp - 0xa0], ebx
mov dword [ebp - 0x90], ebx
mov dword [ebp - 0x8c], ecx
mov word [ebp - 0xa0], ax
mov dword [ebp - 0x88], ebx
mov dword [ebp - 0x78], ebx
mov dword [ebp - 0x74], ecx
mov word [ebp - 0x88], ax
mov byte [ebp - 4], 5
test esi, esi
js 0x410ab0
push ebx
push 2
push 1
push 0x30066fc7
push 0x677a4c
push str.StandaloneUpdater::RunUpdaterMode
push 0x492
push str.d:dbs_shodct1105_210049_0cmd7clientonedriveProductStandaloneUpdater_standaloneupdaterlibStandaloneUpdater.cpp
lea ecx, [ebp - 0x34]
call fcn.0045dd2d
push ebx
lea eax, [ebp - 0x34]
push eax
call fcn.0045ea98
call fcn.0045e7ff
lea eax, [ebp - 0x88]
push eax
lea eax, [ebp - 0xa0]
push eax
push 0x6bde50
call fcn.004a63dc
mov dword [ebp - 0x6c], eax
test eax, eax
jns 0x410996
push eax
push ecx
mov edx, 0x497
call fcn.0040a4f7
mov edi, dword [0x6b5c4c]
mov eax, dword [edi]
mov esi, dword [eax + 8]
mov ecx, esi
call dword [0x62c6dc]
mov ecx, edi
call esi
cmp dword [ebp - 0x6c], 0
jl 0x410ab0
cmp dword [ebp - 0x178], 0
jl 0x410a30
cmp dword [ebp - 0xc0], 8
lea eax, [ebp - 0xd4]
mov edx, dword [ebp - 0x90]
lea ecx, [ebp - 0xa0]
cmovae eax, dword [ebp - 0xd4]
cmp dword [ebp - 0x8c], 8
mov byte [ebp - 0x184], 1
cmovae ecx, dword [ebp - 0xa0]
cmp edx, dword [ebp - 0xc4]
jne 0x410a30
test edx, edx
je 0x411085
movzx esi, word [ecx]
movzx edi, word [eax]
cmp si, di
jb 0x410a30
sub ecx, eax
cmp si, di
ja 0x410a30
cmp edx, 1
je 0x411085
add eax, 2
dec edx
movzx esi, word [ecx + eax]
movzx edi, word [eax]
cmp si, di
jae 0x410a15
push ebx
push 2
push 1
push 0x30066fcb
push 0x677a4c
push str.StandaloneUpdater::RunUpdaterMode
push 0x4a6
push str.d:dbs_shodct1105_210049_0cmd7clientonedriveProductStandaloneUpdater_standaloneupdaterlibStandaloneUpdater.cpp
lea ecx, [ebp - 0x34]
call fcn.0045dd2d
push ebx
lea eax, [ebp - 0x34]
push eax
call fcn.0045ea98
call fcn.0045e7ff
mov eax, dword [ebp - 0x18c]
mov edi, dword [eax + 0x24]
mov eax, dword [edi]
mov esi, dword [eax + 0x18]
lea eax, [ebp - 0x88]
push eax
lea eax, [ebp - 0xa0]
mov ecx, esi
push eax
call dword [0x62c6dc]
mov ecx, edi
call esi
mov ecx, dword [ebp - 0x18c]
call fcn.0040fa5f
push eax
push ecx
mov edx, 0x4a9
mov dword [ebp - 0x180], eax
call fcn.00405c09
mov byte [ebp - 0x190], bl
cmp dword [ebp - 0x180], 0
jge 0x410ad0
mov edi, dword [0x6b5c44]
mov eax, dword [edi]
mov esi, dword [eax + 0x4c]
mov ecx, esi
call dword [0x62c6dc]
mov ecx, edi
call esi
mov eax, dword [ebp - 0x74]
mov esi, 0x1000
push 8
pop edi
cmp eax, edi
jb 0x410b1b
mov ecx, dword [ebp - 0x88]
lea eax, [eax*2 + 2]
mov dword [ebp - 0x178], eax
mov dword [ebp - 0x6c], ecx
cmp eax, esi
jb 0x410b12
lea eax, [ebp - 0x178]
push eax
lea eax, [ebp - 0x6c]
push eax
call fcn.00415d5a
mov eax, dword [ebp - 0x178]
mov ecx, dword [ebp - 0x6c]
push eax
push ecx
call fcn.0042d678
pop ecx
pop ecx
xor eax, eax
mov dword [ebp - 0x78], ebx
mov word [ebp - 0x88], ax
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0x74], 7
cmp eax, edi
jb 0x410b74
mov ecx, dword [ebp - 0xa0]
lea eax, [eax*2 + 2]
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x178], ecx
cmp eax, esi
jb 0x410b6b
lea eax, [ebp - 0x6c]
push eax
lea eax, [ebp - 0x178]
push eax
call fcn.00415d5a
mov eax, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x178]
push eax
push ecx
call fcn.0042d678
pop ecx
pop ecx
xor eax, eax
mov dword [ebp - 0x90], ebx
mov word [ebp - 0xa0], ax
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0x8c], 7
cmp eax, edi
jb 0x410bd3
mov ecx, dword [ebp - 0xb8]
lea eax, [eax*2 + 2]
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x178], ecx
cmp eax, esi
jb 0x410bca
lea eax, [ebp - 0x6c]
push eax
lea eax, [ebp - 0x178]
push eax
call fcn.00415d5a
mov eax, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x178]
push eax
push ecx
call fcn.0042d678
pop ecx
pop ecx
or dword [ebp - 4], 0xffffffff
xor eax, eax
mov word [ebp - 0xb8], ax
mov eax, dword [ebp - 0xc0]
mov dword [ebp - 0xa8], ebx
mov dword [ebp - 0xa4], 7
cmp eax, edi
jb 0x410c36
mov ecx, dword [ebp - 0xd4]
lea eax, [eax*2 + 2]
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x178], ecx
cmp eax, esi
jb 0x410c2d
lea eax, [ebp - 0x6c]
push eax
lea eax, [ebp - 0x178]
push eax
call fcn.00415d5a
mov eax, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x178]
push eax
push ecx
call fcn.0042d678
pop ecx
pop ecx
call fcn.004c12ba
mov edi, eax
mov ecx, dword [edi]
mov esi, dword [ecx + 0x11c]
mov ecx, esi
call dword [0x62c6dc]
mov ecx, edi
call esi
mov esi, 0x676a10
mov edi, 0x677a8c
test al, al
je 0x410d5f
mov ecx, dword [ebp - 0x180]
call fcn.004197e1
test al, al
je 0x410ca3
cmp ecx, 0x8004ee39
je 0x410ca3
call fcn.004c12ba
mov edi, eax
mov ecx, dword [edi]
mov esi, dword [ecx + 8]
mov ecx, esi
call dword [0x62c6dc]
mov ecx, edi
call esi
push eax
push ecx
call 0x40b053
mov esi, 0x676a10
mov edi, 0x677a8c
lea eax, [ebp - 0x6c]
mov byte [ebp - 0x6d], bl
push eax
lea eax, [ebp - 0x6d]
mov byte [ebp - 0x6c], bl
push eax
call fcn.0048de18
cmp byte [ebp - 0x6d], 0
mov ecx, eax
je 0x410d5f
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push esi
push esi
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push esi
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push esi
push 0x676a14
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push esi
push esi
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push esi
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push esi
push ebx
push ebx
push ebx
push esi
push ebx
push esi
push ebx
push ebx
push esi
push ebx
push esi
push edi
push edi
push edi
push ebx
push ebx
push dword [ebp - 0x6c]
test ecx, ecx
mov edx, str.UnexpectedFailure
mov eax, str.Success
cmovs eax, edx
mov edx, 0x4cb
push eax
push ecx
push str.ODSUPerMachineUpdateScheduledTaskResult
push 0x6755b0
push str.StandaloneUpdater::RunUpdaterMode
mov ecx, str.d:dbs_shodct1105_210049_0cmd7clientonedriveProductStandaloneUpdater_standaloneupdaterlibStandaloneUpdater.cpp
call fcn.0040a6a7
mov edx, dword [ebp - 0x180]
lea ecx, [ebp - 0x12c]
call fcn.00419823
lea ecx, [ebp - 0x114]
mov dword [ebp - 4], 6
call fcn.004a21ae
call fcn.004c12ba
mov edi, eax
mov ecx, dword [edi]
mov esi, dword [ecx + 0x11c]
mov ecx, esi
call dword [0x62c6dc]
mov ecx, edi
call esi
test al, al
je 0x410db7
lea eax, [ebp - 0x44]
push eax
call fcn.004a31f4
push 0xc
pop ecx
mov esi, eax
lea edi, [ebp - 0x114]
rep movsd dword es:[edi], dword [esi]
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
mov edx, 0x676a10
mov esi, dword [ebp - 0x18c]
push edx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push edx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push edx
push 0x676a14
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push edx
push edx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push edx
push ebx
push ebx
push ebx
push ebx
xor ecx, ecx
lea eax, [ebp - 0x12c]
cmp byte [esi + 0x6c], cl
push ebx
push ebx
setne cl
cmp dword [ebp - 0x118], 8
push ebx
cmovae eax, dword [ebp - 0x12c]
push ebx
mov dword [ebp - 0x6c], ecx
push ebx
push ebx
push edx
push ebx
push ebx
push ebx
push edx
push ebx
push edx
push ebx
push ebx
push edx
push ebx
push edx
push dword [ebp - 0xf4]
mov edi, dword [ebp - 0x180]
mov edx, 0x677a8c
push dword [ebp - 0xe8]
push dword [ebp - 0xec]
push dword [ebp - 0xf8]
push dword [ebp - 0xfc]
push dword [ebp - 0x10c]
push dword [ebp - 0x100]
push dword [ebp - 0x104]
push dword [ebp - 0x110]
push dword [ebp - 0x114]
push dword [ebp - 0x190]
push dword [ebp - 0x184]
push ecx
push 0x67ac30
push edx
push edx
push edx
push ebx
push ebx
push eax
push edi
push str.OneDriveStandaloneUpdaterOverallResult
push 0x6755b0
push str.StandaloneUpdater::RunUpdaterMode
mov edx, 0x4e8
mov ecx, str.d:dbs_shodct1105_210049_0cmd7clientonedriveProductStandaloneUpdater_standaloneupdaterlibStandaloneUpdater.cpp
call fcn.00405d1f
cmp dword [0x6bdde0], 5
jbe 0x410f32
push ecx
push ecx
call fcn.0040113c
test al, al
je 0x410f32
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x17c], eax
lea eax, [ebp - 0x178]
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x17c]
push 4
pop ecx
mov dword [ebp - 0x34], eax
lea eax, [ebp - 0x44]
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x2c], ecx
lea ecx, [ebp - 0x184]
push eax
mov dword [ebp - 0x178], edi
mov dword [ebp - 0x184], 0x67ac30
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x28], ebx
call fcn.00401048
lea eax, [ebp - 0x64]
push eax
push 5
push ebx
push ebx
push 0x689711
push 0x6bdde0
call fcn.00401090
cmp byte [ebp - 0x185], 0
je 0x410fb8
cmp dword [esi + 0x74], ebx
jne 0x410f88
cmp byte [esi + 0x7a], 0
jne 0x410f88
mov edi, dword [esi + 0x58]
mov eax, dword [edi]
mov ecx, dword [eax + 0xc]
push ecx
push ecx
mov edx, esp
mov dword [ebp - 0x184], ecx
mov dword [edx], ebx
mov dword [edx + 4], ebx
mov eax, dword [esi + 0x3c]
test eax, eax
je 0x410f68
lock inc dword [eax + 4]
mov eax, dword [esi + 0x38]
mov dword [edx], eax
mov eax, dword [esi + 0x3c]
mov dword [edx + 4], eax
call dword [0x62c6dc]
mov ecx, edi
call dword [ebp - 0x184]
mov ecx, esi
call fcn.00410460
mov ecx, esi
call fcn.004135a5
mov edi, dword [0x6b5e34]
mov eax, dword [edi]
mov esi, dword [eax + 0x238]
mov ecx, esi
mov eax, dword [ebp - 0x18c]
push dword [eax + 0x68]
call dword [0x62c6dc]
mov ecx, edi
call esi
mov esi, dword [ebp - 0x18c]
call fcn.004133d9
push 0x44
lea eax, [ebp - 0x174]
push ebx
push eax
call fcn.0042e9f0
add esp, 0xc
lea ecx, [ebp - 0x174]
call fcn.00419d8f
lea ecx, [ebp - 0x174]
mov byte [ebp - 4], 7
call fcn.00419ff1
cmp byte [esi + 0x78], 0
je 0x410ffd
push dword [esi + 0x24]
mov edx, dword [esi + 0x48]
mov ecx, dword [esi + 0x50]
call 0x41b63a
cmp byte [ebp - 0x65], 0
je 0x411063
cmp byte [esi + 0x7a], 0
jne 0x411063
call fcn.004c12ba
mov edi, eax
mov ecx, dword [edi]
mov esi, dword [ecx + 0x11c]
mov ecx, esi
call dword [0x62c6dc]
mov ecx, edi
call esi
test al, al
je 0x411063
call fcn.004aab72
mov edi, eax
push 0x503
mov ecx, dword [edi]
mov esi, dword [ecx + 0x1c]
mov ecx, esi
call dword [0x62c6dc]
mov ecx, edi
call esi
test al, al
je 0x411063
mov eax, dword [ebp - 0x18c]
mov edi, dword [eax + 0x40]
mov eax, dword [edi]
mov esi, dword [eax + 0x3c]
mov ecx, esi
call dword [0x62c6dc]
mov ecx, edi
call esi
lea ecx, [ebp - 0x174]
call 0x411102
lea ecx, [ebp - 0x12c]
call fcn.00415bf1
mov eax, dword [ebp - 0x180]
call fcn.0042d907
ret
cmp dword [ebp - 0xa4], 8
lea eax, [ebp - 0xb8]
mov edx, dword [ebp - 0x78]
lea ecx, [ebp - 0x88]
cmovae eax, dword [ebp - 0xb8]
cmp dword [ebp - 0x74], 8
cmovae ecx, dword [ebp - 0x88]
cmp edx, dword [ebp - 0xa8]
jne 0x410a30
test edx, edx
je 0x4110f1
movzx esi, word [ecx]
movzx edi, word [eax]
cmp si, di
jb 0x410a30
sub ecx, eax
cmp si, di
ja 0x410a30
cmp edx, 1
je 0x4110f1
add eax, 2
dec edx
movzx esi, word [eax + ecx]
movzx edi, word [eax]
cmp si, di
jae 0x4110d1
jmp 0x410a30
mov byte [ebp - 0x190], 1
jmp 0x410ab0