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

Disassembly:
push ebp
mov ebp, esp
push ecx
mov ecx, 0xde
push 0
push 0
dec ecx
jne 0x6f29ed
push ecx
xchg dword [ebp - 4], ecx
push ebx
push esi
push edi
mov esi, ecx
lea edi, [ebp - 0x5f0]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x1c], eax
xor eax, eax
push ebp
push 0x6f9deb
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp + 8]
call fcn.0040b054
lea eax, [ebp - 0x18]
call fcn.0040b054
xor eax, eax
mov dword [ebp - 0x78], eax
mov eax, dword [ebp + 0x40]
mov eax, dword [eax]
sub dword [ebp - 0x5e4], eax
mov eax, dword [ebp + 0x48]
xor edx, edx
mov dword [eax], edx
xor eax, eax
mov dword [ebp - 0x2c], eax
mov byte [ebp - 0x21], 0
mov byte [ebp - 0x22], 0
mov byte [ebp - 0x23], 0
mov eax, dword [ebp + 0x24]
mov byte [eax], 0
mov eax, dword [ebp + 0x20]
mov byte [eax], 0
mov eax, dword [ebp + 0x50]
add eax, 0xffffffb8
call fcn.0040b054
mov eax, dword [ebp + 0x44]
mov eax, dword [eax]
mov dword [ebp - 0x8c], eax
mov eax, dword [ebp + 0x44]
xor edx, edx
mov dword [eax], edx
lea esi, [ebp - 0x5f0]
lea edi, [ebp - 0x600]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea eax, [ebp - 8]
call fcn.0040b054
cmp byte [ebp + 0x4c], 0
jne 0x6f2aa3
mov eax, dword [ebp + 0x1c]
add dword [ebp - 0x600], eax
mov eax, dword [ebp + 0x50]
cmp byte [eax - 0x49], 0
je 0x6f9c73
cmp byte [ebp + 0x4c], 0
jne 0x6f9c73
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x44]
mov dword [ebp - 0xa0], eax
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + 0x18]
mov edx, dword [ebp + 0x50]
mov dword [edx - 0x50], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
mov dword [ebp - 0xa4], eax
mov eax, dword [ebp - 0xa4]
mov eax, dword [eax + 0x10]
mov edx, dword [eax + 0x18]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x44]
call fcn.004f5cbc
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x58]
push eax
mov eax, dword [ebp - 0x5ec]
add eax, dword [ebp - 0x8c]
push eax
mov eax, dword [ebp + 0x50]
mov edx, dword [eax - 0x60]
mov ecx, dword [ebp - 0x5ec]
mov eax, dword [ebp - 0x1c]
mov ebx, dword [eax]
call dword [ebx + 0x7c]
jmp 0x6f9c73
mov edx, dword [ebp - 0x20]
mov edx, dword [edx]
mov ecx, 1
mov eax, 0x6f9e0c
call fcn.0040c454
mov dword [ebp - 0xac], eax
mov eax, dword [ebp - 0xac]
mov dword [ebp - 0x48], eax
mov eax, dword [ebp + 0x50]
cmp byte [eax + 0x64], 0
je 0x6f2b79
mov edx, dword [ebp - 0x20]
mov edx, dword [edx]
mov ecx, 1
mov eax, 0x6f9e1c
call fcn.0040c454
mov dword [ebp - 0xb0], eax
mov eax, dword [ebp - 0xb0]
mov dword [ebp - 0x4c], eax
jmp 0x6f2b7e
xor eax, eax
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x48], 0
jle 0x6f2bab
mov eax, dword [ebp - 0x4c]
cmp eax, dword [ebp - 0x48]
jg 0x6f2b92
cmp dword [ebp - 0x4c], 0
jne 0x6f2bab
lea eax, [ebp - 4]
push eax
mov ecx, dword [ebp - 0x48]
dec ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov edx, 1
call fcn.0040c300
jmp 0x6f2bd6
cmp dword [ebp - 0x4c], 0
jle 0x6f2bc9
lea eax, [ebp - 4]
push eax
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x4c]
mov edx, 1
call fcn.0040c300
jmp 0x6f2bd6
lea eax, [ebp - 4]
mov edx, dword [ebp - 0x20]
mov edx, dword [edx]
call fcn.0040b48c
mov eax, dword [ebp - 4]
mov dword [ebp - 0xb4], eax
cmp dword [ebp - 0xb4], 0
je 0x6f2bf7
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax - 4]
mov dword [ebp - 0xb4], eax
mov eax, dword [ebp - 0xb4]
mov dword [ebp - 0x70], eax
jmp 0x6f2c14
lea ecx, [ebp - 4]
mov edx, 0x6f9e1c
mov eax, 0x6f9e2c
call fcn.006f1b84
mov ecx, 1
mov edx, dword [ebp - 4]
mov eax, 0x6f9e2c
call fcn.0040c454
mov ebx, eax
test ebx, ebx
jg 0x6f2c02
jmp 0x6f2c40
lea ecx, [ebp - 4]
mov edx, 0x6f9e0c
mov eax, 0x6f9e48
call fcn.006f1b84
mov ecx, 1
mov edx, dword [ebp - 4]
mov eax, 0x6f9e48
call fcn.0040c454
mov esi, eax
test esi, esi
jg 0x6f2c2e
jmp 0x6f2c6c
lea ecx, [ebp - 4]
mov edx, 0x6f9e60
mov eax, 0x6f9e70
call fcn.006f1b84
mov ecx, 1
mov edx, dword [ebp - 4]
mov eax, 0x6f9e70
call fcn.0040c454
mov dword [ebp - 0xb8], eax
cmp dword [ebp - 0xb8], 0
jg 0x6f2c5a
mov eax, dword [ebp - 4]
mov dword [ebp - 0xbc], eax
cmp dword [ebp - 0xbc], 0
je 0x6f2cae
mov eax, dword [ebp - 0xbc]
mov eax, dword [eax - 4]
mov dword [ebp - 0xbc], eax
mov eax, dword [ebp - 0xbc]
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x70], 0
jle 0x6f34c7
mov eax, dword [ebp + 0x44]
cmp dword [eax], 0
jne 0x6f2cd4
mov eax, dword [ebp + 0x44]
mov edx, dword [ebp - 0x8c]
mov dword [eax], edx
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 0x1c]
call fcn.004f6318
mov dword [ebp - 0x28], eax
mov eax, dword [ebp + 0x50]
cmp byte [eax - 0x61], 0
je 0x6f2d05
mov eax, dword [ebp + 0x40]
mov eax, dword [eax]
mov edx, dword [ebp - 0x28]
shr edx, 2
cmp eax, edx
jge 0x6f2d05
mov eax, dword [ebp - 0x28]
shr eax, 2
mov edx, dword [ebp + 0x40]
mov dword [edx], eax
mov eax, dword [ebp + 0x50]
cmp byte [eax - 0x62], 0
je 0x6f2d28
mov eax, dword [ebp + 0x3c]
mov eax, dword [eax]
mov edx, dword [ebp - 0x28]
shr edx, 2
cmp eax, edx
jge 0x6f2d28
mov eax, dword [ebp - 0x28]
shr eax, 2
mov edx, dword [ebp + 0x3c]
mov dword [edx], eax
mov eax, dword [ebp + 0x44]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x28]
jge 0x6f2d3a
mov eax, dword [ebp + 0x44]
mov edx, dword [ebp - 0x28]
mov dword [eax], edx
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x40]
mov edx, dword [ebp - 4]
call fcn.0040c0d8
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x40]
mov eax, dword [ebp + 0x50]
cmp byte [eax - 0x63], 0
je 0x6f2d67
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x70]
mov edx, 1
call fcn.0040c348
mov eax, dword [ebp + 0x50]
cmp byte [eax - 0x63], 0
jne 0x6f34c7
cmp byte [ebp + 0x4c], 0
jne 0x6f3141
mov eax, dword [ebp + 0x50]
cmp byte [eax - 0x62], 0
je 0x6f2d92
mov eax, dword [ebp + 0x3c]
mov eax, dword [eax]
sub dword [ebp - 0x5f4], eax
mov eax, dword [ebp + 0x50]
cmp byte [eax - 0x61], 0
je 0x6f2da6
mov eax, dword [ebp + 0x40]
mov eax, dword [eax]
add dword [ebp - 0x5f4], eax
mov eax, dword [ebp + 0x38]
mov eax, dword [eax]
sub dword [ebp - 0x5f4], eax
mov eax, dword [ebp + 0x50]
cmp byte [eax - 0x64], 0
je 0x6f2e57
mov eax, dword [ebp + 0x50]
mov ecx, dword [eax + 0x80]
mov eax, dword [ebp + 0x50]
mov edx, dword [eax + 0x80]
lea eax, [ebp - 0x600]
call fcn.00415630
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0x18]
mov dword [ebp - 0x60], eax
mov eax, dword [ebp + 0x50]
mov edx, dword [eax + 0x48]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f551c
push 0
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x68]
and eax, 0xfffffdff
push eax
lea eax, [ebp - 0x600]
push eax
mov eax, dword [ebp - 0x74]
push eax
mov eax, dword [ebp - 4]
call fcn.0040becc
push eax
mov eax, dword [ebp - 0x1c]
call fcn.004f7324
push eax
call sub.user32.dll_DrawTextExW
mov eax, dword [ebp + 0x50]
mov ecx, dword [eax + 0x80]
neg ecx
mov eax, dword [ebp + 0x50]
mov edx, dword [eax + 0x80]
neg edx
lea eax, [ebp - 0x600]
call fcn.00415630
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
mov edx, dword [ebp - 0x60]
call fcn.004f551c
mov eax, dword [ebp - 0x5f8]
mov dword [ebp - 0x34], eax
mov edi, dword [ebp + 0x50]
add edi, 0xfffffff0
lea esi, [ebp - 0x600]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
mov dword [ebp - 0xc0], eax
mov eax, dword [ebp - 0xc0]
mov eax, dword [eax + 0x10]
movzx eax, byte [eax + 0x21]
mov byte [ebp - 0xc1], al
test byte [ebp - 0xc1], 2
je 0x6f2ea7
mov eax, dword [ebp - 0x5f8]
add eax, 2
mov edx, dword [ebp + 0x50]
mov dword [edx - 8], eax
push 0
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x68]
or eax, 0x400
push eax
lea eax, [ebp - 0x600]
push eax
mov eax, dword [ebp - 0x74]
push eax
mov eax, dword [ebp - 4]
call fcn.0040becc
push eax
mov eax, dword [ebp - 0x1c]
call fcn.004f7324
push eax
call sub.user32.dll_DrawTextExW
mov eax, dword [ebp + 0x50]
cmp byte [eax + 0x64], 0
jne 0x6f2f0e
mov eax, dword [ebp + 0x50]
cmp byte [eax + 0x64], 0
jne 0x6f3003
mov edx, 0x6f9e88
mov eax, dword [ebp - 0x1c]
call fcn.004f6338
mov edx, dword [ebp - 0x5e8]
sub edx, eax
cmp edx, dword [ebp - 0x600]
jle 0x6f3003
mov eax, dword [ebp + 0x50]
cmp byte [eax - 0x69], 0
je 0x6f2fd3
push 0x18
mov eax, dword [ebp - 0x1c]
call fcn.004f7324
push eax
call sub.gdi32.dll_SetTextAlign
mov eax, dword [ebp - 0x1c]
call fcn.004f7324
mov dword [ebp - 0xcc], eax
mov eax, dword [ebp - 4]
mov dword [ebp - 0xc8], eax
cmp dword [ebp - 0xc8], 0
je 0x6f2f5a
mov eax, dword [ebp - 0xc8]
mov eax, dword [eax - 4]
mov dword [ebp - 0xc8], eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x10]
mov dword [ebp - 0xd0], eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 4]
mov dword [ebp - 0xd4], eax
mov eax, dword [ebp + 0x50]
add eax, 0xfffffff0
mov dword [ebp - 0xd8], eax
push 0
mov eax, dword [ebp - 0xc8]
push eax
mov eax, dword [ebp - 4]
call fcn.0040becc
mov edx, eax
lea eax, [ebp - 0x614]
call fcn.0040bf2c
mov eax, dword [ebp - 0x614]
call fcn.0040becc
push eax
mov eax, dword [ebp - 0xd8]
push eax
push 0
mov eax, dword [ebp - 0xd4]
push eax
mov eax, dword [ebp - 0xd0]
push eax
mov eax, dword [ebp - 0xcc]
push eax
call sub.gdi32.dll_ExtTextOutW
mov dword [ebp - 0xdc], eax
jmp 0x6f3003
push 0
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x68]
and eax, 0xfffffdff
push eax
mov eax, dword [ebp + 0x50]
add eax, 0xfffffff0
push eax
mov eax, dword [ebp - 0x74]
push eax
mov eax, dword [ebp - 4]
call fcn.0040becc
push eax
mov eax, dword [ebp - 0x1c]
call fcn.004f7324
push eax
call sub.user32.dll_DrawTextExW
mov eax, dword [ebp + 0x50]
cmp byte [eax - 0x6a], 0
je 0x6f3031
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x30]
mov eax, dword [eax]
dec eax
mov edx, dword [ebp + 0x50]
cmp eax, dword [edx + 0x88]
jne 0x6f3031
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x3c]
mov edx, dword [ebp + 0x50]
mov edx, dword [edx - 0x70]
call fcn.0040b444
mov eax, dword [ebp + 0x50]
cmp byte [eax - 0x71], 0
je 0x6f30e3
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x44]
mov edx, 0xff
call fcn.004f5cbc
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x44]
mov edx, 1
call fcn.004f5e18
mov eax, dword [ebp - 0x600]
sar eax, 1
jns 0x6f306b
adc eax, 0
add eax, eax
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x54]
and eax, 0x80000003
jns 0x6f307f
dec eax
or eax, 0xfffffffc
inc eax
test eax, eax
jne 0x6f308c
mov dword [ebp - 0x50], 2
jmp 0x6f3091
xor eax, eax
mov dword [ebp - 0x50], eax
mov ecx, dword [ebp - 0x5e4]
add ecx, dword [ebp - 0x50]
dec ecx
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x1c]
mov ebx, dword [eax]
call dword [ebx + 0x64]
jmp 0x6f30d8
cmp dword [ebp - 0x50], 2
jne 0x6f30b5
xor eax, eax
mov dword [ebp - 0x50], eax
jmp 0x6f30bc
mov dword [ebp - 0x50], 2
mov ecx, dword [ebp - 0x5e4]
add ecx, dword [ebp - 0x50]
dec ecx
mov edx, dword [ebp - 0x54]
add edx, 2
mov eax, dword [ebp - 0x1c]
mov ebx, dword [eax]
call dword [ebx + 0x60]
add dword [ebp - 0x54], 2
mov eax, dword [ebp - 0x54]
cmp eax, dword [ebp - 0x5f8]
jl 0x6f30a8
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x68]
and eax, 0x20000
cmp eax, 0x20000
je 0x6f310f
mov eax, dword [ebp - 0x5f8]
mov dword [ebp - 0x600], eax
mov eax, dword [ebp - 0x5e8]
mov dword [ebp - 0x5f8], eax
jmp 0x6f3124
mov eax, dword [ebp - 0x34]
sub eax, dword [ebp - 0x5f8]
add eax, dword [ebp - 0x600]
mov dword [ebp - 0x5f8], eax
mov eax, dword [ebp - 0x5e4]
mov dword [ebp - 0x5f4], eax
mov eax, dword [ebp - 0x5ec]
mov dword [ebp - 0x5fc], eax
jmp 0x6f330d
lea esi, [ebp - 0x5f0]
lea edi, [ebp - 0x600]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push 0
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x68]
or eax, 0x400
push eax
lea eax, [ebp - 0x600]
push eax
mov eax, dword [ebp - 0x74]
push eax
mov eax, dword [ebp - 4]
call fcn.0040becc
push eax
mov eax, dword [ebp - 0x1c]
call fcn.004f7324
push eax
call sub.user32.dll_DrawTextExW
mov eax, dword [ebp - 0x5fc]
cmp eax, dword [ebp + 0x28]
jge 0x6f3259
mov eax, dword [ebp + 0x28]
cmp eax, dword [ebp - 0x5f4]
jge 0x6f3259
mov eax, dword [ebp + 0x48]
mov eax, dword [eax]
cmp eax, dword [ebp + 0x2c]
jge 0x6f3259
mov eax, dword [ebp - 0x5f4]
push eax
lea eax, [ebp - 0x624]
push eax
mov eax, dword [ebp + 0x48]
mov eax, dword [eax]
mov ecx, dword [ebp + 0x2c]
mov edx, dword [ebp - 0x5fc]
call fcn.00415460
mov edi, dword [ebp + 0x50]
lea esi, [ebp - 0x624]
add edi, 0xffffff7c
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [ebp + 0x50]
add eax, 0xffffffdc
xor ecx, ecx
mov edx, 0x14
call fcn.004083a8
mov eax, dword [ebp + 0x50]
mov dword [eax - 0x24], 0x14
mov eax, dword [ebp + 0x50]
add eax, 0xffffffd0
push eax
push 0
mov eax, dword [ebp + 0x50]
add eax, 0xffffffd8
push eax
mov eax, dword [ebp + 0x48]
mov edx, dword [ebp + 0x2c]
sub edx, dword [eax]
push edx
mov eax, dword [ebp - 0x74]
push eax
mov eax, dword [ebp - 4]
call fcn.0040becc
push eax
mov eax, dword [ebp - 0x1c]
call fcn.004f7324
push eax
call sub.gdi32.dll_GetTextExtentExPointW
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x28]
cmp eax, dword [ebp - 0x70]
jne 0x6f324a
mov eax, dword [ebp + 0x50]
mov edx, dword [ebp - 0x70]
add dword [eax - 0x88], edx
jmp 0x6f3259
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x28]
mov edx, dword [ebp + 0x50]
add dword [edx - 0x88], eax
mov eax, dword [ebp - 0x5f8]
sub eax, dword [ebp - 0x600]
mov dword [ebp - 0x78], eax
mov eax, dword [ebp + 0x48]
mov edx, dword [ebp - 0x78]
add dword [eax], edx
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x68]
and eax, 0x20000
cmp eax, 0x20000
jne 0x6f3296
mov eax, dword [ebp - 0x5e8]
sub eax, dword [ebp + 0x2c]
sub eax, dword [ebp - 0x600]
mov dword [ebp - 0x34], eax
jmp 0x6f32a2
mov eax, dword [ebp + 0x2c]
sub eax, dword [ebp - 0x600]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp + 0x2c]
sub eax, dword [ebp - 0x600]
mov edx, dword [ebp + 0x48]
mov edx, dword [edx]
sub edx, dword [ebp - 0x78]
cmp eax, edx
jl 0x6f330d
mov eax, dword [ebp + 0x2c]
sub eax, dword [ebp - 0x600]
mov edx, dword [ebp + 0x48]
cmp eax, dword [edx]
jg 0x6f330d
mov eax, dword [ebp + 0x50]
cmp byte [eax - 0x6a], 0
je 0x6f330d
mov eax, dword [ebp + 0x24]
mov byte [eax], 1
mov eax, dword [ebp + 0x28]
cmp eax, dword [ebp - 0x5fc]
jle 0x6f330d
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x44]
mov edx, dword [ebp + 0x50]
mov edx, dword [edx - 0x70]
call fcn.0040b444
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x3c]
mov edx, dword [ebp + 0x50]
mov edx, dword [edx - 0x48]
call fcn.0040b444
mov eax, dword [ebp + 0x50]
mov byte [eax - 0x89], 1
mov eax, dword [ebp - 0x5e8]
sub eax, dword [ebp - 0x5f0]
mov edx, dword [ebp + 0x50]
sub eax, dword [edx - 0x90]
mov edx, dword [ebp + 0x48]
mov edx, dword [edx]
mov ecx, dword [ebp + 0x30]
add edx, dword [ecx]
cmp eax, edx
jg 0x6f334e
mov eax, dword [ebp - 0x5e8]
sub eax, dword [ebp - 0x5f0]
mov edx, dword [ebp + 0x50]
sub eax, dword [edx - 0x90]
cmp eax, dword [ebp - 0x78]
jle 0x6f334e
xor eax, eax
jmp 0x6f3350
mov al, 1
mov byte [ebp - 0x7b], al
lea eax, [ebp - 0x18]
mov edx, dword [ebp - 4]
call fcn.0040c0d8
cmp byte [ebp - 0x7b], 0
jne 0x6f3371
mov eax, dword [ebp + 0x50]
cmp byte [eax + 0x64], 0
jne 0x6f3426
lea eax, [ebp - 0x628]
push eax
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x70]
mov edx, 1
call fcn.0040c300
mov edx, dword [ebp - 0x628]
lea eax, [ebp - 8]
call fcn.0040c0d8
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x70]
mov edx, 1
call fcn.0040c348
mov eax, dword [ebp - 4]
mov dword [ebp - 0xe0], eax
cmp dword [ebp - 0xe0], 0
je 0x6f33c9
mov eax, dword [ebp - 0xe0]
mov eax, dword [eax - 4]
mov dword [ebp - 0xe0], eax
mov eax, dword [ebp - 0xe0]
cmp eax, dword [ebp - 0x70]
jl 0x6f341c
lea eax, [ebp - 0x62c]
push eax
mov ecx, 1
mov edx, dword [ebp - 0x70]
mov eax, dword [ebp - 4]
call fcn.0040c300
mov eax, dword [ebp - 0x62c]
mov edx, 0x6f9e1c
call fcn.0040c2c8
jne 0x6f3412
mov edx, 0x6f9e1c
mov eax, dword [ebp - 0x1c]
call fcn.004f6338
mov dword [ebp - 0x2c], eax
jmp 0x6f34c7
xor eax, eax
mov dword [ebp - 0x2c], eax
jmp 0x6f34c7
xor eax, eax
mov dword [ebp - 0x2c], eax
jmp 0x6f34c7
mov eax, dword [ebp - 0x48]
dec eax
cmp eax, dword [ebp - 0x4c]
jle 0x6f343a
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0xe4], eax
jmp 0x6f3444
mov eax, dword [ebp - 0x48]
dec eax
mov dword [ebp - 0xe4], eax
mov eax, dword [ebp - 4]
mov dword [ebp - 0xe8], eax
cmp dword [ebp - 0xe8], 0
je 0x6f3465
mov eax, dword [ebp - 0xe8]
mov eax, dword [eax - 4]
mov dword [ebp - 0xe8], eax
mov eax, dword [ebp - 0xe4]
cmp eax, dword [ebp - 0xe8]
jg 0x6f3479
mov byte [ebp - 0x21], 1
jmp 0x6f34bf
movzx eax, byte [ebp + 0x4c]
xor al, 1
mov byte [ebp - 0x22], al
cmp byte [ebp + 0x4c], 0
je 0x6f34bf
lea eax, [ebp - 0x630]
push eax
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x70]
mov edx, 1
call fcn.0040c300
mov edx, dword [ebp - 0x630]
lea eax, [ebp - 8]
call fcn.0040c0d8
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x70]
mov edx, 1
call fcn.0040c348
mov eax, dword [ebp + 0x48]
mov edx, dword [ebp - 0x78]
sub dword [eax], edx
mov edx, dword [ebp - 0x20]
mov edx, dword [edx]
mov ecx, 1
mov eax, 0x6f9e0c
call fcn.0040c454
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 1
jne 0x6f3524
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov dword [ebp - 0xf0], eax
cmp dword [ebp - 0xf0], 0
je 0x6f3513
mov eax, dword [ebp - 0xf0]
mov eax, dword [eax - 4]
mov dword [ebp - 0xf0], eax
cmp dword [ebp - 0xf0], 2
jg 0x6f3524
mov eax, dword [ebp - 0x20]
call fcn.0040b054
cmp byte [ebp - 0x21], 0
jne 0x6f9c73
cmp dword [ebp - 0x48], 1
jne 0x6f9c73
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov dword [ebp - 0xf4], eax
cmp dword [ebp - 0xf4], 0
je 0x6f355b
mov eax, dword [ebp - 0xf4]
mov eax, dword [eax - 4]
mov dword [ebp - 0xf4], eax
cmp dword [ebp - 0xf4], 2
jle 0x6f9c73
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
cmp word [eax + 2], 0x2f
jne 0x6f35a7
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov dword [ebp - 0xf8], eax
cmp dword [ebp - 0xf8], 0
je 0x6f3597
mov eax, dword [ebp - 0xf8]
mov eax, dword [eax - 4]
mov dword [ebp - 0xf8], eax
cmp dword [ebp - 0xf8], 3
setg byte [ebp - 0xf9]
jmp 0x6f35ae
mov byte [ebp - 0xf9], 0
cmp byte [ebp - 0xf9], 0
je 0x6f3dee
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
movzx eax, word [eax + 4]
mov word [ebp - 0xfc], ax
movzx eax, word [ebp - 0xfc]
mov word [ebp - 0xfe], ax
movzx eax, word [ebp - 0xfc]
add eax, 0xffffff9f
sub ax, 0x1a
jae 0x6f35fb
movzx eax, word [ebp - 0xfc]
and ax, 0xffdf
mov word [ebp - 0xfe], ax
movzx eax, word [ebp - 0xfe]
add eax, 0xffffffbf
cmp eax, 0x19
ja case.0x6f3e41.68
jmp dword [eax*4 + 0x6f3615]
mov eax, dword [ebp + 0x50]
mov byte [eax - 0x91], 0
mov eax, dword [ebp + 0x50]
cmp byte [eax + 0x68], 0
je 0x6f36a7
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x84]
mov edx, dword [ebp + 0x50]
mov edx, dword [edx + 0x30]
cmp eax, dword [edx]
jne 0x6f3743
cmp byte [ebp + 0x4c], 0
jne 0x6f3743
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
mov dword [ebp - 0x104], eax
mov eax, dword [ebp - 0x104]
mov eax, dword [eax + 0x10]
movzx eax, byte [eax + 0x21]
mov byte [ebp - 0x105], al
movzx edx, byte [0x6f9e8c]
not edx
and dl, byte [ebp - 0x105]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f58b4
mov eax, dword [ebp + 0x50]
cmp dword [eax + 0x50], 0x1fffffff
je 0x6f3726
mov eax, dword [ebp + 0x50]
mov edx, dword [eax - 0x98]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
call fcn.004f60a0
mov eax, dword [ebp + 0x50]
cmp dword [eax - 0x98], 0x1fffffff
jne 0x6f3726
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
mov dl, 1
call fcn.004f6220
mov eax, dword [ebp + 0x50]
cmp dword [eax + 0x4c], 0x1fffffff
je 0x6f3743
mov eax, dword [ebp + 0x50]
mov edx, dword [eax + 0x4c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f551c
mov eax, dword [ebp + 0x50]
cmp byte [eax + 0x70], 0
jne 0x6f3763
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x9c]
mov edx, dword [eax + 0x18]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f551c
mov eax, dword [ebp + 0x50]
mov byte [eax - 0x6a], 0
mov eax, dword [ebp + 0x50]
cmp byte [eax - 0x89], 0
je 0x6f37f5
mov eax, dword [ebp + 0x50]
mov edx, dword [ebp - 0x5e4]
mov dword [eax - 0xa0], edx
mov eax, dword [ebp + 0x48]
mov eax, dword [eax]
add eax, dword [ebp - 0x5f0]
mov edx, dword [ebp + 0x50]
mov dword [edx - 0xa4], eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0xa8]
cmp eax, dword [ebp - 0x5ec]
je 0x6f37c8
mov eax, dword [ebp + 0x50]
mov edx, dword [ebp - 0x5f0]
mov dword [eax - 0xac], edx
mov eax, dword [ebp + 0x50]
mov edx, dword [ebp - 0x5ec]
mov dword [eax - 0xa8], edx
mov esi, dword [ebp + 0x50]
mov edi, dword [ebp + 0x50]
mov edi, dword [edi + 0x28]
add esi, 0xffffff54
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x30]
mov eax, dword [eax]
mov edx, dword [ebp + 0x50]
mov edx, dword [edx + 0x2c]
mov dword [edx], eax
mov eax, dword [ebp + 0x50]
mov byte [eax - 0x89], 0
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x88]
mov edx, dword [ebp + 0x50]
mov edx, dword [edx + 0x30]
mov edx, dword [edx]
dec edx
cmp eax, edx
jne case.0x6f3e41.68
mov eax, dword [ebp + 0x50]
mov edx, dword [ebp - 0x600]
mov dword [eax - 0x38], edx
mov eax, dword [ebp + 0x38]
mov edx, dword [ebp - 0x5f4]
sub edx, dword [eax]
mov eax, dword [ebp + 0x50]
mov dword [eax - 0x34], edx
mov edx, 0x6f9e9c
mov eax, dword [ebp - 0x1c]
call fcn.004f6318
mov edx, dword [ebp + 0x50]
mov edx, dword [edx - 0x34]
sub edx, eax
mov eax, dword [ebp + 0x50]
mov dword [eax - 0x3c], edx
mov eax, dword [ebp + 0x50]
add eax, 0xffffffc0
xor ecx, ecx
mov edx, 1
call fcn.0041560c
cmp byte [ebp + 0x4c], 0
jne case.0x6f3e41.68
mov eax, dword [ebp + 0x50]
lea edx, [eax - 0x40]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
call dword [ecx + 0x4c]
jmp case.0x6f3e41.68
cmp byte [ebp + 0x4c], 0
jne case.0x6f3e41.68
mov eax, dword [ebp + 0x50]
mov byte [eax - 0x71], 0
jmp case.0x6f3e41.68
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
cmp word [eax + 6], 0x3e
je 0x6f38b4
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x9c]
mov edx, dword [eax + 0x18]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f551c
jmp case.0x6f3e41.68
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
mov dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x10c]
mov eax, dword [eax + 0x10]
movzx eax, byte [eax + 0x21]
mov byte [ebp - 0x10d], al
movzx edx, byte [0x6f9ea4]
not edx
and dl, byte [ebp - 0x10d]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f58b4
jmp case.0x6f3e41.68
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
movzx eax, word [eax + 6]
mov word [ebp - 0x110], ax
movzx eax, word [ebp - 0x110]
mov word [ebp - 0x112], ax
movzx eax, word [ebp - 0x110]
add eax, 0xffffff9f
sub ax, 0x1a
jae 0x6f3932
movzx eax, word [ebp - 0x110]
and ax, 0xffdf
mov word [ebp - 0x112], ax
movzx eax, word [ebp - 0x112]
mov word [ebp - 0x7a], ax
cmp word [ebp - 0x7a], 0x54
jne 0x6f3a51
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov dword [ebp - 0x118], eax
cmp dword [ebp - 0x118], 0
je 0x6f396b
mov eax, dword [ebp - 0x118]
mov eax, dword [eax - 4]
mov dword [ebp - 0x118], eax
cmp dword [ebp - 0x118], 5
jle 0x6f39c5
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
movzx eax, word [eax + 0xa]
mov word [ebp - 0x11a], ax
movzx eax, word [ebp - 0x11a]
mov word [ebp - 0x11c], ax
movzx eax, word [ebp - 0x11a]
add eax, 0xffffff9f
sub ax, 0x1a
jae 0x6f39b4
movzx eax, word [ebp - 0x11a]
and ax, 0xffdf
mov word [ebp - 0x11c], ax
cmp word [ebp - 0x11c], 0x4f
sete byte [ebp - 0x11d]
jmp 0x6f39cc
mov byte [ebp - 0x11d], 0
cmp byte [ebp - 0x11d], 0
je 0x6f3a13
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
mov dword [ebp - 0x124], eax
mov eax, dword [ebp - 0x124]
mov eax, dword [eax + 0x10]
movzx eax, byte [eax + 0x21]
mov byte [ebp - 0x125], al
movzx edx, byte [0x6f9ea4]
not edx
and dl, byte [ebp - 0x125]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f58b4
jmp case.0x6f3e41.68
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
mov dword [ebp - 0x12c], eax
mov eax, dword [ebp - 0x12c]
mov eax, dword [eax + 0x10]
movzx eax, byte [eax + 0x21]
mov byte [ebp - 0x12d], al
movzx edx, byte [0x6f9ea8]
not edx
and dl, byte [ebp - 0x12d]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f58b4
jmp case.0x6f3e41.68
cmp word [ebp - 0x7a], 0x55
jne 0x6f3a6b
mov eax, dword [ebp + 0x50]
mov byte [eax - 0x62], 0
mov eax, dword [ebp + 0x50]
mov byte [eax - 0x61], 0
jmp case.0x6f3e41.68
cmp word [ebp - 0x7a], 0x50
jne 0x6f3a98
mov eax, dword [ebp + 0x50]
mov edx, dword [eax - 0xb0]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
call fcn.004f60a0
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
mov dl, 1
call fcn.004f6220
jmp case.0x6f3e41.68
cmp word [ebp - 0x7a], 0x48
jne 0x6f3aab
mov eax, dword [ebp + 0x50]
mov byte [eax - 0x64], 0
jmp case.0x6f3e41.68
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
mov dword [ebp - 0x134], eax
mov eax, dword [ebp - 0x134]
mov eax, dword [eax + 0x10]
movzx eax, byte [eax + 0x21]
mov byte [ebp - 0x135], al
movzx edx, byte [0x6f9ea8]
not edx
and dl, byte [ebp - 0x135]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f58b4
jmp case.0x6f3e41.68
lea edx, [ebp - 0x634]
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x9c]
call fcn.004f57ec
mov edx, dword [ebp - 0x634]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f5804
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x9c]
call fcn.004f5860
mov edx, eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f587c
cmp byte [ebp + 0x4c], 0
jne case.0x6f3e41.68
mov eax, dword [ebp + 0x50]
cmp byte [eax + 0x70], 0
jne case.0x6f3e41.68
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x9c]
mov edx, dword [eax + 0x18]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f551c
mov eax, dword [ebp + 0x50]
mov edx, dword [eax - 0xb0]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
call fcn.004f60a0
mov eax, dword [ebp + 0x50]
cmp dword [eax - 0xb0], 0x1fffffff
jne case.0x6f3e41.68
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
mov dl, 1
call fcn.004f6220
jmp case.0x6f3e41.68
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
movzx eax, word [eax + 6]
mov word [ebp - 0x138], ax
movzx eax, word [ebp - 0x138]
mov word [ebp - 0x13a], ax
movzx eax, word [ebp - 0x138]
add eax, 0xffffff9f
sub ax, 0x1a
jae 0x6f3bd0
movzx eax, word [ebp - 0x138]
and ax, 0xffdf
mov word [ebp - 0x13a], ax
cmp word [ebp - 0x13a], 0x49
jne case.0x6f3e41.68
cmp byte [ebp + 0x4c], 0
jne case.0x6f3e41.68
mov eax, dword [ebp + 0x50]
mov edx, dword [eax - 0xb4]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f551c
mov eax, dword [ebp + 0x50]
movzx edx, byte [eax - 0xb5]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f58b4
mov eax, dword [ebp + 0x50]
mov edx, dword [eax - 0xbc]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
call fcn.004f60a0
mov eax, dword [ebp + 0x50]
cmp dword [eax - 0xbc], 0x1fffffff
jne case.0x6f3e41.68
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
mov dl, 1
call fcn.004f6220
jmp case.0x6f3e41.68
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
mov dword [ebp - 0x140], eax
mov eax, dword [ebp - 0x140]
mov eax, dword [eax + 0x10]
movzx eax, byte [eax + 0x21]
mov byte [ebp - 0x141], al
movzx edx, byte [0x6f9eac]
not edx
and dl, byte [ebp - 0x141]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f58b4
jmp case.0x6f3e41.68
mov byte [ebp - 0x21], 1
jmp case.0x6f3e41.68
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
cmp word [eax + 6], 0x3e
je 0x6f3ccb
mov eax, dword [ebp + 0x50]
cmp dword [eax - 0xc0], 0
jle 0x6f3ccb
mov eax, dword [ebp + 0x50]
dec dword [eax - 0xc0]
cmp byte [ebp + 0x4c], 0
jne case.0x6f3e41.68
mov eax, dword [ebp + 0x50]
mov byte [eax - 0xc1], 0
jmp case.0x6f3e41.68
mov eax, dword [ebp + 0x18]
xor edx, edx
mov dword [eax], edx
jmp case.0x6f3e41.68
mov byte [ebp - 0x21], 1
mov eax, dword [ebp + 0xc]
mov byte [eax], 1
movzx eax, byte [ebp + 0x4c]
xor al, 1
test al, al
je 0x6f3cf8
mov eax, dword [ebp + 0x50]
mov dword [eax - 0xc8], 0x3f800000
movzx eax, byte [ebp + 0x4c]
xor al, 1
test al, al
je 0x6f3d09
mov eax, dword [ebp + 0x50]
mov byte [eax - 0x49], 0
cmp byte [ebp + 0x4c], 0
jne case.0x6f3e41.68
mov eax, dword [ebp + 0x50]
cmp byte [eax + 0x7c], 0
jne case.0x6f3e41.68
mov eax, dword [ebp + 0x34]
mov byte [eax], 0
mov eax, dword [ebp + 0x50]
cmp byte [eax + 0x70], 0
jne case.0x6f3e41.68
mov eax, dword [ebp + 0x50]
mov edx, dword [eax - 0xcc]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
call fcn.004f60a0
mov eax, dword [ebp + 0x50]
cmp dword [eax - 0xcc], 0x1fffffff
jne case.0x6f3e41.68
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
mov dl, 1
call fcn.004f6220
jmp case.0x6f3e41.68
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
cmp word [eax + 6], 0x3e
je 0x6f3d92
mov eax, dword [ebp + 0x50]
cmp dword [eax - 0xc0], 0
jle 0x6f3d92
mov eax, dword [ebp + 0x50]
dec dword [eax - 0xc0]
jmp case.0x6f3e41.68
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
mov dword [ebp - 0x148], eax
mov eax, dword [ebp - 0x148]
mov eax, dword [eax + 0x10]
movzx eax, byte [eax + 0x21]
mov byte [ebp - 0x149], al
movzx edx, byte [0x6f9e8c]
not edx
and dl, byte [ebp - 0x149]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f58b4
jmp case.0x6f3e41.68
mov eax, dword [ebp + 0x50]
push eax
mov eax, dword [ebp - 0x1c]
call fcn.006f29c0
pop ecx
jmp case.0x6f3e41.68
mov eax, dword [ebp + 0x50]
mov byte [eax - 0x63], 0
jmp case.0x6f3e41.68
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
movzx eax, word [eax + 2]
mov word [ebp - 0x14c], ax
movzx eax, word [ebp - 0x14c]
mov word [ebp - 0x14e], ax
movzx eax, word [ebp - 0x14c]
add eax, 0xffffff9f
sub ax, 0x1a
jae 0x6f3e2e
movzx eax, word [ebp - 0x14c]
and ax, 0xffdf
mov word [ebp - 0x14e], ax
movzx eax, word [ebp - 0x14e]
add eax, 0xffffffbf
cmp eax, 0x19
ja case.0x6f3e41.68
jmp dword [eax*4 + 0x6f3e48]
mov eax, dword [ebp + 0x50]
mov byte [eax - 0x91], 1
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
mov edx, dword [eax + 0x18]
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x9c]
call fcn.004f551c
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x88]
mov edx, dword [ebp + 0x50]
mov edx, dword [edx + 0x30]
cmp eax, dword [edx]
jne 0x6f3f02
cmp byte [ebp + 0x4c], 0
jne 0x6f3f02
mov eax, dword [ebp + 0x50]
mov edx, dword [ebp - 0x600]
mov dword [eax - 0x40], edx
mov eax, dword [ebp + 0x50]
mov edx, dword [ebp - 0x5fc]
mov dword [eax - 0x3c], edx
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x30]
inc dword [eax]
mov eax, dword [ebp + 0x50]
cmp byte [eax + 0x68], 0
je 0x6f3f2a
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x84]
mov edx, dword [ebp + 0x50]
mov edx, dword [edx + 0x30]
cmp eax, dword [edx]
jne 0x6f4008
cmp byte [ebp + 0x4c], 0
jne 0x6f4008
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
mov dword [ebp - 0x154], eax
mov eax, dword [ebp - 0x154]
mov eax, dword [eax + 0x10]
movzx eax, byte [eax + 0x21]
mov byte [ebp - 0x155], al
movzx edx, byte [0x6f9e8c]
or dl, byte [ebp - 0x155]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f58b4
mov eax, dword [ebp + 0x50]
cmp dword [eax + 0x50], 0x1fffffff
je 0x6f3fd9
cmp byte [ebp + 0x4c], 0
jne 0x6f3fd9
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
mov dword [ebp - 0x15c], eax
mov eax, dword [ebp - 0x15c]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + 0x18]
mov edx, dword [ebp + 0x50]
mov dword [edx - 0x98], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
mov dword [ebp - 0x160], eax
mov eax, dword [ebp - 0x160]
mov eax, dword [eax + 0x10]
movzx eax, byte [eax + 0x20]
cmp al, 1
jne 0x6f3fc8
mov eax, dword [ebp + 0x50]
mov dword [eax - 0x98], 0x1fffffff
mov eax, dword [ebp + 0x50]
mov edx, dword [eax + 0x50]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
call fcn.004f60a0
mov eax, dword [ebp + 0x50]
cmp dword [eax + 0x4c], 0x1fffffff
je 0x6f4008
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0x18]
mov edx, dword [ebp + 0x50]
mov dword [edx - 0xd0], eax
mov eax, dword [ebp + 0x50]
mov edx, dword [eax + 0x4c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f551c
mov eax, dword [ebp + 0x50]
cmp byte [eax + 0x70], 0
jne 0x6f404a
mov eax, dword [ebp + 0x50]
cmp dword [eax + 0x4c], 0x1fffffff
je 0x6f4039
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x84]
mov edx, dword [ebp + 0x50]
mov edx, dword [edx + 0x30]
cmp eax, dword [edx]
jne 0x6f4039
mov eax, dword [ebp + 0x50]
cmp byte [eax + 0x68], 0
jne 0x6f404a
mov eax, dword [ebp + 0x50]
mov edx, dword [eax + 0x54]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f551c
mov edx, dword [ebp - 0x20]
mov edx, dword [edx]
mov ecx, 1
mov eax, 0x6f9e60
call fcn.0040c454
mov dword [ebp - 0x164], eax
lea eax, [ebp - 0x638]
push eax
mov ecx, dword [ebp - 0x164]
dec ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov edx, 3
call fcn.0040c300
mov eax, dword [ebp - 0x638]
lea edx, [ebp - 0xc]
call fcn.004300b0
lea ecx, [ebp - 0x48]
mov edx, dword [ebp - 0xc]
mov eax, 0x6f9ebc
call fcn.006f1b18
test eax, eax
jle 0x6f41ab
mov edx, dword [ebp - 0x20]
mov edx, dword [edx]
mov ecx, 1
mov eax, 0x6f9e60
call fcn.0040c454
mov dword [ebp - 0x168], eax
lea eax, [ebp - 0xc]
push eax
mov ecx, dword [ebp - 0x168]
dec ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov edx, 3
call fcn.0040c300
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x16c], eax
cmp dword [ebp - 0x16c], 0
je 0x6f40fc
mov eax, dword [ebp - 0x16c]
mov eax, dword [eax - 4]
mov dword [ebp - 0x16c], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x48]
add edx, 4
mov ecx, dword [ebp - 0x16c]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x170], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x174], eax
cmp dword [ebp - 0x174], 0
je 0x6f414d
mov eax, dword [ebp - 0x174]
mov eax, dword [eax - 4]
mov dword [ebp - 0x174], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x170]
inc edx
mov ecx, dword [ebp - 0x174]
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x178], eax
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x178]
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov eax, dword [ebp + 0x50]
add eax, 0xffffff90
mov edx, dword [ebp - 0x10]
call fcn.0040b48c
mov eax, dword [ebp + 0x50]
mov byte [eax - 0x6a], 1
mov edx, dword [ebp - 0x20]
mov edx, dword [edx]
mov ecx, 1
mov eax, 0x6f9e60
call fcn.0040c454
mov dword [ebp - 0x17c], eax
lea eax, [ebp - 0x63c]
push eax
mov ecx, dword [ebp - 0x17c]
dec ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov edx, 3
call fcn.0040c300
mov eax, dword [ebp - 0x63c]
lea edx, [ebp - 0xc]
call fcn.004300b0
lea ecx, [ebp - 0x48]
mov edx, dword [ebp - 0xc]
mov eax, 0x6f9ee4
call fcn.006f1b18
test eax, eax
jle 0x6f4307
mov edx, dword [ebp - 0x20]
mov edx, dword [edx]
mov ecx, 1
mov eax, 0x6f9e60
call fcn.0040c454
mov dword [ebp - 0x180], eax
lea eax, [ebp - 0xc]
push eax
mov ecx, dword [ebp - 0x180]
dec ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov edx, 3
call fcn.0040c300
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x184], eax
cmp dword [ebp - 0x184], 0
je 0x6f425d
mov eax, dword [ebp - 0x184]
mov eax, dword [eax - 4]
mov dword [ebp - 0x184], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x48]
add edx, 5
mov ecx, dword [ebp - 0x184]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x188], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x18c], eax
cmp dword [ebp - 0x18c], 0
je 0x6f42ae
mov eax, dword [ebp - 0x18c]
mov eax, dword [eax - 4]
mov dword [ebp - 0x18c], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x188]
inc edx
mov ecx, dword [ebp - 0x18c]
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x190], eax
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x190]
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov eax, dword [ebp + 0x50]
add eax, 0xffffffb8
mov edx, dword [ebp - 0x10]
call fcn.0040b48c
jmp 0x6f4312
mov eax, dword [ebp + 0x50]
add eax, 0xffffffb8
call fcn.0040b054
mov eax, dword [ebp + 0x48]
mov eax, dword [eax]
mov edx, dword [ebp + 0x50]
mov dword [edx - 0xac], eax
mov eax, dword [ebp + 0x50]
mov edx, dword [ebp - 0x5ec]
mov dword [eax - 0xa8], edx
jmp case.0x6f3e41.68
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
movzx eax, word [eax + 4]
mov word [ebp - 0x192], ax
movzx eax, word [ebp - 0x192]
mov word [ebp - 0x194], ax
movzx eax, word [ebp - 0x192]
add eax, 0xffffff9f
sub ax, 0x1a
jae 0x6f4374
movzx eax, word [ebp - 0x192]
and ax, 0xffdf
mov word [ebp - 0x194], ax
movzx eax, word [ebp - 0x194]
mov word [ebp - 0x7a], ax
movzx eax, word [ebp - 0x7a]
sub ax, 0x3e
je 0x6f43a8
sub ax, 0xe
je 0x6f4416
sub ax, 3
je 0x6f443c
sub ax, 3
je 0x6f43e4
jmp case.0x6f3e41.68
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
mov dword [ebp - 0x198], eax
mov eax, dword [ebp - 0x198]
mov eax, dword [eax + 0x10]
movzx eax, byte [eax + 0x21]
mov byte [ebp - 0x199], al
movzx edx, byte [0x6f9ea4]
or dl, byte [ebp - 0x199]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f58b4
jmp case.0x6f3e41.68
mov byte [ebp - 0x21], 1
mov eax, dword [ebp + 0x44]
cmp dword [eax], 0
jne 0x6f43fb
mov eax, dword [ebp + 0x44]
mov edx, dword [ebp - 0x8c]
mov dword [eax], edx
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x40]
mov edx, 0x6f9efc
call fcn.0040c0d8
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x40]
jmp case.0x6f3e41.68
mov eax, dword [ebp + 0x50]
cmp byte [eax + 0x6c], 0
jne case.0x6f3e41.68
mov eax, dword [ebp + 0x50]
mov edx, dword [eax - 0xd4]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f551c
jmp case.0x6f3e41.68
mov edx, dword [ebp - 0x20]
mov edx, dword [edx]
mov ecx, 1
mov eax, 0x6f9e60
call fcn.0040c454
mov dword [ebp - 0x1a0], eax
lea eax, [ebp - 0x640]
push eax
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x1a0]
mov edx, 1
call fcn.0040c300
mov edx, dword [ebp - 0x640]
lea eax, [ebp - 8]
call fcn.0040c0d8
cmp byte [ebp + 0x4c], 0
jne case.0x6f3e41.68
mov eax, dword [ebp + 0x50]
cmp byte [eax + 0x70], 0
jne case.0x6f3e41.68
mov edx, dword [ebp - 0x20]
mov edx, dword [edx]
mov ecx, 1
mov eax, 0x6f9e60
call fcn.0040c454
mov dword [ebp - 0x1a4], eax
lea eax, [ebp - 0x644]
push eax
mov ecx, dword [ebp - 0x1a4]
dec ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov edx, 6
call fcn.0040c300
mov eax, dword [ebp - 0x644]
lea edx, [ebp - 0xc]
call fcn.004300b0
mov ecx, 1
mov edx, dword [ebp - 0xc]
mov eax, 0x6f9f0c
call fcn.0040c454
mov dword [ebp - 0x1a8], eax
cmp dword [ebp - 0x1a8], 0
jle 0x6f4a75
mov ecx, 1
mov edx, dword [ebp - 0xc]
mov eax, 0x6f9f0c
call fcn.0040c454
mov dword [ebp - 0x1ac], eax
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x1b0], eax
cmp dword [ebp - 0x1b0], 0
je 0x6f453a
mov eax, dword [ebp - 0x1b0]
mov eax, dword [eax - 4]
mov dword [ebp - 0x1b0], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x1ac]
add edx, 0xa
mov ecx, dword [ebp - 0x1b0]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x1b4], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x1b8], eax
cmp dword [ebp - 0x1b8], 0
je 0x6f458e
mov eax, dword [ebp - 0x1b8]
mov eax, dword [eax - 4]
mov dword [ebp - 0x1b8], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x1b4]
inc edx
mov ecx, dword [ebp - 0x1b8]
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x1bc], eax
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x1bc]
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x10]
call fcn.0040c300
lea edx, [ebp - 0x648]
mov eax, dword [ebp - 0x10]
call fcn.004300b0
mov eax, dword [ebp - 0x648]
mov dword [ebp - 0x1c0], eax
mov ecx, 1
mov edx, dword [ebp - 0x1c0]
mov eax, 0x6f9f30
call fcn.0040c454
mov dword [ebp - 0x1c4], eax
cmp dword [ebp - 0x1c4], 0
jle 0x6f476d
lea eax, [ebp - 0x10]
mov ecx, 4
mov edx, 1
call fcn.0040c348
mov eax, dword [ebp + 0x50]
cmp dword [eax + 0x94], 0
je 0x6f476d
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x94]
mov edx, dword [eax]
call dword [edx + 0x48]
mov ebx, eax
mov eax, dword [ebp - 0x10]
call fcn.006f14f0
cmp ebx, eax
jle 0x6f476d
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x94]
mov eax, dword [eax + 0x54]
mov edx, dword [ebp + 0x50]
mov dword [edx - 0xdc], eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x94]
mov eax, dword [eax + 0x50]
mov edx, dword [ebp + 0x50]
mov dword [edx - 0xd8], eax
cmp byte [ebp + 0x4c], 0
jne 0x6f46bd
mov eax, dword [ebp + 0x50]
cmp byte [eax + 0x74], 0
jne 0x6f46bd
mov eax, dword [ebp - 0x5fc]
push eax
mov eax, dword [ebp - 0x10]
call fcn.006f14f0
push eax
push 1
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x94]
mov ecx, dword [ebp - 0x600]
mov edx, dword [ebp - 0x1c]
call fcn.005e0710
cmp byte [ebp + 0x4c], 0
jne 0x6f476d
mov eax, dword [ebp + 0x50]
cmp byte [eax + 0x74], 0
je 0x6f476d
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x94]
fild dword [eax + 0x54]
mov eax, dword [ebp + 0x50]
fmul qword [eax + 0x58]
call fcn.00407c34
add eax, dword [ebp - 0x600]
mov dword [ebp - 0x5f8], eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x94]
fild dword [eax + 0x50]
mov eax, dword [ebp + 0x50]
fmul qword [eax + 0x58]
call fcn.00407c34
add eax, dword [ebp - 0x5fc]
mov dword [ebp - 0x5f4], eax
mov dl, 1
mov eax, dword [0x4f15c0]
call fcn.004fcef4
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x10]
call fcn.006f14f0
mov edx, eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x94]
mov ecx, dword [ebp - 0x5c]
call fcn.005dff44
lea edx, [ebp - 0x600]
mov ecx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x1c]
call fcn.006f03f4
mov eax, dword [ebp - 0x5c]
call fcn.00409258
lea esi, [ebp - 0x5f0]
lea edi, [ebp - 0x600]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x64c]
mov eax, dword [ebp - 0x10]
call fcn.004300b0
mov eax, dword [ebp - 0x64c]
mov dword [ebp - 0x1c8], eax
mov ecx, 1
mov edx, dword [ebp - 0x1c8]
mov eax, 0x6f9f48
call fcn.0040c454
mov dword [ebp - 0x1cc], eax
cmp dword [ebp - 0x1cc], 0
jle 0x6f4811
lea eax, [ebp - 0x10]
mov ecx, 5
mov edx, 1
call fcn.0040c348
mov eax, dword [ebp - 0x10]
push eax
push 0
movzx eax, byte [ebp + 0x4c]
xor al, 1
push eax
mov eax, dword [ebp + 0x50]
movzx eax, byte [eax + 0x74]
push eax
mov eax, dword [ebp + 0x50]
push dword [eax + 0x5c]
push dword [eax + 0x58]
lea eax, [ebp - 0x654]
push eax
mov ecx, dword [ebp - 0x5fc]
mov edx, dword [ebp - 0x600]
mov eax, dword [ebp - 0x1c]
call fcn.006f04fc
mov eax, dword [ebp + 0x50]
mov edx, dword [ebp - 0x654]
mov dword [eax - 0xdc], edx
mov edx, dword [ebp - 0x650]
mov dword [eax - 0xd8], edx
lea edx, [ebp - 0x658]
mov eax, dword [ebp - 0x10]
call fcn.004300b0
mov eax, dword [ebp - 0x658]
mov dword [ebp - 0x1d0], eax
mov ecx, 1
mov edx, dword [ebp - 0x1d0]
mov eax, 0x6f9f60
call fcn.0040c454
mov dword [ebp - 0x1d4], eax
cmp dword [ebp - 0x1d4], 0
jle 0x6f48b5
lea eax, [ebp - 0x10]
mov ecx, 5
mov edx, 1
call fcn.0040c348
mov eax, dword [ebp - 0x10]
push eax
push 1
movzx eax, byte [ebp + 0x4c]
xor al, 1
push eax
mov eax, dword [ebp + 0x50]
movzx eax, byte [eax + 0x74]
push eax
mov eax, dword [ebp + 0x50]
push dword [eax + 0x5c]
push dword [eax + 0x58]
lea eax, [ebp - 0x654]
push eax
mov ecx, dword [ebp - 0x5fc]
mov edx, dword [ebp - 0x600]
mov eax, dword [ebp - 0x1c]
call fcn.006f04fc
mov eax, dword [ebp + 0x50]
mov edx, dword [ebp - 0x654]
mov dword [eax - 0xdc], edx
mov edx, dword [ebp - 0x650]
mov dword [eax - 0xd8], edx
xor eax, eax
mov dword [ebp - 0x58], eax
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9f78
call fcn.0040c454
mov dword [ebp - 0x1d8], eax
cmp dword [ebp - 0x1d8], 0
jne 0x6f48f5
mov eax, dword [ebp + 0x50]
cmp dword [eax + 0x20], 0
je 0x6f48f5
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x20]
mov edx, dword [ebp - 0x10]
mov ecx, dword [eax]
call dword [ecx + 0x50]
mov dword [ebp - 0x58], eax
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9f88
call fcn.0040c454
mov dword [ebp - 0x1dc], eax
cmp dword [ebp - 0x1dc], 0
jle 0x6f4976
mov eax, dword [ebp + 0x50]
cmp dword [eax + 0x24], 0
je 0x6f4976
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x24]
mov edx, dword [ebp - 0x10]
call fcn.006e1efc
test eax, eax
jne 0x6f495a
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x24]
call fcn.006e1eac
mov dword [ebp - 0x90], eax
mov eax, dword [ebp - 0x90]
mov byte [eax + 0x65], 0
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x90]
call fcn.006e186c
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x24]
mov edx, dword [ebp - 0x10]
call fcn.006e1efc
mov edx, dword [0x6df558]
call fcn.004094ac
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x58], 0
je 0x6f4a75
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
call dword [edx + 0x20]
test al, al
jne 0x6f4a75
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
call dword [edx + 0x30]
test eax, eax
jle 0x6f4a75
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
call dword [edx + 0x24]
test eax, eax
jle 0x6f4a75
xor eax, eax
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x54]
push eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x58]
push eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x5c]
push eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x60]
push eax
call sub.gdi32.dll_CreateRectRgn
mov edx, dword [ebp + 0x50]
mov dword [edx - 0xe0], eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0xe0]
push eax
mov eax, dword [ebp - 0x1c]
call fcn.004f7324
push eax
call sub.gdi32.dll_SelectClipRgn
jmp 0x6f4a45
xor eax, eax
mov dword [ebp - 0x38], eax
jmp 0x6f4a29
mov eax, dword [ebp - 0x58]
push eax
mov eax, dword [ebp + 0x50]
mov ecx, dword [eax - 0x5c]
add ecx, dword [ebp - 0x3c]
mov eax, dword [ebp + 0x50]
mov edx, dword [eax - 0x60]
add edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x1c]
mov ebx, dword [eax]
call dword [ebx + 0x44]
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
call dword [edx + 0x30]
add dword [ebp - 0x38], eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x58]
mov edx, dword [ebp + 0x50]
sub eax, dword [edx - 0x60]
cmp eax, dword [ebp - 0x38]
jg 0x6f4a00
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
call dword [edx + 0x24]
add dword [ebp - 0x3c], eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x54]
mov edx, dword [ebp + 0x50]
sub eax, dword [edx - 0x5c]
cmp eax, dword [ebp - 0x3c]
jg 0x6f49f9
push 0
mov eax, dword [ebp - 0x1c]
call fcn.004f7324
push eax
call sub.gdi32.dll_SelectClipRgn
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0xe0]
push eax
call sub.gdi32.dll_DeleteObject
mov ecx, 1
mov edx, dword [ebp - 0xc]
mov eax, 0x6f9f9c
call fcn.0040c454
mov dword [ebp - 0x1e0], eax
cmp dword [ebp - 0x1e0], 0
jle 0x6f500e
mov ecx, 1
mov edx, dword [ebp - 0xc]
mov eax, 0x6f9f9c
call fcn.0040c454
mov dword [ebp - 0x1e4], eax
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x1e8], eax
cmp dword [ebp - 0x1e8], 0
je 0x6f4ad3
mov eax, dword [ebp - 0x1e8]
mov eax, dword [eax - 4]
mov dword [ebp - 0x1e8], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x1e4]
add edx, 0xa
mov ecx, dword [ebp - 0x1e8]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x1ec], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x1f0], eax
cmp dword [ebp - 0x1f0], 0
je 0x6f4b27
mov eax, dword [ebp - 0x1f0]
mov eax, dword [eax - 4]
mov dword [ebp - 0x1f0], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x1ec]
inc edx
mov ecx, dword [ebp - 0x1f0]
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x1f4], eax
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x1f4]
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x10]
call fcn.0040c300
lea edx, [ebp - 0x65c]
mov eax, dword [ebp - 0x10]
call fcn.004300b0
mov eax, dword [ebp - 0x65c]
mov dword [ebp - 0x1f8], eax
mov ecx, 1
mov edx, dword [ebp - 0x1f8]
mov eax, 0x6f9f30
call fcn.0040c454
mov dword [ebp - 0x1fc], eax
cmp dword [ebp - 0x1fc], 0
jle 0x6f4d06
lea eax, [ebp - 0x10]
mov ecx, 4
mov edx, 1
call fcn.0040c348
mov eax, dword [ebp + 0x50]
cmp dword [eax + 0x94], 0
je 0x6f4d06
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x94]
mov edx, dword [eax]
call dword [edx + 0x48]
mov ebx, eax
mov eax, dword [ebp - 0x10]
call fcn.006f14f0
cmp ebx, eax
jle 0x6f4d06
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x94]
mov eax, dword [eax + 0x54]
mov edx, dword [ebp + 0x50]
mov dword [edx - 0xdc], eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x94]
mov eax, dword [eax + 0x50]
mov edx, dword [ebp + 0x50]
mov dword [edx - 0xd8], eax
cmp byte [ebp + 0x4c], 0
jne 0x6f4c56
mov eax, dword [ebp + 0x50]
cmp byte [eax + 0x74], 0
jne 0x6f4c56
mov eax, dword [ebp - 0x5fc]
push eax
mov eax, dword [ebp - 0x10]
call fcn.006f14f0
push eax
push 1
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x94]
mov ecx, dword [ebp - 0x600]
mov edx, dword [ebp - 0x1c]
call fcn.005e0710
cmp byte [ebp + 0x4c], 0
jne 0x6f4d06
mov eax, dword [ebp + 0x50]
cmp byte [eax + 0x74], 0
je 0x6f4d06
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x94]
fild dword [eax + 0x54]
mov eax, dword [ebp + 0x50]
fmul qword [eax + 0x58]
call fcn.00407c34
add eax, dword [ebp - 0x600]
mov dword [ebp - 0x5f8], eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x94]
fild dword [eax + 0x50]
mov eax, dword [ebp + 0x50]
fmul qword [eax + 0x58]
call fcn.00407c34
add eax, dword [ebp - 0x5fc]
mov dword [ebp - 0x5f4], eax
mov dl, 1
mov eax, dword [0x4f15c0]
call fcn.004fcef4
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x10]
call fcn.006f14f0
mov edx, eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x94]
mov ecx, dword [ebp - 0x5c]
call fcn.005dff44
lea edx, [ebp - 0x600]
mov ecx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x1c]
call fcn.006f03f4
mov eax, dword [ebp - 0x5c]
call fcn.00409258
lea esi, [ebp - 0x5f0]
lea edi, [ebp - 0x600]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x660]
mov eax, dword [ebp - 0x10]
call fcn.004300b0
mov eax, dword [ebp - 0x660]
mov dword [ebp - 0x200], eax
mov ecx, 1
mov edx, dword [ebp - 0x200]
mov eax, 0x6f9f48
call fcn.0040c454
mov dword [ebp - 0x204], eax
cmp dword [ebp - 0x204], 0
jle 0x6f4daa
lea eax, [ebp - 0x10]
mov ecx, 5
mov edx, 1
call fcn.0040c348
mov eax, dword [ebp - 0x10]
push eax
push 0
movzx eax, byte [ebp + 0x4c]
xor al, 1
push eax
mov eax, dword [ebp + 0x50]
movzx eax, byte [eax + 0x74]
push eax
mov eax, dword [ebp + 0x50]
push dword [eax + 0x5c]
push dword [eax + 0x58]
lea eax, [ebp - 0x654]
push eax
mov ecx, dword [ebp - 0x5fc]
mov edx, dword [ebp - 0x600]
mov eax, dword [ebp - 0x1c]
call fcn.006f04fc
mov eax, dword [ebp + 0x50]
mov edx, dword [ebp - 0x654]
mov dword [eax - 0xdc], edx
mov edx, dword [ebp - 0x650]
mov dword [eax - 0xd8], edx
lea edx, [ebp - 0x664]
mov eax, dword [ebp - 0x10]
call fcn.004300b0
mov eax, dword [ebp - 0x664]
mov dword [ebp - 0x208], eax
mov ecx, 1
mov edx, dword [ebp - 0x208]
mov eax, 0x6f9f60
call fcn.0040c454
mov dword [ebp - 0x20c], eax
cmp dword [ebp - 0x20c], 0
jle 0x6f4e4e
lea eax, [ebp - 0x10]
mov ecx, 5
mov edx, 1
call fcn.0040c348
mov eax, dword [ebp - 0x10]
push eax
push 1
movzx eax, byte [ebp + 0x4c]
xor al, 1
push eax
mov eax, dword [ebp + 0x50]
movzx eax, byte [eax + 0x74]
push eax
mov eax, dword [ebp + 0x50]
push dword [eax + 0x5c]
push dword [eax + 0x58]
lea eax, [ebp - 0x654]
push eax
mov ecx, dword [ebp - 0x5fc]
mov edx, dword [ebp - 0x600]
mov eax, dword [ebp - 0x1c]
call fcn.006f04fc
mov eax, dword [ebp + 0x50]
mov edx, dword [ebp - 0x654]
mov dword [eax - 0xdc], edx
mov edx, dword [ebp - 0x650]
mov dword [eax - 0xd8], edx
xor eax, eax
mov dword [ebp - 0x58], eax
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9f78
call fcn.0040c454
mov dword [ebp - 0x210], eax
cmp dword [ebp - 0x210], 0
jne 0x6f4e8e
mov eax, dword [ebp + 0x50]
cmp dword [eax + 0x20], 0
je 0x6f4e8e
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x20]
mov edx, dword [ebp - 0x10]
mov ecx, dword [eax]
call dword [ecx + 0x50]
mov dword [ebp - 0x58], eax
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9f88
call fcn.0040c454
mov dword [ebp - 0x214], eax
cmp dword [ebp - 0x214], 0
jle 0x6f4f0f
mov eax, dword [ebp + 0x50]
cmp dword [eax + 0x24], 0
je 0x6f4f0f
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x24]
mov edx, dword [ebp - 0x10]
call fcn.006e1efc
test eax, eax
jne 0x6f4ef3
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x24]
call fcn.006e1eac
mov dword [ebp - 0x94], eax
mov eax, dword [ebp - 0x94]
mov byte [eax + 0x65], 0
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x94]
call fcn.006e186c
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x24]
mov edx, dword [ebp - 0x10]
call fcn.006e1efc
mov edx, dword [0x6df558]
call fcn.004094ac
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x58], 0
je 0x6f500e
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
call dword [edx + 0x20]
test al, al
jne 0x6f500e
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
call dword [edx + 0x30]
test eax, eax
jle 0x6f500e
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
call dword [edx + 0x24]
test eax, eax
jle 0x6f500e
xor eax, eax
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x54]
push eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x58]
push eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x5c]
push eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x60]
push eax
call sub.gdi32.dll_CreateRectRgn
mov edx, dword [ebp + 0x50]
mov dword [edx - 0xe0], eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0xe0]
push eax
mov eax, dword [ebp - 0x1c]
call fcn.004f7324
push eax
call sub.gdi32.dll_SelectClipRgn
jmp 0x6f4fde
xor eax, eax
mov dword [ebp - 0x38], eax
jmp 0x6f4fc2
mov eax, dword [ebp - 0x58]
push eax
mov eax, dword [ebp + 0x50]
mov ecx, dword [eax - 0x5c]
add ecx, dword [ebp - 0x3c]
mov eax, dword [ebp + 0x50]
mov edx, dword [eax - 0x60]
add edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x1c]
mov ebx, dword [eax]
call dword [ebx + 0x44]
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
call dword [edx + 0x30]
add dword [ebp - 0x38], eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x58]
mov edx, dword [ebp + 0x50]
sub eax, dword [edx - 0x60]
cmp eax, dword [ebp - 0x38]
jg 0x6f4f99
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
call dword [edx + 0x24]
add dword [ebp - 0x3c], eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x54]
mov edx, dword [ebp + 0x50]
sub eax, dword [edx - 0x5c]
cmp eax, dword [ebp - 0x3c]
jg 0x6f4f92
push 0
mov eax, dword [ebp - 0x1c]
call fcn.004f7324
push eax
call sub.gdi32.dll_SelectClipRgn
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0xe0]
push eax
call sub.gdi32.dll_DeleteObject
mov ecx, 1
mov edx, dword [ebp - 0xc]
mov eax, 0x6f9fbc
call fcn.0040c454
mov dword [ebp - 0x218], eax
cmp dword [ebp - 0x218], 0
jle 0x6f55d2
mov ecx, 1
mov edx, dword [ebp - 0xc]
mov eax, 0x6f9fbc
call fcn.0040c454
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x220], eax
cmp dword [ebp - 0x220], 0
je 0x6f506c
mov eax, dword [ebp - 0x220]
mov eax, dword [eax - 4]
mov dword [ebp - 0x220], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x21c]
add edx, 0xa
mov ecx, dword [ebp - 0x220]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x224], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x228], eax
cmp dword [ebp - 0x228], 0
je 0x6f50c0
mov eax, dword [ebp - 0x228]
mov eax, dword [eax - 4]
mov dword [ebp - 0x228], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x224]
inc edx
mov ecx, dword [ebp - 0x228]
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x22c], eax
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x22c]
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x10]
call fcn.0040c300
lea edx, [ebp - 0x668]
mov eax, dword [ebp - 0x10]
call fcn.004300b0
mov eax, dword [ebp - 0x668]
mov dword [ebp - 0x230], eax
mov ecx, 1
mov edx, dword [ebp - 0x230]
mov eax, 0x6f9f30
call fcn.0040c454
mov dword [ebp - 0x234], eax
cmp dword [ebp - 0x234], 0
jle 0x6f52ab
lea eax, [ebp - 0x10]
mov ecx, 4
mov edx, 1
call fcn.0040c348
mov eax, dword [ebp + 0x50]
cmp dword [eax + 0x94], 0
je 0x6f52ab
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x94]
mov edx, dword [eax]
call dword [edx + 0x48]
mov ebx, eax
mov eax, dword [ebp - 0x10]
call fcn.006f14f0
cmp ebx, eax
jle 0x6f52ab
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x94]
mov eax, dword [eax + 0x54]
mov edx, dword [ebp + 0x50]
mov dword [edx - 0xdc], eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x94]
mov eax, dword [eax + 0x50]
mov edx, dword [ebp + 0x50]
mov dword [edx - 0xd8], eax
cmp byte [ebp + 0x4c], 0
jne 0x6f51fb
mov eax, dword [ebp + 0x50]
cmp byte [eax + 0x74], 0
jne 0x6f51fb
mov eax, dword [ebp - 0x5fc]
push eax
mov eax, dword [ebp - 0x10]
call fcn.006f14f0
push eax
push 1
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x94]
mov ecx, dword [ebp - 0x5f8]
sub ecx, dword [eax + 0x54]
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x94]
mov edx, dword [ebp - 0x1c]
call fcn.005e0710
cmp byte [ebp + 0x4c], 0
jne 0x6f52ab
mov eax, dword [ebp + 0x50]
cmp byte [eax + 0x74], 0
je 0x6f52ab
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x94]
fild dword [eax + 0x54]
mov eax, dword [ebp + 0x50]
fmul qword [eax + 0x58]
call fcn.00407c34
add eax, dword [ebp - 0x600]
mov dword [ebp - 0x5f8], eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x94]
fild dword [eax + 0x50]
mov eax, dword [ebp + 0x50]
fmul qword [eax + 0x58]
call fcn.00407c34
add eax, dword [ebp - 0x5fc]
mov dword [ebp - 0x5f4], eax
mov dl, 1
mov eax, dword [0x4f15c0]
call fcn.004fcef4
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x10]
call fcn.006f14f0
mov edx, eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x94]
mov ecx, dword [ebp - 0x5c]
call fcn.005dff44
lea edx, [ebp - 0x600]
mov ecx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x1c]
call fcn.006f03f4
mov eax, dword [ebp - 0x5c]
call fcn.00409258
lea esi, [ebp - 0x5f0]
lea edi, [ebp - 0x600]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x66c]
mov eax, dword [ebp - 0x10]
call fcn.004300b0
mov eax, dword [ebp - 0x66c]
mov dword [ebp - 0x238], eax
mov ecx, 1
mov edx, dword [ebp - 0x238]
mov eax, 0x6f9f48
call fcn.0040c454
mov dword [ebp - 0x23c], eax
cmp dword [ebp - 0x23c], 0
jle 0x6f535b
lea eax, [ebp - 0x10]
mov ecx, 5
mov edx, 1
call fcn.0040c348
mov eax, dword [ebp - 0x10]
push eax
push 0
movzx eax, byte [ebp + 0x4c]
xor al, 1
push eax
mov eax, dword [ebp + 0x50]
movzx eax, byte [eax + 0x74]
push eax
mov eax, dword [ebp + 0x50]
push dword [eax + 0x5c]
push dword [eax + 0x58]
lea eax, [ebp - 0x654]
push eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x94]
mov edx, dword [ebp - 0x5f8]
sub edx, dword [eax + 0x54]
mov ecx, dword [ebp - 0x5fc]
mov eax, dword [ebp - 0x1c]
call fcn.006f04fc
mov eax, dword [ebp + 0x50]
mov edx, dword [ebp - 0x654]
mov dword [eax - 0xdc], edx
mov edx, dword [ebp - 0x650]
mov dword [eax - 0xd8], edx
lea edx, [ebp - 0x670]
mov eax, dword [ebp - 0x10]
call fcn.004300b0
mov eax, dword [ebp - 0x670]
mov dword [ebp - 0x240], eax
mov ecx, 1
mov edx, dword [ebp - 0x240]
mov eax, 0x6f9f60
call fcn.0040c454
mov dword [ebp - 0x244], eax
cmp dword [ebp - 0x244], 0
jle 0x6f540b
lea eax, [ebp - 0x10]
mov ecx, 5
mov edx, 1
call fcn.0040c348
mov eax, dword [ebp - 0x10]
push eax
push 1
movzx eax, byte [ebp + 0x4c]
xor al, 1
push eax
mov eax, dword [ebp + 0x50]
movzx eax, byte [eax + 0x74]
push eax
mov eax, dword [ebp + 0x50]
push dword [eax + 0x5c]
push dword [eax + 0x58]
lea eax, [ebp - 0x654]
push eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x94]
mov edx, dword [ebp - 0x5f8]
sub edx, dword [eax + 0x54]
mov ecx, dword [ebp - 0x5fc]
mov eax, dword [ebp - 0x1c]
call fcn.006f04fc
mov eax, dword [ebp + 0x50]
mov edx, dword [ebp - 0x654]
mov dword [eax - 0xdc], edx
mov edx, dword [ebp - 0x650]
mov dword [eax - 0xd8], edx
xor eax, eax
mov dword [ebp - 0x58], eax
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9f78
call fcn.0040c454
mov dword [ebp - 0x248], eax
cmp dword [ebp - 0x248], 0
jne 0x6f544b
mov eax, dword [ebp + 0x50]
cmp dword [eax + 0x20], 0
je 0x6f544b
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x20]
mov edx, dword [ebp - 0x10]
mov ecx, dword [eax]
call dword [ecx + 0x50]
mov dword [ebp - 0x58], eax
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9f88
call fcn.0040c454
mov dword [ebp - 0x24c], eax
cmp dword [ebp - 0x24c], 0
jle 0x6f54cc
mov eax, dword [ebp + 0x50]
cmp dword [eax + 0x24], 0
je 0x6f54cc
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x24]
mov edx, dword [ebp - 0x10]
call fcn.006e1efc
test eax, eax
jne 0x6f54b0
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x24]
call fcn.006e1eac
mov dword [ebp - 0x98], eax
mov eax, dword [ebp - 0x98]
mov byte [eax + 0x65], 0
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x98]
call fcn.006e186c
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x24]
mov edx, dword [ebp - 0x10]
call fcn.006e1efc
mov edx, dword [0x6df558]
call fcn.004094ac
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x58], 0
je 0x6f55d2
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
call dword [edx + 0x20]
test al, al
jne 0x6f55d2
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
call dword [edx + 0x30]
test eax, eax
jle 0x6f55d2
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
call dword [edx + 0x24]
test eax, eax
jle 0x6f55d2
xor eax, eax
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x54]
push eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x58]
push eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x5c]
push eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x60]
push eax
call sub.gdi32.dll_CreateRectRgn
mov edx, dword [ebp + 0x50]
mov dword [edx - 0xe0], eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0xe0]
push eax
mov eax, dword [ebp - 0x1c]
call fcn.004f7324
push eax
call sub.gdi32.dll_SelectClipRgn
jmp 0x6f55a2
xor eax, eax
mov dword [ebp - 0x38], eax
jmp 0x6f5586
mov eax, dword [ebp - 0x58]
push eax
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
call dword [edx + 0x30]
mov edx, dword [ebp + 0x50]
mov edx, dword [edx - 0x58]
sub edx, eax
mov eax, dword [ebp + 0x50]
mov ecx, dword [eax - 0x5c]
add ecx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x1c]
mov ebx, dword [eax]
call dword [ebx + 0x44]
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
call dword [edx + 0x30]
add dword [ebp - 0x38], eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x58]
mov edx, dword [ebp + 0x50]
sub eax, dword [edx - 0x60]
cmp eax, dword [ebp - 0x38]
jg 0x6f5556
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
call dword [edx + 0x24]
add dword [ebp - 0x3c], eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x54]
mov edx, dword [ebp + 0x50]
sub eax, dword [edx - 0x5c]
cmp eax, dword [ebp - 0x3c]
jg 0x6f554f
push 0
mov eax, dword [ebp - 0x1c]
call fcn.004f7324
push eax
call sub.gdi32.dll_SelectClipRgn
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0xe0]
push eax
call sub.gdi32.dll_DeleteObject
lea ecx, [ebp - 0x48]
mov edx, dword [ebp - 0xc]
mov eax, 0x6f9fe0
call fcn.006f1b18
test eax, eax
jle case.0x6f3e41.68
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x250], eax
cmp dword [ebp - 0x250], 0
je 0x6f560b
mov eax, dword [ebp - 0x250]
mov eax, dword [eax - 4]
mov dword [ebp - 0x250], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x48]
add edx, 5
mov ecx, dword [ebp - 0x250]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x254], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x258], eax
cmp dword [ebp - 0x258], 0
je 0x6f565c
mov eax, dword [ebp - 0x258]
mov eax, dword [eax - 4]
mov dword [ebp - 0x258], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x254]
inc edx
mov ecx, dword [ebp - 0x258]
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x25c], eax
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x25c]
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov dword [ebp - 0x60], 0x1fffffff
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x260], eax
cmp dword [ebp - 0x260], 0
je 0x6f56cd
mov eax, dword [ebp - 0x260]
mov eax, dword [eax - 4]
mov dword [ebp - 0x260], eax
cmp dword [ebp - 0x260], 0
jle 0x6f5708
mov eax, dword [ebp - 0x10]
cmp word [eax], 0x23
jne 0x6f56ec
mov eax, dword [ebp - 0x10]
call fcn.006f13cc
mov dword [ebp - 0x60], eax
jmp 0x6f5708
lea edx, [ebp - 0x674]
mov eax, dword [ebp - 0x10]
call fcn.00430368
mov eax, dword [ebp - 0x674]
call fcn.006f0974
mov dword [ebp - 0x60], eax
lea ecx, [ebp - 0x48]
mov edx, dword [ebp - 0xc]
mov eax, 0x6f9ffc
call fcn.006f1b18
test eax, eax
jle 0x6f5990
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x264], eax
cmp dword [ebp - 0x264], 0
je 0x6f5741
mov eax, dword [ebp - 0x264]
mov eax, dword [eax - 4]
mov dword [ebp - 0x264], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x48]
add edx, 5
mov ecx, dword [ebp - 0x264]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x268], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x26c], eax
cmp dword [ebp - 0x26c], 0
je 0x6f5792
mov eax, dword [ebp - 0x26c]
mov eax, dword [eax - 4]
mov dword [ebp - 0x26c], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x268]
inc edx
mov ecx, dword [ebp - 0x26c]
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x270], eax
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x270]
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov dword [ebp - 0x64], 0x1fffffff
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x274], eax
cmp dword [ebp - 0x274], 0
je 0x6f5803
mov eax, dword [ebp - 0x274]
mov eax, dword [eax - 4]
mov dword [ebp - 0x274], eax
cmp dword [ebp - 0x274], 0
jle 0x6f583e
mov eax, dword [ebp - 0x10]
cmp word [eax], 0x23
jne 0x6f5822
mov eax, dword [ebp - 0x10]
call fcn.006f13cc
mov dword [ebp - 0x64], eax
jmp 0x6f583e
lea edx, [ebp - 0x678]
mov eax, dword [ebp - 0x10]
call fcn.00430368
mov eax, dword [ebp - 0x678]
call fcn.006f0974
mov dword [ebp - 0x64], eax
lea eax, [ebp - 0x10]
mov edx, 0x6fa01c
call fcn.0040b48c
lea ecx, [ebp - 0x48]
mov edx, dword [ebp - 0xc]
mov eax, 0x6fa02c
call fcn.006f1b18
test eax, eax
jle 0x6f591e
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x278], eax
cmp dword [ebp - 0x278], 0
je 0x6f5884
mov eax, dword [ebp - 0x278]
mov eax, dword [eax - 4]
mov dword [ebp - 0x278], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x48]
add edx, 3
mov ecx, dword [ebp - 0x278]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x27c], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x280], eax
cmp dword [ebp - 0x280], 0
je 0x6f58d5
mov eax, dword [ebp - 0x280]
mov eax, dword [eax - 4]
mov dword [ebp - 0x280], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x27c]
inc edx
mov ecx, dword [ebp - 0x280]
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x284], eax
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x284]
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x44]
mov edx, dword [ebp - 0x60]
call fcn.004f5cbc
push 0x1fffffff
push 0x40
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x54]
push eax
lea eax, [ebp - 0x624]
push eax
mov eax, dword [ebp + 0x50]
mov ecx, dword [eax - 0x58]
mov eax, dword [ebp + 0x50]
mov edx, dword [eax - 0x5c]
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x60]
call fcn.00415460
lea eax, [ebp - 0x624]
push eax
mov eax, dword [ebp - 0x10]
mov edx, 0x6fa01c
call fcn.0040c2c8
sete al
push eax
mov ecx, dword [ebp - 0x64]
mov edx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x1c]
call fcn.006f0730
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
mov dl, 1
call fcn.004f6220
jmp case.0x6f3e41.68
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
mov dword [ebp - 0x288], eax
mov eax, dword [ebp - 0x288]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + 0x18]
mov edx, dword [ebp + 0x50]
mov dword [edx - 0xb0], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
mov edx, dword [ebp - 0x60]
call fcn.004f60a0
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x44]
mov dword [ebp - 0x28c], eax
mov eax, dword [ebp - 0x28c]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + 0x18]
mov edx, dword [ebp + 0x50]
mov dword [edx - 0x50], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x44]
mov edx, dword [ebp - 0x60]
call fcn.004f5cbc
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x58]
push eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x54]
push eax
mov eax, dword [ebp + 0x50]
mov ecx, dword [eax - 0x5c]
mov eax, dword [ebp + 0x50]
mov edx, dword [eax - 0x60]
sub edx, 2
mov eax, dword [ebp - 0x1c]
mov ebx, dword [eax]
call dword [ebx + 0x7c]
mov eax, dword [ebp + 0x50]
mov edx, dword [eax - 0x50]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x44]
call fcn.004f5cbc
jmp case.0x6f3e41.68
cmp byte [ebp + 0x4c], 0
jne case.0x6f3e41.68
mov eax, dword [ebp + 0x50]
mov byte [eax - 0x71], 1
jmp case.0x6f3e41.68
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
movzx eax, word [eax + 4]
mov word [ebp - 0x28e], ax
movzx eax, word [ebp - 0x28e]
mov word [ebp - 0x290], ax
movzx eax, word [ebp - 0x28e]
add eax, 0xffffff9f
sub ax, 0x1a
jae 0x6f5a7c
movzx eax, word [ebp - 0x28e]
and ax, 0xffdf
mov word [ebp - 0x290], ax
movzx eax, word [ebp - 0x290]
sub ax, 0x49
je 0x6f5c9a
sub ax, 9
jne case.0x6f3e41.68
mov byte [ebp - 0x21], 1
cmp byte [ebp + 0x4c], 0
jne case.0x6f3e41.68
mov edx, dword [ebp - 0x20]
mov edx, dword [edx]
mov ecx, 1
mov eax, 0x6f9e60
call fcn.0040c454
mov dword [ebp - 0x294], eax
lea eax, [ebp - 0xc]
push eax
mov ecx, dword [ebp - 0x294]
dec ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov edx, 4
call fcn.0040c300
xor eax, eax
mov dword [ebp - 0x60], eax
lea edx, [ebp - 0x67c]
mov eax, dword [ebp - 0xc]
call fcn.004300b0
mov edx, dword [ebp - 0x67c]
lea ecx, [ebp - 0x48]
mov eax, 0x6fa040
call fcn.006f1b18
test eax, eax
jle 0x6f5c1e
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x298], eax
cmp dword [ebp - 0x298], 0
je 0x6f5b28
mov eax, dword [ebp - 0x298]
mov eax, dword [eax - 4]
mov dword [ebp - 0x298], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x48]
add edx, 5
mov ecx, dword [ebp - 0x298]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x29c], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x2a0], eax
cmp dword [ebp - 0x2a0], 0
je 0x6f5b79
mov eax, dword [ebp - 0x2a0]
mov eax, dword [eax - 4]
mov dword [ebp - 0x2a0], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x29c]
inc edx
mov ecx, dword [ebp - 0x2a0]
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x2a4], eax
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x2a4]
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x2a8], eax
cmp dword [ebp - 0x2a8], 0
je 0x6f5be3
mov eax, dword [ebp - 0x2a8]
mov eax, dword [eax - 4]
mov dword [ebp - 0x2a8], eax
cmp dword [ebp - 0x2a8], 0
jle 0x6f5c1e
mov eax, dword [ebp - 0x10]
cmp word [eax], 0x23
jne 0x6f5c02
mov eax, dword [ebp - 0x10]
call fcn.006f13cc
mov dword [ebp - 0x60], eax
jmp 0x6f5c1e
lea edx, [ebp - 0x680]
mov eax, dword [ebp - 0x10]
call fcn.00430368
mov eax, dword [ebp - 0x680]
call fcn.006f0974
mov dword [ebp - 0x60], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x44]
mov dword [ebp - 0x2ac], eax
mov eax, dword [ebp - 0x2ac]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + 0x18]
mov edx, dword [ebp + 0x50]
mov dword [edx - 0x50], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x44]
mov edx, 1
call fcn.004f5e18
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x44]
mov edx, dword [ebp - 0x60]
call fcn.004f5cbc
mov ecx, dword [ebp - 0x5f4]
inc ecx
mov eax, dword [ebp + 0x50]
mov edx, dword [eax - 0x60]
mov eax, dword [ebp - 0x1c]
mov ebx, dword [eax]
call dword [ebx + 0x64]
mov ecx, dword [ebp - 0x5f4]
inc ecx
mov eax, dword [ebp + 0x50]
mov edx, dword [eax - 0x58]
mov eax, dword [ebp - 0x1c]
mov ebx, dword [eax]
call dword [ebx + 0x60]
mov eax, dword [ebp + 0x50]
mov edx, dword [eax - 0x50]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x44]
call fcn.004f5cbc
jmp case.0x6f3e41.68
cmp byte [ebp + 0x4c], 0
jne case.0x6f3e41.68
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0x18]
mov edx, dword [ebp + 0x50]
mov dword [edx - 0xb4], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
mov dword [ebp - 0x2b0], eax
mov eax, dword [ebp - 0x2b0]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + 0x18]
mov edx, dword [ebp + 0x50]
mov dword [edx - 0xbc], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
mov dword [ebp - 0x2b4], eax
mov eax, dword [ebp - 0x2b4]
mov eax, dword [eax + 0x10]
movzx eax, byte [eax + 0x21]
mov byte [ebp - 0x2b5], al
mov eax, dword [ebp + 0x50]
movzx edx, byte [ebp - 0x2b5]
mov byte [eax - 0xb5], dl
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
mov dword [ebp - 0x2bc], eax
mov eax, dword [ebp - 0x2bc]
mov eax, dword [eax + 0x10]
movzx eax, byte [eax + 0x20]
cmp al, 1
jne 0x6f5d30
mov eax, dword [ebp + 0x50]
mov dword [eax - 0xbc], 0x1fffffff
mov eax, dword [ebp + 0x50]
mov edx, dword [eax + 0x14]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
call fcn.004f60a0
mov eax, dword [ebp + 0x50]
cmp dword [eax + 0x14], 0x1fffffff
jne 0x6f5d5a
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
mov dl, 1
call fcn.004f6220
mov eax, dword [ebp + 0x50]
mov edx, dword [eax + 0x10]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f551c
mov eax, dword [ebp + 0x50]
movzx edx, byte [eax + 0xc]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f58b4
jmp case.0x6f3e41.68
mov edx, dword [ebp - 0x20]
mov edx, dword [edx]
mov ecx, 1
mov eax, 0x6f9e60
call fcn.0040c454
mov dword [ebp - 0x2c0], eax
lea eax, [ebp - 0x684]
push eax
mov ecx, dword [ebp - 0x2c0]
dec ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov edx, 2
call fcn.0040c300
mov eax, dword [ebp - 0x684]
lea edx, [ebp - 0xc]
call fcn.004300b0
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0x18]
mov edx, dword [ebp + 0x50]
mov dword [edx - 0xe4], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f5860
mov edx, dword [ebp + 0x50]
mov dword [edx - 0xe8], eax
lea ecx, [ebp - 0x48]
mov edx, dword [ebp - 0xc]
mov eax, 0x6fa058
call fcn.006f1b18
test eax, eax
jle 0x6f5ed0
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x2c4], eax
cmp dword [ebp - 0x2c4], 0
je 0x6f5e26
mov eax, dword [ebp - 0x2c4]
mov eax, dword [eax - 4]
mov dword [ebp - 0x2c4], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x48]
add edx, 4
mov ecx, dword [ebp - 0x2c4]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x2c8], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x2cc], eax
cmp dword [ebp - 0x2cc], 0
je 0x6f5e77
mov eax, dword [ebp - 0x2cc]
mov eax, dword [eax - 4]
mov dword [ebp - 0x2cc], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x2c8]
inc edx
mov ecx, dword [ebp - 0x2cc]
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x2d0], eax
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x2d0]
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov eax, dword [ebp + 0x50]
add eax, 0xffffff14
mov edx, dword [ebp - 0x10]
call fcn.0040b48c
lea ecx, [ebp - 0x48]
mov edx, dword [ebp - 0xc]
mov eax, 0x6fa040
call fcn.006f1b18
test eax, eax
jle 0x6f600b
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x2d4], eax
cmp dword [ebp - 0x2d4], 0
je 0x6f5f09
mov eax, dword [ebp - 0x2d4]
mov eax, dword [eax - 4]
mov dword [ebp - 0x2d4], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x48]
add edx, 5
mov ecx, dword [ebp - 0x2d4]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x2d8], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x2dc], eax
cmp dword [ebp - 0x2dc], 0
je 0x6f5f5a
mov eax, dword [ebp - 0x2dc]
mov eax, dword [eax - 4]
mov dword [ebp - 0x2dc], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x2d8]
inc edx
mov ecx, dword [ebp - 0x2dc]
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x2e0], eax
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x2e0]
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x2e4], eax
cmp dword [ebp - 0x2e4], 0
je 0x6f5fc4
mov eax, dword [ebp - 0x2e4]
mov eax, dword [eax - 4]
mov dword [ebp - 0x2e4], eax
cmp dword [ebp - 0x2e4], 0
jle 0x6f5fe9
mov eax, dword [ebp - 0x10]
cmp word [eax], 0x23
jne 0x6f5fe9
mov eax, dword [ebp - 0x10]
call fcn.006f13cc
mov edx, dword [ebp + 0x50]
mov dword [edx - 0xe4], eax
jmp 0x6f600b
lea edx, [ebp - 0x688]
mov eax, dword [ebp - 0x10]
call fcn.00430368
mov eax, dword [ebp - 0x688]
call fcn.006f0974
mov edx, dword [ebp + 0x50]
mov dword [edx - 0xe4], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f5860
mov edx, dword [ebp + 0x50]
mov dword [edx - 0xf0], eax
lea ecx, [ebp - 0x48]
mov edx, dword [ebp - 0xc]
mov eax, 0x6fa070
call fcn.006f1b18
test eax, eax
jle case.0x6f6103.0
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x2e8], eax
cmp dword [ebp - 0x2e8], 0
je 0x6f6058
mov eax, dword [ebp - 0x2e8]
mov eax, dword [eax - 4]
mov dword [ebp - 0x2e8], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x48]
add edx, 5
mov ecx, dword [ebp - 0x2e8]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x2ec], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x2f0], eax
cmp dword [ebp - 0x2f0], 0
je 0x6f60a9
mov eax, dword [ebp - 0x2f0]
mov eax, dword [eax - 4]
mov dword [ebp - 0x2f0], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x2ec]
inc edx
mov ecx, dword [ebp - 0x2f0]
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x2f4], eax
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x2f4]
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov eax, dword [ebp - 0x10]
call fcn.006f14f0
cmp eax, 5
ja case.0x6f6103.0
jmp dword [eax*4 + 0x6f610a]
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x9c]
call fcn.004f5860
mov edx, eax
inc edx
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f587c
jmp case.0x6f6103.0
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x9c]
call fcn.004f5860
mov edx, eax
add edx, 2
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f587c
jmp case.0x6f6103.0
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x9c]
call fcn.004f5860
mov edx, eax
add edx, 4
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f587c
jmp case.0x6f6103.0
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x9c]
call fcn.004f5860
mov edx, eax
add edx, 6
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f587c
jmp case.0x6f6103.0
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x9c]
call fcn.004f5860
mov edx, eax
add edx, 8
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f587c
lea edx, [ebp - 0x68c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f57ec
mov edx, dword [ebp - 0x68c]
mov eax, dword [ebp + 0x50]
add eax, 0xffffff0c
call fcn.0040b48c
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0x18]
mov edx, dword [ebp + 0x50]
mov dword [edx - 0xf8], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
mov dword [ebp - 0x2f8], eax
mov eax, dword [ebp - 0x2f8]
mov eax, dword [eax + 0x10]
movzx eax, byte [eax + 0x21]
mov byte [ebp - 0x2f9], al
mov eax, dword [ebp + 0x50]
movzx edx, byte [ebp - 0x2f9]
mov byte [eax - 0xf9], dl
mov eax, dword [ebp + 0x50]
mov edx, dword [eax - 0xe4]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f551c
mov eax, dword [ebp + 0x50]
mov edx, dword [eax - 0xe8]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f587c
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
movzx edx, byte [0x6fa07c]
call fcn.004f58b4
cmp byte [ebp + 0x4c], 0
jne 0x6f6560
lea esi, [ebp - 0x600]
lea edi, [ebp - 0x610]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
mov edx, 0x6fa08c
call fcn.004f5804
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0xec]
mov edx, 0x6fa0b0
call fcn.0040c2c8
jne 0x6f62b3
mov eax, dword [ebp + 0x50]
add eax, 0xffffff14
mov edx, 0x6fa0c4
call fcn.0040b48c
jmp 0x6f6511
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0xec]
mov edx, 0x6fa0d4
call fcn.0040c2c8
jne 0x6f62df
mov eax, dword [ebp + 0x50]
add eax, 0xffffff14
mov edx, 0x6fa0ec
call fcn.0040b48c
jmp 0x6f6511
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0xec]
mov edx, 0x6fa0fc
call fcn.0040c2c8
jne 0x6f630b
mov eax, dword [ebp + 0x50]
add eax, 0xffffff14
mov edx, 0x6fa114
call fcn.0040b48c
jmp 0x6f6511
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0xec]
mov edx, 0x6fa124
call fcn.0040c2c8
jne 0x6f6337
mov eax, dword [ebp + 0x50]
add eax, 0xffffff14
mov edx, 0x6fa140
call fcn.0040b48c
jmp 0x6f6511
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0xec]
mov edx, 0x6fa150
call fcn.0040c2c8
jne 0x6f6363
mov eax, dword [ebp + 0x50]
add eax, 0xffffff14
mov edx, 0x6fa164
call fcn.0040b48c
jmp 0x6f6511
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0xec]
mov edx, 0x6fa174
call fcn.0040c2c8
jne 0x6f638f
mov eax, dword [ebp + 0x50]
add eax, 0xffffff14
mov edx, 0x6fa18c
call fcn.0040b48c
jmp 0x6f6511
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0xec]
mov edx, 0x6fa19c
call fcn.0040c2c8
jne 0x6f63bb
mov eax, dword [ebp + 0x50]
add eax, 0xffffff14
mov edx, 0x6fa1b4
call fcn.0040b48c
jmp 0x6f6511
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0xec]
mov edx, 0x6fa1c4
call fcn.0040c2c8
jne 0x6f63e7
mov eax, dword [ebp + 0x50]
add eax, 0xffffff14
mov edx, 0x6fa1dc
call fcn.0040b48c
jmp 0x6f6511
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0xec]
mov edx, 0x6fa1ec
call fcn.0040c2c8
jne 0x6f6413
mov eax, dword [ebp + 0x50]
add eax, 0xffffff14
mov edx, 0x6fa200
call fcn.0040b48c
jmp 0x6f6511
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0xec]
mov edx, 0x6fa210
call fcn.0040c2c8
jne 0x6f643f
mov eax, dword [ebp + 0x50]
add eax, 0xffffff14
mov edx, 0x6fa224
call fcn.0040b48c
jmp 0x6f6511
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0xec]
mov edx, 0x6fa234
call fcn.0040c2c8
jne 0x6f646b
mov eax, dword [ebp + 0x50]
add eax, 0xffffff14
mov edx, 0x6fa248
call fcn.0040b48c
jmp 0x6f6511
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0xec]
mov edx, 0x6fa258
call fcn.0040c2c8
jne 0x6f6494
mov eax, dword [ebp + 0x50]
add eax, 0xffffff14
mov edx, 0x6fa26c
call fcn.0040b48c
jmp 0x6f6511
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0xec]
mov edx, 0x6fa27c
call fcn.0040c2c8
jne 0x6f6504
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
mov edx, 0x6fa290
call fcn.004f5804
mov eax, dword [ebp + 0x50]
add eax, 0xffffff14
mov edx, 0x6f9e88
call fcn.0040b48c
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f5860
neg eax
sar eax, 1
jns 0x6f64df
adc eax, 0
push eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f5860
mov edx, eax
neg edx
sar edx, 1
jns 0x6f64f6
adc edx, 0
lea eax, [ebp - 0x610]
pop ecx
call fcn.00415630
jmp 0x6f6511
mov eax, dword [ebp + 0x50]
add eax, 0xffffff14
call fcn.0040b054
mov eax, dword [ebp + 0x50]
cmp dword [eax - 0xec], 0
je 0x6f654c
push 0
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x68]
push eax
lea eax, [ebp - 0x610]
push eax
push 1
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0xec]
call fcn.0040becc
push eax
mov eax, dword [ebp - 0x1c]
call fcn.004f7324
push eax
call sub.user32.dll_DrawTextExW
mov eax, dword [ebp + 0x50]
mov edx, dword [eax - 0xf4]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f5804
mov edx, 0x6fa2b0
mov eax, dword [ebp - 0x1c]
call fcn.004f6338
add dword [ebp - 0x600], eax
mov eax, dword [ebp + 0x50]
mov edx, dword [eax - 0xf8]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f551c
mov eax, dword [ebp + 0x50]
mov edx, dword [eax - 0xf0]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f587c
mov eax, dword [ebp + 0x50]
movzx edx, byte [eax - 0xf9]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f58b4
jmp case.0x6f3e41.68
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
movzx eax, word [eax + 4]
mov word [ebp - 0x2fc], ax
movzx eax, word [ebp - 0x2fc]
mov word [ebp - 0x2fe], ax
movzx eax, word [ebp - 0x2fc]
add eax, 0xffffff9f
sub ax, 0x1a
jae 0x6f65f5
movzx eax, word [ebp - 0x2fc]
and ax, 0xffdf
mov word [ebp - 0x2fe], ax
movzx eax, word [ebp - 0x2fe]
mov word [ebp - 0x7a], ax
cmp word [ebp - 0x7a], 0x3e
jne 0x6f6643
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
mov dword [ebp - 0x304], eax
mov eax, dword [ebp - 0x304]
mov eax, dword [eax + 0x10]
movzx eax, byte [eax + 0x21]
mov byte [ebp - 0x305], al
movzx edx, byte [0x6f9eac]
or dl, byte [ebp - 0x305]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f58b4
jmp case.0x6f3e41.68
cmp word [ebp - 0x7a], 0x4e
jne 0x6f67c2
mov edx, dword [ebp - 0x20]
mov edx, dword [edx]
mov ecx, 1
mov eax, 0x6f9e60
call fcn.0040c454
mov dword [ebp - 0x30c], eax
lea eax, [ebp - 0xc]
push eax
mov ecx, dword [ebp - 0x30c]
dec ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov edx, 3
call fcn.0040c300
mov edx, dword [ebp - 0xc]
mov eax, 0x6fa2c0
call fcn.006f147c
add eax, 2
mov dword [ebp - 0x314], eax
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x310], eax
cmp dword [ebp - 0x310], 0
je 0x6f66b9
mov eax, dword [ebp - 0x310]
mov eax, dword [eax - 4]
mov dword [ebp - 0x310], eax
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x310]
mov edx, dword [ebp - 0x314]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x318], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x31c], eax
cmp dword [ebp - 0x31c], 0
je 0x6f670a
mov eax, dword [ebp - 0x31c]
mov eax, dword [eax - 4]
mov dword [ebp - 0x31c], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x318]
inc edx
mov ecx, dword [ebp - 0x31c]
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x320], eax
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x320]
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x10]
call fcn.0040c300
lea edx, [ebp - 0x34]
mov eax, dword [ebp - 0x10]
call fcn.00408670
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x34], 0
jne case.0x6f3e41.68
fild dword [ebp - 0x30]
mov eax, dword [ebp + 0x50]
fmul dword [eax - 0x100]
mov eax, dword [ebp + 0x48]
fild dword [eax]
fucompp
wait
fnstsw ax
test ah, 5
jp case.0x6f3e41.68
fild dword [ebp - 0x30]
mov eax, dword [ebp + 0x50]
fmul dword [eax - 0x100]
call fcn.00407c34
mov edx, dword [ebp + 0x48]
mov dword [edx], eax
fild dword [ebp - 0x30]
mov eax, dword [ebp + 0x50]
fmul dword [eax - 0x100]
call fcn.00407c34
mov edx, dword [ebp + 0x50]
add eax, dword [edx - 0x60]
mov dword [ebp - 0x600], eax
jmp case.0x6f3e41.68
cmp word [ebp - 0x7a], 0x4d
jne case.0x6f3e41.68
mov eax, dword [ebp + 0x50]
xor edx, edx
mov dword [eax - 0x104], edx
xor eax, eax
mov dword [ebp - 0x80], eax
mov eax, dword [ebp + 0x50]
mov byte [eax - 0x105], 0
mov edx, 0x6f9e9c
mov eax, dword [ebp - 0x1c]
call fcn.004f6318
mov dword [ebp - 0x84], eax
mov eax, dword [ebp + 0x50]
inc dword [eax - 0x10c]
lea esi, [ebp - 0x600]
lea edi, [ebp - 0x610]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edx, dword [ebp - 0x20]
mov edx, dword [edx]
mov ecx, 1
mov eax, 0x6f9e60
call fcn.0040c454
mov dword [ebp - 0x324], eax
lea eax, [ebp - 0xc]
push eax
mov ecx, dword [ebp - 0x324]
dec ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov edx, 3
call fcn.0040c300
lea edx, [ebp - 0x690]
mov eax, dword [ebp - 0xc]
call fcn.004300b0
mov eax, dword [ebp - 0x690]
mov dword [ebp - 0x328], eax
mov ecx, 1
mov edx, dword [ebp - 0x328]
mov eax, 0x6fa2d0
call fcn.0040c454
mov dword [ebp - 0x32c], eax
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x330], eax
cmp dword [ebp - 0x330], 0
je 0x6f689d
mov eax, dword [ebp - 0x330]
mov eax, dword [eax - 4]
mov dword [ebp - 0x330], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x32c]
add edx, 4
mov ecx, dword [ebp - 0x330]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x334], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x338], eax
cmp dword [ebp - 0x338], 0
je 0x6f68f1
mov eax, dword [ebp - 0x338]
mov eax, dword [eax - 4]
mov dword [ebp - 0x338], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x334]
inc edx
mov ecx, dword [ebp - 0x338]
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x33c], eax
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x33c]
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x10]
call fcn.0040c300
lea edx, [ebp - 0x694]
mov eax, dword [ebp - 0xc]
call fcn.004300b0
mov edx, dword [ebp - 0x694]
lea eax, [ebp - 0xc]
call fcn.0040b48c
mov ecx, 1
mov edx, dword [ebp - 0xc]
mov eax, 0x6fa2e4
call fcn.0040c454
mov dword [ebp - 0x340], eax
cmp dword [ebp - 0x340], 0
jle 0x6f6a69
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x110]
mov edx, dword [ebp + 0x50]
cmp eax, dword [edx - 0x10c]
jne 0x6f6a69
mov ecx, 1
mov edx, dword [ebp - 0xc]
mov eax, 0x6fa2e4
call fcn.0040c454
mov dword [ebp - 0x344], eax
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x348], eax
cmp dword [ebp - 0x348], 0
je 0x6f69cc
mov eax, dword [ebp - 0x348]
mov eax, dword [eax - 4]
mov dword [ebp - 0x348], eax
lea eax, [ebp - 0x14]
push eax
mov edx, dword [ebp - 0x344]
add edx, 4
mov ecx, dword [ebp - 0x348]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x14]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x34c], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x350], eax
cmp dword [ebp - 0x350], 0
je 0x6f6a20
mov eax, dword [ebp - 0x350]
mov eax, dword [eax - 4]
mov dword [ebp - 0x350], eax
lea eax, [ebp - 0x14]
push eax
mov edx, dword [ebp - 0x34c]
inc edx
mov ecx, dword [ebp - 0x350]
mov eax, dword [ebp - 0x14]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x14]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x354], eax
lea eax, [ebp - 0x14]
push eax
mov ecx, dword [ebp - 0x354]
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x14]
call fcn.0040c300
xor eax, eax
mov dword [ebp - 0x68], eax
xor eax, eax
mov dword [ebp - 0x6c], eax
mov ecx, 1
mov edx, dword [ebp - 0xc]
mov eax, 0x6fa2f8
call fcn.0040c454
mov dword [ebp - 0x358], eax
cmp dword [ebp - 0x358], 0
jle 0x6f6b7c
mov ecx, 1
mov edx, dword [ebp - 0xc]
mov eax, 0x6fa2f8
call fcn.0040c454
mov dword [ebp - 0x35c], eax
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x360], eax
cmp dword [ebp - 0x360], 0
je 0x6f6ad1
mov eax, dword [ebp - 0x360]
mov eax, dword [eax - 4]
mov dword [ebp - 0x360], eax
lea eax, [ebp - 0x14]
push eax
mov edx, dword [ebp - 0x35c]
add edx, 6
mov ecx, dword [ebp - 0x360]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x14]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x364], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x368], eax
cmp dword [ebp - 0x368], 0
je 0x6f6b25
mov eax, dword [ebp - 0x368]
mov eax, dword [eax - 4]
mov dword [ebp - 0x368], eax
lea eax, [ebp - 0x14]
push eax
mov edx, dword [ebp - 0x364]
inc edx
mov ecx, dword [ebp - 0x368]
mov eax, dword [ebp - 0x14]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x14]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x36c], eax
lea eax, [ebp - 0x14]
push eax
mov ecx, dword [ebp - 0x36c]
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x14]
call fcn.0040c300
lea edx, [ebp - 0x34]
mov eax, dword [ebp - 0x14]
call fcn.00408670
mov dword [ebp - 0x68], eax
mov ecx, 1
mov edx, dword [ebp - 0xc]
mov eax, 0x6fa310
call fcn.0040c454
mov dword [ebp - 0x370], eax
cmp dword [ebp - 0x370], 0
jle 0x6f6c80
mov edx, dword [ebp - 0xc]
mov eax, 0x6fa310
call fcn.006f147c
add eax, 7
mov dword [ebp - 0x378], eax
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x374], eax
cmp dword [ebp - 0x374], 0
je 0x6f6bd8
mov eax, dword [ebp - 0x374]
mov eax, dword [eax - 4]
mov dword [ebp - 0x374], eax
lea eax, [ebp - 0x14]
push eax
mov ecx, dword [ebp - 0x374]
mov edx, dword [ebp - 0x378]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x14]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x37c], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x380], eax
cmp dword [ebp - 0x380], 0
je 0x6f6c29
mov eax, dword [ebp - 0x380]
mov eax, dword [eax - 4]
mov dword [ebp - 0x380], eax
lea eax, [ebp - 0x14]
push eax
mov edx, dword [ebp - 0x37c]
inc edx
mov ecx, dword [ebp - 0x380]
mov eax, dword [ebp - 0x14]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x14]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x384], eax
lea eax, [ebp - 0x14]
push eax
mov ecx, dword [ebp - 0x384]
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x14]
call fcn.0040c300
lea edx, [ebp - 0x34]
mov eax, dword [ebp - 0x14]
call fcn.00408670
mov dword [ebp - 0x6c], eax
mov ecx, 1
mov edx, dword [ebp - 0xc]
mov eax, 0x6fa32c
call fcn.0040c454
mov dword [ebp - 0x388], eax
cmp dword [ebp - 0x388], 0
jle 0x6f6dae
mov edx, dword [ebp - 0xc]
mov eax, 0x6fa32c
call fcn.006f147c
add eax, 6
mov dword [ebp - 0x390], eax
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x38c], eax
cmp dword [ebp - 0x38c], 0
je 0x6f6cdc
mov eax, dword [ebp - 0x38c]
mov eax, dword [eax - 4]
mov dword [ebp - 0x38c], eax
lea eax, [ebp - 0x14]
push eax
mov ecx, dword [ebp - 0x38c]
mov edx, dword [ebp - 0x390]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x14]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x394], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x398], eax
cmp dword [ebp - 0x398], 0
je 0x6f6d2d
mov eax, dword [ebp - 0x398]
mov eax, dword [eax - 4]
mov dword [ebp - 0x398], eax
lea eax, [ebp - 0x14]
push eax
mov edx, dword [ebp - 0x394]
inc edx
mov ecx, dword [ebp - 0x398]
mov eax, dword [ebp - 0x14]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x14]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x39c], eax
lea eax, [ebp - 0x14]
push eax
mov ecx, dword [ebp - 0x39c]
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x14]
call fcn.0040c300
mov eax, dword [ebp - 0x14]
mov edx, 0x6fa344
call fcn.0040c2c8
jne 0x6f6d92
mov eax, dword [ebp + 0x50]
mov dword [eax - 0x104], 1
mov eax, dword [ebp - 0x14]
mov edx, 0x6fa360
call fcn.0040c2c8
jne 0x6f6dae
mov eax, dword [ebp + 0x50]
mov dword [eax - 0x104], 2
mov ecx, 1
mov edx, dword [ebp - 0xc]
mov eax, 0x6fa374
call fcn.0040c454
mov dword [ebp - 0x3a0], eax
cmp dword [ebp - 0x3a0], 0
jle 0x6f6ee2
mov edx, dword [ebp - 0xc]
mov eax, 0x6fa374
call fcn.006f147c
add eax, 6
mov dword [ebp - 0x3a8], eax
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3a4], eax
cmp dword [ebp - 0x3a4], 0
je 0x6f6e0a
mov eax, dword [ebp - 0x3a4]
mov eax, dword [eax - 4]
mov dword [ebp - 0x3a4], eax
lea eax, [ebp - 0x14]
push eax
mov ecx, dword [ebp - 0x3a4]
mov edx, dword [ebp - 0x3a8]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x14]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x3ac], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x3b0], eax
cmp dword [ebp - 0x3b0], 0
je 0x6f6e5b
mov eax, dword [ebp - 0x3b0]
mov eax, dword [eax - 4]
mov dword [ebp - 0x3b0], eax
lea eax, [ebp - 0x14]
push eax
mov edx, dword [ebp - 0x3ac]
inc edx
mov ecx, dword [ebp - 0x3b0]
mov eax, dword [ebp - 0x14]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x14]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x3b4], eax
lea eax, [ebp - 0x14]
push eax
mov ecx, dword [ebp - 0x3b4]
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x14]
call fcn.0040c300
mov eax, dword [ebp - 0x14]
mov edx, 0x6fa19c
call fcn.0040c2c8
jne 0x6f6ec9
mov eax, dword [ebp + 0x50]
mov byte [eax - 0x105], 1
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x60]
mov dword [ebp - 0x610], eax
mov eax, dword [ebp - 0x14]
mov edx, 0x6fa1c4
call fcn.0040c2c8
jne 0x6f6ee2
mov eax, dword [ebp + 0x50]
mov byte [eax - 0x105], 2
mov eax, dword [ebp + 0x50]
xor edx, edx
mov dword [eax - 0xdc], edx
mov eax, dword [ebp + 0x50]
xor edx, edx
mov dword [eax - 0xd8], edx
lea edx, [ebp - 0x698]
mov eax, dword [ebp - 0x10]
call fcn.004300b0
mov eax, dword [ebp - 0x698]
mov dword [ebp - 0x3b8], eax
mov ecx, 1
mov edx, dword [ebp - 0x3b8]
mov eax, 0x6f9f30
call fcn.0040c454
mov dword [ebp - 0x3bc], eax
cmp dword [ebp - 0x3bc], 0
jle 0x6f70de
lea eax, [ebp - 0x10]
mov ecx, 4
mov edx, 1
call fcn.0040c348
mov eax, dword [ebp + 0x50]
cmp dword [eax + 0x94], 0
je 0x6f70de
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x94]
mov edx, dword [eax]
call dword [edx + 0x48]
mov ebx, eax
mov eax, dword [ebp - 0x10]
call fcn.006f14f0
cmp ebx, eax
jle 0x6f70de
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x94]
mov eax, dword [eax + 0x54]
mov edx, dword [ebp + 0x50]
mov dword [edx - 0xdc], eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x94]
mov eax, dword [eax + 0x50]
mov edx, dword [ebp + 0x50]
mov dword [edx - 0xd8], eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x94]
mov eax, dword [eax + 0x50]
cmp eax, dword [ebp - 0x84]
jge 0x6f7003
mov eax, dword [ebp + 0x50]
cmp dword [eax - 0x104], 0
jne 0x6f6fdb
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x94]
mov edx, dword [ebp - 0x84]
sub edx, dword [eax + 0x50]
mov dword [ebp - 0x80], edx
mov eax, dword [ebp + 0x50]
cmp dword [eax - 0x104], 1
jne 0x6f7003
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x94]
mov edx, dword [ebp - 0x84]
sub edx, dword [eax + 0x50]
sar edx, 1
jns 0x6f7000
adc edx, 0
mov dword [ebp - 0x80], edx
cmp byte [ebp + 0x4c], 0
jne 0x6f703e
mov eax, dword [ebp + 0x50]
cmp byte [eax + 0x74], 0
jne 0x6f703e
mov eax, dword [ebp - 0x60c]
add eax, dword [ebp - 0x80]
push eax
mov eax, dword [ebp - 0x10]
call fcn.006f14f0
push eax
push 1
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x94]
mov ecx, dword [ebp - 0x610]
mov edx, dword [ebp - 0x1c]
call fcn.005e0710
cmp byte [ebp + 0x4c], 0
jne 0x6f70de
mov eax, dword [ebp + 0x50]
cmp byte [eax + 0x74], 0
je 0x6f70de
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x94]
fild dword [eax + 0x54]
mov eax, dword [ebp + 0x50]
fmul qword [eax + 0x58]
call fcn.00407c34
add eax, dword [ebp - 0x610]
mov dword [ebp - 0x608], eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x94]
fild dword [eax + 0x50]
mov eax, dword [ebp + 0x50]
fmul qword [eax + 0x58]
call fcn.00407c34
add eax, dword [ebp - 0x60c]
mov dword [ebp - 0x604], eax
mov dl, 1
mov eax, dword [0x4f15c0]
call fcn.004fcef4
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x10]
call fcn.006f14f0
mov edx, eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x94]
mov ecx, dword [ebp - 0x5c]
call fcn.005dff44
lea edx, [ebp - 0x610]
mov ecx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x1c]
call fcn.006f03f4
mov eax, dword [ebp - 0x5c]
call fcn.00409258
lea edx, [ebp - 0x69c]
mov eax, dword [ebp - 0x10]
call fcn.004300b0
mov eax, dword [ebp - 0x69c]
mov dword [ebp - 0x3c0], eax
mov ecx, 1
mov edx, dword [ebp - 0x3c0]
mov eax, 0x6f9f48
call fcn.0040c454
mov dword [ebp - 0x3c4], eax
cmp dword [ebp - 0x3c4], 0
jle 0x6f7182
lea eax, [ebp - 0x10]
mov ecx, 5
mov edx, 1
call fcn.0040c348
mov eax, dword [ebp - 0x10]
push eax
push 0
movzx eax, byte [ebp + 0x4c]
xor al, 1
push eax
mov eax, dword [ebp + 0x50]
movzx eax, byte [eax + 0x74]
push eax
mov eax, dword [ebp + 0x50]
push dword [eax + 0x5c]
push dword [eax + 0x58]
lea eax, [ebp - 0x654]
push eax
mov ecx, dword [ebp - 0x60c]
mov edx, dword [ebp - 0x610]
mov eax, dword [ebp - 0x1c]
call fcn.006f04fc
mov eax, dword [ebp + 0x50]
mov edx, dword [ebp - 0x654]
mov dword [eax - 0xdc], edx
mov edx, dword [ebp - 0x650]
mov dword [eax - 0xd8], edx
lea edx, [ebp - 0x6a0]
mov eax, dword [ebp - 0x10]
call fcn.004300b0
mov eax, dword [ebp - 0x6a0]
mov dword [ebp - 0x3c8], eax
mov ecx, 1
mov edx, dword [ebp - 0x3c8]
mov eax, 0x6f9f60
call fcn.0040c454
mov dword [ebp - 0x3cc], eax
cmp dword [ebp - 0x3cc], 0
jle 0x6f7226
lea eax, [ebp - 0x10]
mov ecx, 5
mov edx, 1
call fcn.0040c348
mov eax, dword [ebp - 0x10]
push eax
push 1
movzx eax, byte [ebp + 0x4c]
xor al, 1
push eax
mov eax, dword [ebp + 0x50]
movzx eax, byte [eax + 0x74]
push eax
mov eax, dword [ebp + 0x50]
push dword [eax + 0x5c]
push dword [eax + 0x58]
lea eax, [ebp - 0x654]
push eax
mov ecx, dword [ebp - 0x60c]
mov edx, dword [ebp - 0x610]
mov eax, dword [ebp - 0x1c]
call fcn.006f04fc
mov eax, dword [ebp + 0x50]
mov edx, dword [ebp - 0x654]
mov dword [eax - 0xdc], edx
mov edx, dword [ebp - 0x650]
mov dword [eax - 0xd8], edx
xor eax, eax
mov dword [ebp - 0x58], eax
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9f78
call fcn.0040c454
mov dword [ebp - 0x3d0], eax
cmp dword [ebp - 0x3d0], 0
jne 0x6f7266
mov eax, dword [ebp + 0x50]
cmp dword [eax + 0x20], 0
je 0x6f7266
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x20]
mov edx, dword [ebp - 0x10]
mov ecx, dword [eax]
call dword [ecx + 0x50]
mov dword [ebp - 0x58], eax
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9f88
call fcn.0040c454
mov dword [ebp - 0x3d4], eax
cmp dword [ebp - 0x3d4], 0
jle 0x6f72e7
mov eax, dword [ebp + 0x50]
cmp dword [eax + 0x24], 0
je 0x6f72e7
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x24]
mov edx, dword [ebp - 0x10]
call fcn.006e1efc
test eax, eax
jne 0x6f72cb
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x24]
call fcn.006e1eac
mov dword [ebp - 0x9c], eax
mov eax, dword [ebp - 0x9c]
mov byte [eax + 0x65], 0
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x9c]
call fcn.006e186c
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x24]
mov edx, dword [ebp - 0x10]
call fcn.006e1efc
mov edx, dword [0x6df558]
call fcn.004094ac
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x58], 0
je 0x6f77cc
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
call dword [edx + 0x20]
test al, al
jne 0x6f77cc
cmp dword [ebp - 0x68], 0
jle 0x6f7319
cmp dword [ebp - 0x6c], 0
jle 0x6f7319
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x68], 0
jle 0x6f736f
cmp dword [ebp - 0x6c], 0
jne 0x6f736f
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
call dword [edx + 0x30]
mov dword [ebp - 0x6a4], eax
fild dword [ebp - 0x6a4]
fild dword [ebp - 0x68]
fdivrp st(1)
fstp xword [ebp - 0x6b0]
wait
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
call dword [edx + 0x24]
mov dword [ebp - 0x6a4], eax
fild dword [ebp - 0x6a4]
fld xword [ebp - 0x6b0]
fmulp st(1)
call fcn.00407c34
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x68], 0
jne 0x6f73c5
cmp dword [ebp - 0x6c], 0
jle 0x6f73c5
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
call dword [edx + 0x24]
mov dword [ebp - 0x6a4], eax
fild dword [ebp - 0x6a4]
fild dword [ebp - 0x6c]
fdivrp st(1)
fstp xword [ebp - 0x6b0]
wait
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
call dword [edx + 0x30]
mov dword [ebp - 0x6a4], eax
fild dword [ebp - 0x6a4]
fld xword [ebp - 0x6b0]
fmulp st(1)
call fcn.00407c34
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x68], 0
jne 0x6f73e7
cmp dword [ebp - 0x6c], 0
jne 0x6f73e7
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
call dword [edx + 0x30]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
call dword [edx + 0x24]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp + 0x50]
cmp byte [eax - 0x105], 2
jne 0x6f7402
mov eax, dword [ebp - 0x5e8]
sub eax, dword [ebp - 0x40]
mov dword [ebp - 0x610], eax
cmp byte [ebp + 0x4c], 0
jne 0x6f76bf
cmp dword [ebp - 0x68], 0
jg 0x6f7418
cmp dword [ebp - 0x6c], 0
jle 0x6f7483
mov eax, dword [ebp - 0x58]
mov edx, dword [0x6df558]
call fcn.00409488
test al, al
je 0x6f743f
mov eax, dword [ebp - 0x58]
mov edx, dword [0x6df558]
call fcn.004094ac
mov dl, 1
call fcn.006e1e30
mov eax, dword [ebp - 0x60c]
add eax, dword [ebp - 0x44]
push eax
lea eax, [ebp - 0x624]
push eax
mov ecx, dword [ebp - 0x610]
add ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x60c]
mov eax, dword [ebp - 0x610]
call fcn.00415460
lea edx, [ebp - 0x624]
mov ecx, dword [ebp - 0x58]
mov eax, dword [ebp - 0x1c]
mov ebx, dword [eax]
call dword [ebx + 0x88]
jmp 0x6f76bf
cmp dword [ebp - 0x68], 0
jle 0x6f74fa
cmp dword [ebp - 0x6c], 0
jne 0x6f74fa
mov eax, dword [ebp - 0x58]
mov edx, dword [0x6df558]
call fcn.00409488
test al, al
je 0x6f74b6
mov eax, dword [ebp - 0x58]
mov edx, dword [0x6df558]
call fcn.004094ac
mov dl, 1
call fcn.006e1e30
mov eax, dword [ebp - 0x60c]
add eax, dword [ebp - 0x6c]
push eax
lea eax, [ebp - 0x624]
push eax
mov ecx, dword [ebp - 0x610]
add ecx, dword [ebp - 0x68]
mov edx, dword [ebp - 0x60c]
mov eax, dword [ebp - 0x610]
call fcn.00415460
lea edx, [ebp - 0x624]
mov ecx, dword [ebp - 0x58]
mov eax, dword [ebp - 0x1c]
mov ebx, dword [eax]
call dword [ebx + 0x88]
jmp 0x6f76bf
mov eax, dword [ebp - 0x58]
mov edx, dword [0x6df558]
call fcn.00409488
test al, al
je 0x6f764f
mov eax, dword [ebp - 0x58]
mov edx, dword [0x6df558]
call fcn.004094ac
call fcn.006e19e8
dec eax
jle 0x6f7596
mov eax, dword [ebp + 0x50]
mov edx, dword [eax - 0xd4]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x44]
call fcn.004f5cbc
mov eax, dword [ebp + 0x50]
mov edx, dword [eax - 0xd4]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
call fcn.004f60a0
mov eax, dword [ebp - 0x58]
mov edx, dword [0x6df558]
call fcn.004094ac
call fcn.006e1d54
add eax, dword [ebp - 0x610]
push eax
mov eax, dword [ebp - 0x58]
mov edx, dword [0x6df558]
call fcn.004094ac
call fcn.006e1d34
add eax, dword [ebp - 0x60c]
push eax
mov ecx, dword [ebp - 0x60c]
mov edx, dword [ebp - 0x610]
mov eax, dword [ebp - 0x1c]
mov ebx, dword [eax]
call dword [ebx + 0x7c]
mov eax, dword [ebp - 0x58]
mov edx, dword [0x6df558]
call fcn.004094ac
mov edx, dword [eax]
call dword [edx + 0x24]
cmp eax, dword [ebp - 0x84]
jge 0x6f760c
mov eax, dword [ebp + 0x50]
cmp dword [eax - 0x104], 0
jne 0x6f75db
mov eax, dword [ebp - 0x58]
mov edx, dword [0x6df558]
call fcn.004094ac
mov edx, dword [eax]
call dword [edx + 0x24]
mov edx, dword [ebp - 0x84]
sub edx, eax
mov dword [ebp - 0x80], edx
mov eax, dword [ebp + 0x50]
cmp dword [eax - 0x104], 1
jne 0x6f760c
mov eax, dword [ebp - 0x58]
mov edx, dword [0x6df558]
call fcn.004094ac
mov edx, dword [eax]
call dword [edx + 0x24]
mov edx, dword [ebp - 0x84]
sub edx, eax
sar edx, 1
jns 0x6f7609
adc edx, 0
mov dword [ebp - 0x80], edx
mov eax, dword [ebp - 0x58]
push eax
mov eax, dword [ebp - 0x58]
mov edx, dword [0x6df558]
call fcn.004094ac
movzx eax, word [eax + 0x7a]
add eax, dword [ebp - 0x60c]
add eax, dword [ebp - 0x80]
push eax
mov eax, dword [ebp - 0x58]
mov edx, dword [0x6df558]
call fcn.004094ac
movzx edx, word [eax + 0x78]
add edx, dword [ebp - 0x610]
mov eax, dword [ebp - 0x1c]
pop ecx
mov ebx, dword [eax]
call dword [ebx + 0x44]
jmp 0x6f76bf
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
call dword [edx + 0x24]
cmp eax, dword [ebp - 0x84]
jge 0x6f76a4
mov eax, dword [ebp + 0x50]
cmp dword [eax - 0x104], 0
jne 0x6f767e
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
call dword [edx + 0x24]
mov edx, dword [ebp - 0x84]
sub edx, eax
mov dword [ebp - 0x80], edx
mov eax, dword [ebp + 0x50]
cmp dword [eax - 0x104], 1
jne 0x6f76a4
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
call dword [edx + 0x24]
mov edx, dword [ebp - 0x84]
sub edx, eax
sar edx, 1
jns 0x6f76a1
adc edx, 0
mov dword [ebp - 0x80], edx
mov eax, dword [ebp - 0x58]
push eax
mov ecx, dword [ebp - 0x60c]
add ecx, dword [ebp - 0x80]
mov edx, dword [ebp - 0x610]
mov eax, dword [ebp - 0x1c]
mov ebx, dword [eax]
call dword [ebx + 0x44]
cmp dword [ebp - 0x68], 0
jg 0x6f76cf
cmp dword [ebp - 0x6c], 0
jle 0x6f775e
mov eax, dword [ebp + 0x50]
fldz
fld dword [eax + 8]
fucompp
wait
fnstsw ax
sahf
jbe 0x6f7712
fild dword [ebp - 0x40]
mov eax, dword [ebp + 0x50]
fmul dword [eax + 8]
call fcn.00407c34
mov edx, dword [ebp + 0x50]
mov dword [edx - 0xdc], eax
fild dword [ebp - 0x44]
mov eax, dword [ebp + 0x50]
fmul dword [eax + 8]
call fcn.00407c34
mov edx, dword [ebp + 0x50]
mov dword [edx - 0xd8], eax
jmp 0x6f77cc
push 0x60
push 0x58
mov eax, dword [ebp - 0x1c]
call fcn.004f7324
push eax
call sub.gdi32.dll_GetDeviceCaps
push eax
mov eax, dword [ebp - 0x40]
push eax
call sub.kernel32.dll_MulDiv
mov edx, dword [ebp + 0x50]
mov dword [edx - 0xdc], eax
push 0x60
push 0x5a
mov eax, dword [ebp - 0x1c]
call fcn.004f7324
push eax
call sub.gdi32.dll_GetDeviceCaps
push eax
mov eax, dword [ebp - 0x44]
push eax
call sub.kernel32.dll_MulDiv
mov edx, dword [ebp + 0x50]
mov dword [edx - 0xd8], eax
jmp 0x6f77cc
mov eax, dword [ebp - 0x58]
mov edx, dword [0x6df558]
call fcn.00409488
test al, al
je 0x6f77aa
mov eax, dword [ebp - 0x58]
mov edx, dword [0x6df558]
call fcn.004094ac
call fcn.006e1d54
mov edx, dword [ebp + 0x50]
mov dword [edx - 0xdc], eax
mov eax, dword [ebp - 0x58]
mov edx, dword [0x6df558]
call fcn.004094ac
call fcn.006e1d34
mov edx, dword [ebp + 0x50]
mov dword [edx - 0xd8], eax
jmp 0x6f77cc
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
call dword [edx + 0x30]
mov edx, dword [ebp + 0x50]
mov dword [edx - 0xdc], eax
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
call dword [edx + 0x24]
mov edx, dword [ebp + 0x50]
mov dword [edx - 0xd8], eax
mov eax, dword [ebp + 0x2c]
sub eax, dword [ebp - 0x5f0]
mov edx, dword [ebp + 0x48]
cmp eax, dword [edx]
jle 0x6f7866
mov eax, dword [ebp + 0x48]
mov eax, dword [eax]
mov edx, dword [ebp + 0x50]
add eax, dword [edx - 0xdc]
mov edx, dword [ebp + 0x2c]
sub edx, dword [ebp - 0x5f0]
cmp eax, edx
jle 0x6f7866
mov eax, dword [ebp + 0x28]
cmp eax, dword [ebp - 0x5fc]
jle 0x6f7866
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0xd8]
add eax, dword [ebp - 0x5fc]
cmp eax, dword [ebp + 0x28]
jle 0x6f7866
mov eax, dword [ebp + 0x50]
cmp byte [eax - 0x6a], 0
je 0x6f7866
mov eax, dword [ebp + 0x20]
mov byte [eax], 1
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x44]
mov edx, dword [ebp + 0x50]
mov edx, dword [edx - 0x70]
call fcn.0040b444
mov eax, dword [ebp + 0x50]
cmp dword [eax - 0x48], 0
je 0x6f7854
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x3c]
mov edx, dword [ebp + 0x50]
mov edx, dword [edx - 0x48]
call fcn.0040b444
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x10c]
mov edx, dword [ebp + 0x50]
mov dword [edx - 0x110], eax
mov eax, dword [ebp + 0x50]
mov eax, dword [ebp + 0x48]
mov eax, dword [eax]
mov edx, dword [ebp + 0x50]
add eax, dword [edx - 0xdc]
mov edx, dword [ebp - 0x5e8]
sub edx, dword [ebp - 0x5f0]
cmp eax, edx
jle 0x6f78a4
mov eax, dword [ebp - 0x5e8]
sub eax, dword [ebp - 0x5f0]
mov edx, dword [ebp + 0x50]
cmp eax, dword [edx - 0xdc]
jle 0x6f78a4
mov byte [ebp - 0x22], 1
jmp 0x6f78f0
mov eax, dword [ebp + 0x48]
mov eax, dword [eax]
mov edx, dword [ebp + 0x50]
add eax, dword [edx - 0xdc]
add eax, 2
mov edx, dword [ebp + 0x48]
mov dword [edx], eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0xdc]
add eax, dword [ebp - 0x600]
add eax, 2
mov dword [ebp - 0x600], eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0xd8]
mov edx, dword [ebp + 0x44]
cmp eax, dword [edx]
jle 0x6f78f0
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0xd8]
mov edx, dword [ebp + 0x44]
mov dword [edx], eax
mov edx, 0x6f9e9c
mov eax, dword [ebp - 0x1c]
call fcn.004f6318
mov dword [ebp - 0x88], eax
mov ecx, 1
mov edx, dword [ebp - 0xc]
mov eax, 0x6fa32c
call fcn.0040c454
mov dword [ebp - 0x3d8], eax
cmp dword [ebp - 0x3d8], 0
jle 0x6f79ba
mov ecx, 1
mov edx, dword [ebp - 0xc]
mov eax, 0x6fa38c
call fcn.0040c454
mov dword [ebp - 0x3dc], eax
cmp dword [ebp - 0x3dc], 0
jle 0x6f7971
mov eax, dword [ebp + 0x44]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x88]
jle 0x6f7968
mov eax, dword [ebp + 0x44]
mov eax, dword [eax]
sub eax, dword [ebp - 0x88]
mov edx, dword [ebp + 0x38]
mov dword [edx], eax
jmp 0x6f79ba
mov eax, dword [ebp + 0x38]
xor edx, edx
mov dword [eax], edx
jmp 0x6f79ba
mov ecx, 1
mov edx, dword [ebp - 0xc]
mov eax, 0x6fa3a4
call fcn.0040c454
mov dword [ebp - 0x3e0], eax
cmp dword [ebp - 0x3e0], 0
jle 0x6f79ba
mov eax, dword [ebp + 0x44]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x88]
jle 0x6f79b3
mov eax, dword [ebp + 0x44]
mov eax, dword [eax]
sub eax, dword [ebp - 0x88]
shr eax, 1
mov edx, dword [ebp + 0x38]
mov dword [edx], eax
jmp 0x6f79ba
mov eax, dword [ebp + 0x38]
xor edx, edx
mov dword [eax], edx
mov ecx, 1
mov edx, dword [ebp - 0xc]
mov eax, 0x6fa3c0
call fcn.0040c454
mov dword [ebp - 0x3e4], eax
cmp dword [ebp - 0x3e4], 0
jle 0x6f79ed
mov eax, dword [ebp + 0x44]
mov edx, dword [ebp - 0x88]
mov dword [eax], edx
mov eax, dword [ebp + 0x38]
xor edx, edx
mov dword [eax], edx
mov eax, dword [ebp + 0x50]
cmp byte [eax - 0x105], 1
jne 0x6f7a33
mov eax, dword [ebp + 0x44]
mov eax, dword [eax]
sub eax, dword [ebp - 0x88]
mov edx, dword [ebp + 0x38]
mov dword [edx], eax
xor eax, eax
mov dword [ebp - 0x80], eax
mov eax, dword [ebp - 0x40]
add eax, 2
mov edx, dword [ebp + 0x14]
mov dword [edx], eax
mov eax, dword [ebp + 0x14]
mov edx, dword [ebp - 0x44]
mov dword [eax + 0xc], edx
cmp byte [ebp + 0x4c], 0
jne 0x6f7a33
mov eax, dword [ebp + 0x44]
mov edx, dword [ebp - 0x88]
mov dword [eax], edx
mov eax, dword [ebp + 0x50]
cmp byte [eax - 0x105], 2
jne case.0x6f3e41.68
mov eax, dword [ebp + 0x44]
mov eax, dword [eax]
cmp eax, dword [ebp - 0x88]
jle 0x6f7a62
mov eax, dword [ebp + 0x44]
mov eax, dword [eax]
sub eax, dword [ebp - 0x88]
mov edx, dword [ebp + 0x38]
mov dword [edx], eax
jmp 0x6f7a69
mov eax, dword [ebp + 0x38]
xor edx, edx
mov dword [eax], edx
xor eax, eax
mov dword [ebp - 0x80], eax
mov eax, dword [ebp - 0x40]
add eax, 2
mov edx, dword [ebp + 0x14]
mov dword [edx + 8], eax
mov eax, dword [ebp + 0x14]
mov edx, dword [ebp - 0x44]
mov dword [eax + 0xc], edx
cmp byte [ebp + 0x4c], 0
jne 0x6f7a94
mov eax, dword [ebp + 0x44]
mov edx, dword [ebp - 0x88]
mov dword [eax], edx
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x58]
mov edx, dword [ebp + 0x48]
mov dword [edx], eax
jmp case.0x6f3e41.68
mov eax, dword [ebp + 0x50]
cmp byte [eax - 0x63], 0
jne case.0x6f3e41.68
lea eax, [ebp - 4]
push eax
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov ecx, 2
mov edx, 4
call fcn.0040c300
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f5860
push eax
mov eax, dword [ebp - 4]
push eax
movzx eax, byte [ebp + 0x4c]
push eax
mov ecx, dword [ebp - 0x5fc]
mov edx, dword [ebp - 0x600]
mov eax, dword [ebp - 0x1c]
call fcn.006f01d4
mov edx, dword [ebp + 0x50]
mov dword [edx - 0x114], eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x114]
add dword [ebp - 0x600], eax
jmp case.0x6f3e41.68
mov dword [ebp - 0x60], 0x1fffffff
mov eax, dword [ebp + 0x50]
add eax, 0xfffffee8
call fcn.0040b054
mov eax, dword [ebp + 0x50]
add eax, 0xfffffee4
call fcn.0040b054
lea ecx, [ebp - 0x48]
mov edx, dword [ebp - 0x20]
mov edx, dword [edx]
mov eax, 0x6f9e60
call fcn.006f1b18
test eax, eax
jle 0x6f7e67
lea eax, [ebp - 0x6b4]
push eax
mov ecx, dword [ebp - 0x48]
dec ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov edx, 3
call fcn.0040c300
mov eax, dword [ebp - 0x6b4]
lea edx, [ebp - 0xc]
call fcn.004300b0
lea ecx, [ebp - 0x48]
mov edx, dword [ebp - 0xc]
mov eax, 0x6fa058
call fcn.006f1b18
test eax, eax
jle 0x6f7c55
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3e8], eax
cmp dword [ebp - 0x3e8], 0
je 0x6f7bab
mov eax, dword [ebp - 0x3e8]
mov eax, dword [eax - 4]
mov dword [ebp - 0x3e8], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x48]
add edx, 4
mov ecx, dword [ebp - 0x3e8]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x3ec], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x3f0], eax
cmp dword [ebp - 0x3f0], 0
je 0x6f7bfc
mov eax, dword [ebp - 0x3f0]
mov eax, dword [eax - 4]
mov dword [ebp - 0x3f0], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x3ec]
inc edx
mov ecx, dword [ebp - 0x3f0]
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x3f4], eax
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x3f4]
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov eax, dword [ebp + 0x50]
add eax, 0xfffffee8
mov edx, dword [ebp - 0x10]
call fcn.0040b48c
lea ecx, [ebp - 0x48]
mov edx, dword [ebp - 0xc]
mov eax, 0x6fa3d8
call fcn.006f1b18
test eax, eax
jle 0x6f7d38
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3f8], eax
cmp dword [ebp - 0x3f8], 0
je 0x6f7c8e
mov eax, dword [ebp - 0x3f8]
mov eax, dword [eax - 4]
mov dword [ebp - 0x3f8], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x48]
add edx, 4
mov ecx, dword [ebp - 0x3f8]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x3fc], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x400], eax
cmp dword [ebp - 0x400], 0
je 0x6f7cdf
mov eax, dword [ebp - 0x400]
mov eax, dword [eax - 4]
mov dword [ebp - 0x400], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x3fc]
inc edx
mov ecx, dword [ebp - 0x400]
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x404], eax
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x404]
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov eax, dword [ebp + 0x50]
add eax, 0xfffffee4
mov edx, dword [ebp - 0x10]
call fcn.0040b48c
lea ecx, [ebp - 0x48]
mov edx, dword [ebp - 0xc]
mov eax, 0x6fa040
call fcn.006f1b18
test eax, eax
jle 0x6f7e67
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x408], eax
cmp dword [ebp - 0x408], 0
je 0x6f7d71
mov eax, dword [ebp - 0x408]
mov eax, dword [eax - 4]
mov dword [ebp - 0x408], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x48]
add edx, 5
mov ecx, dword [ebp - 0x408]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x40c], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x410], eax
cmp dword [ebp - 0x410], 0
je 0x6f7dc2
mov eax, dword [ebp - 0x410]
mov eax, dword [eax - 4]
mov dword [ebp - 0x410], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x40c]
inc edx
mov ecx, dword [ebp - 0x410]
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x414], eax
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x414]
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x418], eax
cmp dword [ebp - 0x418], 0
je 0x6f7e2c
mov eax, dword [ebp - 0x418]
mov eax, dword [eax - 4]
mov dword [ebp - 0x418], eax
cmp dword [ebp - 0x418], 0
jle 0x6f7e67
mov eax, dword [ebp - 0x10]
cmp word [eax], 0x23
jne 0x6f7e4b
mov eax, dword [ebp - 0x10]
call fcn.006f13cc
mov dword [ebp - 0x60], eax
jmp 0x6f7e67
lea edx, [ebp - 0x6b8]
mov eax, dword [ebp - 0x10]
call fcn.00430368
mov eax, dword [ebp - 0x6b8]
call fcn.006f0974
mov dword [ebp - 0x60], eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x120]
mov edx, dword [ebp + 0x50]
imul dword [edx - 0xc0]
mov edx, dword [ebp + 0x48]
add dword [edx], eax
cmp byte [ebp - 0x23], 0
je 0x6f7e8a
mov byte [ebp - 0x22], 1
jmp 0x6f7e8e
mov byte [ebp - 0x23], 1
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x120]
mov edx, dword [ebp + 0x50]
mov edx, dword [edx - 0xc0]
dec edx
imul edx
add dword [ebp - 0x600], eax
cmp byte [ebp + 0x4c], 0
jne 0x6f82f3
mov eax, dword [ebp + 0x50]
cmp byte [eax - 0x63], 0
jne 0x6f82f3
mov eax, dword [ebp + 0x50]
cmp dword [eax - 0x118], 0
jne 0x6f80cc
cmp dword [ebp - 0x60], 0x1fffffff
je 0x6f7ef9
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0x18]
mov edx, dword [ebp + 0x50]
mov dword [edx - 0x124], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
mov edx, dword [ebp - 0x60]
call fcn.004f551c
lea edx, [ebp - 0x10]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f57ec
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
mov edx, 0x6fa3f0
call fcn.004f5804
mov eax, dword [ebp + 0x50]
cmp byte [eax - 0xc1], 0
jne 0x6f7fd7
mov eax, dword [ebp + 0x50]
test byte [eax - 0xc0], 1
je 0x6f7f85
mov eax, dword [ebp - 0x1c]
call fcn.004f7324
mov dword [ebp - 0x41c], eax
xor eax, eax
mov dword [ebp - 0x420], eax
and dword [ebp - 0x420], 0xfffeffff
mov eax, dword [ebp - 0x420]
push eax
lea eax, [ebp - 0x600]
push eax
push 1
mov eax, 0x6fa40c
call fcn.0040becc
push eax
mov eax, dword [ebp - 0x41c]
push eax
call sub.user32.dll_DrawTextW
mov dword [ebp - 0x424], eax
jmp 0x6f8098
mov eax, dword [ebp - 0x1c]
call fcn.004f7324
mov dword [ebp - 0x428], eax
xor eax, eax
mov dword [ebp - 0x42c], eax
and dword [ebp - 0x42c], 0xfffeffff
mov eax, dword [ebp - 0x42c]
push eax
lea eax, [ebp - 0x600]
push eax
push 1
mov eax, 0x6fa41c
call fcn.0040becc
push eax
mov eax, dword [ebp - 0x428]
push eax
call sub.user32.dll_DrawTextW
mov dword [ebp - 0x430], eax
jmp 0x6f8098
lea edx, [ebp - 0x6bc]
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x12c]
call fcn.00430dc8
mov edx, dword [ebp - 0x6bc]
mov eax, dword [ebp + 0x50]
add eax, 0xfffffed8
mov ecx, 0x6fa42c
call fcn.0040c130
mov eax, dword [ebp + 0x50]
inc dword [eax - 0x12c]
mov eax, dword [ebp - 0x1c]
call fcn.004f7324
mov dword [ebp - 0x43c], eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x128]
mov dword [ebp - 0x434], eax
mov eax, dword [ebp - 0x434]
mov dword [ebp - 0x438], eax
cmp dword [ebp - 0x438], 0
je 0x6f804d
mov eax, dword [ebp - 0x438]
mov eax, dword [eax - 4]
mov dword [ebp - 0x438], eax
push 0
lea eax, [ebp - 0x600]
push eax
mov eax, dword [ebp - 0x438]
push eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x128]
call fcn.0040becc
push eax
mov eax, dword [ebp - 0x43c]
push eax
call sub.user32.dll_DrawTextW
mov eax, dword [ebp + 0x50]
mov edx, dword [eax - 0x128]
mov eax, dword [ebp - 0x1c]
call fcn.004f6338
add eax, dword [ebp - 0x600]
sub eax, 0xc
mov dword [ebp - 0x600], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
mov edx, dword [ebp - 0x10]
call fcn.004f5804
cmp dword [ebp - 0x60], 0x1fffffff
je 0x6f82f3
mov eax, dword [ebp + 0x50]
mov edx, dword [eax - 0x124]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f551c
jmp 0x6f82f3
mov eax, dword [ebp + 0x50]
mov dword [eax - 0x130], 0x1fffffff
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x118]
mov edx, 0x6fa440
call fcn.0040c2c8
jne 0x6f8197
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
mov dword [ebp - 0x440], eax
mov eax, dword [ebp - 0x440]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + 0x18]
mov edx, dword [ebp + 0x50]
mov dword [edx - 0x130], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x44]
mov edx, dword [ebp - 0x60]
call fcn.004f5cbc
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
mov edx, dword [ebp - 0x60]
call fcn.004f60a0
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
xor edx, edx
call fcn.004f6220
mov eax, dword [ebp - 0x600]
add eax, 8
push eax
mov eax, dword [ebp - 0x5fc]
add eax, 0xa
push eax
mov ecx, dword [ebp - 0x5fc]
add ecx, 2
mov edx, dword [ebp - 0x600]
mov eax, dword [ebp - 0x1c]
mov ebx, dword [eax]
call dword [ebx + 0x7c]
mov eax, dword [ebp + 0x50]
mov edx, dword [eax - 0x130]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
call fcn.004f60a0
mov eax, dword [ebp + 0x50]
cmp dword [eax - 0x130], 0x1fffffff
jne 0x6f8197
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
mov dl, 1
call fcn.004f6220
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x118]
mov edx, 0x6fa45c
call fcn.0040c2c8
jne 0x6f8255
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
mov dword [ebp - 0x444], eax
mov eax, dword [ebp - 0x444]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + 0x18]
mov edx, dword [ebp + 0x50]
mov dword [edx - 0x130], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x44]
mov edx, dword [ebp - 0x60]
call fcn.004f5cbc
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
mov edx, dword [ebp - 0x60]
call fcn.004f60a0
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
xor edx, edx
call fcn.004f6220
mov eax, dword [ebp - 0x600]
add eax, 8
push eax
mov eax, dword [ebp - 0x5fc]
add eax, 0xa
push eax
mov ecx, dword [ebp - 0x5fc]
add ecx, 2
mov edx, dword [ebp - 0x600]
mov eax, dword [ebp - 0x1c]
mov ebx, dword [eax]
call dword [ebx + 0x50]
mov eax, dword [ebp + 0x50]
mov edx, dword [eax - 0x130]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
call fcn.004f60a0
mov eax, dword [ebp + 0x50]
cmp dword [eax - 0x130], 0x1fffffff
jne 0x6f8255
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
mov dl, 1
call fcn.004f6220
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x118]
mov edx, 0x6fa478
call fcn.0040c2c8
jne 0x6f82e6
mov eax, dword [ebp + 0x50]
cmp dword [eax - 0x11c], 0
je 0x6f82e6
xor eax, eax
mov dword [ebp - 0x58], eax
mov eax, dword [ebp + 0x50]
cmp dword [eax + 0x20], 0
je 0x6f829b
mov eax, dword [ebp + 0x50]
mov edx, dword [eax - 0x11c]
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x20]
mov ecx, dword [eax]
call dword [ecx + 0x50]
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x58], 0
je 0x6f82e6
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
call dword [edx + 0x20]
test al, al
jne 0x6f82e6
mov eax, dword [ebp - 0x58]
push eax
mov ecx, dword [ebp - 0x5fc]
add ecx, 2
mov edx, dword [ebp - 0x600]
mov eax, dword [ebp - 0x1c]
mov ebx, dword [eax]
call dword [ebx + 0x44]
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
call dword [edx + 0x30]
cmp eax, 0xc
jle 0x6f82e6
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
call dword [edx + 0x30]
sub eax, 0xc
add dword [ebp - 0x600], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
mov dl, 1
call fcn.004f6220
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x120]
add dword [ebp - 0x600], eax
jmp case.0x6f3e41.68
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
cmp word [eax + 4], 0x3e
je 0x6f8337
mov eax, dword [ebp + 0x50]
inc dword [eax - 0xc0]
mov eax, dword [ebp + 0x48]
cmp dword [eax], 0
jle 0x6f8328
mov byte [ebp - 0x21], 1
mov eax, dword [ebp + 0x50]
mov byte [eax - 0xc1], 0
jmp case.0x6f3e41.68
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
mov dword [ebp - 0x448], eax
mov eax, dword [ebp - 0x448]
mov eax, dword [eax + 0x10]
movzx eax, byte [eax + 0x21]
mov byte [ebp - 0x449], al
movzx edx, byte [0x6f9e8c]
or dl, byte [ebp - 0x449]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f58b4
jmp case.0x6f3e41.68
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
movzx eax, word [eax + 4]
mov word [ebp - 0x44c], ax
movzx eax, word [ebp - 0x44c]
mov word [ebp - 0x44e], ax
movzx eax, word [ebp - 0x44c]
add eax, 0xffffff9f
sub ax, 0x1a
jae 0x6f83b3
movzx eax, word [ebp - 0x44c]
and ax, 0xffdf
mov word [ebp - 0x44e], ax
movzx eax, word [ebp - 0x44e]
mov word [ebp - 0x7a], ax
cmp word [ebp - 0x7a], 0x4c
jne 0x6f83f1
mov eax, dword [ebp + 0x50]
inc dword [eax - 0xc0]
mov eax, dword [ebp + 0x48]
cmp dword [eax], 0
jle 0x6f83da
mov byte [ebp - 0x21], 1
mov eax, dword [ebp + 0x50]
mov byte [eax - 0xc1], 1
mov eax, dword [ebp + 0x50]
mov dword [eax - 0x12c], 1
cmp word [ebp - 0x7a], 0x46
jne case.0x6f3e41.68
mov edx, dword [ebp - 0x20]
mov edx, dword [edx]
mov ecx, 1
mov eax, 0x6f9e60
call fcn.0040c454
mov dword [ebp - 0x454], eax
lea eax, [ebp - 0xc]
push eax
mov ecx, dword [ebp - 0x454]
dec ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov edx, 3
call fcn.0040c300
mov edx, dword [ebp - 0xc]
mov eax, 0x6fa2c0
call fcn.006f147c
add eax, 2
mov dword [ebp - 0x45c], eax
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x458], eax
cmp dword [ebp - 0x458], 0
je 0x6f8467
mov eax, dword [ebp - 0x458]
mov eax, dword [eax - 4]
mov dword [ebp - 0x458], eax
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x458]
mov edx, dword [ebp - 0x45c]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x460], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x464], eax
cmp dword [ebp - 0x464], 0
je 0x6f84b8
mov eax, dword [ebp - 0x464]
mov eax, dword [eax - 4]
mov dword [ebp - 0x464], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x460]
inc edx
mov ecx, dword [ebp - 0x464]
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x468], eax
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x468]
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x10]
call fcn.0040c300
lea edx, [ebp - 0x34]
mov eax, dword [ebp - 0x10]
call fcn.00408670
mov edx, dword [ebp + 0x18]
mov dword [edx], eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x60]
mov edx, dword [ebp + 0x18]
add eax, dword [edx]
mov dword [ebp - 0x600], eax
mov eax, dword [ebp + 0x18]
mov eax, dword [eax]
mov edx, dword [ebp + 0x48]
mov dword [edx], eax
jmp case.0x6f3e41.68
lea ecx, [ebp - 0x48]
mov edx, dword [ebp - 0x20]
mov edx, dword [edx]
mov eax, 0x6f9e60
call fcn.006f1b18
test eax, eax
jle case.0x6f3e41.68
lea eax, [ebp - 0x6c0]
push eax
mov ecx, dword [ebp - 0x48]
dec ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov edx, 3
call fcn.0040c300
mov eax, dword [ebp - 0x6c0]
lea edx, [ebp - 0xc]
call fcn.004300b0
lea ecx, [ebp - 0x48]
mov edx, dword [ebp - 0xc]
mov eax, 0x6fa32c
call fcn.006f1b18
test eax, eax
jle 0x6f86bb
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x46c], eax
cmp dword [ebp - 0x46c], 0
je 0x6f85ac
mov eax, dword [ebp - 0x46c]
mov eax, dword [eax - 4]
mov dword [ebp - 0x46c], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x48]
add edx, 5
mov ecx, dword [ebp - 0x46c]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x470], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x474], eax
cmp dword [ebp - 0x474], 0
je 0x6f85fd
mov eax, dword [ebp - 0x474]
mov eax, dword [eax - 4]
mov dword [ebp - 0x474], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x470]
inc edx
mov ecx, dword [ebp - 0x474]
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x478], eax
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x478]
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6fa1c4
call fcn.0040c454
mov dword [ebp - 0x47c], eax
cmp dword [ebp - 0x47c], 0
jle 0x6f866d
mov eax, dword [ebp + 0x34]
mov byte [eax], 1
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6fa19c
call fcn.0040c454
mov dword [ebp - 0x480], eax
cmp dword [ebp - 0x480], 0
jle 0x6f8694
mov eax, dword [ebp + 0x34]
mov byte [eax], 0
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6fa490
call fcn.0040c454
mov dword [ebp - 0x484], eax
cmp dword [ebp - 0x484], 0
jle 0x6f86bb
mov eax, dword [ebp + 0x34]
mov byte [eax], 2
lea ecx, [ebp - 0x48]
mov edx, dword [ebp - 0xc]
mov eax, 0x6fa4ac
call fcn.006f1b18
test eax, eax
jle 0x6f879b
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x488], eax
cmp dword [ebp - 0x488], 0
je 0x6f86f4
mov eax, dword [ebp - 0x488]
mov eax, dword [eax - 4]
mov dword [ebp - 0x488], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x48]
add edx, 6
mov ecx, dword [ebp - 0x488]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x48c], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x490], eax
cmp dword [ebp - 0x490], 0
je 0x6f8745
mov eax, dword [ebp - 0x490]
mov eax, dword [eax - 4]
mov dword [ebp - 0x490], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x48c]
inc edx
mov ecx, dword [ebp - 0x490]
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x494], eax
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x494]
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov eax, dword [ebp - 0x10]
call fcn.006f14f0
mov edx, dword [ebp + 0x30]
mov dword [edx], eax
lea ecx, [ebp - 0x48]
mov edx, dword [ebp - 0xc]
mov eax, 0x6fa4c8
call fcn.006f1b18
test eax, eax
jle 0x6f88a2
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x498], eax
cmp dword [ebp - 0x498], 0
je 0x6f87d4
mov eax, dword [ebp - 0x498]
mov eax, dword [eax - 4]
mov dword [ebp - 0x498], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x48]
add edx, 6
mov ecx, dword [ebp - 0x498]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x49c], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x4a0], eax
cmp dword [ebp - 0x4a0], 0
je 0x6f8825
mov eax, dword [ebp - 0x4a0]
mov eax, dword [eax - 4]
mov dword [ebp - 0x4a0], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x49c]
inc edx
mov ecx, dword [ebp - 0x4a0]
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x4a4], eax
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x4a4]
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov eax, dword [ebp - 0x10]
call fcn.006f14fc
mov eax, dword [ebp + 0x50]
fstp dword [eax - 0xc8]
wait
mov eax, dword [ebp + 0x50]
fldz
fld dword [eax - 0xc8]
fucompp
wait
fnstsw ax
test ah, 0x44
jp 0x6f88a2
mov eax, dword [ebp + 0x50]
mov dword [eax - 0xc8], 0x3f800000
lea ecx, [ebp - 0x48]
mov edx, dword [ebp - 0xc]
mov eax, 0x6fa374
call fcn.006f1b18
test eax, eax
jle 0x6f89de
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4a8], eax
cmp dword [ebp - 0x4a8], 0
je 0x6f88db
mov eax, dword [ebp - 0x4a8]
mov eax, dword [eax - 4]
mov dword [ebp - 0x4a8], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x48]
add edx, 5
mov ecx, dword [ebp - 0x4a8]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x4ac], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x4b0], eax
cmp dword [ebp - 0x4b0], 0
je 0x6f892c
mov eax, dword [ebp - 0x4b0]
mov eax, dword [eax - 4]
mov dword [ebp - 0x4b0], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x4ac]
inc edx
mov ecx, dword [ebp - 0x4b0]
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x4b4], eax
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x4b4]
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov eax, dword [ebp - 0x10]
mov edx, 0x6fa19c
call fcn.0040c2c8
jne 0x6f898a
mov eax, dword [ebp + 0x10]
mov byte [eax], 1
mov eax, dword [ebp - 0x10]
mov edx, 0x6fa1c4
call fcn.0040c2c8
jne 0x6f899f
mov eax, dword [ebp + 0x10]
mov byte [eax], 2
mov eax, dword [ebp - 0x5ec]
mov dword [ebp - 0x4b8], eax
mov eax, dword [ebp - 0x5f0]
mov dword [ebp - 0x4c0], eax
mov eax, dword [ebp - 0x4b8]
mov dword [ebp - 0x4bc], eax
mov eax, dword [ebp + 0x50]
mov edx, dword [ebp - 0x4c0]
mov dword [eax - 0x138], edx
mov edx, dword [ebp - 0x4bc]
mov dword [eax - 0x134], edx
lea ecx, [ebp - 0x48]
mov edx, dword [ebp - 0xc]
mov eax, 0x6f9fe0
call fcn.006f1b18
test eax, eax
jle case.0x6f3e41.68
mov eax, dword [ebp + 0x50]
cmp byte [eax + 0x70], 0
jne case.0x6f3e41.68
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4c4], eax
cmp dword [ebp - 0x4c4], 0
je 0x6f8a24
mov eax, dword [ebp - 0x4c4]
mov eax, dword [eax - 4]
mov dword [ebp - 0x4c4], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x48]
add edx, 5
mov ecx, dword [ebp - 0x4c4]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x4c8], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x4cc], eax
cmp dword [ebp - 0x4cc], 0
je 0x6f8a75
mov eax, dword [ebp - 0x4cc]
mov eax, dword [eax - 4]
mov dword [ebp - 0x4cc], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x4c8]
inc edx
mov ecx, dword [ebp - 0x4cc]
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x4d0], eax
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x4d0]
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov dword [ebp - 0x60], 0x1fffffff
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x4d4], eax
cmp dword [ebp - 0x4d4], 0
je 0x6f8ae6
mov eax, dword [ebp - 0x4d4]
mov eax, dword [eax - 4]
mov dword [ebp - 0x4d4], eax
cmp dword [ebp - 0x4d4], 0
jle 0x6f8b21
mov eax, dword [ebp - 0x10]
cmp word [eax], 0x23
jne 0x6f8b05
mov eax, dword [ebp - 0x10]
call fcn.006f13cc
mov dword [ebp - 0x60], eax
jmp 0x6f8b21
lea edx, [ebp - 0x6c4]
mov eax, dword [ebp - 0x10]
call fcn.00430368
mov eax, dword [ebp - 0x6c4]
call fcn.006f0974
mov dword [ebp - 0x60], eax
lea ecx, [ebp - 0x48]
mov edx, dword [ebp - 0xc]
mov eax, 0x6f9ffc
call fcn.006f1b18
test eax, eax
jle 0x6f8cdb
mov eax, dword [ebp + 0x50]
cmp byte [eax + 0x70], 0
jne 0x6f8cdb
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x4d8], eax
cmp dword [ebp - 0x4d8], 0
je 0x6f8b67
mov eax, dword [ebp - 0x4d8]
mov eax, dword [eax - 4]
mov dword [ebp - 0x4d8], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x48]
add edx, 5
mov ecx, dword [ebp - 0x4d8]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x4dc], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x4e0], eax
cmp dword [ebp - 0x4e0], 0
je 0x6f8bb8
mov eax, dword [ebp - 0x4e0]
mov eax, dword [eax - 4]
mov dword [ebp - 0x4e0], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x4dc]
inc edx
mov ecx, dword [ebp - 0x4e0]
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x4e4], eax
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x4e4]
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov dword [ebp - 0x64], 0x1fffffff
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x4e8], eax
cmp dword [ebp - 0x4e8], 0
je 0x6f8c29
mov eax, dword [ebp - 0x4e8]
mov eax, dword [eax - 4]
mov dword [ebp - 0x4e8], eax
cmp dword [ebp - 0x4e8], 0
jle 0x6f8c64
mov eax, dword [ebp - 0x10]
cmp word [eax], 0x23
jne 0x6f8c48
mov eax, dword [ebp - 0x10]
call fcn.006f13cc
mov dword [ebp - 0x64], eax
jmp 0x6f8c64
lea edx, [ebp - 0x6c8]
mov eax, dword [ebp - 0x10]
call fcn.00430368
mov eax, dword [ebp - 0x6c8]
call fcn.006f0974
mov dword [ebp - 0x64], eax
cmp byte [ebp + 0x4c], 0
jne case.0x6f3e41.68
mov eax, dword [ebp + 0x50]
mov byte [eax - 0x49], 1
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x44]
mov edx, dword [ebp - 0x60]
call fcn.004f5cbc
push 0x1fffffff
push 0x40
mov eax, dword [ebp - 0x5e4]
add eax, 2
push eax
lea eax, [ebp - 0x624]
push eax
mov eax, dword [ebp + 0x50]
mov ecx, dword [eax - 0x58]
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x60]
mov edx, dword [ebp - 0x5ec]
call fcn.00415460
lea eax, [ebp - 0x624]
push eax
push 1
mov ecx, dword [ebp - 0x64]
mov edx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x1c]
call fcn.006f0730
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
mov dl, 1
call fcn.004f6220
jmp case.0x6f3e41.68
cmp byte [ebp + 0x4c], 0
jne case.0x6f3e41.68
mov eax, dword [ebp + 0x50]
mov byte [eax - 0x49], 1
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
mov dword [ebp - 0x4ec], eax
mov eax, dword [ebp - 0x4ec]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + 0x18]
mov edx, dword [ebp + 0x50]
mov dword [edx - 0xcc], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
mov dword [ebp - 0x4f0], eax
mov eax, dword [ebp - 0x4f0]
mov eax, dword [eax + 0x10]
movzx eax, byte [eax + 0x20]
cmp al, 1
jne 0x6f8d37
mov eax, dword [ebp + 0x50]
mov dword [eax - 0xcc], 0x1fffffff
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
mov edx, dword [ebp - 0x60]
call fcn.004f60a0
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x44]
mov dword [ebp - 0x4f4], eax
mov eax, dword [ebp - 0x4f4]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + 0x18]
mov edx, dword [ebp + 0x50]
mov dword [edx - 0x50], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x44]
mov edx, dword [ebp - 0x60]
call fcn.004f5cbc
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x58]
push eax
mov eax, dword [ebp - 0x5e4]
push eax
mov eax, dword [ebp + 0x50]
mov edx, dword [eax - 0x60]
mov ecx, dword [ebp - 0x5ec]
mov eax, dword [ebp - 0x1c]
mov ebx, dword [eax]
call dword [ebx + 0x7c]
jmp case.0x6f3e41.68
lea ecx, [ebp - 0x48]
mov edx, dword [ebp - 0x20]
mov edx, dword [edx]
mov eax, 0x6f9e60
call fcn.006f1b18
test eax, eax
jle case.0x6f3e41.68
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
mov dword [ebp - 0x4f8], eax
mov eax, dword [ebp - 0x4f8]
mov eax, dword [eax + 0x10]
movzx eax, byte [eax + 0x20]
cmp al, 1
jne 0x6f8dde
mov eax, dword [ebp + 0x50]
mov dword [eax - 0xb0], 0x1fffffff
jmp 0x6f8dff
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
mov dword [ebp - 0x4fc], eax
mov eax, dword [ebp - 0x4fc]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + 0x18]
mov edx, dword [ebp + 0x50]
mov dword [edx - 0xb0], eax
lea eax, [ebp - 0x6cc]
push eax
mov ecx, dword [ebp - 0x48]
sub ecx, 6
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov edx, 6
call fcn.0040c300
mov eax, dword [ebp - 0x6cc]
lea edx, [ebp - 0xc]
call fcn.004300b0
lea ecx, [ebp - 0x48]
mov edx, dword [ebp - 0xc]
mov eax, 0x6fa4ec
call fcn.006f1b18
test eax, eax
jle 0x6f8f0a
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x500], eax
cmp dword [ebp - 0x500], 0
je 0x6f8e62
mov eax, dword [ebp - 0x500]
mov eax, dword [eax - 4]
mov dword [ebp - 0x500], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x48]
add edx, 4
mov ecx, dword [ebp - 0x500]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x504], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x508], eax
cmp dword [ebp - 0x508], 0
je 0x6f8eb3
mov eax, dword [ebp - 0x508]
mov eax, dword [eax - 4]
mov dword [ebp - 0x508], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x504]
inc edx
mov ecx, dword [ebp - 0x508]
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x50c], eax
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x50c]
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
mov edx, dword [ebp - 0x10]
call fcn.004f5804
lea ecx, [ebp - 0x48]
mov edx, dword [ebp - 0xc]
mov eax, 0x6fa504
call fcn.006f1b18
test eax, eax
jle 0x6f9087
mov eax, dword [ebp + 0x50]
cmp byte [eax + 0x70], 0
jne 0x6f9087
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x510], eax
cmp dword [ebp - 0x510], 0
je 0x6f8f50
mov eax, dword [ebp - 0x510]
mov eax, dword [eax - 4]
mov dword [ebp - 0x510], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x48]
add edx, 6
mov ecx, dword [ebp - 0x510]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x514], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x518], eax
cmp dword [ebp - 0x518], 0
je 0x6f8fa1
mov eax, dword [ebp - 0x518]
mov eax, dword [eax - 4]
mov dword [ebp - 0x518], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x514]
inc edx
mov ecx, dword [ebp - 0x518]
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x51c], eax
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x51c]
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x10]
call fcn.0040c300
cmp byte [ebp + 0x4c], 0
jne 0x6f9087
mov eax, dword [ebp + 0x50]
cmp byte [eax - 0x91], 0
jne 0x6f9017
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
mov edx, dword [eax + 0x18]
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x9c]
call fcn.004f551c
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x520], eax
cmp dword [ebp - 0x520], 0
je 0x6f9038
mov eax, dword [ebp - 0x520]
mov eax, dword [eax - 4]
mov dword [ebp - 0x520], eax
cmp dword [ebp - 0x520], 0
jle 0x6f9087
mov eax, dword [ebp - 0x10]
cmp word [eax], 0x23
jne 0x6f9061
mov eax, dword [ebp - 0x10]
call fcn.006f13cc
mov edx, eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f551c
jmp 0x6f9087
lea edx, [ebp - 0x6d0]
mov eax, dword [ebp - 0x10]
call fcn.00430368
mov eax, dword [ebp - 0x6d0]
call fcn.006f0974
mov edx, eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f551c
lea ecx, [ebp - 0x48]
mov edx, dword [ebp - 0xc]
mov eax, 0x6f9fe0
call fcn.006f1b18
test eax, eax
jle 0x6f91e7
cmp byte [ebp + 0x4c], 0
jne 0x6f91e7
mov eax, dword [ebp + 0x50]
cmp byte [eax + 0x70], 0
jne 0x6f91e7
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x524], eax
cmp dword [ebp - 0x524], 0
je 0x6f90d7
mov eax, dword [ebp - 0x524]
mov eax, dword [eax - 4]
mov dword [ebp - 0x524], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x48]
add edx, 7
mov ecx, dword [ebp - 0x524]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x528], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x52c], eax
cmp dword [ebp - 0x52c], 0
je 0x6f9128
mov eax, dword [ebp - 0x52c]
mov eax, dword [eax - 4]
mov dword [ebp - 0x52c], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x528]
inc edx
mov ecx, dword [ebp - 0x52c]
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x530], eax
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x530]
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x534], eax
cmp dword [ebp - 0x534], 0
je 0x6f9192
mov eax, dword [ebp - 0x534]
mov eax, dword [eax - 4]
mov dword [ebp - 0x534], eax
cmp dword [ebp - 0x534], 0
jle 0x6f91e7
cmp byte [ebp + 0x4c], 0
jne 0x6f91e7
mov eax, dword [ebp - 0x10]
cmp word [eax], 0x23
jne 0x6f91c1
mov eax, dword [ebp - 0x10]
call fcn.006f13cc
mov edx, eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
call fcn.004f60a0
jmp 0x6f91e7
lea edx, [ebp - 0x6d4]
mov eax, dword [ebp - 0x10]
call fcn.00430368
mov eax, dword [ebp - 0x6d4]
call fcn.006f0974
mov edx, eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
call fcn.004f60a0
lea ecx, [ebp - 0x48]
mov edx, dword [ebp - 0xc]
mov eax, 0x6fa520
call fcn.006f1b18
test eax, eax
jle 0x6f93fb
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x538], eax
cmp dword [ebp - 0x538], 0
je 0x6f9220
mov eax, dword [ebp - 0x538]
mov eax, dword [eax - 4]
mov dword [ebp - 0x538], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x48]
add edx, 5
mov ecx, dword [ebp - 0x538]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6fa538
call fcn.0040c454
mov dword [ebp - 0x53c], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x540], eax
cmp dword [ebp - 0x540], 0
je 0x6f9271
mov eax, dword [ebp - 0x540]
mov eax, dword [eax - 4]
mov dword [ebp - 0x540], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x53c]
inc edx
mov ecx, dword [ebp - 0x540]
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x544], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x548], eax
cmp dword [ebp - 0x548], 0
je 0x6f92c3
mov eax, dword [ebp - 0x548]
mov eax, dword [eax - 4]
mov dword [ebp - 0x548], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x544]
inc edx
mov ecx, dword [ebp - 0x548]
mov eax, dword [ebp - 0x10]
call fcn.0040c300
lea edx, [ebp - 0x6d8]
mov eax, dword [ebp - 0x10]
call fcn.004300b0
mov eax, dword [ebp - 0x6d8]
mov dword [ebp - 0x54c], eax
mov ecx, 1
mov edx, dword [ebp - 0x54c]
mov eax, 0x6fa548
call fcn.0040c454
mov dword [ebp - 0x550], eax
cmp dword [ebp - 0x550], 0
jle case.0x6f3e41.68
lea eax, [ebp - 0x10]
mov ecx, 0xa
mov edx, 1
call fcn.0040c348
lea edx, [ebp - 0x6dc]
mov eax, dword [ebp - 0x10]
call fcn.004300b0
mov eax, dword [ebp - 0x6dc]
mov dword [ebp - 0x554], eax
mov ecx, 1
mov edx, dword [ebp - 0x554]
mov eax, 0x6fa56c
call fcn.0040c454
mov dword [ebp - 0x558], eax
cmp dword [ebp - 0x558], 0
jle case.0x6f3e41.68
lea edx, [ebp - 0x6e0]
mov eax, dword [ebp - 0x10]
call fcn.004300b0
mov eax, dword [ebp - 0x6e0]
mov dword [ebp - 0x55c], eax
mov ecx, 1
mov edx, dword [ebp - 0x55c]
mov eax, 0x6fa56c
call fcn.0040c454
mov dword [ebp - 0x560], eax
lea eax, [ebp - 0x6e8]
push eax
mov ecx, dword [ebp - 0x560]
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov eax, dword [ebp - 0x6e8]
lea edx, [ebp - 0x6e4]
call fcn.004304b0
mov edx, dword [ebp - 0x6e4]
lea eax, [ebp - 0x10]
call fcn.0040b48c
mov eax, dword [ebp - 0x10]
call fcn.006f14f0
mov edx, eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f587c
jmp case.0x6f3e41.68
lea ecx, [ebp - 0x48]
mov edx, dword [ebp - 0xc]
mov eax, 0x6fa070
call fcn.006f1b18
test eax, eax
jle case.0x6f3e41.68
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x564], eax
cmp dword [ebp - 0x564], 0
je 0x6f9434
mov eax, dword [ebp - 0x564]
mov eax, dword [eax - 4]
mov dword [ebp - 0x564], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x48]
add edx, 4
mov ecx, dword [ebp - 0x564]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6fa538
call fcn.0040c454
mov dword [ebp - 0x568], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x56c], eax
cmp dword [ebp - 0x56c], 0
je 0x6f9485
mov eax, dword [ebp - 0x56c]
mov eax, dword [eax - 4]
mov dword [ebp - 0x56c], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x568]
inc edx
mov ecx, dword [ebp - 0x56c]
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x570], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x574], eax
cmp dword [ebp - 0x574], 0
je 0x6f94d7
mov eax, dword [ebp - 0x574]
mov eax, dword [eax - 4]
mov dword [ebp - 0x574], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x570]
inc edx
mov ecx, dword [ebp - 0x574]
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov eax, dword [ebp - 0x10]
call fcn.006f14f0
cmp eax, 5
ja case.0x6f9501.0
jmp dword [eax*4 + 0x6f9508]
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x9c]
call fcn.004f5860
mov edx, eax
inc edx
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f587c
jmp case.0x6f3e41.68
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x9c]
call fcn.004f5860
mov edx, eax
add edx, 2
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f587c
jmp case.0x6f3e41.68
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x9c]
call fcn.004f5860
mov edx, eax
add edx, 4
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f587c
jmp case.0x6f3e41.68
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x9c]
call fcn.004f5860
mov edx, eax
add edx, 6
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f587c
jmp case.0x6f3e41.68
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x9c]
call fcn.004f5860
mov edx, eax
add edx, 8
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f587c
jmp case.0x6f3e41.68
mov eax, dword [ebp + 0x50]
cmp byte [eax + 0x60], 0
je 0x6f9677
mov eax, dword [ebp + 0x50]
fld dword [0x6fa574]
fld dword [eax + 8]
fucompp
wait
fnstsw ax
test ah, 0x44
jnp 0x6f962f
mov eax, dword [ebp - 0x10]
call fcn.006f14f0
mov dword [ebp - 0x6a4], eax
fild dword [ebp - 0x6a4]
mov eax, dword [ebp + 0x50]
fmul dword [eax + 8]
fmul dword [0x6fa578]
fdiv dword [0x6fa57c]
call fcn.00407c34
mov edx, eax
neg edx
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f57b8
jmp case.0x6f3e41.68
mov eax, dword [ebp - 0x10]
call fcn.006f14f0
mov ebx, eax
push 0x58
mov eax, dword [ebp - 0x1c]
call fcn.004f7324
push eax
call sub.gdi32.dll_GetDeviceCaps
imul ebx, eax
mov dword [ebp - 0x6a4], ebx
fild dword [ebp - 0x6a4]
fdiv dword [0x6fa57c]
call fcn.00407c34
mov edx, eax
neg edx
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f57b8
jmp case.0x6f3e41.68
mov eax, dword [ebp - 0x10]
call fcn.006f14f0
shl eax, 5
lea eax, [eax + eax*2]
mov dword [ebp - 0x6a4], eax
fild dword [ebp - 0x6a4]
fdiv dword [0x6fa57c]
call fcn.00407c34
mov edx, eax
neg edx
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f57b8
jmp case.0x6f3e41.68
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
movzx eax, word [eax + 4]
mov word [ebp - 0x576], ax
movzx eax, word [ebp - 0x576]
mov word [ebp - 0x578], ax
movzx eax, word [ebp - 0x576]
add eax, 0xffffff9f
sub ax, 0x1a
jae 0x6f96f0
movzx eax, word [ebp - 0x576]
and ax, 0xffdf
mov word [ebp - 0x578], ax
movzx eax, word [ebp - 0x578]
mov word [ebp - 0x7a], ax
cmp word [ebp - 0x7a], 0x3e
jne 0x6f973e
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
mov dword [ebp - 0x57c], eax
mov eax, dword [ebp - 0x57c]
mov eax, dword [eax + 0x10]
movzx eax, byte [eax + 0x21]
mov byte [ebp - 0x57d], al
movzx edx, byte [0x6f9ea8]
or dl, byte [ebp - 0x57d]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f58b4
jmp case.0x6f3e41.68
cmp word [ebp - 0x7a], 0x54
jne 0x6f984e
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov dword [ebp - 0x584], eax
cmp dword [ebp - 0x584], 0
je 0x6f976c
mov eax, dword [ebp - 0x584]
mov eax, dword [eax - 4]
mov dword [ebp - 0x584], eax
cmp dword [ebp - 0x584], 4
jle 0x6f97c6
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
movzx eax, word [eax + 8]
mov word [ebp - 0x586], ax
movzx eax, word [ebp - 0x586]
mov word [ebp - 0x588], ax
movzx eax, word [ebp - 0x586]
add eax, 0xffffff9f
sub ax, 0x1a
jae 0x6f97b5
movzx eax, word [ebp - 0x586]
and ax, 0xffdf
mov word [ebp - 0x588], ax
cmp word [ebp - 0x588], 0x4f
sete byte [ebp - 0x589]
jmp 0x6f97cd
mov byte [ebp - 0x589], 0
cmp byte [ebp - 0x589], 0
je 0x6f9812
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
mov dword [ebp - 0x590], eax
mov eax, dword [ebp - 0x590]
mov eax, dword [eax + 0x10]
movzx eax, byte [eax + 0x21]
mov byte [ebp - 0x591], al
movzx edx, byte [0x6f9ea4]
or dl, byte [ebp - 0x591]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f58b4
jmp case.0x6f3e41.68
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
mov dword [ebp - 0x598], eax
mov eax, dword [ebp - 0x598]
mov eax, dword [eax + 0x10]
movzx eax, byte [eax + 0x21]
mov byte [ebp - 0x599], al
movzx edx, byte [0x6f9ea8]
or dl, byte [ebp - 0x599]
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x40]
call fcn.004f58b4
jmp case.0x6f3e41.68
cmp word [ebp - 0x7a], 0x48
jne 0x6f9861
mov eax, dword [ebp + 0x50]
mov byte [eax - 0x64], 1
jmp case.0x6f3e41.68
cmp word [ebp - 0x7a], 0x50
jne 0x6f9a76
lea ecx, [ebp - 0x48]
mov edx, dword [ebp - 0x20]
mov edx, dword [edx]
mov eax, 0x6f9e60
call fcn.006f1b18
test eax, eax
jle case.0x6f3e41.68
lea eax, [ebp - 0x6ec]
push eax
mov ecx, dword [ebp - 0x48]
sub ecx, 6
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov edx, 6
call fcn.0040c300
mov eax, dword [ebp - 0x6ec]
lea edx, [ebp - 0xc]
call fcn.004300b0
lea ecx, [ebp - 0x48]
mov edx, dword [ebp - 0xc]
mov eax, 0x6fa520
call fcn.006f1b18
test eax, eax
jle case.0x6f3e41.68
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x5a0], eax
cmp dword [ebp - 0x5a0], 0
je 0x6f98e9
mov eax, dword [ebp - 0x5a0]
mov eax, dword [eax - 4]
mov dword [ebp - 0x5a0], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x48]
add edx, 5
mov ecx, dword [ebp - 0x5a0]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6fa538
call fcn.0040c454
mov dword [ebp - 0x5a4], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x5a8], eax
cmp dword [ebp - 0x5a8], 0
je 0x6f993a
mov eax, dword [ebp - 0x5a8]
mov eax, dword [eax - 4]
mov dword [ebp - 0x5a8], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x5a4]
inc edx
mov ecx, dword [ebp - 0x5a8]
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x5ac], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x5b0], eax
cmp dword [ebp - 0x5b0], 0
je 0x6f998c
mov eax, dword [ebp - 0x5b0]
mov eax, dword [eax - 4]
mov dword [ebp - 0x5b0], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x5ac]
inc edx
mov ecx, dword [ebp - 0x5b0]
mov eax, dword [ebp - 0x10]
call fcn.0040c300
lea edx, [ebp - 0x6f0]
mov eax, dword [ebp - 0x10]
call fcn.004300b0
mov eax, dword [ebp - 0x6f0]
mov dword [ebp - 0x5b4], eax
mov ecx, 1
mov edx, dword [ebp - 0x5b4]
mov eax, 0x6fa58c
call fcn.0040c454
mov dword [ebp - 0x5b8], eax
cmp dword [ebp - 0x5b8], 0
jle case.0x6f3e41.68
lea eax, [ebp - 0x10]
mov ecx, 0x11
mov edx, 1
call fcn.0040c348
lea edx, [ebp - 0x6f4]
mov eax, dword [ebp - 0x10]
call fcn.004300b0
mov eax, dword [ebp - 0x6f4]
mov dword [ebp - 0x5bc], eax
mov ecx, 1
mov edx, dword [ebp - 0x5bc]
mov eax, 0x6fa5bc
call fcn.0040c454
mov dword [ebp - 0x5c0], eax
cmp dword [ebp - 0x5c0], 1
jne case.0x6f3e41.68
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
mov dword [ebp - 0x5c4], eax
mov eax, dword [ebp - 0x5c4]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + 0x18]
mov edx, dword [ebp + 0x50]
mov dword [edx - 0xb0], eax
mov eax, dword [ebp - 0x10]
call fcn.006f13cc
mov edx, eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x48]
call fcn.004f60a0
jmp case.0x6f3e41.68
mov edx, dword [ebp - 0x20]
mov edx, dword [edx]
mov eax, 0x6fa5cc
call fcn.006f147c
dec eax
jne 0x6f9a94
mov eax, dword [ebp + 0x50]
mov byte [eax - 0x61], 1
jmp case.0x6f3e41.68
mov edx, dword [ebp - 0x20]
mov edx, dword [edx]
mov eax, 0x6fa5e4
call fcn.006f147c
dec eax
jne case.0x6f3e41.68
mov eax, dword [ebp + 0x50]
mov byte [eax - 0x62], 1
jmp case.0x6f3e41.68
mov edx, dword [ebp - 0x20]
mov edx, dword [edx]
mov ecx, 1
mov eax, 0x6f9e60
call fcn.0040c454
mov dword [ebp - 0x5c8], eax
lea eax, [ebp - 0xc]
push eax
mov ecx, dword [ebp - 0x5c8]
dec ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov edx, 3
call fcn.0040c300
mov edx, dword [ebp - 0xc]
mov eax, 0x6fa5fc
call fcn.006f147c
add eax, 2
mov dword [ebp - 0x5d0], eax
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x5cc], eax
cmp dword [ebp - 0x5cc], 0
je 0x6f9b21
mov eax, dword [ebp - 0x5cc]
mov eax, dword [eax - 4]
mov dword [ebp - 0x5cc], eax
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x5cc]
mov edx, dword [ebp - 0x5d0]
mov eax, dword [ebp - 0xc]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x5d4], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x5d8], eax
cmp dword [ebp - 0x5d8], 0
je 0x6f9b72
mov eax, dword [ebp - 0x5d8]
mov eax, dword [eax - 4]
mov dword [ebp - 0x5d8], eax
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp - 0x5d4]
inc edx
mov ecx, dword [ebp - 0x5d8]
mov eax, dword [ebp - 0x10]
call fcn.0040c300
mov ecx, 1
mov edx, dword [ebp - 0x10]
mov eax, 0x6f9ed4
call fcn.0040c454
mov dword [ebp - 0x5dc], eax
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0x5dc]
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x10]
call fcn.0040c300
lea edx, [ebp - 0x34]
mov eax, dword [ebp - 0x10]
call fcn.00408670
mov dword [ebp - 0x30], eax
mov eax, dword [ebp + 0x50]
push eax
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x1c]
call fcn.006f2970
pop ecx
jmp case.0x6f3e41.68
mov eax, dword [ebp + 0x50]
mov byte [eax - 0x63], 1
lea ecx, [ebp - 0x48]
mov edx, dword [ebp - 0x20]
mov edx, dword [edx]
mov eax, 0x6f9e60
call fcn.006f1b18
test eax, eax
jle 0x6f9c37
cmp byte [ebp - 0x22], 0
jne 0x6f9c37
lea eax, [ebp - 0x6f8]
push eax
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x48]
mov edx, 1
call fcn.0040c300
mov edx, dword [ebp - 0x6f8]
lea eax, [ebp - 8]
call fcn.0040c0d8
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x48]
mov edx, 1
call fcn.0040c348
jmp 0x6f9c73
cmp byte [ebp - 0x22], 0
jne 0x6f9c73
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov dword [ebp - 0x5e0], eax
cmp dword [ebp - 0x5e0], 0
je 0x6f9c60
mov eax, dword [ebp - 0x5e0]
mov eax, dword [eax - 4]
mov dword [ebp - 0x5e0], eax
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x5e0]
mov edx, 1
call fcn.0040c348
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov dword [ebp - 0xa8], eax
cmp dword [ebp - 0xa8], 0
je 0x6f9c96
mov eax, dword [ebp - 0xa8]
mov eax, dword [eax - 4]
mov dword [ebp - 0xa8], eax
cmp dword [ebp - 0xa8], 0
jle 0x6f9caf
cmp byte [ebp - 0x21], 0
jne 0x6f9caf
cmp byte [ebp - 0x22], 0
je 0x6f2b28
mov eax, dword [ebp + 0x48]
mov edx, dword [ebp - 0x2c]
sub dword [eax], edx
mov eax, dword [ebp + 0x48]
mov eax, dword [eax]
mov edx, dword [ebp + 0x50]
mov edx, dword [edx + 0x38]
cmp eax, dword [edx]
jle 0x6f9cd6
mov eax, dword [ebp + 0x48]
mov eax, dword [eax]
add eax, 2
mov edx, dword [ebp + 0x50]
mov edx, dword [edx + 0x38]
mov dword [edx], eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax + 0x88]
mov edx, dword [ebp + 0x50]
mov edx, dword [edx + 0x30]
mov edx, dword [edx]
dec edx
cmp eax, edx
jne 0x6f9d52
mov eax, dword [ebp + 0x50]
cmp byte [eax - 0x6a], 0
je 0x6f9d52
cmp byte [ebp + 0x4c], 0
jne 0x6f9d52
mov eax, dword [ebp + 0x50]
mov edx, dword [ebp - 0x600]
mov dword [eax - 0x38], edx
mov eax, dword [ebp + 0x50]
mov edx, dword [ebp - 0x5f4]
mov dword [eax - 0x34], edx
mov eax, dword [ebp + 0x50]
add eax, 0xffffffc0
xor ecx, ecx
mov edx, 1
call fcn.0041560c
cmp byte [ebp + 0x4c], 0
jne 0x6f9d39
mov eax, dword [ebp + 0x50]
lea edx, [eax - 0x40]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
call dword [ecx + 0x4c]
mov eax, dword [ebp - 0x5f0]
inc eax
mov edx, dword [ebp + 0x50]
mov dword [edx - 0x40], eax
mov eax, dword [ebp + 0x50]
mov eax, dword [eax - 0x34]
mov edx, dword [ebp + 0x50]
mov dword [edx - 0x3c], eax
mov eax, dword [ebp + 8]
mov edx, dword [ebp - 8]
call fcn.0040b444
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x6f9df5
lea eax, [ebp - 0x6f8]
mov edx, 0x12
call fcn.0040b0b4
lea eax, [ebp - 0x6a0]
mov edx, 5
call fcn.0040b0b4
lea eax, [ebp - 0x68c]
call fcn.0040b054
lea eax, [ebp - 0x688]
mov edx, 0xd
call fcn.0040b0b4
lea eax, [ebp - 0x64c]
mov edx, 6
call fcn.0040b0b4
lea eax, [ebp - 0x634]
call fcn.0040b054
lea eax, [ebp - 0x630]
mov edx, 3
call fcn.0040b0b4
lea eax, [ebp - 0x614]
call fcn.0040b054
lea eax, [ebp - 0x18]
mov edx, 6
call fcn.0040b0b4
pop eax
jmp eax