Function at 0x402090
Capabilities:
Create process on windows
Resolve function by parsing pe exports

Disassembly:
push 0x688
mov eax, 0x44530a
call fcn.0042e60e
mov eax, dword [ebp + 8]
mov dword [ebp - 0x654], eax
push str.LiveUDParam
lea eax, [ebp - 0x458]
push eax
mov ebx, ecx
call fcn.00402be0
xor esi, esi
mov dword [ebp - 4], esi
xor eax, eax
lea edi, [ebp - 0x17]
mov byte [ebp - 0x18], 0
stosd dword es:[edi], eax
mov eax, dword [ebx + 0x130]
cmp eax, esi
jne 0x402102
lea eax, [ebp - 0x25c]
push eax
call fcn.0042017a
pop ecx
push 0xffffffffffffffff
push esi
push eax
lea ecx, [ebx + 0x11c]
mov byte [ebp - 4], 1
call fcn.00403085
push esi
push 1
lea ecx, [ebp - 0x25c]
call fcn.00404b07
push 0xf
pop edi
push esi
lea ecx, [ebp - 0x33c]
mov dword [ebp - 0x324], edi
call fcn.00404b66
mov byte [ebp - 4], 2
mov ecx, dword [ebx + 0x130]
lea eax, [ebx + 0x11c]
cmp dword [eax + 0x18], 8
jb 0x402132
mov eax, dword [eax + 4]
jmp 0x402135
add eax, 4
lea edx, [ebp - 0x33c]
push edx
push ecx
push eax
call fcn.0041fd10
add esp, 0xc
push 0xa
lea eax, [ebp - 0x18]
push eax
push dword [ebx + 0x178]
call fcn.0042e49c
add esp, 0xc
push eax
push str.serverver
lea esi, [ebp - 0x458]
call fcn.00402e3f
push 0xa
lea eax, [ebp - 0x18]
push eax
xor eax, eax
cmp byte [ebx + 0x70], al
setne al
push eax
call fcn.0042e49c
add esp, 0xc
push eax
push str.checkupdate
call fcn.00402e3f
cmp dword [ebp - 0x324], 0x10
mov eax, dword [ebp - 0x338]
jae 0x4021a2
lea eax, [ebp - 0x338]
push eax
push str.productpath
lea esi, [ebp - 0x458]
call fcn.00402e3f
push 0xa
lea eax, [ebp - 0x18]
push eax
xor eax, eax
cmp byte [ebx + 0x1a0], al
setne al
push eax
call fcn.0042e49c
add esp, 0xc
push eax
push str.isinservice
call fcn.00402e3f
mov eax, dword [ebp - 0x654]
mov ecx, 0x452278
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x402209
test dx, dx
je 0x402205
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x402209
add eax, 4
add ecx, 4
test dx, dx
jne 0x4021e3
xor eax, eax
jmp 0x40220e
sbb eax, eax
sbb eax, 0xffffffff
xor esi, esi
cmp eax, esi
jne 0x402372
push esi
lea ecx, [ebp - 0x25c]
mov dword [ebp - 0x244], edi
call fcn.00404b66
push esi
lea ecx, [ebp - 0x2e8]
mov dword [ebp - 0x2d0], edi
call fcn.00404b66
push esi
lea ecx, [ebp - 0x374]
mov dword [ebp - 0x35c], edi
call fcn.00404b66
mov byte [ebp - 4], 5
cmp dword [ebx + 0x8c], 8
mov eax, dword [ebx + 0x88]
jb 0x402266
mov ecx, dword [ebx + 0x78]
jmp 0x402269
lea ecx, [ebx + 0x78]
lea edx, [ebp - 0x25c]
push edx
push eax
push ecx
call fcn.0041fd10
mov ecx, dword [ebx + 0xa4]
lea eax, [ebx + 0x90]
add esp, 0xc
cmp dword [eax + 0x18], 8
jb 0x402291
mov eax, dword [eax + 4]
jmp 0x402294
add eax, 4
lea edx, [ebp - 0x2e8]
push edx
push ecx
push eax
call fcn.0041fd10
mov ecx, dword [ebx + 0xc0]
lea eax, [ebx + 0xac]
add esp, 0xc
cmp dword [eax + 0x18], 8
jb 0x4022bc
mov eax, dword [eax + 4]
jmp 0x4022bf
add eax, 4
lea edx, [ebp - 0x374]
push edx
push ecx
push eax
call fcn.0041fd10
mov eax, dword [ebp - 0x258]
add esp, 0xc
cmp dword [ebp - 0x244], 0x10
jae 0x4022e5
lea eax, [ebp - 0x258]
push eax
push str.xarpath
lea esi, [ebp - 0x458]
call fcn.00402e3f
cmp dword [ebp - 0x2d0], 0x10
mov eax, dword [ebp - 0x2e4]
jae 0x40230b
lea eax, [ebp - 0x2e4]
push eax
push str.xarname
lea esi, [ebp - 0x458]
call fcn.00402e3f
cmp dword [ebp - 0x35c], 0x10
mov eax, dword [ebp - 0x370]
jae 0x402331
lea eax, [ebp - 0x370]
push eax
push str.param
lea esi, [ebp - 0x458]
call fcn.00402e3f
xor esi, esi
push esi
push 1
lea ecx, [ebp - 0x374]
call fcn.00404b82
push esi
push 1
lea ecx, [ebp - 0x2e8]
call fcn.00404b82
push esi
push 1
lea ecx, [ebp - 0x25c]
mov byte [ebp - 4], 2
call fcn.00404b82
push str.Product
lea eax, [ebp - 0x650]
push eax
call fcn.00402be0
push 0
lea ecx, [ebp - 0x304]
mov dword [ebp - 0x2ec], edi
call fcn.00404b66
push 0
lea ecx, [ebp - 0x2b0]
mov dword [ebp - 0x298], edi
call fcn.00404b66
mov byte [ebp - 4], 8
cmp dword [ebx + 0x18], 8
mov ecx, dword [ebx + 0x14]
jb 0x4023bb
mov eax, dword [ebx + 4]
jmp 0x4023be
lea eax, [ebx + 4]
lea edx, [ebp - 0x304]
push edx
push ecx
push eax
call fcn.0041fd10
mov ecx, dword [ebx + 0x30]
add esp, 0xc
cmp dword [ebx + 0x34], 8
jb 0x4023dd
mov eax, dword [ebx + 0x20]
jmp 0x4023e0
lea eax, [ebx + 0x20]
lea edx, [ebp - 0x2b0]
push edx
push ecx
push eax
call fcn.0041fd10
mov eax, dword [ebp - 0x300]
add esp, 0xc
cmp dword [ebp - 0x2ec], 0x10
jae 0x402406
lea eax, [ebp - 0x300]
push eax
push str.name
lea esi, [ebp - 0x650]
call fcn.00402e3f
cmp dword [ebp - 0x298], 0x10
mov eax, dword [ebp - 0x2ac]
jae 0x40242c
lea eax, [ebp - 0x2ac]
push eax
push 0x4522e4
lea esi, [ebp - 0x650]
call fcn.00402e3f
mov eax, esi
push eax
lea eax, [ebp - 0x458]
push eax
call fcn.00402e96
push str.DlPath
lea eax, [ebp - 0x5a8]
push eax
call fcn.00402be0
push 0
lea ecx, [ebp - 0x2cc]
mov dword [ebp - 0x2b4], edi
call fcn.00404b66
mov byte [ebp - 4], 0xa
cmp dword [ebx + 0x50], 8
mov eax, dword [ebx + 0x4c]
jb 0x402482
mov ecx, dword [ebx + 0x3c]
jmp 0x402485
lea ecx, [ebx + 0x3c]
lea edx, [ebp - 0x2cc]
push edx
push eax
push ecx
call fcn.0041fd10
mov esi, dword [ebp - 0x2c8]
add esp, 0xc
cmp dword [ebp - 0x2b4], 0x10
jae 0x4024ab
lea esi, [ebp - 0x2c8]
cmp byte [ebp - 0x598], 0
je 0x4024bf
lea eax, [ebp - 0x5a8]
call fcn.0040339c
push esi
lea ecx, [ebp - 0x594]
mov byte [ebp - 0x598], 0
call fcn.00404aaa
lea eax, [ebp - 0x5a8]
push eax
lea eax, [ebp - 0x458]
push eax
call fcn.00402e96
push str.LocalParam
lea eax, [ebp - 0x500]
push eax
call fcn.00402be0
push 0
lea ecx, [ebp - 0x320]
mov dword [ebp - 0x308], edi
call fcn.00404b66
mov byte [ebp - 4], 0xc
mov ecx, dword [ebx + 0x198]
lea eax, [ebx + 0x184]
cmp dword [eax + 0x18], 8
jb 0x402524
mov eax, dword [eax + 4]
jmp 0x402527
add eax, 4
lea edx, [ebp - 0x320]
push edx
push ecx
push eax
call fcn.0041fd10
mov esi, dword [ebp - 0x31c]
add esp, 0xc
cmp dword [ebp - 0x308], 0x10
jae 0x40254d
lea esi, [ebp - 0x31c]
cmp byte [ebp - 0x4f0], 0
je 0x402561
lea eax, [ebp - 0x500]
call fcn.0040339c
push esi
lea ecx, [ebp - 0x4ec]
mov byte [ebp - 0x4f0], 0
call fcn.00404aaa
lea eax, [ebp - 0x500]
push eax
lea eax, [ebp - 0x458]
push eax
call fcn.00402e96
push 0
lea ecx, [ebp - 0x294]
mov dword [ebp - 0x27c], edi
call fcn.00404b66
lea ecx, [ebp - 0x458]
mov byte [ebp - 4], 0xd
call fcn.0040150b
mov edi, eax
push edi
call fcn.0042e300
pop ecx
push edi
mov esi, eax
push 0
push esi
call fcn.0042c310
add esp, 0xc
push esi
lea ecx, [ebp - 0x458]
call fcn.0040158d
push esi
lea ecx, [ebp - 0x294]
call fcn.00404aaa
push esi
call fcn.0042e3ca
pop ecx
push 7
pop esi
push 0
lea ecx, [ebp - 0x358]
mov dword [ebp - 0x340], esi
call fcn.00404ae9
mov byte [ebp - 4], 0xe
cmp dword [ebp - 0x27c], 0x10
mov eax, dword [ebp - 0x290]
jae 0x40260e
lea eax, [ebp - 0x290]
lea ecx, [ebp - 0x358]
push ecx
push dword [ebp - 0x280]
push eax
call fcn.0041fe10
add esp, 0xc
push dword [ebp - 0x654]
lea ecx, [ebp - 0x278]
call fcn.00402aa2
push 0x4522fc
lea ecx, [ebp - 0x278]
mov byte [ebp - 4], 0xf
call fcn.00402aea
cmp dword [ebp - 0x340], 8
mov eax, dword [ebp - 0x354]
jae 0x40265e
lea eax, [ebp - 0x354]
push eax
lea ecx, [ebp - 0x278]
call fcn.00402aea
push 0x452304
lea ecx, [ebp - 0x278]
call fcn.00402aea
xor eax, eax
mov word [ebp - 0x38], ax
mov ecx, esi
lea edi, [ebp - 0x36]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
push 0xa
lea eax, [ebp - 0x38]
push eax
call dword [0x449128]
push eax
call fcn.0042d60a
add esp, 0xc
push eax
lea ecx, [ebp - 0x278]
call fcn.00402aea
lea eax, [ebp - 0x3ac]
push eax
call fcn.004202c7
mov byte [ebp - 4], 0x10
lea eax, [ebp - 0x3ac]
mov dword [esp], str.XLLiveUD.exe
push eax
lea eax, [ebp - 0x390]
push eax
call fcn.00404343
add esp, 0xc
xor eax, eax
mov byte [ebp - 4], 0x11
push 0x206
mov word [ebp - 0x240], ax
xor esi, esi
lea eax, [ebp - 0x23e]
push esi
push eax
call fcn.0042c310
add esp, 0xc
lea eax, [ebp - 0x240]
push eax
push 0x104
call dword [0x4490f4]
cmp dword [ebx + 0x114], esi
jbe 0x402775
push 0xffffffffffffffff
push esi
add ebx, 0x100
push ebx
lea ecx, [ebp - 0x390]
call fcn.00403085
cmp dword [ebx + 0x18], 8
jb 0x402735
mov ebx, dword [ebx + 4]
jmp 0x402738
add ebx, 4
lea eax, [ebp - 0x25c]
push ebx
push eax
call fcn.0042010b
cmp dword [ebp - 0x244], 8
mov eax, dword [ebp - 0x258]
pop ecx
pop ecx
jae 0x40275c
lea eax, [ebp - 0x258]
push eax
call dword [0x4490f0]
xor ebx, ebx
push esi
inc ebx
push ebx
lea ecx, [ebp - 0x25c]
call fcn.00404b07
jmp 0x402778
xor ebx, ebx
inc ebx
cmp dword [ebp - 0x394], 8
mov eax, dword [ebp - 0x3a8]
jae 0x40278d
lea eax, [ebp - 0x3a8]
cmp dword [ebp - 0x260], 8
mov dword [ebp - 0x658], eax
mov eax, dword [ebp - 0x274]
jae 0x4027a8
lea eax, [ebp - 0x274]
cmp dword [ebp - 0x378], 8
mov edi, dword [ebp - 0x38c]
mov dword [ebp - 0x654], eax
jae 0x4027c3
lea edi, [ebp - 0x38c]
push 0x3c
lea eax, [ebp - 0x694]
push esi
push eax
call fcn.0042c310
mov eax, dword [ebp - 0x654]
mov dword [ebp - 0x680], eax
mov eax, dword [ebp - 0x658]
mov dword [ebp - 0x67c], eax
add esp, 0xc
lea eax, [ebp - 0x694]
push eax
mov dword [ebp - 0x694], 0x3c
mov dword [ebp - 0x68c], esi
mov dword [ebp - 0x688], str.open
mov dword [ebp - 0x684], edi
mov dword [ebp - 0x678], 5
mov dword [ebp - 0x674], esi
mov dword [ebp - 0x690], 0x40
call dword [0x4492d8]
test eax, eax
je 0x402842
mov dword [ebp - 0x658], esi
xor edi, edi
jmp 0x40284a
call dword [0x4490bc]
mov edi, eax
lea eax, [ebp - 0x240]
push eax
call dword [0x4490f0]
push esi
push ebx
lea ecx, [ebp - 0x390]
call fcn.00404b07
push esi
push ebx
lea ecx, [ebp - 0x3ac]
call fcn.00404b07
push esi
push ebx
lea ecx, [ebp - 0x278]
call fcn.00404b07
push esi
push ebx
lea ecx, [ebp - 0x358]
call fcn.00404b07
push esi
push ebx
lea ecx, [ebp - 0x294]
call fcn.00404b82
push esi
push ebx
lea ecx, [ebp - 0x320]
call fcn.00404b82
lea ecx, [ebp - 0x500]
mov byte [ebp - 4], 0xa
call fcn.00402c9a
push esi
push ebx
lea ecx, [ebp - 0x2cc]
call fcn.00404b82
lea ecx, [ebp - 0x5a8]
mov byte [ebp - 4], 8
call fcn.00402c9a
push esi
push ebx
lea ecx, [ebp - 0x2b0]
call fcn.00404b82
push esi
push ebx
lea ecx, [ebp - 0x304]
call fcn.00404b82
lea ecx, [ebp - 0x650]
mov byte [ebp - 4], 2
call fcn.00402c9a
push esi
push ebx
lea ecx, [ebp - 0x33c]
call fcn.00404b82
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x458]
call fcn.00402c9a
mov eax, edi
call fcn.0042e691
ret 4