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

Disassembly:
mov eax, 0x134c
call fcn.0043c050
mov eax, dword [0x46f7c0]
xor eax, esp
mov dword [esp + 0x1348], eax
push ebx
mov ebx, dword [esp + 0x1354]
push ebp
push esi
mov esi, dword [esp + 0x1360]
xor ebp, ebp
mov dword [esp + 0x10], ebx
mov dword [esp + 0x78], 0xf
mov dword [esp + 0x74], ebp
mov byte [esp + 0x64], 0
mov byte [esp + 0xcc], 0
mov byte [esp + 0x110], 0
mov dword [esp + 0x50], 0x41
cmp esi, ebp
jne 0x4103d5
lea eax, [esp + 0x254]
push eax
call fcn.0040fb70
add esp, 4
test eax, eax
jne 0x4103ce
cmp dword [esp + 0x78], 0x10
jb 0x4103c4
mov ecx, dword [esp + 0x64]
push ecx
call fcn.0043a71e
add esp, 4
mov eax, 0x80004005
jmp 0x410d2e
lea esi, [esp + 0x254]
mov eax, dword [esp + 0x1364]
push edi
push 0x41
lea edx, [esp + 0xd4]
push edx
push eax
push 1
lea ecx, [esp + 0x78]
push ecx
push esi
call fcn.0040c1b0
mov edi, eax
add esp, 0x18
test edi, edi
jns 0x410419
cmp dword [esp + 0x7c], 0x10
jb 0x410412
mov edx, dword [esp + 0x68]
push edx
call fcn.0043a71e
add esp, 4
mov eax, edi
jmp 0x410d2d
lea eax, [esp + 0x54]
push eax
lea ecx, [esp + 0x118]
push ecx
push 0x45c2b8
push 0
call fcn.0040f6a0
add esp, 0x10
test eax, eax
je 0x410469
lea edx, [esp + 0x114]
push edx
lea eax, [esp + 0xd4]
push eax
call fcn.0043dd4e
add esp, 8
test eax, eax
jne 0x41045c
lea ebp, [eax + 1]
xor edi, edi
jmp 0x410481
push str.Update_Descriptor_Checksums_DO_NOT_Match_n
call fcn.004160d0
add esp, 4
lea ecx, [esp + 0xd0]
push ecx
push str.VersionXmlChecksum
xor edi, edi
push edi
call fcn.0040f4a0
add esp, 0xc
cmp dword [esp + 0x136c], edi
je 0x4104a9
cmp ebp, edi
je 0x4104a9
cmp dword [esp + 0x7c], 0x10
jb 0x4104a2
mov edx, dword [esp + 0x68]
push edx
call fcn.0043a71e
add esp, 4
xor eax, eax
jmp 0x410d2d
push str.Saving_Update_Descriptor_XML_Data_n
call fcn.004160d0
add esp, 4
lea eax, [esp + 0xa0]
push eax
lea ecx, [esp + 0x1c]
push ecx
mov byte [esp + 0x1a], 1
call fcn.00427240
add esp, 4
mov ecx, eax
call fcn.00426a30
push eax
lea edx, [esp + 0x88]
push edx
call fcn.0041b6e0
add esp, 8
cmp dword [esp + 0xb4], 0x10
jb 0x410502
mov eax, dword [esp + 0xa0]
push eax
call fcn.0043a71e
add esp, 4
push 0x7ff
lea ecx, [esp + 0x35d]
push edi
push ecx
mov byte [esp + 0x364], 0
call fcn.0043b8e0
add esp, 0xc
push 0xff
push esi
lea edx, [ebx + 8]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
mov eax, dword [esp + 0x7c]
mov edx, dword [esp + 0x68]
mov ecx, edx
cmp eax, 0x10
jae 0x410543
lea ecx, [esp + 0x68]
add ecx, dword [esp + 0x78]
cmp eax, 0x10
mov eax, edx
jae 0x410552
lea eax, [esp + 0x68]
mov edx, dword [esp + 0x18]
push edx
push ecx
push eax
lea ecx, [esp + 0x3c]
mov dword [esp + 0x3c], edi
mov dword [esp + 0x40], edi
mov dword [esp + 0x44], edi
call fcn.004102d0
lea eax, [esp + 0x13]
push eax
lea ecx, [esp + 0x34]
mov byte [esp + 0x17], 0
call fcn.0040b210
mov ecx, dword [esp + 0x30]
push ecx
call fcn.00411c60
mov esi, eax
add esp, 4
cmp esi, edi
je 0x410bd1
mov edx, dword [esi + 4]
push str.java_update
push edx
call dword [sym.imp.KERNEL32.dll_lstrcmpA]
test eax, eax
jne 0x410bd1
mov esi, dword [esi + 0xc]
cmp esi, edi
je 0x410bd1
lea ebx, [ebx]
mov eax, dword [esi + 4]
push str.information
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpA]
test eax, eax
jne 0x410bc6
mov ecx, dword [esi + 0x10]
push str.xml:lang
push ecx
call fcn.00411b10
mov edx, dword [esi + 0x10]
push 0x45c358
push edx
mov dword [esp + 0x34], eax
call fcn.00411b10
mov ebp, dword [sym.imp.KERNEL32.dll_lstrcmpA]
add esp, 0x10
mov edi, eax
push 0x45c360
push edi
mov dword [esp + 0x24], edi
call ebp
test eax, eax
je 0x410622
push 0x45c364
push edi
call ebp
test eax, eax
jne 0x410bc6
cmp dword [esp + 0x98], 0x10
mov eax, dword [esp + 0x84]
jae 0x41063a
lea eax, [esp + 0x84]
mov edi, dword [esp + 0x24]
push eax
push edi
call ebp
test eax, eax
je 0x410656
push 0x45c330
push edi
call ebp
test eax, eax
jne 0x410bc6
mov eax, dword [esi + 0xc]
push str.descriptionfrom8
push eax
call fcn.00411ab0
mov ecx, dword [esi + 0xc]
push str.title
push ecx
mov dword [esp + 0x60], eax
call fcn.00411ab0
mov edx, dword [esi + 0xc]
push str.moreinfotxt
push edx
mov dword [esp + 0x58], eax
call fcn.00411ab0
mov dword [esp + 0x70], eax
mov eax, dword [esi + 0xc]
push str.caption
push eax
call fcn.00411ab0
mov ecx, dword [esi + 0xc]
push str.moreinfo
push ecx
mov dword [esp + 0x8c], eax
call fcn.00411ab0
mov edx, dword [esi + 0xc]
push 0x45c3a4
push edx
mov dword [esp + 0x7c], eax
call fcn.00411ab0
mov edi, eax
mov eax, dword [esi + 0xc]
push str.options
push eax
call fcn.00411ab0
mov ecx, dword [esi + 0xc]
push str.post_status
push ecx
mov ebp, eax
call fcn.00411ab0
mov edx, dword [esi + 0xc]
add esp, 0x40
push str.cntry_lookup
push edx
mov dword [esp + 0x68], eax
call fcn.00411ab0
mov dword [esp + 0x30], eax
mov eax, dword [esi + 0xc]
push str.version
push eax
call fcn.00411ab0
mov ecx, dword [esi + 0xc]
push str.AlertText
push ecx
mov dword [esp + 0x74], eax
call fcn.00411ab0
mov edx, dword [esi + 0xc]
push str.AlertTitle
push edx
mov dword [esp + 0x68], eax
call fcn.00411ab0
mov dword [esp + 0x38], eax
mov eax, dword [esi + 0xc]
push str.urlinfo256
push eax
call fcn.00411ab0
mov ecx, dword [esi + 0xc]
push str.predownload
push ecx
mov dword [esp + 0x74], eax
call fcn.00411ab0
add esp, 0x30
cmp byte [esp + 0x12], 0
mov dword [esp + 0x20], eax
jne 0x410772
mov edx, dword [esp + 0x1c]
push 0x45c404
push edx
call dword [sym.imp.KERNEL32.dll_lstrcmpA]
test eax, eax
jne 0x410795
mov ecx, ebx
call fcn.004100d0
push 0xffffffffffffffff
push 0x45c1ea
lea eax, [esp + 0x360]
push 0x800
push eax
call fcn.0043b812
add esp, 0x10
test edi, edi
je 0x4107ba
mov edi, dword [edi + 0xc]
test edi, edi
je 0x4107ba
mov ecx, dword [edi + 4]
push 0xffffffffffffffff
push ecx
lea edx, [ebx + 0x108]
push 0x100
push edx
call fcn.0043b812
add esp, 0x10
test ebp, ebp
je 0x410953
mov edi, dword [ebp + 0xc]
test edi, edi
je 0x410953
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0xc0]
push ecx
xor ebx, ebx
push str.Method
push ebx
mov dword [esp + 0x2c], 0x14
call fcn.0040f6a0
push 0xff
lea edx, [esp + 0x16d]
push ebx
push edx
mov byte [esp + 0x174], bl
call fcn.0043b8e0
mov eax, dword [edi + 4]
push eax
push str.Original_options_element:__s
push 0xffffffffffffffff
lea ecx, [esp + 0x180]
push 0x100
push ecx
call fcn.0043c5b4
lea edx, [esp + 0x188]
push edx
call fcn.0040f9d0
mov ecx, dword [edi + 4]
lea eax, [esp + 0x60]
push eax
push 0x45c430
push ecx
call fcn.0043dd95
mov edi, eax
add esp, 0x40
test edi, edi
je 0x410902
mov ebp, dword [esp + 0x14]
add ebp, 0xd88
lea ecx, [ecx]
push 0x45c434
push edi
call fcn.0043be80
add esp, 8
test eax, eax
je 0x4108cc
push 0x13
push 0x45c444
push edi
mov ebx, 1
call fcn.0043be80
add esp, 8
inc eax
push eax
lea edx, [esp + 0xa8]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
lea eax, [esp + 0xbc]
push eax
lea ecx, [esp + 0xa4]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpA]
test eax, eax
je 0x4108cc
mov edi, dword [sym.imp.KERNEL32.dll_lstrcatA]
push 0x45c448
push ebp
call edi
lea edx, [esp + 0xbc]
push edx
push ebp
call edi
jmp 0x4108d4
push edi
push ebp
call dword [sym.imp.KERNEL32.dll_lstrcatA]
push 0x45c458
push ebp
call dword [sym.imp.KERNEL32.dll_lstrcatA]
lea eax, [esp + 0x2c]
push eax
push 0x45c45c
push 0
call fcn.0043dd95
mov edi, eax
add esp, 0xc
test edi, edi
jne 0x410860
test ebx, ebx
jne 0x410925
mov ebp, dword [esp + 0x14]
mov edi, dword [sym.imp.KERNEL32.dll_lstrcatA]
push str._installmethod
add ebp, 0xd88
push ebp
call edi
lea ecx, [esp + 0xbc]
push ecx
push ebp
call edi
push ebp
push str.Final_options_element:__s
push 0xffffffffffffffff
lea edx, [esp + 0x164]
push 0x100
push edx
call fcn.0043c5b4
lea eax, [esp + 0x16c]
push eax
call fcn.0040f9d0
mov ebx, dword [esp + 0x2c]
add esp, 0x18
mov eax, dword [esp + 0x50]
test eax, eax
je 0x41098c
mov eax, dword [eax + 0xc]
test eax, eax
je 0x41098c
mov ecx, dword [eax + 4]
push 0xffffffffffffffff
push ecx
lea edx, [esp + 0x360]
push 0x800
push edx
call fcn.0043b812
add esp, 0x10
lea eax, [esp + 0x358]
push eax
mov ecx, ebx
call fcn.00410130
mov eax, dword [esp + 0x40]
test eax, eax
je 0x4109bd
mov eax, dword [eax + 0xc]
test eax, eax
je 0x4109bd
mov ecx, dword [eax + 4]
push 0xffffffffffffffff
push ecx
lea edi, [ebx + 0x1588]
push 0x100
push edi
call fcn.0043b812
add esp, 0x10
push edi
mov ecx, ebx
call fcn.00410130
mov eax, dword [esp + 0x58]
test eax, eax
je 0x4109ee
mov eax, dword [eax + 0xc]
test eax, eax
je 0x4109ee
mov edx, dword [eax + 4]
push 0xffffffffffffffff
push edx
lea edi, [ebx + 0x1688]
push 0x100
push edi
call fcn.0043b812
add esp, 0x10
push edi
mov ecx, ebx
call fcn.00410130
mov eax, dword [esp + 0x64]
test eax, eax
je 0x410a1f
mov eax, dword [eax + 0xc]
test eax, eax
je 0x410a1f
mov eax, dword [eax + 4]
push 0xffffffffffffffff
push eax
lea edi, [ebx + 0x1788]
push 0x80
push edi
call fcn.0043b812
add esp, 0x10
push edi
mov ecx, ebx
call fcn.00410130
mov eax, dword [esp + 0x4c]
test eax, eax
je 0x410a48
mov eax, dword [eax + 0xc]
test eax, eax
je 0x410a48
mov ecx, dword [eax + 4]
push 0xffffffffffffffff
push ecx
lea edx, [ebx + 0x208]
push 0x100
push edx
call fcn.0043b812
add esp, 0x10
mov eax, dword [esp + 0x60]
test eax, eax
je 0x410a71
mov eax, dword [eax + 0xc]
test eax, eax
je 0x410a71
mov eax, dword [eax + 4]
push 0xffffffffffffffff
push eax
lea ecx, [ebx + 0x408]
push 0x100
push ecx
call fcn.0043b812
add esp, 0x10
mov eax, dword [esp + 0x28]
test eax, eax
je 0x410a9a
mov eax, dword [eax + 0xc]
test eax, eax
je 0x410a9a
mov edx, dword [eax + 4]
push 0xffffffffffffffff
push edx
lea eax, [ebx + 0x308]
push 0x100
push eax
call fcn.0043b812
add esp, 0x10
mov eax, dword [esp + 0x5c]
test eax, eax
je 0x410ac3
mov eax, dword [eax + 0xc]
test eax, eax
je 0x410ac3
mov ecx, dword [eax + 4]
push 0xffffffffffffffff
push ecx
lea edx, [ebx + 0x508]
push 0x80
push edx
call fcn.0043b812
add esp, 0x10
cmp dword [esp + 0x20], 0
je 0x410b0e
mov eax, dword [esp + 0x20]
mov eax, dword [eax + 0xc]
test eax, eax
je 0x410aef
mov ecx, dword [eax + 4]
push 0xffffffffffffffff
push ecx
lea edx, [ebx + 0x2190]
push 0x80
push edx
call fcn.0043b812
add esp, 0x10
lea edi, [ebx + 0x2190]
push edi
call dword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jne 0x410b0e
push 0x7f
push 0x45c48c
push edi
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
mov eax, dword [esp + 0x44]
test eax, eax
je 0x410b37
mov eax, dword [eax + 0xc]
test eax, eax
je 0x410b37
mov eax, dword [eax + 4]
push 0xffffffffffffffff
push eax
lea ecx, [ebx + 0x2110]
push 0x80
push ecx
call fcn.0043b812
add esp, 0x10
mov eax, dword [esp + 0x48]
test eax, eax
je 0x410b68
mov eax, dword [eax + 0xc]
test eax, eax
je 0x410b68
mov edx, dword [eax + 4]
push 0xffffffffffffffff
push edx
lea edi, [ebx + 0x1808]
push 0x800
push edi
call fcn.0043b812
add esp, 0x10
push edi
mov ecx, ebx
call fcn.00410130
mov eax, dword [esp + 0x18]
test eax, eax
je 0x410b99
mov eax, dword [eax + 0xc]
test eax, eax
je 0x410b99
mov eax, dword [eax + 4]
push 0xffffffffffffffff
push eax
lea edi, [ebx + 0x2008]
push 0x104
push edi
call fcn.0043b812
add esp, 0x10
push edi
mov ecx, ebx
call fcn.00410130
cmp dword [esp + 0x98], 0x10
mov eax, dword [esp + 0x84]
mov byte [esp + 0x12], 0
jae 0x410bb6
lea eax, [esp + 0x84]
mov ecx, dword [esp + 0x24]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpA]
test eax, eax
je 0x410bd1
mov esi, dword [esi + 8]
test esi, esi
jne 0x4105c0
mov ebx, dword [sym.imp.USER32.dll_CharNextA]
lea esi, [esp + 0x358]
mov edi, edi
push 0x45c490
push esi
call fcn.0043be80
mov ebp, eax
add esp, 8
test ebp, ebp
je 0x410c49
push ebp
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov edi, 1
push esi
sub edi, eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
add eax, edi
push eax
push esi
lea edx, [esp + 0xb60]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
mov esi, dword [esp + 0x14]
mov edi, dword [sym.imp.KERNEL32.dll_lstrcatA]
lea eax, [esp + 0xb58]
push eax
add esi, 0x588
push esi
call edi
push 0x45c494
push esi
call edi
push ebp
call ebx
mov esi, eax
test esi, esi
jne 0x410be0
jmp 0x410c5b
mov ecx, dword [esp + 0x14]
push esi
add ecx, 0x588
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcatA]
cmp byte [esp + 0x12], 0
jne 0x410cc8
mov esi, dword [esp + 0x14]
mov ebx, dword [sym.imp.KERNEL32.dll_lstrlenA]
lea edi, [esi + 0x108]
push edi
call ebx
test eax, eax
je 0x410cc8
push edi
call fcn.00415430
add esp, 4
test eax, eax
je 0x410cc8
lea edx, [esi + 0x2110]
push edx
call ebx
cmp eax, 0x40
jne 0x410cc8
mov eax, dword [esi]
mov ecx, dword [eax + 0x14]
push esi
mov dword [esi + 0x210c], 1
call ecx
lea ecx, [esp + 0x30]
call fcn.00416510
lea ecx, [esp + 0x84]
call fcn.00404480
lea ecx, [esp + 0x68]
call fcn.00404480
xor eax, eax
jmp 0x410d2d
mov eax, dword [esp + 0x30]
test eax, eax
je 0x410cd9
push eax
call fcn.0043a71e
add esp, 4
mov esi, 0x10
cmp dword [esp + 0x98], esi
jb 0x410cf7
mov edx, dword [esp + 0x84]
push edx
call fcn.0043a71e
add esp, 4
mov dword [esp + 0x98], 0xf
mov dword [esp + 0x94], 0
mov byte [esp + 0x84], 0
cmp dword [esp + 0x7c], esi
jb 0x410d28
mov eax, dword [esp + 0x68]
push eax
call fcn.0043a71e
add esp, 4
mov eax, 0x80004005
pop edi
mov ecx, dword [esp + 0x1354]
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0043b8c7
add esp, 0x134c
ret 0x10