Function at 0x40a1a0
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x54ca9b
mov eax, dword fs:[0]
push eax
sub esp, 0x438
mov eax, dword [0x5a40f0]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x430], ecx
xor eax, eax
mov word [ebp - 0x21c], ax
push 0x206
push 0
lea ecx, [ebp - 0x21a]
push ecx
call fcn.00526270
add esp, 0xc
push 0x57f2c4
push 0x104
lea edx, [ebp - 0x21c]
push edx
push 0x57f2dc
push str.Title
push 0x57f318
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea eax, [ebp - 0x21c]
mov dword [ebp - 0x434], eax
mov dword [ebp - 0x438], str.Odin3.__Android__SLP_
mov ecx, dword [ebp - 0x438]
mov dl, byte [ecx]
mov byte [ebp - 0x439], dl
mov eax, dword [ebp - 0x434]
cmp dl, byte [eax]
jne 0x40a28a
cmp byte [ebp - 0x439], 0
je 0x40a27e
mov ecx, dword [ebp - 0x438]
mov dl, byte [ecx + 1]
mov byte [ebp - 0x43a], dl
mov eax, dword [ebp - 0x434]
cmp dl, byte [eax + 1]
jne 0x40a28a
add dword [ebp - 0x438], 2
add dword [ebp - 0x434], 2
cmp byte [ebp - 0x43a], 0
jne 0x40a22c
mov dword [ebp - 0x440], 0
jmp 0x40a295
sbb ecx, ecx
sbb ecx, 0xffffffff
mov dword [ebp - 0x440], ecx
mov edx, dword [ebp - 0x440]
mov dword [ebp - 0x444], edx
cmp dword [ebp - 0x444], 0
jne 0x40a2cb
push 0
push 0
push str.Odin3.ini
call fcn.00431691
push 0
push 0
push 0x10
call fcn.0040e000
mov ecx, dword [eax + 0x20]
call fcn.0040def0
push 0x57f380
push 0x104
lea eax, [ebp - 0x424]
push eax
push 0x57f398
push 0x57f39c
push 0x57f3c0
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea ecx, [ebp - 0x424]
push ecx
call fcn.0052496d
add esp, 4
mov edx, dword [ebp - 0x430]
mov dword [edx + 0x350], eax
push 0x104
push 0
lea eax, [ebp - 0x424]
push eax
call fcn.00526270
add esp, 0xc
push 0x57f3d0
push 0x104
lea ecx, [ebp - 0x424]
push ecx
push 0x57f3e8
push 0x57f3ec
push 0x57f414
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea edx, [ebp - 0x424]
push edx
call fcn.0052496d
add esp, 4
mov ecx, dword [ebp - 0x430]
mov dword [ecx + 0x354], eax
push 0x104
push 0
lea edx, [ebp - 0x424]
push edx
call fcn.00526270
add esp, 0xc
push 0x57f424
push 0x104
lea eax, [ebp - 0x424]
push eax
push 0x57f43c
push 0x57f440
push 0x57f458
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea ecx, [ebp - 0x424]
push ecx
call fcn.0052496d
add esp, 4
test eax, eax
jne 0x40a3dd
push 0
push 0x402
mov ecx, dword [ebp - 0x430]
call fcn.0042d06c
mov ecx, eax
call fcn.0040dd10
mov edx, dword [ebp - 0x430]
mov dword [edx + 0x98], 0
jmp 0x40a406
push 1
push 0x402
mov ecx, dword [ebp - 0x430]
call fcn.0042d06c
mov ecx, eax
call fcn.0040dd10
mov eax, dword [ebp - 0x430]
mov dword [eax + 0x98], 1
push 0x104
push 0
lea ecx, [ebp - 0x424]
push ecx
call fcn.00526270
add esp, 0xc
push 0x57f46c
push 0x104
lea edx, [ebp - 0x424]
push edx
push 0x57f484
push 0x57f488
push 0x57f4a0
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea eax, [ebp - 0x424]
push eax
call fcn.0052496d
add esp, 4
test eax, eax
jne 0x40a480
push 0
push 0x403
mov ecx, dword [ebp - 0x430]
call fcn.0042d06c
mov ecx, eax
call fcn.0040dd10
mov ecx, dword [ebp - 0x430]
mov dword [ecx + 0x9c], 0
jmp 0x40a4a9
push 1
push 0x403
mov ecx, dword [ebp - 0x430]
call fcn.0042d06c
mov ecx, eax
call fcn.0040dd10
mov edx, dword [ebp - 0x430]
mov dword [edx + 0x9c], 1
push 0x104
push 0
lea eax, [ebp - 0x424]
push eax
call fcn.00526270
add esp, 0xc
push 0x57f4b4
push 0x104
lea ecx, [ebp - 0x424]
push ecx
push 0x57f4cc
push 0x57f4d0
push 0x57f4e8
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea edx, [ebp - 0x424]
push edx
call fcn.0052496d
add esp, 4
test eax, eax
jne 0x40a523
push 0
push 0x404
mov ecx, dword [ebp - 0x430]
call fcn.0042d06c
mov ecx, eax
call fcn.0040dd10
mov eax, dword [ebp - 0x430]
mov dword [eax + 0xa0], 0
jmp 0x40a54c
push 1
push 0x404
mov ecx, dword [ebp - 0x430]
call fcn.0042d06c
mov ecx, eax
call fcn.0040dd10
mov ecx, dword [ebp - 0x430]
mov dword [ecx + 0xa0], 1
push 0x104
push 0
lea edx, [ebp - 0x424]
push edx
call fcn.00526270
add esp, 0xc
push 0x57f4fc
push 0x104
lea eax, [ebp - 0x424]
push eax
push 0x57f514
push 0x57f518
push 0x57f534
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea ecx, [ebp - 0x424]
push ecx
call fcn.0052496d
add esp, 4
test eax, eax
jne 0x40a5c6
push 0
push 0x409
mov ecx, dword [ebp - 0x430]
call fcn.0042d06c
mov ecx, eax
call fcn.0040dd10
mov edx, dword [ebp - 0x430]
mov dword [edx + 0xa8], 0
jmp 0x40a5ef
push 1
push 0x409
mov ecx, dword [ebp - 0x430]
call fcn.0042d06c
mov ecx, eax
call fcn.0040dd10
mov eax, dword [ebp - 0x430]
mov dword [eax + 0xa8], 1
push 0x104
push 0
lea ecx, [ebp - 0x424]
push ecx
call fcn.00526270
add esp, 0xc
push 0x57f548
push 0x104
lea edx, [ebp - 0x424]
push edx
push 0x57f560
push 0x57f564
push str.CPOption
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea eax, [ebp - 0x424]
push eax
call fcn.0052496d
add esp, 4
test eax, eax
jne 0x40a669
push 0
push 0x40a
mov ecx, dword [ebp - 0x430]
call fcn.0042d06c
mov ecx, eax
call fcn.0040dd10
mov ecx, dword [ebp - 0x430]
mov dword [ecx + 0xac], 0
jmp 0x40a692
push 1
push 0x40a
mov ecx, dword [ebp - 0x430]
call fcn.0042d06c
mov ecx, eax
call fcn.0040dd10
mov edx, dword [ebp - 0x430]
mov dword [edx + 0xac], 1
push 0x104
push 0
lea eax, [ebp - 0x424]
push eax
call fcn.00526270
add esp, 0xc
push 0x57f598
push 0x104
lea ecx, [ebp - 0x424]
push ecx
push 0x57f5b0
push 0x57f5b4
push 0x57f5c8
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea edx, [ebp - 0x424]
push edx
call fcn.0052496d
add esp, 4
test eax, eax
jne 0x40a70c
push 0
push 0x427
mov ecx, dword [ebp - 0x430]
call fcn.0042d06c
mov ecx, eax
call fcn.0040dd10
mov eax, dword [ebp - 0x430]
mov dword [eax + 0xc8], 0
jmp 0x40a735
push 1
push 0x427
mov ecx, dword [ebp - 0x430]
call fcn.0042d06c
mov ecx, eax
call fcn.0040dd10
mov ecx, dword [ebp - 0x430]
mov dword [ecx + 0xc8], 1
push 0x104
push 0
lea edx, [ebp - 0x424]
push edx
call fcn.00526270
add esp, 0xc
push 0x57f5dc
push 0x104
lea eax, [ebp - 0x424]
push eax
push 0x57f5f4
push 0x57f5f8
push 0x57f60c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea ecx, [ebp - 0x424]
push ecx
call fcn.0052496d
add esp, 4
test eax, eax
jne 0x40a7af
push 0
push 0x426
mov ecx, dword [ebp - 0x430]
call fcn.0042d06c
mov ecx, eax
call fcn.0040dd10
mov edx, dword [ebp - 0x430]
mov dword [edx + 0xd0], 0
jmp 0x40a7d8
push 1
push 0x426
mov ecx, dword [ebp - 0x430]
call fcn.0042d06c
mov ecx, eax
call fcn.0040dd10
mov eax, dword [ebp - 0x430]
mov dword [eax + 0xd0], 1
push 0x104
push 0
lea ecx, [ebp - 0x424]
push ecx
call fcn.00526270
add esp, 0xc
push 0x57f620
push 0x104
lea edx, [ebp - 0x424]
push edx
push 0x57f638
push 0x57f63c
push str.APOption
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea eax, [ebp - 0x424]
push eax
call fcn.0052496d
add esp, 4
test eax, eax
jne 0x40a852
push 0
push 0x45a
mov ecx, dword [ebp - 0x430]
call fcn.0042d06c
mov ecx, eax
call fcn.0040dd10
mov ecx, dword [ebp - 0x430]
mov dword [ecx + 0xd4], 0
jmp 0x40a87b
push 1
push 0x45a
mov ecx, dword [ebp - 0x430]
call fcn.0042d06c
mov ecx, eax
call fcn.0040dd10
mov edx, dword [ebp - 0x430]
mov dword [edx + 0xd4], 1
push 0x104
push 0
lea eax, [ebp - 0x424]
push eax
call fcn.00526270
add esp, 0xc
push 0x57f660
push 0x104
lea ecx, [ebp - 0x424]
push ecx
push 0x57f678
push 0x57f67c
push 0x57f684
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea edx, [ebp - 0x424]
push edx
call fcn.0052496d
add esp, 4
test eax, eax
jne 0x40a8f5
push 0
push 0x408
mov ecx, dword [ebp - 0x430]
call fcn.0042d06c
mov ecx, eax
call fcn.0040dd10
mov eax, dword [ebp - 0x430]
mov dword [eax + 0x29c], 0
jmp 0x40a929
push 1
push 0x408
mov ecx, dword [ebp - 0x430]
call fcn.0042d06c
mov ecx, eax
call fcn.0040dd10
mov ecx, dword [ebp - 0x430]
mov dword [ecx + 0x29c], 1
mov ecx, dword [ebp - 0x430]
call fcn.0040c430
push 0x104
push 0
lea edx, [ebp - 0x424]
push edx
call fcn.00526270
add esp, 0xc
push 0x57f698
push 0x104
lea eax, [ebp - 0x424]
push eax
push 0x57f6b0
push 0x57f6b4
push 0x57f6cc
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea ecx, [ebp - 0x424]
push ecx
call fcn.0052496d
add esp, 4
test eax, eax
jne 0x40a98a
mov edx, dword [ebp - 0x430]
mov dword [edx + 0x3ac], 0
jmp 0x40a99a
mov eax, dword [ebp - 0x430]
mov dword [eax + 0x3ac], 1
push 0x104
push 0
lea ecx, [ebp - 0x424]
push ecx
call fcn.00526270
add esp, 0xc
push 0x57f6e8
push 0x104
lea edx, [ebp - 0x424]
push edx
push 0x57f700
push 0x57f704
push 0x57f70c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea eax, [ebp - 0x424]
push eax
call fcn.0052496d
add esp, 4
test eax, eax
jne 0x40a9fb
mov ecx, dword [ebp - 0x430]
mov dword [ecx + 0x3b0], 0
jmp 0x40aa0b
mov edx, dword [ebp - 0x430]
mov dword [edx + 0x3b0], 1
push 0x104
push 0
lea eax, [ebp - 0x424]
push eax
call fcn.00526270
add esp, 0xc
push 0x57f728
push 0x104
lea ecx, [ebp - 0x424]
push ecx
push 0x57f740
push 0x57f744
push 0x57f750
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea edx, [ebp - 0x424]
push edx
call fcn.0052496d
add esp, 4
test eax, eax
jne 0x40aa6c
mov eax, dword [ebp - 0x430]
mov dword [eax + 0x3b4], 0
jmp 0x40aa7c
mov ecx, dword [ebp - 0x430]
mov dword [ecx + 0x3b4], 1
push 0x104
push 0
lea edx, [ebp - 0x424]
push edx
call fcn.00526270
add esp, 0xc
push 0x57f76c
push 0x104
lea eax, [ebp - 0x424]
push eax
push 0x57f784
push 0x57f788
push 0x57f790
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea ecx, [ebp - 0x424]
push ecx
call fcn.0052496d
add esp, 4
test eax, eax
jne 0x40aadd
mov edx, dword [ebp - 0x430]
mov dword [edx + 0x3b8], 0
jmp 0x40aaed
mov eax, dword [ebp - 0x430]
mov dword [eax + 0x3b8], 1
push 0x104
push 0
lea ecx, [ebp - 0x424]
push ecx
call fcn.00526270
add esp, 0xc
push 0x57f7ac
push 0x104
lea edx, [ebp - 0x424]
push edx
push 0x57f7c4
push 0x57f7c8
push str.ButtonOption
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea eax, [ebp - 0x424]
push eax
call fcn.0052496d
add esp, 4
test eax, eax
jne 0x40ab4e
mov ecx, dword [ebp - 0x430]
mov dword [ecx + 0x3bc], 0
jmp 0x40ab5e
mov edx, dword [ebp - 0x430]
mov dword [edx + 0x3bc], 1
push 0x104
push 0
lea eax, [ebp - 0x424]
push eax
call fcn.00526270
add esp, 0xc
push 0x57f7f8
push 0x104
lea ecx, [ebp - 0x424]
push ecx
push 0x57f810
push 0x57f814
push 0x57f830
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea edx, [ebp - 0x424]
push edx
call fcn.0052496d
add esp, 4
test eax, eax
jne 0x40aca4
mov eax, dword [ebp - 0x430]
mov dword [eax + 0x3c0], 0
push 0
push 0x427
mov ecx, dword [ebp - 0x430]
call fcn.0042d06c
mov ecx, eax
call fcn.0042d2e3
push 0
push 0x402
mov ecx, dword [ebp - 0x430]
call fcn.0042d06c
mov ecx, eax
call fcn.0042d2e3
push 0
push 0x403
mov ecx, dword [ebp - 0x430]
call fcn.0042d06c
mov ecx, eax
call fcn.0042d2e3
push 0
push 0x404
mov ecx, dword [ebp - 0x430]
call fcn.0042d06c
mov ecx, eax
call fcn.0042d2e3
push 0
push 0x409
mov ecx, dword [ebp - 0x430]
call fcn.0042d06c
mov ecx, eax
call fcn.0042d2e3
push 0
push 0x40a
mov ecx, dword [ebp - 0x430]
call fcn.0042d06c
mov ecx, eax
call fcn.0042d2e3
push 0
push 0x426
mov ecx, dword [ebp - 0x430]
call fcn.0042d06c
mov ecx, eax
call fcn.0042d2e3
push 0
push 0x45a
mov ecx, dword [ebp - 0x430]
call fcn.0042d06c
mov ecx, eax
call fcn.0042d2e3
push 0
push 0x408
mov ecx, dword [ebp - 0x430]
call fcn.0042d06c
mov ecx, eax
call fcn.0042d2e3
jmp 0x40acb4
mov ecx, dword [ebp - 0x430]
mov dword [ecx + 0x3c0], 1
push 0x104
push 0
lea edx, [ebp - 0x424]
push edx
call fcn.00526270
add esp, 0xc
push 0x57f840
push 0x104
lea eax, [ebp - 0x424]
push eax
push 0x57f858
push 0x57f85c
push 0x57f874
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea ecx, [ebp - 0x424]
push ecx
call fcn.0052496d
add esp, 4
test eax, eax
jne 0x40ad35
push 0
push 0x40a
mov ecx, dword [ebp - 0x430]
call fcn.0042d06c
mov ecx, eax
call fcn.0042d2e3
push 0
push 0x409
mov ecx, dword [ebp - 0x430]
call fcn.0042d06c
mov ecx, eax
call fcn.0042d2e3
push 0x104
push 0
lea edx, [ebp - 0x424]
push edx
call fcn.00526270
add esp, 0xc
push str..Odin3.ini
push 0x104
lea eax, [ebp - 0x424]
push eax
push 0x57f89c
push 0x57f8a0
push 0x57f8a8
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea ecx, [ebp - 0x424]
push ecx
call fcn.0052496d
add esp, 4
test eax, eax
jne 0x40adbb
push 1
push 0x421
mov ecx, dword [ebp - 0x430]
call fcn.0042d06c
mov ecx, eax
call fcn.0042d2a1
push 0
push 0x423
mov ecx, dword [ebp - 0x430]
call fcn.0042d06c
mov ecx, eax
call fcn.0042d2a1
jmp 0x40ae8f
push 0
push 0
push 0x13a0
mov ecx, dword [ebp - 0x430]
call fcn.00405070
push 0
push 0x421
mov ecx, dword [ebp - 0x430]
call fcn.0042d06c
mov ecx, eax
call fcn.0042d2a1
push 1
push 0x423
mov ecx, dword [ebp - 0x430]
call fcn.0042d06c
mov ecx, eax
call fcn.0042d2a1
lea ecx, [ebp - 0x42c]
call fcn.00401f40
mov dword [ebp - 4], 0
push 0x6f
lea ecx, [ebp - 0x42c]
call fcn.00405490
push 0
mov ecx, dword [ebp - 0x430]
call fcn.0040dfc0
mov dword [ebp - 0x428], eax
cmp dword [ebp - 0x428], 0
je 0x40ae7d
lea ecx, [ebp - 0x42c]
call fcn.0040d550
movzx edx, al
test edx, edx
jne 0x40ae7d
push 0
push 0
push 0x800
mov ecx, dword [ebp - 0x428]
call fcn.0040df90
lea ecx, [ebp - 0x42c]
call fcn.00401be0
push eax
push 0x20
push 0
mov ecx, dword [ebp - 0x428]
call fcn.0040df90
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x42c]
call fcn.00401dd0
push 0x104
push 0
lea eax, [ebp - 0x424]
push eax
call fcn.00526270
add esp, 0xc
mov ecx, dword [ebp - 0x430]
call fcn.0040c780
push 0
mov ecx, dword [ebp - 0x430]
call fcn.00428f28
mov ecx, dword [ebp - 0x430]
mov edx, dword [ebp - 0x430]
mov eax, dword [edx + 0x9c]
mov dword [ecx + 0x388], eax
mov ecx, dword [ebp - 0x430]
mov edx, dword [ebp - 0x430]
mov eax, dword [edx + 0xa0]
mov dword [ecx + 0x38c], eax
mov ecx, dword [ebp - 0x430]
mov edx, dword [ebp - 0x430]
mov eax, dword [edx + 0xa8]
mov dword [ecx + 0x390], eax
mov ecx, dword [ebp - 0x430]
mov edx, dword [ebp - 0x430]
mov eax, dword [edx + 0xac]
mov dword [ecx + 0x394], eax
mov ecx, dword [ebp - 0x430]
mov edx, dword [ebp - 0x430]
mov eax, dword [edx + 0xc8]
mov dword [ecx + 0x398], eax
mov ecx, dword [ebp - 0x430]
mov edx, dword [ebp - 0x430]
mov eax, dword [edx + 0x29c]
mov dword [ecx + 0x39c], eax
mov ecx, dword [ebp - 0x430]
mov edx, dword [ebp - 0x430]
mov eax, dword [edx + 0xd0]
mov dword [ecx + 0x3a4], eax
mov ecx, dword [ebp - 0x430]
mov edx, dword [ebp - 0x430]
mov eax, dword [edx + 0xd4]
mov dword [ecx + 0x3a8], eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.005239af
mov esp, ebp
pop ebp
ret