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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x128
mov eax, dword [0x1826b00c]
xor eax, esp
mov dword [esp + 0x124], eax
mov eax, dword [ebp + 8]
mov dword [esp + 0x38], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x1c], eax
mov eax, dword [ebp + 0x10]
push esi
mov esi, dword [ebp + 0x14]
mov ecx, esi
mov dword [esp + 0x48], eax
mov eax, dword [ebp + 0x18]
push edi
mov dword [esp + 0x54], edx
mov dword [esp + 0x2c], esi
mov dword [esp + 0x3c], eax
call fcn.180372a2
mov byte [esp + 0x10], al
call fcn.18006a78
push eax
lea ecx, [esp + 0x78]
call fcn.18007187
xor eax, eax
lea edi, [esp + 0xfc]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
call fcn.18006a78
push eax
lea ecx, [esp + 0x24]
call fcn.18007187
call fcn.18006a78
push eax
lea ecx, [esp + 0x20]
call fcn.18007187
call fcn.18006a78
push eax
lea ecx, [esp + 0x38]
call fcn.18007187
call fcn.18006a78
push eax
lea ecx, [esp + 0x4c]
call fcn.18007187
mov eax, dword [0x1827df18]
lea ecx, [esp + 0xc8]
mov dword [esp + 0x14], eax
add eax, 0xc
push eax
call fcn.18011e32
mov ecx, esi
call fcn.1803712d
mov ecx, esi
mov dword [esp + 0xc], eax
call fcn.180370d7
lea ecx, [esp + 0x18]
push ecx
mov ecx, eax
call fcn.1802fd45
push dword [esp + 0x24]
lea ecx, [esp + 0x60]
call fcn.18011e32
lea ecx, [esp + 0x5c]
call fcn.18011e4d
test al, al
je 0x1803fc0a
lea ecx, [esi + 8]
mov eax, dword [ecx]
xchg dword [ecx], eax
add eax, 4
lea ecx, [esp + 0xc0]
push eax
call fcn.18011e32
mov ecx, dword [esi + 0xc]
push esi
mov eax, dword [ecx]
call dword [eax + 0x3c]
mov ecx, dword [esp + 0xc0]
mov eax, dword [ecx]
call dword [eax + 8]
lea eax, [esp + 0xec]
mov ecx, esi
push eax
call fcn.1803718f
mov esi, eax
lea edi, [esp + 0xfc]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [esp + 0xc]
mov ecx, esi
call fcn.1803e571
test eax, eax
je 0x1803fb9d
push 0
mov ecx, esi
call fcn.1803e683
lea ecx, [esp + 0x64]
push ecx
mov ecx, eax
call fcn.1803ee85
mov edx, dword [esp + 0x3c]
lea ecx, [esp + 0x38]
push eax
call fcn.1801266d
pop ecx
push eax
lea ecx, [esp + 0x24]
call fcn.18009d7d
mov ecx, dword [esp + 0x38]
lea ecx, [ecx - 0x10]
call fcn.18006a60
mov ecx, dword [esp + 0x64]
lea ecx, [ecx - 0x10]
call fcn.18006a60
lea ecx, [esp + 0xd0]
call fcn.1803f4f6
lea eax, [esp + 0xd0]
mov ecx, esi
push eax
xor eax, eax
cmp byte [esp + 0x14], al
setne al
add eax, 2
mov dword [esp + 0x2c], eax
call fcn.1803e546
mov edx, dword [esp + 0x2c]
lea ecx, [eax + 0x14]
call fcn.1803f576
pop ecx
test al, al
je 0x1803fa96
lea eax, [esp + 0xdc]
push eax
lea ecx, [esp + 0x20]
call fcn.18009d7d
cmp byte [esp + 0x10], 0
je 0x1803fa96
push 0x10
lea eax, [esp + 0x100]
push 0x1821e9b0
push eax
call fcn.180c7dc8
mov esi, dword [esp + 0x38]
add esp, 0xc
test eax, eax
jne 0x1803fa9a
mov ecx, esi
call fcn.180370d7
mov ecx, eax
call fcn.1802fee9
push dword [eax]
lea eax, [esp + 0x20]
push str.sessionid
push str.___s___s_
push eax
call fcn.18012ade
add esp, 0x10
jmp 0x1803fa9a
mov esi, dword [esp + 0x2c]
lea ecx, [esi + 8]
mov eax, dword [ecx]
xchg dword [ecx], eax
add eax, 4
lea ecx, [esp + 0x98]
push eax
call fcn.18011e32
mov ecx, dword [esi + 0xc4]
cmp dword [ecx - 0xc], 0
je 0x1803fac2
add ecx, 0xfffffff0
jmp 0x1803facb
mov ecx, dword [esi + 0xc8]
sub ecx, 0x10
call fcn.18009fcf
mov ecx, dword [esp + 0x98]
lea edi, [eax + 0x10]
mov eax, dword [ecx]
call dword [eax + 8]
lea eax, [esp + 0x28]
mov dword [esp + 0x28], edi
push eax
lea ecx, [esp + 0x38]
call fcn.18009d7d
lea ecx, [edi - 0x10]
call fcn.18006a60
mov ecx, dword [esp + 0xc]
call fcn.1803e546
add eax, 4
lea ecx, [esp + 0x48]
push eax
call fcn.18009d7d
cmp byte [esp + 0x10], 0
jne 0x1803fb26
mov ecx, dword [esp + 0x14]
push esi
call fcn.180323e8
mov edi, eax
test edi, edi
js 0x1803fb37
lea ecx, [esp + 0xd0]
call fcn.1803a62b
jmp 0x1803f948
call fcn.18006a78
push eax
lea ecx, [esp + 0x10]
call fcn.18007187
lea eax, [esp + 0x18]
mov edx, edi
push eax
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x1c]
call fcn.180454a4
pop ecx
pop ecx
mov ecx, dword [esp + 0xc]
lea ecx, [ecx - 0x10]
call fcn.18006a60
and dword [esp + 0x44], 0
lea eax, [esp + 0x14]
push eax
lea eax, [esp + 0x44]
mov dword [esp + 0x44], edi
push eax
mov ecx, esi
call fcn.18037ed9
mov ecx, dword [esp + 0x14]
lea ecx, [ecx - 0x10]
call fcn.18006a60
lea ecx, [esp + 0xd0]
call fcn.1803a62b
jmp 0x1803fbfc
call fcn.18006a78
push eax
lea ecx, [esp + 0x10]
call fcn.18007187
lea eax, [esp + 0x18]
mov edi, 0x80004005
push eax
lea eax, [esp + 0x10]
mov edx, edi
push eax
lea ecx, [esp + 0x18]
call fcn.180454a4
pop ecx
pop ecx
mov ecx, dword [esp + 0xc]
lea ecx, [ecx - 0x10]
call fcn.18006a60
mov ecx, dword [esp + 0x2c]
lea eax, [esp + 0x10]
and dword [esp + 0x44], 0
push eax
lea eax, [esp + 0x44]
mov dword [esp + 0x44], edi
push eax
call fcn.18037ed9
mov ecx, dword [esp + 0x10]
lea ecx, [ecx - 0x10]
call fcn.18006a60
mov ecx, dword [esp + 0x5c]
mov eax, dword [ecx]
call dword [eax + 8]
jmp 0x1803ff5f
mov ecx, dword [esp + 0x5c]
mov eax, dword [ecx]
call dword [eax + 8]
mov ecx, esi
call fcn.180370d7
mov ecx, eax
call fcn.1802ff12
movzx ecx, byte [0x1827e6e4]
push 7
neg ecx
mov dword [esp + 0x3c], eax
pop eax
sbb ecx, ecx
push 1
pop edx
and ecx, 0x1827e000
je 0x1803fd08
push edx
push eax
mov dword [esp + 0xa8], ecx
mov dword [esp + 0xac], eax
mov dword [esp + 0xb0], edx
call fcn.18008c56
mov dword [esp + 0xac], eax
mov ecx, esi
lea eax, [esp + 0x78]
push eax
call fcn.1803783a
mov edx, dword [esp + 0x20]
lea ecx, [esp + 0x50]
mov eax, dword [eax]
mov dword [esp + 0x28], eax
call fcn.18006cbf
mov edi, dword [esp + 0x50]
lea edx, [esp + 0xfc]
lea ecx, [esp + 0x70]
call fcn.1800c264
mov ecx, dword [esp + 0x2c]
mov esi, dword [eax]
lea eax, [esp + 0x68]
push eax
call fcn.18037237
push dword [esp + 0x38]
push dword [esp + 0x2c]
push dword [esp + 0x3c]
push dword [esp + 0x28]
push edi
push esi
push dword [eax]
lea eax, [esp + 0xbc]
push str._Installing__display_name:__s__app_id:__s__installer_path:__s__manifest_args:__s__installer_data:__s__untrusted_data:__s__priority:__d_
push eax
call fcn.18006ca0
mov ecx, dword [esp + 0x8c]
add esp, 0x24
lea ecx, [ecx - 0x10]
call fcn.18006a60
mov ecx, dword [esp + 0x70]
lea ecx, [ecx - 0x10]
call fcn.18006a60
mov ecx, dword [esp + 0x50]
lea ecx, [ecx - 0x10]
call fcn.18006a60
mov ecx, dword [esp + 0x78]
lea ecx, [ecx - 0x10]
call fcn.18006a60
mov esi, dword [esp + 0x2c]
lea ecx, [esp + 0x7c]
call fcn.1803f536
push 3
mov ecx, esi
call fcn.18037c2e
lea eax, [esp + 0x6c]
mov ecx, esi
push eax
call fcn.1803783a
lea ecx, [esp + 0x7c]
push ecx
push dword [esp + 0x3c]
mov ecx, dword [esp + 0x54]
push eax
lea eax, [esp + 0x24]
push eax
lea eax, [esp + 0x44]
push eax
lea eax, [esp + 0x30]
push eax
lea eax, [esp + 0x38]
push eax
lea eax, [esp + 0x118]
push eax
push dword [esp + 0x74]
call fcn.18045fba
mov ecx, dword [esp + 0x6c]
mov edi, eax
lea ecx, [ecx - 0x10]
call fcn.18006a60
push 4
mov ecx, esi
call fcn.18037c2e
movzx ecx, byte [0x1827e6e4]
neg ecx
sbb ecx, ecx
and ecx, 0x1827e000
je 0x1803fe1e
push 7
pop eax
xor edx, edx
mov dword [esp + 0xb0], ecx
inc edx
mov dword [esp + 0xb4], eax
push edx
push eax
mov dword [esp + 0xc0], edx
call fcn.18008c56
mov edx, dword [esp + 0x8c]
lea ecx, [esp + 0x3c]
mov dword [esp + 0xbc], eax
call fcn.18006cbf
mov esi, dword [esp + 0x3c]
lea edx, [esp + 0xfc]
lea ecx, [esp + 0x4c]
call fcn.1800c264
push esi
push dword [esp + 0x8c]
push dword [esp + 0x88]
push dword [esp + 0x88]
push dword [eax]
lea eax, [esp + 0xc4]
push edi
push str._InstallApp_returned__0x_x___s__type:_d__code:__d___s___s_
push eax
call fcn.18006ca0
mov ecx, dword [esp + 0x6c]
add esp, 0x20
lea ecx, [ecx - 0x10]
call fcn.18006a60
mov ecx, dword [esp + 0x3c]
lea ecx, [ecx - 0x10]
call fcn.18006a60
mov esi, dword [esp + 0x2c]
push dword [esp + 0x24]
lea ecx, [esp + 0x30]
call fcn.18011e32
test edi, edi
js 0x1803feb7
push 0x10
lea eax, [esp + 0x100]
push eax
push 0x1821e9b0
call fcn.180c7dc8
add esp, 0xc
test eax, eax
je 0x1803fe95
mov ecx, dword [esp + 0x14]
push esi
call fcn.18032983
mov edi, eax
test edi, edi
js 0x1803feb7
push dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
lea eax, [esp + 0x4c]
push dword [esp + 0x44]
push eax
lea eax, [esp + 0x4c]
push eax
call fcn.1803e4ab
push eax
lea eax, [esp + 0x10c]
push eax
call fcn.18045e69
mov ecx, dword [esp + 0x40]
mov edi, eax
lea ecx, [ecx - 0x10]
call fcn.18006a60
test edi, edi
js 0x1803feb7
lea edx, [esp + 0x7c]
mov ecx, esi
call fcn.1803ffee
lea eax, [esp + 0x7c]
mov ecx, esi
push eax
call fcn.18037ea5
xor edi, edi
jmp 0x1803ff4d
cmp byte [esp + 0x10], 0
jne 0x1803fef4
lea eax, [esp + 0x10c]
mov ecx, esi
push eax
call fcn.1803718f
mov ecx, dword [esp + 0x14]
push eax
call fcn.18031555
test al, al
jne 0x1803fef4
lea eax, [esp + 0x11c]
mov ecx, esi
push eax
call fcn.1803718f
mov ecx, dword [esp + 0x14]
push eax
call fcn.180339c6
cmp edi, 0x80040902
jne 0x1803ff0a
lea eax, [esp + 0x7c]
mov ecx, esi
push eax
call fcn.18037ea5
jmp 0x1803ff4d
lea eax, [esp + 0x18]
mov edx, edi
push eax
lea eax, [esp + 0x24]
push eax
lea ecx, [esp + 0x2c]
call fcn.180454a4
mov eax, dword [esp + 0x8c]
pop ecx
pop ecx
mov dword [esp + 0x58], eax
mov ecx, esi
lea eax, [esp + 0x24]
mov dword [esp + 0x54], edi
push eax
lea eax, [esp + 0x58]
push eax
call fcn.18037ed9
mov ecx, dword [esp + 0x24]
lea ecx, [ecx - 0x10]
call fcn.18006a60
mov ecx, dword [esp + 0x2c]
mov eax, dword [ecx]
call dword [eax + 8]
lea ecx, [esp + 0x7c]
call fcn.1803ffc9
mov ecx, dword [esp + 0x18]
lea ecx, [ecx - 0x10]
call fcn.18006a60
mov ecx, dword [esp + 0xc8]
mov eax, dword [ecx]
call dword [eax + 8]
mov ecx, dword [esp + 0x48]
lea ecx, [ecx - 0x10]
call fcn.18006a60
mov ecx, dword [esp + 0x34]
lea ecx, [ecx - 0x10]
call fcn.18006a60
mov ecx, dword [esp + 0x1c]
lea ecx, [ecx - 0x10]
call fcn.18006a60
mov ecx, dword [esp + 0x20]
lea ecx, [ecx - 0x10]
call fcn.18006a60
mov ecx, dword [esp + 0x74]
add ecx, 0xfffffff0
call fcn.18006a60
mov ecx, dword [esp + 0x12c]
mov eax, edi
pop edi
pop esi
xor ecx, esp
call fcn.180b1200
mov esp, ebp
pop ebp
ret