Function at 0x423770
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4e6d21
mov eax, dword fs:[0]
push eax
sub esp, 8
push ebx
push esi
push edi
mov eax, dword [0x519220]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [ebp - 0x10], ebx
mov dword [ebx + 4], 0
lea eax, [ebx + 0x20]
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
mov dword [ebx + 0x10], 0
mov dword [ebx + 0x14], fcn.004af1b3
mov dword [ebx + 0x18], fcn.004e1c5f
mov dword [ebx + 0x1c], fcn.0049c7b1
mov dword [eax + 4], fcn.004af1b3
mov dword [eax + 8], fcn.004e1c5f
mov dword [eax + 0xc], fcn.0049c7b1
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0x1fff8
mov dword [eax], vtable.t_heap.0
mov dword [ebx + 0x3c], fcn.004af1b3
mov dword [ebx + 0x40], fcn.004e1c5f
mov dword [ebx + 0x44], fcn.0049c7b1
mov dword [ebx + 0x48], 0
mov dword [ebx + 0x4c], 0x8000
mov dword [ebx + 0x38], vtable.t_heap.0
mov dword [ebx + 0x50], 0
mov byte [ebx + 0x54], 1
mov dword [ebp - 4], 0
lea edi, [ebx + 0x58]
mov dword [ebx], vtable.t_configGameFile.0
mov dword [ebp - 0x14], edi
mov byte [edi + 4], 0
mov dword [edi + 8], str.setting
mov dword [edi + 0xc], 0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0
mov dword [edi + 0x18], 0
mov dword [edi + 0x1c], fcn.004af1b3
mov dword [edi + 0x20], fcn.004e1c5f
mov dword [edi + 0x24], fcn.0049c7b1
mov dword [edi + 0x28], eax
mov dword [edi], vtable.t_configGameFile::t_setting.0
mov byte [edi + 0x30], 0
mov dword [edi + 0x34], 0x505664
mov dword [edi + 0x38], 0
mov dword [edi + 0x3c], 0
mov dword [edi + 0x2c], vtable.n_config::t_int.0
mov byte [edi + 0x44], 0
mov dword [edi + 0x48], str.version
mov dword [edi + 0x4c], 0x502554
mov dword [edi + 0x50], 0x502554
mov dword [edi + 0x40], vtable.n_config::t_str.0
mov dword [edi + 0x54], eax
lea ecx, [ebx + 0xb0]
mov dword [ebp - 0x14], ecx
mov byte [ecx + 4], 0
mov dword [ecx + 8], str.item
mov dword [ecx + 0xc], eax
mov dword [ecx + 0x10], 0
lea eax, [ebx + 0x84]
mov dword [ecx + 0x14], 0
mov dword [ecx + 0x18], 0
mov dword [ecx + 0x1c], 0
mov dword [ecx + 0x20], fcn.004af1b3
mov dword [ecx + 0x24], fcn.004e1c5f
mov dword [ecx + 0x28], fcn.0049c7b1
mov dword [ecx], vtable.n_config::t_arraySection_class_t_configGameFile::t_item_.0
mov dword [ecx + 0x2c], 0
mov dword [ecx + 0x30], eax
mov byte [ebp - 4], 4
mov ecx, dword [ebx + 8]
mov eax, dword [ebx + 0xc]
cmp ecx, eax
jne 0x423963
test eax, eax
jne 0x423948
mov eax, dword [ebx + 0x10]
test eax, eax
jne 0x42394d
mov eax, 1
jmp 0x423956
lea eax, [ecx + ecx]
test eax, eax
js 0x423975
cmp eax, 0x1fffffff
ja 0x423975
push eax
lea ecx, [ebx + 4]
call fcn.00426030
test eax, eax
je 0x423975
mov ecx, dword [ebx + 8]
mov eax, dword [ebx + 4]
lea eax, [eax + ecx*4]
test eax, eax
je 0x423972
mov dword [eax], edi
inc dword [ebx + 8]
mov ecx, dword [ebx + 8]
mov eax, dword [ebx + 0xc]
cmp ecx, eax
jne 0x4239ac
test eax, eax
jne 0x423991
mov eax, dword [ebx + 0x10]
test eax, eax
jne 0x423996
mov eax, 1
jmp 0x42399f
lea eax, [ecx + ecx]
test eax, eax
js 0x4239c4
cmp eax, 0x1fffffff
ja 0x4239c4
push eax
lea ecx, [ebx + 4]
call fcn.00426030
test eax, eax
je 0x4239c4
mov ecx, dword [ebx + 8]
mov eax, dword [ebx + 4]
lea eax, [eax + ecx*4]
test eax, eax
je 0x4239c1
lea ecx, [ebx + 0xb0]
mov dword [eax], ecx
inc dword [ebx + 8]
xor edi, edi
cmp dword [ebx + 8], edi
jle 0x4239e1
nop dword [eax + eax]
mov eax, dword [ebx + 4]
mov ecx, dword [eax + edi*4]
mov eax, dword [ecx]
call dword [eax + 0x20]
inc edi
cmp edi, dword [ebx + 8]
jl 0x4239d0
mov eax, ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4