Function at 0x5124eb
Capabilities:
Contain obfuscated stackstrings
Parse pe header

Disassembly:
mov eax, 0x60026e
call fcn.0059d590
sub esp, 0x10
push ebx
push esi
mov esi, ecx
push edi
mov dword [ebp - 0x1c], esi
call fcn.00526f22
xor ebx, ebx
lea ecx, [esi + 0x8f0]
mov dword [ebp - 4], ebx
call fcn.00402cc4
lea ecx, [esi + 0x8fc]
mov byte [ebp - 4], 1
call fcn.00402cc4
lea ecx, [esi + 0x908]
mov byte [ebp - 4], 2
call fcn.00402cc4
lea ecx, [esi + 0x918]
mov byte [ebp - 4], 3
call fcn.00542eaf
lea ecx, [esi + 0x988]
lea eax, [ebp - 0xd]
mov byte [ebp - 4], 5
push eax
lea eax, [ebp - 0xe]
push eax
call fcn.0051fe85
lea eax, [esi + 0x994]
lea ecx, [ebp - 0xe]
push ebx
push ecx
lea ecx, [eax + 8]
mov byte [ebp - 4], 7
mov dword [eax], ebx
mov dword [eax + 4], ebx
call fcn.004ece61
lea ecx, [esi + 0x9a0]
mov byte [ebp - 4], 9
call fcn.00542f79
lea ecx, [esi + 0x9d4]
mov byte [ebp - 4], 0xa
call fcn.0057ea0a
lea ecx, [esi + 0x9f0]
mov byte [ebp - 4], 0xb
call fcn.00596690
lea eax, [ebp - 0xe]
push ebx
lea ecx, [esi + 0xa1c]
push eax
mov byte [ebp - 4], 0xd
call fcn.004dd6a6
lea eax, [ebp - 0xe]
push ebx
lea ecx, [esi + 0xa44]
push eax
mov byte [ebp - 4], 0x10
call fcn.0051fe35
lea ecx, [esi + 0xa70]
mov byte [ebp - 4], 0x12
call fcn.00567dda
mov byte [ebp - 4], 0x14
lea eax, [esi + 0xa8c]
lea ecx, [ebp - 0xe]
push ebx
push ecx
lea ecx, [eax + 8]
mov dword [eax], ebx
mov dword [eax + 4], ebx
call fcn.004ece61
push fcn.0043a033
push fcn.0041807c
lea edi, [esi + 0xa9c]
push 0xd
push 8
push edi
mov byte [ebp - 4], 0x16
call fcn.0059d72e
lea ecx, [esi + 0xb08]
mov byte [ebp - 4], 0x17
call fcn.0051e7c3
lea eax, [ebp - 0xe]
push ebx
lea ecx, [esi + 0xb24]
push eax
mov byte [ebp - 4], 0x18
call fcn.0051ff73
lea ecx, [esi + 0xb60]
mov byte [ebp - 4], 0x1a
call fcn.00402cc4
lea ecx, [esi + 0xba4]
mov byte [ebp - 4], 0x1b
call fcn.0051f8a7
lea eax, [ebp - 0xe]
push ebx
lea ecx, [esi + 0xbb0]
push eax
mov byte [ebp - 4], 0x1d
call fcn.0052006a
lea ecx, [esi + 0xbf8]
mov byte [ebp - 4], 0x1f
call fcn.00402cc4
lea eax, [ebp - 0xe]
push ebx
lea ecx, [esi + 0xc04]
push eax
mov byte [ebp - 4], 0x21
call fcn.005200ba
lea ecx, [esi + 0xc2c]
mov byte [ebp - 4], 0x23
call fcn.0057e65a
lea ecx, [esi + 0xc64]
mov byte [ebp - 4], 0x24
call fcn.00596690
lea eax, [ebp - 0xe]
push ebx
lea ecx, [esi + 0xc78]
push eax
mov byte [ebp - 4], 0x26
call fcn.0052010a
lea ecx, [esi + 0xca4]
mov byte [ebp - 4], 0x28
call fcn.0057e0ec
lea ecx, [esi + 0xcdc]
mov byte [ebp - 4], 0x29
call fcn.0057c47c
lea ecx, [esi + 0xd70]
mov byte [ebp - 4], 0x2a
call fcn.0057ba8e
lea ecx, [esi + 0xe0c]
mov byte [ebp - 4], 0x2b
call fcn.0057e65a
lea ecx, [esi + 0xe44]
mov byte [ebp - 4], 0x2c
call fcn.0057ba5a
lea ecx, [esi + 0xe50]
mov byte [ebp - 4], 0x2d
call fcn.0057b63f
lea eax, [ebp - 0xe]
push ebx
lea ecx, [esi + 0xe80]
push eax
mov byte [ebp - 4], 0x2f
call fcn.0052017e
lea eax, [ebp - 0xe]
push ebx
lea ecx, [esi + 0xea8]
push eax
mov byte [ebp - 4], 0x32
call fcn.0052017e
lea eax, [ebp - 0xe]
push ebx
lea ecx, [esi + 0xed0]
push eax
mov byte [ebp - 4], 0x35
call fcn.0052017e
lea eax, [esi + 0xf00]
mov byte [ebp - 4], 0x37
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x18], 0x96
mov ecx, dword [ebp - 0x14]
call fcn.004a8fd7
add dword [ebp - 0x14], 0x10
dec dword [ebp - 0x18]
jne 0x512759
lea eax, [esi + 0x1860]
lea ecx, [ebp - 0xe]
push ebx
push ecx
lea ecx, [eax + 8]
mov byte [ebp - 4], 0x38
mov dword [eax], ebx
mov dword [eax + 4], ebx
call fcn.004ece61
lea ecx, [esi + 0x1878]
mov byte [ebp - 4], 0x3a
call fcn.0051f733
lea eax, [esi + 0x1888]
lea ecx, [ebp - 0xe]
push ebx
push ecx
lea ecx, [eax + 8]
mov byte [ebp - 4], 0x3c
mov dword [eax], ebx
mov dword [eax + 4], ebx
call fcn.004ece61
lea ecx, [esi + 0x1894]
mov byte [ebp - 4], 0x3e
call fcn.0051f733
lea ecx, [esi + 0x18a0]
mov byte [ebp - 4], 0x3f
call fcn.0051f733
lea ecx, [esi + 0x18e0]
mov byte [ebp - 4], 0x40
call fcn.00402cc4
lea eax, [ebp - 0xe]
push ebx
lea ecx, [esi + 0x18f0]
push eax
mov byte [ebp - 4], 0x42
call fcn.00520215
lea ecx, [esi + 0x1918]
mov byte [ebp - 4], 0x44
call fcn.00512372
lea ecx, [esi + 0x1948]
mov byte [ebp - 4], 0x45
call fcn.005222f6
lea ecx, [esi + 0x2300]
mov byte [ebp - 4], 0x46
call fcn.005222f6
lea ecx, [esi + 0x2cb8]
mov byte [ebp - 4], 0x47
call fcn.0054889c
lea ecx, [esi + 0x2cf4]
mov byte [ebp - 4], 0x48
call fcn.0055609e
lea ecx, [esi + 0x2d34]
mov byte [ebp - 4], 0x49
call fcn.0055988e
lea ecx, [esi + 0x2d60]
mov byte [ebp - 4], 0x4a
call fcn.00402cc4
lea ecx, [esi + 0x2d6c]
mov byte [ebp - 4], 0x4b
call fcn.00402cc4
lea ecx, [esi + 0x2d78]
mov byte [ebp - 4], 0x4c
call fcn.00549a49
lea ecx, [esi + 0x2ec4]
mov byte [ebp - 4], 0x4d
call fcn.0057b116
lea ecx, [esi + 0x2ef4]
mov byte [ebp - 4], 0x4e
call fcn.0057b0bc
lea eax, [esi + 0x2f60]
mov dword [eax], ebx
mov dword [eax + 4], ebx
mov dword [eax + 8], ebx
lea ecx, [esi + 0x2f6c]
mov byte [ebp - 4], 0x50
call fcn.00596690
lea ecx, [esi + 0x2f7c]
mov byte [ebp - 4], 0x51
call fcn.00596690
lea ecx, [esi + 0x2fd4]
mov byte [ebp - 4], 0x52
call fcn.0057c472
lea eax, [esi + 0x2ff0]
mov dword [eax], ebx
mov dword [eax + 4], ebx
lea ecx, [esi + 0x2ff8]
mov byte [ebp - 4], 0x53
call fcn.005123ff
lea eax, [esi + 0x3030]
mov dword [eax], ebx
mov dword [eax + 4], ebx
mov dword [eax + 8], ebx
lea ecx, [esi + 0x3080]
mov byte [ebp - 4], 0x55
call fcn.00402cc4
lea eax, [esi + 0x30a8]
mov dword [eax], ebx
mov dword [eax + 4], ebx
mov dword [eax + 8], ebx
lea eax, [esi + 0x30b4]
mov dword [eax], ebx
mov dword [eax + 4], ebx
mov dword [eax + 8], ebx
lea ecx, [esi + 0x30c0]
mov byte [ebp - 4], 0x58
call fcn.0051e7dc
lea ecx, [esi + 0x30d8]
mov byte [ebp - 4], 0x59
call fcn.0051e840
lea ecx, [esi + 0x30e8]
mov byte [ebp - 4], 0x5a
call fcn.00402cc4
lea ecx, [esi + 0x3134]
mov byte [ebp - 4], 0x5b
call fcn.00402cc4
lea ecx, [esi + 0x3140]
mov byte [ebp - 4], 0x5c
call fcn.00402cc4
lea eax, [esi + 0x314c]
mov dword [eax], ebx
mov dword [eax + 4], ebx
mov dword [eax + 8], ebx
lea eax, [esi + 0x3158]
mov dword [eax], ebx
mov dword [eax + 4], ebx
mov dword [eax + 8], ebx
lea ecx, [esi + 0x3168]
mov byte [ebp - 4], 0x5f
call fcn.0051f733
lea ecx, [esi + 0x3174]
mov byte [ebp - 4], 0x60
call fcn.0051f733
lea eax, [esi + 0x31c0]
mov dword [eax], ebx
mov dword [eax + 4], ebx
mov dword [eax + 8], ebx
lea ecx, [esi + 0x31e0]
mov byte [ebp - 4], 0x62
call fcn.005436be
mov dword [esi], 0x621fd4
mov dword [esi + 0x2d0], 6
mov dword [esi + 0x9bc], ebx
mov dword [esi + 0x9b8], ebx
mov dword [esi + 0xa10], ebx
mov dword [esi + 0xa14], ebx
mov dword [esi + 0x8dc], ebx
or dword [esi + 0x9c8], 0xffffffff
or dword [esi + 0x9cc], 0xffffffff
lea ecx, [esi + 0xb24]
mov byte [ebp - 4], 0x63
mov dword [esi + 0xca0], 1
call fcn.00521531
mov dword [esi + 0x18ac], 0xc8
mov dword [esi + 0x2fb4], ebx
mov dword [esi + 0xa98], ebx
mov dword [esi + 0x2fb8], ebx
mov dword [esi + 0xa04], ebx
mov dword [esi + 0xa6c], ebx
mov dword [ebp - 0x18], 0xd
mov ecx, edi
call fcn.00505213
add edi, 8
dec dword [ebp - 0x18]
jne 0x512a4b
or dword [esi + 0x9ec], 0xffffffff
mov ecx, esi
call fcn.00518e42
lea ecx, [esi + 0xe80]
call fcn.00521531
lea ecx, [esi + 0xea8]
call fcn.00521531
lea ecx, [esi + 0xed0]
call fcn.00521531
lea ecx, [esi + 0x1878]
call fcn.0051fdde
mov dword [esi + 0x1874], ebx
mov ecx, esi
mov dword [esi + 0xef8], ebx
call fcn.00519c95
mov edi, str.NULL
mov dword [esi + 0xb54], ebx
mov dword [esi + 0xb4c], ebx
push edi
mov dword [esi + 0xb58], ebx
call sub.MSVCRT.dll_strlen
pop ecx
add eax, edi
push eax
push edi
lea ecx, [esi + 0x18e0]
call fcn.004029af
mov dword [esi + 0x2d8], 0xc
call sub.WINMM.dll_timeGetTime
mov edi, 0x68f370
mov dword [esi + 0xa18], eax
push edi
call sub.MSVCRT.dll_strlen
pop ecx
add eax, edi
push eax
push edi
lea ecx, [esi + 0x2d60]
call fcn.004029af
push edi
call sub.MSVCRT.dll_strlen
pop ecx
add eax, edi
push eax
push edi
lea ecx, [esi + 0x2d6c]
call fcn.004029af
call sub.WINMM.dll_timeGetTime
mov dword [esi + 0x18b0], eax
call sub.WINMM.dll_timeGetTime
mov dword [esi + 0x18c0], eax
mov dword [esi + 0x18c4], ebx
mov dword [esi + 0x18d4], ebx
mov dword [esi + 0x18c8], ebx
or dword [esi + 0x18ec], 0xffffffff
mov dword [esi + 0x9c4], ebx
mov dword [esi + 0x2eb4], ebx
mov dword [esi + 0x8e0], ebx
mov dword [esi + 0x8e4], ebx
mov dword [esi + 0x2f48], ebx
mov dword [esi + 0x2f4c], ebx
lea ecx, [esi + 0x2ef4]
mov dword [esi + 0x2f50], ebx
call fcn.0057b0f1
push 0xa0
mov byte [esi + 0x18b4], bl
call sub.MFC42.DLL_operatornew
pop ecx
mov dword [ebp - 0x18], eax
cmp eax, ebx
mov byte [ebp - 4], 0x64
je 0x512ba3
mov ecx, eax
call fcn.0057f8a7
jmp 0x512ba5
xor eax, eax
push 0x64
mov byte [ebp - 4], 0x63
mov dword [esi + 0x8cc], eax
call sub.MFC42.DLL_operatornew
pop ecx
mov dword [ebp - 0x18], eax
cmp eax, ebx
mov byte [ebp - 4], 0x65
je 0x512bcb
mov ecx, eax
call fcn.0057ece0
jmp 0x512bcd
xor eax, eax
mov dword [esi + 0x8c8], eax
mov dword [esi + 0x8d0], ebx
push 0x1c
lea eax, [esi + 0xb08]
mov dword [esi + 0x8d4], ebx
push ebx
mov dword [esi + 0x2fc0], ebx
push eax
mov byte [ebp - 4], 0x63
mov dword [esi + 0x2fc4], ebx
call sub.MSVCRT.dll_memset
call sub.WINMM.dll_timeGetTime
mov dword [esi + 0x2fdc], eax
mov dword [esi + 0x3164], ebx
mov byte [esi + 0x3074], bl
or dword [esi + 0x306c], 0xffffffff
mov dword [esi + 0x3070], ebx
mov dword [esi + 0x3078], ebx
mov dword [esi + 0x307c], ebx
push edi
mov byte [esi + 0x3075], bl
call sub.MSVCRT.dll_strlen
add esp, 0x10
add eax, edi
lea ecx, [esi + 0x3080]
push eax
push edi
call fcn.004029af
mov ecx, esi
call fcn.0051c65e
push dword [esi + 0xa90]
lea ecx, [esi + 0xa8c]
push dword [ecx]
call fcn.004e9c17
push dword [esi + 0x3034]
lea ecx, [esi + 0x3030]
push dword [ecx]
call fcn.004e9c17
mov dword [0x692128], ebx
mov dword [esi + 0x3104], ebx
mov byte [esi + 0x1885], bl
mov ecx, esi
mov byte [esi + 0x1884], bl
call fcn.0051cda3
push ebx
mov dword [esi + 0x30f4], ebx
call dword [sym.imp.Role3D.dll_Game3DEffectCreate]
mov dword [esi + 0x3100], eax
or dword [esi + 0x311c], 0xffffffff
mov dword [esi + 0x30f8], ebx
mov dword [esi + 0x30fc], ebx
mov dword [esi + 0xb74], ebx
mov dword [esi + 0xba0], ebx
pop ecx
mov byte [esi + 0xb78], bl
mov dword [esi + 0xb7c], ebx
mov dword [esi + 0xb80], ebx
push ebx
mov ecx, esi
mov dword [esi + 0xb84], ebx
mov dword [esi + 0xb88], ebx
mov dword [esi + 0xb8c], ebx
mov dword [esi + 0xb90], ebx
mov dword [esi + 0xb94], ebx
mov dword [esi + 0xb98], ebx
mov dword [esi + 0xb9c], ebx
mov byte [esi + 0xbe8], bl
mov byte [esi + 0xbe9], bl
mov dword [esi + 0xbec], ebx
mov dword [esi + 0xbf0], ebx
mov dword [esi + 0xbf4], ebx
mov byte [esi + 0x31a4], bl
mov dword [esi + 0x3180], ebx
mov byte [esi + 0x3120], bl
mov dword [esi + 0x3124], ebx
mov dword [esi + 0x312c], ebx
mov dword [esi + 0x3128], ebx
call fcn.0051d55d
push ebx
mov ecx, esi
call fcn.0052a449
or dword [esi + 0x311c], 0xffffffff
push ebx
mov ecx, esi
mov byte [esi + 0x3068], bl
mov byte [esi + 0x2f90], bl
mov byte [esi + 0x2f91], bl
mov dword [esi + 0x2f8c], ebx
mov dword [esi + 0x2fbc], ebx
mov byte [esi + 0xc70], bl
mov dword [esi + 0x30a4], ebx
mov dword [esi + 0xc74], ebx
mov byte [esi + 0x3120], bl
mov dword [esi + 0x3124], ebx
mov dword [esi + 0x312c], ebx
mov dword [esi + 0x3128], ebx
call fcn.0051d55d
push edi
call sub.MSVCRT.dll_strlen
pop ecx
add eax, edi
push eax
push edi
lea ecx, [esi + 0xbf8]
call fcn.004029af
call sub.WINMM.dll_timeGetTime
push edi
mov dword [esi + 0x319c], eax
mov dword [esi + 0x31a0], ebx
call sub.MSVCRT.dll_strlen
pop ecx
add eax, edi
push eax
push edi
lea ecx, [esi + 0x908]
call fcn.004029af
push edi
mov byte [esi + 0x8e8], bl
mov dword [esi + 0x8ec], ebx
call sub.MSVCRT.dll_strlen
pop ecx
add eax, edi
push eax
push edi
lea ecx, [esi + 0x8f0]
call fcn.004029af
push edi
call sub.MSVCRT.dll_strlen
pop ecx
add eax, edi
push eax
push edi
lea ecx, [esi + 0x8fc]
call fcn.004029af
mov dword [esi + 0x31b0], ebx
lea eax, [esi + 0x310c]
mov dword [esi + 0x31b4], ebx
push ebx
mov dword [esi + 0x31b8], ebx
push eax
mov dword [esi + 0x31bc], ebx
push str.CoundDownOffsetY
mov byte [esi + 0x3110], bl
push str.NewActionType
mov dword [esi + 0x3118], ebx
push str.ini_info.ini
mov dword [esi + 0x3114], ebx
call fcn.00594e29
add esp, 0x14
lea ecx, [esi + 0x31c0]
call fcn.0055c737
mov byte [esi + 0x31cc], bl
mov byte [esi + 0x31d8], bl
mov dword [esi + 0x31d0], ebx
mov dword [esi + 0x31d4], ebx
mov dword [esi + 0x8d8], ebx
mov dword [esi + 0x9c0], ebx
mov dword [esi + 0x9d0], ebx
mov dword [esi + 0x9fc], ebx
mov dword [esi + 0xa00], ebx
mov dword [esi + 0xa08], ebx
mov dword [esi + 0xa0c], 0x64
mov dword [esi + 0xb04], ebx
mov dword [esi + 0xb50], ebx
mov dword [esi + 0xb5c], ebx
mov dword [esi + 0xb6c], ebx
mov dword [esi + 0xb70], ebx
mov dword [esi + 0xbd8], ebx
mov dword [esi + 0xbdc], ebx
mov dword [esi + 0xbe0], ebx
mov dword [esi + 0xbe4], ebx
mov dword [esi + 0xd60], ebx
mov dword [esi + 0xd64], ebx
mov dword [esi + 0xd68], ebx
mov dword [esi + 0xd6c], ebx
mov dword [esi + 0x186c], ebx
mov dword [esi + 0x1870], ebx
mov dword [esi + 0x18b8], ebx
mov dword [esi + 0x18bc], ebx
mov dword [esi + 0x18cc], ebx
mov dword [esi + 0x18d0], ebx
mov dword [esi + 0x18d8], ebx
mov dword [esi + 0x18dc], ebx
mov dword [esi + 0x2d58], ebx
mov dword [esi + 0x2d5c], ebx
mov dword [esi + 0x2eb8], ebx
mov dword [esi + 0x2ebc], ebx
mov dword [esi + 0x2f54], ebx
mov dword [esi + 0x2f58], ebx
mov dword [esi + 0x2f5c], ebx
mov dword [esi + 0x2f78], ebx
mov dword [esi + 0x2f88], ebx
mov dword [esi + 0x2f94], ebx
mov dword [esi + 0x2f98], ebx
mov dword [esi + 0x2fa0], ebx
mov dword [esi + 0x2fa4], ebx
mov dword [esi + 0x2fa8], ebx
mov dword [esi + 0x2fac], ebx
mov dword [esi + 0x2fb0], ebx
or dword [esi + 0x2fc8], 0xffffffff
mov dword [esi + 0x2fcc], ebx
mov dword [esi + 0x2fe8], ebx
mov dword [esi + 0x2fec], ebx
mov byte [esi + 0x3040], bl
mov byte [esi + 0x31d9], bl
mov dword [esi + 0x3044], ebx
call sub.WINMM.dll_timeGetTime
mov dword [esi + 0x3054], eax
mov dword [esi + 0x3048], ebx
mov dword [esi + 0x304c], ebx
mov byte [esi + 0x3050], bl
mov byte [esi + 0x3051], bl
mov dword [esi + 0x3058], ebx
mov dword [esi + 0x305c], ebx
mov dword [esi + 0x3060], ebx
mov dword [esi + 0x3064], ebx
mov dword [esi + 0x3108], ebx
mov ecx, dword [ebp - 0xc]
mov dword [esi + 0x3188], ebx
mov dword [esi + 0x318c], ebx
mov dword [esi + 0x3190], ebx
mov dword [esi + 0x3194], ebx
mov dword [esi + 0x3198], ebx
mov dword [esi + 0x31a8], ebx
mov dword [esi + 0x31ac], ebx
mov dword [esi + 0x2fd0], ebx
mov eax, esi
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret