Function at 0x416a52
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xaf8
mov eax, dword [0x46e004]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
mov eax, 0x5577
mov word [ebp - 0x14], ax
mov ecx, 0x2cf0
mov word [ebp - 0x12], cx
xor edx, edx
mov word [ebp - 0x10], dx
mov eax, 0x2837
mov word [ebp - 0x34], ax
mov ecx, 0x7ada
mov word [ebp - 0x32], cx
mov edx, 0x4688
mov word [ebp - 0x30], dx
xor eax, eax
mov word [ebp - 0x2e], ax
mov ecx, dword [0x468708]
mov edx, dword [0x46870c]
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], edx
mov eax, dword [0x468710]
mov dword [ebp - 0x4ec], eax
mov ecx, dword [0x468714]
mov dword [ebp - 0x4e4], ecx
mov byte [ebp - 0x4c8], 0xd9
mov byte [ebp - 0x4c7], 0x8c
xor edx, edx
mov byte [ebp - 0x4c6], dl
mov eax, dword [0x468718]
mov dword [ebp - 0x4dc], eax
mov cx, word [0x46871c]
mov word [ebp - 0x4d0], cx
mov dl, byte [0x46871e]
mov byte [ebp - 0x4ce], dl
mov byte [ebp - 0x4e0], 0xad
mov byte [ebp - 0x4df], 0xc8
mov byte [ebp - 0x4de], 0xd2
xor eax, eax
mov byte [ebp - 0x4dd], al
xor ecx, ecx
mov dword [ebp - 0x58c], 0x1378
mov dword [ebp - 0x588], ecx
xorps xmm0, xmm0
movlpd qword [ebp - 0x5a4], xmm0
mov dword [ebp - 0x574], 0x60c
mov dword [ebp - 0x57c], 0xef4
xorps xmm0, xmm0
movlpd qword [ebp - 0x594], xmm0
mov edx, 0x106c
mov word [ebp - 0x1c], dx
mov eax, 0x48e6
mov word [ebp - 0x1a], ax
xor ecx, ecx
mov word [ebp - 0x18], cx
mov edx, dword [0x468720]
mov eax, dword [0x468724]
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x38], eax
mov ecx, dword [0x468728]
mov dword [ebp - 0x44], ecx
mov dx, word [0x46872c]
mov word [ebp - 0x40], dx
mov eax, dword [0x468730]
mov dword [ebp - 0xc], eax
mov cx, word [0x468734]
mov word [ebp - 8], cx
mov edx, dword [0x468738]
mov eax, dword [0x46873c]
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x20], eax
xor ecx, ecx
mov dword [ebp - 0x5c0], 0xd4f
mov dword [ebp - 0x5bc], ecx
xor edx, edx
mov dword [ebp - 0x5ac], 0x8ac
mov dword [ebp - 0x5a8], edx
mov dword [ebp - 0x59c], 0x3e
xor eax, eax
mov dword [ebp - 0x5b8], 0x737
mov dword [ebp - 0x5b4], eax
mov dword [ebp - 0x598], 0x3b53
mov byte [ebp - 0x4cc], 0xfb
mov byte [ebp - 0x4cb], 0x52
xor ecx, ecx
mov byte [ebp - 0x4ca], cl
mov byte [ebp - 0x4d8], 0xdc
mov byte [ebp - 0x4d7], 0x75
mov byte [ebp - 0x4d6], 0xc9
xor edx, edx
mov byte [ebp - 0x4d5], dl
mov byte [ebp - 0x4d4], 0x1e
mov byte [ebp - 0x4d3], 0xa3
xor eax, eax
mov byte [ebp - 0x4d2], al
mov dword [ebp - 0x584], 1
mov dword [ebp - 0x578], 1
mov dword [ebp - 0x80c], 0
mov dword [ebp - 0x810], 0
mov dword [ebp - 0x814], 0
mov dword [ebp - 0x818], 0
mov dword [ebp - 0x6ac], 1
mov dword [ebp - 0x5c4], 1
mov dword [ebp - 0x580], 1
cmp dword [ebp - 0x5bc], 0
ja 0x412dd5
jb 0x412299
cmp dword [ebp - 0x5c0], 0xaed
jae 0x412dd5
mov cx, word [0x468740]
mov word [ebp - 0x51c], cx
mov dl, byte [0x468742]
mov byte [ebp - 0x51a], dl
mov ax, word [0x468744]
mov word [ebp - 0x640], ax
mov cl, byte [0x468746]
mov byte [ebp - 0x63e], cl
mov byte [ebp - 0x514], 0x82
mov byte [ebp - 0x513], 0xc0
xor edx, edx
mov byte [ebp - 0x512], dl
mov byte [ebp - 0x518], 0xa5
mov byte [ebp - 0x517], 0xb3
xor eax, eax
mov byte [ebp - 0x516], al
mov cx, word [0x468748]
mov word [ebp - 0x644], cx
mov dl, byte [0x46874a]
mov byte [ebp - 0x642], dl
mov eax, dword [0x46874c]
mov dword [ebp - 0x81c], eax
mov ecx, dword [0x468750]
mov dword [ebp - 0x56c], ecx
mov edx, 1
shl edx, 1
movzx eax, byte [ebp + edx - 0x56c]
mov ecx, 1
shl ecx, 0
movzx edx, byte [ebp + ecx - 0x51c]
add eax, edx
mov ecx, 2
imul edx, ecx, 0
movzx ecx, word [ebp + edx - 0x2c]
sub eax, ecx
mov edx, 2
imul ecx, edx, 0
mov word [ebp + ecx - 0x14], ax
mov dword [ebp - 0x820], 0x3f96
mov dword [ebp - 0x618], 0x9b
mov dword [ebp - 0x824], 0
mov dword [ebp - 0x828], 0x1765
mov dword [ebp - 0x614], 0x6e1
mov dword [ebp - 0x660], 0x2b07
mov dword [ebp - 0xae0], 0x27
mov edx, dword [ebp - 0x584]
add edx, dword [ebp - 0x618]
mov eax, 2
imul ecx, eax, 0
movzx eax, word [ebp + ecx - 0x2c]
add edx, eax
mov ecx, 1
shl ecx, 0
mov byte [ebp + ecx - 0x4d4], dl
mov edx, dword [ebp - 0x578]
add edx, dword [ebp - 0x584]
add edx, dword [ebp - 0x660]
mov eax, 2
imul ecx, eax, 0
mov word [ebp + ecx - 0x14], dx
mov edx, 1
imul eax, edx, 0
movzx ecx, byte [ebp + eax - 0x4d4]
sub ecx, dword [ebp - 0x584]
add ecx, dword [ebp - 0x618]
mov dword [ebp - 0x614], ecx
mov edx, 1
shl edx, 0
mov al, byte [ebp + edx - 0x4d4]
add al, 1
mov ecx, 1
shl ecx, 0
mov byte [ebp + ecx - 0x4d4], al
mov edx, 2
imul eax, edx, 0
mov cx, word [ebp + eax - 0x14]
add cx, 1
mov edx, 2
imul eax, edx, 0
mov word [ebp + eax - 0x14], cx
mov ecx, dword [ebp - 0x584]
add ecx, dword [ebp - 0x584]
mov dword [ebp - 0x614], ecx
mov dx, word [0x468754]
mov word [ebp - 0x630], dx
mov al, byte [0x468756]
mov byte [ebp - 0x62e], al
mov ecx, dword [0x468758]
mov dword [ebp - 0x560], ecx
mov byte [ebp - 0x558], 0xc9
mov byte [ebp - 0x557], 0x3a
mov byte [ebp - 0x556], 0x3c
xor edx, edx
mov byte [ebp - 0x555], dl
mov byte [ebp - 0x504], 0x49
mov byte [ebp - 0x503], 0x16
xor eax, eax
mov byte [ebp - 0x502], al
mov ecx, dword [0x46875c]
mov dword [ebp - 0xadc], ecx
mov edx, dword [0x468760]
mov dword [ebp - 0x564], edx
mov dword [ebp - 0x584], 1
mov eax, 1
shl eax, 0
mov cl, byte [ebp + eax - 0x560]
add cl, 1
mov edx, 1
shl edx, 0
mov byte [ebp + edx - 0x560], cl
mov eax, 1
shl eax, 1
movzx ecx, byte [ebp + eax - 0x564]
mov edx, dword [ebp - 0x598]
sub edx, ecx
mov eax, 1
shl eax, 0
movzx ecx, byte [ebp + eax - 0x564]
add edx, ecx
mov eax, 1
imul ecx, eax, 0
mov byte [ebp + ecx - 0x504], dl
mov edx, dword [ebp - 0x59c]
sub edx, dword [ebp - 0x578]
add edx, dword [ebp - 0x5b8]
mov eax, 2
imul ecx, eax, 0
mov word [ebp + ecx - 0x2c], dx
mov edx, dword [0x468764]
mov dword [ebp - 0x754], edx
mov ax, word [0x468768]
mov word [ebp - 0x750], ax
mov ecx, dword [0x46876c]
mov dword [ebp - 0x75c], ecx
mov dx, word [0x468770]
mov word [ebp - 0x758], dx
mov eax, dword [0x468774]
mov ecx, dword [0x468778]
mov dword [ebp - 0x958], eax
mov dword [ebp - 0x954], ecx
mov edx, dword [0x46877c]
mov eax, dword [0x468780]
mov dword [ebp - 0x960], edx
mov dword [ebp - 0x95c], eax
mov ecx, dword [0x468784]
mov edx, dword [0x468788]
mov dword [ebp - 0x270], ecx
mov dword [ebp - 0x26c], edx
mov eax, dword [0x46878c]
mov dword [ebp - 0x764], eax
mov cx, word [0x468790]
mov word [ebp - 0x760], cx
mov edx, dword [0x468794]
mov eax, dword [0x468798]
mov dword [ebp - 0x968], edx
mov dword [ebp - 0x964], eax
mov ecx, 0x3ace
mov word [ebp - 0xc4], cx
mov edx, 0x3e91
mov word [ebp - 0xc2], dx
xor eax, eax
mov word [ebp - 0xc0], ax
mov ecx, dword [ebp - 0x578]
add ecx, dword [ebp - 0x578]
mov edx, 2
imul eax, edx, 0
mov word [ebp + eax - 0x270], cx
mov ecx, 0x6c99
mov word [ebp - 0x11c], cx
mov edx, 0x3455
mov word [ebp - 0x11a], dx
xor eax, eax
mov word [ebp - 0x118], ax
mov ecx, 0x25f5
mov word [ebp - 0xcc], cx
mov edx, 0x6cc3
mov word [ebp - 0xca], dx
mov eax, 0x3f3a
mov word [ebp - 0xc8], ax
xor ecx, ecx
mov word [ebp - 0xc6], cx
mov edx, 0x677f
mov word [ebp - 0x114], dx
mov eax, 0x7fe8
mov word [ebp - 0x112], ax
xor ecx, ecx
mov word [ebp - 0x110], cx
mov edx, 0x2eda
mov word [ebp - 0x10c], dx
mov eax, 0x587e
mov word [ebp - 0x10a], ax
xor ecx, ecx
mov word [ebp - 0x108], cx
mov edx, 0x2543
mov word [ebp - 0xa4], dx
mov eax, 0x18a6
mov word [ebp - 0xa2], ax
mov ecx, 0x3f2b
mov word [ebp - 0xa0], cx
xor edx, edx
mov word [ebp - 0x9e], dx
mov eax, 0x1cfd
mov word [ebp - 0x9c], ax
mov ecx, 0x3410
mov word [ebp - 0x9a], cx
mov edx, 0x4003
mov word [ebp - 0x98], dx
xor eax, eax
mov word [ebp - 0x96], ax
mov ecx, dword [0x46879c]
mov edx, dword [0x4687a0]
mov dword [ebp - 0x970], ecx
mov dword [ebp - 0x96c], edx
mov eax, dword [0x4687a4]
mov ecx, dword [0x4687a8]
mov dword [ebp - 0x20c], eax
mov dword [ebp - 0x208], ecx
mov edx, 0x7eca
mov word [ebp - 0x104], dx
mov eax, 0x1e2d
mov word [ebp - 0x102], ax
xor ecx, ecx
mov word [ebp - 0x100], cx
mov edx, dword [0x4687ac]
mov eax, dword [0x4687b0]
mov dword [ebp - 0x978], edx
mov dword [ebp - 0x974], eax
mov ecx, 1
shl ecx, 1
movzx edx, byte [ebp + ecx - 0x4d8]
mov eax, 1
shl eax, 0
movzx ecx, byte [ebp + eax - 0x4d4]
sub edx, ecx
add edx, dword [ebp - 0x578]
mov eax, 2
imul ecx, eax, 0
mov word [ebp + ecx - 0x9c], dx
mov edx, 2
imul eax, edx, 0
mov cx, word [ebp + eax - 0x20c]
sub cx, 1
mov edx, 2
imul eax, edx, 0
mov word [ebp + eax - 0x20c], cx
mov ecx, 2
imul edx, ecx, 0
movzx eax, word [ebp + edx - 0xa4]
imul eax, dword [ebp - 0x598]
mov ecx, 1
imul edx, ecx, 0
mov byte [ebp + edx - 0x4cc], al
mov eax, 1
shl eax, 0
mov cl, byte [ebp + eax - 0x4cc]
add cl, 1
mov edx, 1
shl edx, 0
mov byte [ebp + edx - 0x4cc], cl
mov dword [ebp - 0x664], 0x2e0
mov dword [ebp - 0x61c], 0xfc6
xor eax, eax
mov dword [ebp - 0xae8], 0xda7
mov dword [ebp - 0xae4], eax
mov dword [ebp - 0xad8], 0x120e
mov dword [ebp - 0x950], 0x4d0
xor ecx, ecx
mov dword [ebp - 0x984], 0x74
mov dword [ebp - 0x980], ecx
mov dword [ebp - 0x94c], 0x14e6
mov dword [ebp - 0x948], 0x10
mov edx, dword [ebp - 0x584]
imul edx, dword [ebp - 0x664]
mov eax, 1
imul ecx, eax, 0
mov byte [ebp + ecx - 0x4d8], dl
mov dword [ebp - 0x584], 0
mov eax, dword [ebp - 0x61c]
xor edx, edx
div dword [ebp - 0x584]
mov dword [ebp - 0x61c], eax
mov dx, word [0x4687b4]
mov word [ebp - 0x634], dx
mov al, byte [0x4687b6]
mov byte [ebp - 0x632], al
mov byte [ebp - 0x4f8], 0x2a
mov byte [ebp - 0x4f7], 0x55
mov byte [ebp - 0x4f6], 0xb7
xor ecx, ecx
mov byte [ebp - 0x4f5], cl
mov dx, word [0x4687b8]
mov word [ebp - 0x524], dx
mov al, byte [0x4687ba]
mov byte [ebp - 0x522], al
mov ecx, dword [0x4687bc]
mov dword [ebp - 0x944], ecx
mov byte [ebp - 0x520], 0x6d
mov byte [ebp - 0x51f], 0x19
xor edx, edx
mov byte [ebp - 0x51e], dl
mov eax, 1
imul ecx, eax, 0
movzx eax, byte [ebp + ecx - 0x524]
cdq
mov ecx, dword [ebp - 0x5bc]
push ecx
mov ecx, dword [ebp - 0x5c0]
push ecx
push edx
push eax
call fcn.00461c30
mov dword [ebp - 0x5c0], eax
mov dword [ebp - 0x5bc], edx
mov edx, 1
shl edx, 1
mov al, byte [ebp + edx - 0x4f8]
add al, 1
mov ecx, 1
shl ecx, 1
mov byte [ebp + ecx - 0x4f8], al
mov edx, 2
imul eax, edx, 0
mov cx, word [ebp + eax - 0x34]
add cx, 1
mov edx, 2
imul eax, edx, 0
mov word [ebp + eax - 0x34], cx
mov ecx, dword [0x4687c0]
mov dword [ebp - 0xfc], ecx
mov dx, word [0x4687c4]
mov word [ebp - 0xf8], dx
mov eax, 0x680
mov word [ebp - 0x1fc], ax
mov ecx, 0x12c9
mov word [ebp - 0x1fa], cx
mov edx, 0x61d4
mov word [ebp - 0x1f8], dx
xor eax, eax
mov word [ebp - 0x1f6], ax
mov ecx, 0xcf7
mov word [ebp - 0x1f4], cx
mov edx, 0x231f
mov word [ebp - 0x1f2], dx
mov eax, 0x5781
mov word [ebp - 0x1f0], ax
xor ecx, ecx
mov word [ebp - 0x1ee], cx
mov edx, dword [0x4687c8]
mov eax, dword [0x4687cc]
mov dword [ebp - 0x98c], edx
mov dword [ebp - 0x988], eax
mov ecx, dword [0x4687d0]
mov edx, dword [0x4687d4]
mov dword [ebp - 0x278], ecx
mov dword [ebp - 0x274], edx
mov eax, dword [0x4687d8]
mov ecx, dword [0x4687dc]
mov dword [ebp - 0x994], eax
mov dword [ebp - 0x990], ecx
mov edx, dword [0x4687e0]
mov eax, dword [0x4687e4]
mov dword [ebp - 0x99c], edx
mov dword [ebp - 0x998], eax
mov ecx, dword [0x4687e8]
mov dword [ebp - 0xf4], ecx
mov dx, word [0x4687ec]
mov word [ebp - 0xf0], dx
mov eax, 1
shl eax, 0
movzx ecx, byte [ebp + eax - 0x4d4]
add ecx, dword [ebp - 0x578]
mov edx, 1
imul eax, edx, 0
movzx edx, byte [ebp + eax - 0x4d4]
sub ecx, edx
mov eax, 2
imul edx, eax, 0
mov word [ebp + edx - 0x278], cx
mov eax, 2
imul ecx, eax, 0
movzx edx, word [ebp + ecx - 0xfc]
add edx, dword [ebp - 0x578]
mov eax, 1
imul ecx, eax, 0
movzx eax, byte [ebp + ecx - 0x4d4]
sub edx, eax
mov ecx, 2
imul eax, ecx, 0
mov word [ebp + eax - 0xf4], dx
mov cx, word [0x4687f0]
mov word [ebp - 0x638], cx
mov dl, byte [0x4687f2]
mov byte [ebp - 0x636], dl
mov eax, dword [0x4687f4]
mov dword [ebp - 0x940], eax
mov ecx, dword [0x4687f8]
mov dword [ebp - 0x570], ecx
mov edx, 2
imul eax, edx, 0
mov cx, word [ebp + eax - 0x14]
add cx, 1
mov edx, 2
imul eax, edx, 0
mov word [ebp + eax - 0x14], cx
mov ecx, 1
shl ecx, 0
movzx edx, byte [ebp + ecx - 0x570]
add edx, dword [ebp - 0x584]
mov dword [ebp - 0x598], edx
mov eax, dword [0x4687fc]
mov dword [ebp - 0x76c], eax
mov cx, word [0x468800]
mov word [ebp - 0x768], cx
mov edx, dword [0x468804]
mov dword [ebp - 0x714], edx
mov ax, word [0x468808]
mov word [ebp - 0x710], ax
mov ecx, dword [0x46880c]
mov edx, dword [0x468810]
mov dword [ebp - 0x9a4], ecx
mov dword [ebp - 0x9a0], edx
mov eax, 0x117a
mov word [ebp - 0xec], ax
mov ecx, 0x2f5a
mov word [ebp - 0xea], cx
xor edx, edx
mov word [ebp - 0xe8], dx
mov eax, 0x5452
mov word [ebp - 0xac], ax
mov ecx, 0x996
mov word [ebp - 0xaa], cx
mov edx, 0x5f83
mov word [ebp - 0xa8], dx
xor eax, eax
mov word [ebp - 0xa6], ax
mov ecx, dword [0x468814]
mov edx, dword [0x468818]
mov dword [ebp - 0x5c], ecx
mov dword [ebp - 0x58], edx
mov eax, dword [0x46881c]
mov ecx, dword [0x468820]
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], ecx
mov edx, 2
imul eax, edx, 0
movzx eax, word [ebp + eax - 0x5c]
cdq
mov dword [ebp - 0x5b8], eax
mov dword [ebp - 0x5b4], edx
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [ebp + edx - 0x4cc]
mov ecx, 2
imul edx, ecx, 0
movzx ecx, word [ebp + edx - 0xac]
add eax, ecx
mov edx, 2
imul ecx, edx, 0
movzx edx, word [ebp + ecx - 0x5c]
add eax, edx
mov ecx, 2
imul edx, ecx, 0
mov word [ebp + edx - 0x5c], ax
mov eax, 2
imul ecx, eax, 0
movzx eax, word [ebp + ecx - 0x54]
sub eax, dword [ebp - 0x578]
cdq
mov dword [ebp - 0x5b8], eax
mov dword [ebp - 0x5b4], edx
mov edx, 2
imul eax, edx, 0
mov cx, word [ebp + eax - 0x54]
add cx, 1
mov edx, 2
imul eax, edx, 0
mov word [ebp + eax - 0x54], cx
mov ecx, 2
imul edx, ecx, 0
movzx eax, word [ebp + edx - 0x54]
imul eax, dword [ebp - 0x578]
mov ecx, 2
imul edx, ecx, 0
mov word [ebp + edx - 0x5c], ax
mov eax, 1
shl eax, 0
movzx ecx, byte [ebp + eax - 0x4cc]
add ecx, dword [ebp - 0x578]
mov edx, 2
imul eax, edx, 0
mov word [ebp + eax - 0x2c], cx
mov ecx, 2
imul edx, ecx, 0
movzx eax, word [ebp + edx - 0x2c]
cdq
mov ecx, eax
add ecx, dword [ebp - 0x5b8]
mov edx, 2
imul eax, edx, 0
movzx eax, word [ebp + eax - 0x2c]
cdq
add ecx, eax
mov edx, 1
imul eax, edx, 0
mov byte [ebp + eax - 0x4d8], cl
mov ecx, dword [ebp - 0x598]
sub ecx, dword [ebp - 0x584]
add ecx, dword [ebp - 0x59c]
mov edx, 1
shl edx, 0
mov byte [ebp + edx - 0x4d8], cl
mov eax, 2
imul ecx, eax, 0
movzx eax, word [ebp + ecx - 0x14]
cdq
sub eax, dword [ebp - 0x5c0]
sub eax, dword [ebp - 0x5b8]
mov edx, 1
imul ecx, edx, 0
mov byte [ebp + ecx - 0x4cc], al
mov edx, 2
imul eax, edx, 0
movzx ecx, word [ebp + eax - 0x2c]
add ecx, dword [ebp - 0x578]
mov edx, 1
shl edx, 0
movzx eax, byte [ebp + edx - 0x4cc]
sub ecx, eax
mov dword [ebp - 0x59c], ecx
mov ecx, 1
imul edx, ecx, 0
mov al, byte [ebp + edx - 0x4cc]
sub al, 1
mov ecx, 1
imul edx, ecx, 0
mov byte [ebp + edx - 0x4cc], al
jmp 0x4133ca
mov eax, dword [0x468824]
mov dword [ebp - 0x84], eax
mov cx, word [0x468828]
mov word [ebp - 0x80], cx
mov edx, dword [0x46882c]
mov dword [ebp - 0x77c], edx
mov ax, word [0x468830]
mov word [ebp - 0x778], ax
mov ecx, dword [0x468834]
mov dword [ebp - 0x784], ecx
mov dx, word [0x468838]
mov word [ebp - 0x780], dx
mov eax, 0x1015
mov word [ebp - 0x8c], ax
mov ecx, 0x4818
mov word [ebp - 0x8a], cx
xor edx, edx
mov word [ebp - 0x88], dx
mov eax, dword [0x46883c]
mov dword [ebp - 0x6b4], eax
mov cx, word [0x468840]
mov word [ebp - 0x6b0], cx
mov edx, dword [0x468844]
mov dword [ebp - 0x6bc], edx
mov ax, word [0x468848]
mov word [ebp - 0x6b8], ax
mov ecx, dword [0x46884c]
mov edx, dword [0x468850]
mov dword [ebp - 0x280], ecx
mov dword [ebp - 0x27c], edx
mov eax, dword [0x468854]
mov dword [ebp - 0x6c4], eax
mov cx, word [0x468858]
mov word [ebp - 0x6c0], cx
mov edx, 1
shl edx, 0
movzx eax, byte [ebp + edx - 0x4cc]
imul eax, dword [ebp - 0x584]
mov ecx, 2
imul edx, ecx, 0
mov word [ebp + edx - 0x8c], ax
mov eax, 1
shl eax, 0
mov cl, byte [ebp + eax - 0x4cc]
add cl, 1
mov edx, 1
shl edx, 0
mov byte [ebp + edx - 0x4cc], cl
mov eax, 2
imul ecx, eax, 0
mov dx, word [ebp + ecx - 0x84]
sub dx, 1
mov eax, 2
imul ecx, eax, 0
mov word [ebp + ecx - 0x84], dx
mov edx, 2
imul eax, edx, 0
movzx eax, word [ebp + eax - 0x280]
cdq
mov ecx, eax
add ecx, dword [ebp - 0x5ac]
mov eax, dword [ebp - 0x584]
cdq
add ecx, eax
mov edx, 1
imul eax, edx, 0
mov byte [ebp + eax - 0x4d8], cl
mov ecx, dword [0x46885c]
mov edx, dword [0x468860]
mov dword [ebp - 0x288], ecx
mov dword [ebp - 0x284], edx
mov eax, dword [0x468864]
mov ecx, dword [0x468868]
mov dword [ebp - 0x290], eax
mov dword [ebp - 0x28c], ecx
mov edx, dword [0x46886c]
mov dword [ebp - 0x6cc], edx
mov ax, word [0x468870]
mov word [ebp - 0x6c8], ax
mov ecx, dword [0x468874]
mov edx, dword [0x468878]
mov dword [ebp - 0x9ac], ecx
mov dword [ebp - 0x9a8], edx
mov eax, 0x4010
mov word [ebp - 0x1ec], ax
mov ecx, 0x14f8
mov word [ebp - 0x1ea], cx
mov edx, 0x1d06
mov word [ebp - 0x1e8], dx
xor eax, eax
mov word [ebp - 0x1e6], ax
mov ecx, 1
shl ecx, 0
movzx eax, byte [ebp + ecx - 0x4d8]
cdq
push edx
push eax
mov edx, dword [ebp - 0x5a8]
push edx
mov eax, dword [ebp - 0x5ac]
push eax
call fcn.00461c30
mov ecx, 1
shl ecx, 0
mov byte [ebp + ecx - 0x4cc], al
mov edx, 1
imul eax, edx, 0
movzx ecx, byte [ebp + eax - 0x4d8]
mov edx, dword [ebp - 0x598]
sub edx, ecx
sub edx, dword [ebp - 0x5c0]
mov eax, 2
imul ecx, eax, 0
mov word [ebp + ecx - 0x288], dx
mov edx, 1
shl edx, 1
mov al, byte [ebp + edx - 0x4d8]
sub al, 1
mov ecx, 1
shl ecx, 1
mov byte [ebp + ecx - 0x4d8], al
mov edx, 2
imul eax, edx, 0
movzx eax, word [ebp + eax - 0x290]
mov ecx, 1
shl ecx, 0
movzx edx, byte [ebp + ecx - 0x4d4]
add eax, edx
cdq
add eax, dword [ebp - 0x5c0]
mov dword [ebp - 0x59c], eax
mov dword [ebp - 0x93c], 0
mov dword [ebp - 0x938], 0
mov dword [ebp - 0x934], 0
mov eax, 1
imul ecx, eax, 0
mov dl, byte [ebp + ecx - 0x4cc]
add dl, 1
mov eax, 1
imul ecx, eax, 0
mov byte [ebp + ecx - 0x4cc], dl
mov edx, 1
imul eax, edx, 0
movzx eax, byte [ebp + eax - 0x4d4]
cdq
push edx
push eax
mov ecx, dword [ebp - 0x5b4]
push ecx
mov edx, dword [ebp - 0x5b8]
push edx
call fcn.00462e40
mov ecx, 1
shl ecx, 0
mov byte [ebp + ecx - 0x4cc], al
mov edx, 1
shl edx, 1
mov al, byte [ebp + edx - 0x4d8]
sub al, 1
mov ecx, 1
shl ecx, 1
mov byte [ebp + ecx - 0x4d8], al
mov edx, 0x7b2b
mov word [ebp - 0x1e4], dx
mov eax, 0x1796
mov word [ebp - 0x1e2], ax
mov ecx, 0x33f6
mov word [ebp - 0x1e0], cx
xor edx, edx
mov word [ebp - 0x1de], dx
mov eax, dword [0x46887c]
mov dword [ebp - 0x6d4], eax
mov cx, word [0x468880]
mov word [ebp - 0x6d0], cx
mov edx, 0xdfe
mov word [ebp - 0x17c], dx
mov eax, 0xbe1
mov word [ebp - 0x17a], ax
xor ecx, ecx
mov word [ebp - 0x178], cx
mov edx, 0x19c3
mov word [ebp - 0x124], dx
mov eax, 0x6241
mov word [ebp - 0x122], ax
mov ecx, 0x7734
mov word [ebp - 0x120], cx
xor edx, edx
mov word [ebp - 0x11e], dx
mov eax, dword [0x468884]
mov ecx, dword [0x468888]
mov dword [ebp - 0x9b4], eax
mov dword [ebp - 0x9b0], ecx
mov edx, 0x1108
mov word [ebp - 0x174], dx
mov eax, 0x6dc6
mov word [ebp - 0x172], ax
xor ecx, ecx
mov word [ebp - 0x170], cx
mov edx, 0x689
mov word [ebp - 0x16c], dx
mov eax, 0x42fc
mov word [ebp - 0x16a], ax
xor ecx, ecx
mov word [ebp - 0x168], cx
mov edx, dword [0x46888c]
mov dword [ebp - 0x6dc], edx
mov ax, word [0x468890]
mov word [ebp - 0x6d8], ax
mov ecx, dword [0x468894]
mov dword [ebp - 0x6e4], ecx
mov dx, word [0x468898]
mov word [ebp - 0x6e0], dx
mov eax, dword [0x46889c]
mov ecx, dword [0x4688a0]
mov dword [ebp - 0x298], eax
mov dword [ebp - 0x294], ecx
mov edx, 2
imul eax, edx, 0
movzx ecx, word [ebp + eax - 0x298]
add ecx, dword [ebp - 0x578]
mov edx, 1
shl edx, 1
movzx eax, byte [ebp + edx - 0x4d8]
add ecx, eax
mov dword [ebp - 0x59c], ecx
xorps xmm0, xmm0
movlpd qword [ebp - 0xaf0], xmm0
mov dword [ebp - 0x930], 0x34c3
mov dword [ebp - 0x92c], 0x47c
mov dword [ebp - 0x928], 0x10f
xor ecx, ecx
mov dword [ebp - 0x9bc], 0xff6
mov dword [ebp - 0x9b8], ecx
mov dword [ebp - 0x924], 0x399
xor edx, edx
mov dword [ebp - 0x9c4], 0xe6
mov dword [ebp - 0x9c0], edx
mov eax, dword [ebp - 0x584]
mov ecx, 2
imul edx, ecx, 0
mov word [ebp + edx - 0x34], ax
mov eax, 2
imul ecx, eax, 0
mov dx, word [ebp + ecx - 0x14]
add dx, 1
mov eax, 2
imul ecx, eax, 0
mov word [ebp + ecx - 0x14], dx
mov edx, 2
imul eax, edx, 0
mov cx, word [ebp + eax - 0x2c]
sub cx, 1
mov edx, 2
imul eax, edx, 0
mov word [ebp + eax - 0x2c], cx
mov ecx, 1
shl ecx, 0
movzx eax, byte [ebp + ecx - 0x4d4]
mov edx, 2
imul ecx, edx, 0
movzx edx, word [ebp + ecx - 0x2c]
sub eax, edx
cdq
add eax, dword [ebp - 0x5ac]
mov ecx, 1
shl ecx, 1
mov byte [ebp + ecx - 0x4d8], al
mov edx, 1
shl edx, 1
mov al, byte [ebp + edx - 0x4d8]
add al, 1
mov ecx, 1
shl ecx, 1
mov byte [ebp + ecx - 0x4d8], al
mov edx, 1
shl edx, 0
movzx eax, byte [ebp + edx - 0x4cc]
sub eax, dword [ebp - 0x584]
mov ecx, 1
imul edx, ecx, 0
mov byte [ebp + edx - 0x4cc], al
mov eax, dword [ebp - 0x598]
add eax, 1
mov dword [ebp - 0x598], eax
mov ecx, 1
shl ecx, 1
movzx edx, byte [ebp + ecx - 0x4d8]
mov eax, dword [ebp - 0x59c]
sub eax, edx
add eax, dword [ebp - 0x584]
mov ecx, 1
shl ecx, 0
mov byte [ebp + ecx - 0x4d4], al
call fcn.00417aa0
jmp 0x4133df
mov edx, 1
shl edx, 0
movzx eax, byte [ebp + edx - 0x4d4]
mov ecx, dword [ebp - 0x59c]
sub ecx, eax
mov edx, 1
imul eax, edx, 0
movzx edx, byte [ebp + eax - 0x4d8]
add ecx, edx
mov eax, 1
shl eax, 0
mov byte [ebp + eax - 0x4d8], cl
mov ecx, 1
imul edx, ecx, 0
mov al, byte [ebp + edx - 0x4d8]
add al, 1
mov ecx, 1
imul edx, ecx, 0
mov byte [ebp + edx - 0x4d8], al
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ebp + ecx - 0x4d8]
add edx, dword [ebp - 0x59c]
mov eax, 2
imul ecx, eax, 0
movzx eax, word [ebp + ecx - 0x34]
add edx, eax
xor ecx, ecx
mov dword [ebp - 0x5c0], edx
mov dword [ebp - 0x5bc], ecx
mov edx, 2
imul eax, edx, 0
mov cx, word [ebp + eax - 0x34]
add cx, 1
mov edx, 2
imul eax, edx, 0
mov word [ebp + eax - 0x34], cx
mov dword [ebp - 0x5fc], 0x104
jmp 0x4134a0
mov dword [ebp - 0x5ec], 0x12a
jmp 0x4134bb
mov ecx, dword [ebp - 0x5ec]
add ecx, 1
mov dword [ebp - 0x5ec], ecx
mov edx, dword [ebp - 0x5ec]
cmp edx, dword [ebp - 0x59c]
jae 0x413507
mov eax, 2
imul ecx, eax, 0
mov dx, word [ebp + ecx - 0x14]
sub dx, 1
mov eax, 2
imul ecx, eax, 0
mov word [ebp + ecx - 0x14], dx
mov edx, 2
imul eax, edx, 0
mov cx, word [ebp + eax - 0x34]
add cx, 1
mov edx, 2
imul eax, edx, 0
mov word [ebp + eax - 0x34], cx
jmp 0x4134ac
mov dword [ebp - 0x600], 0
jmp 0x41351f
mov dword [ebp - 0x5f0], 0x15
jmp 0x41353a
mov ecx, dword [ebp - 0x5f0]
add ecx, 1
mov dword [ebp - 0x5f0], ecx
mov edx, 1
imul eax, edx, 0
movzx ecx, byte [ebp + eax - 0x4d4]
cmp dword [ebp - 0x5f0], ecx
jae 0x4135b5
mov edx, dword [ebp - 0x5ac]
add edx, 1
mov eax, dword [ebp - 0x5a8]
adc eax, 0
mov dword [ebp - 0x5ac], edx
mov dword [ebp - 0x5a8], eax
mov ecx, 2
imul edx, ecx, 0
mov ax, word [ebp + edx - 0x14]
sub ax, 1
mov ecx, 2
imul edx, ecx, 0
mov word [ebp + edx - 0x14], ax
mov eax, 1
shl eax, 0
movzx ecx, byte [ebp + eax - 0x4d8]
sub ecx, 3
mov edx, 1
shl edx, 0
mov byte [ebp + edx - 0x4d8], cl
jmp 0x41352b
jmp 0x4135c8
mov eax, dword [ebp - 0x598]
sub eax, dword [ebp - 0x584]
add eax, dword [ebp - 0x598]
xor ecx, ecx
mov dword [ebp - 0x5c0], eax
mov dword [ebp - 0x5bc], ecx
mov edx, 2
imul eax, edx, 0
movzx ecx, word [ebp + eax - 0x34]
mov edx, 2
imul eax, edx, 0
movzx edx, word [ebp + eax - 0x34]
imul ecx, edx
mov eax, 1
shl eax, 0
mov byte [ebp + eax - 0x4d4], cl
mov ecx, dword [ebp - 0x59c]
add ecx, 1
mov dword [ebp - 0x59c], ecx
jmp 0x413635
mov edx, 2
imul eax, edx, 0
movzx eax, word [ebp + eax - 0x14]
add eax, dword [ebp - 0x578]
cdq
mov dword [ebp - 0x5c0], eax
mov dword [ebp - 0x5bc], edx
mov eax, dword [ebp - 0x578]
cdq
mov ecx, eax
mov esi, edx
add ecx, dword [ebp - 0x5ac]
adc esi, dword [ebp - 0x5a8]
mov edx, 1
shl edx, 0
movzx eax, byte [ebp + edx - 0x4d8]
cdq
add ecx, eax
adc esi, edx
mov dword [ebp - 0x5b8], ecx
mov dword [ebp - 0x5b4], esi
mov dword [ebp - 0x578], 1
mov eax, 2
imul ecx, eax, 0
movzx eax, word [ebp + ecx - 0x2c]
cdq
push edx
push eax
mov edx, dword [ebp - 0x5b4]
push edx
mov eax, dword [ebp - 0x5b8]
push eax
call fcn.00462e40
mov dword [ebp - 0x598], eax
mov ecx, 2
imul edx, ecx, 0
mov ax, word [ebp + edx - 0x14]
sub ax, 1
mov ecx, 2
imul edx, ecx, 0
mov word [ebp + edx - 0x14], ax
lea eax, [ebp - 0x230]
push eax
mov ecx, dword [0x4707f4]
push ecx
mov edx, dword [0x4707f0]
push edx
push 8
push 0x46e938
call fcn.00430e50
add esp, 0x14
jmp 0x413714
mov eax, 1
shl eax, 1
movzx ecx, byte [ebp + eax - 0x4d8]
mov eax, dword [ebp - 0x59c]
xor edx, edx
div ecx
mov dword [ebp - 0x598], eax
mov edx, 1
imul eax, edx, 0
movzx ecx, byte [ebp + eax - 0x4d8]
imul ecx, dword [ebp - 0x59c]
xor edx, edx
mov dword [ebp - 0x5b8], ecx
mov dword [ebp - 0x5b4], edx
lea eax, [ebp - 0x230]
push eax
lea ecx, [ebp - 0x220]
push ecx
call fcn.0042d860
add esp, 8
jmp 0x41377f
mov edx, 1
imul eax, edx, 0
movzx ecx, byte [ebp + eax - 0x4cc]
test ecx, ecx
jne 0x4137a0
mov edx, 0xd9
test edx, edx
je 0x413d8e
mov dword [ebp - 0x66c], 0x13e9
xor eax, eax
mov dword [ebp - 0x9cc], 0x3816
mov dword [ebp - 0x9c8], eax
xor ecx, ecx
mov dword [ebp - 0x9d4], 0x227
mov dword [ebp - 0x9d0], ecx
mov dword [ebp - 0x920], 0x2390
xor edx, edx
mov dword [ebp - 0x9dc], 0xc9e
mov dword [ebp - 0x9d8], edx
mov dword [ebp - 0x668], 0x427
mov dword [ebp - 0x91c], 0x2608
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ebp + ecx - 0x4cc]
add edx, dword [ebp - 0x668]
add edx, dword [ebp - 0x66c]
mov eax, 1
shl eax, 0
mov byte [ebp + eax - 0x4d8], dl
mov dword [ebp - 0x918], 1
mov dword [ebp - 0x914], 1
mov dword [ebp - 0x910], 0
mov dword [ebp - 0x90c], 0
mov dword [ebp - 0x908], 0
mov dword [ebp - 0x900], 0
mov ecx, 1
shl ecx, 0
movzx edx, byte [ebp + ecx - 0x4cc]
mov eax, 1
imul ecx, eax, 0
movzx eax, byte [ebp + ecx - 0x4d4]
add edx, eax
mov ecx, 2
imul eax, ecx, 0
mov word [ebp + eax - 0x2c], dx
mov dword [ebp - 0x8fc], 1
mov dword [ebp - 0x8f8], 1
mov dword [ebp - 0x8f4], 1
mov dword [ebp - 0x8f0], 1
mov ecx, 2
imul edx, ecx, 0
mov ax, word [ebp + edx - 0x2c]
sub ax, 1
mov ecx, 2
imul edx, ecx, 0
mov word [ebp + edx - 0x2c], ax
mov eax, dword [ebp - 0x5ac]
sub eax, 1
mov ecx, dword [ebp - 0x5a8]
sbb ecx, 0
mov dword [ebp - 0x5ac], eax
mov dword [ebp - 0x5a8], ecx
mov edx, 1
imul eax, edx, 0
movzx ecx, byte [ebp + eax - 0x4d8]
add ecx, dword [ebp - 0x59c]
mov edx, 2
imul eax, edx, 0
movzx edx, word [ebp + eax - 0x14]
add ecx, edx
xor eax, eax
mov dword [ebp - 0x5c0], ecx
mov dword [ebp - 0x5bc], eax
mov byte [ebp - 0x528], 0xdc
mov byte [ebp - 0x527], 0x1b
xor ecx, ecx
mov byte [ebp - 0x526], cl
mov edx, dword [0x4688a4]
mov dword [ebp - 0x568], edx
mov byte [ebp - 0x510], 0x37
mov byte [ebp - 0x50f], 0xa5
mov byte [ebp - 0x50e], 0x9b
xor eax, eax
mov byte [ebp - 0x50d], al
mov ecx, dword [0x4688a8]
mov dword [ebp - 0x8ec], ecx
mov dx, word [0x4688ac]
mov word [ebp - 0x63c], dx
mov al, byte [0x4688ae]
mov byte [ebp - 0x63a], al
mov cx, word [0x4688b0]
mov word [ebp - 0x65c], cx
mov dl, byte [0x4688b2]
mov byte [ebp - 0x65a], dl
mov byte [ebp - 0x4f4], 0x89
mov byte [ebp - 0x4f3], 0xe2
xor eax, eax
mov byte [ebp - 0x4f2], al
mov cx, word [0x4688b4]
mov word [ebp - 0x508], cx
mov dl, byte [0x4688b6]
mov byte [ebp - 0x506], dl
mov eax, dword [0x4688b8]
mov dword [ebp - 0x8e8], eax
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [ebp + edx - 0x568]
mov ecx, 2
imul edx, ecx, 0
movzx ecx, word [ebp + edx - 0x2c]
sub eax, ecx
mov edx, 1
shl edx, 0
movzx ecx, byte [ebp + edx - 0x508]
add eax, ecx
mov edx, 1
shl edx, 0
mov byte [ebp + edx - 0x510], al
mov eax, 2
imul ecx, eax, 0
mov dx, word [ebp + ecx - 0x14]
sub dx, 1
mov eax, 2
imul ecx, eax, 0
mov word [ebp + ecx - 0x14], dx
mov edx, 1
shl edx, 0
movzx eax, byte [ebp + edx - 0x508]
imul eax, dword [ebp - 0x578]
mov ecx, 1
shl ecx, 0
mov byte [ebp + ecx - 0x4f4], al
mov edx, 2
imul eax, edx, 0
mov cx, word [ebp + eax - 0x34]
sub cx, 1
mov edx, 2
imul eax, edx, 0
mov word [ebp + eax - 0x34], cx
mov ecx, dword [ebp - 0x5b8]
add ecx, 1
mov edx, dword [ebp - 0x5b4]
adc edx, 0
mov dword [ebp - 0x5b8], ecx
mov dword [ebp - 0x5b4], edx
mov eax, dword [ebp - 0x578]
cdq
mov ecx, eax
mov esi, edx
add ecx, dword [ebp - 0x5c0]
adc esi, dword [ebp - 0x5bc]
mov edx, 1
imul eax, edx, 0
movzx eax, byte [ebp + eax - 0x4f4]
cdq
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x5ac], ecx
mov dword [ebp - 0x5a8], esi
mov dword [ebp - 0x670], 1
mov dword [ebp - 0x8e4], 0
mov dword [ebp - 0x8e0], 0
mov ecx, 2
imul edx, ecx, 0
mov ax, word [ebp + edx - 0x14]
sub ax, 1
mov ecx, 2
imul edx, ecx, 0
mov word [ebp + edx - 0x14], ax
mov eax, 2
imul ecx, eax, 0
movzx eax, word [ebp + ecx - 0x34]
cdq
idiv dword [ebp - 0x670]
mov edx, 2
imul ecx, edx, 0
mov word [ebp + ecx - 0x34], ax
mov dword [ebp - 0x8dc], 1
mov dword [ebp - 0x8d8], 0
mov dword [ebp - 0x8d4], 1
mov dword [ebp - 0x97c], 0
mov dword [ebp - 0x8d0], 0
mov dword [ebp - 0x8cc], 1
mov dword [ebp - 0x8c8], 1
mov dword [ebp - 0x8c4], 0
mov dword [ebp - 0x8c0], 1
mov edx, 1
imul eax, edx, 0
mov cl, byte [ebp + eax - 0x4d8]
add cl, 1
mov edx, 1
imul eax, edx, 0
mov byte [ebp + eax - 0x4d8], cl
mov cx, word [0x4688bc]
mov word [ebp - 0x658], cx
mov dl, byte [0x4688be]
mov byte [ebp - 0x656], dl
mov byte [ebp - 0x4f0], 0x47
mov byte [ebp - 0x4ef], 0x6b
mov byte [ebp - 0x4ee], 0x54
xor eax, eax
mov byte [ebp - 0x4ed], al
mov ecx, dword [0x4688c0]
mov dword [ebp - 0x8bc], ecx
mov byte [ebp - 0x544], 0x7d
mov byte [ebp - 0x543], 0xbe
mov byte [ebp - 0x542], 0x23
xor edx, edx
mov byte [ebp - 0x541], dl
mov byte [ebp - 0x540], 0xa7
mov byte [ebp - 0x53f], 0xc4
mov byte [ebp - 0x53e], 0x5a
xor eax, eax
mov byte [ebp - 0x53d], al
mov byte [ebp - 0x55c], 0xfb
mov byte [ebp - 0x55b], 0xb7
mov byte [ebp - 0x55a], 0xaa
xor ecx, ecx
mov byte [ebp - 0x559], cl
mov dword [ebp - 0x578], 1
mov edx, 2
imul eax, edx, 0
movzx ecx, word [ebp + eax - 0x14]
mov edx, 2
imul eax, edx, 0
movzx edx, word [ebp + eax - 0x14]
add ecx, edx
mov eax, 1
shl eax, 1
movzx edx, byte [ebp + eax - 0x4f0]
sub ecx, edx
mov eax, 2
imul edx, eax, 0
mov word [ebp + edx - 0x34], cx
mov dword [ebp - 0x578], 1
mov eax, 1
shl eax, 1
mov cl, byte [ebp + eax - 0x4f0]
add cl, 1
mov edx, 1
shl edx, 1
mov byte [ebp + edx - 0x4f0], cl
mov eax, 2
imul ecx, eax, 0
movzx edx, word [ebp + ecx - 0x2c]
add edx, dword [ebp - 0x598]
mov eax, 1
imul ecx, eax, 0
mov byte [ebp + ecx - 0x4d4], dl
mov edx, dword [ebp - 0x5ac]
sub edx, 1
mov eax, dword [ebp - 0x5a8]
sbb eax, 0
mov dword [ebp - 0x5ac], edx
mov dword [ebp - 0x5a8], eax
mov ecx, 2
imul edx, ecx, 0
movzx eax, word [ebp + edx - 0x2c]
cdq
mov ecx, eax
add ecx, dword [ebp - 0x5ac]
mov edx, 2
imul eax, edx, 0
movzx eax, word [ebp + eax - 0x14]
cdq
sub ecx, eax
mov edx, 1
shl edx, 0
mov byte [ebp + edx - 0x4d8], cl
mov eax, dword [ebp - 0x59c]
sub eax, dword [ebp - 0x584]
add eax, dword [ebp - 0x578]
mov ecx, 2
imul edx, ecx, 0
mov word [ebp + edx - 0x34], ax
mov eax, dword [ebp - 0x5c0]
sub eax, 1
mov ecx, dword [ebp - 0x5bc]
sbb ecx, 0
mov dword [ebp - 0x5c0], eax
mov dword [ebp - 0x5bc], ecx
mov edx, 1
imul eax, edx, 0
mov cl, byte [ebp + eax - 0x4cc]
add cl, 1
mov edx, 1
imul eax, edx, 0
mov byte [ebp + eax - 0x4cc], cl
xor ecx, ecx
mov dword [ebp - 0x230], ecx
mov dword [ebp - 0x22c], ecx
mov dword [ebp - 0x228], ecx
mov dword [ebp - 0x224], ecx
jmp 0x413db3
mov edx, dword [ebp - 0x584]
add edx, dword [ebp - 0x578]
mov eax, 1
shl eax, 1
mov byte [ebp + eax - 0x4d8], dl
mov ecx, 2
imul edx, ecx, 0
movzx eax, word [ebp + edx - 0x34]
mov ecx, 1
imul edx, ecx, 0
movzx ecx, byte [ebp + edx - 0x4d8]
imul eax, ecx
mov dword [ebp - 0x598], eax
mov edx, 1
imul eax, edx, 0
mov cl, byte [ebp + eax - 0x4cc]
sub cl, 1
mov edx, 1
imul eax, edx, 0
mov byte [ebp + eax - 0x4cc], cl
jmp 0x413e1e
mov ecx, 1
imul edx, ecx, 0
mov al, byte [ebp + edx - 0x4d4]
sub al, 1
mov ecx, 1
imul edx, ecx, 0
mov byte [ebp + edx - 0x4d4], al
mov eax, 1
shl eax, 0
movzx eax, byte [ebp + eax - 0x4d4]
cdq
idiv dword [ebp - 0x578]
mov ecx, 2
imul edx, ecx, 0
mov word [ebp + edx - 0x2c], ax
mov eax, 2
imul ecx, eax, 0
movzx edx, word [ebp + ecx - 0x34]
mov eax, edx
imul eax, dword [ebp - 0x584]
cdq
mov dword [ebp - 0x5ac], eax
mov dword [ebp - 0x5a8], edx
mov eax, 2
imul ecx, eax, 0
mov dx, word [ebp + ecx - 0x34]
add dx, 1
mov eax, 2
imul ecx, eax, 0
mov word [ebp + ecx - 0x34], dx
mov edx, 2
imul eax, edx, 0
movzx eax, word [ebp + eax - 0x14]
add eax, dword [ebp - 0x578]
mov ecx, 2
imul edx, ecx, 0
movzx ecx, word [ebp + edx - 0x2c]
add eax, ecx
cdq
mov dword [ebp - 0x5c0], eax
mov dword [ebp - 0x5bc], edx
mov edx, 1
shl edx, 0
mov al, byte [ebp + edx - 0x4d4]
add al, 1
mov ecx, 1
shl ecx, 0
mov byte [ebp + ecx - 0x4d4], al
mov dword [ebp - 0x5c8], 0
jmp 0x413f07
mov dword [ebp - 0x5f4], 0x125
jmp 0x413f22
mov edx, dword [ebp - 0x5f4]
add edx, 1
mov dword [ebp - 0x5f4], edx
mov eax, 2
imul ecx, eax, 0
movzx edx, word [ebp + ecx - 0x34]
cmp dword [ebp - 0x5f4], edx
jae 0x413fce
mov eax, dword [ebp - 0x598]
sub eax, 1
mov dword [ebp - 0x598], eax
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [ebp + edx - 0x4d4]
add eax, 0xb
mov ecx, 1
imul edx, ecx, 0
mov byte [ebp + edx - 0x4d4], al
mov eax, 2
imul ecx, eax, 0
mov dx, word [ebp + ecx - 0x14]
add dx, 1
mov eax, 2
imul ecx, eax, 0
mov word [ebp + ecx - 0x14], dx
mov edx, dword [ebp - 0x5b8]
sub edx, 0xfc
mov eax, dword [ebp - 0x5b4]
sbb eax, 0
mov dword [ebp - 0x5b8], edx
mov dword [ebp - 0x5b4], eax
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [ebp + edx - 0x4cc]
mov ecx, dword [ebp - 0x59c]
sub ecx, eax
mov dword [ebp - 0x59c], ecx
jmp 0x413f13
mov dword [ebp - 0x8b8], 0
jmp 0x413fe5
mov dword [ebp - 0x5f8], 0x126
jmp 0x414000
mov edx, dword [ebp - 0x5f8]
add edx, 1
mov dword [ebp - 0x5f8], edx
mov eax, 2
imul ecx, eax, 0
movzx edx, word [ebp + ecx - 0x34]
cmp dword [ebp - 0x5f8], edx
jae 0x4140b5
mov eax, 1
imul ecx, eax, 0
mov dl, byte [ebp + ecx - 0x4d4]
add dl, 1
mov eax, 1
imul ecx, eax, 0
mov byte [ebp + ecx - 0x4d4], dl
mov edx, 2
imul eax, edx, 0
movzx ecx, word [ebp + eax - 0x2c]
add ecx, 0x33c
mov edx, 2
imul eax, edx, 0
mov word [ebp + eax - 0x2c], cx
mov ecx, dword [ebp - 0x5ac]
add ecx, 1
mov edx, dword [ebp - 0x5a8]
adc edx, 0
mov dword [ebp - 0x5ac], ecx
mov dword [ebp - 0x5a8], edx
mov eax, 1
shl eax, 0
movzx eax, byte [ebp + eax - 0x4d8]
cdq
add eax, dword [ebp - 0x5b8]
adc edx, dword [ebp - 0x5b4]
mov dword [ebp - 0x5b8], eax
mov dword [ebp - 0x5b4], edx
mov ecx, dword [ebp - 0x598]
sub ecx, 1
mov dword [ebp - 0x598], ecx
jmp 0x413ff1
mov dword [ebp - 0x69c], 1
jmp 0x4140cc
mov edx, 2
imul eax, edx, 0
movzx ecx, word [ebp + eax - 0x2c]
imul ecx, dword [ebp - 0x578]
mov edx, 1
shl edx, 0
mov byte [ebp + edx - 0x4d4], cl
mov dword [ebp - 0x584], 1
mov eax, 2
imul ecx, eax, 0
movzx eax, word [ebp + ecx - 0x14]
mov edx, 2
imul ecx, edx, 0
movzx edx, word [ebp + ecx - 0x2c]
add eax, edx
cdq
mov dword [ebp - 0x5ac], eax
mov dword [ebp - 0x5a8], edx
mov eax, 2
imul ecx, eax, 0
movzx edx, word [ebp + ecx - 0x14]
add edx, dword [ebp - 0x584]
mov eax, 2
imul ecx, eax, 0
mov word [ebp + ecx - 0x14], dx
mov edx, 1
imul eax, edx, 0
movzx eax, byte [ebp + eax - 0x4d4]
cdq
mov ecx, eax
add ecx, dword [ebp - 0x5c0]
mov edx, 1
imul eax, edx, 0
movzx eax, byte [ebp + eax - 0x4cc]
cdq
add ecx, eax
mov dword [ebp - 0x598], ecx
mov dword [ebp - 0x5e8], 0
jmp 0x41418f
mov ecx, dword [ebp - 0x5e8]
add ecx, 1
mov dword [ebp - 0x5e8], ecx
cmp dword [ebp - 0x5e8], 0x1b
jge 0x417012
lea edx, [ebp - 0x220]
mov dword [ebp - 0x674], edx
mov eax, dword [ebp - 0x674]
push eax
call fcn.00437e50
add esp, 4
mov dword [ebp - 0x5c8], eax
jmp 0x4141d0
mov ecx, 2
imul edx, ecx, 0
movzx eax, word [ebp + edx - 0x44]
mov ecx, 2
imul edx, ecx, 0
movzx ecx, word [ebp + edx - 0xc]
add eax, ecx
mov dword [ebp - 0x57c], eax
mov edx, 1
imul eax, edx, 0
movzx ecx, byte [ebp + eax - 0x4e0]
imul ecx, dword [ebp - 0x580]
mov edx, 1
imul eax, edx, 0
mov byte [ebp + eax - 0x4d0], cl
mov ecx, dword [ebp - 0x57c]
add ecx, 1
mov dword [ebp - 0x57c], ecx
mov edx, 1
shl edx, 0
mov al, byte [ebp + edx - 0x4e4]
add al, 1
mov ecx, 1
shl ecx, 0
mov byte [ebp + ecx - 0x4e4], al
mov edx, 1
imul eax, edx, 0
movzx ecx, byte [ebp + eax - 0x4e0]
imul ecx, dword [ebp - 0x574]
mov edx, 1
imul eax, edx, 0
mov byte [ebp + eax - 0x4ec], cl
mov ecx, 1
shl ecx, 0
mov dl, byte [ebp + ecx - 0x4c8]
sub dl, 1
mov eax, 1
shl eax, 0
mov byte [ebp + eax - 0x4c8], dl
cmp dword [ebp - 0x5c8], 5
je 0x416f3c
cmp dword [ebp - 0x5c8], 6
je 0x416f3c
mov ecx, dword [ebp + 8]
mov edx, dword [ebp + 8]
mov eax, dword [ecx]
cmp eax, dword [edx + 4]
jge 0x4168e4
cmp dword [ebp - 0x5c8], 4
je 0x4142cf
cmp dword [ebp - 0x5c8], 1
jne 0x4158f1
lea ecx, [ebp - 0x4c4]
mov dword [ebp - 0x5d0], ecx
jmp 0x4142ea
mov dword [ebp - 0x580], 1
mov edx, 1
shl edx, 1
movzx eax, byte [ebp + edx - 0x4ec]
add eax, dword [ebp - 0x574]
mov ecx, 2
imul edx, ecx, 0
mov word [ebp + edx - 0xc], ax
mov eax, 1
shl eax, 0
movzx ecx, byte [ebp + eax - 0x4d0]
mov edx, dword [ebp - 0x574]
sub edx, ecx
mov eax, 2
imul ecx, eax, 0
movzx eax, word [ebp + ecx - 0x44]
sub edx, eax
mov ecx, 1
imul eax, ecx, 0
mov byte [ebp + eax - 0x4dc], dl
mov ecx, 2
imul edx, ecx, 0
mov ax, word [ebp + edx - 0x3c]
add ax, 1
mov ecx, 2
imul edx, ecx, 0
mov word [ebp + edx - 0x3c], ax
mov dword [ebp - 0x5fc], 0x104
jmp 0x414384
mov eax, 2
imul ecx, eax, 0
mov dx, word [ebp + ecx - 0x44]
add dx, 1
mov eax, 2
imul ecx, eax, 0
mov word [ebp + ecx - 0x44], dx
mov edx, 1
shl edx, 0
movzx eax, byte [ebp + edx - 0x4c8]
add eax, dword [ebp - 0x574]
mov ecx, 1
imul edx, ecx, 0
movzx ecx, byte [ebp + edx - 0x4d0]
add eax, ecx
xor edx, edx
mov dword [ebp - 0x58c], eax
mov dword [ebp - 0x588], edx
mov dword [ebp - 0x6ac], 0
mov eax, 2
imul ecx, eax, 0
movzx eax, word [ebp + ecx - 0xc]
cdq
mov ecx, eax
mov esi, edx
add ecx, dword [ebp - 0x58c]
adc esi, dword [ebp - 0x588]
mov edx, 2
imul eax, edx, 0
movzx eax, word [ebp + eax - 0xc]
cdq
add ecx, eax
adc esi, edx
mov dword [ebp - 0x5a4], ecx
mov dword [ebp - 0x5a0], esi
lea ecx, [ebp - 0x220]
mov dword [ebp - 0x678], ecx
mov dword [ebp - 0x5b0], 0
mov dword [ebp - 0x5b0], 2
mov edx, dword [ebp - 0x5b0]
add edx, dword [ebp - 0x578]
mov dword [ebp - 0x5b0], edx
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ebp + ecx - 0x4cc]
add edx, dword [ebp - 0x5b0]
mov dword [ebp - 0x5b0], edx
mov eax, dword [ebp - 0x5b0]
add eax, dword [ebp - 0x584]
mov dword [ebp - 0x5b0], eax
mov ecx, dword [ebp - 0x5b0]
add ecx, dword [ebp - 0x5b8]
mov dword [ebp - 0x5b0], ecx
mov edx, dword [ebp - 0x5b0]
sub edx, 1
mov dword [ebp - 0x5b0], edx
mov eax, dword [ebp - 0x5b0]
sub eax, 0x1395
mov dword [ebp - 0x5b0], eax
mov dword [ebp - 0x4e8], 0
mov ecx, dword [ebp - 0x5fc]
mov dword [ebp - 0x4e8], ecx
mov edx, 2
imul eax, edx, 0
movzx ecx, word [ebp + eax - 0x14]
add ecx, dword [ebp - 0x4e8]
mov dword [ebp - 0x4e8], ecx
mov edx, dword [ebp - 0x4e8]
sub edx, dword [ebp - 0x578]
mov dword [ebp - 0x4e8], edx
mov eax, dword [ebp - 0x4e8]
sub eax, dword [ebp - 0x584]
mov dword [ebp - 0x4e8], eax
mov ecx, dword [ebp - 0x4e8]
sub ecx, 1
mov dword [ebp - 0x4e8], ecx
mov edx, 2
imul eax, edx, 0
movzx ecx, word [ebp + eax - 0x2c]
add ecx, dword [ebp - 0x4e8]
mov dword [ebp - 0x4e8], ecx
mov edx, dword [ebp - 0x4e8]
sub edx, dword [ebp - 0x598]
mov dword [ebp - 0x4e8], edx
mov eax, dword [ebp - 0x4e8]
sub eax, 0x1c6e
mov dword [ebp - 0x4e8], eax
lea ecx, [ebp - 0x4e8]
push ecx
mov edx, dword [ebp - 0x5d0]
push edx
mov eax, dword [ebp - 0x5b0]
push eax
mov ecx, dword [ebp - 0x678]
push ecx
call fcn.0043dc50
add esp, 0x10
mov dword [ebp - 0x600], eax
mov edx, dword [ebp - 0x4e8]
mov dword [ebp - 0x5fc], edx
jmp 0x414592
mov eax, 2
imul ecx, eax, 0
mov dx, word [ebp + ecx - 0x3c]
add dx, 1
mov eax, 2
imul ecx, eax, 0
mov word [ebp + ecx - 0x3c], dx
mov edx, 2
imul eax, edx, 0
movzx eax, word [ebp + eax - 0x24]
cdq
add eax, dword [ebp - 0x5a4]
adc edx, dword [ebp - 0x5a0]
mov dword [ebp - 0x5a4], eax
mov dword [ebp - 0x5a0], edx
cmp dword [ebp - 0x600], 0
je 0x414ff7
cmp dword [ebp - 0x600], 0x4b1
je 0x414ff7
mov ecx, 2
imul edx, ecx, 0
mov ax, word [ebp + edx - 0x220]
add ax, 1
mov ecx, 2
imul edx, ecx, 0
mov word [ebp + edx - 0x220], ax
jmp 0x414627
cmp dword [ebp - 0x580], 0
je 0x41476a
cmp dword [ebp - 0x57c], 0
je 0x41476a
mov eax, 2
imul ecx, eax, 0
movzx edx, word [ebp + ecx - 0xc]
mov eax, 1
shl eax, 0
movzx ecx, byte [ebp + eax - 0x4c8]
add edx, ecx
mov eax, 1
imul ecx, eax, 0
mov byte [ebp + ecx - 0x4c8], dl
mov edx, 1
shl edx, 0
movzx eax, byte [ebp + edx - 0x4d0]
mov ecx, 1
shl ecx, 0
movzx edx, byte [ebp + ecx - 0x4e0]
add eax, edx
cdq
mov dword [ebp - 0x594], eax
mov dword [ebp - 0x590], edx
mov eax, dword [ebp - 0x580]
add eax, dword [ebp - 0x57c]
xor ecx, ecx
mov dword [ebp - 0x5a4], eax
mov dword [ebp - 0x5a0], ecx
mov edx, 2
imul eax, edx, 0
mov cx, word [ebp + eax - 0xc]
add cx, 1
mov edx, 2
imul eax, edx, 0
mov word [ebp + eax - 0xc], cx
mov ecx, 2
imul edx, ecx, 0
mov ax, word [ebp + edx - 0x24]
sub ax, 1
mov ecx, 2
imul edx, ecx, 0
mov word [ebp + edx - 0x24], ax
mov eax, 1
shl eax, 0
movzx ecx, byte [ebp + eax - 0x4ec]
mov edx, 1
shl edx, 0
movzx eax, byte [ebp + edx - 0x4c8]
add ecx, eax
mov edx, 1
shl edx, 0
movzx eax, byte [ebp + edx - 0x4d0]
add ecx, eax
mov edx, 2
imul eax, edx, 0
mov word [ebp + eax - 0x24], cx
mov ecx, 2
imul edx, ecx, 0
movzx eax, word [ebp + edx - 0xc]
cdq
mov ecx, dword [ebp - 0x5a0]
push ecx
mov ecx, dword [ebp - 0x5a4]
push ecx
push edx
push eax
call fcn.00461c30
mov edx, 2
imul ecx, edx, 0
mov word [ebp + ecx - 0xc], ax
jmp 0x414f04
mov dword [ebp - 0x8b4], 0
mov dword [ebp - 0x8ac], 0xee0
mov dword [ebp - 0x8a8], 0x54d
xor edx, edx
mov dword [ebp - 0x9e4], 0x6e0
mov dword [ebp - 0x9e0], edx
mov dword [ebp - 0x8a4], 0
mov dword [ebp - 0x8a0], 0x1245
mov dword [ebp - 0x89c], 0x30c2
xor eax, eax
mov dword [ebp - 0x9ec], 0x324c
mov dword [ebp - 0x9e8], eax
mov dword [ebp - 0x898], 0x205
mov ecx, 1
shl ecx, 1
mov dl, byte [ebp + ecx - 0x4e4]
sub dl, 1
mov eax, 1
shl eax, 1
mov byte [ebp + eax - 0x4e4], dl
mov ecx, dword [0x4688c4]
mov dword [ebp - 0x6ec], ecx
mov dx, word [0x4688c8]
mov word [ebp - 0x6e8], dx
mov eax, dword [0x4688cc]
mov dword [ebp - 0x15c], eax
mov cx, word [0x4688d0]
mov word [ebp - 0x158], cx
mov edx, 0x6ade
mov word [ebp - 0xb4], dx
mov eax, 0x4aab
mov word [ebp - 0xb2], ax
mov ecx, 0x27c5
mov word [ebp - 0xb0], cx
xor edx, edx
mov word [ebp - 0xae], dx
mov eax, 0x4036
mov word [ebp - 0x164], ax
mov ecx, 0x3440
mov word [ebp - 0x162], cx
xor edx, edx
mov word [ebp - 0x160], dx
mov eax, 0x3a9d
mov word [ebp - 0x7c], ax
mov ecx, 0xb8d
mov word [ebp - 0x7a], cx
xor edx, edx
mov word [ebp - 0x78], dx
mov eax, 2
imul ecx, eax, 0
movzx edx, word [ebp + ecx - 0x7c]
sub edx, dword [ebp - 0x5c4]
sub edx, dword [ebp - 0x5c4]
mov eax, 1
shl eax, 1
mov byte [ebp + eax - 0x4dc], dl
mov ecx, 2
imul edx, ecx, 0
movzx eax, word [ebp + edx - 0x15c]
cdq
idiv dword [ebp - 0x5c4]
mov ecx, 2
imul edx, ecx, 0
mov word [ebp + edx - 0xb4], ax
mov eax, 1
shl eax, 0
mov cl, byte [ebp + eax - 0x4c8]
add cl, 1
mov edx, 1
shl edx, 0
mov byte [ebp + edx - 0x4c8], cl
mov dword [ebp - 0x580], 1
mov eax, 1
shl eax, 0
movzx ecx, byte [ebp + eax - 0x4e0]
mov edx, 1
imul eax, edx, 0
movzx edx, byte [ebp + eax - 0x4d0]
sub ecx, edx
mov eax, 1
imul edx, eax, 0
mov byte [ebp + edx - 0x4d0], cl
mov eax, dword [ebp - 0x57c]
sub eax, 1
mov dword [ebp - 0x57c], eax
mov dword [ebp - 0x67c], 0x4cd
mov dword [ebp - 0x894], 0x1956
mov dword [ebp - 0x808], 0xca9
mov dword [ebp - 0x680], 0x20c1
mov ecx, 1
shl ecx, 0
movzx edx, byte [ebp + ecx - 0x4c8]
sub edx, dword [ebp - 0x5c4]
add edx, dword [ebp - 0x580]
mov dword [ebp - 0x67c], edx
mov eax, 1
shl eax, 0
movzx ecx, byte [ebp + eax - 0x4d0]
add ecx, dword [ebp - 0x580]
mov dword [ebp - 0x680], ecx
mov edx, dword [0x4688d4]
mov eax, dword [0x4688d8]
mov dword [ebp - 0x9f4], edx
mov dword [ebp - 0x9f0], eax
mov ecx, dword [0x4688dc]
mov dword [ebp - 0x6f4], ecx
mov dx, word [0x4688e0]
mov word [ebp - 0x6f0], dx
mov eax, dword [0x4688e4]
mov ecx, dword [0x4688e8]
mov dword [ebp - 0x9fc], eax
mov dword [ebp - 0x9f8], ecx
mov edx, dword [0x4688ec]
mov eax, dword [0x4688f0]
mov dword [ebp - 0xa04], edx
mov dword [ebp - 0xa00], eax
mov ecx, dword [0x4688f4]
mov edx, dword [0x4688f8]
mov dword [ebp - 0xa0c], ecx
mov dword [ebp - 0xa08], edx
mov dword [ebp - 0x5c4], 1
mov dword [ebp - 0x804], 0
mov dword [ebp - 0x800], 0
mov dword [ebp - 0x7fc], 0
mov dword [ebp - 0x7f8], 0
mov dword [ebp - 0x7f4], 1
mov dword [ebp - 0x7f0], 1
mov dword [ebp - 0x7ec], 1
mov eax, 1
shl eax, 0
mov cl, byte [ebp + eax - 0x4e0]
add cl, 1
mov edx, 1
shl edx, 0
mov byte [ebp + edx - 0x4e0], cl
mov eax, 2
imul ecx, eax, 0
mov dx, word [ebp + ecx - 0x1c]
sub dx, 1
mov eax, 2
imul ecx, eax, 0
mov word [ebp + ecx - 0x1c], dx
mov dword [ebp - 0x604], 1
mov dword [ebp - 0x7e8], 0
mov dword [ebp - 0x684], 1
mov dword [ebp - 0x7e4], 0
mov dword [ebp - 0x7dc], 0
mov edx, 2
imul eax, edx, 0
movzx eax, word [ebp + eax - 0x3c]
add eax, dword [ebp - 0x684]
mov ecx, 1
shl ecx, 0
movzx edx, byte [ebp + ecx - 0x4c8]
add eax, edx
cdq
mov dword [ebp - 0x58c], eax
mov dword [ebp - 0x588], edx
mov eax, dword [ebp - 0x604]
add eax, dword [ebp - 0x604]
add eax, dword [ebp - 0x604]
mov ecx, 2
imul edx, ecx, 0
mov word [ebp + edx - 0x44], ax
mov eax, 1
shl eax, 1
movzx ecx, byte [ebp + eax - 0x4e0]
mov edx, 1
shl edx, 0
movzx eax, byte [ebp + edx - 0x4dc]
sub ecx, eax
mov edx, 1
shl edx, 1
movzx eax, byte [ebp + edx - 0x4dc]
sub ecx, eax
mov edx, 1
shl edx, 1
mov byte [ebp + edx - 0x4e0], cl
mov eax, 0x3177
mov word [ebp - 0x204], ax
mov ecx, 0x6d3b
mov word [ebp - 0x202], cx
xor edx, edx
mov word [ebp - 0x200], dx
mov eax, 0x7ff9
mov word [ebp - 0x1dc], ax
mov ecx, 0x3604
mov word [ebp - 0x1da], cx
mov edx, 0x7e0c
mov word [ebp - 0x1d8], dx
xor eax, eax
mov word [ebp - 0x1d6], ax
mov ecx, dword [0x4688fc]
mov edx, dword [0x468900]
mov dword [ebp - 0xa14], ecx
mov dword [ebp - 0xa10], edx
mov eax, dword [0x468904]
mov dword [ebp - 0x14c], eax
mov cx, word [0x468908]
mov word [ebp - 0x148], cx
mov edx, dword [0x46890c]
mov eax, dword [0x468910]
mov dword [ebp - 0xa1c], edx
mov dword [ebp - 0xa18], eax
mov ecx, dword [0x468914]
mov dword [ebp - 0x6fc], ecx
mov dx, word [0x468918]
mov word [ebp - 0x6f8], dx
mov eax, dword [0x46891c]
mov ecx, dword [0x468920]
mov dword [ebp - 0xa24], eax
mov dword [ebp - 0xa20], ecx
mov edx, dword [0x468924]
mov dword [ebp - 0x154], edx
mov ax, word [0x468928]
mov word [ebp - 0x150], ax
mov ecx, 2
imul edx, ecx, 0
movzx eax, word [ebp + edx - 0x154]
mov ecx, 2
imul edx, ecx, 0
movzx ecx, word [ebp + edx - 0x14c]
sub eax, ecx
mov edx, 1
imul ecx, edx, 0
movzx edx, byte [ebp + ecx - 0x4e0]
add eax, edx
cdq
mov dword [ebp - 0x58c], eax
mov dword [ebp - 0x588], edx
mov eax, 0x45d3
mov word [ebp - 0x144], ax
mov ecx, 0x3fc5
mov word [ebp - 0x142], cx
xor edx, edx
mov word [ebp - 0x140], dx
mov eax, dword [0x46892c]
mov ecx, dword [0x468930]
mov dword [ebp - 0x250], eax
mov dword [ebp - 0x24c], ecx
mov edx, dword [0x468934]
mov eax, dword [0x468938]
mov dword [ebp - 0x258], edx
mov dword [ebp - 0x254], eax
mov ecx, dword [0x46893c]
mov edx, dword [0x468940]
mov dword [ebp - 0x2a8], ecx
mov dword [ebp - 0x2a4], edx
mov eax, dword [0x468944]
mov ecx, dword [0x468948]
mov dword [ebp - 0x268], eax
mov dword [ebp - 0x264], ecx
mov edx, dword [0x46894c]
mov eax, dword [0x468950]
mov dword [ebp - 0x260], edx
mov dword [ebp - 0x25c], eax
mov ecx, dword [0x468954]
mov dword [ebp - 0x13c], ecx
mov dx, word [0x468958]
mov word [ebp - 0x138], dx
mov eax, dword [0x46895c]
mov ecx, dword [0x468960]
mov dword [ebp - 0x2a0], eax
mov dword [ebp - 0x29c], ecx
mov edx, 2
imul eax, edx, 0
movzx ecx, word [ebp + eax - 0x2a0]
mov edx, 2
imul eax, edx, 0
movzx edx, word [ebp + eax - 0x13c]
add ecx, dword [ebp - 0x580]
add edx, ecx
mov eax, 2
imul ecx, eax, 0
mov word [ebp + ecx - 0x268], dx
mov edx, 1
shl edx, 0
movzx eax, byte [ebp + edx - 0x4ec]
add eax, dword [ebp - 0x57c]
mov ecx, 1
shl ecx, 0
movzx edx, byte [ebp + ecx - 0x4c8]
sub eax, edx
xor ecx, ecx
mov dword [ebp - 0x594], eax
mov dword [ebp - 0x590], ecx
mov dword [ebp - 0x580], 1
mov edx, 2
imul eax, edx, 0
movzx ecx, word [ebp + eax - 0x2a8]
mov edx, 2
imul eax, edx, 0
mov word [ebp + eax - 0x260], cx
mov ecx, 2
imul edx, ecx, 0
movzx eax, word [ebp + edx - 0x258]
mov ecx, 2
imul edx, ecx, 0
movzx ecx, word [ebp + edx - 0x250]
imul eax, ecx
mov edx, 1
imul ecx, edx, 0
mov byte [ebp + ecx - 0x4c8], al
mov edx, dword [ebp - 0x574]
sub edx, 1
mov dword [ebp - 0x574], edx
mov eax, 1
shl eax, 1
movzx eax, byte [ebp + eax - 0x4ec]
cdq
mov ecx, eax
add ecx, dword [ebp - 0x5a4]
mov eax, dword [ebp - 0x5c4]
cdq
add ecx, eax
mov dword [ebp - 0x574], ecx
mov edx, dword [ebp - 0x58c]
add edx, 1
mov eax, dword [ebp - 0x588]
adc eax, 0
mov dword [ebp - 0x58c], edx
mov dword [ebp - 0x588], eax
mov ecx, 1
shl ecx, 0
mov dl, byte [ebp + ecx - 0x4c8]
add dl, 1
mov eax, 1
shl eax, 0
mov byte [ebp + eax - 0x4c8], dl
mov ecx, 1
shl ecx, 0
movzx eax, byte [ebp + ecx - 0x4ec]
add eax, dword [ebp - 0x5c4]
cdq
mov dword [ebp - 0x594], eax
mov dword [ebp - 0x590], edx
mov edx, 1
imul eax, edx, 0
movzx eax, byte [ebp + eax - 0x4e0]
mov ecx, 1
shl ecx, 1
movzx edx, byte [ebp + ecx - 0x4e4]
add eax, edx
cdq
mov dword [ebp - 0x594], eax
mov dword [ebp - 0x590], edx
mov eax, dword [ebp - 0x5c4]
add eax, dword [ebp - 0x5c4]
cdq
mov dword [ebp - 0x58c], eax
mov dword [ebp - 0x588], edx
jmp 0x414180
jmp 0x415005
mov edx, 1
shl edx, 1
movzx eax, byte [ebp + edx - 0x4e4]
test eax, eax
je 0x415724
mov ecx, dword [ebp - 0x58c]
or ecx, dword [ebp - 0x588]
je 0x415724
mov dword [ebp - 0x688], 0
mov dword [ebp - 0x7d8], 0x7c
xorps xmm0, xmm0
movlpd qword [ebp - 0xaf8], xmm0
mov dword [ebp - 0x7d4], 0x803
mov dword [ebp - 0x7d0], 0x3fa
mov edx, dword [ebp - 0x580]
imul edx, dword [ebp - 0x580]
mov dword [ebp - 0x688], edx
mov eax, 1
shl eax, 0
mov cl, byte [ebp + eax - 0x4e0]
sub cl, 1
mov edx, 1
shl edx, 0
mov byte [ebp + edx - 0x4e0], cl
mov dword [ebp - 0x7cc], 0x863
mov dword [ebp - 0x7c8], 0x396
xor eax, eax
mov dword [ebp - 0xa2c], 0x35
mov dword [ebp - 0xa28], eax
mov dword [ebp - 0x7c4], 0x158
mov dword [ebp - 0x7c0], 0xe6a
xor ecx, ecx
mov dword [ebp - 0xa34], 0x1f51
mov dword [ebp - 0xa30], ecx
mov dword [ebp - 0x7bc], 0x6f1
mov dword [ebp - 0x7b8], 0x7b4
mov edx, 1
shl edx, 0
mov al, byte [ebp + edx - 0x4d0]
sub al, 1
mov ecx, 1
shl ecx, 0
mov byte [ebp + ecx - 0x4d0], al
mov dword [ebp - 0x580], 1
mov dword [ebp - 0x580], 1
mov byte [ebp - 0x500], 0x7b
mov byte [ebp - 0x4ff], 0xc3
mov byte [ebp - 0x4fe], 0x40
xor edx, edx
mov byte [ebp - 0x4fd], dl
mov byte [ebp - 0x52c], 0xd
mov byte [ebp - 0x52b], 0xf9
xor eax, eax
mov byte [ebp - 0x52a], al
mov byte [ebp - 0x4fc], 0x6d
mov byte [ebp - 0x4fb], 0xc6
mov byte [ebp - 0x4fa], 0x51
xor ecx, ecx
mov byte [ebp - 0x4f9], cl
mov byte [ebp - 0x50c], 0xd6
mov byte [ebp - 0x50b], 0x25
xor edx, edx
mov byte [ebp - 0x50a], dl
mov eax, 1
shl eax, 1
mov cl, byte [ebp + eax - 0x500]
add cl, 1
mov edx, 1
shl edx, 1
mov byte [ebp + edx - 0x500], cl
mov eax, dword [ebp - 0x580]
add eax, dword [ebp - 0x580]
mov ecx, 1
shl ecx, 0
mov byte [ebp + ecx - 0x50c], al
mov eax, dword [ebp - 0x580]
add eax, dword [ebp - 0x580]
cdq
mov dword [ebp - 0x594], eax
mov dword [ebp - 0x590], edx
mov edx, 1
imul eax, edx, 0
movzx ecx, byte [ebp + eax - 0x4fc]
add ecx, dword [ebp - 0x57c]
mov edx, 1
shl edx, 1
movzx eax, byte [ebp + edx - 0x4fc]
sub ecx, eax
mov dword [ebp - 0x57c], ecx
mov ecx, 2
imul edx, ecx, 0
movzx eax, word [ebp + edx - 0x1c]
imul eax, dword [ebp - 0x580]
mov ecx, 2
imul edx, ecx, 0
mov word [ebp + edx - 0x24], ax
mov eax, 2
imul ecx, eax, 0
movzx edx, word [ebp + ecx - 0x3c]
sub edx, dword [ebp - 0x580]
mov dword [ebp - 0x574], edx
mov dword [ebp - 0x68c], 1
mov dword [ebp - 0x7b4], 1
mov dword [ebp - 0x7b0], 1
mov dword [ebp - 0x7ac], 1
mov eax, 1
shl eax, 1
mov cl, byte [ebp + eax - 0x4dc]
add cl, 1
mov edx, 1
shl edx, 1
mov byte [ebp + edx - 0x4dc], cl
mov eax, dword [ebp - 0x68c]
imul eax, dword [ebp - 0x57c]
mov ecx, 2
imul edx, ecx, 0
mov word [ebp + edx - 0xc], ax
mov eax, dword [ebp - 0x594]
add eax, 1
mov ecx, dword [ebp - 0x590]
adc ecx, 0
mov dword [ebp - 0x594], eax
mov dword [ebp - 0x590], ecx
mov edx, 2
imul eax, edx, 0
movzx ecx, word [ebp + eax - 0x44]
add ecx, dword [ebp - 0x574]
add ecx, dword [ebp - 0x5a4]
mov dword [ebp - 0x574], ecx
mov byte [ebp - 0x530], 0x2f
mov byte [ebp - 0x52f], 0x9a
xor edx, edx
mov byte [ebp - 0x52e], dl
mov ax, word [0x468964]
mov word [ebp - 0x654], ax
mov cl, byte [0x468966]
mov byte [ebp - 0x652], cl
mov edx, dword [0x468968]
mov dword [ebp - 0x7a8], edx
mov byte [ebp - 0x548], 0x7e
mov byte [ebp - 0x547], 0xdf
mov byte [ebp - 0x546], 0x3d
xor eax, eax
mov byte [ebp - 0x545], al
mov cx, word [0x46896c]
mov word [ebp - 0x650], cx
mov dl, byte [0x46896e]
mov byte [ebp - 0x64e], dl
mov eax, dword [0x468970]
mov dword [ebp - 0x7a4], eax
mov byte [ebp - 0x534], 0x80
mov byte [ebp - 0x533], 3
xor ecx, ecx
mov byte [ebp - 0x532], cl
mov edx, dword [0x468974]
mov dword [ebp - 0x7a0], edx
mov eax, 2
imul ecx, eax, 0
mov dx, word [ebp + ecx - 0xc]
sub dx, 1
mov eax, 2
imul ecx, eax, 0
mov word [ebp + ecx - 0xc], dx
mov edx, dword [0x468978]
mov dword [ebp - 0x704], edx
mov ax, word [0x46897c]
mov word [ebp - 0x700], ax
mov ecx, 0x7c9a
mov word [ebp - 0x1d4], cx
mov edx, 0x7634
mov word [ebp - 0x1d2], dx
mov eax, 0x7e3
mov word [ebp - 0x1d0], ax
xor ecx, ecx
mov word [ebp - 0x1ce], cx
mov edx, 0x3d3b
mov word [ebp - 0x134], dx
mov eax, 0x570e
mov word [ebp - 0x132], ax
xor ecx, ecx
mov word [ebp - 0x130], cx
mov edx, dword [0x468980]
mov eax, dword [0x468984]
mov dword [ebp - 0xa3c], edx
mov dword [ebp - 0xa38], eax
mov ecx, dword [0x468988]
mov edx, dword [0x46898c]
mov dword [ebp - 0x248], ecx
mov dword [ebp - 0x244], edx
mov eax, 0x4499
mov word [ebp - 0x1cc], ax
mov ecx, 0x1b14
mov word [ebp - 0x1ca], cx
mov edx, 0x2a31
mov word [ebp - 0x1c8], dx
xor eax, eax
mov word [ebp - 0x1c6], ax
mov ecx, dword [0x468990]
mov dword [ebp - 0x70c], ecx
mov dx, word [0x468994]
mov word [ebp - 0x708], dx
mov eax, 2
imul ecx, eax, 0
movzx edx, word [ebp + ecx - 0x248]
add edx, dword [ebp - 0x580]
mov eax, 1
shl eax, 0
mov byte [ebp + eax - 0x4c8], dl
mov ecx, 0x5456
mov word [ebp - 0x12c], cx
mov edx, 0x4b37
mov word [ebp - 0x12a], dx
xor eax, eax
mov word [ebp - 0x128], ax
mov ecx, 0x7591
mov word [ebp - 0xbc], cx
mov edx, 0x4521
mov word [ebp - 0xba], dx
mov eax, 0x3ae6
mov word [ebp - 0xb8], ax
xor ecx, ecx
mov word [ebp - 0xb6], cx
mov edx, 0x818
mov word [ebp - 0x74], dx
mov eax, 0x27dd
mov word [ebp - 0x72], ax
xor ecx, ecx
mov word [ebp - 0x70], cx
mov edx, dword [0x468998]
mov eax, dword [0x46899c]
mov dword [ebp - 0xa44], edx
mov dword [ebp - 0xa40], eax
mov ecx, dword [0x4689a0]
mov dword [ebp - 0x78c], ecx
mov dx, word [0x4689a4]
mov word [ebp - 0x788], dx
mov eax, dword [0x4689a8]
mov dword [ebp - 0x71c], eax
mov cx, word [0x4689ac]
mov word [ebp - 0x718], cx
mov edx, 0x378c
mov word [ebp - 0x1c4], dx
mov eax, 0x45fa
mov word [ebp - 0x1c2], ax
mov ecx, 0x6f3f
mov word [ebp - 0x1c0], cx
xor edx, edx
mov word [ebp - 0x1be], dx
mov eax, 0x2750
mov word [ebp - 0x1bc], ax
mov ecx, 0x4c67
mov word [ebp - 0x1ba], cx
mov edx, 0x5cb3
mov word [ebp - 0x1b8], dx
xor eax, eax
mov word [ebp - 0x1b6], ax
mov ecx, dword [0x4689b0]
mov dword [ebp - 0x724], ecx
mov dx, word [0x4689b4]
mov word [ebp - 0x720], dx
mov eax, dword [0x4689b8]
mov ecx, dword [0x4689bc]
mov dword [ebp - 0xa4c], eax
mov dword [ebp - 0xa48], ecx
mov edx, dword [ebp - 0x58c]
add edx, 1
mov eax, dword [ebp - 0x588]
adc eax, 0
mov dword [ebp - 0x58c], edx
mov dword [ebp - 0x588], eax
mov ecx, 2
imul edx, ecx, 0
movzx eax, word [ebp + edx - 0xbc]
cdq
mov dword [ebp - 0x594], eax
mov dword [ebp - 0x590], edx
mov dword [ebp - 0x580], 1
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ebp + ecx - 0x4c8]
mov eax, 1
shl eax, 0
movzx ecx, byte [ebp + eax - 0x4dc]
sub edx, ecx
mov eax, 2
imul ecx, eax, 0
mov word [ebp + ecx - 0x74], dx
mov edx, 1
imul eax, edx, 0
mov cl, byte [ebp + eax - 0x4dc]
sub cl, 1
mov edx, 1
imul eax, edx, 0
mov byte [ebp + eax - 0x4dc], cl
mov eax, dword [ebp - 0x580]
cdq
mov ecx, dword [ebp - 0x590]
push ecx
mov ecx, dword [ebp - 0x594]
push ecx
push edx
push eax
call fcn.00461c30
mov dword [ebp - 0x594], eax
mov dword [ebp - 0x590], edx
mov edx, 1
shl edx, 0
movzx eax, byte [ebp + edx - 0x4dc]
add eax, dword [ebp - 0x580]
mov ecx, 2
imul edx, ecx, 0
movzx ecx, word [ebp + edx - 0x3c]
sub eax, ecx
mov edx, 1
imul ecx, edx, 0
mov byte [ebp + ecx - 0x4ec], al
mov edx, 2
imul eax, edx, 0
movzx eax, word [ebp + eax - 0x1c]
add eax, dword [ebp - 0x580]
cdq
sub eax, dword [ebp - 0x58c]
mov ecx, 2
imul edx, ecx, 0
mov word [ebp + edx - 0x3c], ax
mov dword [ebp - 0x580], 0
mov eax, 1
shl eax, 0
mov cl, byte [ebp + eax - 0x4d0]
add cl, 1
mov edx, 1
shl edx, 0
mov byte [ebp + edx - 0x4d0], cl
mov eax, dword [ebp - 0x5d0]
cmp dword [eax], 0
je 0x4157f5
mov ecx, dword [ebp - 0x5d0]
mov edx, dword [ecx]
push edx
mov eax, dword [ebp + 8]
imul ecx, dword [eax], 0x218
mov edx, dword [ebp + 8]
mov eax, dword [edx + 8]
add eax, ecx
push eax
call fcn.0042d880
add esp, 8
jmp 0x415764
mov ecx, 2
imul edx, ecx, 0
movzx eax, word [ebp + edx - 0xc]
mov ecx, 2
imul edx, ecx, 0
movzx ecx, word [ebp + edx - 0x1c]
add eax, ecx
cdq
sub eax, dword [ebp - 0x5a4]
mov dword [ebp - 0x574], eax
mov edx, 2
imul eax, edx, 0
movzx ecx, word [ebp + eax - 0x3c]
add ecx, dword [ebp - 0x57c]
mov edx, 2
imul eax, edx, 0
movzx edx, word [ebp + eax - 0x1c]
add ecx, edx
mov eax, 1
imul edx, eax, 0
mov byte [ebp + edx - 0x4d0], cl
mov eax, 2
imul ecx, eax, 0
movzx edx, word [ebp + ecx - 0xc]
add edx, dword [ebp - 0x57c]
mov eax, 1
imul ecx, eax, 0
movzx eax, byte [ebp + ecx - 0x4e4]
sub edx, eax
mov ecx, 2
imul eax, ecx, 0
mov word [ebp + eax - 0xc], dx
jmp 0x41588e
mov ecx, dword [ebp - 0x5d0]
mov edx, dword [ecx + 4]
push edx
mov eax, dword [ebp + 8]
imul ecx, dword [eax], 0x218
mov edx, dword [ebp + 8]
mov eax, dword [edx + 8]
add eax, ecx
push eax
call fcn.0042d880
add esp, 8
jmp 0x415823
mov ecx, 2
imul edx, ecx, 0
movzx eax, word [ebp + edx - 0xc]
mov ecx, 1
shl ecx, 0
movzx edx, byte [ebp + ecx - 0x4e0]
imul eax, edx
mov ecx, 1
shl ecx, 0
mov byte [ebp + ecx - 0x4e4], al
mov edx, dword [ebp - 0x58c]
sub edx, 1
mov eax, dword [ebp - 0x588]
sbb eax, 0
mov dword [ebp - 0x58c], edx
mov dword [ebp - 0x588], eax
mov ecx, 2
imul edx, ecx, 0
mov ax, word [ebp + edx - 0x24]
sub ax, 1
mov ecx, 2
imul edx, ecx, 0
mov word [ebp + edx - 0x24], ax
jmp 0x41589e
mov eax, 2
imul ecx, eax, 0
mov dx, word [ebp + ecx - 0x24]
add dx, 1
mov eax, 2
imul ecx, eax, 0
mov word [ebp + ecx - 0x24], dx
mov edx, 2
imul eax, edx, 0
movzx eax, word [ebp + eax - 0xc]
mov ecx, 2
imul edx, ecx, 0
movzx ecx, word [ebp + edx - 0x44]
add eax, ecx
cdq
sub eax, dword [ebp - 0x5a4]
mov edx, 2
imul ecx, edx, 0
mov word [ebp + ecx - 0x44], ax
jmp 0x4165e8
lea edx, [ebp - 0x2bc]
push edx
mov eax, dword [0x4707f4]
push eax
mov ecx, dword [0x4707f0]
push ecx
push 0xa
push 0x46e968
call fcn.00430e50
add esp, 0x14
jmp 0x415922
mov edx, 1
imul eax, edx, 0
movzx ecx, byte [ebp + eax - 0x4dc]
mov edx, 2
imul eax, edx, 0
movzx edx, word [ebp + eax - 0x1c]
imul ecx, edx
mov eax, 1
imul edx, eax, 0
mov byte [ebp + edx - 0x4d0], cl
mov eax, 2
imul ecx, eax, 0
mov dx, word [ebp + ecx - 0xc]
add dx, 1
mov eax, 2
imul ecx, eax, 0
mov word [ebp + ecx - 0xc], dx
mov edx, dword [ebp - 0x574]
sub edx, 1
mov dword [ebp - 0x574], edx
mov eax, 1
shl eax, 1
movzx ecx, byte [ebp + eax - 0x4ec]
mov edx, 2
imul eax, edx, 0
movzx edx, word [ebp + eax - 0xc]
add ecx, edx
sub ecx, dword [ebp - 0x57c]
mov eax, 1
shl eax, 0
mov byte [ebp + eax - 0x4c8], cl
mov ecx, 2
imul edx, ecx, 0
mov ax, word [ebp + edx - 0x3c]
add ax, 1
mov ecx, 2
imul edx, ecx, 0
mov word [ebp + edx - 0x3c], ax
mov eax, 1
shl eax, 1
movzx ecx, byte [ebp + eax - 0x4e4]
mov edx, 2
imul eax, edx, 0
movzx edx, word [ebp + eax - 0xc]
add ecx, edx
mov eax, 1
imul edx, eax, 0
movzx eax, byte [ebp + edx - 0x4e4]
add ecx, eax
mov dword [ebp - 0x57c], ecx
lea ecx, [ebp - 0x2bc]
push ecx
mov edx, dword [ebp + 8]
imul eax, dword [edx], 0x218
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 8]
add edx, eax
push edx
call fcn.0042d880
add esp, 8
jmp 0x415a35
mov eax, 2
imul ecx, eax, 0
movzx eax, word [ebp + ecx - 0x24]
mov edx, 1
imul ecx, edx, 0
movzx edx, byte [ebp + ecx - 0x4c8]
add eax, edx
cdq
add eax, dword [ebp - 0x5a4]
adc edx, dword [ebp - 0x5a0]
mov dword [ebp - 0x5a4], eax
mov dword [ebp - 0x5a0], edx
xor eax, eax
mov dword [ebp - 0x2bc], eax
mov dword [ebp - 0x2b8], eax
mov dword [ebp - 0x2b4], eax
mov dword [ebp - 0x2b0], eax
mov dword [ebp - 0x2ac], eax
jmp 0x415a9d
mov ecx, 2
imul edx, ecx, 0
movzx eax, word [ebp + edx - 0x24]
test eax, eax
jne 0x415abb
mov ecx, 0x3c
test ecx, ecx
je 0x4164cb
mov dword [ebp - 0x79c], 0
mov dword [ebp - 0x690], 1
mov dword [ebp - 0x798], 1
mov dword [ebp - 0x794], 1
mov dword [ebp - 0x790], 1
mov dword [ebp - 0x904], 1
mov dword [ebp - 0x8b0], 1
mov edx, dword [ebp - 0x574]
add edx, 1
mov dword [ebp - 0x574], edx
mov eax, 1
shl eax, 1
movzx ecx, byte [ebp + eax - 0x4dc]
imul ecx, dword [ebp - 0x690]
mov dword [ebp - 0x574], ecx
mov edx, dword [0x4689c0]
mov dword [ebp - 0x72c], edx
mov ax, word [0x4689c4]
mov word [ebp - 0x728], ax
mov ecx, dword [0x4689c8]
mov edx, dword [0x4689cc]
mov dword [ebp - 0xa54], ecx
mov dword [ebp - 0xa50], edx
mov eax, dword [0x4689d0]
mov dword [ebp - 0x734], eax
mov cx, word [0x4689d4]
mov word [ebp - 0x730], cx
mov edx, dword [0x4689d8]
mov eax, dword [0x4689dc]
mov dword [ebp - 0x1b4], edx
mov dword [ebp - 0x1b0], eax
mov ecx, dword [ebp - 0x5a4]
sub ecx, dword [ebp - 0x574]
mov edx, 1
imul eax, edx, 0
mov byte [ebp + eax - 0x4dc], cl
mov ecx, dword [ebp - 0x574]
add ecx, 1
mov dword [ebp - 0x574], ecx
mov edx, 1
shl edx, 0
movzx eax, byte [ebp + edx - 0x4dc]
cdq
mov ecx, dword [ebp - 0x5a4]
sub ecx, eax
mov edx, 1
shl edx, 0
movzx eax, byte [ebp + edx - 0x4ec]
cdq
add ecx, eax
mov eax, 2
imul edx, eax, 0
mov word [ebp + edx - 0x1b4], cx
mov eax, 1
imul ecx, eax, 0
mov dl, byte [ebp + ecx - 0x4d0]
add dl, 1
mov eax, 1
imul ecx, eax, 0
mov byte [ebp + ecx - 0x4d0], dl
mov edx, 1
imul eax, edx, 0
movzx ecx, byte [ebp + eax - 0x4ec]
imul ecx, dword [ebp - 0x57c]
mov edx, 2
imul eax, edx, 0
mov word [ebp + eax - 0x1b4], cx
mov dword [ebp - 0x890], 0x7f
mov dword [ebp - 0x624], 0x88
xor ecx, ecx
mov dword [ebp - 0x62c], 0xc68
mov dword [ebp - 0x628], ecx
mov dword [ebp - 0x870], 0x153
mov dword [ebp - 0x620], 0xab
xor edx, edx
mov dword [ebp - 0xa5c], 0x186
mov dword [ebp - 0xa58], edx
mov dword [ebp - 0x694], 0x108c
xor eax, eax
mov dword [ebp - 0xa64], 0x100
mov dword [ebp - 0xa60], eax
mov ecx, dword [ebp - 0x62c]
sub ecx, 1
mov edx, dword [ebp - 0x628]
sbb edx, 0
mov dword [ebp - 0x62c], ecx
mov dword [ebp - 0x628], edx
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ebp + ecx - 0x4dc]
mov eax, 1
shl eax, 1
movzx ecx, byte [ebp + eax - 0x4e0]
add edx, ecx
mov eax, 2
imul ecx, eax, 0
movzx eax, word [ebp + ecx - 0x24]
add edx, eax
mov ecx, 1
shl ecx, 0
mov byte [ebp + ecx - 0x4dc], dl
mov edx, 1
shl edx, 0
movzx eax, byte [ebp + edx - 0x4e4]
imul eax, dword [ebp - 0x620]
mov ecx, 2
imul edx, ecx, 0
mov word [ebp + edx - 0x3c], ax
mov eax, 1
shl eax, 0
movzx ecx, byte [ebp + eax - 0x4c8]
add ecx, dword [ebp - 0x624]
mov edx, 1
shl edx, 1
movzx eax, byte [ebp + edx - 0x4dc]
add ecx, eax
mov dword [ebp - 0x620], ecx
mov ecx, 1
shl ecx, 1
movzx edx, byte [ebp + ecx - 0x4dc]
mov eax, 1
imul ecx, eax, 0
movzx eax, byte [ebp + ecx - 0x4e4]
add edx, eax
mov dword [ebp - 0x624], edx
mov ecx, 2
imul edx, ecx, 0
movzx eax, word [ebp + edx - 0xc]
add eax, dword [ebp - 0x694]
mov ecx, 1
shl ecx, 0
mov byte [ebp + ecx - 0x4dc], al
mov edx, dword [0x4689e0]
mov dword [ebp - 0x6c], edx
mov ax, word [0x4689e4]
mov word [ebp - 0x68], ax
mov ecx, 0x5050
mov word [ebp - 0xe4], cx
mov edx, 0x650d
mov word [ebp - 0xe2], dx
xor eax, eax
mov word [ebp - 0xe0], ax
mov ecx, 0x10ca
mov word [ebp - 0x64], cx
mov edx, 0x1f9a
mov word [ebp - 0x62], dx
xor eax, eax
mov word [ebp - 0x60], ax
mov ecx, 0x3fa
mov word [ebp - 0x1ac], cx
mov edx, 0x1001
mov word [ebp - 0x1aa], dx
mov eax, 0x5819
mov word [ebp - 0x1a8], ax
xor ecx, ecx
mov word [ebp - 0x1a6], cx
mov edx, 2
imul eax, edx, 0
mov cx, word [ebp + eax - 0x6c]
sub cx, 1
mov edx, 2
imul eax, edx, 0
mov word [ebp + eax - 0x6c], cx
mov ecx, 1
shl ecx, 0
movzx edx, byte [ebp + ecx - 0x4e0]
mov eax, 1
shl eax, 0
movzx ecx, byte [ebp + eax - 0x4e0]
add edx, ecx
mov eax, 2
imul ecx, eax, 0
movzx eax, word [ebp + ecx - 0x64]
add edx, eax
mov dword [ebp - 0x57c], edx
xor ecx, ecx
mov dword [ebp - 0xa6c], 0x799
mov dword [ebp - 0xa68], ecx
mov dword [ebp - 0x82c], 0x558
mov dword [ebp - 0x830], 0x108
xor edx, edx
mov dword [ebp - 0xa74], 0xbff
mov dword [ebp - 0xa70], edx
mov dword [ebp - 0x834], 0x1e76
mov dword [ebp - 0x838], 0x694
mov dword [ebp - 0x83c], 0x8d
mov eax, 1
imul ecx, eax, 0
mov dl, byte [ebp + ecx - 0x4c8]
sub dl, 1
mov eax, 1
imul ecx, eax, 0
mov byte [ebp + ecx - 0x4c8], dl
mov dword [ebp - 0x840], 0
mov dword [ebp - 0x844], 1
mov dword [ebp - 0x848], 1
mov dword [ebp - 0x698], 1
mov dword [ebp - 0x84c], 1
mov dword [ebp - 0x850], 0
mov dword [ebp - 0x698], 0
mov edx, 2
imul eax, edx, 0
movzx ecx, word [ebp + eax - 0xc]
mov edx, 1
imul eax, edx, 0
movzx edx, byte [ebp + eax - 0x4d0]
add ecx, edx
mov eax, 2
imul edx, eax, 0
movzx eax, word [ebp + edx - 0x44]
sub ecx, eax
mov edx, 2
imul eax, edx, 0
mov word [ebp + eax - 0x24], cx
mov ecx, 2
imul edx, ecx, 0
movzx eax, word [ebp + edx - 0xc]
mov ecx, 2
imul edx, ecx, 0
movzx ecx, word [ebp + edx - 0x44]
cdq
idiv ecx
mov edx, 1
shl edx, 0
mov byte [ebp + edx - 0x4d0], al
mov eax, 1
imul ecx, eax, 0
mov dl, byte [ebp + ecx - 0x4e4]
sub dl, 1
mov eax, 1
imul ecx, eax, 0
mov byte [ebp + ecx - 0x4e4], dl
mov dword [ebp - 0x854], 0x6bd
xor edx, edx
mov dword [ebp - 0xa7c], 0xc1a
mov dword [ebp - 0xa78], edx
mov dword [ebp - 0x858], 0x33a
mov dword [ebp - 0x608], 0x461
xor eax, eax
mov dword [ebp - 0x6a8], 0xa24
mov dword [ebp - 0x6a4], eax
mov dword [ebp - 0x7e0], 0x16f8
mov ecx, 2
imul edx, ecx, 0
movzx eax, word [ebp + edx - 0x3c]
mov ecx, 2
imul edx, ecx, 0
movzx ecx, word [ebp + edx - 0xc]
add eax, ecx
mov edx, 2
imul ecx, edx, 0
mov word [ebp + ecx - 0xc], ax
mov edx, 2
imul eax, edx, 0
mov cx, word [ebp + eax - 0xc]
add cx, 1
mov edx, 2
imul eax, edx, 0
mov word [ebp + eax - 0xc], cx
mov ecx, 1
shl ecx, 1
movzx edx, byte [ebp + ecx - 0x4dc]
mov eax, 1
shl eax, 1
movzx ecx, byte [ebp + eax - 0x4dc]
add edx, ecx
mov eax, 1
shl eax, 1
movzx ecx, byte [ebp + eax - 0x4dc]
add edx, ecx
mov eax, 1
shl eax, 0
mov byte [ebp + eax - 0x4e4], dl
mov ecx, 1
imul edx, ecx, 0
mov al, byte [ebp + edx - 0x4e4]
add al, 1
mov ecx, 1
imul edx, ecx, 0
mov byte [ebp + edx - 0x4e4], al
mov eax, dword [ebp - 0x608]
xor ecx, ecx
push ecx
push eax
mov edx, dword [ebp - 0x6a4]
push edx
mov eax, dword [ebp - 0x6a8]
push eax
call fcn.00461c30
mov dword [ebp - 0x608], eax
mov ecx, 2
imul edx, ecx, 0
mov ax, word [ebp + edx - 0x1c]
sub ax, 1
mov ecx, 2
imul edx, ecx, 0
mov word [ebp + edx - 0x1c], ax
mov dword [ebp - 0x85c], 0
mov dword [ebp - 0x5cc], 1
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ebp + ecx - 0x4e0]
add edx, dword [ebp - 0x5cc]
mov eax, 1
imul ecx, eax, 0
movzx eax, byte [ebp + ecx - 0x4d0]
add edx, eax
mov ecx, 2
imul eax, ecx, 0
mov word [ebp + eax - 0x3c], dx
mov ecx, dword [ebp - 0x5cc]
imul ecx, dword [ebp - 0x5cc]
mov edx, 2
imul eax, edx, 0
mov word [ebp + eax - 0xc], cx
mov eax, dword [ebp - 0x5cc]
add eax, dword [ebp - 0x5cc]
mov ecx, 1
shl ecx, 0
movzx edx, byte [ebp + ecx - 0x4ec]
add eax, edx
cdq
mov dword [ebp - 0x58c], eax
mov dword [ebp - 0x588], edx
mov eax, dword [0x4689e8]
mov dword [ebp - 0x860], eax
mov ecx, dword [0x4689ec]
mov dword [ebp - 0x864], ecx
mov byte [ebp - 0x554], 0x89
mov byte [ebp - 0x553], 0x41
mov byte [ebp - 0x552], 0x39
xor edx, edx
mov byte [ebp - 0x551], dl
mov ax, word [0x4689f0]
mov word [ebp - 0x538], ax
mov cl, byte [0x4689f2]
mov byte [ebp - 0x536], cl
mov dx, word [0x4689f4]
mov word [ebp - 0x64c], dx
mov al, byte [0x4689f6]
mov byte [ebp - 0x64a], al
mov cx, word [0x4689f8]
mov word [ebp - 0x648], cx
mov dl, byte [0x4689fa]
mov byte [ebp - 0x646], dl
mov eax, 2
imul ecx, eax, 0
movzx edx, word [ebp + ecx - 0x3c]
mov eax, 1
imul ecx, eax, 0
movzx eax, byte [ebp + ecx - 0x538]
add edx, eax
mov ecx, 2
imul eax, ecx, 0
mov word [ebp + eax - 0x1c], dx
mov ecx, 0x4bd
mov word [ebp - 0x4c], cx
mov edx, 0x4525
mov word [ebp - 0x4a], dx
mov eax, 0xb98
mov word [ebp - 0x48], ax
xor ecx, ecx
mov word [ebp - 0x46], cx
mov edx, 0x57b5
mov word [ebp - 0x1a4], dx
mov eax, 0x7233
mov word [ebp - 0x1a2], ax
mov ecx, 0x11e4
mov word [ebp - 0x1a0], cx
xor edx, edx
mov word [ebp - 0x19e], dx
mov eax, 0x6624
mov word [ebp - 0x94], ax
mov ecx, 0x765b
mov word [ebp - 0x92], cx
mov edx, 0x2f75
mov word [ebp - 0x90], dx
xor eax, eax
mov word [ebp - 0x8e], ax
mov ecx, dword [0x4689fc]
mov edx, dword [0x468a00]
mov dword [ebp - 0xa84], ecx
mov dword [ebp - 0xa80], edx
mov eax, dword [0x468a04]
mov dword [ebp - 0x73c], eax
mov cx, word [0x468a08]
mov word [ebp - 0x738], cx
mov edx, dword [0x468a0c]
mov dword [ebp - 0x18c], edx
mov ax, word [0x468a10]
mov word [ebp - 0x188], ax
mov ecx, dword [0x468a14]
mov edx, dword [0x468a18]
mov dword [ebp - 0x240], ecx
mov dword [ebp - 0x23c], edx
mov eax, 2
imul ecx, eax, 0
movzx edx, word [ebp + ecx - 0x4c]
add edx, dword [ebp - 0x574]
xor eax, eax
mov dword [ebp - 0x594], edx
mov dword [ebp - 0x590], eax
mov ecx, 2
imul edx, ecx, 0
movzx eax, word [ebp + edx - 0x4c]
cdq
push edx
push eax
mov eax, dword [ebp - 0x5a0]
push eax
mov ecx, dword [ebp - 0x5a4]
push ecx
call fcn.00462e40
mov dword [ebp - 0x574], eax
mov edx, 2
imul eax, edx, 0
movzx ecx, word [ebp + eax - 0x4c]
add ecx, dword [ebp - 0x574]
mov edx, 1
imul eax, edx, 0
movzx edx, byte [ebp + eax - 0x4ec]
sub ecx, edx
xor eax, eax
mov dword [ebp - 0x594], ecx
mov dword [ebp - 0x590], eax
mov ecx, 1
shl ecx, 0
movzx edx, byte [ebp + ecx - 0x4c8]
mov eax, 1
shl eax, 1
movzx ecx, byte [ebp + eax - 0x4e0]
add edx, dword [ebp - 0x574]
add ecx, edx
mov edx, 2
imul eax, edx, 0
mov word [ebp + eax - 0x240], cx
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [ebp + edx - 0x4e4]
cdq
mov ecx, eax
add ecx, dword [ebp - 0x594]
mov edx, 1
shl edx, 0
movzx eax, byte [ebp + edx - 0x4c8]
cdq
sub ecx, eax
mov eax, 2
imul edx, eax, 0
mov word [ebp + edx - 0x18c], cx
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ebp + ecx - 0x4e0]
mov eax, 2
imul ecx, eax, 0
movzx eax, word [ebp + ecx - 0x94]
imul edx, eax
mov dword [ebp - 0x574], edx
mov ecx, 2
imul edx, ecx, 0
movzx eax, word [ebp + edx - 0x1c]
mov ecx, 1
shl ecx, 1
movzx edx, byte [ebp + ecx - 0x4e0]
imul eax, edx
mov ecx, 2
imul edx, ecx, 0
mov word [ebp + edx - 0x3c], ax
mov eax, dword [ebp - 0x594]
sub eax, 1
mov ecx, dword [ebp - 0x590]
sbb ecx, 0
mov dword [ebp - 0x594], eax
mov dword [ebp - 0x590], ecx
mov edx, 1
shl edx, 1
mov al, byte [ebp + edx - 0x4e0]
sub al, 1
mov ecx, 1
shl ecx, 1
mov byte [ebp + ecx - 0x4e0], al
mov edx, 1
shl edx, 1
movzx eax, byte [ebp + edx - 0x4e0]
cdq
add eax, dword [ebp - 0x594]
mov ecx, 2
imul edx, ecx, 0
mov word [ebp + edx - 0x24], ax
mov eax, 1
shl eax, 0
movzx eax, byte [ebp + eax - 0x4d0]
mov ecx, 1
imul edx, ecx, 0
movzx ecx, byte [ebp + edx - 0x4e0]
add eax, ecx
cdq
add eax, dword [ebp - 0x5a4]
mov dword [ebp - 0x574], eax
lea edx, [ebp - 0x220]
push edx
mov eax, dword [ebp + 8]
imul ecx, dword [eax], 0x218
mov edx, dword [ebp + 8]
mov eax, dword [edx + 8]
add eax, ecx
push eax
call fcn.0042d8a0
add esp, 8
jmp 0x4164f6
mov ecx, dword [ebp - 0x57c]
xor edx, edx
sub ecx, dword [ebp - 0x5a4]
sbb edx, dword [ebp - 0x5a0]
mov dword [ebp - 0x594], ecx
mov dword [ebp - 0x590], edx
mov eax, 1
shl eax, 0
movzx ecx, byte [ebp + eax - 0x4e0]
add ecx, dword [ebp - 0x57c]
mov edx, 1
shl edx, 0
movzx eax, byte [ebp + edx - 0x4e4]
add ecx, eax
xor edx, edx
mov dword [ebp - 0x58c], ecx
mov dword [ebp - 0x588], edx
mov eax, 2
imul ecx, eax, 0
movzx edx, word [ebp + ecx - 0xc]
add edx, dword [ebp - 0x57c]
mov eax, 2
imul ecx, eax, 0
mov word [ebp + ecx - 0x24], dx
mov edx, 1
shl edx, 0
mov al, byte [ebp + edx - 0x4c8]
sub al, 1
mov ecx, 1
shl ecx, 0
mov byte [ebp + ecx - 0x4c8], al
mov edx, 1
shl edx, 1
movzx eax, byte [ebp + edx - 0x4dc]
cdq
add eax, dword [ebp - 0x5a4]
sub eax, dword [ebp - 0x594]
mov ecx, 1
shl ecx, 1
mov byte [ebp + ecx - 0x4dc], al
mov edx, 2
imul eax, edx, 0
movzx eax, word [ebp + eax - 0xc]
cdq
add eax, dword [ebp - 0x5a4]
adc edx, dword [ebp - 0x5a0]
add eax, dword [ebp - 0x594]
adc edx, dword [ebp - 0x590]
mov dword [ebp - 0x58c], eax
mov dword [ebp - 0x588], edx
jmp 0x4165f3
mov ecx, 2
imul edx, ecx, 0
movzx eax, word [ebp + edx - 0xc]
test eax, eax
je 0x4166ea
mov ecx, 0x26
test ecx, ecx
je 0x4166ea
mov edx, 2
imul eax, edx, 0
movzx ecx, word [ebp + eax - 0x3c]
mov edx, 1
imul eax, edx, 0
movzx edx, byte [ebp + eax - 0x4d0]
add ecx, edx
mov dword [ebp - 0x57c], ecx
mov eax, dword [ebp - 0x57c]
add eax, dword [ebp - 0x58c]
sub eax, dword [ebp - 0x57c]
mov ecx, 2
imul edx, ecx, 0
mov word [ebp + edx - 0x1c], ax
mov eax, 2
imul ecx, eax, 0
mov dx, word [ebp + ecx - 0x1c]
add dx, 1
mov eax, 2
imul ecx, eax, 0
mov word [ebp + ecx - 0x1c], dx
mov edx, 2
imul eax, edx, 0
movzx ecx, word [ebp + eax - 0x3c]
mov edx, 1
imul eax, edx, 0
movzx edx, byte [ebp + eax - 0x4c8]
sub ecx, edx
mov eax, 2
imul edx, eax, 0
mov word [ebp + edx - 0xc], cx
mov eax, dword [ebp - 0x57c]
add eax, 1
mov dword [ebp - 0x57c], eax
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [ebp + edx - 0x4dc]
cdq
mov ecx, dword [ebp - 0x594]
sub ecx, eax
mov edx, 2
imul eax, edx, 0
movzx eax, word [ebp + eax - 0xc]
cdq
add ecx, eax
mov edx, 1
imul eax, edx, 0
mov byte [ebp + eax - 0x4d0], cl
mov ecx, dword [ebp + 8]
imul edx, dword [ecx], 0x218
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 8]
mov eax, dword [ebp - 0x5c8]
mov dword [ecx + edx + 0x210], eax
jmp 0x416712
mov dword [ebp - 0x5d8], 0x4043
jmp 0x41672d
mov ecx, dword [ebp - 0x5d8]
add ecx, 1
mov dword [ebp - 0x5d8], ecx
cmp dword [ebp - 0x5d8], 0x4045
jae 0x41676c
mov edx, 1
imul eax, edx, 0
movzx ecx, byte [ebp + eax - 0x4c8]
sub ecx, 0x3f
mov edx, 1
imul eax, edx, 0
mov byte [ebp + eax - 0x4c8], cl
mov ecx, dword [ebp - 0x574]
add ecx, 1
mov dword [ebp - 0x574], ecx
jmp 0x41671e
mov edx, dword [ebp - 0x69c]
push edx
lea eax, [ebp - 0x220]
push eax
call fcn.004170f0
add esp, 8
mov ecx, dword [ebp + 8]
imul ecx, dword [ecx], 0x218
mov esi, dword [ebp + 8]
mov esi, dword [esi + 8]
mov dword [esi + ecx + 0x208], eax
mov dword [esi + ecx + 0x20c], edx
jmp 0x4167ac
mov dword [ebp - 0x5dc], 0x665a
jmp 0x4167c7
mov edx, dword [ebp - 0x5dc]
add edx, 1
mov dword [ebp - 0x5dc], edx
cmp dword [ebp - 0x5dc], 0x665f
jae 0x41685a
mov eax, 2
imul ecx, eax, 0
movzx edx, word [ebp + ecx - 0x24]
add edx, 0x998
mov eax, 2
imul ecx, eax, 0
mov word [ebp + ecx - 0x24], dx
mov edx, 1
shl edx, 0
movzx eax, byte [ebp + edx - 0x4dc]
add eax, 0x10
mov ecx, 1
shl ecx, 0
mov byte [ebp + ecx - 0x4dc], al
mov edx, dword [ebp - 0x574]
add edx, 1
mov dword [ebp - 0x574], edx
mov eax, 2
imul ecx, eax, 0
movzx edx, word [ebp + ecx - 0x44]
mov eax, 1
shl eax, 0
movzx ecx, byte [ebp + eax - 0x4d0]
imul edx, ecx
mov eax, 2
imul ecx, eax, 0
mov word [ebp + ecx - 0x44], dx
jmp 0x4167b8
mov edx, dword [ebp + 8]
mov eax, dword [edx]
add eax, 1
mov ecx, dword [ebp + 8]
mov dword [ecx], eax
jmp 0x416872
mov edx, dword [ebp - 0x574]
sub edx, 1
mov dword [ebp - 0x574], edx
mov eax, 2
imul ecx, eax, 0
movzx edx, word [ebp + ecx - 0xc]
mov eax, 2
imul ecx, eax, 0
movzx eax, word [ebp + ecx - 0x1c]
sub edx, eax
mov ecx, 1
imul eax, ecx, 0
mov byte [ebp + eax - 0x4ec], dl
mov ecx, 2
imul edx, ecx, 0
movzx eax, word [ebp + edx - 0x44]
cdq
mov ecx, eax
sub ecx, dword [ebp - 0x594]
mov edx, 1
shl edx, 0
movzx eax, byte [ebp + edx - 0x4dc]
cdq
add ecx, eax
mov eax, 1
imul edx, eax, 0
mov byte [ebp + edx - 0x4c8], cl
jmp 0x4168f3
mov eax, 2
imul ecx, eax, 0
movzx edx, word [ebp + ecx - 0x1c]
cmp edx, 0x3d
jge 0x416f3c
mov eax, dword [0x468a1c]
mov ecx, dword [0x468a20]
mov dword [ebp - 0xa8c], eax
mov dword [ebp - 0xa88], ecx
mov edx, 0x2784
mov word [ebp - 0x19c], dx
mov eax, 0x168a
mov word [ebp - 0x19a], ax
mov ecx, 0x404
mov word [ebp - 0x198], cx
xor edx, edx
mov word [ebp - 0x196], dx
mov eax, dword [0x468a24]
mov dword [ebp - 0x774], eax
mov cx, word [0x468a28]
mov word [ebp - 0x770], cx
mov edx, dword [0x468a2c]
mov eax, dword [0x468a30]
mov dword [ebp - 0x238], edx
mov dword [ebp - 0x234], eax
mov ecx, dword [0x468a34]
mov dword [ebp - 0x744], ecx
mov dx, word [0x468a38]
mov word [ebp - 0x740], dx
mov eax, dword [0x468a3c]
mov ecx, dword [0x468a40]
mov dword [ebp - 0xa94], eax
mov dword [ebp - 0xa90], ecx
mov edx, dword [0x468a44]
mov eax, dword [0x468a48]
mov dword [ebp - 0xa9c], edx
mov dword [ebp - 0xa98], eax
mov ecx, dword [0x468a4c]
mov edx, dword [0x468a50]
mov dword [ebp - 0xaa4], ecx
mov dword [ebp - 0xaa0], edx
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ebp + ecx - 0x4dc]
mov eax, 1
imul ecx, eax, 0
movzx eax, byte [ebp + ecx - 0x4c8]
add edx, eax
mov ecx, 2
imul eax, ecx, 0
mov word [ebp + eax - 0x238], dx
mov ecx, dword [ebp - 0x58c]
add ecx, 1
mov edx, dword [ebp - 0x588]
adc edx, 0
mov dword [ebp - 0x58c], ecx
mov dword [ebp - 0x588], edx
mov eax, dword [0x468a54]
mov dword [ebp - 0x868], eax
mov ecx, dword [0x468a58]
mov dword [ebp - 0x86c], ecx
mov dx, word [0x468a5c]
mov word [ebp - 0x53c], dx
mov al, byte [0x468a5e]
mov byte [ebp - 0x53a], al
mov byte [ebp - 0x54c], 0x37
mov byte [ebp - 0x54b], 0x3e
mov byte [ebp - 0x54a], 0x61
xor ecx, ecx
mov byte [ebp - 0x549], cl
mov byte [ebp - 0x550], 0xfe
mov byte [ebp - 0x54f], 0x39
mov byte [ebp - 0x54e], 0x35
xor edx, edx
mov byte [ebp - 0x54d], dl
mov eax, dword [ebp - 0x57c]
sub eax, 1
mov dword [ebp - 0x57c], eax
mov ecx, 2
imul edx, ecx, 0
mov ax, word [ebp + edx - 0x24]
add ax, 1
mov ecx, 2
imul edx, ecx, 0
mov word [ebp + edx - 0x24], ax
mov eax, 1
imul ecx, eax, 0
movzx eax, byte [ebp + ecx - 0x53c]
mov edx, 2
imul ecx, edx, 0
movzx edx, word [ebp + ecx - 0xc]
imul eax, edx
cdq
mov dword [ebp - 0x58c], eax
mov dword [ebp - 0x588], edx
mov eax, dword [0x468a60]
mov ecx, dword [0x468a64]
mov dword [ebp - 0xaac], eax
mov dword [ebp - 0xaa8], ecx
mov edx, dword [0x468a68]
mov dword [ebp - 0x74c], edx
mov ax, word [0x468a6c]
mov word [ebp - 0x748], ax
mov ecx, 0x3ec4
mov word [ebp - 0x194], cx
mov edx, 0x2aa1
mov word [ebp - 0x192], dx
mov eax, 0x58b1
mov word [ebp - 0x190], ax
xor ecx, ecx
mov word [ebp - 0x18e], cx
mov edx, dword [0x468a70]
mov eax, dword [0x468a74]
mov dword [ebp - 0xab4], edx
mov dword [ebp - 0xab0], eax
mov ecx, 0x78e4
mov word [ebp - 0x184], cx
mov edx, 0x3f4f
mov word [ebp - 0x182], dx
mov eax, 0x1bbe
mov word [ebp - 0x180], ax
xor ecx, ecx
mov word [ebp - 0x17e], cx
mov edx, dword [0x468a78]
mov eax, dword [0x468a7c]
mov dword [ebp - 0xabc], edx
mov dword [ebp - 0xab8], eax
mov ecx, 0x2717
mov word [ebp - 0xdc], cx
mov edx, 0x4fc9
mov word [ebp - 0xda], dx
xor eax, eax
mov word [ebp - 0xd8], ax
mov ecx, dword [0x468a80]
mov edx, dword [0x468a84]
mov dword [ebp - 0xac4], ecx
mov dword [ebp - 0xac0], edx
mov eax, 0x4772
mov word [ebp - 0xd4], ax
mov ecx, 0x778d
mov word [ebp - 0xd2], cx
xor edx, edx
mov word [ebp - 0xd0], dx
mov eax, 1
shl eax, 0
mov cl, byte [ebp + eax - 0x4dc]
add cl, 1
mov edx, 1
shl edx, 0
mov byte [ebp + edx - 0x4dc], cl
mov eax, 1
shl eax, 0
mov cl, byte [ebp + eax - 0x4c8]
sub cl, 1
mov edx, 1
shl edx, 0
mov byte [ebp + edx - 0x4c8], cl
mov dword [ebp - 0x5e0], 1
mov dword [ebp - 0x874], 0
mov dword [ebp - 0x878], 0
mov dword [ebp - 0x87c], 0
mov dword [ebp - 0x880], 0
mov eax, 2
imul ecx, eax, 0
movzx eax, word [ebp + ecx - 0x3c]
cdq
mov ecx, dword [ebp - 0x588]
push ecx
mov ecx, dword [ebp - 0x58c]
push ecx
push edx
push eax
call fcn.00462e40
mov edx, 1
imul ecx, edx, 0
mov byte [ebp + ecx - 0x4e4], al
mov edx, 1
imul eax, edx, 0
mov cl, byte [ebp + eax - 0x4d0]
sub cl, 1
mov edx, 1
imul eax, edx, 0
mov byte [ebp + eax - 0x4d0], cl
mov eax, dword [ebp - 0x5e0]
cdq
add eax, dword [ebp - 0x58c]
add eax, dword [ebp - 0x57c]
mov ecx, 1
shl ecx, 0
mov byte [ebp + ecx - 0x4d0], al
mov edx, 2
imul eax, edx, 0
movzx eax, word [ebp + eax - 0x1c]
add eax, dword [ebp - 0x5e0]
mov ecx, 2
imul edx, ecx, 0
movzx ecx, word [ebp + edx - 0x24]
add eax, ecx
cdq
mov dword [ebp - 0x594], eax
mov dword [ebp - 0x590], edx
mov edx, 2
imul eax, edx, 0
movzx eax, word [ebp + eax - 0x1c]
add eax, dword [ebp - 0x5e0]
cdq
add eax, dword [ebp - 0x5a4]
adc edx, dword [ebp - 0x5a0]
mov dword [ebp - 0x58c], eax
mov dword [ebp - 0x588], edx
xor ecx, ecx
mov dword [ebp - 0xacc], 0x2e61
mov dword [ebp - 0xac8], ecx
mov dword [ebp - 0x60c], 0x1766
mov dword [ebp - 0x6a0], 0x2c3c
mov dword [ebp - 0x884], 0x157
mov dword [ebp - 0x888], 0x1860
xor edx, edx
mov dword [ebp - 0xad4], 0x1c01
mov dword [ebp - 0xad0], edx
mov dword [ebp - 0x88c], 0x192
mov dword [ebp - 0x5d4], 0xd6
mov dword [ebp - 0x610], 0x22
mov eax, dword [ebp - 0x60c]
sub eax, 1
mov dword [ebp - 0x60c], eax
mov ecx, dword [ebp - 0x6a0]
add ecx, dword [ebp - 0x5d4]
mov edx, 2
imul eax, edx, 0
movzx edx, word [ebp + eax - 0xc]
add ecx, edx
mov dword [ebp - 0x5d4], ecx
mov eax, dword [ebp - 0x5d4]
sub eax, 1
mov dword [ebp - 0x5d4], eax
mov ecx, dword [ebp - 0x610]
add ecx, 1
mov dword [ebp - 0x610], ecx
mov edx, 1
imul eax, edx, 0
mov cl, byte [ebp + eax - 0x4e4]
sub cl, 1
mov edx, 1
imul eax, edx, 0
mov byte [ebp + eax - 0x4e4], cl
mov ecx, 2
imul edx, ecx, 0
movzx eax, word [ebp + edx - 0x24]
cdq
mov ecx, eax
add ecx, dword [ebp - 0x5a4]
mov edx, 1
shl edx, 0
movzx eax, byte [ebp + edx - 0x4e4]
cdq
add ecx, eax
mov eax, 1
shl eax, 0
mov byte [ebp + eax - 0x4dc], cl
mov ecx, 1
shl ecx, 0
movzx eax, byte [ebp + ecx - 0x4d0]
mov edx, 1
shl edx, 0
movzx ecx, byte [ebp + edx - 0x4d0]
add eax, ecx
mov edx, 2
imul ecx, edx, 0
movzx edx, word [ebp + ecx - 0x3c]
add eax, edx
cdq
mov dword [ebp - 0x5a4], eax
mov dword [ebp - 0x5a0], edx
mov eax, 2
imul ecx, eax, 0
mov dx, word [ebp + ecx - 0xc]
sub dx, 1
mov eax, 2
imul ecx, eax, 0
mov word [ebp + ecx - 0xc], dx
mov edx, 1
shl edx, 0
mov al, byte [ebp + edx - 0x4d0]
sub al, 1
mov ecx, 1
shl ecx, 0
mov byte [ebp + ecx - 0x4d0], al
mov edx, 1
imul eax, edx, 0
movzx eax, byte [ebp + eax - 0x4e0]
cdq
mov ecx, dword [ebp - 0x5a0]
push ecx
mov ecx, dword [ebp - 0x5a4]
push ecx
push edx
push eax
call fcn.00461c30
mov edx, 1
imul ecx, edx, 0
mov byte [ebp + ecx - 0x4e0], al
mov edx, 1
shl edx, 1
movzx eax, byte [ebp + edx - 0x4e0]
mov ecx, 1
shl ecx, 1
movzx edx, byte [ebp + ecx - 0x4dc]
sub eax, edx
add eax, dword [ebp - 0x574]
mov ecx, 2
imul edx, ecx, 0
mov word [ebp + edx - 0x24], ax
jmp 0x416f4d
mov eax, 2
imul ecx, eax, 0
movzx edx, word [ebp + ecx - 0x24]
mov eax, 2
imul ecx, eax, 0
movzx eax, word [ebp + ecx - 0xc]
add edx, eax
mov ecx, 1
imul eax, ecx, 0
mov byte [ebp + eax - 0x4d0], dl
mov ecx, 2
imul edx, ecx, 0
mov ax, word [ebp + edx - 0x220]
add ax, 1
mov ecx, 2
imul edx, ecx, 0
mov word [ebp + edx - 0x220], ax
jmp 0x416fa6
mov eax, 2
imul ecx, eax, 0
movzx eax, word [ebp + ecx - 0x24]
mov edx, 1
shl edx, 0
movzx ecx, byte [ebp + edx - 0x4e4]
sub eax, ecx
cdq
add eax, dword [ebp - 0x58c]
mov edx, 2
imul ecx, edx, 0
mov word [ebp + ecx - 0x44], ax
mov edx, 2
imul eax, edx, 0
movzx ecx, word [ebp + eax - 0x44]
mov edx, 2
imul eax, edx, 0
movzx edx, word [ebp + eax - 0x3c]
sub ecx, edx
mov eax, 1
imul edx, eax, 0
movzx eax, byte [ebp + edx - 0x4c8]
sub ecx, eax
mov dword [ebp - 0x57c], ecx
jmp 0x414180
jmp 0x417020
mov dword [ebp - 0x5e4], 0xf
jmp 0x41703b
mov ecx, dword [ebp - 0x5e4]
add ecx, 1
mov dword [ebp - 0x5e4], ecx
mov edx, 1
shl edx, 0
movzx eax, byte [ebp + edx - 0x4cc]
cmp dword [ebp - 0x5e4], eax
jae 0x4170ce
mov ecx, dword [ebp - 0x59c]
add ecx, 0x289a
mov dword [ebp - 0x59c], ecx
mov edx, 1
shl edx, 0
mov al, byte [ebp + edx - 0x4d8]
sub al, 1
mov ecx, 1
shl ecx, 0
mov byte [ebp + ecx - 0x4d8], al
mov edx, 2
imul eax, edx, 0
mov cx, word [ebp + eax - 0x14]
sub cx, 1
mov edx, 2
imul eax, edx, 0
mov word [ebp + eax - 0x14], cx
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [ebp + edx - 0x4cc]
imul eax, dword [ebp - 0x578]
mov ecx, 1
imul edx, ecx, 0
mov byte [ebp + edx - 0x4cc], al
jmp 0x41702c
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00457385
mov esp, ebp
pop ebp
ret