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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x576f08
mov eax, dword fs:[0]
push eax
sub esp, 0x14
push ebx
push esi
push edi
mov eax, dword [0x5f0bf8]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x14], edi
xor al, al
mov ebx, 1
mov byte [ebp - 0xd], al
cmp dword [0x5fc664], ebx
jle 0x438c9a
mov eax, dword [0x5fc66c]
mov esi, dword [eax + ebx*4]
mov ecx, str._version
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x437fe8
test dx, dx
je 0x437fe4
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x437fe8
add eax, 4
add ecx, 4
test dx, dx
jne 0x437fc2
xor eax, eax
jmp 0x437fed
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x43803e
mov ecx, dword [0x5fc66c]
mov edx, dword [ecx + ebx*4 + 4]
inc ebx
mov byte [ebp - 0xd], 1
lea ecx, [edi + 0x10]
test edx, edx
jne 0x438013
push eax
push edx
call fcn.00402e30
jmp 0x438c8a
mov eax, edx
lea edi, [eax + 2]
jmp 0x438020
mov si, word [eax]
add eax, 2
test si, si
jne 0x438020
sub eax, edi
mov edi, dword [ebp - 0x14]
sar eax, 1
push eax
push edx
call fcn.00402e30
jmp 0x438c8a
mov ecx, str._installbaidu
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x43806b
test dx, dx
je 0x438067
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x43806b
add eax, 4
add ecx, 4
test dx, dx
jne 0x438045
xor eax, eax
jmp 0x438070
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4380ce
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x70], 1
mov edx, dword [0x5fc66c]
mov esi, dword [edx + ebx*4 + 4]
inc ebx
add ecx, 0xc
mov byte [ebp - 0xd], 1
test esi, esi
jne 0x4380a3
push eax
push esi
call fcn.00402e30
mov edi, dword [ebp - 0x14]
jmp 0x438c8a
mov eax, esi
lea edi, [eax + 2]
jmp 0x4380b0
mov dx, word [eax]
add eax, 2
test dx, dx
jne 0x4380b0
sub eax, edi
sar eax, 1
push eax
push esi
call fcn.00402e30
mov edi, dword [ebp - 0x14]
jmp 0x438c8a
mov ecx, str._installv9
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4380fb
test dx, dx
je 0x4380f7
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4380fb
add eax, 4
add ecx, 4
test dx, dx
jne 0x4380d5
xor eax, eax
jmp 0x438100
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x438153
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x74], 1
mov eax, dword [0x5fc66c]
mov esi, dword [eax + ebx*4 + 4]
inc ebx
add ecx, 0x18
test esi, esi
jne 0x438130
xor eax, eax
push eax
push esi
call fcn.00402e30
mov edi, dword [ebp - 0x14]
jmp 0x438c8a
mov eax, esi
lea edi, [eax + 2]
mov dx, word [eax]
add eax, 2
test dx, dx
jne 0x438135
sub eax, edi
sar eax, 1
push eax
push esi
call fcn.00402e30
mov edi, dword [ebp - 0x14]
jmp 0x438c8a
mov ecx, str._AgencyID
mov eax, esi
lea ebx, [ebx]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x438186
test dx, dx
je 0x438182
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x438186
add eax, 4
add ecx, 4
test dx, dx
jne 0x438160
xor eax, eax
jmp 0x43818b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4381d4
mov ecx, dword [0x5fc66c]
mov edx, dword [ecx + ebx*4 + 4]
inc ebx
mov byte [ebp - 0xd], 1
lea ecx, [edi + 0x14]
test edx, edx
jne 0x4381b1
push eax
push edx
call fcn.00402e30
jmp 0x438c8a
mov eax, edx
lea edi, [eax + 2]
mov si, word [eax]
add eax, 2
test si, si
jne 0x4381b6
sub eax, edi
mov edi, dword [ebp - 0x14]
sar eax, 1
push eax
push edx
call fcn.00402e30
jmp 0x438c8a
mov ecx, str._v9_lang
mov eax, esi
jmp 0x4381e0
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x438206
test dx, dx
je 0x438202
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x438206
add eax, 4
add ecx, 4
test dx, dx
jne 0x4381e0
xor eax, eax
jmp 0x43820b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x43822c
mov edx, dword [0x5fc66c]
mov eax, dword [edx + ebx*4 + 4]
inc ebx
push eax
lea ecx, [edi + 0x1c]
mov byte [ebp - 0xd], 1
call fcn.00403dd0
jmp 0x438c8a
mov ecx, str._ReaderLang
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x438259
test dx, dx
je 0x438255
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x438259
add eax, 4
add ecx, 4
test dx, dx
jne 0x438233
xor eax, eax
jmp 0x43825e
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x43827f
mov ecx, dword [0x5fc66c]
mov edx, dword [ecx + ebx*4 + 4]
inc ebx
push edx
lea ecx, [edi + 0x20]
mov byte [ebp - 0xd], 1
call fcn.00403dd0
jmp 0x438c8a
mov ecx, str._AgentName
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4382ac
test dx, dx
je 0x4382a8
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4382ac
add eax, 4
add ecx, 4
test dx, dx
jne 0x438286
xor eax, eax
jmp 0x4382b1
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4382d1
mov eax, dword [0x5fc66c]
mov ecx, dword [eax + ebx*4 + 4]
inc ebx
push ecx
lea ecx, [edi + 0x24]
mov byte [ebp - 0xd], 1
call fcn.00403dd0
jmp 0x438c8a
mov ecx, str._noweb
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4382fe
test dx, dx
je 0x4382fa
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4382fe
add eax, 4
add ecx, 4
test dx, dx
jne 0x4382d8
xor eax, eax
jmp 0x438303
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x438317
mov byte [ebp - 0xd], 1
mov dword [edi + 0x6c], 1
jmp 0x438c8a
mov ecx, str._oldversion
mov eax, esi
mov edi, edi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x438346
test dx, dx
je 0x438342
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x438346
add eax, 4
add ecx, 4
test dx, dx
jne 0x438320
xor eax, eax
jmp 0x43834b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x43836f
mov edx, dword [0x5fc66c]
mov eax, dword [edx + ebx*4 + 4]
inc ebx
push eax
lea ecx, [edi + 0xbc]
mov byte [ebp - 0xd], 1
call fcn.00403dd0
jmp 0x438c8a
mov ecx, str._enclosureType
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x43839c
test dx, dx
je 0x438398
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x43839c
add eax, 4
add ecx, 4
test dx, dx
jne 0x438376
xor eax, eax
jmp 0x4383a1
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4383c5
mov ecx, dword [0x5fc66c]
mov edx, dword [ecx + ebx*4 + 4]
inc ebx
push edx
lea ecx, [edi + 0xc0]
mov byte [ebp - 0xd], 1
call fcn.00403dd0
jmp 0x438c8a
mov ecx, str._updaterinstall
mov eax, esi
lea esp, [esp]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4383f6
test dx, dx
je 0x4383f2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4383f6
add eax, 4
add ecx, 4
test dx, dx
jne 0x4383d0
xor eax, eax
jmp 0x4383fb
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x43841e
mov eax, dword [0x5fc66c]
mov ecx, dword [eax + ebx*4 + 4]
inc ebx
push ecx
lea ecx, [edi + 0xc4]
mov byte [ebp - 0xd], 1
call fcn.00403dd0
jmp 0x438c8a
mov ecx, str._UUID
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x43844b
test dx, dx
je 0x438447
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x43844b
add eax, 4
add ecx, 4
test dx, dx
jne 0x438425
xor eax, eax
jmp 0x438450
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x438474
mov edx, dword [0x5fc66c]
mov eax, dword [edx + ebx*4 + 4]
inc ebx
push eax
lea ecx, [edi + 0xcc]
mov byte [ebp - 0xd], 1
call fcn.00403dd0
jmp 0x438c8a
mov ecx, str._StartDate
mov eax, esi
jmp 0x438480
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4384a6
test dx, dx
je 0x4384a2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4384a6
add eax, 4
add ecx, 4
test dx, dx
jne 0x438480
xor eax, eax
jmp 0x4384ab
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4384cf
mov ecx, dword [0x5fc66c]
mov edx, dword [ecx + ebx*4 + 4]
inc ebx
push edx
lea ecx, [edi + 0xc8]
mov byte [ebp - 0xd], 1
call fcn.00403dd0
jmp 0x438c8a
mov ecx, str._ProgramStatus
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4384fc
test dx, dx
je 0x4384f8
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4384fc
add eax, 4
add ecx, 4
test dx, dx
jne 0x4384d6
xor eax, eax
jmp 0x438501
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x438521
mov eax, dword [0x5fc66c]
mov ecx, dword [eax + ebx*4 + 4]
inc ebx
push ecx
lea ecx, [edi + 0x28]
mov byte [ebp - 0xd], 1
call fcn.00403dd0
jmp 0x438c8a
mov ecx, str._newuser
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x43854e
test dx, dx
je 0x43854a
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x43854e
add eax, 4
add ecx, 4
test dx, dx
jne 0x438528
xor eax, eax
jmp 0x438553
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x438574
mov edx, dword [0x5fc66c]
mov eax, dword [edx + ebx*4 + 4]
inc ebx
push eax
lea ecx, [edi + 0x2c]
mov byte [ebp - 0xd], 1
call fcn.00403dd0
jmp 0x438c8a
mov ecx, str._asktoolbar
mov eax, esi
jmp 0x438580
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4385a6
test dx, dx
je 0x4385a2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4385a6
add eax, 4
add ecx, 4
test dx, dx
jne 0x438580
xor eax, eax
jmp 0x4385ab
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4385d3
mov dword [edi + 0x78], 1
mov ecx, dword [0x5fc66c]
mov edx, dword [ecx + ebx*4 + 4]
inc ebx
push edx
lea ecx, [edi + 0x30]
mov byte [ebp - 0xd], 1
call fcn.00403dd0
jmp 0x438c8a
mov ecx, str._search_engine
mov eax, esi
lea ebx, [ebx]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x438606
test dx, dx
je 0x438602
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x438606
add eax, 4
add ecx, 4
test dx, dx
jne 0x4385e0
xor eax, eax
jmp 0x43860b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x43862b
mov eax, dword [0x5fc66c]
mov ecx, dword [eax + ebx*4 + 4]
inc ebx
push ecx
lea ecx, [edi + 0x38]
mov byte [ebp - 0xd], 1
call fcn.00403dd0
jmp 0x438c8a
mov ecx, str._homepage
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x438658
test dx, dx
je 0x438654
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x438658
add eax, 4
add ecx, 4
test dx, dx
jne 0x438632
xor eax, eax
jmp 0x43865d
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x43867e
mov edx, dword [0x5fc66c]
mov eax, dword [edx + ebx*4 + 4]
inc ebx
push eax
lea ecx, [edi + 0x34]
mov byte [ebp - 0xd], 1
call fcn.00403dd0
jmp 0x438c8a
mov ecx, str._installyoudao
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4386ab
test dx, dx
je 0x4386a7
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4386ab
add eax, 4
add ecx, 4
test dx, dx
jne 0x438685
xor eax, eax
jmp 0x4386b0
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4386d8
mov dword [edi + 0x7c], 1
mov ecx, dword [0x5fc66c]
mov edx, dword [ecx + ebx*4 + 4]
inc ebx
push edx
lea ecx, [edi + 0x3c]
mov byte [ebp - 0xd], 1
call fcn.00403dd0
jmp 0x438c8a
mov ecx, str._youdaocmdline
mov eax, esi
nop
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x438706
test dx, dx
je 0x438702
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x438706
add eax, 4
add ecx, 4
test dx, dx
jne 0x4386e0
xor eax, eax
jmp 0x43870b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x438742
mov eax, dword [0x5fc66c]
mov ecx, dword [eax + ebx*4 + 4]
mov esi, dword [ebp - 0x14]
inc ebx
push ecx
lea ecx, [esi + 0x64]
mov byte [ebp - 0xd], 1
call fcn.00403dd0
push 0x5894a0
push 0x58f6d0
lea ecx, [esi + 0x64]
call fcn.00435940
mov edi, esi
jmp 0x438c8a
mov ecx, str._sethao123homepage
mov eax, esi
lea esp, [esp]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x438776
test dx, dx
je 0x438772
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x438776
add eax, 4
add ecx, 4
test dx, dx
jne 0x438750
xor eax, eax
jmp 0x43877b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4387a6
mov dword [edi + 0x84], 1
mov edx, dword [0x5fc66c]
mov eax, dword [edx + ebx*4 + 4]
inc ebx
push eax
lea ecx, [edi + 0x44]
mov byte [ebp - 0xd], 1
call fcn.00403dd0
jmp 0x438c8a
mov ecx, str._installjoyinker
mov eax, esi
lea ecx, [ecx]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4387d6
test dx, dx
je 0x4387d2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4387d6
add eax, 4
add ecx, 4
test dx, dx
jne 0x4387b0
xor eax, eax
jmp 0x4387db
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x438806
mov dword [edi + 0x80], 1
mov ecx, dword [0x5fc66c]
mov edx, dword [ecx + ebx*4 + 4]
inc ebx
push edx
lea ecx, [edi + 0x40]
mov byte [ebp - 0xd], 1
call fcn.00403dd0
jmp 0x438c8a
mov ecx, str._appname
mov eax, esi
lea ecx, [ecx]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x438836
test dx, dx
je 0x438832
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x438836
add eax, 4
add ecx, 4
test dx, dx
jne 0x438810
xor eax, eax
jmp 0x43883b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x43885b
mov eax, dword [0x5fc66c]
mov ecx, dword [eax + ebx*4 + 4]
inc ebx
push ecx
lea ecx, [edi + 0x4c]
mov byte [ebp - 0xd], 1
call fcn.00403dd0
jmp 0x438c8a
mov ecx, str._productid
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x438888
test dx, dx
je 0x438884
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x438888
add eax, 4
add ecx, 4
test dx, dx
jne 0x438862
xor eax, eax
jmp 0x43888d
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4388ae
mov edx, dword [0x5fc66c]
mov eax, dword [edx + ebx*4 + 4]
inc ebx
push eax
lea ecx, [edi + 0x48]
mov byte [ebp - 0xd], 1
call fcn.00403dd0
jmp 0x438c8a
mov ecx, str._installkingsoftoffice
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4388db
test dx, dx
je 0x4388d7
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4388db
add eax, 4
add ecx, 4
test dx, dx
jne 0x4388b5
xor eax, eax
jmp 0x4388e0
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x43890b
mov ecx, dword [0x5fc66c]
mov edx, dword [ecx + ebx*4 + 4]
inc ebx
push edx
lea ecx, [edi + 0x50]
mov byte [ebp - 0xd], 1
call fcn.00403dd0
mov dword [edi + 0x88], 1
jmp 0x438c8a
mov ecx, str._defaultkingsoft
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x438938
test dx, dx
je 0x438934
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x438938
add eax, 4
add ecx, 4
test dx, dx
jne 0x438912
xor eax, eax
jmp 0x43893d
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x43895d
mov eax, dword [0x5fc66c]
mov ecx, dword [eax + ebx*4 + 4]
inc ebx
push ecx
lea ecx, [edi + 0x54]
mov byte [ebp - 0xd], 1
call fcn.00403dd0
jmp 0x438c8a
mov ecx, str._green
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x43898a
test dx, dx
je 0x438986
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x43898a
add eax, 4
add ecx, 4
test dx, dx
jne 0x438964
xor eax, eax
jmp 0x43898f
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4389b0
mov edx, dword [0x5fc66c]
mov eax, dword [edx + ebx*4 + 4]
inc ebx
push eax
lea ecx, [edi + 0x58]
mov byte [ebp - 0xd], 1
call fcn.00403dd0
jmp 0x438c8a
mov ecx, str._wpsdownloadtool
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x4389dd
test dx, dx
je 0x4389d9
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x4389dd
add eax, 4
add ecx, 4
test dx, dx
jne 0x4389b7
xor eax, eax
jmp 0x4389e2
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x438a0d
mov ecx, dword [0x5fc66c]
mov edx, dword [ecx + ebx*4 + 4]
inc ebx
push edx
lea ecx, [edi + 0x5c]
mov byte [ebp - 0xd], 1
call fcn.00403dd0
mov dword [edi + 0x8c], 1
jmp 0x438c8a
mov ecx, str._wpscmdline
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x438a3a
test dx, dx
je 0x438a36
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x438a3a
add eax, 4
add ecx, 4
test dx, dx
jne 0x438a14
xor eax, eax
jmp 0x438a3f
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x438a76
mov eax, dword [0x5fc66c]
mov ecx, dword [eax + ebx*4 + 4]
mov esi, dword [ebp - 0x14]
inc ebx
push ecx
lea ecx, [esi + 0x60]
mov byte [ebp - 0xd], 1
call fcn.00403dd0
push 0x5894a0
push 0x58f6d0
lea ecx, [esi + 0x60]
call fcn.00435940
mov edi, esi
jmp 0x438c8a
mov ecx, str._notinstallyoudao
mov eax, esi
lea ecx, [ecx]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x438aa6
test dx, dx
je 0x438aa2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x438aa6
add eax, 4
add ecx, 4
test dx, dx
jne 0x438a80
xor eax, eax
jmp 0x438aab
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x438ab8
mov byte [ebp - 0xd], 1
jmp 0x438c8a
mov ecx, str._install22fine
mov eax, esi
nop
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x438ae6
test dx, dx
je 0x438ae2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x438ae6
add eax, 4
add ecx, 4
test dx, dx
jne 0x438ac0
xor eax, eax
jmp 0x438aeb
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x438b16
mov dword [edi + 0x90], 1
mov edx, dword [0x5fc66c]
mov eax, dword [edx + ebx*4 + 4]
inc ebx
push eax
lea ecx, [edi + 0x68]
mov byte [ebp - 0xd], 1
call fcn.00403dd0
jmp 0x438c8a
mov ecx, str._isPhantom
mov eax, esi
lea ecx, [ecx]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x438b46
test dx, dx
je 0x438b42
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x438b46
add eax, 4
add ecx, 4
test dx, dx
jne 0x438b20
xor eax, eax
jmp 0x438b4b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x438b97
mov ecx, dword [0x5fc66c]
mov edx, dword [ecx + ebx*4 + 4]
inc ebx
push edx
lea ecx, [ebp - 0x18]
mov byte [ebp - 0xd], 1
call fcn.00404420
mov dword [ebp - 4], 0
lea eax, [ebp - 0x18]
push eax
push 0x58962c
call fcn.004222b0
movzx ecx, al
add esp, 8
mov dword [edi + 0x94], ecx
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x18]
jmp 0x438c85
mov ecx, str._edition
mov eax, esi
mov edi, edi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x438bc6
test dx, dx
je 0x438bc2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x438bc6
add eax, 4
add ecx, 4
test dx, dx
jne 0x438ba0
xor eax, eax
jmp 0x438bcb
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x438c09
mov edx, dword [0x5fc66c]
mov eax, dword [edx + ebx*4 + 4]
inc ebx
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 0xd], 1
call fcn.00404420
mov dword [ebp - 4], 1
lea edx, [ebp - 0x1c]
lea ecx, [edi + 0x98]
push edx
call fcn.00403760
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1c]
jmp 0x438c85
mov ecx, str._uninstall
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x438c36
test dx, dx
je 0x438c32
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x438c36
add eax, 4
add ecx, 4
test dx, dx
jne 0x438c10
xor eax, eax
jmp 0x438c3b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x438c8a
mov eax, dword [0x5fc66c]
mov ecx, dword [eax + ebx*4 + 4]
inc ebx
push ecx
lea ecx, [ebp - 0x20]
mov byte [ebp - 0xd], 1
call fcn.00404420
mov dword [ebp - 4], 2
lea edx, [ebp - 0x20]
push 0x58962c
push edx
call fcn.00405d80
xor ecx, ecx
add esp, 8
test al, al
setne cl
mov dword [edi + 0x9c], ecx
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x20]
call fcn.004023c0
inc ebx
cmp ebx, dword [0x5fc664]
jl 0x437fb3
mov al, byte [ebp - 0xd]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret