Function at 0x42d3e0
Capabilities:
Read .ini file

Disassembly:
sub esp, 0x204
mov eax, dword [0x57f7c4]
xor eax, esp
mov dword [esp + 0x200], eax
push ebx
mov ebx, dword [esp + 0x210]
push ebp
mov ebp, dword [esp + 0x210]
push esi
push edi
push ebx
lea eax, [esp + 0x114]
push str.SET_ZONE__d
push eax
call fcn.0051a8cd
mov esi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
add esp, 0xc
push str..datamap.ini
push 0xff
lea ecx, [esp + 0x18]
push ecx
push 0
push str.MapType
lea edx, [esp + 0x124]
push edx
call esi
test eax, eax
ja 0x42d471
push str..datamap.ini
push 0xff
lea eax, [esp + 0x18]
push eax
push 0
push str.MapType
push str.DEFAULT_SET_ZONE
call esi
test eax, eax
ja 0x42d471
mov ecx, 0x46
mov word [esp + 0x10], cx
lea edx, [esp + 0x10]
push 0x57138c
push edx
call fcn.0051b864
add esp, 8
neg eax
sbb eax, eax
push str..datamap.ini
inc eax
push 0xff
mov dword [ebp + 0x80], eax
lea eax, [esp + 0x18]
push eax
push 0
push str.MapName
lea ecx, [esp + 0x124]
push ecx
call esi
test eax, eax
ja 0x42d4c5
push ebx
lea edx, [esp + 0x14]
push str._d.svmap
push edx
call fcn.0051a8cd
add esp, 0xc
lea eax, [esp + 0x10]
lea edx, [ebp + 0x84]
mov ecx, eax
sub edx, ecx
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x42d4d3
push str..datamap.ini
push 0xff
lea edx, [esp + 0x18]
push edx
push 0
push str.WarType
lea eax, [esp + 0x124]
push eax
call esi
test eax, eax
ja 0x42d50b
mov ecx, 0x4e
mov word [esp + 0x10], cx
lea edx, [esp + 0x10]
push 0x5713b0
push edx
call fcn.0051b864
add esp, 8
test eax, eax
jne 0x42d52a
mov dword [ebp + 0x7c], 1
jmp 0x42d551
lea eax, [esp + 0x10]
push 0x5713b4
push eax
call fcn.0051b864
add esp, 8
test eax, eax
jne 0x42d54a
mov edi, 2
mov dword [ebp + 0x7c], edi
jmp 0x42d556
mov dword [ebp + 0x7c], 0
mov edi, 2
cmp ebx, 0x2a
jne 0x42d563
cmp dword [ebp + 0x7c], edi
je 0x42d563
mov dword [ebp + 0x7c], edi
push str..datamap.ini
push 0xff
lea ecx, [esp + 0x18]
push ecx
push 0
push 0x5713b8
lea edx, [esp + 0x124]
push edx
call esi
test eax, eax
ja 0x42d591
mov eax, 0x4e
mov word [esp + 0x10], ax
lea ecx, [esp + 0x10]
push str.SGRH
push ecx
call fcn.0051b864
add esp, 8
test eax, eax
jne 0x42d5b6
mov dword [ebp + 0x1a4], 1
jmp 0x42d65f
lea edx, [esp + 0x10]
push 0x571388
push edx
call fcn.0051b864
add esp, 8
test eax, eax
jne 0x42d5d7
mov dword [ebp + 0x1a4], edi
jmp 0x42d65f
lea eax, [esp + 0x10]
push 0x5713b0
push eax
call fcn.0051b864
add esp, 8
test eax, eax
jne 0x42d5f9
mov dword [ebp + 0x1a4], 3
jmp 0x42d65f
lea ecx, [esp + 0x10]
push 0x5713c8
push ecx
call fcn.0051b864
add esp, 8
test eax, eax
jne 0x42d61b
mov dword [ebp + 0x1a4], 4
jmp 0x42d65f
lea edx, [esp + 0x10]
push 0x5713cc
push edx
call fcn.0051b864
add esp, 8
test eax, eax
jne 0x42d63d
mov dword [ebp + 0x1a4], 5
jmp 0x42d65f
lea eax, [esp + 0x10]
push 0x5713d0
push eax
call fcn.0051b864
add esp, 8
neg eax
sbb eax, eax
and eax, 0xfffffffa
add eax, 6
mov dword [ebp + 0x1a4], eax
push str..datamap.ini
push 0xff
lea ecx, [esp + 0x18]
push ecx
push 0
push 0x5713d4
lea edx, [esp + 0x124]
push edx
call esi
cmp eax, 5
jbe 0x42d6dd
fldz
lea edi, [ebp + 0x188]
fst dword [edi]
lea ebx, [ebp + 0x18c]
lea eax, [ebp + 0x190]
fst dword [ebx]
push eax
fstp dword [eax]
lea eax, [esp + 0x14]
lea esi, [ebp + 0x184]
push eax
mov dword [esi], 0xffffffff
call fcn.0042ce30
mov ecx, dword [esi]
mov edx, dword [esi + 4]
mov eax, dword [esi + 8]
mov dword [ebp + 0x194], ecx
mov ecx, dword [esi + 0xc]
mov dword [ebp + 0x198], edx
mov dword [ebp + 0x19c], eax
mov dword [ebp + 0x1a0], ecx
jmp 0x42d80c
push str..datamap.ini
push 0xff
lea edx, [esp + 0x18]
push edx
push 0
push str.RebirthMapPos1
lea eax, [esp + 0x124]
push eax
call esi
test eax, eax
ja 0x42d73f
push str..datamap.ini
push 0xff
lea ecx, [esp + 0x18]
push ecx
push 0
push 0x5713d4
push str.DEFAULT_SET_ZONE
call esi
test eax, eax
ja 0x42d73f
mov edx, dword [str._1__0__0__0]
mov eax, dword [0x5713f8]
mov ecx, dword [0x5713fc]
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], ecx
fldz
lea eax, [ebp + 0x190]
lea edi, [ebp + 0x188]
fst dword [edi]
lea ebx, [ebp + 0x18c]
fst dword [ebx]
push eax
fstp dword [eax]
lea edx, [esp + 0x14]
lea esi, [ebp + 0x184]
push edx
mov dword [esi], 0xffffffff
call fcn.0042ce30
mov esi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
add esp, 8
push str..datamap.ini
push 0xff
lea eax, [esp + 0x18]
push eax
push 0
push str.RebirthMapPos2
lea ecx, [esp + 0x124]
push ecx
call esi
test eax, eax
ja 0x42d7db
push str..datamap.ini
push 0xff
lea edx, [esp + 0x18]
push edx
push 0
push 0x5713d4
push str.DEFAULT_SET_ZONE
call esi
test eax, eax
ja 0x42d7db
mov eax, dword [str._1__0__0__0]
mov ecx, dword [0x5713f8]
mov edx, dword [0x5713fc]
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], edx
fldz
lea edi, [ebp + 0x198]
fst dword [edi]
lea ebx, [ebp + 0x19c]
lea eax, [ebp + 0x1a0]
fst dword [ebx]
push eax
fstp dword [eax]
lea eax, [esp + 0x14]
lea esi, [ebp + 0x194]
push eax
mov dword [esi], 0xffffffff
call fcn.0042ce30
mov esi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
add esp, 8
push str..datamap.ini
push 0xff
lea ecx, [esp + 0x18]
push ecx
push 0
push str.WeatherState
lea edx, [esp + 0x124]
push edx
call esi
test eax, eax
ja 0x42d864
push str..datamap.ini
push 0xff
lea eax, [esp + 0x18]
push eax
push 0
push str.WeatherState
push str.DEFAULT_SET_ZONE
call esi
test eax, eax
ja 0x42d864
mov ecx, 0x30
mov word [esp + 0x10], cx
lea edx, [esp + 0x10]
push edx
call fcn.0051ba99
add esp, 4
mov dword [ebp + 0x24], eax
test eax, eax
je 0x42d889
cmp eax, 1
je 0x42d889
cmp eax, 2
je 0x42d889
mov dword [ebp + 0x24], 0
push str..datamap.ini
push 0xff
lea eax, [esp + 0x18]
push eax
push 0
push str.WeatherRate
lea ecx, [esp + 0x124]
push ecx
call esi
test eax, eax
ja 0x42d8e3
push str..datamap.ini
push 0xff
lea edx, [esp + 0x18]
push edx
push 0
push str.WeatherRate
push str.DEFAULT_SET_ZONE
call esi
test eax, eax
ja 0x42d8e3
mov ax, word [0x57142c]
mov cl, byte [0x57142e]
mov word [esp + 0x10], ax
mov byte [esp + 0x12], cl
lea edx, [esp + 0x10]
push edx
call fcn.0051ba99
add esp, 4
push str..datamap.ini
push 0xff
mov dword [ebp + 0x2c], eax
lea eax, [esp + 0x18]
push eax
push 0
push str.WeatherPower
lea ecx, [esp + 0x124]
push ecx
call esi
test eax, eax
ja 0x42d942
push str..datamap.ini
push 0xff
lea edx, [esp + 0x18]
push edx
push 0
push str.WeatherPower
push str.DEFAULT_SET_ZONE
call esi
test eax, eax
ja 0x42d942
mov eax, 0x32
mov word [esp + 0x10], ax
lea ecx, [esp + 0x10]
push ecx
call fcn.0051ba99
add esp, 4
push str..datamap.ini
push 0xff
lea edx, [esp + 0x18]
push edx
push 0
mov dword [ebp + 0x28], eax
push str.WeatherDelay
lea eax, [esp + 0x124]
push eax
call esi
test eax, eax
ja 0x42d9a1
push str..datamap.ini
push 0xff
lea ecx, [esp + 0x18]
push ecx
push 0
push str.WeatherDelay
push str.DEFAULT_SET_ZONE
call esi
test eax, eax
ja 0x42d9a1
mov edx, 0x33
mov word [esp + 0x10], dx
lea eax, [esp + 0x10]
push eax
call fcn.0051ba99
imul eax, eax, 0xea60
add esp, 4
push str..datamap.ini
push 0xff
lea ecx, [esp + 0x18]
push ecx
push 0
push str.WeatherNoneDelay
lea edx, [esp + 0x124]
push edx
mov dword [ebp + 0x30], eax
call esi
test eax, eax
ja 0x42da12
push str..datamap.ini
push 0xff
lea eax, [esp + 0x18]
push eax
push 0
push str.WeatherNoneDelay
push str.DEFAULT_SET_ZONE
call esi
test eax, eax
ja 0x42da12
mov cx, word [0x57142c]
mov dl, byte [0x57142e]
mov word [esp + 0x10], cx
mov byte [esp + 0x12], dl
lea eax, [esp + 0x10]
push eax
call fcn.0051ba99
imul eax, eax, 0xea60
add esp, 4
push str..datamap.ini
push 0xff
lea ecx, [esp + 0x18]
push ecx
push 0
push str.ExpireTime
lea edx, [esp + 0x124]
push edx
mov dword [ebp + 0x34], eax
call esi
test eax, eax
ja 0x42da56
mov eax, 0x30
mov word [esp + 0x10], ax
lea ecx, [esp + 0x10]
push ecx
call fcn.0051ba99
imul eax, eax, 0xea60
add esp, 4
push str..datamap.ini
push 0xff
lea edx, [esp + 0x18]
push edx
add eax, 0x7530
push 0
mov dword [ebp + 0x1d4], eax
push str.CreateTime
lea eax, [esp + 0x124]
push eax
call esi
test eax, eax
ja 0x42daa4
mov ecx, 0xffff
mov word [ebp + 0x1a8], cx
lea edx, [esp + 0x10]
lea ecx, [ebp + 0x1a8]
push edx
call fcn.0042d2c0
add esp, 4
push str..datamap.ini
push 0xff
lea eax, [esp + 0x18]
push eax
push 0
push str.CreateMinUser
lea ecx, [esp + 0x124]
push ecx
call esi
test eax, eax
ja 0x42dae5
mov edx, 0x30
mov word [esp + 0x10], dx
lea eax, [esp + 0x10]
push eax
call fcn.0051ba99
add esp, 4
push str..datamap.ini
push 0xff
lea ecx, [esp + 0x18]
push ecx
push 0
push str.EnterMaxUser
lea edx, [esp + 0x124]
push edx
mov dword [ebp + 0x1d8], eax
call esi
test eax, eax
ja 0x42db31
mov ax, word [0x57142c]
mov cl, byte [0x57142e]
mov word [esp + 0x10], ax
mov byte [esp + 0x12], cl
lea edx, [esp + 0x10]
push edx
call fcn.0051ba99
add esp, 4
push str..datamap.ini
mov dword [ebp + 0x1dc], eax
xor eax, eax
cmp dword [esp + 0x220], 0x2a
push 0xff
lea ecx, [esp + 0x18]
push ecx
sete al
push 0
push str.MapCurse
lea edx, [esp + 0x124]
push edx
mov dword [ebp + 0x1e0], eax
call esi
test eax, eax
jbe 0x42dba1
lea eax, [ebp + 0x1e8]
push eax
lea ecx, [esp + 0x14]
lea ebx, [ebp + 0x1e7]
lea edi, [ebp + 0x1e4]
lea esi, [ebp + 0x1e6]
push ecx
call fcn.0042cf00
add esp, 8
mov ecx, dword [esp + 0x210]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
mov al, 1
call fcn.0051a8be
add esp, 0x204
ret 8