Function at 0x1004c987
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x108
pushfd
test byte [0x1004ca32], 3
jne 0x1004ca33
push 0x38e3476e
mov dword [0x133823c4], eax
cmp eax, 0xb3b65fc2
xor esp, dword [ecx - 0x3d]
or byte [esi - 0x3e824ce4], cl
lodsd eax, dword [esi]
inc ebx
mov dl, 0xa4
jbe 0x1004ca36
fild word [ebx - 0xcf61681]
pop esp
dec eax
lodsb al, byte [esi]
jmp dword [eax + 0x3b22635]
retf 0x3c49
adc dl, dl
xor ch, ah
pop ebp
jno 0x1004ca0f
invalid
insd dword es:[edi], dx
popfd
mov eax, dword [0x10170c30]
xor eax, ebp
mov dword [ebp - 4], eax
pushfd
test byte [0x1004cb24], 0x5d
or al, 0x17
adc byte [ebx], dh
lds ecx, [ecx - 0x96303bb]
add eax, 0x1004cb24
pop ebp
jne 0x1004cb25
add dword [eax - 0x6a736381], ebp
xlatb
dec ebp
stosb byte es:[edi], al
adc eax, 0xdcd5160d
xor al, 0x31
push edx
pushfd
mov word [ebp + 0x15aa4dd7], ss
or eax, 0x34dcd516
xor dword [edx - 0x43], edx
mov esp, 0x78593e18
jmp 0x1004ca36
mov ebp, 0x593e18bc
js 0x1004ca4f
rol dword [esi], 1
in al, dx
sub al, 0x21
cmp al, 0xae
xchg ebx, eax
mov ch, 0xad
inc eax
pop ds
xor al, 0x9c
sbb eax, ebp
in eax, 0xa0
push ebp
adc edx, dword [ebx - 0x25]
sbb ch, byte [ecx]
mov edx, 0xc0c7dac3
adc bl, byte [eax + 0x67]
nop
adc al, 0x73
aas
imul dword [eax]
jbe 0x1004ca31
std
dec ebx
add dword [ecx - 0x43], esp
mov dl, 0xbe
outsb dx, byte [esi]
sbb al, 0xf5
daa
clc
js 0x1004ca95
shl ah, cl
or dword [edx], ebx
inc ecx
jne 0x1004ca2b
mov byte [edi + 0x69], cl
lahf
std
pop ss
out 0x93, al
xchg edx, eax
mov al, 0xad
inc ebp
dec edi
imul ebx, dword [edi - 0x6c19e803], 0x45adb092
js 0x1004ca90
leave
jnp 0x1004cab7
outsd dx, dword [esi]
add byte [ebx], 0x55
sar byte [ebx], 0xc9
xchg ecx, eax
adc dl, byte [esi]
add eax, 0xecc40460
mov esp, 0xcda97703
push ss
and ebp, edi
jnp 0x1004cada
fist word [ebx]
rcr byte [esi - 0x2e977587], 0x91
popal
test dword [eax - 0x600305da], ecx
cld
lahf
imul eax, eax, 0x60
sub ch, byte [eax]
shl byte [eax + 0x2a], 0x28
adc dword [ecx + esi*8 - 0x16add29d], edx
movsb byte es:[edi], byte [esi]
xchg ecx, eax
dec ebp
inc ebp
loop 0x1004caa2
or dword [ebp - 0x3a], esi
and dword [ebp + 0x2dc627f8], ebx
mov bl, 0x8b
pop ebp
into
mov edx, 0xfca0fec9
add ebp, 0xffffffc2
add ah, byte [eax + 0xc169c22]
xchg ebx, eax
or al, 0x93
salc
and al, bh
movsb byte es:[edi], byte [esi]
jle 0x1004cb47
push eax
cld
test dword [ecx - 0x3177b7d8], edi
lodsb al, byte [esi]
push ds
rcl byte [eax - 0x6d]
out 0xa2, al
push edx
jge 0x1004cb7c
xchg ecx, eax
popfd
push ebx
push esi
pushfd
test byte [0x1004cba6], 0x1e
je 0x1004cba7
and eax, 0x67c336d5
into
sbb edx, dword [ebx + 0x31]
pushal
cdq
push esp
pmaxub mm6, mm5
jl 0x1004cadd
insb byte es:[edi], dx
jns 0x1004cb08
mov ecx, 0x594adc85
test esp, ebx
dec edx
pop ecx
pop edi
rol esp, 1
test byte [ebx + 0x48], dl
into
sbb eax, 0x175e40da
mov bl, 0x8d
stc
and al, 0x73
imul eax, dword [eax + 0x3a691424], 0xa1e54191
enter 0x6905, 0x6b
mov dh, 1
not byte [eax - 0x57]
cmp al, 0xdb
mov cl, 0x8b
cwde
mov dl, 0xf8
mov al, 0xda
test eax, 0x3609305a
or dword [esi], esi
fadd dword [edi]
das
pushfd
out 0x5b, al
pop ebp
cwde
push es
dec edi
mov fs, word [edx]
xchg byte [edx + 0x1b], ah
dec ebx
nop
cmp dword [esp + edx*2 - 0x1a340d5b], edi
ror dword [edx + 0x3c], 1
mov bh, 0x83
test eax, edx
sub edx, dword [edi + ebx*2]
cmp al, 0xa0
mov ebp, 0x21829bf1
popfd
mov esi, dword [ebp + 8]
push edi
mov edi, dword [ebp + 0xc]
xor ebx, ebx
push 0x103
pushfd
test byte [0x1004cc85], 0x67
jne 0x1004cc86
clc
add al, 0xd
cmp al, byte [esi - 0x7a]
jge 0x1004cbda
push cs
push ebp
push es
dec ecx
sbb edx, dword [ebp + 0x27643dd0]
aam 0x2e
adc byte [eax], dh
adc byte cs:[eax], dh
mov dword [edi - 0x35], eax
clc
test eax, 0xbdcf551b
test al, 0xb7
jl 0x1004cbd6
inc edi
retf
sub dword [ebx - 0x75fceaa6], eax
call 0xa0421a95
ja 0x1004cbcf
cwde
js 0x1004cbcb
mov bh, 0x98
call 0xce892ad0
and eax, 0x523adfae
and eax, 0x2b6fd254
xchg edx, eax
lea esi, [edi - 0x67e51c8d]
sbb esp, dword [edx]
xor eax, 0x96a0f424
sal byte [edx + 0x781fd30c], 1
lds eax, [edx]
mov esp, 0xb90e345c
pop esi
or edi, dword [edi + 0x2866fbcc]
bound esp, qword [edi - 0xa]
pushfd
ror byte [ebx + 0x3e], 1
imul edi, dword [esi], 0x3d
les ebp, [edx]
jbe 0x1004cc7b
or dh, bh
fldcw word [edx]
adc esi, dword [esi]
push ss
jge 0x1004cc9b
sub byte gs:[ecx + 0x6c], bh
js 0x1004cbce
salc
dec ecx
mov ch, 0xaa
std
add dword [ebx - 0x5a77f0dd], edi
push es
push 0xffffffffffffffae
push esp
inc ecx
xor esp, ebp
lds ebp, [ebp - 0x58]
mov edx, 0xde22a4cd
xchg bl, cl
mov dh, 0xe5
mov cl, 0xc9
sbb dh, dl
mov al, byte [0x91a27737]
push ss
js 0x1004cced
clc
dec edi
xchg edx, eax
mov ebp, 0x30d2c13c
jns 0x1004cc2c
pop esi
jae 0x1004cc3b
and ch, byte [edx - 0x65]
xor al, 0x15
popfd
lea eax, [ebp - 0x107]
push ebx
push eax
mov byte [ebp - 0x108], bl
call fcn.1011df60
lea eax, [ebp - 0x108]
push eax
call fcn.100475f5
add esp, 0x10
test eax, eax
jne 0x1004cd67
test eax, edi
invalid
call dword [eax - 0x18]
dec edi
test eax, 0xc483ffff
adc byte [ebp - 0x497af040], al
add byte [eax], al
add byte [eax + 0xc], ch
outsb dx, byte [esi]
adc al, 0x10
push str.GetAppDataDir_Error_
push ebx
push ebx
call fcn.10049c0c
add esp, 0xc
pushfd
test byte [0x1004cd5e], 0x77
jne 0x1004cd5f
xchg ebp, eax
sbb ebx, dword [edx + 0x31]
sti
xchg byte [edx - 0x50], ch
jnp 0x1004cce4
pop es
push eax
loopne 0x1004cd2d
je 0x1004cc9f
mov word [edi + edx*4 - 0x756646d7], ss
cmpsb byte [esi], byte es:[edi]
add dword [edx], eax
push edx
and al, 0x56
mov ah, byte [esi + 0x24520201]
push esi
bndldx bnd3, [esi + 0x23d661ac]
jae 0x1004cd2e
sahf
lodsb al, byte [esi]
popal
salc
and esi, dword [ebx + 0x3a]
in eax, dx
int1
dec ecx
cld
pop edi
mov dh, 0x5e
lea ebp, [ebx - 0x2d]
inc edx
mov esp, 0x25dc3e41
add edx, dword [edx - 0x42cb202a]
sub ebx, edx
inc ebp
mov eax, dword [edx*4 + 0x21afda3a]
push 0x57
sar dl, 0x87
int3
cli
cld
enter 0xffffffffffff9188, 0xffffffffffffffe9
pop esi
outsb dx, byte [esi]
or al, 0x21
mov eax, dword [0xec3db91]
or al, byte [esp]
fldcw word [ebx - 0x17]
push eax
jb 0x1004cd34
or esp, ebx
cmp ah, al
insd dword es:[edi], dx
add dword [0xb8329b16], esp
push ecx
add eax, 0x7017ef3f
mov bl, 9
inc eax
scasd eax, dword es:[edi]
cmp al, 0x36
aam 0x98
pop ds
popfd
xor eax, eax
jmp 0x1004d04f
lea eax, [ebp - 0x108]
push str.wuauserv.ini
push eax
call fcn.1011f130
pop ecx
pop ecx
lea eax, [ebp - 0x108]
push eax
push ebx
push edi
pushfd
test byte [0x1004ce4c], 0x44
je 0x1004ce4d
add byte [eax], al
add dh, ch
out dx, al
mov dh, dh
xlatb
out dx, eax
jecxz 0x1004cd92
cli
aaa
inc esi
mov al, 0x6c
adc al, 0x28
pop ss
inc edx
nop
dec esi
push es
test dword [0x78eaa2ed], eax
insd dword es:[edi], dx
out dx, al
test eax, 0x1c1204b7
aad 0x84
test eax, 0x31a3052
mov edx, 0xa05a7e1f
cmp dword [ebp + 0x1e], 0xfffffff3
jne 0x1004ce3b
insb byte es:[edi], dx
add byte es:[edi], dh
pop ecx
sub esi, dword [edi + 0x2002fe00]
mov edx, 0x91fb4935
sar ah, 0x51
xchg ebp, eax
aam 0xcb
jle 0x1004ce24
xchg esi, esi
adc ebx, dword [ecx - 0x15b54a0f]
cwde
ficomp dword [ebx + esi*2 + 0x67e495b6]
or edx, dword [eax - 2]
mov bh, 0x4e
ja 0x1004cd8e
and dword [ebx], esp
pop ds
out dx, al
loop 0x1004ce4f
mov ebx, 0x4dae3668
lahf
sbb al, 0x68
lodsd eax, dword [esi]
daa
int1
xchg dword [edx], eax
sti
sar dword [esi], 1
stosb byte es:[edi], al
scasb al, byte es:[edi]
pushfd
salc
mov ch, 0xdc
mov ebp, dword [ebx - 0x7fa5783]
mov esi, 0x7b0c86f2
jbe 0x1004ce6d
sub byte [ecx + 0x59ad998a], dl
xchg ecx, eax
push es
sub esp, dword [esi]
pop ds
pop ds
and edi, dword [ebp + 0x143ac591]
push eax
sbb edx, ebx
xor ch, bh
aad 0x19
arpl word [edi + esi*8], dx
sub eax, 0x44d59024
inc esp
xchg ebx, eax
imul ebx, dword [ebx - 0x23], 0x74
inc eax
and eax, 0xd5cd1ada
fst qword [edx]
xchg dword [edx], ebp
aam 0xa
popfd
push str.wuauserv
pushfd
test byte [0x1004cf4c], 0x2a
je 0x1004cf4d
hlt
dec ebx
or al, bl
pop ds
xchg dword [edx - 0x37650f7f], eax
cmp eax, dword [edx]
mov ds, word [ebp + eax*4 + 0x20]
pushal
mov dh, byte [edx + 0x607d0381]
popal
sub ax, 0x9b91
mov al, byte [0x2de81ac4]
pop ds
jne 0x1004ce3b
or al, 0x98
add dword [ebp + 0x6abbca67], edx
scasd eax, dword es:[edi]
jno 0x1004ce25
retf 0x6abb
xchg esp, eax
out 0x15, eax
jge 0x1004cecd
push esp
pop esp
clc
or al, 0x7c
pop ds
int1
cli
lahf
mov ecx, dword [edi + 0x33d61214]
pop ebx
pop es
mov esp, edi
mov cl, 0xa4
sbb al, 0x4e
add al, 0x1d
shr dword [ecx - 0x18], cl
xor bl, cl
imul esi, ebx, 0xf4abd805
inc edi
and dl, byte [eax + 0x613f2f38]
or dword [edx + 0x5b], esi
popfd
add byte [ecx - 0x145239e0], 0x48
stosd dword es:[edi], eax
hlt
clc
cmp esi, dword [esi + 0xeacc4c0]
imul edx, dword [edi - 0x4da4452c], 0x23
push ecx
dec ecx
add eax, 0x5f02ccf3
jg 0x1004ceba
and dword [edx + esi*4 + 0x32], esp
and ebx, dword [ebx + 0x74ca0d69]
mov ss, word [eax]
add edi, esi
jb 0x1004ce8a
out dx, eax
cmp byte [ebx - 0x49], 0xc4
fsubr st(4)
xor esi, dword [eax + 0x29]
xchg esp, eax
inc ecx
mov eax, 0x4bb5de72
into
out dx, eax
mov edi, 0x60d02b64
and esp, ebx
jecxz 0x1004cf8a
jnp 0x1004cf84
and edx, ecx
dec ebx
fld dword [esi - 0x65]
inc ecx
push eax
sbb dword [esi - 0x61], eax
mov dl, 0x87
dec ebp
jle 0x1004ceb9
dec esp
out 0xf3, eax
cmp dword [eax - 0x74c5d68c], esi
fmul dword [ecx - 0x6b]
sbb al, 0x8c
outsd dx, dword [esi]
xchg esi, eax
cmp ch, byte [ebx - 0x3b]
mov eax, 0xd644e7a6
jecxz 0x1004cf97
mov fs, word [ecx]
into
test byte [eax + edx - 8], ah
xor byte [edi + ecx*8 - 0xba4fb04], bh
fst qword [ecx]
popfd
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
pushfd
test byte [0x1004d048], 0x16
je 0x1004d049
mov ah, 0x3a
salc
sbb dword [eax + 0x30a7bed], ebx
in eax, dx
add ch, byte [ebx + 0x65]
cmp eax, 0xbf72acc5
push ecx
push ebp
push eax
mov esi, gs
into
pop ss
or cl, cl
fsub dword [eax + 0x475994ff]
mov al, byte [0x475994ff]
pushal
div byte [ebx + eax*4]
jle 0x1004cfc7
push esp
mov dl, 0x6c
pop ss
cmc
jmp dword [esi]
hlt
lodsd eax, dword [esi]
stc
add dword [edx + 0x5d1608a6], 0xffffffff
add eax, 0x82a2f605
loop 0x1004cf30
adc edi, dword [edx]
int 0xcb
pop ss
sub dword [edi - 0x27b14612], edx
xchg ebp, eax
inc ebp
outsb dx, byte [esi]
pop es
les edi, cs:[ebx + ebp*2]
arpl word [ebx - 0x3b], di
mov ebx, 0xbc6d6640
dec edi
jnp 0x1004cf7e
cdq
pop ebx
inc esp
add dh, byte [eax + 0x15]
add ch, byte [esi - 0x5d]
dec esp
or al, 0x59
add ebx, dword [ecx + 0x42e5edb1]
mov dword [0x3590c4c], eax
cdq
mov cl, 0xed
in eax, 0x42
rcr dword [edi + 0x171a0ce1], 0x57
mov dh, 3
cmp edi, ebx
adc bh, ah
lahf
mov edi, 0x5296358d
xchg edx, eax
mov dword [0x2a76cd07], eax
salc
adc al, 0xaa
jecxz 0x1004cfcd
fidivr dword [edi + 0x2976009b]
mov es, esp
push ebp
mov ecx, 0x261baf3a
or bh, dh
movsb byte es:[edi], byte [esi]
idiv dword [edx + 0x28266a26]
xlatb
jge 0x1004d03a
out 0x1f, eax
fcom dword [ebp - 0x7a8dfafe]
cmp eax, 0x653ccd42
std
xor al, 0x22
cmpsb byte [esi], byte es:[edi]
and edx, dword [ecx - 0x260fd45b]
out 0x6c, al
out dx, al
cmp dword [eax - 0x3678d6b], ecx
xchg edi, eax
sti
cdq
inc esi
test byte [edi - 0x17ce839a], bl
insd dword es:[edi], dx
lodsd eax, dword [esi]
insb byte es:[edi], dx
mov esi, 0x447eac31
xchg ebp, eax
dec ebx
cmp eax, 0x291b816d
popfd
mov dword [esi], eax
xor eax, eax
inc eax
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.1011e48a
leave
ret