Function at 0x100083f0
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x4c
mov eax, dword [0x10030040]
xor eax, esp
mov dword [esp + 0x48], eax
push ebx
push esi
push edi
mov byte [esp + 0x2c], 0x31
mov cl, 0x41
xor cl, byte [esp + 0x2c]
mov al, 0x7e
xor al, byte [esp + 0x2c]
mov ch, 0x5f
mov byte [esp + 0x2d], al
mov bl, 0x58
mov byte [esp + 0xf], ch
mov dl, 0x45
mov al, byte [esp + 0xf]
mov dh, 0x1f
mov byte [esp + 0x2e], cl
mov ah, 0x5e
mov cl, byte [esp + 0x2c]
mov bh, 0x78
xor al, cl
mov byte [esp + 0xe], bl
xor dl, cl
mov byte [esp + 0x35], al
mov al, byte [esp + 0xe]
xor ch, cl
xor dh, cl
mov byte [esp + 0x32], ch
xor bl, cl
mov byte [esp + 0x37], 0
xor ah, cl
mov byte [esp + 0x2f], dl
xor bh, cl
mov byte [esp + 0x33], dh
mov edx, dword [0x10031ee0]
xor al, cl
lea ecx, [esp + 0x2d]
mov byte [esp + 0x30], bl
mov byte [esp + 0x31], ah
lea esi, [ecx + 1]
mov byte [esp + 0x34], bh
mov byte [esp + 0x36], al
mov byte [esp + 0x37], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10008487
mov eax, 0x7fffffff
sub ecx, esi
sub eax, edx
cmp eax, ecx
jb 0x10008e1b
cmp dword [0x10031ee4], 0xf
mov eax, 0x10031ed0
push ecx
cmova eax, dword [0x10031ed0]
lea ecx, [esp + 0x31]
push ecx
push edx
push eax
push ecx
push dword [esp + 0x4c]
lea ecx, [esp + 0x54]
call fcn.100072b0
cmp dword [esp + 0x50], 0xf
lea esi, [esp + 0x3c]
mov cl, 0x2c
mov byte [esp + 0x1c], 0x43
cmova esi, dword [esp + 0x3c]
mov dl, cl
mov byte [esp + 0xe], cl
mov al, 0xf
xor al, byte [esp + 0x1c]
mov bl, 0x37
xor cl, byte [esp + 0x1c]
mov ah, 0x14
mov byte [esp + 0x1d], al
mov ch, 0x26
mov al, byte [esp + 0xe]
mov dh, 0x22
mov byte [esp + 0x1e], cl
mov bh, 0x33
mov cl, byte [esp + 0x1c]
xor al, cl
mov byte [esp + 0xf], 0x2d
mov byte [esp + 0x25], al
xor dl, cl
mov al, byte [esp + 0xf]
xor bl, cl
xor al, cl
mov byte [esp + 0x10], 0x7c
xor ah, cl
mov byte [esp + 0x1f], dl
xor ch, cl
mov byte [esp + 0x21], ah
xor dh, cl
mov byte [esp + 0x26], al
xor bh, cl
mov byte [esp + 0x20], bl
mov cl, 0x19
mov byte [esp + 0x22], ch
xor cl, byte [esp + 0x10]
mov dl, 8
mov ah, 0x13
mov byte [esp + 0x23], dh
mov byte [esp + 0x24], bh
mov ch, ah
mov dh, dl
mov byte [esp + 0x12], cl
mov cl, byte [esp + 0x10]
mov al, 0x2c
xor al, byte [esp + 0x10]
mov bl, 0x30
mov bh, 0x15
mov byte [esp + 0x27], 0
xor dl, cl
mov byte [esp + 0xe], 0x12
xor bl, cl
mov byte [esp + 0x11], al
mov al, byte [esp + 0xe]
xor ah, cl
xor ch, cl
mov byte [esp + 0x27], 0
xor dh, cl
mov byte [esp + 0xf], 0x1b
xor bh, cl
mov byte [esp + 0x1b], 0
mov byte [esp + 0x13], dl
mov byte [esp + 0x14], bl
mov byte [esp + 0x15], ah
mov byte [esp + 0x16], ch
mov byte [esp + 0x17], dh
mov byte [esp + 0x18], bh
mov edi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
xor al, cl
mov byte [esp + 0x19], al
mov al, byte [esp + 0xf]
xor al, cl
mov byte [esp + 0x1b], 0
push esi
mov byte [esp + 0x1e], al
lea eax, [esp + 0x21]
push 1
push eax
lea eax, [esp + 0x1d]
push eax
call edi
mov byte [0x10031f58], al
cmp al, 1
jbe 0x100085e4
mov byte [0x10031f58], 1
cmp dword [esp + 0x50], 0xf
lea esi, [esp + 0x3c]
mov byte [esp + 0x1c], 0x36
mov al, 0x7a
cmova esi, dword [esp + 0x3c]
mov cl, 0x59
xor al, byte [esp + 0x1c]
mov dl, cl
mov byte [esp + 0x1d], al
mov bh, cl
mov al, byte [esp + 0x1c]
mov ch, 0x44
xor cl, al
mov byte [esp + 0xe], ch
xor dl, al
mov byte [esp + 0x1e], cl
xor ch, al
mov byte [esp + 0x10], 0x67
xor bh, al
mov byte [esp + 0x22], ch
mov ah, 0x77
mov byte [esp + 0xf], 0
xor ah, al
mov byte [esp + 0x1f], dl
mov dh, 0x5b
mov byte [esp + 0x21], ah
xor dh, al
mov byte [esp + 0x24], bh
mov bl, 0x42
mov byte [esp + 0x23], dh
xor bl, al
mov byte [esp + 0x26], 0
mov al, byte [esp + 0xe]
mov cl, 2
xor al, byte [esp + 0x1c]
mov ah, 8
xor cl, byte [esp + 0x10]
mov ch, ah
mov byte [esp + 0x25], al
mov dl, 0x13
mov al, 0x37
mov byte [esp + 0x12], cl
xor al, byte [esp + 0x10]
mov dh, dl
mov cl, byte [esp + 0x10]
mov bh, 0xe
mov byte [esp + 0x11], al
xor ah, cl
mov byte [esp + 0xe], 9
xor dl, cl
mov al, byte [esp + 0xe]
xor ch, cl
xor al, cl
mov byte [esp + 0x15], ah
mov byte [esp + 0x19], al
xor dh, cl
mov al, byte [esp + 0xf]
xor bh, cl
xor al, cl
mov byte [esp + 0x20], bl
push esi
mov byte [esp + 0x1e], al
mov bl, 0x2b
push 1
lea eax, [esp + 0x25]
mov byte [esp + 0x23], 0
push eax
lea eax, [esp + 0x1d]
mov byte [esp + 0x32], 0
xor bl, cl
mov byte [esp + 0x1f], dl
push eax
mov byte [esp + 0x24], bl
mov byte [esp + 0x26], ch
mov byte [esp + 0x27], dh
mov byte [esp + 0x28], bh
mov byte [esp + 0x2b], 0
call edi
mov byte [0x10031f59], al
cmp al, 1
jbe 0x100086eb
mov byte [0x10031f59], 1
cmp dword [esp + 0x50], 0xf
lea esi, [esp + 0x3c]
mov cl, 0x73
mov dword [esp + 0x1c], 0x1c1c3f73
cmova esi, dword [esp + 0x3c]
xor eax, eax
mov dword [esp + 0x20], 0x10103207
mov dword [esp + 0x24], 0x1c000016
mov word [esp + 0x28], 0xa01
mov byte [esp + 0x2a], 0
xor byte [esp + eax + 0x1d], cl
inc eax
cmp eax, 0xd
jae 0x10008731
mov cl, byte [esp + 0x1c]
jmp 0x10008721
mov byte [esp + 0x10], 0x2a
mov al, 0x7a
xor al, byte [esp + 0x10]
mov cl, 0x4f
xor cl, byte [esp + 0x10]
mov ah, 0x45
mov byte [esp + 0x11], al
mov ch, ah
mov byte [esp + 0x12], cl
mov dl, 0x5e
mov cl, byte [esp + 0x10]
mov dh, dl
mov byte [esp + 0xe], 0x44
xor ah, cl
mov al, byte [esp + 0xe]
mov bl, 0x66
xor al, cl
mov byte [esp + 0xf], 0x4d
mov byte [esp + 0x19], al
mov bh, 0x43
mov al, byte [esp + 0xf]
xor dl, cl
xor al, cl
mov byte [esp + 0x15], ah
push esi
mov byte [esp + 0x1e], al
xor bl, cl
push 1
lea eax, [esp + 0x25]
mov byte [esp + 0x23], 0
push eax
lea eax, [esp + 0x1d]
mov byte [esp + 0x36], 0
xor ch, cl
mov byte [esp + 0x1f], dl
xor dh, cl
mov byte [esp + 0x20], bl
xor bh, cl
mov byte [esp + 0x22], ch
push eax
mov byte [esp + 0x27], dh
mov byte [esp + 0x28], bh
mov byte [esp + 0x2b], 0
call edi
mov byte [0x10031f5a], al
cmp al, 1
jbe 0x100087ca
mov byte [0x10031f5a], 1
cmp dword [esp + 0x50], 0xf
lea esi, [esp + 0x3c]
mov cl, 0x27
mov byte [esp + 0x10], 0x48
cmova esi, dword [esp + 0x3c]
mov dl, cl
mov ch, cl
mov byte [esp + 0xe], 0x29
xor cl, byte [esp + 0x10]
mov al, 4
xor al, byte [esp + 0x10]
mov ah, 6
mov byte [esp + 0x11], al
mov bl, 0x3c
mov al, byte [esp + 0xe]
mov dh, 0x3a
mov byte [esp + 0x12], cl
mov bh, 0x25
mov cl, byte [esp + 0x10]
xor al, cl
mov byte [esp + 0xf], 0x24
mov byte [esp + 0x19], al
xor ah, cl
mov al, byte [esp + 0xf]
xor dl, cl
xor al, cl
mov byte [esp + 0x1c], 0x49
mov byte [esp + 0x1a], al
xor bl, cl
xor ch, cl
mov byte [esp + 0x15], ah
xor dh, cl
mov byte [esp + 0xe], 0x27
xor bh, cl
mov byte [esp + 0x13], dl
mov al, 0x19
mov byte [esp + 0x14], bl
xor al, byte [esp + 0x1c]
mov cl, 0x2c
xor cl, byte [esp + 0x1c]
mov ah, 0x26
mov byte [esp + 0x1d], al
mov dl, 0x3d
mov al, byte [esp + 0xe]
mov bl, 5
mov byte [esp + 0x1e], cl
mov cl, byte [esp + 0x1c]
xor al, cl
mov byte [esp + 0x16], ch
mov ch, ah
mov byte [esp + 0x25], al
mov byte [esp + 0x17], dh
xor ah, cl
mov byte [esp + 0x18], bh
mov dh, dl
mov bh, 0x20
mov byte [esp + 0xf], 0x2e
mov al, byte [esp + 0xf]
xor dl, cl
xor bl, cl
mov byte [esp + 0x21], ah
xor ch, cl
mov byte [esp + 0x1b], 0
xor dh, cl
mov byte [esp + 0x27], 0
xor bh, cl
mov byte [esp + 0x1b], 0
xor al, cl
mov byte [esp + 0x1f], dl
push esi
mov byte [esp + 0x2a], al
lea eax, [esp + 0x15]
push 1
push eax
lea eax, [esp + 0x29]
mov byte [esp + 0x2c], bl
mov byte [esp + 0x2e], ch
mov byte [esp + 0x2f], dh
mov byte [esp + 0x30], bh
mov byte [esp + 0x33], 0
push eax
call edi
mov byte [0x10031f5b], al
cmp al, 1
jbe 0x100088e1
mov byte [0x10031f5b], 1
cmp dword [esp + 0x50], 0xf
lea esi, [esp + 0x3c]
mov byte [esp + 0x1c], 0x1d
mov al, 0x51
cmova esi, dword [esp + 0x3c]
mov cl, 0x72
xor al, byte [esp + 0x1c]
mov dl, cl
mov byte [esp + 0x1d], al
mov ah, 0x50
mov al, byte [esp + 0x1c]
mov ch, 0x7c
xor cl, al
mov byte [esp + 0xe], 0x7e
xor dl, al
mov byte [esp + 0x1e], cl
xor ah, al
mov byte [esp + 0x10], 0x21
xor ch, al
mov byte [esp + 0x21], ah
mov dh, 0x7a
mov byte [esp + 0x22], ch
xor dh, al
mov byte [esp + 0xf], 0x46
mov bl, 0x69
mov byte [esp + 0x1f], dl
xor bl, al
mov byte [esp + 0x23], dh
mov bh, 0x74
mov byte [esp + 0x20], bl
xor bh, al
mov byte [esp + 0x26], 0
mov al, byte [esp + 0xe]
mov cl, 0x44
xor al, byte [esp + 0x1c]
mov ah, 0x4e
xor cl, byte [esp + 0x10]
mov ch, ah
mov byte [esp + 0x25], al
mov dl, 0x55
mov al, 0x71
mov byte [esp + 0x12], cl
xor al, byte [esp + 0x10]
mov dh, dl
mov cl, byte [esp + 0x10]
mov bl, 0x6d
mov byte [esp + 0x11], al
xor ah, cl
mov byte [esp + 0xe], 0x4f
xor dl, cl
mov al, byte [esp + 0xe]
xor bl, cl
xor al, cl
mov byte [esp + 0x15], ah
mov byte [esp + 0x19], al
xor ch, cl
mov al, byte [esp + 0xf]
xor dh, cl
xor al, cl
mov byte [esp + 0x24], bh
push esi
mov byte [esp + 0x1e], al
mov bh, 0x48
push 1
lea eax, [esp + 0x25]
mov byte [esp + 0x23], 0
push eax
lea eax, [esp + 0x1d]
mov byte [esp + 0x32], 0
xor bh, cl
mov byte [esp + 0x1f], dl
push eax
mov byte [esp + 0x24], bl
mov byte [esp + 0x26], ch
mov byte [esp + 0x27], dh
mov byte [esp + 0x28], bh
mov byte [esp + 0x2b], 0
call edi
mov byte [0x10031f5c], al
cmp al, 1
jbe 0x100089e9
mov byte [0x10031f5c], 1
cmp dword [esp + 0x50], 0xf
lea esi, [esp + 0x3c]
mov byte [esp + 0x1c], 0x5b
mov al, 0x17
cmova esi, dword [esp + 0x3c]
mov cl, 0x34
xor al, byte [esp + 0x1c]
mov dl, cl
mov byte [esp + 0x1d], al
mov ah, 9
mov al, byte [esp + 0x1c]
mov ch, 0x3a
xor cl, al
mov byte [esp + 0x10], 0x2d
xor dl, al
mov byte [esp + 0x1e], cl
xor ah, al
mov byte [esp + 0xe], 0x43
xor ch, al
mov byte [esp + 0x21], ah
mov dh, 0x29
mov byte [esp + 0x22], ch
xor dh, al
mov byte [esp + 0xf], 0x4a
mov bl, 0x2f
mov byte [esp + 0x1f], dl
xor bl, al
mov byte [esp + 0x23], dh
mov bh, 0x3e
mov byte [esp + 0x20], bl
xor bh, al
mov byte [esp + 0x25], 0
mov al, 0x7d
mov byte [esp + 0x24], bh
xor al, byte [esp + 0x10]
mov cl, 0x48
xor cl, byte [esp + 0x10]
mov ah, 0x42
mov byte [esp + 0x11], al
mov ch, ah
mov al, byte [esp + 0xe]
mov dl, 0x59
mov byte [esp + 0x12], cl
mov dh, dl
mov cl, byte [esp + 0x10]
mov bl, 0x61
xor al, cl
mov byte [esp + 0x1b], 0
mov byte [esp + 0x19], al
xor ah, cl
mov al, byte [esp + 0xf]
mov bh, 0x44
xor al, cl
mov byte [esp + 0x15], ah
push esi
mov byte [esp + 0x1e], al
xor dl, cl
push 1
lea eax, [esp + 0x25]
mov byte [esp + 0x2d], 0
push eax
lea eax, [esp + 0x1d]
mov byte [esp + 0x1f], dl
xor bl, cl
mov byte [esp + 0x27], 0
xor ch, cl
mov byte [esp + 0x20], bl
xor dh, cl
mov byte [esp + 0x22], ch
xor bh, cl
mov byte [esp + 0x23], dh
push eax
mov byte [esp + 0x28], bh
call edi
mov byte [0x10031f5d], al
cmp al, 1
jbe 0x10008ae0
mov byte [0x10031f5d], 1
cmp dword [esp + 0x50], 0xf
lea esi, [esp + 0x3c]
mov cl, 1
mov dword [esp + 0x1c], 0x6e6e4d01
cmova esi, dword [esp + 0x3c]
xor eax, eax
mov dword [esp + 0x20], 0x66715475
mov dword [esp + 0x24], 0x64656073
mov byte [esp + 0x28], 0
nop
xor byte [esp + eax + 0x1d], cl
inc eax
cmp eax, 0xb
jae 0x10008b20
mov cl, byte [esp + 0x1c]
jmp 0x10008b10
mov byte [esp + 0x10], 0xd
mov al, 0x5d
xor al, byte [esp + 0x10]
mov cl, 0x68
xor cl, byte [esp + 0x10]
mov ah, 0x62
mov byte [esp + 0x11], al
mov ch, ah
mov byte [esp + 0x12], cl
mov dl, 0x79
mov cl, byte [esp + 0x10]
mov dh, dl
mov byte [esp + 0xe], 0x63
xor ah, cl
mov al, byte [esp + 0xe]
mov bl, 0x41
xor al, cl
mov byte [esp + 0xf], 0x6a
mov byte [esp + 0x19], al
mov bh, 0x64
mov al, byte [esp + 0xf]
xor dl, cl
xor al, cl
mov byte [esp + 0x15], ah
push esi
mov byte [esp + 0x1e], al
xor bl, cl
push 1
lea eax, [esp + 0x25]
mov byte [esp + 0x23], 0
push eax
lea eax, [esp + 0x1d]
mov byte [esp + 0x34], 0
xor ch, cl
mov byte [esp + 0x1f], dl
xor dh, cl
mov byte [esp + 0x20], bl
xor bh, cl
mov byte [esp + 0x22], ch
push eax
mov byte [esp + 0x27], dh
mov byte [esp + 0x28], bh
mov byte [esp + 0x2b], 0
call edi
mov byte [0x10031f5e], al
cmp al, 1
jbe 0x10008bb9
mov byte [0x10031f5e], 1
cmp dword [esp + 0x50], 0xf
lea esi, [esp + 0x3c]
mov cl, 0x20
mov byte [esp + 0x10], 0x4f
cmova esi, dword [esp + 0x3c]
mov dl, cl
xor cl, byte [esp + 0x10]
mov al, 3
xor al, byte [esp + 0x10]
mov ah, 0x1a
mov byte [esp + 0x11], al
mov bl, 0x3b
mov byte [esp + 0x12], cl
mov ch, 0x21
mov cl, byte [esp + 0x10]
mov dh, 0x26
mov byte [esp + 0xe], 0x3a
xor ah, cl
mov al, byte [esp + 0xe]
xor dl, cl
xor al, cl
mov byte [esp + 0xf], 0x2a
mov byte [esp + 0x19], al
xor bl, cl
mov al, byte [esp + 0xf]
xor ch, cl
xor al, cl
mov byte [esp + 0x1c], 0x6b
mov byte [esp + 0x1a], al
xor dh, cl
mov bh, 0x3e
mov byte [esp + 0x15], ah
xor bh, cl
mov byte [esp + 0xe], 5
mov al, 0x3b
mov byte [esp + 0x13], dl
xor al, byte [esp + 0x1c]
mov cl, 0xe
xor cl, byte [esp + 0x1c]
mov ah, 4
mov byte [esp + 0x1d], al
mov dl, 0x1f
mov al, byte [esp + 0xe]
mov byte [esp + 0x1e], cl
mov cl, byte [esp + 0x1c]
xor al, cl
mov byte [esp + 0x14], bl
mov byte [esp + 0x25], al
mov bl, 0x27
mov byte [esp + 0x16], ch
xor bl, cl
mov ch, ah
mov byte [esp + 0x17], dh
mov byte [esp + 0x18], bh
mov dh, dl
xor ah, cl
mov byte [esp + 0xf], 0xc
mov al, byte [esp + 0xf]
mov bh, 2
xor dl, cl
mov byte [esp + 0x21], ah
xor ch, cl
mov byte [esp + 0x1b], 0
xor dh, cl
mov byte [esp + 0x27], 0
xor bh, cl
mov byte [esp + 0x1b], 0
xor al, cl
mov byte [esp + 0x1f], dl
push esi
mov byte [esp + 0x2a], al
lea eax, [esp + 0x15]
push 1
push eax
lea eax, [esp + 0x29]
mov byte [esp + 0x2c], bl
mov byte [esp + 0x2e], ch
mov byte [esp + 0x2f], dh
mov byte [esp + 0x30], bh
mov byte [esp + 0x33], 0
push eax
call edi
mov byte [0x10031f5f], al
cmp al, 1
jbe 0x10008cd0
mov byte [0x10031f5f], 1
cmp dword [esp + 0x50], 0xf
lea esi, [esp + 0x3c]
mov byte [esp + 0x1c], 0x27
mov al, 0x6b
cmova esi, dword [esp + 0x3c]
mov cl, 0x48
xor al, byte [esp + 0x1c]
mov dl, cl
mov byte [esp + 0x1d], al
mov bl, 0x53
mov al, byte [esp + 0x1c]
mov ah, 0x64
xor cl, al
mov byte [esp + 0xe], bl
xor dl, al
mov byte [esp + 0x1e], cl
xor bl, al
mov byte [esp + 0x10], 0x4b
xor ah, al
mov byte [esp + 0xf], 0x2c
mov ch, 0x55
mov byte [esp + 0x21], ah
xor ch, al
mov byte [esp + 0x1f], dl
mov dh, 0x46
mov byte [esp + 0x22], ch
xor dh, al
mov byte [esp + 0x20], bl
mov bh, 0x41
mov byte [esp + 0x23], dh
xor bh, al
mov byte [esp + 0x26], 0
mov al, byte [esp + 0xe]
mov cl, 0x2e
xor al, byte [esp + 0x1c]
mov ah, 0x24
xor cl, byte [esp + 0x10]
mov ch, ah
mov byte [esp + 0x25], al
mov dl, 0x3f
mov al, 0x1b
mov byte [esp + 0x12], cl
xor al, byte [esp + 0x10]
mov dh, dl
mov cl, byte [esp + 0x10]
mov bl, 7
mov byte [esp + 0x11], al
xor ah, cl
mov byte [esp + 0xe], 0x25
xor dl, cl
mov al, byte [esp + 0xe]
xor bl, cl
xor al, cl
mov byte [esp + 0x15], ah
mov byte [esp + 0x19], al
xor ch, cl
mov al, byte [esp + 0xf]
xor dh, cl
xor al, cl
mov byte [esp + 0x24], bh
push esi
mov byte [esp + 0x1e], al
mov bh, 0x22
push 1
lea eax, [esp + 0x25]
mov byte [esp + 0x23], 0
push eax
lea eax, [esp + 0x1d]
mov byte [esp + 0x32], 0
xor bh, cl
mov byte [esp + 0x1f], dl
push eax
mov byte [esp + 0x24], bl
mov byte [esp + 0x26], ch
mov byte [esp + 0x27], dh
mov byte [esp + 0x28], bh
mov byte [esp + 0x2b], 0
call edi
mov byte [0x10031f60], al
cmp al, 1
jbe 0x10008dd7
mov byte [0x10031f60], 1
mov ecx, dword [esp + 0x50]
cmp ecx, 0xf
jbe 0x10008e09
mov edx, dword [esp + 0x3c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10008dff
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10008e20
push ecx
push edx
call fcn.1000b13a
add esp, 8
mov ecx, dword [esp + 0x54]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.1000b0d9
mov esp, ebp
pop ebp
ret
call fcn.100015c0
call fcn.1000feff
int3