Function at 0x1003d891
Capabilities:
Terminate process

Disassembly:
mov eax, 0x1408
call fcn.10050820
cmp dword [0x100d5310], 0
push ebx
push ebp
push esi
push edi
je 0x1003d914
push 0x20a98
push 0
push 0x10159ab8
call fcn.10052960
add esp, 0xc
call fcn.1003b7ad
mov ecx, dword [0x1017a564]
xor edi, edi
test ecx, ecx
jle 0x1003d946
mov edx, dword [0x1017a560]
xor esi, esi
xor ebp, ebp
cmp dword [esi + edx + 8], ebp
jle 0x1003d90a
xor ebx, ebx
lea ecx, [esi + edx]
mov eax, dword [ecx + 0xc]
push dword [eax + ebx + 8]
push 0xffffffffffffffff
push ecx
call fcn.1003aad3
mov edx, dword [0x1017a560]
add esp, 0xc
inc ebp
add ebx, 0xc
cmp ebp, dword [esi + edx + 8]
jl 0x1003d8df
mov ecx, dword [0x1017a564]
inc edi
add esi, 0x10
cmp edi, ecx
jl 0x1003d8d5
jmp 0x1003d920
mov ecx, dword [0x1017a564]
mov edx, dword [0x1017a560]
test ecx, ecx
jle 0x1003d946
add edx, 8
xor esi, esi
cmp dword [edx], esi
jle 0x1003d93e
xor edi, edi
mov eax, dword [edx + 4]
and dword [edi + eax], 0
inc esi
lea edi, [edi + 0xc]
cmp esi, dword [edx]
jl 0x1003d92f
add edx, 0x10
sub ecx, 1
jne 0x1003d927
push str.candy_sa.ini
push 0x10188090
push str._scandy_sa_s
lea eax, [esp + 0x224]
push 0x200
push eax
call fcn.100068fa
lea eax, [esp + 0x22c]
push 0x10087840
push eax
call fcn.1005f87a
mov ebp, eax
add esp, 0x1c
mov dword [esp + 0x10], ebp
test ebp, ebp
jne 0x1003db61
lea eax, [esp + 0x218]
push eax
push str.Could_not_open__s__using_default__or_previous__settings.
call fcn.1004e50c
pop ecx
pop ecx
jmp 0x1003dc7a
lea esi, [esp + 0x18]
lea ecx, [esi + 1]
mov al, byte [esi]
inc esi
test al, al
jne 0x1003d9aa
sub esi, ecx
jmp 0x1003d9d1
movsx eax, byte [esp + esi + 0x17]
push eax
push str._t_n_r
call fcn.10054d60
pop ecx
pop ecx
test eax, eax
je 0x1003d9d5
dec esi
mov byte [esp + esi + 0x18], 0
test esi, esi
jg 0x1003d9b5
mov al, byte [esp + 0x18]
cmp al, 0x23
je 0x1003db69
cmp al, 0x3b
je 0x1003db69
test al, al
je 0x1003db69
test esi, esi
jle 0x1003da20
cmp byte [esp + esi + 0x17], 0x5c
jne 0x1003da20
push 0x1000
lea eax, [esp + 0x1c]
mov byte [esp + esi + 0x1b], 0x20
push eax
lea eax, [esp + 0x420]
push eax
call fcn.1002c004
add esp, 0xc
jmp 0x1003db69
push 0x1000
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x420]
push eax
call fcn.1002c004
add esp, 0xc
lea esi, [esp + 0x418]
or dword [esp + 0x14], 0xffffffff
mov al, byte [esi]
cmp al, 9
je 0x1003da50
cmp al, 0x20
jne 0x1003da53
inc esi
jmp 0x1003da46
cmp al, 0x30
jl 0x1003da5b
cmp al, 0x39
jle 0x1003da73
cmp al, 0x41
jl 0x1003da63
cmp al, 0x5a
jle 0x1003da73
cmp al, 0x61
jl 0x1003da6b
cmp al, 0x7a
jle 0x1003da73
cmp al, 0x5f
je 0x1003da73
cmp al, 0x2d
jne 0x1003da78
inc esi
mov al, byte [esi]
jmp 0x1003da53
cmp al, 0x5b
jne 0x1003dad4
mov byte [esi], 0
inc esi
mov al, byte [esi]
cmp al, 9
je 0x1003da7f
cmp al, 0x20
je 0x1003da7f
cmp al, 0x5d
je 0x1003dad1
push esi
call fcn.1003de58
mov ebx, eax
mov dword [esp + 0x18], ebx
pop ecx
test ebx, ebx
jns 0x1003dab5
lea eax, [esp + 0x18]
push eax
push str.Parse_error:__s__Negative_array_index_
call fcn.1004e50c
pop ecx
pop ecx
jmp 0x1003db61
push 0x5d
push esi
call fcn.10054d60
mov esi, eax
pop ecx
pop ecx
test esi, esi
jne 0x1003dad1
lea eax, [esp + 0x18]
push eax
push str.Parse_error:__s__missing___
jmp 0x1003daa9
inc esi
mov al, byte [esi]
mov byte [esi], 0
cmp al, 0x3d
je 0x1003daf6
inc esi
mov al, byte [esi]
cmp al, 9
je 0x1003dadb
cmp al, 0x20
je 0x1003dadb
cmp al, 0x3d
je 0x1003daf6
lea eax, [esp + 0x18]
push eax
push str.Parse_error:__s__expected__
jmp 0x1003daa9
mov edi, dword [0x1017a564]
lea ebp, [esi + 1]
xor esi, esi
test edi, edi
jle 0x1003db49
mov ecx, dword [0x1017a560]
mov edx, dword [ecx]
lea eax, [esp + 0x418]
mov bl, byte [eax]
cmp bl, byte [edx]
jne 0x1003db34
test bl, bl
je 0x1003db30
mov bl, byte [eax + 1]
cmp bl, byte [edx + 1]
jne 0x1003db34
add eax, 2
add edx, 2
test bl, bl
jne 0x1003db14
xor eax, eax
jmp 0x1003db39
sbb eax, eax
or eax, 1
test eax, eax
je 0x1003dbed
inc esi
add ecx, 0x10
cmp esi, edi
jl 0x1003db0b
lea eax, [esp + 0x418]
push eax
push str.Unknown_setting__s
call fcn.1004e50c
pop ecx
pop ecx
mov ebp, dword [esp + 0x10]
mov byte [esp + 0x418], 0
push ebp
lea eax, [esp + 0x1c]
push 0x200
push eax
call fcn.10060825
add esp, 0xc
test eax, eax
jne 0x1003d9a3
push ebp
call fcn.10056db1
xor edi, edi
pop ecx
cmp dword [0x1017a564], edi
jle 0x1003dc6e
xor ebx, ebx
mov esi, dword [0x1017a560]
xor eax, eax
add esi, ebx
mov dword [esp + 0x14], eax
xor ebp, ebp
mov ecx, dword [esi + 8]
test ecx, ecx
jle 0x1003dc3a
xor edx, edx
mov dword [esp + 0x10], edx
mov eax, dword [esi + 0xc]
cmp dword [edx + eax], 0
je 0x1003dc27
cmp dword [edx + eax], 1
jle 0x1003dbe4
push ebp
push esi
call fcn.1003aa8e
push eax
push str.Warning:_setting__s_was_set_multiple_times_in_the_.ini_file
call fcn.1004e50c
mov edx, dword [esp + 0x20]
add esp, 0x10
xor eax, eax
inc eax
mov dword [esp + 0x14], eax
jmp 0x1003dc2b
cmp dword [0x100d5310], 0
jne 0x1003dc14
cmp dword [ecx + 4], 8
je 0x1003db5d
cmp dword [ecx + 4], 9
je 0x1003db5d
cmp dword [ecx + 4], 0x10
je 0x1003db5d
push ebp
push dword [esp + 0x18]
push ecx
call fcn.1003aad3
add esp, 0xc
jmp 0x1003db5d
mov eax, dword [esp + 0x14]
mov ecx, dword [esi + 8]
inc ebp
add edx, 0xc
mov dword [esp + 0x10], edx
cmp ebp, ecx
jl 0x1003dbbc
test eax, eax
jne 0x1003dc5e
cmp ecx, 1
mov edx, 0x10077364
mov eax, 0x10087948
cmovle eax, edx
push eax
push dword [esi]
push str.Warning:_setting__s_s_was_not_present_in_the_.ini_file
call fcn.1004e50c
add esp, 0xc
inc edi
add ebx, 0x10
cmp edi, dword [0x1017a564]
jl 0x1003db9b
and dword [0x100d5310], 0
call fcn.1003dc85
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1408
ret