Function at 0x49a390
Capabilities:
Get graphical window text
Hide graphical window
Open clipboard
Write clipboard data

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x569795
mov eax, dword fs:[0]
push eax
sub esp, 0x3cc
mov eax, dword [0x661850]
xor eax, ebp
mov dword [ebp - 0x20], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x3b4], ecx
push str.Tue_Jul_28_15:38:22_2015
push 0x1494
push str.CInterface::OnLButtonUp
push str.GameProcessInterface.cpp
lea ecx, [ebp - 0xd]
call fcn.004024e0
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x3b4]
mov byte [eax + 0x78c], 0
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x1acc
call fcn.00516820
movzx ecx, al
test ecx, ecx
je 0x49b0a4
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x1acc
mov edx, dword [ebp - 0x3b4]
mov eax, dword [edx + 0x1acc]
mov edx, dword [eax + 0x24]
call edx
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
je 0x49b09f
mov eax, dword [ebp - 0x3b4]
mov ecx, dword [eax + 0x4330]
mov dword [ebp - 0x3b8], ecx
mov edx, dword [ebp - 0x3b8]
sub edx, 0xc
mov dword [ebp - 0x3b8], edx
cmp dword [ebp - 0x3b8], 0x22
ja case.0x49a47c.2
mov eax, dword [ebp - 0x3b8]
movzx ecx, byte [eax + 0x49c4e0]
jmp dword [ecx*4 + 0x49c494]
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x3bc], edx
cmp dword [ebp - 0x3bc], 2
je 0x49a4a0
cmp dword [ebp - 0x3bc], 4
je 0x49a4b3
jmp 0x49a4d0
mov byte [0x7bf61a], 1
call fcn.0040ada0
mov dword [0x7bf61c], eax
jmp 0x49a4d0
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x1acc
mov eax, dword [ebp - 0x3b4]
mov edx, dword [eax + 0x1acc]
mov eax, dword [edx + 0xc]
call eax
jmp case.0x49a47c.2
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x3c0], ecx
cmp dword [ebp - 0x3c0], 2
je 0x49a4f2
cmp dword [ebp - 0x3c0], 4
je 0x49a509
jmp 0x49a526
movzx edx, byte [0x7ada54]
test edx, edx
je 0x49a507
mov ecx, 0x6acf18
call fcn.00434910
jmp 0x49a526
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x1acc
mov eax, dword [ebp - 0x3b4]
mov edx, dword [eax + 0x1acc]
mov eax, dword [edx + 0xc]
call eax
jmp case.0x49a47c.2
cmp dword [ebp - 0x14], 2
jne 0x49a707
push 0x64
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x2330
push ecx
mov ecx, 0x7c0e48
call fcn.0043b450
push eax
call dword [sym.imp.USER32.dll_GetWindowTextA]
mov edx, dword [ebp - 0x3b4]
add edx, 0x2330
push edx
call fcn.00547d0c
add esp, 4
mov dword [ebp - 0x18], eax
push 5
push str.GOLD
mov eax, dword [ebp - 0x3b4]
add eax, 0x5a
push eax
call fcn.005482ba
add esp, 0xc
test eax, eax
jne 0x49a5c7
cmp dword [ebp - 0x18], 0
jne 0x49a5b4
mov ecx, dword [ebp - 0x3b4]
mov edx, dword [ecx + 0x92]
mov dword [ebp - 0x18], edx
cmp dword [ebp - 0x18], 0x2710
jle 0x49a5b4
mov dword [ebp - 0x18], 0x2710
mov eax, dword [ebp - 0x18]
push eax
mov ecx, 0x7c46b0
call fcn.00508a50
jmp 0x49a705
cmp dword [ebp - 0x18], 0
jne 0x49a611
mov ecx, dword [ebp - 0x3b4]
movzx edx, byte [ecx + 0xa7]
and edx, 0xff
movzx eax, dl
mov ecx, dword [ebp - 0x3b4]
movzx edx, byte [ecx + 0xa8]
and edx, 0xff
movzx ecx, dl
shl ecx, 8
or eax, ecx
movzx edx, ax
mov dword [ebp - 0x18], edx
cmp dword [ebp - 0x18], 0x64
jle 0x49a611
mov dword [ebp - 0x18], 0x64
cmp dword [ebp - 0x18], 1
jge 0x49a650
push 0
push 0
mov eax, dword [ebp - 0x3b4]
add eax, 0x5a
push eax
mov ecx, dword [ebp - 0x3b4]
mov edx, dword [ecx + 0x9c]
push edx
push 0x3e8
mov ecx, 0x7c46b0
call fcn.00505ca0
mov eax, dword [ebp - 0x3b4]
mov byte [eax + 0x4d], 1
jmp 0x49a705
push 0
mov ecx, dword [ebp - 0x18]
push ecx
mov edx, dword [ebp - 0x3b4]
add edx, 0x5a
push edx
mov eax, dword [ebp - 0x3b4]
mov ecx, dword [eax + 0x9c]
push ecx
push 0x44d
mov ecx, 0x7c46b0
call fcn.00505ca0
mov edx, dword [ebp - 0x3b4]
movzx eax, byte [edx + 0xa7]
and eax, 0xff
movzx ecx, al
mov edx, dword [ebp - 0x3b4]
movzx eax, byte [edx + 0xa8]
and eax, 0xff
movzx edx, al
shl edx, 8
or ecx, edx
movzx eax, cx
cmp eax, dword [ebp - 0x18]
jle 0x49a6fb
push 0
push 0
mov esi, dword [ebp - 0x3b4]
add esi, 0x5a
sub esp, 0x338
mov ecx, 0xce
mov edi, esp
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x4334
call fcn.004a2ba0
push 0x67e
push 0
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x4c
push ecx
call fcn.005454d0
add esp, 0xc
jmp 0x49a705
mov edx, dword [ebp - 0x3b4]
mov byte [edx + 0x4d], 1
jmp 0x49a74d
push 0
push 0
mov esi, dword [ebp - 0x3b4]
add esi, 0x5a
sub esp, 0x338
mov ecx, 0xce
mov edi, esp
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x4334
call fcn.004a2ba0
push 0x67e
push 0
mov eax, dword [ebp - 0x3b4]
add eax, 0x4c
push eax
call fcn.005454d0
add esp, 0xc
jmp case.0x49a47c.2
cmp dword [ebp - 0x14], 2
jne case.0x49a7d5.6
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x1acc
mov edx, dword [ebp - 0x3b4]
mov eax, dword [edx + 0x1acc]
mov edx, dword [eax + 0xc]
call edx
push 0x64
mov eax, dword [ebp - 0x3b4]
add eax, 0x2330
push eax
mov ecx, 0x7c0e48
call fcn.0043b450
push eax
call dword [sym.imp.USER32.dll_GetWindowTextA]
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x2330
push ecx
call fcn.00547d0c
add esp, 4
mov dword [ebp - 0x1c], eax
mov edx, dword [ebp - 0x3b4]
mov eax, dword [edx + 0x770]
mov dword [ebp - 0x3c4], eax
cmp dword [ebp - 0x3c4], 0xc
ja case.0x49a7d5.6
mov ecx, dword [ebp - 0x3c4]
jmp dword [ecx*4 + 0x49c504]
cmp dword [ebp - 0x1c], 0
jne 0x49a7e9
mov dword [ebp - 0x1c], 1
mov edx, dword [ebp - 0x1c]
push edx
mov eax, dword [ebp - 0x3b4]
mov ecx, dword [eax + 0x8a8b8]
push ecx
mov edx, dword [ebp - 0x3b4]
add edx, 0x8a876
push edx
mov eax, dword [ebp - 0x3b4]
mov ecx, dword [eax + 0x9fd8c]
push ecx
push 0x3f6
mov ecx, 0x7c46b0
call fcn.005080f0
jmp case.0x49a7d5.6
cmp dword [ebp - 0x1c], 0
jne 0x49a863
mov edx, dword [ebp - 0x3b4]
movzx eax, byte [edx + 0x8908d]
and eax, 0xff
movzx ecx, al
mov edx, dword [ebp - 0x3b4]
movzx eax, byte [edx + 0x8908e]
and eax, 0xff
movzx edx, al
shl edx, 8
or ecx, edx
movzx eax, cx
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
push ecx
mov edx, dword [ebp - 0x3b4]
mov eax, dword [edx + 0x89082]
push eax
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x89040
push ecx
mov edx, dword [ebp - 0x3b4]
mov eax, dword [edx + 0x9fd8c]
push eax
push 0x408
mov ecx, 0x7c46b0
call fcn.005080f0
jmp case.0x49a7d5.6
mov ecx, dword [ebp - 0x3b4]
mov edx, dword [ecx + 0x809dc]
imul edx, edx, 0x339
mov eax, dword [ebp - 0x3b4]
lea ecx, [eax + edx + 0x6fa1]
mov dword [ebp - 0x44], ecx
cmp dword [ebp - 0x1c], 0
jne 0x49a8f3
mov edx, dword [ebp - 0x44]
movzx eax, byte [edx + 0x4d]
and eax, 0xff
movzx ecx, al
mov edx, dword [ebp - 0x44]
movzx eax, byte [edx + 0x4e]
and eax, 0xff
movzx edx, al
shl edx, 8
or ecx, edx
movzx eax, cx
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
push ecx
mov edx, dword [ebp - 0x44]
mov eax, dword [edx + 0x42]
push eax
mov ecx, dword [ebp - 0x44]
push ecx
mov edx, dword [ebp - 0x3b4]
mov eax, dword [edx + 0x9fd8c]
push eax
push 0x407
mov ecx, 0x7c46b0
call fcn.005080f0
jmp case.0x49a7d5.6
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x2330
push ecx
push 0x40f
mov ecx, 0x7c46b0
call fcn.005085a0
jmp case.0x49a7d5.6
mov edx, dword [ebp - 0x3b4]
add edx, 0x2330
push edx
push 0x57e5d4
lea eax, [ebp - 0x40]
push eax
call fcn.005456a9
add esp, 0xc
lea ecx, [ebp - 0x40]
push ecx
mov ecx, 0x7c46b0
call fcn.005072e0
jmp case.0x49a7d5.6
mov byte [ebp - 0xbc], 0
push 0x77
push 0
lea edx, [ebp - 0xbb]
push edx
call fcn.005454d0
add esp, 0xc
mov eax, dword [ebp - 0x3b4]
add eax, 0x2330
push eax
push 0x57e5c8
lea ecx, [ebp - 0xbc]
push ecx
call fcn.005456a9
add esp, 0xc
lea edx, [ebp - 0xbc]
push edx
mov ecx, 0x7c46b0
call fcn.005072e0
jmp case.0x49a7d5.6
mov eax, dword [ebp - 0x1c]
push eax
mov ecx, dword [ebp - 0x3b4]
call fcn.00499fb0
jmp case.0x49a7d5.6
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x2330
push ecx
push 0x40e
mov ecx, 0x7c46b0
call fcn.005085a0
jmp case.0x49a7d5.6
mov edx, dword [ebp - 0x1c]
push edx
mov ecx, 0x79b890
call fcn.004e6e90
jmp case.0x49a47c.2
cmp dword [ebp - 0x14], 2
jne 0x49aa9d
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x1acc
mov eax, dword [ebp - 0x3b4]
mov edx, dword [eax + 0x1acc]
mov eax, dword [edx + 0xc]
call eax
push 0x64
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x2330
push ecx
mov ecx, 0x7c0e48
call fcn.0043b450
push eax
call dword [sym.imp.USER32.dll_GetWindowTextA]
mov edx, dword [ebp - 0x3b4]
add edx, 0x2330
push edx
mov eax, dword [ebp - 0x3b4]
add eax, 0x9fd90
push eax
push str._s_r_s
lea ecx, [ebp - 0xf0]
push ecx
call fcn.005456a9
add esp, 0x10
lea edx, [ebp - 0xf0]
push edx
push 0
mov eax, dword [ebp - 0x3b4]
mov ecx, dword [eax + 0x9fd8c]
push ecx
push 0x3f3
mov ecx, 0x7c46b0
call fcn.00508040
mov edx, dword [ebp - 0x3b4]
cmp dword [edx + 0x770], 7
jne 0x49aae2
push 0
push 0
push 0xcc
mov ecx, 0x7c0e48
call fcn.0043b450
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
push 0x78
mov ecx, 0x7c0e48
call fcn.005121c0
mov eax, dword [ebp - 0x3b4]
mov dword [eax + 0x770], 0xffffffff
jmp case.0x49a47c.2
cmp dword [ebp - 0x14], 0x10
jne 0x49ac67
push 0x2000
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x2330
push ecx
mov ecx, 0x785f40
call fcn.0043ba80
push eax
call dword [sym.imp.USER32.dll_GetWindowTextA]
movzx edx, byte [0x78cc38]
test edx, edx
jne 0x49ab3f
mov eax, dword [ebp - 0x3b4]
add eax, 0x2330
push eax
push 0x410
mov ecx, 0x7c46b0
call fcn.005085a0
jmp 0x49ac54
mov dword [ebp - 0xf8], 0
mov byte [ebp - 0xf1], 1
mov dword [ebp - 0xfc], 0
jmp 0x49ab6b
mov ecx, dword [ebp - 0xfc]
add ecx, 1
mov dword [ebp - 0xfc], ecx
mov edx, dword [ebp - 0x3b4]
add edx, 0x2330
push edx
call fcn.00545a90
add esp, 4
cmp dword [ebp - 0xfc], eax
jae 0x49ac2d
mov eax, dword [ebp - 0x3b4]
add eax, dword [ebp - 0xfc]
movsx ecx, byte [eax + 0x2330]
cmp ecx, 0x20
jne 0x49abb3
mov edx, dword [ebp - 0xf8]
add edx, 1
mov dword [ebp - 0xf8], edx
mov eax, dword [ebp - 0x3b4]
add eax, dword [ebp - 0xfc]
movsx ecx, byte [eax + 0x2330]
cmp ecx, 0xd
jne 0x49abd5
mov dword [ebp - 0xf8], 0
cmp dword [ebp - 0xf8], 4
jle 0x49ac28
push 6
call fcn.004764c0
add esp, 4
mov dword [ebp - 0x100], eax
push 0
call fcn.004764c0
add esp, 4
mov dword [ebp - 0x104], eax
push 0
push 0
push 0x57e588
mov edx, dword [ebp - 0x100]
push edx
mov eax, dword [ebp - 0x104]
push eax
mov ecx, 0x6eeef8
call fcn.0048ce80
mov byte [ebp - 0xf1], 0
jmp 0x49ac2d
jmp 0x49ab5c
movzx ecx, byte [ebp - 0xf1]
test ecx, ecx
je 0x49ac54
mov edx, dword [ebp - 0x3b4]
add edx, 0x2330
push edx
push 0x411
mov ecx, 0x7c46b0
call fcn.005085a0
push 0
mov ecx, 0x785f40
call fcn.0043ba80
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
cmp dword [ebp - 0x14], 0x20
jne 0x49ac93
push 0
mov ecx, 0x785f40
call fcn.0043ba80
push eax
call dword [sym.imp.USER32.dll_SetWindowTextA]
push 0
mov ecx, 0x785f40
call fcn.0043ba80
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
jmp case.0x49a47c.2
mov eax, dword [ebp - 0x14]
push eax
mov ecx, dword [ebp - 0x3b4]
call fcn.0049e240
jmp case.0x49a47c.2
push 0x64
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x2330
push ecx
mov ecx, 0x7c0e48
call fcn.0043b450
push eax
call dword [sym.imp.USER32.dll_GetWindowTextA]
cmp dword [ebp - 0x14], 2
jne 0x49ad0c
movzx edx, byte [0x7ac64c]
test edx, edx
je 0x49acf5
mov eax, dword [ebp - 0x3b4]
add eax, 0x2330
push eax
mov ecx, 0x7c46b0
call fcn.005083c0
jmp 0x49ad0c
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x2330
push ecx
mov ecx, 0x7c46b0
call fcn.00508260
jmp case.0x49a47c.2
push 0x64
mov edx, dword [ebp - 0x3b4]
add edx, 0x2330
push edx
mov ecx, 0x7c0e48
call fcn.0043b450
push eax
call dword [sym.imp.USER32.dll_GetWindowTextA]
cmp dword [ebp - 0x14], 2
jne 0x49ad72
movzx eax, byte [0x7ac64c]
test eax, eax
je 0x49ad5b
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x2330
push ecx
mov ecx, 0x7c46b0
call fcn.005083c0
jmp 0x49ad72
mov edx, dword [ebp - 0x3b4]
add edx, 0x2330
push edx
mov ecx, 0x7c46b0
call fcn.00508260
jmp case.0x49a47c.2
push 0x64
mov eax, dword [ebp - 0x3b4]
add eax, 0x2330
push eax
mov ecx, 0x7c0e48
call fcn.0043b450
push eax
call dword [sym.imp.USER32.dll_GetWindowTextA]
cmp dword [ebp - 0x14], 2
jne 0x49adb3
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x2330
push ecx
mov ecx, 0x7c46b0
call fcn.00508460
jmp case.0x49a47c.2
cmp dword [ebp - 0x14], 2
jne 0x49adf4
push 0
push 0
mov edx, dword [ebp - 0x3b4]
add edx, 0x5a
push edx
mov eax, dword [ebp - 0x3b4]
mov ecx, dword [eax + 0x9c]
push ecx
push 0x3e8
mov ecx, 0x7c46b0
call fcn.00505ca0
mov edx, dword [ebp - 0x3b4]
mov byte [edx + 0x4d], 1
jmp 0x49ae3a
push 0
push 0
mov esi, dword [ebp - 0x3b4]
add esi, 0x5a
sub esp, 0x338
mov ecx, 0xce
mov edi, esp
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x4334
call fcn.004a2ba0
push 0x67e
push 0
mov eax, dword [ebp - 0x3b4]
add eax, 0x4c
push eax
call fcn.005454d0
add esp, 0xc
jmp case.0x49a47c.2
cmp dword [ebp - 0x14], 2
jne 0x49ae83
push 0x64
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x2330
push ecx
mov ecx, 0x7c0e48
call fcn.0043b450
push eax
call dword [sym.imp.USER32.dll_GetWindowTextA]
mov edx, dword [ebp - 0x3b4]
add edx, 0x2330
push edx
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x8c2c0
call fcn.00474900
jmp case.0x49a47c.2
cmp dword [ebp - 0x14], 2
jne 0x49aed9
push 0x64
mov eax, dword [ebp - 0x3b4]
add eax, 0x2330
push eax
mov ecx, 0x7c0e48
call fcn.0043b450
push eax
call dword [sym.imp.USER32.dll_GetWindowTextA]
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x2330
push ecx
call fcn.00547d0c
add esp, 4
mov dword [ebp - 0x108], eax
mov edx, dword [ebp - 0x108]
push edx
mov ecx, 0x79f2e8
call fcn.005312d0
jmp case.0x49a47c.2
cmp dword [ebp - 0x14], 2
jne 0x49aef5
mov ecx, dword [ebp - 0x3b4]
add ecx, 0xad308
call fcn.004f91a0
jmp case.0x49a47c.2
cmp dword [ebp - 0x14], 2
jne 0x49af52
push 0x64
mov eax, dword [ebp - 0x3b4]
add eax, 0x2330
push eax
mov ecx, 0x7c0e48
call fcn.0043b450
push eax
call dword [sym.imp.USER32.dll_GetWindowTextA]
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x2330
push ecx
call fcn.00547d0c
add esp, 4
mov dword [ebp - 0x10c], eax
mov edx, dword [ebp - 0x10c]
push edx
mov ecx, dword [ebp - 0x3b4]
add ecx, 0xb63e0
call fcn.0045e580
jmp case.0x49a47c.2
cmp dword [ebp - 0x14], 2
jne 0x49af6e
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x4334
call fcn.004a5940
jmp case.0x49a47c.2
cmp dword [ebp - 0x14], 2
jne 0x49afcb
push 0x64
mov eax, dword [ebp - 0x3b4]
add eax, 0x2330
push eax
mov ecx, 0x7c0e48
call fcn.0043b450
push eax
call dword [sym.imp.USER32.dll_GetWindowTextA]
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x2330
push ecx
call fcn.00547d0c
add esp, 4
mov dword [ebp - 0x110], eax
mov edx, dword [ebp - 0x110]
push edx
mov ecx, dword [ebp - 0x3b4]
add ecx, 0xa34e8
call fcn.004ed720
jmp case.0x49a47c.2
cmp dword [ebp - 0x14], 2
jne case.0x49a47c.2
push 0x64
mov eax, dword [ebp - 0x3b4]
add eax, 0x2330
push eax
mov ecx, 0x7c0e48
call fcn.0043b450
push eax
call dword [sym.imp.USER32.dll_GetWindowTextA]
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x2330
push ecx
call fcn.00547d0c
add esp, 4
mov dword [ebp - 0x114], eax
mov edx, dword [ebp - 0x114]
push edx
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x4334
call fcn.004a5a60
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x1acc
mov eax, dword [ebp - 0x3b4]
mov edx, dword [eax + 0x1acc]
mov eax, dword [edx + 0xc]
call eax
mov dword [0x6f3228], 0
push 0x78
mov ecx, 0x7c0e48
call fcn.005121c0
mov byte [0x7c0e68], 0
push 0
mov ecx, 0x7c0e48
call fcn.0043b450
push eax
call dword [sym.imp.USER32.dll_SetWindowTextA]
push 0
mov ecx, 0x7c0e48
call fcn.0043b450
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
mov ecx, dword [ebp - 0x3b4]
mov dword [ecx + 0x770], 0xffffffff
mov ecx, 0x6acf18
call fcn.0041d5f0
jmp 0x49c2e2
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x3b4]
add ecx, 0xb90f0
push ecx
call dword [sym.imp.USER32.dll_PtInRect]
test eax, eax
je 0x49b10f
movzx edx, byte [0x66adac]
test edx, edx
jne 0x49b10f
mov eax, dword [ebp - 0x3b4]
movzx ecx, byte [eax + 0xb910c]
neg ecx
sbb ecx, ecx
add ecx, 1
mov edx, dword [ebp - 0x3b4]
mov byte [edx + 0xb910c], cl
mov byte [ebp - 0x3a5], 1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xd]
call fcn.00402620
mov al, byte [ebp - 0x3a5]
jmp 0x49c477
mov eax, dword [ebp - 0x3b4]
movzx ecx, byte [eax + 0xb910c]
test ecx, ecx
je 0x49b4e4
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x3b4]
add ecx, 0xb9110
push ecx
call dword [sym.imp.USER32.dll_PtInRect]
test eax, eax
je 0x49b4e4
mov dword [ebp - 0x11c], 0
jmp 0x49b162
mov edx, dword [ebp - 0x11c]
add edx, 1
mov dword [ebp - 0x11c], edx
cmp dword [ebp - 0x11c], 6
jge 0x49b4c3
mov dword [ebp - 0x120], 0
jmp 0x49b18a
mov eax, dword [ebp - 0x120]
add eax, 1
mov dword [ebp - 0x120], eax
cmp dword [ebp - 0x120], 0xf
jge 0x49b4be
mov ecx, dword [ebp - 0x3b4]
mov edx, dword [ecx + 0xb9110]
mov eax, dword [ebp - 0x120]
imul eax, eax, 0x18
lea ecx, [edx + eax + 5]
mov dword [ebp - 0x130], ecx
mov edx, dword [ebp - 0x3b4]
mov eax, dword [edx + 0xb9114]
mov ecx, dword [ebp - 0x11c]
imul ecx, ecx, 0x18
lea edx, [eax + ecx + 5]
mov dword [ebp - 0x12c], edx
mov eax, dword [ebp - 0x3b4]
mov ecx, dword [eax + 0xb9110]
mov edx, dword [ebp - 0x120]
imul edx, edx, 0x18
lea eax, [ecx + edx + 0x1d]
mov dword [ebp - 0x128], eax
mov ecx, dword [ebp - 0x3b4]
mov edx, dword [ecx + 0xb9114]
mov eax, dword [ebp - 0x11c]
imul eax, eax, 0x18
lea ecx, [edx + eax + 0x1d]
mov dword [ebp - 0x124], ecx
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
lea ecx, [ebp - 0x130]
push ecx
call dword [sym.imp.USER32.dll_PtInRect]
test eax, eax
je 0x49b4b9
cmp dword [0x6658cc], 0
jne 0x49b276
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x9e544
call fcn.0043b9f0
movzx edx, al
test edx, edx
jne 0x49b276
mov ecx, dword [ebp - 0x3b4]
add ecx, 0xa6594
call fcn.0043b9f0
movzx eax, al
test eax, eax
jne 0x49b276
push 0x15
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
mov ecx, 0x7c0e48
call fcn.0043b470
movzx ecx, al
test ecx, ecx
jne 0x49b370
mov ecx, 0x6acf18
call fcn.0041d5f0
push 5
mov ecx, 0x7c0e48
call fcn.0043b450
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
mov ecx, 0x7c0e48
call fcn.0043b450
push eax
call dword [sym.imp.USER32.dll_SetFocus]
movzx edx, byte [0x66aa50]
mov dword [ebp - 0x3c8], edx
cmp dword [ebp - 0x3c8], 4
ja case.default.0x49b2d9
mov eax, dword [ebp - 0x3c8]
jmp dword [eax*4 + 0x49c538]
push 0x574a9b
mov ecx, 0x7c0e48
call fcn.0043b450
push eax
call dword [sym.imp.USER32.dll_SetWindowTextA]
jmp case.default.0x49b2d9
push 0x57742c
mov ecx, 0x7c0e48
call fcn.0043b450
push eax
call dword [sym.imp.USER32.dll_SetWindowTextA]
jmp case.default.0x49b2d9
push 0x577428
mov ecx, 0x7c0e48
call fcn.0043b450
push eax
call dword [sym.imp.USER32.dll_SetWindowTextA]
jmp case.default.0x49b2d9
push 0x577424
mov ecx, 0x7c0e48
call fcn.0043b450
push eax
call dword [sym.imp.USER32.dll_SetWindowTextA]
jmp case.default.0x49b2d9
push 0x577420
mov ecx, 0x7c0e48
call fcn.0043b450
push eax
call dword [sym.imp.USER32.dll_SetWindowTextA]
push 0xffffffffffffffff
push 0xfffffffffffffffe
push 0xb1
mov ecx, 0x7c0e48
call fcn.0043b450
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov ecx, 0x69ec08
call fcn.004edfb0
push eax
call dword [sym.imp.USER32.dll_OpenClipboard]
call dword [sym.imp.USER32.dll_EmptyClipboard]
mov ecx, dword [ebp - 0x11c]
imul ecx, ecx, 0xf
add ecx, dword [ebp - 0x120]
mov edx, dword [ecx*4 + 0x6612c8]
mov dword [ebp - 0x140], edx
mov eax, dword [ebp - 0x140]
push eax
call fcn.00545a90
add esp, 4
mov dword [ebp - 0x13c], eax
mov ecx, dword [ebp - 0x13c]
add ecx, 3
push ecx
push 2
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov dword [ebp - 0x134], eax
cmp dword [ebp - 0x134], 0
jne 0x49b400
call dword [sym.imp.USER32.dll_CloseClipboard]
mov byte [ebp - 0x3a6], 1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xd]
call fcn.00402620
mov al, byte [ebp - 0x3a6]
jmp 0x49c477
mov edx, dword [ebp - 0x134]
push edx
call dword [sym.imp.KERNEL32.dll_GlobalLock]
mov dword [ebp - 0x138], eax
mov eax, dword [ebp - 0x138]
mov byte [eax], 0x5b
mov ecx, dword [ebp - 0x13c]
push ecx
mov edx, dword [ebp - 0x140]
push edx
mov eax, dword [ebp - 0x138]
add eax, 1
push eax
call fcn.00545160
add esp, 0xc
mov ecx, dword [ebp - 0x138]
add ecx, dword [ebp - 0x13c]
mov byte [ecx + 1], 0x5d
mov edx, dword [ebp - 0x138]
add edx, dword [ebp - 0x13c]
mov byte [edx + 2], 0
mov eax, dword [ebp - 0x134]
push eax
call dword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov ecx, dword [ebp - 0x134]
push ecx
push 1
call dword [sym.imp.USER32.dll_SetClipboardData]
call dword [sym.imp.USER32.dll_CloseClipboard]
push 0
push 0
push 0x302
mov ecx, 0x7c0e48
call fcn.0043b450
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov byte [ebp - 0x3a7], 1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xd]
call fcn.00402620
mov al, byte [ebp - 0x3a7]
jmp 0x49c477
jmp 0x49b17b
jmp 0x49b153
mov byte [ebp - 0x3a8], 1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xd]
call fcn.00402620
mov al, byte [ebp - 0x3a8]
jmp 0x49c477
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x3b4]
call fcn.00495b70
mov dword [ebp - 0x118], eax
cmp dword [ebp - 0x118], 0xffffffff
je 0x49ba32
mov ecx, dword [ebp - 0x118]
mov dword [ebp - 0x3cc], ecx
cmp dword [ebp - 0x3cc], 0x1b
ja case.0x49b529.4
mov edx, dword [ebp - 0x3cc]
jmp dword [edx*4 + 0x49c54c]
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 8]
push ecx
mov edx, dword [ebp - 0x3b4]
add edx, 0x4c
push edx
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x4334
call fcn.004a4220
movzx eax, al
test eax, eax
je 0x49b567
push 0
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp case.0x49b529.4
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 8]
push edx
mov eax, dword [ebp - 0x3b4]
add eax, 0x4c
push eax
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x80a00
call fcn.004fecf0
movzx ecx, al
test ecx, ecx
je 0x49b5a3
push 1
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp case.0x49b529.4
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x88700
call fcn.00500670
movzx ecx, al
test ecx, ecx
je 0x49b5d5
push 2
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp case.0x49b529.4
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x8c2c0
call fcn.004742f0
movzx ecx, al
test ecx, ecx
je 0x49b607
push 3
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp case.0x49b529.4
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x8a3fc
call fcn.00463e60
movzx ecx, al
test ecx, ecx
je 0x49b639
push 0xf
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp case.0x49b529.4
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x97048
call fcn.00478e80
movzx ecx, al
test ecx, ecx
je 0x49b66b
push 5
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp case.0x49b529.4
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x9dd44
call fcn.00477450
movzx ecx, al
test ecx, ecx
je 0x49b69d
push 6
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp case.0x49b529.4
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x9e544
call fcn.0046a8b0
movzx ecx, al
test ecx, ecx
je 0x49b6cf
push 8
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp case.0x49b529.4
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x4c
push ecx
mov ecx, dword [ebp - 0x3b4]
add ecx, 0xa0f14
call fcn.004e2c40
movzx edx, al
test edx, edx
je 0x49b70b
push 0xb
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp case.0x49b529.4
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 8]
push ecx
mov ecx, dword [ebp - 0x3b4]
add ecx, 0xa24ac
call fcn.004d9be0
movzx edx, al
test edx, edx
je 0x49b73d
push 0xc
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp case.0x49b529.4
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 8]
push ecx
mov ecx, dword [ebp - 0x3b4]
add ecx, 0xa34e8
call fcn.004ebc50
movzx edx, al
test edx, edx
je 0x49b76f
push 0x13
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp case.0x49b529.4
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 8]
push ecx
mov ecx, dword [ebp - 0x3b4]
add ecx, 0xa31d8
call fcn.0048a5d0
movzx edx, al
test edx, edx
je 0x49b7a1
push 0xd
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp case.0x49b529.4
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 8]
push ecx
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x9fcdc
call fcn.004d40c0
movzx edx, al
test edx, edx
je 0x49b7d3
push 9
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp case.0x49b529.4
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 8]
push ecx
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x87b78
call fcn.004c1110
jmp case.0x49b529.4
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x83b14
call fcn.004f0d70
movzx ecx, al
test ecx, ecx
je 0x49b823
push 0x10
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp case.0x49b529.4
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x3b4]
add ecx, 0xa7fc4
call fcn.00471130
movzx ecx, al
test ecx, ecx
je 0x49b855
push 0x11
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp case.0x49b529.4
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x3b4]
add ecx, 0xac998
call fcn.004e5b20
movzx ecx, al
test ecx, ecx
je 0x49b887
push 0x12
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp case.0x49b529.4
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x3b4]
add ecx, 0xad308
call fcn.004f8550
movzx ecx, al
test ecx, ecx
je 0x49b8b9
push 0x17
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp case.0x49b529.4
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x3b4]
add ecx, 0xb03f0
call fcn.005313f0
movzx ecx, al
test ecx, ecx
je 0x49b8eb
push 0x18
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp case.0x49b529.4
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x3b4]
add ecx, 0xa5904
call fcn.004be220
movzx ecx, al
test ecx, ecx
je 0x49b91d
push 0x14
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp case.0x49b529.4
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x3b4]
add ecx, 0xa6594
call fcn.00532d80
movzx ecx, al
test ecx, ecx
je 0x49b94f
push 0x15
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp case.0x49b529.4
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x3b4]
add ecx, 0xa6774
call fcn.004ba200
movzx ecx, al
test ecx, ecx
je 0x49b981
push 0x16
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp case.0x49b529.4
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x3b4]
add ecx, 0xb33d0
call fcn.004d04d0
movzx ecx, al
test ecx, ecx
je 0x49b9b3
push 0x19
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp case.0x49b529.4
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x3b4]
add ecx, 0xb63e0
call fcn.0045e710
movzx ecx, al
test ecx, ecx
je 0x49b9e2
push 0x1a
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp case.0x49b529.4
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x3b4]
add ecx, 0xb6ae0
call fcn.0046da00
movzx ecx, al
test ecx, ecx
je case.0x49b529.4
push 0x1b
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
mov byte [ebp - 0x3a9], 1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xd]
call fcn.00402620
mov al, byte [ebp - 0x3a9]
jmp 0x49c477
cmp dword [0x7bc21c], 0
je 0x49bad5
push str.CHero
mov edx, dword [0x7bc21c]
mov eax, dword [edx]
mov ecx, dword [0x7bc21c]
mov edx, dword [eax + 0xc]
call edx
movzx eax, al
test eax, eax
je 0x49bad5
mov ecx, dword [0x7bc21c]
mov dword [ebp - 0x144], ecx
mov edx, dword [ebp - 0x144]
movzx eax, byte [edx + 0x300d]
test eax, eax
je 0x49bad5
lea ecx, [ebp - 0x150]
call fcn.0043b330
mov ecx, dword [ebp - 0x144]
mov edx, dword [ecx + 4]
mov dword [ebp - 0x150], edx
mov eax, 0xea66
mov word [ebp - 0x14c], ax
push 0
lea ecx, [ebp - 0x150]
push ecx
mov ecx, 0x7c46b0
call fcn.005063f0
mov byte [ebp - 0x3aa], 1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xd]
call fcn.00402620
mov al, byte [ebp - 0x3aa]
jmp 0x49c477
mov edx, dword [0x6658cc]
mov dword [ebp - 0x3d0], edx
cmp dword [ebp - 0x3d0], 0
je 0x49bafc
cmp dword [ebp - 0x3d0], 1
je 0x49bd9a
jmp 0x49c1f8
mov dword [ebp - 0x154], 0
jmp 0x49bb17
mov eax, dword [ebp - 0x154]
add eax, 1
mov dword [ebp - 0x154], eax
cmp dword [ebp - 0x154], 8
jge 0x49bc62
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 8]
push edx
mov eax, dword [ebp - 0x154]
imul eax, eax, 0x130
mov ecx, dword [ebp - 0x154]
imul ecx, ecx, 0x130
mov edx, dword [ebp - 0x3b4]
lea ecx, [edx + ecx + 0x794]
mov edx, dword [ebp - 0x3b4]
mov eax, dword [edx + eax + 0x794]
mov edx, dword [eax + 0xc]
call edx
movzx eax, al
test eax, eax
je 0x49bc5d
mov ecx, dword [ebp - 0x154]
mov dword [ebp - 0x3d4], ecx
cmp dword [ebp - 0x3d4], 7
ja case.default.0x49bb8d
mov edx, dword [ebp - 0x3d4]
jmp dword [edx*4 + 0x49c5bc]
push 0xe
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp case.default.0x49bb8d
push 0xb
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp case.default.0x49bb8d
push 0x14
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp case.default.0x49bb8d
lea ecx, [ebp - 0x160]
call fcn.0043b330
push 0
push 0
push 0
push 0
push 0x401
lea eax, [ebp - 0x160]
push eax
call fcn.00509d80
push 0
lea ecx, [ebp - 0x160]
push ecx
mov ecx, 0x7c46b0
call fcn.005063f0
jmp case.default.0x49bb8d
push 0x57e580
mov ecx, 0x7c46b0
call fcn.005072e0
jmp case.default.0x49bb8d
push 0
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp case.default.0x49bb8d
push 0x16
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp case.default.0x49bb8d
push 1
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
mov byte [ebp - 0x3ab], 1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xd]
call fcn.00402620
mov al, byte [ebp - 0x3ab]
jmp 0x49c477
jmp 0x49bb08
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x3b4]
add ecx, 0xb908c
push ecx
call dword [sym.imp.USER32.dll_PtInRect]
test eax, eax
je 0x49bca4
mov edx, dword [ebp - 0x3b4]
mov eax, dword [edx + 0xb9100]
add eax, 1
cdq
mov ecx, 3
idiv ecx
mov eax, dword [ebp - 0x3b4]
mov dword [eax + 0xb9100], edx
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 8]
push edx
mov eax, dword [ebp - 0x3b4]
add eax, 0x6dc
push eax
call dword [sym.imp.USER32.dll_PtInRect]
test eax, eax
je 0x49bd95
mov ecx, dword [ebp - 0x3b4]
movzx edx, byte [ecx + 0x6ec]
test edx, edx
jne 0x49bd46
push 0
push 0x43
mov eax, dword [ebp - 0x3b4]
mov ecx, dword [eax + 0x34]
call fcn.0053b180
movzx ecx, al
test ecx, ecx
je 0x49bd0c
mov edx, dword [ebp - 0x3b4]
mov eax, dword [edx + 0x34]
mov ecx, dword [eax + 0x63]
movsx edx, word [ecx + 2]
mov eax, dword [ebp - 0x3b4]
mov dword [eax + 0x6fc], edx
mov ecx, dword [ebp - 0x3b4]
mov byte [ecx + 0x6ec], 1
mov edx, dword [ebp - 0x3b4]
mov byte [edx + 0x6f4], 1
mov eax, dword [ebp - 0x3b4]
mov byte [eax + 0x700], 1
call fcn.0040ada0
mov ecx, dword [ebp - 0x3b4]
mov dword [ecx + 0x6f0], eax
jmp 0x49bd95
push 0
push 0x44
mov edx, dword [ebp - 0x3b4]
mov ecx, dword [edx + 0x34]
call fcn.0053b180
movzx eax, al
test eax, eax
je 0x49bd7b
mov ecx, dword [ebp - 0x3b4]
mov edx, dword [ecx + 0x34]
mov eax, dword [edx + 0x63]
movsx ecx, word [eax + 2]
mov edx, dword [ebp - 0x3b4]
mov dword [edx + 0x6fc], ecx
mov eax, dword [ebp - 0x3b4]
mov byte [eax + 0x6f4], 1
mov ecx, dword [ebp - 0x3b4]
mov byte [ecx + 0x700], 0
jmp 0x49c1f8
mov edx, dword [ebp - 0x3b4]
movzx eax, byte [edx + 0x790]
cmp eax, 2
jne 0x49be9b
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 8]
push edx
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x1a94
call fcn.004d1100
movzx eax, al
test eax, eax
je 0x49bdf1
mov byte [ebp - 0x3ac], 1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xd]
call fcn.00402620
mov al, byte [ebp - 0x3ac]
jmp 0x49c477
mov ecx, dword [ebp - 0x3b4]
mov edx, dword [ecx + 0xb9108]
add edx, 0x216
mov dword [ebp - 0x170], edx
movzx eax, word [0x6658dc]
sub eax, 0x72
mov dword [ebp - 0x16c], eax
mov ecx, dword [ebp - 0x3b4]
mov edx, dword [ecx + 0xb9108]
add edx, 0x266
mov dword [ebp - 0x168], edx
movzx eax, word [0x6658dc]
sub eax, 0xe
mov dword [ebp - 0x164], eax
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 8]
push edx
lea eax, [ebp - 0x170]
push eax
call dword [sym.imp.USER32.dll_PtInRect]
test eax, eax
je 0x49be9b
mov ecx, dword [ebp - 0x3b4]
movzx edx, byte [ecx + 0xb9120]
neg edx
sbb edx, edx
add edx, 1
mov eax, dword [ebp - 0x3b4]
mov byte [eax + 0xb9120], dl
mov byte [ebp - 0x3ad], 1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xd]
call fcn.00402620
mov al, byte [ebp - 0x3ad]
jmp 0x49c477
mov dword [ebp - 0x174], 0
jmp 0x49beb6
mov ecx, dword [ebp - 0x174]
add ecx, 1
mov dword [ebp - 0x174], ecx
cmp dword [ebp - 0x174], 0x10
jge 0x49c1f8
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x174]
imul ecx, ecx, 0x130
mov edx, dword [ebp - 0x174]
imul edx, edx, 0x130
mov eax, dword [ebp - 0x3b4]
lea edx, [eax + edx + 0x794]
mov eax, dword [ebp - 0x3b4]
mov eax, dword [eax + ecx + 0x794]
mov ecx, edx
mov edx, dword [eax + 0xc]
call edx
movzx eax, al
test eax, eax
je 0x49c1f3
mov ecx, dword [ebp - 0x174]
mov dword [ebp - 0x3d8], ecx
cmp dword [ebp - 0x3d8], 0xf
ja case.default.0x49bf2e
mov edx, dword [ebp - 0x3d8]
jmp dword [edx*4 + 0x49c5dc]
push 0xe
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp case.default.0x49bf2e
push 0xb
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp case.default.0x49bf2e
push 0xc
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp case.default.0x49bf2e
call fcn.0040ada0
sub eax, dword [0x66aa98]
cmp eax, 0x1388
jbe 0x49bfb1
mov ecx, dword [ebp - 0x3b4]
add ecx, 0xa52f0
call fcn.0043c1c0
push 0
mov ecx, 0x7c46b0
call fcn.005073d0
push 0x13
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
call fcn.0040ada0
mov dword [0x66aa98], eax
jmp case.default.0x49bf2e
movzx eax, byte [0x7ab02d]
test eax, eax
je 0x49bfd0
push 0x18
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp 0x49bffa
lea ecx, [ebp - 0x180]
call fcn.0043b330
mov ecx, 0xea60
mov word [ebp - 0x17c], cx
push 0
lea edx, [ebp - 0x180]
push edx
mov ecx, 0x7c46b0
call fcn.005063f0
jmp case.default.0x49bf2e
lea ecx, [ebp - 0x18c]
call fcn.0043b330
push 0
push 0
push 0
push 0
push 0x401
lea eax, [ebp - 0x18c]
push eax
call fcn.00509d80
push 0
lea ecx, [ebp - 0x18c]
push ecx
mov ecx, 0x7c46b0
call fcn.005063f0
jmp case.default.0x49bf2e
push 0x40c
mov ecx, 0x7c46b0
call fcn.00508500
jmp case.default.0x49bf2e
mov edx, dword [ebp - 0x3b4]
movzx eax, byte [edx + 0x9dd78]
test eax, eax
jne 0x49c06f
push 0x438
mov ecx, 0x7c46b0
call fcn.00508500
push 6
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp case.default.0x49bf2e
push 0x57e580
mov ecx, 0x7c46b0
call fcn.005072e0
jmp case.default.0x49bf2e
push 0
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp case.default.0x49bf2e
mov ecx, dword [ebp - 0x3b4]
movzx edx, byte [ecx + 0x1ac8]
neg edx
sbb edx, edx
add edx, 1
mov eax, dword [ebp - 0x3b4]
mov byte [eax + 0x1ac8], dl
jmp case.default.0x49bf2e
mov ecx, dword [ebp - 0x3b4]
movzx edx, byte [ecx + 0x790]
cmp edx, 2
jne 0x49c0f8
mov eax, dword [ebp - 0x3b4]
mov byte [eax + 0x790], 1
push 8
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp case.default.0x49bf2e
mov ecx, dword [ebp - 0x3b4]
mov dword [ecx + 0x4330], 0xc
push 0x5773dc
push 0x575830
lea edx, [ebp - 0x294]
push edx
call fcn.005456a9
add esp, 0xc
push 0x1a4
push 2
lea eax, [ebp - 0x294]
push eax
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x1acc
call fcn.00513b70
jmp case.default.0x49bf2e
movzx ecx, byte [0x7d62b5]
test ecx, ecx
jne 0x49c19f
mov edx, dword [ebp - 0x3b4]
mov dword [edx + 0x4330], 0xd
push 0x577374
push 0x575830
lea eax, [ebp - 0x39c]
push eax
call fcn.005456a9
add esp, 0xc
push 0x1a4
push 2
lea ecx, [ebp - 0x39c]
push ecx
mov ecx, dword [ebp - 0x3b4]
add ecx, 0x1acc
call fcn.00513b70
jmp 0x49c1b4
movzx edx, byte [0x7ada54]
test edx, edx
je 0x49c1b4
mov ecx, 0x6acf18
call fcn.00434910
jmp case.default.0x49bf2e
push 0x16
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
jmp case.default.0x49bf2e
push 1
mov ecx, dword [ebp - 0x3b4]
call fcn.00496ec0
mov byte [ebp - 0x3ae], 1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xd]
call fcn.00402620
mov al, byte [ebp - 0x3ae]
jmp 0x49c477
jmp 0x49bea7
mov eax, dword [ebp - 0x3b4]
mov byte [eax + 0x80a37], 0
mov ecx, dword [ebp - 0x3b4]
mov byte [ecx + 0xa0f4b], 0
mov edx, dword [ebp - 0x3b4]
mov byte [edx + 0x436b], 0
mov eax, dword [ebp - 0x3b4]
mov byte [eax + 0x9dd7b], 0
mov ecx, dword [ebp - 0x3b4]
mov byte [ecx + 0xa320f], 0
mov edx, dword [ebp - 0x3b4]
mov byte [edx + 0x9707f], 0
mov eax, dword [ebp - 0x3b4]
mov byte [eax + 0xa24e3], 0
mov ecx, dword [ebp - 0x3b4]
mov byte [ecx + 0xa351f], 0
mov edx, dword [ebp - 0x3b4]
mov byte [edx + 0x88737], 0
mov eax, dword [ebp - 0x3b4]
mov byte [eax + 0xa7ffb], 0
mov ecx, dword [ebp - 0x3b4]
mov byte [ecx + 0xac9cf], 0
mov edx, dword [ebp - 0x3b4]
mov byte [edx + 0xb0427], 0
mov eax, dword [ebp - 0x3b4]
mov byte [eax + 0xa593b], 0
mov ecx, dword [ebp - 0x3b4]
mov byte [ecx + 0xa65cb], 0
mov edx, dword [ebp - 0x3b4]
mov byte [edx + 0xa67ab], 0
mov eax, dword [ebp - 0x3b4]
mov byte [eax + 0xad33f], 0
mov ecx, dword [ebp - 0x3b4]
mov byte [ecx + 0xb0427], 0
mov edx, dword [ebp - 0x3b4]
mov byte [edx + 0xb6417], 0
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 8]
push ecx
mov edx, dword [ebp - 0x3b4]
add edx, 0xb90a0
push edx
call dword [sym.imp.USER32.dll_PtInRect]
test eax, eax
je 0x49c308
push 1
call fcn.004111f0
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 8]
push ecx
mov edx, dword [ebp - 0x3b4]
add edx, 0xb90b0
push edx
call dword [sym.imp.USER32.dll_PtInRect]
test eax, eax
je 0x49c336
push 0x5773d4
mov ecx, 0x7d27e8
call fcn.00443fc0
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 8]
push ecx
mov edx, dword [ebp - 0x3b4]
add edx, 0xb90c0
push edx
call dword [sym.imp.USER32.dll_PtInRect]
test eax, eax
je 0x49c364
push 0x578df8
mov ecx, 0x7d27e8
call fcn.00443fc0
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 8]
push ecx
mov edx, dword [ebp - 0x3b4]
add edx, 0xb90d0
push edx
call dword [sym.imp.USER32.dll_PtInRect]
test eax, eax
je 0x49c45b
movzx eax, byte [0x663c30]
test eax, eax
sete cl
mov byte [0x663c30], cl
movzx edx, byte [0x663c2f]
test edx, edx
sete al
mov byte [0x663c2f], al
push 3
call fcn.004764c0
add esp, 4
mov dword [ebp - 0x3a0], eax
push 2
call fcn.004764c0
add esp, 4
mov dword [ebp - 0x3a4], eax
movzx ecx, byte [0x663c30]
test ecx, ecx
je 0x49c419
push 0
push 0
push 0x57e56c
mov edx, dword [ebp - 0x3a0]
push edx
mov eax, dword [ebp - 0x3a4]
push eax
mov ecx, 0x6eeef8
call fcn.0048ce80
push 0
push 0
push 0x57e558
mov ecx, dword [ebp - 0x3a0]
push ecx
mov edx, dword [ebp - 0x3a4]
push edx
mov ecx, 0x6eeef8
call fcn.0048ce80
jmp 0x49c45b
push 0
push 0
push 0x57e544
mov eax, dword [ebp - 0x3a0]
push eax
mov ecx, dword [ebp - 0x3a4]
push ecx
mov ecx, 0x6eeef8
call fcn.0048ce80
push 0
push 0
push 0x57e530
mov edx, dword [ebp - 0x3a0]
push edx
mov eax, dword [ebp - 0x3a4]
push eax
mov ecx, 0x6eeef8
call fcn.0048ce80
mov byte [ebp - 0x3af], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xd]
call fcn.00402620
mov al, byte [ebp - 0x3af]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x20]
xor ecx, ebp
call fcn.0054514c
mov esp, ebp
pop ebp
ret 8