Function at 0x43a2e0
Capabilities:
Check os version

Disassembly:
push 0xffffffffffffffff
push 0x4aac11
mov eax, dword fs:[0]
push eax
sub esp, 0xc8
mov eax, dword [0x5564a4]
xor eax, esp
mov dword [esp + 0xc4], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x5564a4]
xor eax, esp
push eax
lea eax, [esp + 0xdc]
mov dword fs:[0], eax
lea ecx, [esp + 0x30]
call fcn.0043c8a0
push 1
xor ebx, ebx
push str.Launcher.xml
lea ecx, [esp + 0x38]
mov dword [esp + 0xec], ebx
call fcn.0043d580
test al, al
jne 0x43a378
mov eax, dword [esp + 0x64]
cmp eax, 0x56ec4c
mov dword [esp + 0xe4], 0xffffffff
mov dword [esp + 0x30], vtable.TiXmlDocument.0
je 0x43a368
push eax
call fcn.0045818d
add esp, 4
lea ecx, [esp + 0x30]
call fcn.0043c490
xor al, al
jmp 0x43ba1e
mov eax, dword [str.ShadowComboData]
mov ecx, dword [0x503ae4]
mov edx, dword [0x503ae8]
mov dword [esp + 0x78], eax
mov eax, dword [0x503aec]
mov dword [esp + 0x84], eax
mov ax, word [0x503adc]
mov word [esp + 0x90], ax
xor eax, eax
mov dword [esp + 0x92], eax
mov word [esp + 0x96], ax
mov al, byte [0x503ad0]
mov dword [esp + 0x7c], ecx
mov ecx, dword [str.RFDlgInfo]
mov byte [esp + 0xa0], al
xor eax, eax
mov dword [esp + 0x88], ecx
mov ecx, dword [str.LDlgInfo]
mov dword [esp + 0xa1], eax
mov word [esp + 0xa5], ax
mov byte [esp + 0xa7], al
mov eax, dword [0x503ac0]
mov dword [esp + 0x80], edx
mov edx, dword [0x503ad8]
mov dword [esp + 0x98], ecx
mov ecx, dword [str.SetupPosInfo]
mov dword [esp + 0xb0], eax
xor eax, eax
mov dword [esp + 0x8c], edx
mov edx, dword [0x503acc]
mov dword [esp + 0xa8], ecx
mov cl, byte [0x503ac4]
mov word [esp + 0xb5], ax
mov byte [esp + 0xb7], al
mov eax, dword [0x503ab0]
mov dword [esp + 0x9c], edx
mov edx, dword [0x503abc]
mov byte [esp + 0xb4], cl
movzx ecx, word [0x503ab4]
mov dword [esp + 0xbc], eax
xor eax, eax
mov dword [esp + 0xac], edx
mov edx, dword [str.SLDlgInfo]
mov dword [esp + 0xc2], eax
mov word [esp + 0xc6], ax
mov eax, dword [0x503aa4]
mov word [esp + 0xc0], cx
movzx ecx, word [0x503aa8]
mov dword [esp + 0xb8], edx
mov edx, dword [str.SGDlgInfo]
mov dword [esp + 0xcc], eax
xor eax, eax
mov dword [esp + 0xc8], edx
mov word [esp + 0xd0], cx
mov dword [esp + 0xd2], eax
mov word [esp + 0xd6], ax
call dword [0x5578dc]
push str.Launcher
lea ecx, [esp + 0x34]
call fcn.0043bdf0
mov esi, eax
call fcn.0045f338
xor ecx, ecx
cmp eax, ebx
setne cl
cmp ecx, ebx
jne 0x43a501
push 0x80004005
call fcn.00401090
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [esp + 0x20], eax
mov byte [esp + 0xe4], 1
call fcn.00405660
mov ecx, eax
call fcn.00404f50
movzx eax, al
lea eax, [eax*4 + 0x56ec1c]
push eax
lea ecx, [esp + 0x24]
call fcn.00402cc0
mov ecx, dword [esp + 0x20]
push ecx
mov ecx, esi
call fcn.0043bdf0
mov dword [esp + 0x28], eax
mov dword [esp + 0x24], ebx
mov ecx, dword [esp + 0x28]
mov edx, ebx
shl edx, 4
lea eax, [esp + edx + 0x78]
push eax
call fcn.0043bdf0
mov edi, eax
mov edx, dword [edi]
mov eax, dword [edx + 0x14]
mov ecx, edi
mov dword [esp + 0x18], edi
call eax
cmp ebx, 5
mov esi, eax
ja case.default.0x43a57a
jmp dword [ebx*4 + 0x43ba48]
lea eax, [esi + 0x2c]
mov esi, dword [eax + 0x20]
cmp esi, eax
je case.default.0x43a57a
test esi, esi
je case.default.0x43a57a
mov edi, 0x55b8c0
mov ebp, 4
mov eax, dword [esi + 0x18]
add eax, 8
push eax
call fcn.0043a1c0
add esp, 4
test eax, eax
jne 0x43a5b8
xor ecx, ecx
jmp 0x43a5cb
mov ecx, eax
lea ebx, [ecx + 1]
lea ecx, [ecx]
mov dl, byte [ecx]
add ecx, 1
test dl, dl
jne 0x43a5c0
sub ecx, ebx
push ecx
push eax
mov ecx, edi
call fcn.004017c0
mov ecx, esi
call fcn.0043bf90
add edi, 4
sub ebp, 1
mov esi, eax
jne 0x43a5a1
jmp case.default.0x43a57a
push str.LANGUAGE
mov ecx, edi
call fcn.0043bdf0
test eax, eax
je 0x43a680
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x14]
call eax
mov esi, eax
push str.DOWN
mov ecx, esi
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.RIGHT
mov ecx, esi
mov ebx, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push 0x503a80
mov ecx, esi
mov ebp, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.LEFT
mov ecx, esi
mov dword [esp + 0x18], eax
call fcn.0043c5d0
push eax
call fcn.00476c14
mov ecx, dword [esp + 0x18]
add esp, 4
mov dword [0x55bb78], eax
mov dword [0x55bb7c], ecx
mov dword [0x55bb80], ebp
mov dword [0x55bb84], ebx
mov ecx, dword [0x55865c]
push 0
call fcn.0043f4a0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xac]
call eax
test eax, eax
jne 0x43a7b7
mov ecx, dword [0x55865c]
push eax
call fcn.0043f4a0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xa4]
call eax
test eax, eax
jne 0x43a7b7
mov ecx, dword [0x55865c]
push eax
call fcn.0043f4a0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xa8]
call eax
test eax, eax
jne 0x43a7b7
mov ecx, dword [0x55865c]
push eax
call fcn.0043f4a0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x94]
call eax
test eax, eax
jne 0x43a7b7
mov ecx, dword [0x55865c]
push eax
call fcn.0043f4a0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xa0]
call eax
test eax, eax
jne 0x43a7b7
push str.MOVIE
mov ecx, edi
call fcn.0043bdf0
test eax, eax
je 0x43a7b7
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x14]
call eax
mov esi, eax
push str.DOWN
mov ecx, esi
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.RIGHT
mov ecx, esi
mov ebx, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push 0x503a80
mov ecx, esi
mov ebp, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.LEFT
mov ecx, esi
mov dword [esp + 0x18], eax
call fcn.0043c5d0
push eax
call fcn.00476c14
mov ecx, dword [esp + 0x18]
add esp, 4
mov dword [0x55ba68], eax
mov dword [0x55ba6c], ecx
mov dword [0x55ba70], ebp
mov dword [0x55ba74], ebx
mov ecx, dword [0x55865c]
push 0
call fcn.0043f4a0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xb0]
call eax
test eax, eax
jne 0x43a88e
mov ecx, dword [0x55865c]
push eax
call fcn.0043f4a0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x94]
call eax
test eax, eax
jne 0x43a88e
push str.HOMEPAGE
mov ecx, edi
call fcn.0043bdf0
test eax, eax
je 0x43a88e
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x14]
call eax
mov esi, eax
push str.DOWN
mov ecx, esi
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.RIGHT
mov ecx, esi
mov ebx, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push 0x503a80
mov ecx, esi
mov ebp, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.LEFT
mov ecx, esi
mov dword [esp + 0x18], eax
call fcn.0043c5d0
push eax
call fcn.00476c14
mov ecx, dword [esp + 0x18]
add esp, 4
mov dword [0x55b960], eax
mov dword [0x55b964], ecx
mov dword [0x55b968], ebp
mov dword [0x55b96c], ebx
mov ecx, dword [0x55865c]
push 0
call fcn.0043f4a0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xb0]
call eax
test eax, eax
jne 0x43a9e5
mov ecx, dword [0x55865c]
push eax
call fcn.0043f4a0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xac]
call eax
test eax, eax
jne 0x43a9e5
mov ecx, dword [0x55865c]
push eax
call fcn.0043f4a0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xa4]
call eax
test eax, eax
jne 0x43a9e5
mov ecx, dword [0x55865c]
push eax
call fcn.0043f4a0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xa8]
call eax
test eax, eax
jne 0x43a9e5
mov ecx, dword [0x55865c]
push eax
call fcn.0043f4a0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x98]
call eax
test eax, eax
jne 0x43a9e5
mov ecx, dword [0x55865c]
push eax
call fcn.0043f4a0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xa0]
call eax
test eax, eax
jne 0x43a9e5
push 0x4fc868
mov ecx, edi
call fcn.0043bdf0
test eax, eax
je 0x43a9e5
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x14]
call eax
mov esi, eax
push str.DOWN
mov ecx, esi
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.RIGHT
mov ecx, esi
mov ebx, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push 0x503a80
mov ecx, esi
mov ebp, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.LEFT
mov ecx, esi
mov dword [esp + 0x18], eax
call fcn.0043c5d0
push eax
call fcn.00476c14
mov ecx, dword [esp + 0x18]
add esp, 4
mov dword [0x55ba78], eax
mov dword [0x55ba7c], ecx
mov dword [0x55ba80], ebp
mov dword [0x55ba84], ebx
push str.SETUP
mov ecx, edi
call fcn.0043bdf0
test eax, eax
je case.default.0x43a57a
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x14]
call eax
mov esi, eax
push str.DOWN
mov ecx, esi
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.RIGHT
mov ecx, esi
mov edi, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push 0x503a80
mov ecx, esi
mov ebx, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.LEFT
mov ecx, esi
mov ebp, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
mov dword [0x55b8d0], eax
mov dword [0x55b8d4], ebp
mov dword [0x55b8d8], ebx
mov dword [0x55b8dc], edi
jmp 0x43b9ad
push str.JOIN_BTN
mov ecx, edi
call fcn.0043bdf0
test eax, eax
je 0x43ab0d
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x14]
call eax
mov esi, eax
push str.DOWN
mov ecx, esi
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.RIGHT
mov ecx, esi
mov ebx, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push 0x503a80
mov ecx, esi
mov ebp, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.LEFT
mov ecx, esi
mov dword [esp + 0x18], eax
call fcn.0043c5d0
push eax
call fcn.00476c14
mov ecx, dword [esp + 0x18]
add esp, 4
mov dword [0x55b858], eax
mov dword [0x55b85c], ecx
mov dword [0x55b860], ebp
mov dword [0x55b864], ebx
push str.WINDOW_MODE
mov ecx, edi
call fcn.0043bdf0
test eax, eax
je 0x43aba3
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x14]
call eax
mov esi, eax
push str.DOWN
mov ecx, esi
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.RIGHT
mov ecx, esi
mov ebx, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push 0x503a80
mov ecx, esi
mov ebp, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.LEFT
mov ecx, esi
mov dword [esp + 0x18], eax
call fcn.0043c5d0
push eax
call fcn.00476c14
mov ecx, dword [esp + 0x18]
add esp, 4
mov dword [0x55b5f8], eax
mov dword [0x55b5fc], ecx
mov dword [0x55b600], ebp
mov dword [0x55b604], ebx
mov ecx, dword [0x55865c]
push 0
call fcn.0043f4a0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x90]
call eax
test eax, eax
je case.default.0x43a57a
push str.NOTICE_WEB2
mov ecx, edi
call fcn.0043bdf0
test eax, eax
je case.default.0x43a57a
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x14]
call eax
mov esi, eax
push str.DOWN
mov ecx, esi
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.RIGHT
mov ecx, esi
mov edi, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push 0x503a80
mov ecx, esi
mov ebx, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.LEFT
mov ecx, esi
mov ebp, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
mov dword [0x55ba88], eax
mov dword [0x55ba8c], ebp
mov dword [0x55ba90], ebx
mov dword [0x55ba94], edi
jmp 0x43b9ad
push str.TEXTURE_QUALITY_RADIO_POS1
mov ecx, edi
call fcn.0043bdf0
test eax, eax
je 0x43ad00
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x14]
call eax
mov esi, eax
mov edi, 0x55b8e0
mov dword [esp + 0x14], 4
push str.DOWN
mov ecx, esi
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.RIGHT
mov ecx, esi
mov ebx, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push 0x503a80
mov ecx, esi
mov ebp, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.LEFT
mov ecx, esi
mov dword [esp + 0x20], eax
call fcn.0043c5d0
push eax
call fcn.00476c14
mov ecx, dword [esp + 0x20]
mov dword [edi], eax
mov dword [edi + 4], ecx
mov dword [edi + 8], ebp
add esp, 4
mov ecx, esi
mov dword [edi + 0xc], ebx
call fcn.0043be40
add edi, 0x10
sub dword [esp + 0x14], 1
mov esi, eax
jne 0x43ac82
mov ecx, dword [esp + 0x18]
push str.DANAMIC_LIGHTS_RADIO_POS1
call fcn.0043bdf0
test eax, eax
je 0x43adae
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x14]
call eax
mov esi, eax
mov edi, 0x55b9a0
mov dword [esp + 0x14], 4
mov edi, edi
push str.DOWN
mov ecx, esi
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.RIGHT
mov ecx, esi
mov ebx, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push 0x503a80
mov ecx, esi
mov ebp, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.LEFT
mov ecx, esi
mov dword [esp + 0x20], eax
call fcn.0043c5d0
push eax
call fcn.00476c14
mov ecx, dword [esp + 0x20]
mov dword [edi], eax
mov dword [edi + 4], ecx
mov dword [edi + 8], ebp
add esp, 4
mov ecx, esi
mov dword [edi + 0xc], ebx
call fcn.0043be40
add edi, 0x10
sub dword [esp + 0x14], 1
mov esi, eax
jne 0x43ad30
mov ecx, dword [esp + 0x18]
push str.GLOW_EFFECT_RADIO_POS1
call fcn.0043bdf0
test eax, eax
je 0x43ae5e
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x14]
call eax
mov esi, eax
mov edi, 0x55bb10
mov dword [esp + 0x14], 3
lea esp, [esp]
push str.DOWN
mov ecx, esi
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.RIGHT
mov ecx, esi
mov ebx, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push 0x503a80
mov ecx, esi
mov ebp, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.LEFT
mov ecx, esi
mov dword [esp + 0x20], eax
call fcn.0043c5d0
push eax
call fcn.00476c14
mov ecx, dword [esp + 0x20]
mov dword [edi], eax
mov dword [edi + 4], ecx
mov dword [edi + 8], ebp
add esp, 4
mov ecx, esi
mov dword [edi + 0xc], ebx
call fcn.0043be40
add edi, 0x10
sub dword [esp + 0x14], 1
mov esi, eax
jne 0x43ade0
mov ecx, dword [esp + 0x18]
push str.SHADOW_RADIO_POS1
call fcn.0043bdf0
test eax, eax
je 0x43af0e
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x14]
call eax
mov esi, eax
mov edi, 0x55b920
mov dword [esp + 0x14], 4
lea esp, [esp]
push str.DOWN
mov ecx, esi
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.RIGHT
mov ecx, esi
mov ebx, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push 0x503a80
mov ecx, esi
mov ebp, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.LEFT
mov ecx, esi
mov dword [esp + 0x20], eax
call fcn.0043c5d0
push eax
call fcn.00476c14
mov ecx, dword [esp + 0x20]
mov dword [edi], eax
mov dword [edi + 4], ecx
mov dword [edi + 8], ebp
add esp, 4
mov ecx, esi
mov dword [edi + 0xc], ebx
call fcn.0043be40
add edi, 0x10
sub dword [esp + 0x14], 1
mov esi, eax
jne 0x43ae90
mov ecx, dword [esp + 0x18]
push str.SETTING_RADIO_POS1
call fcn.0043bdf0
test eax, eax
je 0x43afbe
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x14]
call eax
mov esi, eax
mov edi, 0x55b9e0
mov dword [esp + 0x14], 5
lea esp, [esp]
push str.DOWN
mov ecx, esi
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.RIGHT
mov ecx, esi
mov ebp, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push 0x503a80
mov ecx, esi
mov ebx, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.LEFT
mov ecx, esi
mov dword [esp + 0x20], eax
call fcn.0043c5d0
push eax
call fcn.00476c14
mov ecx, dword [esp + 0x20]
mov dword [edi], eax
mov dword [edi + 4], ecx
mov dword [edi + 8], ebx
add esp, 4
mov ecx, esi
mov dword [edi + 0xc], ebp
call fcn.0043be40
add edi, 0x10
sub dword [esp + 0x14], 1
mov esi, eax
jne 0x43af40
mov ecx, dword [esp + 0x18]
push str.COMBO_GAMMA
call fcn.0043bdf0
test eax, eax
je 0x43b050
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x14]
call eax
mov esi, eax
push str.DOWN
mov ecx, esi
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.RIGHT
mov ecx, esi
mov edi, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push 0x503a80
mov ecx, esi
mov ebx, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.LEFT
mov ecx, esi
mov ebp, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
mov dword [0x55ba44], eax
mov dword [0x55ba48], ebp
mov dword [0x55ba4c], ebx
mov dword [0x55ba50], edi
mov ecx, dword [esp + 0x18]
push str.MUSIC_BTN
call fcn.0043bdf0
test eax, eax
je 0x43b0e2
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x14]
call eax
mov esi, eax
push str.DOWN
mov ecx, esi
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.RIGHT
mov ecx, esi
mov edi, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push 0x503a80
mov ecx, esi
mov ebx, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.LEFT
mov ecx, esi
mov ebp, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
mov dword [0x55baf0], eax
mov dword [0x55baf4], ebp
mov dword [0x55baf8], ebx
mov dword [0x55bafc], edi
mov ecx, dword [esp + 0x18]
push str.SOUND_BTN
call fcn.0043bdf0
test eax, eax
je 0x43b174
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x14]
call eax
mov esi, eax
push str.DOWN
mov ecx, esi
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.RIGHT
mov ecx, esi
mov edi, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push 0x503a80
mov ecx, esi
mov ebx, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.LEFT
mov ecx, esi
mov ebp, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
mov dword [0x55b8b0], eax
mov dword [0x55b8b4], ebp
mov dword [0x55b8b8], ebx
mov dword [0x55b8bc], edi
mov ecx, dword [esp + 0x18]
push str.MOUSE_BTN
call fcn.0043bdf0
test eax, eax
je 0x43b206
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x14]
call eax
mov esi, eax
push str.DOWN
mov ecx, esi
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.RIGHT
mov ecx, esi
mov edi, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push 0x503a80
mov ecx, esi
mov ebx, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.LEFT
mov ecx, esi
mov ebp, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
mov dword [0x55b980], eax
mov dword [0x55b984], ebp
mov dword [0x55b988], ebx
mov dword [0x55b98c], edi
mov ecx, dword [esp + 0x18]
push str.DTEXTURE_BTN
call fcn.0043bdf0
test eax, eax
je 0x43b298
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x14]
call eax
mov esi, eax
push str.DOWN
mov ecx, esi
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.RIGHT
mov ecx, esi
mov edi, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push 0x503a80
mov ecx, esi
mov ebx, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.LEFT
mov ecx, esi
mov ebp, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
mov dword [0x55bb00], eax
mov dword [0x55bb04], ebp
mov dword [0x55bb08], ebx
mov dword [0x55bb0c], edi
mov ecx, dword [esp + 0x18]
push str.SAVE_BTN
call fcn.0043bdf0
test eax, eax
je 0x43b32a
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x14]
call eax
mov esi, eax
push str.DOWN
mov ecx, esi
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.RIGHT
mov ecx, esi
mov edi, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push 0x503a80
mov ecx, esi
mov ebx, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.LEFT
mov ecx, esi
mov ebp, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
mov dword [0x55b970], eax
mov dword [0x55b974], ebp
mov dword [0x55b978], ebx
mov dword [0x55b97c], edi
mov ecx, dword [esp + 0x18]
push str.CANCEL_BTN
call fcn.0043bdf0
test eax, eax
je case.default.0x43a57a
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x14]
call eax
mov esi, eax
push str.DOWN
mov ecx, esi
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.RIGHT
mov ecx, esi
mov edi, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push 0x503a80
mov ecx, esi
mov ebx, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.LEFT
mov ecx, esi
mov ebp, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
mov dword [0x55b630], eax
mov dword [0x55b634], ebp
mov dword [0x55b638], ebx
mov dword [0x55b63c], edi
jmp 0x43b9ad
push str.FONT_NAME
mov ecx, esi
call fcn.0043c5d0
test eax, eax
je 0x43b428
push str.FONT_NAME
mov ecx, esi
call fcn.0043c5d0
push eax
call fcn.0043a1c0
add esp, 4
push eax
lea ecx, [esp + 0x30]
call fcn.00401d30
push eax
mov ecx, 0x55ba40
mov byte [esp + 0xe8], 2
call fcn.00402cc0
mov eax, dword [esp + 0x2c]
add eax, 0xfffffff0
mov byte [esp + 0xe4], 1
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43b428
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push str.DLG_POS
mov ecx, edi
call fcn.0043bdf0
test eax, eax
je 0x43b4bc
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x14]
call eax
mov esi, eax
push str.DOWN
mov ecx, esi
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.RIGHT
mov ecx, esi
mov edi, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push 0x503a80
mov ecx, esi
mov ebx, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.LEFT
mov ecx, esi
mov ebp, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
mov dword [0x55baa4], edi
mov edi, dword [esp + 0x1c]
add esp, 4
mov dword [0x55ba98], eax
mov dword [0x55ba9c], ebp
mov dword [0x55baa0], ebx
push str.LIST_RECT
mov ecx, edi
call fcn.0043bdf0
test eax, eax
je 0x43b550
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x14]
call eax
mov esi, eax
push str.DOWN
mov ecx, esi
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.RIGHT
mov ecx, esi
mov edi, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push 0x503a80
mov ecx, esi
mov ebx, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.LEFT
mov ecx, esi
mov ebp, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
mov dword [0x55bb74], edi
mov edi, dword [esp + 0x1c]
add esp, 4
mov dword [0x55bb68], eax
mov dword [0x55bb6c], ebp
mov dword [0x55bb70], ebx
push str.LIST_RECT2
mov ecx, edi
call fcn.0043bdf0
test eax, eax
je 0x43b5e4
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x14]
call eax
mov esi, eax
push str.DOWN
mov ecx, esi
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.RIGHT
mov ecx, esi
mov edi, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push 0x503a80
mov ecx, esi
mov ebx, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.LEFT
mov ecx, esi
mov ebp, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
mov dword [0x55b874], edi
mov edi, dword [esp + 0x1c]
add esp, 4
mov dword [0x55b868], eax
mov dword [0x55b86c], ebp
mov dword [0x55b870], ebx
push str.LIST_RECT3
mov ecx, edi
call fcn.0043bdf0
test eax, eax
je 0x43b678
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x14]
call eax
mov esi, eax
push str.DOWN
mov ecx, esi
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.RIGHT
mov ecx, esi
mov edi, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push 0x503a80
mov ecx, esi
mov ebx, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.LEFT
mov ecx, esi
mov ebp, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
mov dword [0x55bb4c], edi
mov edi, dword [esp + 0x1c]
add esp, 4
mov dword [0x55bb40], eax
mov dword [0x55bb44], ebp
mov dword [0x55bb48], ebx
push str.DESC_START
mov ecx, edi
call fcn.0043bdf0
test eax, eax
je case.default.0x43a57a
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x14]
call eax
mov esi, eax
push 0x503934
mov ecx, esi
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push 0x503930
mov ecx, esi
mov edi, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
mov dword [0x55b850], eax
mov dword [0x55b854], edi
jmp 0x43b9ad
push str.DLG_POS
mov ecx, edi
call fcn.0043bdf0
test eax, eax
je 0x43b764
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x14]
call eax
mov esi, eax
push str.DOWN
mov ecx, esi
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.RIGHT
mov ecx, esi
mov edi, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push 0x503a80
mov ecx, esi
mov ebx, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.LEFT
mov ecx, esi
mov ebp, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
mov dword [0x55b99c], edi
mov edi, dword [esp + 0x1c]
add esp, 4
mov dword [0x55b990], eax
mov dword [0x55b994], ebp
mov dword [0x55b998], ebx
push str.IMAGE_POS
mov ecx, edi
call fcn.0043bdf0
test eax, eax
je 0x43b7f8
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x14]
call eax
mov esi, eax
push str.DOWN
mov ecx, esi
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.RIGHT
mov ecx, esi
mov edi, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push 0x503a80
mov ecx, esi
mov ebx, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.LEFT
mov ecx, esi
mov ebp, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
mov dword [0x55bb60], edi
mov edi, dword [esp + 0x1c]
add esp, 4
mov dword [0x55bb54], eax
mov dword [0x55bb58], ebp
mov dword [0x55bb5c], ebx
push str.NOTICE_POS
mov ecx, edi
call fcn.0043bdf0
test eax, eax
je 0x43b88c
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x14]
call eax
mov esi, eax
push str.DOWN
mov ecx, esi
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.RIGHT
mov ecx, esi
mov edi, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push 0x503a80
mov ecx, esi
mov ebx, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.LEFT
mov ecx, esi
mov ebp, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
mov dword [0x55ba3c], edi
mov edi, dword [esp + 0x1c]
add esp, 4
mov dword [0x55ba30], eax
mov dword [0x55ba34], ebp
mov dword [0x55ba38], ebx
push 0x503708
mov ecx, edi
call fcn.0043bdf0
test eax, eax
je 0x43b920
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x14]
call eax
mov esi, eax
push str.DOWN
mov ecx, esi
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.RIGHT
mov ecx, esi
mov edi, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push 0x503a80
mov ecx, esi
mov ebx, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.LEFT
mov ecx, esi
mov ebp, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
mov dword [0x55b8ac], edi
mov edi, dword [esp + 0x1c]
add esp, 4
mov dword [0x55b8a0], eax
mov dword [0x55b8a4], ebp
mov dword [0x55b8a8], ebx
push str.CANCEL
mov ecx, edi
call fcn.0043bdf0
test eax, eax
je case.default.0x43a57a
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x14]
call eax
mov esi, eax
push str.DOWN
mov ecx, esi
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.RIGHT
mov ecx, esi
mov edi, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push 0x503a80
mov ecx, esi
mov ebx, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
add esp, 4
push str.LEFT
mov ecx, esi
mov ebp, eax
call fcn.0043c5d0
push eax
call fcn.00476c14
mov dword [0x55bae0], eax
mov dword [0x55bae4], ebp
mov dword [0x55bae8], ebx
mov dword [0x55baec], edi
add esp, 4
mov ebx, dword [esp + 0x24]
add ebx, 1
cmp ebx, 6
mov dword [esp + 0x24], ebx
jl 0x43a54d
mov eax, dword [esp + 0x20]
add eax, 0xfffffff0
mov byte [esp + 0xe4], 0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x43b9ec
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0x64]
cmp eax, 0x56ec4c
mov dword [esp + 0xe4], 0xffffffff
mov dword [esp + 0x30], vtable.TiXmlDocument.0
je 0x43ba13
push eax
call fcn.0045818d
add esp, 4
lea ecx, [esp + 0x30]
call fcn.0043c490
mov al, 1
mov ecx, dword [esp + 0xdc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0xc4]
xor ecx, esp
call fcn.004752ab
add esp, 0xd4
ret