Function at 0x4eb9b0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x520899
mov eax, dword fs:[0]
push eax
sub esp, 0x9c
mov eax, dword [0x56858c]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov eax, dword [ebp + 0xc]
mov edi, ecx
mov ecx, dword [ebp + 8]
push eax
push ecx
mov ecx, edi
mov dword [ebp - 0x6c], edi
call fcn.004c34e0
xor ebx, ebx
mov dword [edi], vtable.GuiControl::GuiSelectDialog2nd::SelectWindow2ndSelectDialog.0
mov dword [ebp - 4], ebx
mov dword [edi + 0x64], ebx
mov dword [edi + 0x68], ebx
mov dword [edi + 0x6c], ebx
mov dword [edi + 0x70], ebx
mov dword [edi + 0x74], ebx
mov dword [edi + 0x78], ebx
mov dword [edi + 0x7c], ebx
mov dword [edi + 0x84], ebx
mov dword [edi + 0x88], ebx
mov dword [edi + 0x8c], ebx
mov dword [edi + 0x90], ebx
mov dword [edi + 0x94], ebx
mov dword [edi + 0x98], ebx
mov dword [edi + 0xa0], ebx
mov dword [edi + 0xa4], ebx
mov dword [edi + 0xa8], ebx
mov dword [edi + 0xac], ebx
mov dword [edi + 0xb0], ebx
mov dword [edi + 0xb4], ebx
mov dword [edi + 0xb8], ebx
mov dword [edi + 0xbc], ebx
mov dword [edi + 0xc0], ebx
push 0x10
mov byte [ebp - 4], 6
call fcn.00503a77
add esp, 4
cmp eax, ebx
je 0x4eba8b
mov dword [eax], ebx
mov dword [eax + 4], ebx
mov dword [eax + 8], ebx
jmp 0x4eba8d
xor eax, eax
push eax
lea ecx, [edi + 0x64]
call fcn.004af810
mov dword [ebp - 0x64], ebx
mov dword [ebp - 0x60], ebx
mov dword [ebp - 0x5c], ebx
mov dword [ebp - 0x58], ebx
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x70], 0x563b00
mov dword [ebp - 0x74], 4
mov edx, dword [ebp - 0x70]
push edx
push edi
lea eax, [ebp - 0x80]
push eax
lea ecx, [ebp - 0x65]
call fcn.004ca980
mov eax, dword [ebp - 0x80]
mov byte [ebp - 4], 7
cmp eax, ebx
jne 0x4ebadc
xor ecx, ecx
jmp 0x4ebaf0
mov ecx, dword [ebp - 0x78]
cmp ecx, ebx
je 0x4ebae8
mov ecx, dword [ecx + 0xc]
jmp 0x4ebaea
xor ecx, ecx
imul ecx, dword [ebp - 0x7c]
add ecx, eax
mov edx, dword [ecx]
mov edx, dword [edx + 0x3c]
lea eax, [ebp - 0x24]
push eax
call edx
push eax
lea eax, [ebp - 0x44]
push eax
call dword [0x526390]
lea ecx, [ebp - 0x44]
push ecx
lea edx, [ebp - 0x34]
push edx
mov eax, edx
push eax
call dword [0x526388]
mov eax, dword [ebp - 0x78]
mov ecx, dword [ebp - 0x80]
mov edx, dword [ebp - 0x7c]
mov dword [ebp - 0x8c], ecx
mov dword [ebp - 0x88], edx
mov dword [ebp - 0x84], eax
cmp eax, ebx
je 0x4ebb39
inc dword [eax + 4]
lea eax, [ebp - 0x8c]
push eax
lea ecx, [edi + 0xc]
mov byte [ebp - 4], 8
call fcn.0044ca40
mov esi, dword [ebp - 0x84]
mov byte [ebp - 4], 7
cmp esi, ebx
je 0x4ebb84
dec dword [esi + 4]
jne 0x4ebb78
cmp byte [esi + 8], 0
je 0x4ebb6d
mov edx, dword [esi]
mov eax, dword [edx]
mov ecx, esi
call eax
mov edx, dword [esi]
mov eax, dword [edx + 4]
push 1
mov ecx, esi
call eax
mov dword [ebp - 0x84], ebx
mov dword [ebp - 0x8c], ebx
mov eax, dword [ebp - 0x78]
mov byte [ebp - 4], 6
cmp eax, ebx
je 0x4ebbbb
dec dword [eax + 4]
mov ecx, eax
cmp dword [eax + 4], ebx
jne 0x4ebbb5
cmp byte [ecx + 8], 0
je 0x4ebba5
mov edx, dword [ecx]
mov eax, dword [edx]
call eax
mov ecx, dword [ebp - 0x78]
cmp ecx, ebx
je 0x4ebbb5
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push 1
call eax
mov dword [ebp - 0x78], ebx
mov dword [ebp - 0x80], ebx
add dword [ebp - 0x70], 0x24
dec dword [ebp - 0x74]
jne 0x4ebabc
mov edx, dword [edi + 0x94]
mov ecx, dword [edi + 0x90]
lea ebx, [edi + 0x90]
cmp ecx, edx
je 0x4ebc01
mov eax, edx
cmp edx, edx
je 0x4ebbf8
mov esi, dword [eax]
mov dword [ecx], esi
mov esi, dword [eax + 4]
mov dword [ecx + 4], esi
add eax, 8
add ecx, 8
cmp eax, edx
jne 0x4ebbe4
lea ebx, [edi + 0x90]
mov dword [ebx + 4], ecx
mov dword [ebp - 0x70], 0x563a70
mov dword [ebp - 0x74], 0
nop
mov ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x6c]
push ecx
push edx
lea eax, [ebp - 0x80]
push eax
lea ecx, [ebp - 0x65]
call fcn.004cac20
mov edx, dword [ebp - 0x80]
mov byte [ebp - 4], 9
test edx, edx
jne 0x4ebc33
xor ecx, ecx
jmp 0x4ebc49
mov eax, dword [ebp - 0x78]
test eax, eax
je 0x4ebc3f
mov eax, dword [eax + 0xc]
jmp 0x4ebc41
xor eax, eax
mov ecx, dword [ebp - 0x7c]
imul ecx, eax
add ecx, edx
mov edx, dword [ecx]
mov edx, dword [edx + 0x3c]
lea eax, [ebp - 0x54]
push eax
call edx
push eax
lea eax, [ebp - 0x44]
push eax
call dword [0x526390]
lea ecx, [ebp - 0x44]
push ecx
lea edx, [ebp - 0x64]
push edx
mov eax, edx
push eax
call dword [0x526388]
mov edi, dword [ebp - 0x40]
mov esi, dword [ebp - 0x44]
mov eax, dword [ebx + 4]
add esi, 0x9f
add edi, 0x41
lea ecx, [ebp - 0xa4]
mov dword [ebp - 0xa4], esi
mov dword [ebp - 0xa0], edi
cmp ecx, eax
jae 0x4ebd01
mov edx, dword [ebx]
cmp edx, ecx
ja 0x4ebd01
mov esi, ecx
mov ecx, dword [ebx + 8]
sub esi, edx
sar esi, 3
cmp eax, ecx
jne 0x4ebce9
sub eax, edx
sar eax, 3
cmp eax, 0x1ffffffe
ja 0x4ec043
sub ecx, edx
inc eax
sar ecx, 3
cmp eax, ecx
jbe 0x4ebce9
mov edx, ecx
shr edx, 1
mov edi, 0x1fffffff
sub edi, edx
cmp edi, ecx
jae 0x4ebcd9
xor ecx, ecx
jmp 0x4ebcdb
add ecx, edx
cmp ecx, eax
jae 0x4ebce1
mov ecx, eax
push ecx
mov ecx, ebx
call fcn.00416500
mov eax, dword [ebx + 4]
mov edx, dword [ebx]
lea ecx, [edx + esi*8]
test eax, eax
je 0x4ebd5c
mov edx, dword [ecx]
mov dword [eax], edx
mov ecx, dword [ecx + 4]
mov dword [eax + 4], ecx
jmp 0x4ebd5c
mov ecx, dword [ebx + 8]
cmp eax, ecx
jne 0x4ebd50
mov edx, dword [ebx]
sub eax, edx
sar eax, 3
cmp eax, 0x1ffffffe
ja 0x4ec043
sub ecx, edx
inc eax
sar ecx, 3
cmp eax, ecx
jbe 0x4ebd50
mov edx, ecx
shr edx, 1
mov ebx, 0x1fffffff
sub ebx, edx
cmp ebx, ecx
jae 0x4ebd37
xor ecx, ecx
jmp 0x4ebd39
add ecx, edx
cmp ecx, eax
jae 0x4ebd3f
mov ecx, eax
mov ebx, dword [ebp - 0x6c]
add ebx, 0x90
push ecx
mov ecx, ebx
call fcn.00416500
mov eax, dword [ebx + 4]
test eax, eax
je 0x4ebd5c
mov dword [eax], esi
mov dword [eax + 4], edi
add dword [ebx + 4], 8
push 0xc
call fcn.00503a77
xor esi, esi
add esp, 4
cmp eax, esi
je 0x4ebda0
mov edx, dword [ebp - 0x80]
cmp edx, esi
jne 0x4ebd7b
xor ecx, ecx
jmp 0x4ebd8f
mov ecx, dword [ebp - 0x78]
cmp ecx, esi
je 0x4ebd87
mov ecx, dword [ecx + 0xc]
jmp 0x4ebd89
xor ecx, ecx
imul ecx, dword [ebp - 0x7c]
add ecx, edx
mov ecx, dword [ecx + 4]
mov dword [eax + 4], esi
mov dword [eax], vtable.GuiControl::ClickedEvent.0
mov dword [eax + 8], ecx
mov esi, eax
xor edx, edx
xor edi, edi
mov dword [ebp - 0x8c], edx
mov dword [ebp - 0x88], edx
mov dword [ebp - 0x84], edi
cmp esi, edx
je 0x4ebe00
push 0x18
mov dword [ebp - 0x88], edx
mov dword [ebp - 0x8c], esi
call fcn.00503a77
add esp, 4
test eax, eax
je 0x4ebddf
mov dword [eax], vtable.yaneuraoGameSDK3rd::YTL::nonarray_ref_object_class_GuiControl::ClickedEvent_.0
mov dword [eax + 0x14], esi
jmp 0x4ebde1
xor eax, eax
mov ecx, 1
mov dword [eax + 4], ecx
mov byte [eax + 8], cl
mov edi, eax
mov dword [eax + 0xc], 0xc
mov dword [ebp - 0x84], edi
mov dword [eax + 0x10], ecx
xor edx, edx
mov ecx, dword [ebp - 0x8c]
sub esp, 0xc
mov eax, esp
mov byte [ebp - 4], 0xa
mov dword [ebp - 0x9c], esp
mov dword [eax], ecx
mov dword [eax + 4], edx
mov dword [eax + 8], edi
cmp edi, edx
je 0x4ebe24
inc dword [edi + 4]
mov ecx, dword [ebp - 0x80]
cmp ecx, edx
jne 0x4ebe2f
xor eax, eax
jmp 0x4ebe43
mov eax, dword [ebp - 0x78]
cmp eax, edx
je 0x4ebe3b
mov eax, dword [eax + 0xc]
jmp 0x4ebe3d
xor eax, eax
imul eax, dword [ebp - 0x7c]
add eax, ecx
mov ecx, eax
call fcn.004aef10
mov eax, dword [ebp - 0x7c]
mov edx, dword [ebp - 0x80]
mov dword [ebp - 0x94], eax
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x98], edx
mov dword [ebp - 0x90], eax
test eax, eax
je 0x4ebe6c
inc dword [eax + 4]
lea ecx, [ebp - 0x98]
push ecx
mov ecx, dword [ebp - 0x6c]
add ecx, 0xc
mov byte [ebp - 4], 0xb
call fcn.0044ca40
mov esi, dword [ebp - 0x90]
mov byte [ebp - 4], 0xa
test esi, esi
je 0x4ebebe
dec dword [esi + 4]
jne 0x4ebeae
cmp byte [esi + 8], 0
je 0x4ebea3
mov edx, dword [esi]
mov eax, dword [edx]
mov ecx, esi
call eax
mov edx, dword [esi]
mov eax, dword [edx + 4]
push 1
mov ecx, esi
call eax
xor ecx, ecx
mov dword [ebp - 0x90], ecx
mov dword [ebp - 0x98], ecx
jmp 0x4ebec0
xor ecx, ecx
mov edx, dword [ebp - 0x8c]
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x18], edi
cmp edi, ecx
je 0x4ebed6
inc dword [edi + 4]
mov esi, dword [ebp - 0x6c]
mov edx, dword [esi + 0x64]
cmp edx, ecx
je 0x4ebef6
mov eax, dword [esi + 0x6c]
test eax, eax
je 0x4ebeec
mov eax, dword [eax + 0xc]
jmp 0x4ebeee
xor eax, eax
mov ecx, dword [esi + 0x68]
imul ecx, eax
add ecx, edx
lea eax, [ebp - 0x20]
push eax
mov byte [ebp - 4], 0xc
call fcn.0044ca40
mov esi, dword [ebp - 0x18]
mov byte [ebp - 4], 0xa
test esi, esi
je 0x4ebf36
dec dword [esi + 4]
jne 0x4ebf2c
cmp byte [esi + 8], 0
je 0x4ebf21
mov edx, dword [esi]
mov eax, dword [edx]
mov ecx, esi
call eax
mov edx, dword [esi]
mov eax, dword [edx + 4]
push 1
mov ecx, esi
call eax
xor edx, edx
mov dword [ebp - 0x18], edx
mov dword [ebp - 0x20], edx
jmp 0x4ebf38
xor edx, edx
mov byte [ebp - 4], 9
cmp edi, edx
je 0x4ebf6c
dec dword [edi + 4]
jne 0x4ebf60
cmp byte [edi + 8], 0
je 0x4ebf53
mov edx, dword [edi]
mov eax, dword [edx]
mov ecx, edi
call eax
mov edx, dword [edi]
mov eax, dword [edx + 4]
push 1
mov ecx, edi
call eax
xor edx, edx
mov dword [ebp - 0x84], edx
mov dword [ebp - 0x8c], edx
mov eax, dword [ebp - 0x78]
mov byte [ebp - 4], 6
cmp eax, edx
je 0x4ebfa7
dec dword [eax + 4]
mov ecx, eax
cmp dword [eax + 4], edx
jne 0x4ebfa1
cmp byte [ecx + 8], 0
je 0x4ebf8f
mov edx, dword [ecx]
mov eax, dword [edx]
call eax
xor edx, edx
mov ecx, dword [ebp - 0x78]
cmp ecx, edx
je 0x4ebfa1
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push 1
call eax
xor edx, edx
mov dword [ebp - 0x78], edx
mov dword [ebp - 0x80], edx
mov eax, dword [ebp - 0x74]
add dword [ebp - 0x70], 0x2c
add eax, 0x2c
mov dword [ebp - 0x74], eax
cmp eax, 0x84
jb 0x4ebc10
push 0x24
call fcn.00503a77
mov esi, eax
add esp, 4
mov dword [ebp - 0x9c], esi
xor ebx, ebx
mov byte [ebp - 4], 0xd
cmp esi, ebx
je 0x4ec111
mov dword [esi], vtable.Graphics::CSurface.0
mov dword [esi + 4], ebx
mov dword [esi + 8], ebx
mov dword [esi + 0xc], ebx
mov dword [esi + 0x10], ebx
mov dword [esi + 0x14], ebx
mov edx, dword [0x5684f8]
mov eax, dword [edx + 0xc]
mov ecx, 0x5684f8
call eax
add eax, 0x10
mov dword [esi + 0x1c], eax
mov byte [ebp - 4], 0xe
cmp dword [esi + 4], ebx
je 0x4ec0e8
mov ecx, 0x56a451
call fcn.004074f0
mov ecx, dword [esi + 4]
mov dword [ebp - 0x74], ecx
mov ecx, dword [0x5699e4]
mov eax, dword [ecx]
cmp eax, ebx
je 0x4ec0e8
mov edx, dword [ecx + 8]
cmp edx, ebx
je 0x4ec04d
mov edx, dword [edx + 0xc]
jmp 0x4ec04f
push str.vector_T__too_long
call fcn.005035ed
xor edx, edx
mov edi, dword [ecx + 4]
imul edi, edx
mov edx, dword [0x5684f8]
add edi, eax
mov eax, dword [edx + 0xc]
mov ecx, 0x5684f8
call eax
add eax, 0x10
mov dword [ebp - 0x70], eax
mov ecx, str.SurfaceRelease
mov byte [ebp - 4], 0xf
test ecx, 0xffff0000
jne 0x4ec09e
mov edx, ecx
movzx ebx, dx
push 0
push ebx
call fcn.00401180
add esp, 8
test eax, eax
je 0x4ec0ad
push ebx
push eax
lea ecx, [ebp - 0x70]
call fcn.00404a50
jmp 0x4ec0ad
push 0xe
push str.SurfaceRelease
lea ecx, [ebp - 0x70]
call fcn.004049b0
mov ebx, dword [ebp - 0x70]
mov eax, dword [edi + 4]
push ebx
push eax
mov byte [ebp - 4], 0xe
call dword [0x5261dc]
mov edi, eax
lea eax, [ebx - 0x10]
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4ec0dd
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [ebp - 0x74]
push ecx
call edi
add esp, 4
xor ebx, ebx
xor ecx, ecx
xor eax, eax
push ebx
mov dword [esi + 0xc], ecx
mov dword [esi + 0x14], ecx
push 0x52791c
lea ecx, [esi + 0x1c]
mov dword [esi + 4], ebx
mov dword [esi + 8], eax
mov dword [esi + 0x10], eax
mov byte [esi + 0x18], al
call fcn.004049b0
mov dword [esi + 0x20], ebx
jmp 0x4ec113
xor esi, esi
mov edi, dword [ebp - 0x6c]
push esi
lea ecx, [edi + 0x84]
mov byte [ebp - 4], 6
call fcn.0040ced0
mov eax, dword [ebp - 0x58]
mov edx, dword [ebp - 0x5c]
mov esi, dword [edi + 0x84]
sub eax, dword [ebp - 0x60]
sub edx, dword [ebp - 0x64]
cmp esi, ebx
jne 0x4ec140
xor ecx, ecx
jmp 0x4ec15c
mov ecx, dword [edi + 0x8c]
cmp ecx, ebx
je 0x4ec14f
mov ebx, dword [ecx + 0xc]
jmp 0x4ec151
xor ebx, ebx
mov ecx, dword [edi + 0x88]
imul ecx, ebx
add ecx, esi
push 1
push 1
push eax
push edx
call fcn.0040fc70
test al, al
jne 0x4ec186
push 0x5455d8
lea edx, [ebp - 0xa8]
push edx
mov dword [ebp - 0xa8], 1
call fcn.005036c5
mov ecx, dword [edi + 0x84]
mov esi, dword [ebp - 0x64]
mov ebx, dword [ebp - 0x60]
test ecx, ecx
jne 0x4ec19a
xor eax, eax
jmp 0x4ec1b6
mov eax, dword [edi + 0x8c]
test eax, eax
je 0x4ec1a9
mov edx, dword [eax + 0xc]
jmp 0x4ec1ab
xor edx, edx
mov eax, dword [edi + 0x88]
imul eax, edx
add eax, ecx
mov dword [eax + 0x10], esi
mov dword [eax + 0x14], ebx
mov ecx, dword [edi + 0x84]
sub esp, 0xc
mov eax, esp
mov dword [eax], ecx
mov edx, dword [edi + 0x88]
mov dword [eax + 4], edx
mov ecx, dword [edi + 0x8c]
mov dword [ebp - 0x9c], esp
mov dword [eax + 8], ecx
test ecx, ecx
je 0x4ec1e8
inc dword [ecx + 4]
mov esi, dword [ebp - 0x6c]
push 0x14
push esi
lea eax, [ebp - 0x20]
push eax
lea ecx, [ebp - 0x65]
call fcn.004c8900
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x1c]
mov dword [ebp - 0x98], ecx
mov dword [ebp - 0x94], edx
mov dword [ebp - 0x90], eax
test eax, eax
je 0x4ec21c
inc dword [eax + 4]
lea eax, [ebp - 0x98]
push eax
lea ecx, [esi + 0xc]
mov byte [ebp - 4], 0x11
call fcn.0044ca40
mov esi, dword [ebp - 0x90]
mov byte [ebp - 4], 0x10
test esi, esi
je 0x4ec25b
dec dword [esi + 4]
jne 0x4ec25b
cmp byte [esi + 8], 0
je 0x4ec250
mov edx, dword [esi]
mov eax, dword [edx]
mov ecx, esi
call eax
mov edx, dword [esi]
mov eax, dword [edx + 4]
push 1
mov ecx, esi
call eax
lea ecx, [ebp - 0x34]
push ecx
lea edx, [ebp - 0x64]
push edx
mov eax, edx
push eax
call dword [0x526388]
mov eax, dword [ebp - 0x18]
mov byte [ebp - 4], 6
test eax, eax
je 0x4ec29e
dec dword [eax + 4]
cmp dword [eax + 4], 0
mov ecx, eax
jne 0x4ec29e
cmp byte [ecx + 8], 0
je 0x4ec28e
mov edx, dword [ecx]
mov eax, dword [edx]
call eax
mov ecx, dword [ebp - 0x18]
test ecx, ecx
je 0x4ec29e
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push 1
call eax
mov bl, 0x12
mov ecx, 0x56a554
mov byte [ebp - 4], bl
call fcn.00405790
mov ecx, dword [0x5699e0]
mov edx, dword [ecx + 4]
test edx, edx
jne 0x4ec2be
xor esi, esi
jmp 0x4ec2d4
mov eax, dword [ecx + 0xc]
test eax, eax
je 0x4ec2ca
mov eax, dword [eax + 0xc]
jmp 0x4ec2cc
xor eax, eax
mov esi, dword [ecx + 8]
imul esi, eax
add esi, edx
mov ecx, 0x56a4b5
call fcn.00441ad0
mov ecx, dword [0x56a484]
push 0x5347f0
add esi, 0x7c
push esi
lea edx, [ebp - 0x20]
push edx
mov edi, ecx
call fcn.00448f10
push str.Value
lea eax, [ebp - 0x20]
push eax
mov ecx, edi
mov byte [ebp - 4], 0x13
call fcn.004493e0
mov edi, eax
mov eax, dword [ebp - 0x18]
mov byte [ebp - 4], bl
test eax, eax
je 0x4ec33f
dec dword [eax + 4]
cmp dword [eax + 4], 0
mov ecx, eax
jne 0x4ec33f
cmp byte [ecx + 8], 0
je 0x4ec32f
mov edx, dword [ecx]
mov eax, dword [edx]
call eax
mov ecx, dword [ebp - 0x18]
test ecx, ecx
je 0x4ec33f
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push 1
call eax
mov esi, dword [ebp - 0x6c]
lea ecx, [esi + 0xa0]
call fcn.00441920
mov edx, dword [esi + 0xa0]
test edx, edx
jne 0x4ec35b
xor eax, eax
jmp 0x4ec377
mov eax, dword [esi + 0xa8]
test eax, eax
je 0x4ec36a
mov ecx, dword [eax + 0xc]
jmp 0x4ec36c
xor ecx, ecx
mov eax, dword [esi + 0xa4]
imul eax, ecx
add eax, edx
mov dword [eax], edi
mov dword [ebp - 4], 6
mov bl, 0x15
mov ecx, 0x56a554
mov byte [ebp - 4], bl
call fcn.00405790
mov ecx, dword [0x5699e0]
mov edx, dword [ecx + 4]
test edx, edx
jne 0x4ec3ad
xor esi, esi
jmp 0x4ec3c3
mov eax, dword [ecx + 0xc]
test eax, eax
je 0x4ec3b9
mov eax, dword [eax + 0xc]
jmp 0x4ec3bb
xor eax, eax
mov esi, dword [ecx + 8]
imul esi, eax
add esi, edx
mov ecx, 0x56a4b5
call fcn.00441ad0
mov ecx, dword [0x56a484]
push 0x5347e0
add esi, 0x7c
push esi
lea edx, [ebp - 0x20]
push edx
mov edi, ecx
call fcn.00448f10
push str.Value
lea eax, [ebp - 0x20]
push eax
mov ecx, edi
mov byte [ebp - 4], 0x16
call fcn.004493e0
mov edi, eax
mov eax, dword [ebp - 0x18]
mov byte [ebp - 4], bl
test eax, eax
je 0x4ec42e
dec dword [eax + 4]
cmp dword [eax + 4], 0
mov ecx, eax
jne 0x4ec42e
cmp byte [ecx + 8], 0
je 0x4ec41e
mov edx, dword [ecx]
mov eax, dword [edx]
call eax
mov ecx, dword [ebp - 0x18]
test ecx, ecx
je 0x4ec42e
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push 1
call eax
mov esi, dword [ebp - 0x6c]
lea ecx, [esi + 0xac]
call fcn.00441920
mov edx, dword [esi + 0xac]
test edx, edx
jne 0x4ec44a
xor eax, eax
jmp 0x4ec466
mov eax, dword [esi + 0xb4]
test eax, eax
je 0x4ec459
mov ecx, dword [eax + 0xc]
jmp 0x4ec45b
xor ecx, ecx
mov eax, dword [esi + 0xb0]
imul eax, ecx
add eax, edx
mov dword [eax], edi
mov dword [ebp - 4], 6
mov ecx, 0x56a554
mov byte [ebp - 4], 0x18
call fcn.00405790
mov ecx, dword [0x5699e0]
mov edx, dword [ecx + 4]
test edx, edx
jne 0x4ec49b
xor esi, esi
jmp 0x4ec4b1
mov eax, dword [ecx + 0xc]
test eax, eax
je 0x4ec4a7
mov eax, dword [eax + 0xc]
jmp 0x4ec4a9
xor eax, eax
mov esi, dword [ecx + 8]
imul esi, eax
add esi, edx
mov ecx, 0x56a4b5
call fcn.00441ad0
mov ecx, dword [0x56a484]
push 0x5347d0
add esi, 0x7c
push esi
lea edx, [ebp - 0x20]
push edx
mov edi, ecx
call fcn.00448f10
push str.Value
lea eax, [ebp - 0x20]
push eax
mov ecx, edi
mov byte [ebp - 4], 0x19
call fcn.004493e0
mov edi, eax
mov eax, dword [ebp - 0x18]
mov byte [ebp - 4], 0x18
test eax, eax
je 0x4ec51d
dec dword [eax + 4]
cmp dword [eax + 4], 0
mov ecx, eax
jne 0x4ec51d
cmp byte [ecx + 8], 0
je 0x4ec50d
mov edx, dword [ecx]
mov eax, dword [edx]
call eax
mov ecx, dword [ebp - 0x18]
test ecx, ecx
je 0x4ec51d
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push 1
call eax
mov esi, dword [ebp - 0x6c]
lea ecx, [esi + 0xb8]
call fcn.00441920
mov edx, dword [esi + 0xb8]
test edx, edx
jne 0x4ec539
xor eax, eax
jmp 0x4ec555
mov eax, dword [esi + 0xc0]
test eax, eax
je 0x4ec548
mov ecx, dword [eax + 0xc]
jmp 0x4ec54a
xor ecx, ecx
mov eax, dword [esi + 0xbc]
imul eax, ecx
add eax, edx
mov dword [eax], edi
mov dword [ebp - 4], 6
mov edi, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x64]
mov edx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x5c]
mov dword [edi + 0x70], ecx
mov ecx, dword [ebp - 0x58]
mov dword [edi + 0x74], edx
mov dword [edi + 0x78], eax
push 4
mov dword [edi + 0x7c], ecx
call fcn.00503a77
add esp, 4
test eax, eax
je 0x4ec59c
mov dword [eax], vtable.SystemInfomation::GameInputState.0
jmp 0x4ec59e
xor eax, eax
push eax
lea ecx, [edi + 0x1c]
call fcn.004af2f0
mov esi, 0x5655e4
mov dword [ebp - 0x74], 4
push esi
lea edx, [ebp - 0x20]
push edx
lea ecx, [ebp - 0x65]
call fcn.004c8d80
push eax
lea ecx, [edi + 0x28]
mov byte [ebp - 4], 0x1b
call fcn.0044ca40
mov eax, dword [ebp - 0x18]
mov byte [ebp - 4], 6
test eax, eax
je 0x4ec607
dec dword [eax + 4]
cmp dword [eax + 4], 0
mov ecx, eax
jne 0x4ec5ff
cmp byte [ecx + 8], 0
je 0x4ec5ef
mov eax, dword [ecx]
mov edx, dword [eax]
call edx
mov ecx, dword [ebp - 0x18]
test ecx, ecx
je 0x4ec5ff
mov eax, dword [ecx]
mov edx, dword [eax + 4]
push 1
call edx
xor eax, eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x20], eax
add esi, 8
dec dword [ebp - 0x74]
jne 0x4ec5b3
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00503edb
mov esp, ebp
pop ebp
ret 8