Function at 0x403487
Capabilities:
Get disk information
Get thread local storage value
Parse pe header
Query environment variable
Read .ini file
Set environment variable

Disassembly:
mov ecx, dword [esp]
add ecx, 0x68
sbb dword [0x40506b], 0x42
sbb edi, eax
or esi, 0xd
mov dh, byte [esp]
add dh, 0x11
sub ah, byte [0x4051f5]
push 0xa
push 0x40594e
push str.fmbavsvkgk
call dword [sym.imp.kernel32.dll_GetEnvironmentVariableW]
cmp eax, 0
jne 0x4035f5
mov edx, dword [esp]
add edx, 0xfffffff2
or dword [0x405074], 0xbe
xor dword [0x405116], 0x49
add dword [0x4050c6], edi
mov ebx, 0x4035f5
call ebx
adc edx, dword [0x405096]
xor dword [0x405173], eax
sub edx, dword [0x4051d4]
add edi, 0xffffffc8
or dword [0x40508a], 0xc6
sub ebx, dword [0x4051b4]
add byte [eax], al
add byte [ebx + 0x15132414], cl
invalid
sub edi, dword [0x405139]
and dword [0x40514f], 0xf
xor dword [0x405049], 0xb5
xor dword [0x4051a6], 0x93
xor edi, esi
push str.einjwxcjoiw
push 0xd
push str.uzhcqglyvuumm
push str.ukhapyognmjikwhkt
call dword [sym.imp.kernel32.dll_GetPrivateProfileSectionA]
test eax, eax
jne 0x403483
adc edi, dword [0x4050d3]
adc dword [0x40514a], 0x14
mov ecx, dword [esp]
add ecx, 0xffffffe5
add dword [0x40511d], eax
or bl, byte [0x405178]
push 0xb
push 0x405a31
push str.pjaxovrglthzstglo
call dword [sym.imp.kernel32.dll_GetVolumePathNameA]
adc dword [0x4050ee], edi
mov edx, dword [esp]
add edx, 0xffffffcc
xor dl, ah
add edx, 0xffffffbb
and eax, 0x26
sub esi, esi
mov ecx, 0x403483
call ecx
or edi, dword [0x405180]
sub eax, esi
xor ebx, eax
or edi, 0xffffffea
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
mov edx, dword [esp]
add edx, 0xffffffdd
mov ecx, dword [esp]
add ecx, ebx
add ah, ah
adc esi, dword [0x4051be]
add ebx, 0xffffff91
sub edi, 0xffffffee
push 0xa
push 0x40594e
push str.fmbavsvkgk
call dword [sym.imp.kernel32.dll_GetEnvironmentVariableW]
test eax, eax
jne 0x40230b
xor bh, ah
or dword [0x4050ce], ebx
add edi, edi
add ah, al
mov ecx, dword [esp]
add ecx, 0x2f
add dword [0x4051e7], ebx
push str.einjwxcjoiw
push 0xd
push str.uzhcqglyvuumm
push str.ukhapyognmjikwhkt
call dword [sym.imp.kernel32.dll_GetPrivateProfileSectionA]
cmp eax, 0
jne 0x40230b
adc dword [0x4050cb], 0xef
add ebx, 0xfffffffa
xor dword [0x405100], 0x44
sub byte [0x405014], 0x8a
adc dword [0x4050ff], eax
sub esi, dword [0x405043]
mov edx, 0x40230b
call edx
xor dword [0x4051a9], 0x46
adc al, byte [0x4050ce]
or dword [0x4051d0], 0xbc
adc bl, byte [0x405197]
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ebx - 0x3e7cdbf4], cl
sub al, 0x19
xor eax, 0x405022
or dword [0x405159], esi
adc cl, byte [0x4051e4]
push 8
push 0x40599e
push str.popbcvcywhmfmdbjw
call dword [sym.imp.kernel32.dll_QueryDosDeviceA]
cmp eax, 0
jne 0x402e8b
adc dword [0x405119], 0x34
sub edi, 8
or dword [0x405186], eax
mov edx, dword [esp]
add edx, 0xb
add esi, edx
lea edi, [0x405988]
push dword [edi]
call dword [sym.imp.kernel32.dll_TlsGetValue]
xor dword [0x40507b], 0x16
add eax, ebx
sub byte [0x4051d1], 0xe0
adc edi, edi
mov esi, 0x402390
call esi
adc dword [0x405082], edi
add dword [0x4051ca], ebx
adc al, byte [0x4050b7]
xor dword [0x405150], 0x7d
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
or eax, dword [0x40506f]
mov ecx, dword [esp]
adc ecx, dword [0x4050f1]
sbb edi, 0x36
or al, 0x50
mov dword [0x4050c2], 0x44
add esi, 0x6e
lea ecx, [0x405988]
push dword [ecx]
call dword [sym.imp.kernel32.dll_TlsGetValue]
mov cl, byte [esp]
add cl, 0xa7
adc dword [0x405145], 0xda
and dword [0x4050cb], 0x51
sbb ecx, ebx
adc eax, 0xffffffee
push str.bwjysbgo
push str.ozhcrurbcxg
call dword [sym.imp.kernel32.dll_SetEnvironmentVariableA]
add eax, edi
mov ecx, dword [esp]
add ecx, 0xffffff85
or ch, 0x35
adc esi, edi
mov eax, 0x403849
call eax
xor esi, eax
add eax, ebx
and dword [0x4051dc], esi
sub byte [0x4050af], 0x15
mov edx, dword [esp]
adc edx, dword [0x405065]
sbb ecx, edx
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
push ebp
nop
mov ebp, esp
lea esp, [ebp - 0x68]
mov eax, dword [esp]
adc eax, dword [0x4050a9]
mov cl, byte [esp]
add cl, 0xb5
or dword [0x4050ae], ecx
sbb ah, ah
and dword [0x405053], 0xe8
mov edi, dword [esp]
add edi, ecx
mov edx, dword [esp]
adc edx, dword [0x40514f]
mov ecx, dword [esp]
add ecx, 2
mov esi, dword [esp]
add esi, 0x3b
sub edx, edi
adc ch, byte [0x40512d]
lea edi, [0x405988]
push dword [edi]
call dword [sym.imp.kernel32.dll_TlsGetValue]
add dword [0x40513e], edi
sub dword [0x40508a], edi
mov dword [0x405166], 0x90
add dword [0x405031], edi
sub byte [0x4051e6], 0x40
push str.inyvrpnrxfmtjgg
push 8
push str.onosjjmp
push str.nuwrnzznlxyj
call dword [sym.imp.kernel32.dll_GetPrivateProfileSectionA]
test eax, eax
jne 0x403a78
mov ebx, dword [esp]
add ebx, 0xffffffe1
adc ebx, 0xffffffe7
mov dword [0x4050dd], 0xff
mov edx, dword [esp]
adc edx, dword [0x4051c2]
adc eax, ebx
add esi, eax
mov esi, 0x402b8e
call esi
mov ecx, dword [esp]
adc ecx, dword [0x40519a]
adc esi, dword [0x405136]
or edi, 0xffffffbf
adc ecx, dword [0x405039]
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
mov dword [0x405141], 0xad
mov edx, dword [esp]
adc edx, dword [0x40510d]
and dword [0x4051e8], esi
adc eax, eax
or edi, 0xffffff94
lea edi, [0x405958]
push dword [edi]
call dword [sym.imp.kernel32.dll_SetErrorMode]
and dword [0x405192], edi
xor esi, esi
or byte [0x40509c], bl
sub byte [0x405116], 0x2e
mov eax, 0x4037c6
call eax
adc edi, esi
adc eax, dword [0x405043]
add dword [0x40515a], edi
mov ecx, dword [esp]
adc ecx, dword [0x405192]
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
and dword [0x40501f], 0x49
add eax, eax
sub edi, 0xfffffffa
or eax, 0xffffffa7
push str.einjwxcjoiw
push 0xd
push str.uzhcqglyvuumm
push str.ukhapyognmjikwhkt
call dword [sym.imp.kernel32.dll_GetPrivateProfileSectionA]
test eax, eax
jne 0x403483
sbb dword [0x40504b], 0x48
mov edx, dword [esp]
add edx, eax
sub edx, dword [0x40503e]
adc esi, dword [0x405023]
add byte [0x405179], ah
mov dword [0x40515c], 0x2c
mov edx, 0x403483
call edx
or dword [0x40519e], edi
and dword [0x40516c], edi
add ebx, 0x28
adc dword [0x405088], 0x2a
xor esi, 0x77
add byte [eax], al
add byte [eax], al
add byte [eax], al
add bh, al
add eax, 0x405077
sub dword [eax], eax
add byte [eax], al
mov dword [0x405077], 0x29
add byte [0x405034], bh
mov ecx, dword [esp]
adc ecx, dword [0x4050be]
adc dword [0x40507d], esi
mov edx, dword [esp]
adc edx, dword [0x405113]
xor ecx, ecx
push 0x4058a2
push 0x40589a
call dword [sym.imp.kernel32.dll_FileTimeToSystemTime]
adc eax, dword [0x4051f0]
mov ecx, dword [esp]
add ecx, 0x3e
and dword [0x405092], esi
mov edx, dword [esp]
add edx, 0xfffffffe
push 0xa
push 0x40594e
push str.fmbavsvkgk
call dword [sym.imp.kernel32.dll_GetEnvironmentVariableW]
test eax, eax
jne 0x403487
xor dword [0x40509a], 0x71
mov cl, byte [esp]
add cl, bl
sub dword [0x40502f], ebx
xor edi, 8
mov eax, 0x403487
call eax
mov edx, dword [esp]
adc edx, dword [0x405080]
adc dword [0x4051a2], ebx
and ecx, 0xffffff91
adc dword [0x405186], esi
add byte [ecx], cl
cmp eax, 0x40502f
or dword [0x40502f], edi
sub al, byte [0x4051b0]
sbb dword [0x405153], 0x1e
adc dword [0x405160], 0x3f
mov dl, byte [esp]
add dl, bh
push str.ocejqenvrrkvp
push str.jcuuoybqalvgdoqm
call dword [sym.imp.kernel32.dll_SetEnvironmentVariableW]
adc ebx, dword [0x4051ea]
mov ecx, dword [esp]
adc ecx, dword [0x405007]
mov edx, dword [esp]
adc edx, dword [0x4051f3]
and dword [0x405023], 0xf7
push str.bwjysbgo
push str.ozhcrurbcxg
call dword [sym.imp.kernel32.dll_SetEnvironmentVariableA]
sub esi, eax
sbb dword [0x4051e7], esi
sbb edi, 0x3d
or edi, dword [0x4051a6]
and ebx, 0x4d
mov ecx, 0x402804
call ecx
add ebx, esi
or edi, dword [0x405199]
mov ecx, dword [esp]
adc ecx, dword [0x40514c]
add eax, esi
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
mov edx, dword [esp]
adc edx, dword [0x405025]
mov ecx, dword [esp]
add ecx, 0xffffffcf
adc dword [0x40503e], ecx
xor dword [0x405073], eax
sbb dword [0x4051d6], 0xca
adc ebx, dword [0x4050e3]
push 8
push 0x40599e
push str.popbcvcywhmfmdbjw
call dword [sym.imp.kernel32.dll_QueryDosDeviceA]
cmp eax, 0
jne 0x403178
mov ecx, dword [esp]
adc ecx, dword [0x405017]
adc ah, byte [0x4051dd]
sub byte [0x405161], 0xca
adc edi, dword [0x4050f0]
adc eax, 0x2b
push 0xb
push 0x405a31
push str.pjaxovrglthzstglo
call dword [sym.imp.kernel32.dll_GetVolumePathNameA]
xor dword [0x40500e], edi
sub ebx, dword [0x4051ec]
sbb edi, ebx
or ebx, dword [0x40510c]
xor dword [0x4050b5], 0x52
mov eax, 0x403178
call eax
add dword [0x405014], ebx
adc eax, eax
adc dword [0x4051d9], 0x85
mov ecx, dword [esp]
adc ecx, dword [0x405177]
add dword [0x4050d7], edi
sbb eax, 0x1b
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
mov edx, dword [esp]
adc edx, dword [0x40510b]
sbb ebx, esi
adc ebx, dword [0x4051c3]
xor ebx, esi
push str.ocejqenvrrkvp
push str.jcuuoybqalvgdoqm
call dword [sym.imp.kernel32.dll_SetEnvironmentVariableW]
sub esi, dword [0x40500f]
and dword [0x4050d6], ebx
sbb dword [0x4050a4], 0xffffff80
sub byte [0x405013], 0x4c
add byte [0x405001], bh
mov esi, 0x403694
call esi
sbb esi, eax
mov dword [0x4051ce], 0x5a
xor dword [0x4050a7], ebx
and dword [0x405073], esi
or bh, byte [0x4050f0]
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ecx], bl
lock and dword [0x405002], 0xa7
and edi, 0x56
adc ebx, 6
or esi, 0x1b
or dword [0x4050e8], ebx
lea edi, [0x405958]
push dword [edi]
call dword [sym.imp.kernel32.dll_SetErrorMode]
sub eax, esi
xor byte [0x40502d], al
or edi, dword [0x4050a5]
and dword [0x40508b], 0xb
adc dword [0x4051cb], 0xb4
sbb byte [0x4051b2], ah
mov edx, 0x403096
call edx
adc ah, byte [0x4050c6]
sub dword [0x405014], ebx
xor bl, bl
mov ecx, dword [esp]
add ecx, eax
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ecx], dh
fild word [ecx]
clc
xor edi, ebx
add eax, edi
mov ecx, dword [esp]
add ecx, ebx
and ecx, 0xffffffdf
push 0x4058a2
push 0x40589a
call dword [sym.imp.kernel32.dll_FileTimeToSystemTime]
mov dword [0x405013], 0x98
sub byte [0x405042], 0x9c
or dword [0x4051d7], 0xaa
sbb dword [0x405013], esi
or dword [0x40517b], eax
xor ebx, 0xa
mov edi, 0x402922
call edi
add edi, 0x50
and dword [0x4051d9], esi
adc bl, byte [0x4050ec]
add bh, 0xb2
adc bh, byte [0x405095]
add byte [eax], al
add byte [eax], al
add byte [eax], al
sbb dword [0x4050e4], edi
adc eax, dword [0x405020]
adc eax, dword [0x4051ef]
sub dword [0x40511e], esi
push 0x4058a2
push 0x40589a
call dword [sym.imp.kernel32.dll_FileTimeToSystemTime]
mov edx, dword [esp]
add edx, 0xffffffdb
sub dword [0x40511c], ebx
and dword [0x405082], edx
adc eax, dword [0x405128]
add edi, 0xffffff9b
push str.einjwxcjoiw
push 0xd
push str.uzhcqglyvuumm
push str.ukhapyognmjikwhkt
call dword [sym.imp.kernel32.dll_GetPrivateProfileSectionA]
test eax, eax
jne 0x403483
sub eax, esi
adc dword [0x4051e6], edi
and ebx, 0
adc ebx, ebx
sub ebx, eax
mov ebx, 0x403483
call ebx
sbb dword [0x405029], eax
and dword [0x405131], 0x14
or eax, dword [0x405051]
sub byte [0x405067], 5
add dword [0x4050fe], ebx
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ecx + 0x40502b15], al
add dl, cl
add byte [eax], al
add byte [ebx + 0x40505335], al
add byte [edi], ch
or dword [0x4050fb], 0xa3
add eax, 0xffffff87
add esi, ebx
mov ecx, dword [esp]
add ecx, 0xffffff9f
push str.htmifzkmweuyd
push 0x10
push str.waiyrpywqypetiac
push str.xfagkvqwx
call dword [sym.imp.kernel32.dll_GetPrivateProfileSectionA]
cmp eax, 0
jne 0x403745
adc dword [0x4051d6], ebx
sub byte [0x4050cc], 0x48
xor dword [0x40518a], edi
mov ecx, dword [esp]
adc ecx, dword [0x40517e]
adc esi, dword [0x4050f2]
adc dword [0x40507c], esi
push str.ramzjxttkpou
push 0x405929
call dword [sym.imp.kernel32.dll_lstrcmpA]
cmp eax, 0
jne 0x403745
add esi, edi
adc eax, dword [0x4051ab]
sub ebx, dword [0x4051da]
or edi, dword [0x4050bb]
adc dword [0x4050ed], 0x44
mov edi, 0x403745
call edi
adc dword [0x4051ce], 0xb5
mov ecx, dword [esp]
add ecx, 0xffffffe4
adc ecx, 0xffffffd0
add dword [0x405020], edi
sbb dword [0x405040], 0xee
sbb ecx, 0xe
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
xor ebx, ebx
sbb dword [0x40501e], 0xcb
xor dword [0x4050cf], esi
adc eax, eax
mov ecx, dword [esp]
add ecx, 0xffffffce
push str.ramzjxttkpou
push 0x405929
call dword [sym.imp.kernel32.dll_lstrcmpA]
test eax, eax
jne 0x4031e3
mov ecx, dword [esp]
add ecx, 0x27
sbb ecx, ecx
xor eax, 0x46
sbb byte [0x405099], al
push str.htmifzkmweuyd
push 0x10
push str.waiyrpywqypetiac
push str.xfagkvqwx
call dword [sym.imp.kernel32.dll_GetPrivateProfileSectionA]
cmp eax, 0
jne 0x4031e3
adc dword [0x405146], esi
sbb dword [0x405192], 0xa
mov edx, dword [esp]
adc edx, dword [0x4050c3]
adc eax, edi
mov ebx, 0x4031e3
call ebx
adc edi, edx
sub edi, dword [0x40517e]
and dword [0x4050e8], 0x97
sbb bh, ah
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ebx + 0x40517e15], al
add byte [ecx + ebx], bh
cmp eax, 0x4051b1
adc dword [0x40517e], 0x3c
sbb dword [0x4051b1], edi
mov ecx, dword [esp]
add ecx, eax
or dword [0x405049], ebx
sub eax, dword [0x4050d9]
mov edx, dword [esp]
adc edx, dword [0x405118]
push str.einjwxcjoiw
push 0xd
push str.uzhcqglyvuumm
push str.ukhapyognmjikwhkt
call dword [sym.imp.kernel32.dll_GetPrivateProfileSectionA]
cmp eax, 0
jne 0x402f2c
mov ecx, dword [esp]
add ecx, edi
sub esi, ecx
xor dword [0x4051c0], 0x7b
add ecx, ebx
xor dword [0x40501c], esi
mov eax, 0x402f2c
call eax
add bh, bl
sbb dword [0x405030], 0xd
add esi, ecx
adc dword [0x4050dd], 0xcf
sbb bl, bh
adc eax, dword [0x405093]
add byte [eax], al
mov esp, ebp
pop ebp
ret
adc ebx, edi
adc dword [0x4050ca], 0x46
sbb dword [0x4051d7], 0xb5
mov edx, dword [esp]
add edx, ebx
or dword [0x405172], ebx
push str.inyvrpnrxfmtjgg
push 8
push str.onosjjmp
push str.nuwrnzznlxyj
call dword [sym.imp.kernel32.dll_GetPrivateProfileSectionA]
test eax, eax
jne 0x402e0e
or dword [0x40509a], edi
sub byte [0x4050c4], bl
or bh, byte [0x4050a5]
or edi, dword [0x405111]
mov dword [0x40500a], 0x18
push 0x4058a2
push 0x40589a
call dword [sym.imp.kernel32.dll_FileTimeToSystemTime]
adc esi, ebx
sub byte [0x40519b], 0x74
sub eax, dword [0x405050]
adc edi, dword [0x4051eb]
or edi, dword [0x405140]
mov ecx, 0x402e0e
call ecx
and dword [0x4051ad], 0x2f
xor eax, ebx
or dword [0x4051ae], eax
mov ecx, dword [esp]
add ecx, edi
add byte [eax], al
add byte [eax], al
add byte [eax], al
add esi, 0xffffff81
sbb dword [0x4050e4], 0x5e
mov edx, dword [esp]
add edx, ebx
and byte [0x4051d7], al
adc dword [0x40505c], 0x51
adc edi, dword [0x405182]
push 0xd
push 0x40591c
push str.znawyunxgear
call dword [sym.imp.kernel32.dll_GetShortPathNameA]
mov ch, byte [esp]
add ch, 0x45
or edi, dword [0x40505c]
adc eax, dword [0x40508a]
sub ecx, dword [0x405027]
add ebx, eax
xor ebx, esi
push 0x4058a2
push 0x40589a
call dword [sym.imp.kernel32.dll_FileTimeToSystemTime]
or ebx, dword [0x405120]
add dword [0x4050ea], esi
or dword [0x405163], 0xcb
mov dword [0x4051a6], 0x1d
add bl, 0x42
add esi, esi
mov ecx, 0x40203f
call ecx
sub byte [0x405007], 0xf
adc esi, dword [0x4051ed]
sub byte [0x40513d], 0x68
mov ecx, dword [esp]
adc ecx, dword [0x405172]
adc esi, dword [0x405011]
or dword [0x4050f5], 0xa3
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
xor dword [0x4051e1], 0x75
mov ecx, dword [esp]
add ecx, edi
or ebx, dword [0x40513b]
sub al, bh
xor dword [0x405054], ebx
push str.bwjysbgo
push str.ozhcrurbcxg
call dword [sym.imp.kernel32.dll_SetEnvironmentVariableA]
mov edx, dword [esp]
adc edx, dword [0x405025]
add edx, ebx
add eax, eax
adc edx, dword [0x4050e1]
push str.inyvrpnrxfmtjgg
push 8
push str.onosjjmp
push str.nuwrnzznlxyj
call dword [sym.imp.kernel32.dll_GetPrivateProfileSectionA]
test eax, eax
jne 0x403483
xor esi, ebx
adc edi, ebx
mov ecx, dword [esp]
add ecx, edi
sub edi, esi
adc dword [0x4051f8], edi
mov ecx, 0x403483
call ecx
mov edx, dword [esp]
add edx, eax
adc edx, dword [0x40518b]
sub eax, dword [0x405034]
and dword [0x405133], 0x38
add dh, 0xe3
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
mov dword [0x405025], 0x17
sub eax, edi
xor edi, ebx
adc edi, dword [0x4050fb]
xor dword [0x405105], eax
xor dword [0x4050e7], 0xb4
push str.ramzjxttkpou
push 0x405929
call dword [sym.imp.kernel32.dll_lstrcmpA]
cmp eax, 0
jne 0x4039ed
sub ebx, 0x55
mov edx, dword [esp]
add edx, 0xffffffe9
add bh, 0x20
adc edi, edi
adc edi, 0xffffff90
push 0xa
push 0x40594e
push str.fmbavsvkgk
call dword [sym.imp.kernel32.dll_GetEnvironmentVariableW]
test eax, eax
jne 0x4039ed
adc dword [0x4050ad], 0xb9
adc edi, dword [0x40500f]
add esi, 0x5f
sbb edi, eax
adc dword [0x4051bf], 0x88
mov dl, byte [esp]
add dl, al
mov edx, 0x402c25
call edx
sbb edi, edi
add dword [0x4050e5], eax
mov ecx, dword [esp]
adc ecx, dword [0x40517e]
sub dh, byte [0x4051eb]
adc eax, dword [0x405136]
add byte [ebx - 0xdfedbec], cl
mov edx, dword [esp]
add edx, esi
sbb esi, esi
mov ecx, dword [esp]
add ecx, 0x66
and dword [0x405045], 0x55
push str.inyvrpnrxfmtjgg
push 8
push str.onosjjmp
push str.nuwrnzznlxyj
call dword [sym.imp.kernel32.dll_GetPrivateProfileSectionA]
test eax, eax
jne 0x403483
sbb dword [0x4050f1], 0xaa
mov edx, dword [esp]
add edx, ebx
sub edx, edx
xor ebx, 0x21
adc esi, dword [0x405187]
mov ecx, 0x403483
call ecx
or dword [0x40508f], edi
add dword [0x405168], esi
xor dword [0x405001], 0x8b
adc ebx, dword [0x405157]
adc dh, byte [0x4050f5]
adc dword [0x4050f9], 0xd5
add byte [ecx], dl
test dword [ecx], 0x40509605
add byte [ebx + 0xd13240c], cl
mov cl, 0x51
inc eax
add byte [ecx + 0x4051b11d], al
add al, dh
add byte [eax], al
add byte [edx + 0xd], ch
push 0x40591c
push str.znawyunxgear
call dword [sym.imp.kernel32.dll_GetShortPathNameA]
add dword [0x4050c5], ebx
sub ebx, ebx
add esi, edi
and eax, 9
and dword [0x4050b6], 0xb5
adc eax, dword [0x405028]
mov esi, 0x403483
call esi
mov dword [0x4051f7], 0xaf
mov edx, dword [esp]
adc edx, dword [0x40510a]
sub byte [0x405071], 0xb1
adc eax, eax
and dword [0x405050], edx
sub ah, byte [0x40508a]
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
mov edx, dword [esp]
adc edx, dword [0x405075]
mov ecx, dword [esp]
adc ecx, dword [0x4050e5]
adc al, byte [0x4051d2]
adc esi, dword [0x405059]
sbb dword [0x4050ed], edi
sub ebx, 0x39
push 0xa
push 0x40594e
push str.fmbavsvkgk
call dword [sym.imp.kernel32.dll_GetEnvironmentVariableW]
cmp eax, 0
jne 0x402fcb
and dword [0x40514d], 0xde
mov dword [0x40514b], 0x22
mov ecx, dword [esp]
add ecx, eax
sub dword [0x4050fb], ecx
and dword [0x405007], ecx
push str.htmifzkmweuyd
push 0x10
push str.waiyrpywqypetiac
push str.xfagkvqwx
call dword [sym.imp.kernel32.dll_GetPrivateProfileSectionA]
test eax, eax
jne 0x402fcb
sub edi, dword [0x405160]
add ebx, 0xffffffce
adc dword [0x40511c], 0xa3
mov edx, dword [esp]
adc edx, dword [0x40506d]
mov esi, 0x403922
call esi
add eax, ebx
mov ecx, dword [esp]
add ecx, esi
adc dword [0x405105], 0xa9
or dword [0x40505e], ecx
or ecx, dword [0x4051ec]
or ebx, dword [0x40511d]
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ebx], cl
cmp eax, 0x4051a5
or dword [0x405013], ebx
mov edx, dword [esp]
adc edx, dword [0x40508b]
sub edi, edx
mov ecx, dword [esp]
adc ecx, dword [0x40517d]
push 8
push 0x40599e
push str.popbcvcywhmfmdbjw
call dword [sym.imp.kernel32.dll_QueryDosDeviceA]
cmp eax, 0
jne 0x403363
sub byte [0x4050ef], 0x7a
sbb ebx, 0xffffffca
sbb dword [0x4051e7], eax
xor edi, eax
sbb esi, 0x59
push str.einjwxcjoiw
push 0xd
push str.uzhcqglyvuumm
push str.ukhapyognmjikwhkt
call dword [sym.imp.kernel32.dll_GetPrivateProfileSectionA]
test eax, eax
jne 0x403363
xor ebx, ebx
sub dword [0x4051e1], eax
adc ebx, dword [0x405190]
sbb eax, eax
xor dword [0x405116], 0xcb
mov edx, dword [esp]
adc edx, dword [0x4050e9]
mov edx, 0x40243f
call edx
mov ecx, dword [esp]
adc ecx, dword [0x4050a0]
mov dword [0x4051ea], 0xc0
adc eax, dword [0x4050d5]
sbb dword [0x40513b], ecx
sub ebx, 0xffffff8b
xor dword [0x405008], 0x83
add byte [eax], al
add byte [eax], al
add byte [eax], al
mov edx, dword [esp]
add edx, 0xffffffad
or edi, dword [0x4050d2]
adc ebx, dword [0x405040]
add dword [0x405075], edi
add ebx, edi
adc dh, byte [0x4051e8]
push str.einjwxcjoiw
push 0xd
push str.uzhcqglyvuumm
push str.ukhapyognmjikwhkt
call dword [sym.imp.kernel32.dll_GetPrivateProfileSectionA]
cmp eax, 0
jne 0x402a26
sub al, byte [0x405047]
adc dword [0x4050ee], 0xad
adc esi, dword [0x4051a4]
sbb dword [0x4050d4], edi
adc ah, byte [0x405072]
mov esi, 0x402a26
call esi
mov edx, dword [esp]
add edx, 0xffffffa0
mov cl, byte [esp]
add cl, dl
xor dword [0x4051d6], edi
add edx, 0x12
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
sbb dword [0x405058], 0xfe
sub eax, dword [0x40509b]
and dword [0x40517b], edi
adc eax, eax
sbb dword [0x4050ae], 0x1a
sub bl, bh
lea edx, [0x405988]
push dword [edx]
call dword [sym.imp.kernel32.dll_TlsGetValue]
sbb dword [0x405074], 0xe9
or bh, byte [0x405018]
or dword [0x405065], 0xc
sbb dword [0x40518a], esi
adc bl, byte [0x405132]
mov esi, 0x403532
call esi
adc eax, dword [0x4051ab]
and dword [0x40511b], 0x32
and dword [0x40500f], edi
sub dword [0x405079], edi
sbb dword [0x4051a3], esi
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ecx], ah
cmp eax, 0x4050f2
add al, 0x7c
adc dword [0x405104], 0xfd
add dword [0x405068], edi
mov cl, byte [esp]
add cl, 0xdc
push str.ocejqenvrrkvp
push str.jcuuoybqalvgdoqm
call dword [sym.imp.kernel32.dll_SetEnvironmentVariableW]
sbb esi, 0x64
mov ecx, dword [esp]
add ecx, edi
adc ecx, esi
or ebx, dword [0x405060]
push str.fohvavvsszrwyul
push 0xf
push str.zbqoghgkznailbx
push str.zxrlcmcqcjcvmpnx
call dword [sym.imp.kernel32.dll_GetPrivateProfileSectionA]
cmp eax, 0
jne 0x403400
add edi, esi
or dword [0x405069], ebx
adc dword [0x405147], esi
add byte [0x405093], al
mov edi, 0x403107
call edi
or dword [0x405036], ebx
sbb dword [0x405084], esi
add byte [0x405187], bl
adc edi, dword [0x405028]
and esi, 0xffffffc5
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], ch
sub byte [ebp], al
invalid