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

Disassembly:
push 0x118
mov eax, 0x101c4cf2
call fcn.10186cc3
mov esi, edx
mov ebx, ecx
mov dword [ebp - 0x78], ebx
mov dword [ebp - 0x8c], ebx
and dword [ebp - 0x60], 0
call fcn.10017f51
and dword [ebp - 4], 0
lea ecx, [ebp - 0x28]
xor edi, edi
inc edi
push 0x101f2124
mov dword [ebp - 0x60], edi
call fcn.10003eb0
lea eax, [ebp - 0x28]
mov ecx, esi
push eax
call fcn.10041700
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x74], eax
call fcn.10004e60
mov eax, dword [ebp - 0x74]
test eax, eax
je 0x10019718
add eax, 0x18
mov ecx, ebx
push eax
call fcn.10012599
xor eax, eax
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x7c], eax
lea eax, [ebp - 0x84]
mov dword [ebp - 4], edi
push eax
mov ecx, esi
call fcn.10041550
mov eax, dword [ebp - 0x80]
xor ecx, ecx
mov edx, dword [ebp - 0x84]
sub eax, edx
sar eax, 2
mov dword [ebp - 0x74], ecx
mov dword [ebp - 0x78], eax
test eax, eax
je 0x10019705
mov esi, dword [edx + ecx*4]
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x88], esi
lea eax, [esi + 8]
push eax
call fcn.10003f20
or edi, 2
mov dword [ebp - 0x60], edi
mov edx, str.Image
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x40]
call fcn.10012921
test al, al
je 0x10018e42
lea eax, [esi + 0x20]
push eax
lea ecx, [ebp - 0x28]
call fcn.10003f20
or edi, 4
mov dword [ebp - 0x60], edi
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 3
push eax
lea ecx, [ebx + 0x18]
call fcn.1000e6b0
jmp 0x10019651
mov edx, str.Launch
lea ecx, [ebp - 0x40]
call fcn.10012921
test al, al
je 0x10018e6a
lea eax, [esi + 0x20]
push eax
lea ecx, [ebp - 0x28]
call fcn.10003f20
or edi, 8
lea ecx, [ebx + 0x24]
jmp 0x10019645
mov edx, str.IsAutomatable
lea ecx, [ebp - 0x40]
call fcn.10012921
test al, al
je 0x10018ec7
lea eax, [esi + 0x20]
mov byte [ebp - 0x59], 0
push eax
lea ecx, [ebp - 0x28]
call fcn.10003f20
or edi, 0x10
mov dword [ebp - 0x60], edi
push ecx
lea edx, [ebp - 0x59]
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x28]
call fcn.1000a940
pop ecx
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 2
mov esi, eax
call fcn.10004e60
cmp byte [ebp - 0x59], 0
je 0x10019680
test esi, esi
setne al
mov byte [ebx + 0x3c], al
jmp 0x10019659
mov edx, str.IsStreamingSupported
lea ecx, [ebp - 0x40]
call fcn.10012921
test al, al
je 0x10018f24
lea eax, [esi + 0x20]
mov byte [ebp - 0x59], 0
push eax
lea ecx, [ebp - 0x28]
call fcn.10003f20
or edi, 0x20
mov dword [ebp - 0x60], edi
push ecx
lea edx, [ebp - 0x59]
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x28]
call fcn.1000a940
pop ecx
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 2
mov esi, eax
call fcn.10004e60
cmp byte [ebp - 0x59], 0
je 0x1001969a
test esi, esi
setne al
mov byte [ebx + 0x74], al
jmp 0x10019659
mov edx, str.StreamingCmdLine
lea ecx, [ebp - 0x40]
call fcn.10012921
test al, al
je 0x10018f4c
lea eax, [esi + 0x20]
push eax
lea ecx, [ebp - 0x28]
call fcn.10003f20
or edi, 0x40
lea ecx, [ebx + 0x78]
jmp 0x10019645
mov edx, str.StreamingCaption
lea ecx, [ebp - 0x40]
call fcn.10012921
test al, al
je 0x10018f7a
lea eax, [esi + 0x20]
push eax
lea ecx, [ebp - 0x28]
call fcn.10003f20
or edi, 0x80
lea ecx, [ebx + 0x90]
jmp 0x10019645
mov edx, str.StreamingClassName
lea ecx, [ebp - 0x40]
call fcn.10012921
test al, al
je 0x10018fa8
lea eax, [esi + 0x20]
push eax
lea ecx, [ebp - 0x28]
call fcn.10003f20
or edi, 0x100
lea ecx, [ebx + 0xa8]
jmp 0x10019645
mov edx, str.StreamingAutomatedLaunch
lea ecx, [ebp - 0x40]
call fcn.10012921
test al, al
je 0x1001900b
lea eax, [esi + 0x20]
mov byte [ebp - 0x59], 0
push eax
lea ecx, [ebp - 0x28]
call fcn.10003f20
or edi, 0x200
mov dword [ebp - 0x60], edi
push ecx
lea edx, [ebp - 0x59]
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x28]
call fcn.1000a940
pop ecx
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 2
mov esi, eax
call fcn.10004e60
cmp byte [ebp - 0x59], 0
je 0x100196a1
test esi, esi
setne al
mov byte [ebx + 0xc0], al
jmp 0x10019659
mov edx, str.ResolutionAlgorithm
lea ecx, [ebp - 0x40]
call fcn.10012921
test al, al
je 0x1001906f
lea eax, [esi + 0x20]
mov byte [ebp - 0x59], 0
push eax
lea ecx, [ebp - 0x28]
call fcn.10003f20
or edi, 0x400
mov dword [ebp - 0x60], edi
push ecx
lea edx, [ebp - 0x59]
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x28]
call fcn.1000a940
pop ecx
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 2
mov esi, eax
call fcn.10004e60
cmp byte [ebp - 0x59], 0
je 0x100196af
cmp esi, 2
ja 0x100196a8
mov dword [ebx + 0x40], esi
jmp 0x10019659
mov edx, str.Distributor
lea ecx, [ebp - 0x40]
call fcn.10012921
test al, al
je 0x1001909a
lea eax, [esi + 0x20]
push eax
lea ecx, [ebp - 0x28]
call fcn.10003f20
or edi, 0x800
lea ecx, [ebx + 0x44]
jmp 0x10019645
mov edx, str.Files
lea ecx, [ebp - 0x40]
call fcn.10012921
test al, al
je 0x1001914e
mov ecx, dword [ebp - 0x88]
lea edx, [ebx + 0x5c]
call fcn.100181eb
mov eax, dword [ebx + 0x5c]
cmp eax, dword [ebx + 0x60]
jne 0x10019659
lea ecx, [ebp - 0x124]
call fcn.100039d0
push str.Files__version.files__cannot_be_empty
mov ecx, eax
mov byte [ebp - 4], 8
call fcn.100061e0
push 0x10002580
mov ecx, eax
call fcn.10006200
push ecx
mov ecx, eax
call fcn.10006230
push str.C:dvsp4_build_swgcomp_rel_srcApplicationOntologyOntologyLib_srcLoadDetectorFromXmlNode.cpp
mov ecx, eax
call fcn.100061e0
push 0x101e86cc
mov ecx, eax
call fcn.100061e0
lea ecx, [ebp - 0x78]
mov dword [ebp - 0x78], 0x141
push ecx
mov ecx, eax
call fcn.10006250
push 0x101e86d0
mov ecx, eax
call fcn.100061e0
lea ecx, [ebp - 0x28]
push ecx
mov ecx, eax
call fcn.100039b0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 9
push eax
lea ecx, [ebp - 0x70]
call fcn.10001430
jmp 0x1001968d
mov edx, str.Directories
lea ecx, [ebp - 0x40]
call fcn.10012921
test al, al
je 0x1001916e
lea edx, [ebx + 0x68]
mov ecx, esi
call fcn.1001859b
jmp 0x10019659
lea eax, [esi + 0x20]
mov edx, str.Hypersampling
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x64], eax
call fcn.10012921
test al, al
je 0x100191d1
push dword [ebp - 0x64]
lea ecx, [ebp - 0x28]
mov byte [ebp - 0x59], 0
call fcn.10003f20
or edi, 0x1000
mov dword [ebp - 0x60], edi
push ecx
lea edx, [ebp - 0x59]
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x28]
call fcn.1000a940
pop ecx
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 2
mov esi, eax
call fcn.10004e60
cmp byte [ebp - 0x59], 0
je 0x100196b6
mov dword [ebx + 0xc4], esi
jmp 0x10019659
mov edx, str.HypersamplingFactors
lea ecx, [ebp - 0x40]
call fcn.10012921
test al, al
je 0x100192bb
xor eax, eax
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x68], eax
push 0x101f3034
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0xb
call fcn.10003eb0
push dword [ebp - 0x64]
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0xc
call fcn.10003f20
or edi, 0x2000
mov dword [ebp - 0x60], edi
lea eax, [ebp - 0x70]
mov byte [ebp - 4], 0xd
push 1
push eax
lea edx, [ebp - 0x58]
lea ecx, [ebp - 0x28]
call fcn.1000aa30
pop ecx
pop ecx
lea ecx, [ebp - 0x28]
call fcn.10004e60
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0xb
call fcn.10004e60
mov esi, dword [ebp - 0x70]
jmp 0x100192a4
push ecx
lea edx, [ebp - 0x59]
mov byte [ebp - 0x59], 0
mov ecx, esi
call fcn.1000a940
cmp byte [ebp - 0x59], 0
pop ecx
je 0x100196d4
cmp eax, 2
jne 0x10019270
mov edx, 0x373e
jmp 0x1001927e
cmp eax, 4
jne 0x100196bd
mov edx, 0x4e20
lea ecx, [ebx + 0xc8]
mov dword [ebp - 0x44], edx
mov eax, dword [ecx + 4]
cmp dword [ecx + 8], eax
je 0x10019297
mov dword [eax], edx
add dword [ecx + 4], 4
jmp 0x100192a1
lea edx, [ebp - 0x44]
push edx
push eax
call fcn.1001a23d
add esi, 0x18
cmp esi, dword [ebp - 0x6c]
jne 0x1001924a
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 2
call fcn.10012722
mov esi, dword [ebp - 0x88]
mov edx, str.FRLPOPS
lea ecx, [ebp - 0x40]
call fcn.10012921
test al, al
je 0x10019320
push dword [ebp - 0x64]
lea ecx, [ebp - 0x28]
mov byte [ebp - 0x59], 0
call fcn.10003f20
or edi, 0x4000
mov dword [ebp - 0x60], edi
push ecx
lea edx, [ebp - 0x59]
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x28]
call fcn.1000a940
pop ecx
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 2
mov esi, eax
call fcn.10004e60
cmp byte [ebp - 0x59], 0
je 0x100196e2
test esi, esi
js 0x100196db
mov dword [ebx + 0xd4], esi
jmp 0x10019659
mov edx, str.WhisperModePopsFactor
lea ecx, [ebp - 0x40]
call fcn.10012921
test al, al
je 0x1001939c
push dword [ebp - 0x64]
lea ecx, [ebp - 0x28]
call fcn.10003f20
or edi, 0x8000
lea ecx, [ebp - 0x48]
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
push ecx
cmovae eax, dword [ebp - 0x28]
xorps xmm0, xmm0
push 0x101e8964
push eax
mov dword [ebp - 0x60], edi
movsd qword [ebp - 0x48], xmm0
call fcn.100098c0
add esp, 0xc
lea ecx, [ebp - 0x28]
mov esi, eax
call fcn.10004e60
cmp esi, 1
jne 0x100196f0
movsd xmm0, qword [ebp - 0x48]
xorps xmm1, xmm1
comisd xmm1, xmm0
jae 0x100196e9
movsd qword [ebx + 0xd8], xmm0
jmp 0x10019659
mov edx, str.CMSID
lea ecx, [ebp - 0x40]
call fcn.10012921
test al, al
je 0x10019405
push dword [ebp - 0x64]
lea ecx, [ebp - 0x28]
mov byte [ebp - 0x59], 0
call fcn.10003f20
or edi, 0x10000
mov dword [ebp - 0x60], edi
push ecx
lea edx, [ebp - 0x59]
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x28]
call fcn.1000a990
pop ecx
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x44], edx
mov esi, eax
mov byte [ebp - 4], 2
call fcn.10004e60
cmp byte [ebp - 0x59], 0
je 0x100196f7
mov eax, dword [ebp - 0x44]
mov dword [ebx + 0xe0], esi
mov dword [ebx + 0xe4], eax
jmp 0x10019659
mov edx, str.CMSVersion
lea ecx, [ebp - 0x40]
call fcn.10012921
test al, al
je 0x1001946e
push dword [ebp - 0x64]
lea ecx, [ebp - 0x28]
mov byte [ebp - 0x59], 0
call fcn.10003f20
or edi, 0x20000
mov dword [ebp - 0x60], edi
push ecx
lea edx, [ebp - 0x59]
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x28]
call fcn.1000a990
pop ecx
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x44], edx
mov esi, eax
mov byte [ebp - 4], 2
call fcn.10004e60
cmp byte [ebp - 0x59], 0
je 0x100196fe
mov eax, dword [ebp - 0x44]
mov dword [ebx + 0xe8], esi
mov dword [ebx + 0xec], eax
jmp 0x10019659
mov edx, str.UWPPackageFamilyName
lea ecx, [ebp - 0x40]
call fcn.10012921
test al, al
je 0x1001949b
push dword [ebp - 0x64]
lea ecx, [ebp - 0x28]
call fcn.10003f20
or edi, 0x40000
lea ecx, [ebx + 0xf0]
jmp 0x10019645
mov edx, str.SteamAppIds
lea ecx, [ebp - 0x40]
call fcn.10012921
test al, al
je 0x100194be
lea edx, [ebx + 0x120]
mov ecx, esi
call fcn.10018c85
jmp 0x10019659
mov edx, str.OriginAppIds
lea ecx, [ebp - 0x40]
call fcn.10012921
test al, al
je 0x100194d7
lea edx, [ebx + 0x12c]
jmp 0x100194b2
mov edx, str.BattleNetAppId
lea ecx, [ebp - 0x40]
call fcn.10012921
test al, al
je 0x10019504
push dword [ebp - 0x64]
lea ecx, [ebp - 0x28]
call fcn.10003f20
or edi, 0x80000
lea ecx, [ebx + 0x138]
jmp 0x10019645
mov edx, str.TencentAppId
lea ecx, [ebp - 0x40]
call fcn.10012921
test al, al
je 0x10019531
push dword [ebp - 0x64]
lea ecx, [ebp - 0x28]
call fcn.10003f20
or edi, 0x100000
lea ecx, [ebx + 0x150]
jmp 0x10019645
mov edx, str.GogAppId
lea ecx, [ebp - 0x40]
call fcn.10012921
test al, al
je 0x1001955e
push dword [ebp - 0x64]
lea ecx, [ebp - 0x28]
call fcn.10003f20
or edi, 0x200000
lea ecx, [ebx + 0x168]
jmp 0x10019645
mov edx, str.GarenaAppIds
lea ecx, [ebp - 0x40]
call fcn.10012921
test al, al
je 0x1001957a
lea edx, [ebx + 0x180]
jmp 0x100194b2
mov edx, str.OculusAppId
lea ecx, [ebp - 0x40]
call fcn.10012921
test al, al
je 0x100195a7
push dword [ebp - 0x64]
lea ecx, [ebp - 0x28]
call fcn.10003f20
or edi, 0x400000
lea ecx, [ebx + 0x18c]
jmp 0x10019645
mov edx, str.EpicAppId
lea ecx, [ebp - 0x40]
call fcn.10012921
test al, al
je 0x100195d1
push dword [ebp - 0x64]
lea ecx, [ebp - 0x28]
call fcn.10003f20
or edi, 0x800000
lea ecx, [ebx + 0x1c8]
jmp 0x10019645
mov edx, str.InstallDirRegValues
lea ecx, [ebp - 0x40]
call fcn.10012921
test al, al
je 0x100195f1
lea edx, [ebx + 0x1a4]
mov ecx, esi
call fcn.100187f3
jmp 0x10019659
mov edx, str.AppUserModelId
lea ecx, [ebp - 0x40]
call fcn.10012921
test al, al
je 0x1001961c
lea eax, [esi + 0x20]
push eax
lea ecx, [ebp - 0x28]
call fcn.10003f20
or edi, 0x1000000
lea ecx, [ebx + 0x108]
jmp 0x10019645
mov edx, str.DriverProfile
lea ecx, [ebp - 0x40]
call fcn.10012921
test al, al
je 0x10019659
lea eax, [esi + 0x20]
push eax
lea ecx, [ebp - 0x28]
call fcn.10003f20
or edi, 0x2000000
lea ecx, [ebx + 0x1b0]
lea eax, [ebp - 0x28]
mov dword [ebp - 0x60], edi
push eax
call fcn.10003d60
lea ecx, [ebp - 0x28]
call fcn.10004e60
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 1
call fcn.10004e60
mov ecx, dword [ebp - 0x74]
inc ecx
mov dword [ebp - 0x74], ecx
cmp ecx, dword [ebp - 0x78]
jae 0x10019705
mov edx, dword [ebp - 0x84]
jmp 0x10018deb
push str.Cannot_parse_IsAutomatable_value
lea ecx, [ebp - 0x70]
call fcn.10001480
push 0x10229d38
lea eax, [ebp - 0x70]
jmp 0x10019733
push str.Cannot_parse_IsStreamingSupported_value
jmp 0x10019685
push str.Cannot_parse_StreamingAutomatedLaunch_value.
jmp 0x10019685
push str.Invalid_ResolutionAlgorithm_value
jmp 0x10019685
push str.Cannot_parse_ResolutionAlgorithm_value
jmp 0x10019685
push str.Cannot_parse_Hypersampling_value.
jmp 0x10019685
push str.Invalid_hypersampling_factor
lea ecx, [ebp - 0x4c]
call fcn.10001480
push 0x10229d38
lea eax, [ebp - 0x4c]
jmp 0x10019733
push str.Cannot_parse_hypersampling_factor
jmp 0x100196c2
push str.FRLPOPS_must_be_positive
jmp 0x10019685
push str.Cannot_parse_FRLPOPS_value.
jmp 0x10019685
push str.WhisperModePopsFactor_must_be_positive
jmp 0x10019685
push str.Cannot_parse_WhisperModePopsFactor_value.
jmp 0x10019685
push str.Cannot_parse_CMSID_value.
jmp 0x10019685
push str.Cannot_parse_CMSVersion_value.
jmp 0x10019685
lea ecx, [ebp - 0x84]
call fcn.1001253e
mov eax, ebx
call fcn.10186c6d
ret
push str.Version_must_have_name
lea ecx, [ebp - 0x84]
call fcn.10001480
push 0x10229d38
lea eax, [ebp - 0x84]
push eax
call fcn.101878e5
int3