Function at 0x42c250
Capabilities:
Terminate process

Disassembly:
sub esp, 0x144
mov eax, dword [0x570930]
xor eax, dword [esp + 0x144]
push ebx
push ebp
mov ebp, dword [esp + 0x154]
xor ebx, ebx
cmp ebp, ebx
push esi
mov dword [esp + 0x14c], eax
push edi
je 0x42c2af
mov eax, dword [esp + 0x160]
cmp eax, ebx
jl 0x42c293
cmp eax, 0xe
jge 0x42c293
mov eax, dword [eax*8 + 0x571b30]
jmp 0x42c298
mov eax, dword [str.english]
push eax
push ecx
push 0x56420c
mov esi, 0x40
lea edi, [esp + 0x1c]
call fcn.0044ac60
jmp 0x42c2c0
push 0x3f
push ecx
lea eax, [esp + 0x18]
push eax
call fcn.00525500
mov byte [esp + 0x5b], bl
mov edi, dword [0x1407420]
add esp, 0xc
cmp edi, ebx
je 0x42c314
lea ecx, [ecx]
mov esi, dword [edi + 8]
cmp esi, ebx
je 0x42c30e
mov ecx, dword [esp + 0x158]
cmp ecx, ebx
je 0x42c30e
mov eax, 0x1869f
mov edx, esi
call fcn.0044aa90
cmp eax, ebx
jne 0x42c30e
lea edx, [esi + 0x100]
cmp edx, ebx
je 0x42c30e
mov eax, 0x1869f
lea ecx, [esp + 0x10]
call fcn.0044aa90
cmp eax, ebx
je 0x42c366
mov edi, dword [edi]
cmp edi, ebx
jne 0x42c2d0
cmp ebp, ebx
je 0x42c3c1
mov eax, dword [esp + 0x158]
push ebx
lea ecx, [esp + 0x54]
push ecx
lea edx, [esp + 0x18]
push 0x559228
push edx
call fcn.00428ee0
lea eax, [esp + 0x60]
add esp, 0x10
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x42c342
sub eax, edx
mov byte [esp + eax + 0x4f], bl
lea eax, [esp + 0x50]
push eax
call fcn.004609c0
add esp, 4
test eax, eax
je 0x42c506
jmp 0x42c3de
mov eax, dword [edi + 0xc]
cmp eax, ebp
je 0x42c396
cmp eax, ebx
mov eax, str.localized
jne 0x42c37b
mov eax, str.non_localized
mov edx, dword [esp + 0x158]
push eax
lea ecx, [esp + 0x14]
push ecx
push edx
push str.WARNING:_game_folder__s__s_added_as_both_localized__non_localized._Using_folder_as__s_n
call fcn.004357b0
add esp, 0x10
cmp dword [edi + 0xc], ebx
je 0x42c506
mov eax, dword [esp + 0x160]
cmp dword [edi + 0x10], eax
je 0x42c506
push str.WARNING:_game_golder__s__s_re_added_as_localized_folder_with_different_language_n
call fcn.004357b0
add esp, 4
jmp 0x42c506
push 0xff
lea ecx, [esp + 0x14]
push ecx
push 0x1629660
call fcn.00525500
add esp, 0xc
mov byte [0x162975f], bl
push 0x14
call fcn.005268b7
mov esi, eax
add esp, 4
cmp esi, ebx
jne 0x42c41f
call fcn.00462b20
push 0x10
push str.WIN_OUT_OF_MEM_TITLE
call fcn.00462450
add esp, 4
push eax
push str.WIN_OUT_OF_MEM_BODY
call fcn.00462450
add esp, 4
push eax
push ebx
call dword [sym.imp.USER32.dll_MessageBoxA]
push 0xffffffffffffffff
call fcn.00527e27
push 0x14
push ebx
push esi
call fcn.00432670
push 0x200
call fcn.005268b7
mov edi, eax
add esp, 0x10
cmp edi, ebx
jne 0x42c46c
call fcn.00462b20
push 0x10
push str.WIN_OUT_OF_MEM_TITLE
call fcn.00462450
add esp, 4
push eax
push str.WIN_OUT_OF_MEM_BODY
call fcn.00462450
add esp, 4
push eax
push ebx
call dword [sym.imp.USER32.dll_MessageBoxA]
push 0xffffffffffffffff
call fcn.00527e27
push 0x200
push ebx
push edi
call fcn.00432670
mov edx, dword [esp + 0x164]
push 0xff
push edx
push edi
mov dword [esi + 8], edi
call fcn.00525500
mov byte [edi + 0xff], bl
mov edi, dword [esi + 8]
push 0xff
lea eax, [esp + 0x2c]
push eax
add edi, 0x100
push edi
call fcn.00525500
mov ecx, dword [esp + 0x184]
mov eax, dword [0x1407420]
add esp, 0x24
cmp ebp, ebx
mov byte [edi + 0xff], bl
mov dword [esi + 0xc], ebp
mov dword [esi + 0x10], ecx
je 0x42c4e9
cmp eax, ebx
je 0x42c4e9
cmp dword [eax], ebx
je 0x42c4e1
mov ecx, dword [eax]
cmp dword [ecx + 0xc], ebx
jne 0x42c4e1
mov eax, ecx
cmp dword [eax], ebx
jne 0x42c4d4
mov edx, dword [eax]
mov dword [esi], edx
mov dword [eax], esi
jmp 0x42c4f1
mov dword [esi], eax
mov dword [0x1407420], esi
mov ecx, dword [esp + 0x158]
lea eax, [esp + 0x10]
push eax
push ecx
call fcn.0042bd30
add esp, 8
mov ecx, dword [esp + 0x150]
xor ecx, dword [esp + 0x154]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x144
jmp fcn.0052e7b9