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

Disassembly:
push 0xffffffffffffffff
push 0x492003
mov eax, dword fs:[0]
push eax
sub esp, 0x54
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4b8968]
xor eax, esp
push eax
lea eax, [esp + 0x68]
mov dword fs:[0], eax
mov dword [esp + 0x24], ecx
lea ecx, [esp + 0x54]
call fcn.004409e0
xor edi, edi
mov dword [esp + 0x70], edi
mov dword [esp + 0x48], edi
mov dword [esp + 0x50], edi
mov dword [esp + 0x44], vtable.CAllInfo2Response.0
lea ecx, [esp + 0x38]
mov byte [esp + 0x70], 1
call fcn.0043ebd0
mov byte [esp + 0x70], 2
call fcn.0045258f
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x41dd47
push 0x80004005
call fcn.00401090
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [esp + 0x18], eax
mov byte [esp + 0x70], 3
call fcn.0045258f
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x41dd76
push 0x80004005
call fcn.00401090
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [esp + 0x1c], eax
mov eax, dword [0x4ba088]
push ecx
add eax, 0xfffffff0
mov dword [esp + 0x2c], esp
mov esi, esp
push eax
mov byte [esp + 0x78], 4
call fcn.004019a0
lea ecx, [esp + 0x28]
add esp, 4
add eax, 0x10
push ecx
mov dword [esi], eax
call fcn.0042ae70
add esp, 8
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0x74], 5
call fcn.004023e0
mov eax, dword [esp + 0x20]
add eax, 0xfffffff0
mov byte [esp + 0x70], 4
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x41dde9
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov esi, dword [esp + 0x1c]
push esi
push str.Webservice_URL_:__s
push 0x16c
push str.CALUpdateModule::ProjectListParsing
push 0x4b9f70
call fcn.00427560
add esp, 0x14
push esi
lea ecx, [esp + 0x3c]
call fcn.00421cb0
mov ecx, dword [0x4ba088]
mov eax, dword [ecx - 0xc]
cmp eax, edi
jne 0x41de4a
lea edx, [esp + 0x20]
push edx
call fcn.0042f830
mov eax, dword [eax]
push eax
lea ecx, [esp + 0x20]
push str._sESTsoftALUpdateProductInfo.xml
push ecx
mov byte [esp + 0x80], 6
call fcn.00402730
add esp, 0x10
jmp 0x41de78
lea ecx, [esp + 0x20]
push ecx
call fcn.0042f830
mov edx, dword [0x4ba088]
mov eax, dword [eax]
push edx
push eax
lea ecx, [esp + 0x24]
push str._sESTsoftALUpdate_sProductInfo.xml
push ecx
mov byte [esp + 0x84], 7
call fcn.00402730
add esp, 0x14
mov eax, dword [esp + 0x20]
add eax, 0xfffffff0
or ecx, 0xffffffff
lea edx, [eax + 0xc]
mov byte [esp + 0x70], 4
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x41de9d
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ebp, dword [esp + 0x18]
push edi
lea ecx, [esp + 0x24]
push ebp
push ecx
call fcn.0042e8f0
mov eax, dword [esp + 0x2c]
add eax, 0xfffffff0
add esp, 0xc
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x41ded0
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
cmp byte [esp + 0x80], 0
je 0x41deec
push edi
push 1
push 0x468
mov ecx, 0x4ba0a0
call fcn.004012f0
push edi
push 1
push 0x465
mov ecx, 0x4ba0a0
call fcn.004012f0
mov bl, byte [esp + 0x78]
test bl, bl
sete cl
push ecx
push ecx
mov edx, esp
mov dword [esp + 0x30], esp
push edx
call fcn.0042f250
mov eax, esp
mov dword [esp + 0x2c], esp
push eax
mov byte [esp + 0x80], 8
call fcn.0042dec0
mov ecx, esp
mov dword [esp + 0x3c], esp
push ecx
mov byte [esp + 0x84], 9
call fcn.0042dfe0
add esp, 4
lea ecx, [esp + 0x64]
mov byte [esp + 0x80], 4
call fcn.0043f490
cmp byte [esp + 0x7c], 0
jne 0x41e182
test bl, bl
je 0x41e0ab
lea edx, [esp + 0x20]
push edx
call fcn.0042f830
mov eax, dword [eax]
push str.ALUpdate
push eax
lea ecx, [esp + 0x24]
push str._sESTsoftALUpdate_sProductInfo.xml
push ecx
mov byte [esp + 0x84], 0xa
call fcn.00402730
mov eax, dword [esp + 0x34]
add eax, 0xfffffff0
add esp, 0x14
mov byte [esp + 0x70], 4
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x41dfb5
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push ecx
mov ecx, esp
mov dword [esp + 0x30], esp
push str.ALUpdate
call fcn.00402f40
call fcn.0042ac30
add esp, 4
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x34], esp
push 0x4978d6
call fcn.00402f40
push ecx
mov esi, esp
mov dword [esp + 0x34], esp
push ecx
mov ecx, esp
mov dword [esp + 0x40], esp
push ecx
mov ecx, 0x4ba0a0
mov byte [esp + 0x84], 0xb
call fcn.00402900
push esi
call fcn.0042f9e0
add esp, 8
lea edx, [esp + 0x2c]
push edx
mov ecx, 0x4ba0a0
mov byte [esp + 0x80], 0xc
call fcn.00402900
mov eax, dword [eax]
push ecx
mov ecx, esp
mov dword [esp + 0x40], esp
push eax
push ecx
mov byte [esp + 0x88], 0xd
call fcn.0042ddb0
add esp, 4
mov ecx, esp
mov dword [esp + 0x48], esp
push str.ALUpdate
mov byte [esp + 0x88], 0xe
call fcn.00402f40
lea ecx, [esp + 0x68]
mov byte [esp + 0x84], 0xf
call fcn.00440c90
mov eax, dword [esp + 0x20]
add eax, 0xfffffff0
mov byte [esp + 0x70], 4
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x41e08a
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ebp, dword [esp + 0x18]
push ebp
lea ecx, [esp + 0x48]
push ecx
lea edx, [esp + 0x5c]
push edx
lea ecx, [esp + 0x44]
call fcn.00441370
mov bl, byte [esp + 0x78]
jmp 0x41e191
push 0x4978d6
lea ecx, [esp + 0x24]
xor edi, edi
call fcn.00402f40
mov ebx, 0x10
mov byte [esp + 0x70], bl
lea ecx, [esp + 0x20]
push ecx
push edi
push ecx
mov ecx, esp
mov dword [esp + 0x40], esp
push str.SoftwareESTsoft
call fcn.00402f40
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.0042c5c0
add esp, 0x10
test eax, eax
je 0x41e130
mov edx, dword [esp + 0x20]
push str.ALUpdate
push edx
add edi, 1
call fcn.004739eb
add esp, 8
test eax, eax
je 0x41e0c4
lea eax, [esp + 0x54]
push eax
mov eax, dword [esp + 0x24]
push ecx
add eax, 0xfffffff0
mov dword [esp + 0x3c], esp
mov esi, esp
push eax
call fcn.004019a0
mov ecx, dword [esp + 0x30]
add eax, ebx
add esp, 4
mov dword [esi], eax
call fcn.0041c4f0
jmp 0x41e0c4
lea ecx, [esp + 0x17]
call fcn.0041bf00
lea ecx, [esp + 0x17]
mov byte [esp + 0x70], 0x11
call fcn.00420770
lea ecx, [esp + 0x17]
mov byte [esp + 0x70], bl
call fcn.00421ae0
mov eax, dword [esp + 0x20]
add eax, 0xfffffff0
mov byte [esp + 0x70], 4
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41e08e
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
jmp 0x41e08e
lea eax, [esp + 0x44]
push eax
push ebp
lea ecx, [esp + 0x40]
call fcn.00441510
test al, al
jne 0x41e22e
mov eax, dword [esp + 0x1c]
add eax, 0xfffffff0
mov byte [esp + 0x70], 3
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41e1be
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea eax, [ebp - 0x10]
or edx, 0xffffffff
lea ecx, [eax + 0xc]
mov byte [esp + 0x70], 2
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41e1df
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x3c]
test eax, eax
mov dword [esp + 0x38], vtable.UpdateServiceSoap.0
je 0x41e20e
push 0
push eax
call fcn.00432390
mov ecx, dword [esp + 0x44]
push ecx
call fcn.00436070
mov edx, dword [esp + 0x48]
push edx
call fcn.0043e560
add esp, 0x10
lea ecx, [esp + 0x54]
mov dword [esp + 0x44], vtable._ns1__GetAllInformation2Response.0
mov dword [esp + 0x70], 0xffffffff
call fcn.0043f2a0
xor eax, eax
jmp 0x41e72b
movsx eax, word [esp + 0x4c]
push 0
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x40], esp
push str.ExecuteTerm
call fcn.00402f40
push ecx
mov ecx, esp
mov dword [esp + 0x40], esp
push str.SoftwareESTsoftALUpdate
mov byte [esp + 0x84], 0x12
call fcn.00402f40
push reloc.WSOCK32.dll_accept
mov byte [esp + 0x84], 4
call fcn.0042bf80
add esp, 0x14
test bl, bl
je 0x41e34a
call fcn.0045258f
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x41e297
push 0x80004005
call fcn.00401090
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [esp + 0x7c], eax
push 0x22
mov bl, 0x13
push str.SoftwareESTsoftALUpdateALUpdate
lea ecx, [esp + 0x84]
mov byte [esp + 0x78], bl
call fcn.004020c0
push ecx
mov ecx, esp
mov dword [esp + 0x38], esp
push str.RunCount
call fcn.00402f40
mov esi, dword [esp + 0x80]
push ecx
add esi, 0xfffffff0
mov dword [esp + 0x38], esp
mov edi, esp
push esi
mov byte [esp + 0x7c], 0x14
call fcn.004019a0
add eax, 0x10
add esp, 4
mov dword [edi], eax
push reloc.WSOCK32.dll_accept
mov byte [esp + 0x7c], bl
call fcn.0042c1e0
add esp, 0xc
test eax, eax
je 0x41e323
push ecx
mov ecx, esp
mov dword [esp + 0x38], esp
push str.ALUpdate
call fcn.00402f40
call fcn.0042ad50
add esp, 4
mov byte [esp + 0x70], 4
lea ecx, [esi + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41e492
mov ecx, dword [esi]
mov eax, dword [ecx]
mov edx, dword [eax + 4]
push esi
call edx
jmp 0x41e492
cmp byte [esp + 0x7c], 0
jne 0x41e492
push 0x4978d6
lea ecx, [esp + 0x80]
xor ebp, ebp
call fcn.00402f40
mov byte [esp + 0x70], 0x15
mov bl, 0x16
lea eax, [esp + 0x7c]
push eax
push ebp
push ecx
mov ecx, esp
mov dword [esp + 0x40], esp
push str.SoftwareESTsoft
call fcn.00402f40
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.0042c5c0
add esp, 0x10
test eax, eax
je 0x41e484
mov ecx, dword [esp + 0x7c]
push str.ALUpdate
push ecx
add ebp, 1
call fcn.004739eb
add esp, 8
test eax, eax
je 0x41e36f
call fcn.0045258f
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
je 0x41dd3d
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [esp + 0x20], eax
mov ecx, dword [esp + 0x7c]
push ecx
lea edx, [esp + 0x24]
push str.SoftwareESTsoftALUpdate_s
push edx
mov byte [esp + 0x7c], bl
call fcn.00402730
add esp, 8
mov ecx, esp
mov dword [esp + 0x38], esp
push str.RunCount
call fcn.00402f40
mov esi, dword [esp + 0x24]
push ecx
add esi, 0xfffffff0
mov dword [esp + 0x38], esp
mov edi, esp
push esi
mov byte [esp + 0x7c], 0x17
call fcn.004019a0
add eax, 0x10
add esp, 4
mov dword [edi], eax
push reloc.WSOCK32.dll_accept
mov byte [esp + 0x7c], bl
call fcn.0042c1e0
add esp, 0xc
test eax, eax
je 0x41e45d
mov eax, dword [esp + 0x7c]
push ecx
add eax, 0xfffffff0
mov dword [esp + 0x38], esp
mov edi, esp
push eax
call fcn.004019a0
add eax, 0x10
add esp, 4
mov dword [edi], eax
call fcn.0042ad50
add esp, 4
mov byte [esp + 0x70], 0x15
lea eax, [esi + 0xc]
or ecx, 0xffffffff
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x41e36f
mov ecx, dword [esi]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push esi
call eax
jmp 0x41e36f
lea ecx, [esp + 0x7c]
mov byte [esp + 0x70], 4
call fcn.00401a80
push 0
push 2
push 0x465
mov ecx, 0x4ba0a0
call fcn.004012f0
mov eax, dword [esp + 0x48]
test eax, eax
je 0x41e647
lea ecx, [eax + 4]
mov dword [esp + 0x7c], ecx
mov ecx, dword [ecx + 4]
test ecx, ecx
je 0x41e647
mov edx, dword [esp + 0x7c]
mov edx, dword [edx + 8]
sub edx, ecx
sar edx, 2
je 0x41e647
mov edx, dword [esp + 0x7c]
mov ecx, dword [edx + 8]
cmp dword [edx + 4], ecx
mov dword [esp + 0x20], ecx
jbe 0x41e4ee
call fcn.00473692
mov eax, dword [esp + 0x48]
mov edi, dword [eax + 8]
cmp edi, dword [eax + 0xc]
lea esi, [eax + 4]
jbe 0x41e4fe
call fcn.00473692
mov ebp, esi
test ebp, ebp
je 0x41e50a
cmp ebp, dword [esp + 0x7c]
je 0x41e50f
call fcn.00473692
cmp edi, dword [esp + 0x20]
je 0x41e647
push 0xf8
call fcn.00451402
add esp, 4
mov dword [esp + 0x34], eax
test eax, eax
mov byte [esp + 0x70], 0x18
je 0x41e53e
mov ecx, eax
call fcn.00405e40
mov esi, eax
jmp 0x41e540
xor esi, esi
test ebp, ebp
mov byte [esp + 0x70], 4
jne 0x41e54e
call fcn.00473692
cmp edi, dword [ebp + 8]
jb 0x41e558
call fcn.00473692
movzx eax, byte [esp + 0x78]
mov ecx, dword [edi]
push eax
push esi
push ecx
mov ecx, dword [esp + 0x30]
call fcn.0041c940
test eax, eax
je 0x41e616
cmp dword [0x4ba074], 0
jne 0x41e5fa
cmp byte [esp + 0x78], 0
jne 0x41e5fa
lea edx, [esp + 0x28]
push edx
mov ecx, esi
call fcn.00406210
mov eax, dword [eax]
push eax
mov eax, dword [0x4ba088]
push eax
call fcn.004739eb
add esp, 8
test eax, eax
mov eax, dword [esp + 0x28]
sete bl
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41e5c9
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
test bl, bl
je 0x41e5e4
mov ecx, esi
call fcn.0041bf00
mov ecx, dword [eax + 0x60]
push ecx
call fcn.00429d70
add esp, 4
test al, al
jne 0x41e5fa
test esi, esi
je 0x41e604
mov ecx, esi
call fcn.00406cb0
push esi
call fcn.00451432
add esp, 4
jmp 0x41e604
mov ecx, dword [esp + 0x24]
push esi
call fcn.0045703b
cmp edi, dword [ebp + 8]
jb 0x41e60e
call fcn.00473692
add edi, 4
jmp 0x41e500
mov eax, dword [esp + 0x1c]
add eax, 0xfffffff0
mov byte [esp + 0x70], 3
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x41e63b
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
jmp 0x41e1c1
cmp byte [esp + 0x80], 0
je 0x41e694
cmp dword [0x4ba074], 0
jge 0x41e694
mov eax, dword [esp + 0x24]
mov eax, dword [eax + 4]
test eax, eax
je 0x41e681
mov ecx, dword [eax + 8]
push 0
push 0
mov dword [0x4b9f60], ecx
push 0x466
mov ecx, 0x4ba0a0
call fcn.004012f0
push 0
push 3
push 0x468
mov ecx, 0x4ba0a0
call fcn.004012f0
mov eax, dword [esp + 0x1c]
add eax, 0xfffffff0
mov byte [esp + 0x70], 3
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x41e6b9
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
mov byte [esp + 0x70], 2
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41e6de
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x3c]
test eax, eax
mov dword [esp + 0x38], vtable.UpdateServiceSoap.0
je 0x41e70d
push 0
push eax
call fcn.00432390
mov ecx, dword [esp + 0x44]
push ecx
call fcn.00436070
mov edx, dword [esp + 0x48]
push edx
call fcn.0043e560
add esp, 0x10
lea ecx, [esp + 0x54]
mov dword [esp + 0x44], vtable._ns1__GetAllInformation2Response.0
mov dword [esp + 0x70], 0xffffffff
call fcn.0043f2a0
mov eax, 1
mov ecx, dword [esp + 0x68]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x60
ret 0xc