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

Disassembly:
mov eax, 0x1328
call fcn.0043fc10
mov eax, dword [0x494284]
xor eax, esp
mov dword [esp + 0x1324], eax
push ebx
mov ebx, dword [esp + 0x1330]
xor eax, eax
push ebp
push esi
mov esi, dword [esp + 0x133c]
push edi
lea edi, [esp + 0x64]
stosd dword es:[edi], eax
push 0x41
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor eax, eax
mov dword [esp + 0x78], eax
mov ebp, eax
mov dword [esp + 0x7c], 0xf
mov byte [esp + 0x68], al
mov byte [esp + 0xb0], al
mov byte [esp + 0xf4], al
pop edi
mov dword [esp + 0x24], edi
test esi, esi
jne 0x412abe
lea eax, [esp + 0x234]
push eax
call fcn.00411cc2
pop ecx
test eax, eax
jne 0x412ab7
mov eax, dword [esp + 0x78]
cmp eax, 0x10
jb 0x413362
mov ecx, dword [esp + 0x64]
inc eax
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], ecx
cmp eax, 0x1000
jb 0x413359
lea eax, [esp + 0x14]
push eax
lea eax, [esp + 0x14]
push eax
call fcn.004078a4
mov eax, dword [esp + 0x1c]
pop ecx
pop ecx
mov ecx, dword [esp + 0x10]
jmp 0x413359
lea esi, [esp + 0x234]
push edi
lea eax, [esp + 0xb0]
push eax
push dword [esp + 0x134c]
lea eax, [esp + 0x70]
push 1
push eax
push esi
call fcn.0040c9a1
mov edi, eax
add esp, 0x18
test edi, edi
jns 0x412b2b
mov ecx, dword [esp + 0x78]
cmp ecx, 0x10
jb 0x412b24
mov eax, dword [esp + 0x64]
inc ecx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], eax
cmp ecx, 0x1000
jb 0x412b1b
lea eax, [esp + 0x10]
push eax
lea eax, [esp + 0x18]
push eax
call fcn.004078a4
mov eax, dword [esp + 0x1c]
pop ecx
pop ecx
mov ecx, dword [esp + 0x10]
push ecx
push eax
call fcn.0043f54d
pop ecx
pop ecx
mov eax, edi
jmp 0x413367
lea eax, [esp + 0x24]
xor edi, edi
push eax
lea eax, [esp + 0xf4]
push eax
push str.VersionXmlChecksum
push edi
call fcn.00411b60
add esp, 0x10
test eax, eax
je 0x412b77
lea eax, [esp + 0xf0]
push eax
lea eax, [esp + 0xb0]
push eax
call fcn.0044b90d
pop ecx
pop ecx
test eax, eax
jne 0x412b6c
xor ebp, ebp
inc ebp
jmp 0x412b8d
push str.Update_Descriptor_Checksums_DO_NOT_Match_n
call fcn.00419218
pop ecx
lea eax, [esp + 0xac]
push eax
push str.VersionXmlChecksum
push edi
call fcn.0041263c
add esp, 0xc
cmp dword [esp + 0x1348], edi
je 0x412be0
test ebp, ebp
je 0x412be0
mov eax, dword [esp + 0x78]
cmp eax, 0x10
jb 0x412bd9
mov ecx, dword [esp + 0x64]
inc eax
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], eax
cmp eax, 0x1000
jb 0x412bd0
lea eax, [esp + 0x10]
push eax
lea eax, [esp + 0x18]
push eax
call fcn.004078a4
mov eax, dword [esp + 0x18]
pop ecx
pop ecx
mov ecx, dword [esp + 0x14]
push eax
push ecx
call fcn.0043f54d
pop ecx
pop ecx
xor eax, eax
jmp 0x413367
push str.Saving_Update_Descriptor_XML_Data_n
call fcn.00419218
pop ecx
lea eax, [esp + 0x94]
mov byte [esp + 0x1a], 1
push eax
lea eax, [esp + 0x20]
push eax
call fcn.0042abc4
pop ecx
mov ecx, eax
call fcn.0042aa77
push eax
lea eax, [esp + 0x80]
push eax
call fcn.004171ba
pop ecx
pop ecx
lea ecx, [esp + 0x94]
call fcn.00407d8d
push 0x800
lea eax, [esp + 0x338]
push edi
push eax
call fcn.00441390
add esp, 0xc
lea eax, [ebx + 8]
push 0xff
push esi
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
cmp dword [esp + 0x78], 0x10
lea ecx, [esp + 0x64]
mov eax, dword [esp + 0x74]
lea edx, [esp + 0x1b]
cmovae ecx, dword [esp + 0x64]
add eax, ecx
lea ecx, [esp + 0x64]
cmp dword [esp + 0x78], 0x10
push edx
cmovae ecx, dword [esp + 0x68]
push eax
push ecx
lea ecx, [esp + 0x64]
call fcn.0041288c
lea eax, [esp + 0x1b]
mov byte [esp + 0x1b], 0
push eax
lea ecx, [esp + 0x5c]
call fcn.004128c3
push dword [esp + 0x58]
call fcn.00413e08
mov esi, eax
pop ecx
test esi, esi
je 0x41323b
mov edi, dword [sym.imp.KERNEL32.dll_lstrcmpA]
push str.java_update
push dword [esi + 4]
call edi
test eax, eax
jne 0x41323b
mov ebp, dword [esi + 0xc]
jmp 0x413233
push str.information
push dword [ebp + 4]
call edi
test eax, eax
jne 0x413230
push str.xml:lang
push dword [ebp + 0x10]
call fcn.00413bf7
push str.version
push dword [ebp + 0x10]
mov dword [esp + 0x24], eax
call fcn.00413bf7
add esp, 0x10
mov esi, eax
push 0x47190c
push esi
call edi
test eax, eax
je 0x412d16
push 0x471910
push esi
call edi
test eax, eax
jne 0x413230
cmp dword [esp + 0x90], 0x10
lea eax, [esp + 0x7c]
cmovae eax, dword [esp + 0x7c]
push eax
push dword [esp + 0x18]
call edi
test eax, eax
je 0x412d45
push 0x4718e4
push dword [esp + 0x18]
call edi
test eax, eax
jne 0x413230
push str.descriptionfrom8
push dword [ebp + 0xc]
call fcn.00413c1f
push str.title
push dword [ebp + 0xc]
mov dword [esp + 0x3c], eax
call fcn.00413c1f
push str.moreinfotxt
push dword [ebp + 0xc]
mov dword [esp + 0x48], eax
call fcn.00413c1f
push str.caption
push dword [ebp + 0xc]
mov dword [esp + 0x54], eax
call fcn.00413c1f
push str.moreinfo
push dword [ebp + 0xc]
mov dword [esp + 0x60], eax
call fcn.00413c1f
push 0x470fe8
push dword [ebp + 0xc]
mov dword [esp + 0x6c], eax
call fcn.00413c1f
push str.options
push dword [ebp + 0xc]
mov dword [esp + 0x48], eax
call fcn.00413c1f
push str.post_status
push dword [ebp + 0xc]
mov dword [esp + 0x60], eax
call fcn.00413c1f
add esp, 0x40
mov dword [esp + 0x40], eax
push str.cntry_lookup
push dword [ebp + 0xc]
call fcn.00413c1f
push str.version
push dword [ebp + 0xc]
mov dword [esp + 0x54], eax
call fcn.00413c1f
push str.AlertText
push dword [ebp + 0xc]
mov dword [esp + 0x60], eax
call fcn.00413c1f
push str.AlertTitle
push dword [ebp + 0xc]
mov dword [esp + 0x74], eax
call fcn.00413c1f
push str.urlinfo256
push dword [ebp + 0xc]
mov dword [esp + 0x44], eax
call fcn.00413c1f
push str.predownload
push dword [ebp + 0xc]
mov dword [esp + 0x80], eax
call fcn.00413c1f
add esp, 0x30
mov dword [esp + 0x4c], eax
cmp byte [esp + 0x1a], 0
jne 0x412e4f
push 0x47190c
push esi
call edi
test eax, eax
jne 0x412e72
mov ecx, ebx
call fcn.00413382
push 0xffffffffffffffff
push 0x46fb0e
lea eax, [esp + 0x33c]
push 0x800
push eax
call fcn.00445411
add esp, 0x10
mov eax, dword [esp + 0x10]
test eax, eax
je 0x412e9a
mov eax, dword [eax + 0xc]
test eax, eax
je 0x412e9a
push 0xffffffffffffffff
push dword [eax + 4]
lea eax, [ebx + 0x108]
push 0x100
push eax
call fcn.00445411
add esp, 0x10
mov eax, dword [esp + 0x20]
test eax, eax
je 0x412fde
mov esi, dword [eax + 0xc]
test esi, esi
je 0x412fde
xor eax, eax
mov dword [esp + 0x20], 0x14
mov dword [esp + 0x10], eax
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x98]
push eax
push str.Method
push 0
call fcn.00411b60
mov edi, 0x100
lea eax, [esp + 0x144]
push edi
push 0
push eax
call fcn.00441390
push dword [esi + 4]
lea eax, [esp + 0x154]
push str.Original_options_element:__s
push 0xffffffffffffffff
push edi
push eax
call fcn.00409634
lea eax, [esp + 0x164]
push eax
call fcn.0041287e
lea eax, [esp + 0x5c]
push eax
push 0x4719bc
push dword [esi + 4]
call fcn.0044b810
mov edi, eax
lea esi, [ebx + 0xd88]
add esp, 0x40
test edi, edi
je 0x412f95
push str._installmethod
push edi
call fcn.004414f0
pop ecx
pop ecx
test eax, eax
je 0x412f63
cmp dword [esp + 0x1344], 0
mov dword [esp + 0x10], 1
je 0x412f63
push edi
push esi
call dword [sym.imp.KERNEL32.dll_lstrcatA]
mov edi, 0x4719d0
push edi
mov edi, dword [sym.imp.KERNEL32.dll_lstrcatA]
push esi
call edi
push 0x4719bc
push esi
call edi
lea eax, [esp + 0x28]
push eax
push 0x4719bc
push 0
call fcn.0044b810
mov edi, eax
add esp, 0xc
test edi, edi
jne 0x412f33
cmp dword [esp + 0x10], eax
jne 0x412fae
mov edi, dword [sym.imp.KERNEL32.dll_lstrcatA]
push str._installmethod
push esi
call edi
lea eax, [esp + 0x94]
push eax
push esi
call edi
push esi
push str.Final_options_element:__s
push 0xffffffffffffffff
lea eax, [esp + 0x140]
push 0x100
push eax
call fcn.00409634
lea eax, [esp + 0x148]
push eax
call fcn.0041287e
mov edi, dword [sym.imp.KERNEL32.dll_lstrcmpA]
add esp, 0x18
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x413016
mov eax, dword [eax + 0xc]
test eax, eax
je 0x413016
push 0xffffffffffffffff
push dword [eax + 4]
lea eax, [esp + 0x33c]
push 0x800
push eax
call fcn.00445411
add esp, 0x10
lea eax, [esp + 0x334]
mov ecx, ebx
push eax
call fcn.004129a0
mov eax, dword [esp + 0x30]
test eax, eax
je 0x413046
mov eax, dword [eax + 0xc]
test eax, eax
je 0x413046
push 0xffffffffffffffff
push dword [eax + 4]
lea esi, [ebx + 0x1588]
push 0x100
push esi
call fcn.00445411
add esp, 0x10
mov ecx, ebx
push esi
call fcn.004129a0
mov eax, dword [esp + 0x34]
test eax, eax
je 0x413076
mov eax, dword [eax + 0xc]
test eax, eax
je 0x413076
push 0xffffffffffffffff
push dword [eax + 4]
lea esi, [ebx + 0x1688]
push 0x100
push esi
call fcn.00445411
add esp, 0x10
mov ecx, ebx
push esi
call fcn.004129a0
mov eax, dword [esp + 0x38]
test eax, eax
je 0x4130a6
mov eax, dword [eax + 0xc]
test eax, eax
je 0x4130a6
push 0xffffffffffffffff
push dword [eax + 4]
lea esi, [ebx + 0x1788]
push 0x80
push esi
call fcn.00445411
add esp, 0x10
mov ecx, ebx
push esi
call fcn.004129a0
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x4130ce
mov eax, dword [eax + 0xc]
test eax, eax
je 0x4130ce
push 0xffffffffffffffff
push dword [eax + 4]
lea eax, [ebx + 0x208]
push 0x100
push eax
call fcn.00445411
add esp, 0x10
mov eax, dword [esp + 0x40]
test eax, eax
je 0x4130f6
mov eax, dword [eax + 0xc]
test eax, eax
je 0x4130f6
push 0xffffffffffffffff
push dword [eax + 4]
lea eax, [ebx + 0x408]
push 0x100
push eax
call fcn.00445411
add esp, 0x10
mov eax, dword [esp + 0x44]
test eax, eax
je 0x41311e
mov eax, dword [eax + 0xc]
test eax, eax
je 0x41311e
push 0xffffffffffffffff
push dword [eax + 4]
lea eax, [ebx + 0x308]
push 0x100
push eax
call fcn.00445411
add esp, 0x10
mov eax, dword [esp + 0x48]
test eax, eax
je 0x413146
mov eax, dword [eax + 0xc]
test eax, eax
je 0x413146
push 0xffffffffffffffff
push dword [eax + 4]
lea eax, [ebx + 0x508]
push 0x80
push eax
call fcn.00445411
add esp, 0x10
mov eax, dword [esp + 0x4c]
test eax, eax
je 0x413187
mov eax, dword [eax + 0xc]
lea esi, [ebx + 0x2190]
test eax, eax
je 0x41316e
push 0xffffffffffffffff
push dword [eax + 4]
push 0x80
push esi
call fcn.00445411
add esp, 0x10
push esi
call dword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jne 0x413187
push 0x7f
push 0x470178
push esi
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
mov eax, dword [esp + 0x50]
test eax, eax
je 0x4131af
mov eax, dword [eax + 0xc]
test eax, eax
je 0x4131af
push 0xffffffffffffffff
push dword [eax + 4]
lea eax, [ebx + 0x2110]
push 0x80
push eax
call fcn.00445411
add esp, 0x10
mov eax, dword [esp + 0x54]
test eax, eax
je 0x4131df
mov eax, dword [eax + 0xc]
test eax, eax
je 0x4131df
push 0xffffffffffffffff
push dword [eax + 4]
lea esi, [ebx + 0x1808]
push 0x800
push esi
call fcn.00445411
add esp, 0x10
mov ecx, ebx
push esi
call fcn.004129a0
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x41320f
mov eax, dword [eax + 0xc]
test eax, eax
je 0x41320f
push 0xffffffffffffffff
push dword [eax + 4]
lea esi, [ebx + 0x2008]
push 0x104
push esi
call fcn.00445411
add esp, 0x10
mov ecx, ebx
push esi
call fcn.004129a0
cmp dword [esp + 0x90], 0x10
lea eax, [esp + 0x7c]
mov byte [esp + 0x1a], 0
cmovae eax, dword [esp + 0x7c]
push eax
push dword [esp + 0x18]
call edi
test eax, eax
je 0x41323b
mov ebp, dword [ebp + 8]
test ebp, ebp
jne 0x412cc5
lea edi, [esp + 0x334]
lea ebp, [ebx + 0x588]
push 0x4719f0
push edi
call fcn.004414f0
mov dword [esp + 0x24], eax
pop ecx
pop ecx
test eax, eax
je 0x4132af
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
xor esi, esi
inc esi
push edi
sub esi, eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
add eax, esi
push eax
push edi
lea eax, [esp + 0xb3c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
lea eax, [esp + 0xb34]
push eax
push ebp
call dword [sym.imp.KERNEL32.dll_lstrcatA]
push 0x470b64
push ebp
call dword [sym.imp.KERNEL32.dll_lstrcatA]
push dword [esp + 0x1c]
call dword [sym.imp.USER32.dll_CharNextA]
mov edi, eax
test edi, edi
jne 0x413248
jmp 0x4132b7
push edi
push ebp
call dword [sym.imp.KERNEL32.dll_lstrcatA]
cmp byte [esp + 0x1a], 0
jne 0x413311
mov ebp, dword [sym.imp.KERNEL32.dll_lstrlenA]
lea esi, [ebx + 0x108]
push esi
call ebp
test eax, eax
je 0x413311
push esi
call fcn.00418f54
pop ecx
test eax, eax
je 0x413311
lea eax, [ebx + 0x2110]
push eax
call ebp
cmp eax, 0x40
jne 0x413311
mov eax, dword [ebx]
push ebx
mov dword [ebx + 0x210c], 1
call dword [eax + 0x14]
lea ecx, [esp + 0x58]
call fcn.00412801
lea ecx, [esp + 0x7c]
call fcn.00407d8d
jmp 0x412b9a
lea ecx, [esp + 0x58]
call fcn.00412801
lea ecx, [esp + 0x7c]
call fcn.00407d8d
mov eax, dword [esp + 0x78]
cmp eax, 0x10
jb 0x413362
mov ecx, dword [esp + 0x64]
inc eax
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], ecx
cmp eax, 0x1000
jb 0x413359
lea eax, [esp + 0x10]
push eax
lea eax, [esp + 0x18]
push eax
call fcn.004078a4
mov eax, dword [esp + 0x18]
pop ecx
pop ecx
mov ecx, dword [esp + 0x14]
push eax
push ecx
call fcn.0043f54d
pop ecx
pop ecx
mov eax, 0x80004005
mov ecx, dword [esp + 0x1334]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0043f9b7
add esp, 0x1328
ret 0x10