Function at 0x58aeb0
Capabilities:
Contain obfuscated stackstrings
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x6bde9f
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x4e0
push ebx
push ebp
mov ebp, ecx
push esi
push edi
mov dword [esp + 0x3c], ebp
xor ebx, ebx
lea ecx, [esp + 0x50]
mov dword [esp + 0x4f8], ebx
xor esi, esi
call fcn.0060d180
lea ecx, [esp + 0x18]
mov byte [esp + 0x4f8], 1
call fcn.0060fe70
push 0x6c
push 0xf1
push 0x10
lea ecx, [esp + 0xb0]
mov byte [esp + 0x504], 2
call fcn.00548440
mov al, byte [esp + 0x13]
mov dword [esp + 0x24], ebx
mov byte [esp + 0x20], al
mov dword [esp + 0x28], ebx
mov dword [esp + 0x2c], ebx
mov cl, byte [esp + 0x13]
mov dword [esp + 0x44], ebx
mov byte [esp + 0x40], cl
mov dword [esp + 0x48], ebx
mov dword [esp + 0x4c], ebx
push 6
push 0x7101b0
lea ecx, [esp + 0x38]
mov byte [esp + 0x500], 5
call fcn.0060ff10
mov al, 0xae
mov cl, 0x80
mov byte [esp + 0x4f8], 6
mov byte [esp + 0x1d4], 8
mov byte [esp + 0x1d5], al
mov byte [esp + 0x1d6], 1
mov byte [esp + 0x1d7], bl
mov byte [esp + 0x1d8], bl
mov byte [esp + 0x1d9], cl
mov byte [esp + 0x1da], cl
mov byte [esp + 0x1db], bl
mov byte [esp + 0x1dc], bl
mov byte [esp + 0x1dd], bl
mov byte [esp + 0x1de], 8
mov byte [esp + 0x1df], al
mov byte [esp + 0x1e0], 1
mov byte [esp + 0x1e1], bl
mov byte [esp + 0x1e2], bl
mov byte [esp + 0x1e3], cl
mov byte [esp + 0x1e4], bl
mov byte [esp + 0x1e5], bl
mov byte [esp + 0x1e6], bl
mov byte [esp + 0x1e7], bl
mov byte [esp + 0x1e8], 8
mov byte [esp + 0x1e9], al
mov byte [esp + 0x1ea], 1
mov byte [esp + 0x1eb], bl
mov byte [esp + 0x1ec], bl
mov byte [esp + 0x1ed], bl
mov byte [esp + 0x1ee], bl
mov byte [esp + 0x1ef], bl
mov byte [esp + 0x1f0], bl
mov byte [esp + 0x1f1], bl
mov byte [esp + 0x1f2], 8
mov byte [esp + 0x1f3], al
mov byte [esp + 0x1f4], 1
mov byte [esp + 0x1f5], bl
mov byte [esp + 0x1f6], bl
mov dl, 0xc0
mov byte [esp + 0x1f7], dl
mov byte [esp + 0x1f8], dl
mov byte [esp + 0x1f9], bl
mov byte [esp + 0x1fa], bl
mov byte [esp + 0x1fb], bl
mov byte [esp + 0x1fc], 8
mov byte [esp + 0x1fd], al
mov byte [esp + 0x1fe], 1
mov byte [esp + 0x1ff], bl
mov byte [esp + 0x200], bl
mov byte [esp + 0x201], dl
mov byte [esp + 0x202], bl
mov byte [esp + 0x203], bl
mov byte [esp + 0x204], bl
mov byte [esp + 0x205], bl
mov byte [esp + 0x206], 8
mov byte [esp + 0x207], al
mov byte [esp + 0x208], 1
mov byte [esp + 0x209], bl
mov byte [esp + 0x20a], bl
mov byte [esp + 0x20b], bl
mov byte [esp + 0x20c], bl
mov byte [esp + 0x20d], bl
mov byte [esp + 0x20e], bl
mov byte [esp + 0x20f], bl
mov byte [esp + 0x210], 8
mov byte [esp + 0x211], al
mov byte [esp + 0x212], 1
mov byte [esp + 0x213], cl
mov byte [esp + 0x214], cl
mov byte [esp + 0x215], bl
mov byte [esp + 0x216], bl
mov byte [esp + 0x217], bl
mov byte [esp + 0x218], bl
mov byte [esp + 0x219], bl
mov byte [esp + 0x21a], 8
mov byte [esp + 0x21b], al
mov byte [esp + 0x21c], 1
mov byte [esp + 0x21d], cl
mov byte [esp + 0x21e], bl
mov byte [esp + 0x21f], bl
mov byte [esp + 0x220], bl
mov byte [esp + 0x221], bl
mov byte [esp + 0x222], bl
mov byte [esp + 0x223], bl
mov byte [esp + 0x224], 8
mov byte [esp + 0x225], al
mov byte [esp + 0x226], 1
mov byte [esp + 0x227], bl
mov byte [esp + 0x228], bl
mov byte [esp + 0x229], bl
mov byte [esp + 0x22a], bl
mov byte [esp + 0x22b], bl
mov byte [esp + 0x22c], bl
mov byte [esp + 0x22d], bl
mov byte [esp + 0x22e], 8
mov byte [esp + 0x22f], al
mov byte [esp + 0x230], 1
mov byte [esp + 0x231], bl
mov byte [esp + 0x232], bl
mov byte [esp + 0x233], 0x20
mov byte [esp + 0x234], 0x20
mov byte [esp + 0x235], bl
mov byte [esp + 0x236], bl
mov byte [esp + 0x237], bl
mov byte [esp + 0x238], 8
mov byte [esp + 0x239], al
mov byte [esp + 0x23a], 1
mov byte [esp + 0x23b], bl
mov byte [esp + 0x23c], bl
mov byte [esp + 0x23d], 0x20
mov byte [esp + 0x23e], bl
mov byte [esp + 0x23f], bl
mov byte [esp + 0x240], bl
mov byte [esp + 0x241], bl
mov byte [esp + 0x242], 8
mov byte [esp + 0x243], al
mov byte [esp + 0x244], 1
mov byte [esp + 0x245], bl
mov byte [esp + 0x246], bl
mov byte [esp + 0x247], bl
mov byte [esp + 0x248], bl
mov byte [esp + 0x249], bl
mov byte [esp + 0x24a], bl
mov byte [esp + 0x24b], bl
mov byte [esp + 0x24c], 8
mov byte [esp + 0x24d], al
mov byte [esp + 0x24e], 2
mov byte [esp + 0x24f], bl
mov byte [esp + 0x250], bl
mov byte [esp + 0x251], cl
mov byte [esp + 0x252], bl
mov byte [esp + 0x253], bl
mov byte [esp + 0x254], 0xff
mov byte [esp + 0x255], bl
mov byte [esp + 0x256], 8
mov byte [esp + 0x257], al
mov byte [esp + 0x258], 2
mov byte [esp + 0x259], bl
mov byte [esp + 0x25a], bl
mov byte [esp + 0x25b], cl
mov byte [esp + 0x25c], bl
mov byte [esp + 0x25d], bl
mov byte [esp + 0x25e], 0xff
mov byte [esp + 0x25f], bl
mov byte [esp + 0x260], 8
mov byte [esp + 0x261], al
mov byte [esp + 0x262], 2
mov byte [esp + 0x263], bl
mov byte [esp + 0x264], bl
mov byte [esp + 0x265], bl
mov byte [esp + 0x266], bl
mov byte [esp + 0x267], bl
mov byte [esp + 0x268], bl
mov byte [esp + 0x269], bl
mov byte [esp + 0x26a], 8
mov byte [esp + 0x26b], al
mov byte [esp + 0x26c], 2
mov byte [esp + 0x26d], 1
mov byte [esp + 0x26e], 0xff
mov byte [esp + 0x26f], bl
mov byte [esp + 0x270], bl
mov byte [esp + 0x271], bl
mov byte [esp + 0x272], bl
mov byte [esp + 0x273], bl
mov byte [esp + 0x274], 8
mov byte [esp + 0x275], al
mov byte [esp + 0x276], 2
mov byte [esp + 0x277], 1
mov byte [esp + 0x278], 0xff
mov byte [esp + 0x279], bl
mov byte [esp + 0x27a], bl
mov byte [esp + 0x27b], bl
mov byte [esp + 0x27c], bl
mov byte [esp + 0x27d], bl
mov byte [esp + 0x27e], 8
mov byte [esp + 0x27f], al
mov byte [esp + 0x280], 2
mov byte [esp + 0x281], bl
mov byte [esp + 0x282], bl
mov byte [esp + 0x283], bl
mov byte [esp + 0x284], bl
mov byte [esp + 0x285], bl
mov byte [esp + 0x286], bl
mov byte [esp + 0x287], bl
mov byte [esp + 0x288], 8
mov byte [esp + 0x289], al
mov byte [esp + 0x28a], 1
mov byte [esp + 0x28b], 2
mov byte [esp + 0x28c], bl
mov byte [esp + 0x28d], bl
mov byte [esp + 0x28e], bl
mov byte [esp + 0x28f], bl
mov byte [esp + 0x290], bl
mov byte [esp + 0x291], bl
mov byte [esp + 0x292], 8
mov byte [esp + 0x293], al
mov byte [esp + 0x294], 1
mov byte [esp + 0x295], 2
mov byte [esp + 0x296], 2
mov byte [esp + 0x297], bl
mov byte [esp + 0x298], bl
mov byte [esp + 0x299], bl
mov byte [esp + 0x29a], bl
mov byte [esp + 0x29b], bl
mov byte [esp + 0x29c], 8
mov byte [esp + 0x29d], al
mov byte [esp + 0x29e], 1
mov byte [esp + 0x29f], bl
mov byte [esp + 0x2a0], bl
mov byte [esp + 0x2a1], bl
mov byte [esp + 0x2a2], bl
mov byte [esp + 0x2a3], bl
mov byte [esp + 0x2a4], bl
mov byte [esp + 0x2a5], bl
mov byte [esp + 0x2a6], 8
mov byte [esp + 0x2a7], al
mov byte [esp + 0x2a8], 1
mov byte [esp + 0x2a9], bl
mov byte [esp + 0x2aa], bl
mov byte [esp + 0x2ab], 4
mov byte [esp + 0x2ac], 4
mov byte [esp + 0x2ad], bl
mov byte [esp + 0x2ae], bl
mov byte [esp + 0x2af], bl
mov byte [esp + 0x2b0], 8
mov byte [esp + 0x2b1], al
mov byte [esp + 0x2b2], 1
mov byte [esp + 0x2b3], bl
mov byte [esp + 0x2b4], bl
mov byte [esp + 0x2b5], 4
mov byte [esp + 0x2b6], bl
mov byte [esp + 0x2b7], bl
mov byte [esp + 0x2b8], bl
mov byte [esp + 0x2b9], bl
mov byte [esp + 0x2ba], 8
mov byte [esp + 0x2bb], al
mov byte [esp + 0x2bc], 1
mov byte [esp + 0x2bd], bl
mov byte [esp + 0x2be], bl
mov byte [esp + 0x2bf], bl
mov byte [esp + 0x2c0], bl
mov byte [esp + 0x2c1], bl
mov byte [esp + 0x2c2], bl
mov byte [esp + 0x2c3], bl
mov byte [esp + 0x2c4], 8
mov byte [esp + 0x2c5], al
mov byte [esp + 0x2c6], 1
mov byte [esp + 0x2c7], bl
mov byte [esp + 0x2c8], bl
mov byte [esp + 0x2c9], 1
mov byte [esp + 0x2ca], 1
mov byte [esp + 0x2cb], bl
mov byte [esp + 0x2cc], bl
mov byte [esp + 0x2cd], bl
mov byte [esp + 0x2ce], 8
mov byte [esp + 0x2cf], al
mov byte [esp + 0x2d0], 1
mov byte [esp + 0x2d1], bl
mov byte [esp + 0x2d2], bl
mov byte [esp + 0x2d3], 1
mov byte [esp + 0x2d4], bl
mov byte [esp + 0x2d5], bl
mov byte [esp + 0x2d6], bl
mov byte [esp + 0x2d7], bl
mov byte [esp + 0x2d8], 8
mov byte [esp + 0x2d9], al
mov byte [esp + 0x2da], 1
mov byte [esp + 0x2db], bl
mov byte [esp + 0x2dc], bl
mov byte [esp + 0x2dd], bl
mov byte [esp + 0x2de], bl
mov byte [esp + 0x2df], bl
mov byte [esp + 0x2e0], bl
mov byte [esp + 0x2e1], bl
mov byte [esp + 0x2e2], 8
mov byte [esp + 0x2e3], al
mov byte [esp + 0x2e4], 2
mov byte [esp + 0x2e5], 8
mov byte [esp + 0x2e6], 0xff
mov byte [esp + 0x2e7], bl
mov byte [esp + 0x2e8], bl
mov byte [esp + 0x2e9], bl
mov byte [esp + 0x2ea], bl
mov byte [esp + 0x2eb], bl
mov byte [esp + 0x2ec], 8
mov byte [esp + 0x2ed], al
mov byte [esp + 0x2ee], 2
mov byte [esp + 0x2ef], 8
mov byte [esp + 0x2f0], 0xcc
mov byte [esp + 0x2f1], bl
mov byte [esp + 0x2f2], bl
mov byte [esp + 0x2f3], bl
mov byte [esp + 0x2f4], bl
mov byte [esp + 0x2f5], bl
mov byte [esp + 0x2f6], 8
mov byte [esp + 0x2f7], al
mov byte [esp + 0x2f8], 2
mov byte [esp + 0x2f9], 8
mov byte [esp + 0x2fa], 0x99
mov byte [esp + 0x2fb], bl
mov byte [esp + 0x2fc], bl
mov byte [esp + 0x2fd], bl
mov byte [esp + 0x2fe], bl
mov byte [esp + 0x2ff], bl
mov byte [esp + 0x300], 8
mov byte [esp + 0x301], al
mov byte [esp + 0x302], 2
mov byte [esp + 0x303], 8
mov byte [esp + 0x304], 0x66
mov byte [esp + 0x305], bl
mov byte [esp + 0x306], bl
mov byte [esp + 0x307], bl
mov byte [esp + 0x308], bl
mov byte [esp + 0x309], bl
mov byte [esp + 0x30a], 8
mov byte [esp + 0x30b], al
mov byte [esp + 0x30c], 2
mov byte [esp + 0x30d], 8
mov byte [esp + 0x30e], 0x33
mov byte [esp + 0x30f], bl
mov byte [esp + 0x310], bl
mov byte [esp + 0x311], bl
mov byte [esp + 0x312], bl
mov byte [esp + 0x313], bl
mov byte [esp + 0x314], 8
mov byte [esp + 0x315], al
mov byte [esp + 0x316], 2
mov byte [esp + 0x317], 8
mov byte [esp + 0x318], bl
mov byte [esp + 0x319], bl
mov byte [esp + 0x31a], bl
mov byte [esp + 0x31b], bl
mov byte [esp + 0x31c], bl
mov byte [esp + 0x31d], bl
mov byte [esp + 0xf8], 8
mov byte [esp + 0xf9], al
mov byte [esp + 0xfa], 3
mov byte [esp + 0xfb], cl
mov byte [esp + 0xfc], cl
mov byte [esp + 0xfd], bl
mov byte [esp + 0xfe], bl
mov byte [esp + 0xff], bl
mov byte [esp + 0x100], bl
mov byte [esp + 0x101], bl
mov byte [esp + 0x102], 8
mov byte [esp + 0x103], al
mov byte [esp + 0x104], 3
mov byte [esp + 0x105], cl
mov byte [esp + 0x106], bl
mov byte [esp + 0x107], bl
mov byte [esp + 0x108], bl
mov byte [esp + 0x109], bl
mov byte [esp + 0x10a], bl
mov byte [esp + 0x10b], bl
mov byte [esp + 0x10c], 8
mov byte [esp + 0x10d], al
mov byte [esp + 0x10e], 3
mov byte [esp + 0x10f], bl
mov byte [esp + 0x110], bl
mov byte [esp + 0x111], bl
mov byte [esp + 0x112], bl
mov byte [esp + 0x113], bl
mov byte [esp + 0x114], bl
mov cl, 0x3b
mov byte [esp + 0x115], bl
mov byte [esp + 0x116], 8
mov byte [esp + 0x117], al
mov byte [esp + 0x118], 3
mov byte [esp + 0x119], 1
mov byte [esp + 0x11a], bl
mov byte [esp + 0x11b], 3
mov byte [esp + 0x11c], bl
mov byte [esp + 0x11d], bl
mov byte [esp + 0x11e], bl
mov byte [esp + 0x11f], bl
mov byte [esp + 0x120], 8
mov byte [esp + 0x121], al
mov byte [esp + 0x122], 3
mov byte [esp + 0x123], 1
mov byte [esp + 0x124], bl
mov byte [esp + 0x125], 2
mov byte [esp + 0x126], bl
mov byte [esp + 0x127], bl
mov byte [esp + 0x128], bl
mov byte [esp + 0x129], bl
mov byte [esp + 0x12a], 8
mov byte [esp + 0x12b], al
mov byte [esp + 0x12c], 3
mov byte [esp + 0x12d], bl
mov byte [esp + 0x12e], bl
mov byte [esp + 0x12f], bl
mov byte [esp + 0x130], bl
mov byte [esp + 0x131], bl
mov byte [esp + 0x132], bl
mov byte [esp + 0x133], bl
mov byte [esp + 0x134], 8
mov byte [esp + 0x135], al
mov byte [esp + 0x136], 3
mov byte [esp + 0x137], 1
mov byte [esp + 0x138], bl
mov byte [esp + 0x139], 1
mov byte [esp + 0x13a], bl
mov byte [esp + 0x13b], bl
mov byte [esp + 0x13c], bl
mov byte [esp + 0x13d], bl
mov byte [esp + 0x13e], 8
mov byte [esp + 0x13f], al
mov byte [esp + 0x140], 3
mov byte [esp + 0x141], 1
mov byte [esp + 0x142], bl
mov byte [esp + 0x143], 2
mov byte [esp + 0x144], bl
mov byte [esp + 0x145], bl
mov byte [esp + 0x146], bl
mov byte [esp + 0x147], bl
mov byte [esp + 0x148], 8
mov byte [esp + 0x149], al
mov byte [esp + 0x14a], 3
mov byte [esp + 0x14b], bl
mov byte [esp + 0x14c], bl
mov byte [esp + 0x14d], bl
mov byte [esp + 0x14e], bl
mov byte [esp + 0x14f], bl
mov byte [esp + 0x150], bl
mov byte [esp + 0x151], bl
mov byte [esp + 0x152], 8
mov byte [esp + 0x153], cl
mov byte [esp + 0x154], 0x41
mov byte [esp + 0x155], 0x7c
mov byte [esp + 0x156], bl
mov byte [esp + 0x157], bl
mov byte [esp + 0x158], bl
mov byte [esp + 0x159], bl
mov byte [esp + 0x15a], bl
mov byte [esp + 0x15b], bl
mov byte [esp + 0x15c], 8
mov byte [esp + 0x15d], cl
mov byte [esp + 0x15e], 0x42
mov byte [esp + 0x15f], bl
mov byte [esp + 0x160], bl
mov byte [esp + 0x161], bl
mov byte [esp + 0x162], bl
mov byte [esp + 0x163], bl
mov byte [esp + 0x164], bl
mov byte [esp + 0x165], bl
mov byte [esp + 0x166], 8
mov byte [esp + 0x167], cl
mov byte [esp + 0x168], 0x43
mov byte [esp + 0x169], bl
mov byte [esp + 0x16a], bl
mov byte [esp + 0x16b], bl
mov byte [esp + 0x16c], bl
mov byte [esp + 0x16d], bl
mov byte [esp + 0x16e], bl
mov byte [esp + 0x16f], bl
mov byte [esp + 0x170], 8
mov byte [esp + 0x171], cl
mov byte [esp + 0x172], 0x44
mov byte [esp + 0x173], bl
mov byte [esp + 0x174], bl
mov byte [esp + 0x175], bl
mov byte [esp + 0x176], bl
mov byte [esp + 0x177], bl
mov byte [esp + 0x178], bl
mov byte [esp + 0x179], bl
mov byte [esp + 0x17a], 8
mov byte [esp + 0x17b], cl
mov byte [esp + 0x17c], 0x45
mov byte [esp + 0x17d], bl
mov byte [esp + 0x17e], bl
mov byte [esp + 0x17f], bl
mov byte [esp + 0x180], bl
mov byte [esp + 0x181], bl
mov byte [esp + 0x182], bl
mov byte [esp + 0x183], bl
mov byte [esp + 0x184], 8
mov byte [esp + 0x185], cl
mov byte [esp + 0x186], 0x46
mov byte [esp + 0x187], bl
mov byte [esp + 0x188], bl
mov byte [esp + 0x189], bl
mov byte [esp + 0x18a], bl
mov byte [esp + 0x18b], bl
mov byte [esp + 0x18c], bl
mov byte [esp + 0x18d], bl
mov byte [esp + 0x18e], 8
mov byte [esp + 0x18f], cl
mov byte [esp + 0x190], 0x47
mov byte [esp + 0x191], bl
mov byte [esp + 0x192], bl
mov byte [esp + 0x193], bl
mov byte [esp + 0x194], bl
mov byte [esp + 0x195], bl
mov byte [esp + 0x196], bl
mov byte [esp + 0x197], bl
mov byte [esp + 0x198], 8
mov byte [esp + 0x199], cl
mov byte [esp + 0x19a], 0x48
mov byte [esp + 0x19b], bl
mov byte [esp + 0x19c], bl
mov byte [esp + 0x19d], bl
mov byte [esp + 0x19e], bl
mov byte [esp + 0x19f], bl
mov byte [esp + 0x1a0], bl
mov byte [esp + 0x1a1], bl
mov byte [esp + 0x1a2], 8
mov byte [esp + 0x1a3], cl
mov byte [esp + 0x1a4], 0x49
mov byte [esp + 0x1a5], bl
mov byte [esp + 0x1a6], bl
mov byte [esp + 0x1a7], bl
mov byte [esp + 0x1a8], bl
mov byte [esp + 0x1a9], bl
mov byte [esp + 0x1aa], bl
mov byte [esp + 0x1ab], bl
mov byte [esp + 0x1ac], 8
mov byte [esp + 0x1ad], cl
mov byte [esp + 0x1ae], 0x4d
mov byte [esp + 0x1af], bl
mov byte [esp + 0x1b0], bl
mov byte [esp + 0x1b1], bl
mov byte [esp + 0x1b2], bl
mov byte [esp + 0x1b3], bl
mov byte [esp + 0x1b4], bl
mov byte [esp + 0x1b5], bl
mov byte [esp + 0x1b6], 8
mov byte [esp + 0x1b7], cl
mov byte [esp + 0x1b8], 0x4e
mov byte [esp + 0x1b9], bl
mov byte [esp + 0x1ba], bl
mov byte [esp + 0x1bb], bl
mov byte [esp + 0x1bc], bl
mov byte [esp + 0x1bd], bl
mov byte [esp + 0x1be], bl
mov byte [esp + 0x1bf], bl
mov byte [esp + 0x1c0], 8
mov byte [esp + 0x1c1], cl
mov byte [esp + 0x1c2], 0x4f
mov byte [esp + 0x1c3], bl
mov byte [esp + 0x1c4], bl
mov byte [esp + 0x1c5], bl
mov byte [esp + 0x1c6], bl
mov byte [esp + 0x1c7], bl
mov byte [esp + 0x1c8], bl
mov byte [esp + 0x1c9], bl
mov byte [esp + 0x1ca], 8
mov byte [esp + 0x1cb], al
mov byte [esp + 0x1cc], 3
mov byte [esp + 0x1cd], 1
mov byte [esp + 0x1ce], bl
mov byte [esp + 0x1cf], bl
mov byte [esp + 0x1d0], bl
mov byte [esp + 0x1d1], bl
mov byte [esp + 0x1d2], bl
mov byte [esp + 0x1d3], bl
mov byte [esp + 0x88], 4
mov byte [esp + 0x89], 0x22
mov byte [esp + 0x8a], 0x11
mov byte [esp + 0x8b], 1
mov byte [esp + 0x8c], 1
mov byte [esp + 0xc4], 8
mov byte [esp + 0xc5], al
mov byte [esp + 0xc6], 2
mov byte [esp + 0xc7], 0x40
mov byte [esp + 0xc8], bl
mov byte [esp + 0xc9], bl
mov byte [esp + 0xca], bl
mov byte [esp + 0xcb], bl
mov byte [esp + 0xcc], bl
mov byte [esp + 0xcd], bl
mov byte [esp + 0xce], 8
mov byte [esp + 0xcf], al
mov byte [esp + 0xd0], 2
mov byte [esp + 0xd1], bl
mov byte [esp + 0xd2], bl
mov byte [esp + 0xd3], bl
mov byte [esp + 0xd4], bl
mov byte [esp + 0xd5], bl
mov byte [esp + 0xd6], bl
mov byte [esp + 0xd7], bl
mov byte [esp + 0xd8], 8
mov byte [esp + 0xd9], al
mov byte [esp + 0xda], 1
mov byte [esp + 0xdb], 1
mov byte [esp + 0xdc], 1
mov byte [esp + 0xdd], bl
mov byte [esp + 0xde], bl
mov byte [esp + 0xdf], bl
mov byte [esp + 0xe0], bl
mov byte [esp + 0xe1], bl
mov byte [esp + 0xe2], 8
mov byte [esp + 0xe3], al
mov byte [esp + 0xe4], 1
mov byte [esp + 0xe5], 1
mov byte [esp + 0xe6], bl
mov byte [esp + 0xe7], bl
mov byte [esp + 0xe8], bl
mov byte [esp + 0xe9], bl
mov byte [esp + 0xea], bl
mov byte [esp + 0xeb], bl
mov byte [esp + 0xec], 8
mov byte [esp + 0xed], al
mov byte [esp + 0xee], 1
mov byte [esp + 0xef], bl
mov byte [esp + 0xf0], bl
mov byte [esp + 0xf1], bl
xor edx, edx
mov byte [esp + 0x75], al
mov byte [esp + 0x7f], al
mov byte [esp + 0x91], al
mov byte [esp + 0x9b], al
mov eax, dword [ebp]
mov word [esp + 0x322], dx
mov ecx, ebp
mov byte [esp + 0xf2], bl
mov byte [esp + 0xf3], bl
mov byte [esp + 0xf4], bl
mov byte [esp + 0xf5], bl
mov byte [esp + 0x74], 8
mov byte [esp + 0x76], 2
mov byte [esp + 0x77], bl
mov byte [esp + 0x78], bl
mov byte [esp + 0x79], 3
mov byte [esp + 0x7a], 0x7d
mov byte [esp + 0x7b], bl
mov byte [esp + 0x7c], bl
mov byte [esp + 0x7d], bl
mov byte [esp + 0x7e], 8
mov byte [esp + 0x80], 2
mov byte [esp + 0x81], bl
mov byte [esp + 0x82], bl
mov byte [esp + 0x83], bl
mov byte [esp + 0x84], bl
mov byte [esp + 0x85], bl
mov byte [esp + 0x86], bl
mov byte [esp + 0x87], bl
mov byte [esp + 0x320], 1
mov byte [esp + 0x321], 0x20
mov byte [esp + 0x324], dl
mov byte [esp + 0x325], 2
mov byte [esp + 0x326], 0x10
mov byte [esp + 0x327], 0x10
mov word [esp + 0x328], bx
mov byte [esp + 0x32a], 4
mov byte [esp + 0x32b], 0x22
mov byte [esp + 0x32c], bl
mov byte [esp + 0x32d], 0xc
mov byte [esp + 0x32e], 1
mov byte [esp + 0x32f], 4
mov byte [esp + 0x330], 0x22
mov byte [esp + 0x331], bl
mov byte [esp + 0x332], 0xd
mov byte [esp + 0x333], 1
mov byte [esp + 0x90], 8
mov byte [esp + 0x92], 1
mov byte [esp + 0x93], bl
mov byte [esp + 0x94], bl
mov byte [esp + 0x95], bl
mov byte [esp + 0x96], bl
mov byte [esp + 0x97], 0x10
mov byte [esp + 0x98], bl
mov byte [esp + 0x99], bl
mov byte [esp + 0x9a], 8
mov byte [esp + 0x9c], 2
mov byte [esp + 0x9d], bl
mov byte [esp + 0x9e], 8
mov byte [esp + 0x9f], 8
mov byte [esp + 0xa0], bl
mov byte [esp + 0xa1], bl
mov byte [esp + 0xa2], bl
mov byte [esp + 0xa3], bl
call dword [eax + 0x18]
test ax, ax
jne 0x58c302
lea ecx, [esp + 0x30]
mov byte [esp + 0x4f8], 5
call fcn.0060ffb0
mov eax, dword [esp + 0x44]
cmp eax, ebx
je 0x58c271
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x58c268
cmp al, 0xff
je 0x58c268
dec al
mov byte [ecx], al
jmp 0x58c271
push ecx
call fcn.00697880
add esp, 4
mov eax, dword [esp + 0x24]
mov dword [esp + 0x44], ebx
cmp eax, ebx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x4c], ebx
je 0x58c2a2
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x58c299
cmp al, 0xff
je 0x58c299
dec al
mov byte [ecx], al
jmp 0x58c2a2
push ecx
call fcn.00697880
add esp, 4
lea ecx, [esp + 0xa4]
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], ebx
mov dword [esp + 0x2c], ebx
mov byte [esp + 0x4f8], 2
call fcn.00548470
lea ecx, [esp + 0x18]
mov byte [esp + 0x4f8], 1
call fcn.0060ffb0
lea ecx, [esp + 0x50]
mov byte [esp + 0x4f8], bl
call fcn.0060d280
lea ecx, [esp + 0x500]
mov dword [esp + 0x4f8], 0xffffffff
call fcn.0060ffb0
xor ax, ax
jmp 0x58e3c2
push 5
lea ecx, [esp + 0x504]
call fcn.00610190
push ecx
mov byte [esp + 0x3c], al
mov ecx, esp
mov dword [esp + 0x20], esp
push 6
push 0x703764
call fcn.0060ff10
lea ecx, [esp + 0x344]
push ecx
call fcn.0060f170
add esp, 8
mov edx, dword [0x6ce1fc]
lea ecx, [esp + 0x20]
push edx
push ebx
push eax
mov byte [esp + 0x504], 7
call fcn.004136a0
mov eax, dword [esp + 0x344]
mov byte [esp + 0x4f8], 6
cmp eax, ebx
je 0x58c381
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x58c378
cmp al, 0xff
je 0x58c378
dec al
mov byte [ecx], al
jmp 0x58c381
push ecx
call fcn.00697880
add esp, 4
mov eax, dword [esp + 0x38]
and eax, 0xff
add eax, 0xffffffae
cmp eax, 0x15
ja case.0x58c39e.92
xor ecx, ecx
mov cl, byte [eax + 0x58ee80]
jmp dword [ecx*4 + 0x58ee54]
mov al, byte [esp + 0x38]
cmp al, 0x59
jne 0x58c3f4
push ebx
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x28], esp
push 6
push 0x7037f4
call fcn.0060ff10
push ecx
mov byte [esp + 0x508], 8
mov ecx, esp
mov dword [esp + 0x4c], esp
push 6
push 0x70de48
call fcn.0060ff10
mov ecx, 0x71b930
mov byte [esp + 0x508], 6
call fcn.006115e0
mov al, byte [esp + 0x38]
sub al, 0x52
mov byte [esp + 0x13], bl
mov byte [esp + 0x38], al
push ecx
lea edx, [esp + 0x504]
mov ecx, esp
mov dword [esp + 0x20], esp
push edx
call fcn.0060fe80
mov ecx, dword [0x71b93c]
call fcn.006206f0
cmp si, bx
je 0x58c713
cmp byte [0x71bb5c], bl
je 0x58c443
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push 8
push 0x7101a4
call fcn.0060ff10
jmp 0x58c492
mov eax, dword [esp + 0x38]
sub esp, 0x24
and eax, 0xff
mov ecx, esp
movsx edx, si
lea eax, [eax + eax*2]
mov dword [esp + 0x40], esp
add eax, edx
push ebx
push 1
lea eax, [eax + eax*4]
lea edx, [esp + eax*2 + 0x1f6]
push edx
push ecx
lea ecx, [esp + 0xd8]
call fcn.00548ea0
lea ecx, [esp + 0x74]
call fcn.0060d330
push ecx
lea ecx, [esp + 0x54]
mov eax, esp
mov dword [esp + 0x20], esp
push eax
call fcn.0060d6b0
lea ecx, [esp + 0x1c]
call fcn.006101a0
lea ecx, [esp + 0x18]
call fcn.00610330
test ax, ax
jle 0x58c711
cmp si, 1
jne 0x58c542
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push 6
push 0x703784
call fcn.0060ff10
lea ecx, [esp + 0x3c4]
push ecx
call fcn.0060f170
add esp, 8
mov edx, dword [0x6ce1fc]
lea ecx, [esp + 0x20]
push edx
push ebx
push eax
mov byte [esp + 0x504], 9
call fcn.004136a0
mov eax, dword [esp + 0x3c4]
mov byte [esp + 0x4f8], 6
cmp eax, ebx
je 0x58c524
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x58c51b
cmp al, 0xff
je 0x58c51b
dec al
mov byte [ecx], al
jmp 0x58c524
push ecx
call fcn.00697880
add esp, 4
mov dword [esp + 0x3c4], ebx
mov dword [esp + 0x3c8], ebx
mov dword [esp + 0x3cc], ebx
mov byte [esp + 0x13], bl
jmp 0x58c711
cmp si, 2
jne 0x58c5d7
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push 6
push 0x70377c
call fcn.0060ff10
lea eax, [esp + 0x3a4]
push eax
call fcn.0060f170
add esp, 8
mov ecx, dword [0x6ce1fc]
mov byte [esp + 0x4f8], 0xa
push ecx
push ebx
push eax
lea ecx, [esp + 0x2c]
call fcn.004136a0
mov eax, dword [esp + 0x3a4]
mov byte [esp + 0x4f8], 6
cmp eax, ebx
je 0x58c5b9
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x58c5b0
cmp al, 0xff
je 0x58c5b0
dec al
mov byte [ecx], al
jmp 0x58c5b9
push ecx
call fcn.00697880
add esp, 4
mov dword [esp + 0x3a4], ebx
mov dword [esp + 0x3a8], ebx
mov dword [esp + 0x3ac], ebx
mov byte [esp + 0x13], bl
jmp 0x58c711
cmp si, 3
jne 0x58c711
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push 6
push 0x703764
call fcn.0060ff10
lea edx, [esp + 0x354]
push edx
call fcn.0060f170
add esp, 8
mov esi, eax
mov eax, dword [esi + 8]
mov ecx, dword [0x6ce1fc]
mov ebp, eax
mov byte [esp + 0x4f8], 0xb
cmp ecx, ebp
jae 0x58c61f
mov ebp, ecx
lea edx, [esp + 0x20]
cmp edx, esi
jne 0x58c642
push ecx
push ebp
lea ecx, [esp + 0x28]
call fcn.004140d0
push ebx
push ebx
lea ecx, [esp + 0x28]
call fcn.004140d0
jmp 0x58c6c9
cmp ebp, ebx
jbe 0x58c68f
cmp ebp, eax
jne 0x58c68f
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x58c656
mov eax, 0x6ce1f8
cmp byte [eax - 1], 0xfe
jae 0x58c68f
push 1
lea ecx, [esp + 0x24]
call fcn.004138a0
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x58c673
mov eax, 0x6ce1f8
mov dword [esp + 0x24], eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x28], ecx
mov esi, dword [esi + 0xc]
mov dword [esp + 0x2c], esi
mov cl, byte [eax - 1]
inc cl
mov byte [eax - 1], cl
jmp 0x58c6c9
push 1
push ebp
lea ecx, [esp + 0x28]
call fcn.00414210
test al, al
je 0x58c6c9
mov esi, dword [esi + 4]
cmp esi, ebx
jne 0x58c6ab
mov esi, 0x6ce1f8
mov edi, dword [esp + 0x24]
mov ecx, ebp
mov eax, ecx
push ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x24]
call fcn.004141f0
mov ecx, dword [esp + 0x354]
mov byte [esp + 0x4f8], 6
cmp ecx, ebx
je 0x58c6f7
mov al, byte [ecx - 1]
dec ecx
cmp al, bl
je 0x58c6ee
cmp al, 0xff
je 0x58c6ee
dec al
mov byte [ecx], al
jmp 0x58c6f7
push ecx
call fcn.00697880
add esp, 4
mov dword [esp + 0x354], ebx
mov dword [esp + 0x358], ebx
mov dword [esp + 0x35c], ebx
mov byte [esp + 0x13], 1
xor esi, esi
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x703784
call fcn.0060ff10
mov ecx, dword [0x71b93c]
call fcn.00620870
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x70377c
call fcn.0060ff10
mov ecx, dword [0x71b93c]
call fcn.00620870
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x703774
call fcn.0060ff10
mov ecx, dword [0x71b93c]
call fcn.00620870
mov dl, byte [esp + 0x20]
sub esp, 0x10
mov ecx, esp
mov dword [esp + 0x2c], esp
mov byte [ecx], dl
mov dword [ecx + 4], ebx
mov dword [ecx + 8], ebx
mov dword [ecx + 0xc], ebx
mov eax, dword [0x6ce1fc]
lea edx, [esp + 0x30]
push eax
push ebx
push edx
call fcn.004136a0
push ecx
mov byte [esp + 0x50c], 0xc
mov ecx, esp
mov dword [esp + 0x50], esp
push 6
push 0x70379c
call fcn.0060ff10
mov ecx, dword [0x71b93c]
mov byte [esp + 0x50c], 6
call fcn.006208f0
mov ecx, dword [0x71b93c]
call fcn.00620cd0
movsx eax, ax
sub eax, ebx
je 0x58c802
dec eax
je 0x58c7f8
dec eax
jne 0x58c3fe
mov al, byte [esp + 0x13]
mov esi, 3
cmp al, bl
jne 0x58c80c
jmp 0x58c3fe
mov esi, 2
jmp 0x58c3fe
mov esi, 1
jmp 0x58c3fe
lea ecx, [esp + 0x30]
mov byte [esp + 0x4f8], 5
call fcn.0060ffb0
mov eax, dword [esp + 0x44]
cmp eax, ebx
je 0x58c842
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x58c839
cmp al, 0xff
je 0x58c839
dec al
mov byte [ecx], al
jmp 0x58c842
push ecx
call fcn.00697880
add esp, 4
mov eax, dword [esp + 0x24]
mov dword [esp + 0x44], ebx
cmp eax, ebx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x4c], ebx
je 0x58ccd1
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x58ccc8
cmp al, 0xff
je 0x58ccc8
dec al
mov byte [ecx], al
jmp 0x58ccd1
mov al, byte [esp + 0x38]
mov byte [esp + 0x34], bl
sub al, 0x52
mov byte [esp + 0x13], bl
mov byte [esp + 0x38], al
mov edi, dword [esp + 0x34]
push ecx
lea eax, [esp + 0x504]
mov ecx, esp
mov dword [esp + 0x20], esp
push eax
call fcn.0060fe80
mov ecx, dword [0x71b93c]
call fcn.006206f0
cmp si, bx
je 0x58cb1f
mov ebp, dword [esp + 0x34]
mov eax, dword [esp + 0x38]
and ebp, 0xff
and eax, 0xff
movsx ecx, si
mov dword [esp + 0x1c], ebp
lea eax, [eax + eax*2]
fild dword [esp + 0x1c]
add eax, ecx
fmul qword [0x6d24a0]
lea edi, [eax + eax*4]
shl edi, 1
call fcn.00698624
mov byte [esp + edi + 0xf6], al
mov al, byte [0x71bb5c]
cmp al, bl
je 0x58c90f
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push 8
push 0x7101a4
call fcn.0060ff10
jmp 0x58c94a
sub esp, 0x24
lea eax, [esp + edi + 0x112]
mov edx, esp
mov dword [esp + 0x40], esp
push ebx
push 1
push eax
push edx
lea ecx, [esp + 0xd8]
call fcn.00548ea0
lea ecx, [esp + 0x74]
call fcn.0060d330
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push ecx
lea ecx, [esp + 0x58]
call fcn.0060d6b0
lea ecx, [esp + 0x1c]
call fcn.006101a0
lea ecx, [esp + 0x18]
call fcn.00610330
test ax, ax
jle 0x58cb15
cmp si, 1
je 0x58c971
cmp si, 2
jne 0x58c9d9
push ebp
lea edx, [esp + 0x338]
push str._d__
push edx
call fcn.00698355
lea edi, [esp + 0x340]
or ecx, 0xffffffff
xor eax, eax
add esp, 0xc
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 1
mov ebp, ecx
lea ecx, [esp + 0x24]
push ebp
call fcn.00414210
test al, al
je 0x58c9d0
mov edi, dword [esp + 0x24]
mov ecx, ebp
mov eax, ecx
lea esi, [esp + 0x334]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x28], ebp
mov byte [ecx + ebp], bl
mov byte [esp + 0x13], bl
jmp 0x58cb15
cmp si, 3
jne 0x58cb15
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push 6
push 0x703764
call fcn.0060ff10
lea edx, [esp + 0x374]
push edx
call fcn.0060f170
add esp, 8
mov esi, eax
mov eax, dword [esi + 8]
mov ecx, dword [0x6ce1fc]
mov ebp, eax
mov byte [esp + 0x4f8], 0xd
cmp ecx, ebp
jae 0x58ca21
mov ebp, ecx
lea edx, [esp + 0x20]
cmp edx, esi
jne 0x58ca44
push ecx
push ebp
lea ecx, [esp + 0x28]
call fcn.004140d0
push ebx
push ebx
lea ecx, [esp + 0x28]
call fcn.004140d0
jmp 0x58cacb
cmp ebp, ebx
jbe 0x58ca91
cmp ebp, eax
jne 0x58ca91
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x58ca58
mov eax, 0x6ce1f8
cmp byte [eax - 1], 0xfe
jae 0x58ca91
push 1
lea ecx, [esp + 0x24]
call fcn.004138a0
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x58ca75
mov eax, 0x6ce1f8
mov dword [esp + 0x24], eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x28], ecx
mov esi, dword [esi + 0xc]
mov dword [esp + 0x2c], esi
mov cl, byte [eax - 1]
inc cl
mov byte [eax - 1], cl
jmp 0x58cacb
push 1
push ebp
lea ecx, [esp + 0x28]
call fcn.00414210
test al, al
je 0x58cacb
mov esi, dword [esi + 4]
cmp esi, ebx
jne 0x58caad
mov esi, 0x6ce1f8
mov edi, dword [esp + 0x24]
mov ecx, ebp
mov eax, ecx
push ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x24]
call fcn.004141f0
mov eax, dword [esp + 0x374]
mov byte [esp + 0x4f8], 6
cmp eax, ebx
je 0x58cafb
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x58caf2
cmp al, 0xff
je 0x58caf2
dec al
mov byte [ecx], al
jmp 0x58cafb
push ecx
call fcn.00697880
add esp, 4
mov dword [esp + 0x374], ebx
mov dword [esp + 0x378], ebx
mov dword [esp + 0x37c], ebx
mov byte [esp + 0x13], 1
mov edi, dword [esp + 0x34]
mov ebp, dword [esp + 0x3c]
xor esi, esi
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x703794
call fcn.0060ff10
mov ecx, dword [0x71b93c]
call fcn.00620870
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x70378c
call fcn.0060ff10
mov ecx, dword [0x71b93c]
call fcn.00620870
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x703774
call fcn.0060ff10
mov ecx, dword [0x71b93c]
call fcn.00620870
mov dl, byte [esp + 0x20]
sub esp, 0x10
mov ecx, esp
mov dword [esp + 0x2c], esp
mov byte [ecx], dl
mov dword [ecx + 4], ebx
mov dword [ecx + 8], ebx
mov dword [ecx + 0xc], ebx
mov eax, dword [0x6ce1fc]
lea edx, [esp + 0x30]
push eax
push ebx
push edx
call fcn.004136a0
push ecx
mov byte [esp + 0x50c], 0xe
mov ecx, esp
mov dword [esp + 0x28], esp
push 6
push 0x70379c
call fcn.0060ff10
mov ecx, dword [0x71b93c]
mov byte [esp + 0x50c], 6
call fcn.006208f0
mov ecx, dword [0x71b93c]
call fcn.00620cd0
movsx eax, ax
sub eax, ebx
je 0x58cc31
dec eax
je 0x58cc04
dec eax
jne 0x58c88f
mov al, byte [esp + 0x13]
mov esi, 3
cmp al, bl
jne 0x58cc62
jmp 0x58c88f
and edi, 0xff
sub edi, 0xa
jns 0x58cc1d
mov byte [esp + 0x34], bl
mov esi, 2
jmp 0x58c88b
mov al, byte [esp + 0x34]
mov esi, 2
add al, 0xf6
mov byte [esp + 0x34], al
jmp 0x58c88b
and edi, 0xff
add edi, 0xa
cmp edi, 0x64
jle 0x58cc4e
mov byte [esp + 0x34], 0x64
mov esi, 1
jmp 0x58c88b
mov al, byte [esp + 0x34]
mov esi, 1
add al, 0xa
mov byte [esp + 0x34], al
jmp 0x58c88b
mov eax, dword [ebp]
mov ecx, ebp
call dword [eax + 0x1c]
lea ecx, [esp + 0x30]
mov byte [esp + 0x4f8], 5
call fcn.0060ffb0
mov eax, dword [esp + 0x44]
cmp eax, ebx
je 0x58cca0
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x58cc97
cmp al, 0xff
je 0x58cc97
dec al
mov byte [ecx], al
jmp 0x58cca0
push ecx
call fcn.00697880
add esp, 4
mov eax, dword [esp + 0x24]
mov dword [esp + 0x44], ebx
cmp eax, ebx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x4c], ebx
je 0x58ccd1
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x58ccc8
cmp al, 0xff
je 0x58ccc8
dec al
mov byte [ecx], al
jmp 0x58ccd1
push ecx
call fcn.00697880
add esp, 4
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], ebx
mov dword [esp + 0x2c], ebx
jmp 0x58e372
mov al, byte [esp + 0x38]
sub al, 0x52
mov byte [esp + 0x38], al
push ecx
lea edx, [esp + 0x504]
mov ecx, esp
mov dword [esp + 0x18], esp
push edx
call fcn.0060fe80
mov ecx, dword [0x71b93c]
call fcn.006206f0
cmp si, bx
je 0x58d53e
cmp byte [0x71bb5c], bl
je 0x58cd31
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 8
push 0x7101a4
call fcn.0060ff10
jmp 0x58cd86
cmp si, 7
je 0x58cd8f
mov eax, dword [esp + 0x38]
sub esp, 0x24
and eax, 0xff
mov ecx, esp
movsx edx, si
lea eax, [eax + eax*2]
mov dword [esp + 0x38], esp
add eax, edx
push ebx
push 1
lea eax, [eax + eax*4]
lea edx, [esp + eax*2 + 0x1f6]
push edx
push ecx
lea ecx, [esp + 0xd8]
call fcn.00548ea0
lea ecx, [esp + 0x74]
call fcn.0060d330
push ecx
lea ecx, [esp + 0x54]
mov eax, esp
mov dword [esp + 0x18], esp
push eax
call fcn.0060d6b0
lea ecx, [esp + 0x1c]
call fcn.006101a0
lea ecx, [esp + 0x18]
call fcn.00610330
test ax, ax
jle case.default.0x58cdae
movsx eax, si
dec eax
cmp eax, 6
ja case.default.0x58cdae
jmp dword [eax*4 + 0x58ee98]
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x71019c
call fcn.0060ff10
lea ecx, [esp + 0x3b4]
push ecx
call fcn.0060f170
add esp, 8
mov esi, eax
mov eax, dword [esi + 8]
mov ecx, dword [0x6ce1fc]
mov ebp, eax
mov byte [esp + 0x4f8], 0xf
cmp ecx, ebp
jae 0x58cdf3
mov ebp, ecx
lea edx, [esp + 0x20]
cmp edx, esi
jne 0x58ce16
push ecx
push ebp
lea ecx, [esp + 0x28]
call fcn.004140d0
push ebx
push ebx
lea ecx, [esp + 0x28]
call fcn.004140d0
jmp 0x58ce9d
cmp ebp, ebx
jbe 0x58ce63
cmp ebp, eax
jne 0x58ce63
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x58ce2a
mov eax, 0x6ce1f8
cmp byte [eax - 1], 0xfe
jae 0x58ce63
push 1
lea ecx, [esp + 0x24]
call fcn.004138a0
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x58ce47
mov eax, 0x6ce1f8
mov dword [esp + 0x24], eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x28], ecx
mov esi, dword [esi + 0xc]
mov dword [esp + 0x2c], esi
mov cl, byte [eax - 1]
inc cl
mov byte [eax - 1], cl
jmp 0x58ce9d
push 1
push ebp
lea ecx, [esp + 0x28]
call fcn.00414210
test al, al
je 0x58ce9d
mov esi, dword [esi + 4]
cmp esi, ebx
jne 0x58ce7f
mov esi, 0x6ce1f8
mov edi, dword [esp + 0x24]
mov ecx, ebp
mov eax, ecx
push ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x24]
call fcn.004141f0
mov eax, dword [esp + 0x3b4]
mov byte [esp + 0x4f8], 6
cmp eax, ebx
je 0x58cecd
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x58cec4
cmp al, 0xff
je 0x58cec4
dec al
mov byte [ecx], al
jmp 0x58cecd
push ecx
call fcn.00697880
add esp, 4
mov ebp, dword [esp + 0x3c]
mov dword [esp + 0x3b4], ebx
mov dword [esp + 0x3b8], ebx
mov dword [esp + 0x3bc], ebx
jmp case.default.0x58cdae
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x710194
call fcn.0060ff10
lea ecx, [esp + 0x394]
push ecx
call fcn.0060f170
add esp, 8
mov esi, eax
mov eax, dword [esi + 8]
mov ecx, dword [0x6ce1fc]
mov ebp, eax
mov byte [esp + 0x4f8], 0x10
cmp ecx, ebp
jae 0x58cf29
mov ebp, ecx
lea edx, [esp + 0x20]
cmp edx, esi
jne 0x58cf4c
push ecx
push ebp
lea ecx, [esp + 0x28]
call fcn.004140d0
push ebx
push ebx
lea ecx, [esp + 0x28]
call fcn.004140d0
jmp 0x58cfd3
cmp ebp, ebx
jbe 0x58cf99
cmp ebp, eax
jne 0x58cf99
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x58cf60
mov eax, 0x6ce1f8
cmp byte [eax - 1], 0xfe
jae 0x58cf99
push 1
lea ecx, [esp + 0x24]
call fcn.004138a0
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x58cf7d
mov eax, 0x6ce1f8
mov dword [esp + 0x24], eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x28], ecx
mov esi, dword [esi + 0xc]
mov dword [esp + 0x2c], esi
mov cl, byte [eax - 1]
inc cl
mov byte [eax - 1], cl
jmp 0x58cfd3
push 1
push ebp
lea ecx, [esp + 0x28]
call fcn.00414210
test al, al
je 0x58cfd3
mov esi, dword [esi + 4]
cmp esi, ebx
jne 0x58cfb5
mov esi, 0x6ce1f8
mov edi, dword [esp + 0x24]
mov ecx, ebp
mov eax, ecx
push ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x24]
call fcn.004141f0
mov eax, dword [esp + 0x394]
mov byte [esp + 0x4f8], 6
cmp eax, ebx
je 0x58d003
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x58cffa
cmp al, 0xff
je 0x58cffa
dec al
mov byte [ecx], al
jmp 0x58d003
push ecx
call fcn.00697880
add esp, 4
mov ebp, dword [esp + 0x3c]
mov dword [esp + 0x394], ebx
mov dword [esp + 0x398], ebx
mov dword [esp + 0x39c], ebx
jmp case.default.0x58cdae
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x71018c
call fcn.0060ff10
lea ecx, [esp + 0x364]
push ecx
call fcn.0060f170
add esp, 8
mov esi, eax
mov eax, dword [esi + 8]
mov ecx, dword [0x6ce1fc]
mov ebp, eax
mov byte [esp + 0x4f8], 0x11
cmp ecx, ebp
jae 0x58d05f
mov ebp, ecx
lea edx, [esp + 0x20]
cmp edx, esi
jne 0x58d082
push ecx
push ebp
lea ecx, [esp + 0x28]
call fcn.004140d0
push ebx
push ebx
lea ecx, [esp + 0x28]
call fcn.004140d0
jmp 0x58d109
cmp ebp, ebx
jbe 0x58d0cf
cmp ebp, eax
jne 0x58d0cf
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x58d096
mov eax, 0x6ce1f8
cmp byte [eax - 1], 0xfe
jae 0x58d0cf
push 1
lea ecx, [esp + 0x24]
call fcn.004138a0
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x58d0b3
mov eax, 0x6ce1f8
mov dword [esp + 0x24], eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x28], ecx
mov esi, dword [esi + 0xc]
mov dword [esp + 0x2c], esi
mov cl, byte [eax - 1]
inc cl
mov byte [eax - 1], cl
jmp 0x58d109
push 1
push ebp
lea ecx, [esp + 0x28]
call fcn.00414210
test al, al
je 0x58d109
mov esi, dword [esi + 4]
cmp esi, ebx
jne 0x58d0eb
mov esi, 0x6ce1f8
mov edi, dword [esp + 0x24]
mov ecx, ebp
mov eax, ecx
push ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x24]
call fcn.004141f0
mov eax, dword [esp + 0x364]
mov byte [esp + 0x4f8], 6
cmp eax, ebx
je 0x58d139
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x58d130
cmp al, 0xff
je 0x58d130
dec al
mov byte [ecx], al
jmp 0x58d139
push ecx
call fcn.00697880
add esp, 4
mov ebp, dword [esp + 0x3c]
mov dword [esp + 0x364], ebx
mov dword [esp + 0x368], ebx
mov dword [esp + 0x36c], ebx
jmp case.default.0x58cdae
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x710184
call fcn.0060ff10
lea ecx, [esp + 0x384]
push ecx
call fcn.0060f170
add esp, 8
mov esi, eax
mov eax, dword [esi + 8]
mov ecx, dword [0x6ce1fc]
mov ebp, eax
mov byte [esp + 0x4f8], 0x12
cmp ecx, ebp
jae 0x58d195
mov ebp, ecx
lea edx, [esp + 0x20]
cmp edx, esi
jne 0x58d1b8
push ecx
push ebp
lea ecx, [esp + 0x28]
call fcn.004140d0
push ebx
push ebx
lea ecx, [esp + 0x28]
call fcn.004140d0
jmp 0x58d23f
cmp ebp, ebx
jbe 0x58d205
cmp ebp, eax
jne 0x58d205
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x58d1cc
mov eax, 0x6ce1f8
cmp byte [eax - 1], 0xfe
jae 0x58d205
push 1
lea ecx, [esp + 0x24]
call fcn.004138a0
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x58d1e9
mov eax, 0x6ce1f8
mov dword [esp + 0x24], eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x28], ecx
mov esi, dword [esi + 0xc]
mov dword [esp + 0x2c], esi
mov cl, byte [eax - 1]
inc cl
mov byte [eax - 1], cl
jmp 0x58d23f
push 1
push ebp
lea ecx, [esp + 0x28]
call fcn.00414210
test al, al
je 0x58d23f
mov esi, dword [esi + 4]
cmp esi, ebx
jne 0x58d221
mov esi, 0x6ce1f8
mov edi, dword [esp + 0x24]
mov ecx, ebp
mov eax, ecx
push ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x24]
call fcn.004141f0
mov eax, dword [esp + 0x384]
mov byte [esp + 0x4f8], 6
cmp eax, ebx
je 0x58d26f
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x58d266
cmp al, 0xff
je 0x58d266
dec al
mov byte [ecx], al
jmp 0x58d26f
push ecx
call fcn.00697880
add esp, 4
mov ebp, dword [esp + 0x3c]
mov dword [esp + 0x384], ebx
mov dword [esp + 0x388], ebx
mov dword [esp + 0x38c], ebx
jmp case.default.0x58cdae
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x71017c
call fcn.0060ff10
lea ecx, [esp + 0x344]
push ecx
call fcn.0060f170
add esp, 8
mov esi, eax
mov eax, dword [esi + 8]
mov ecx, dword [0x6ce1fc]
mov ebp, eax
mov byte [esp + 0x4f8], 0x13
cmp ecx, ebp
jae 0x58d2cb
mov ebp, ecx
lea edx, [esp + 0x20]
cmp edx, esi
jne 0x58d2ee
push ecx
push ebp
lea ecx, [esp + 0x28]
call fcn.004140d0
push ebx
push ebx
lea ecx, [esp + 0x28]
call fcn.004140d0
jmp 0x58d375
cmp ebp, ebx
jbe 0x58d33b
cmp ebp, eax
jne 0x58d33b
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x58d302
mov eax, 0x6ce1f8
cmp byte [eax - 1], 0xfe
jae 0x58d33b
push 1
lea ecx, [esp + 0x24]
call fcn.004138a0
mov eax, dword [esi + 4]
cmp eax, ebx
jne 0x58d31f
mov eax, 0x6ce1f8
mov dword [esp + 0x24], eax
mov ecx, dword [esi + 8]
mov dword [esp + 0x28], ecx
mov esi, dword [esi + 0xc]
mov dword [esp + 0x2c], esi
mov cl, byte [eax - 1]
inc cl
mov byte [eax - 1], cl
jmp 0x58d375
push 1
push ebp
lea ecx, [esp + 0x28]
call fcn.00414210
test al, al
je 0x58d375
mov esi, dword [esi + 4]
cmp esi, ebx
jne 0x58d357
mov esi, 0x6ce1f8
mov edi, dword [esp + 0x24]
mov ecx, ebp
mov eax, ecx
push ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x24]
call fcn.004141f0
mov eax, dword [esp + 0x344]
mov byte [esp + 0x4f8], 6
cmp eax, ebx
je 0x58d3a5
lea ecx, [eax - 1]
mov al, byte [eax - 1]
cmp al, bl
je 0x58d39c
cmp al, 0xff
je 0x58d39c
dec al
mov byte [ecx], al
jmp 0x58d3a5
push ecx
call fcn.00697880
add esp, 4
mov ebp, dword [esp + 0x3c]
mov dword [esp + 0x344], ebx
mov dword [esp + 0x348], ebx
mov dword [esp + 0x34c], ebx
jmp case.default.0x58cdae
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x710174
call fcn.0060ff10
lea ecx, [esp + 0x424]
push ecx
call fcn.0060f170
add esp, 8
mov esi, eax
mov ebp, dword [0x6ce1fc]
mov ecx, esi
mov byte [esp + 0x4f8], 0x14
call fcn.0064dd30
mov ecx, esi
call fcn.0064dd30
mov edi, eax
cmp ebp, edi
jae 0x58d40c
mov edi, ebp
lea edx, [esp + 0x20]
cmp edx, esi
jne 0x58d434
mov eax, dword [0x6ce1fc]
lea ecx, [esp + 0x20]
push eax
push edi
call fcn.004140d0
push ebx
push ebx
lea ecx, [esp + 0x28]
call fcn.004140d0
jmp 0x58d4d9
cmp edi, ebx
jbe 0x58d4a9
mov ecx, esi
call fcn.0064dd30
cmp edi, eax
jne 0x58d4a9
mov ecx, esi
call fcn.004f1770
push eax
lea ecx, [esp + 0x24]
call fcn.004c22b0
cmp byte [eax], 0xfe
jae 0x58d4a9
lea ecx, [esp + 0x20]
push esi
push ecx
call fcn.004c7a00
add esp, 8
test al, al
je 0x58d4a9
push 1
lea ecx, [esp + 0x24]
call fcn.004138a0
mov ecx, esi
call fcn.004f1770
mov ecx, esi
mov dword [esp + 0x24], eax
call fcn.0064dd30
mov ecx, esi
mov dword [esp + 0x28], eax
call fcn.004c79f0
mov edx, dword [esp + 0x24]
lea ecx, [esp + 0x20]
push edx
mov dword [esp + 0x30], eax
call fcn.004c22b0
inc byte [eax]
jmp 0x58d4d9
push 1
push edi
lea ecx, [esp + 0x28]
call fcn.00414210
test al, al
je 0x58d4d9
push edi
mov ecx, esi
call fcn.004f1770
push eax
mov eax, dword [esp + 0x2c]
push eax
call fcn.004c1f10
add esp, 0xc
lea ecx, [esp + 0x20]
push edi
call fcn.004141f0
lea ecx, [esp + 0x420]
mov byte [esp + 0x4f8], 6
call fcn.004131d0
mov ebp, dword [esp + 0x3c]
jmp case.default.0x58cdae
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x703764
call fcn.0060ff10
lea ecx, [esp + 0x404]
push ecx
call fcn.0060f170
add esp, 8
push eax
lea ecx, [esp + 0x24]
mov byte [esp + 0x4fc], 0x15
call fcn.0044fd20
lea ecx, [esp + 0x400]
mov byte [esp + 0x4f8], 6
call fcn.004131d0
xor esi, esi
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x71019c
call fcn.0060ff10
mov ecx, dword [0x71b93c]
call fcn.00620870
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x710194
call fcn.0060ff10
mov ecx, dword [0x71b93c]
call fcn.00620870
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x71018c
call fcn.0060ff10
mov ecx, dword [0x71b93c]
call fcn.00620870
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x710184
call fcn.0060ff10
mov ecx, dword [0x71b93c]
call fcn.00620870
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x71017c
call fcn.0060ff10
mov ecx, dword [0x71b93c]
call fcn.00620870
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x710174
call fcn.0060ff10
mov ecx, dword [0x71b93c]
call fcn.00620870
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x70377c
call fcn.0060ff10
mov ecx, dword [0x71b93c]
call fcn.00620870
sub esp, 0x10
lea edx, [esp + 0x30]
mov ecx, esp
mov dword [esp + 0x24], esp
push edx
call fcn.00412ff0
push ecx
mov byte [esp + 0x50c], 0x16
mov ecx, esp
mov dword [esp + 0x30], esp
push 6
push 0x70379c
call fcn.0060ff10
mov ecx, dword [0x71b93c]
mov byte [esp + 0x50c], 6
call fcn.006208f0
mov ecx, dword [0x71b93c]
call fcn.00620cd0
movsx eax, ax
cmp eax, 6
ja case.default.0x58d676
jmp dword [eax*4 + 0x58eeb4]
mov esi, 1
jmp case.default.0x58d676
mov esi, 2
jmp case.default.0x58d676
mov esi, 3
jmp case.default.0x58d676
mov esi, 4
jmp case.default.0x58d676
mov esi, 5
jmp case.default.0x58d676
mov esi, 6
jmp case.default.0x58d676
mov al, byte [esp + 0x38]
mov byte [esp + 0x13], bl
sub al, 0x5c
mov byte [esp + 0x38], al
mov edi, dword [esp + 0x38]
push ecx
lea edx, [esp + 0x504]
mov ecx, esp
mov dword [esp + 0x18], esp
push edx
call fcn.0060fe80
mov ecx, dword [0x71b93c]
call fcn.006206f0
cmp si, bx
je 0x58d87b
cmp byte [0x71bb5c], bl
je 0x58d710
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 8
push 0x7101a4
call fcn.0060ff10
jmp 0x58d75d
mov eax, edi
sub esp, 0x24
and eax, 0xff
mov ecx, esp
movsx edx, si
lea eax, [eax + eax*2]
mov dword [esp + 0x38], esp
add eax, edx
push ebx
push 1
lea eax, [eax + eax*4]
lea edx, [esp + eax*2 + 0x11a]
push edx
push ecx
lea ecx, [esp + 0xd8]
call fcn.00548ea0
lea ecx, [esp + 0x74]
call fcn.0060d330
push ecx
lea ecx, [esp + 0x54]
mov eax, esp
mov dword [esp + 0x18], esp
push eax
call fcn.0060d6b0
lea ecx, [esp + 0x1c]
call fcn.006101a0
lea ecx, [esp + 0x18]
call fcn.00610330
test ax, ax
jle 0x58d879
cmp si, 1
jne 0x58d7d0
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x703784
call fcn.0060ff10
lea ecx, [esp + 0x3d4]
push ecx
call fcn.0060f170
add esp, 8
push eax
lea ecx, [esp + 0x24]
mov byte [esp + 0x4fc], 0x17
call fcn.0044fd20
lea ecx, [esp + 0x3d0]
mov byte [esp + 0x4f8], 6
call fcn.004131d0
mov byte [esp + 0x13], bl
jmp 0x58d879
cmp si, 2
jne 0x58d825
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x70377c
call fcn.0060ff10
lea edx, [esp + 0x444]
push edx
call fcn.0060f170
add esp, 8
push eax
lea ecx, [esp + 0x24]
mov byte [esp + 0x4fc], 0x18
call fcn.0044fd20
lea ecx, [esp + 0x440]
mov byte [esp + 0x4f8], 6
call fcn.004131d0
mov byte [esp + 0x13], bl
jmp 0x58d879
cmp si, 3
jne 0x58d879
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x703764
call fcn.0060ff10
lea eax, [esp + 0x464]
push eax
call fcn.0060f170
add esp, 8
push eax
lea ecx, [esp + 0x24]
mov byte [esp + 0x4fc], 0x19
call fcn.0044fd20
lea ecx, [esp + 0x460]
mov byte [esp + 0x4f8], 6
call fcn.004131d0
mov byte [esp + 0x13], 1
xor esi, esi
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x703784
call fcn.0060ff10
mov ecx, dword [0x71b93c]
call fcn.00620870
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x70377c
call fcn.0060ff10
mov ecx, dword [0x71b93c]
call fcn.00620870
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x703774
call fcn.0060ff10
mov ecx, dword [0x71b93c]
call fcn.00620870
sub esp, 0x10
lea edx, [esp + 0x30]
mov ecx, esp
mov dword [esp + 0x24], esp
push edx
call fcn.00412ff0
push ecx
mov byte [esp + 0x50c], 0x1a
mov ecx, esp
mov dword [esp + 0x30], esp
push 6
push 0x70379c
call fcn.0060ff10
mov ecx, dword [0x71b93c]
mov byte [esp + 0x50c], 6
call fcn.006208f0
mov ecx, dword [0x71b93c]
call fcn.00620cd0
movsx eax, ax
sub eax, ebx
je 0x58d958
dec eax
je 0x58d94e
dec eax
jne 0x58d6cb
mov al, byte [esp + 0x13]
mov esi, 3
cmp al, bl
jne case.0x58c39e.92
jmp 0x58d6cb
mov esi, 2
jmp 0x58d6cb
mov esi, 1
jmp 0x58d6cb
push ebx
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push 6
push 0x7037f4
call fcn.0060ff10
push ecx
mov byte [esp + 0x508], 0x1b
mov ecx, esp
mov dword [esp + 0x2c], esp
push 6
push 0x71016c
call fcn.0060ff10
mov ecx, 0x71b930
mov byte [esp + 0x508], 6
call fcn.006115e0
push ecx
lea eax, [esp + 0x504]
mov ecx, esp
mov dword [esp + 0x18], esp
push eax
call fcn.0060fe80
mov ecx, dword [0x71b93c]
call fcn.006206f0
cmp si, bx
je 0x58da45
cmp byte [0x71bb5c], bl
je 0x58d9e6
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 8
push 0x7101a4
call fcn.0060ff10
jmp 0x58da2c
lea esi, [esp + 0x152]
mov edi, 0xc
sub esp, 0x24
mov ecx, esp
mov dword [esp + 0x38], esp
push ebx
push 1
push esi
push ecx
lea ecx, [esp + 0xd8]
call fcn.00548ea0
lea ecx, [esp + 0x74]
call fcn.0060d330
add esi, 0xa
dec edi
jne 0x58d9f2
push ecx
lea ecx, [esp + 0x54]
mov edx, esp
mov dword [esp + 0x18], esp
push edx
call fcn.0060d6b0
lea ecx, [esp + 0x1c]
call fcn.006101a0
lea ecx, [esp + 0x18]
call fcn.00610330
test ax, ax
jg 0x58daae
xor esi, esi
push 1
push ecx
lea eax, [esp + 0x508]
mov ecx, esp
mov dword [esp + 0x1c], esp
push eax
call fcn.0060fe80
mov ecx, dword [0x71b93c]
call fcn.00620870
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x703774
call fcn.0060ff10
mov ecx, dword [0x71b93c]
call fcn.00620870
mov ecx, dword [0x71b93c]
call fcn.00620cd0
movsx eax, ax
sub eax, ebx
je 0x58daa4
dec eax
je case.0x58c39e.92
jmp 0x58d9a5
mov esi, 1
jmp 0x58d9a5
mov edx, dword [ebp]
mov ecx, ebp
call dword [edx + 0x1c]
push ebx
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push 6
push 0x7037f4
call fcn.0060ff10
push ecx
mov byte [esp + 0x508], 0x1c
mov ecx, esp
mov dword [esp + 0x2c], esp
push 6
push 0x710164
call fcn.0060ff10
mov ecx, 0x71b930
mov byte [esp + 0x508], 6
call fcn.006115e0
jmp case.0x58c39e.92
cmp byte [0x71bb5c], bl
je 0x58db1b
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 8
push 0x710158
call fcn.0060ff10
jmp 0x58db56
sub esp, 0x24
lea ecx, [esp + 0xac]
mov eax, esp
mov dword [esp + 0x38], esp
push ebx
push 1
push ecx
push eax
lea ecx, [esp + 0xd8]
call fcn.00548ea0
lea ecx, [esp + 0x74]
call fcn.0060d330
push ecx
lea ecx, [esp + 0x54]
mov edx, esp
mov dword [esp + 0x18], esp
push edx
call fcn.0060d6b0
lea ecx, [esp + 0x1c]
call fcn.006101a0
lea ecx, [esp + 0x18]
call fcn.00610330
test ax, ax
jle 0x58df0c
push 4
lea ecx, [esp + 0x1c]
call fcn.00610190
mov dl, al
push 5
and edx, 0xff
lea ecx, [esp + 0x1c]
shl edx, 8
mov dword [esp + 0x20], edx
call fcn.00610190
mov ecx, dword [esp + 0x1c]
and eax, 0xff
add eax, ecx
cmp eax, 0x100
jg 0x58dbc6
je 0x58dbbf
sub eax, ebx
je 0x58dbb8
dec eax
jne 0x58dbc6
mov byte [esp + 0x34], 0x17
jmp 0x58dbcb
mov byte [esp + 0x34], 0x18
jmp 0x58dbcb
mov byte [esp + 0x34], 0x19
jmp 0x58dbcb
mov byte [esp + 0x34], 0x16
mov edx, dword [esp + 0x34]
lea ecx, [esp + 0x30]
push edx
push 5
call fcn.006102b0
push ecx
lea eax, [esp + 0x34]
mov ecx, esp
mov dword [esp + 0x18], esp
push eax
call fcn.0060fe80
lea ecx, [esp + 0x484]
push ecx
call fcn.0060f170
add esp, 8
push eax
lea ecx, [esp + 0x24]
mov byte [esp + 0x4fc], 0x1d
call fcn.0044fd20
lea ecx, [esp + 0x480]
mov byte [esp + 0x4f8], 6
call fcn.004131d0
mov byte [esp + 0x13], bl
push ecx
lea edx, [esp + 0x504]
mov ecx, esp
mov dword [esp + 0x18], esp
push edx
call fcn.0060fe80
mov ecx, dword [0x71b93c]
call fcn.006206f0
cmp si, bx
je 0x58de25
movsx eax, si
dec eax
je 0x58dc7c
dec eax
je 0x58dc6a
dec eax
jne 0x58dc93
mov byte [esp + 0x1cd], bl
mov byte [esp + 0x1cf], bl
jmp 0x58dc93
mov al, byte [esp + 0x34]
cmp al, 0x16
jbe 0x58dc93
dec al
mov byte [esp + 0x34], al
sub al, 0x17
jmp 0x58dc8c
mov al, byte [esp + 0x34]
cmp al, 0x19
jae 0x58dc93
inc al
mov byte [esp + 0x34], al
sub al, 0x15
mov byte [esp + 0x1cf], al
cmp byte [0x71bb5c], bl
je 0x58dcb0
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 8
push 0x710158
call fcn.0060ff10
jmp 0x58dceb
sub esp, 0x24
lea ecx, [esp + 0x1ee]
mov eax, esp
mov dword [esp + 0x38], esp
push ebx
push 1
push ecx
push eax
lea ecx, [esp + 0xd8]
call fcn.00548ea0
lea ecx, [esp + 0x74]
call fcn.0060d330
push ecx
lea ecx, [esp + 0x54]
mov edx, esp
mov dword [esp + 0x18], esp
push edx
call fcn.0060d6b0
lea ecx, [esp + 0x1c]
call fcn.006101a0
lea ecx, [esp + 0x18]
call fcn.00610330
test ax, ax
jle 0x58de23
cmp si, 1
jne 0x58dd6c
mov eax, dword [esp + 0x34]
lea ecx, [esp + 0x30]
push eax
push 5
call fcn.006102b0
push ecx
lea edx, [esp + 0x34]
mov ecx, esp
mov dword [esp + 0x18], esp
push edx
call fcn.0060fe80
lea eax, [esp + 0x4a4]
push eax
call fcn.0060f170
add esp, 8
push eax
lea ecx, [esp + 0x24]
mov byte [esp + 0x4fc], 0x1f
call fcn.0044fd20
lea ecx, [esp + 0x4a0]
mov byte [esp + 0x4f8], 6
call fcn.004131d0
mov byte [esp + 0x13], bl
jmp 0x58de23
cmp si, 2
jne 0x58ddcf
mov ecx, dword [esp + 0x34]
push ecx
push 5
lea ecx, [esp + 0x38]
call fcn.006102b0
push ecx
lea edx, [esp + 0x34]
mov ecx, esp
mov dword [esp + 0x18], esp
push edx
call fcn.0060fe80
lea eax, [esp + 0x4c4]
push eax
call fcn.0060f170
add esp, 8
push eax
lea ecx, [esp + 0x24]
mov byte [esp + 0x4fc], 0x20
call fcn.0044fd20
lea ecx, [esp + 0x4c0]
mov byte [esp + 0x4f8], 6
call fcn.004131d0
mov byte [esp + 0x13], bl
jmp 0x58de23
cmp si, 3
jne 0x58de23
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x703764
call fcn.0060ff10
lea ecx, [esp + 0x4e4]
push ecx
call fcn.0060f170
add esp, 8
push eax
lea ecx, [esp + 0x24]
mov byte [esp + 0x4fc], 0x21
call fcn.0044fd20
lea ecx, [esp + 0x4e0]
mov byte [esp + 0x4f8], 6
call fcn.004131d0
mov byte [esp + 0x13], 1
xor esi, esi
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x7051c0
call fcn.0060ff10
mov ecx, dword [0x71b93c]
call fcn.00620870
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x7051c8
call fcn.0060ff10
mov ecx, dword [0x71b93c]
call fcn.00620870
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x703774
call fcn.0060ff10
mov ecx, dword [0x71b93c]
call fcn.00620870
sub esp, 0x10
lea edx, [esp + 0x30]
mov ecx, esp
mov dword [esp + 0x24], esp
push edx
call fcn.00412ff0
push ecx
mov byte [esp + 0x50c], 0x22
mov ecx, esp
mov dword [esp + 0x30], esp
push 6
push 0x70db34
call fcn.0060ff10
mov ecx, dword [0x71b93c]
mov byte [esp + 0x50c], 6
call fcn.006208f0
mov ecx, dword [0x71b93c]
call fcn.00620cd0
movsx eax, ax
sub eax, ebx
je 0x58df02
dec eax
je 0x58def8
dec eax
jne 0x58dc26
mov al, byte [esp + 0x13]
mov esi, 3
cmp al, bl
jne case.0x58d676.6
jmp 0x58dc26
mov esi, 2
jmp 0x58dc26
mov esi, 1
jmp 0x58dc26
push ebx
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push 6
push 0x7037f4
call fcn.0060ff10
push ecx
mov byte [esp + 0x508], 0x1e
mov ecx, esp
mov dword [esp + 0x2c], esp
push 6
push 0x703840
call fcn.0060ff10
mov ecx, 0x71b930
mov byte [esp + 0x508], 6
call fcn.006115e0
lea ecx, [esp + 0x30]
mov byte [esp + 0x4f8], 5
call fcn.0060ffb0
lea ecx, [esp + 0x40]
mov byte [esp + 0x4f8], 4
call fcn.004131d0
lea ecx, [esp + 0x20]
mov byte [esp + 0x4f8], 3
call fcn.004131d0
lea ecx, [esp + 0xa4]
mov byte [esp + 0x4f8], 2
call fcn.00548470
lea ecx, [esp + 0x18]
mov byte [esp + 0x4f8], 1
call fcn.0060ffb0
lea ecx, [esp + 0x50]
mov byte [esp + 0x4f8], bl
call fcn.0060d280
lea ecx, [esp + 0x500]
mov dword [esp + 0x4f8], 0xffffffff
call fcn.0060ffb0
xor ax, ax
jmp 0x58e3c2
push ecx
lea edx, [esp + 0x504]
mov ecx, esp
mov dword [esp + 0x18], esp
push edx
call fcn.0060fe80
mov ecx, dword [0x71b93c]
call fcn.006206f0
cmp si, bx
je 0x58e0f8
cmp byte [0x71bb5c], bl
je 0x58e01b
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 8
push 0x710158
call fcn.0060ff10
jmp 0x58e056
sub esp, 0x24
lea ecx, [esp + 0xe8]
mov eax, esp
mov dword [esp + 0x38], esp
push ebx
push 1
push ecx
push eax
lea ecx, [esp + 0xd8]
call fcn.00548ea0
lea ecx, [esp + 0x74]
call fcn.0060d330
push ecx
lea ecx, [esp + 0x54]
mov edx, esp
mov dword [esp + 0x18], esp
push edx
call fcn.0060d6b0
lea ecx, [esp + 0x1c]
call fcn.006101a0
lea ecx, [esp + 0x18]
call fcn.00610330
test ax, ax
je 0x58e160
cmp byte [0x71bb5c], bl
je 0x58e08e
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 8
push 0x710158
call fcn.0060ff10
jmp 0x58e0c9
sub esp, 0x24
lea ecx, [esp + 0xf2]
mov eax, esp
mov dword [esp + 0x38], esp
push ebx
push 1
push ecx
push eax
lea ecx, [esp + 0xd8]
call fcn.00548ea0
lea ecx, [esp + 0x74]
call fcn.0060d330
push ecx
lea ecx, [esp + 0x54]
mov edx, esp
mov dword [esp + 0x18], esp
push edx
call fcn.0060d6b0
lea ecx, [esp + 0x1c]
call fcn.006101a0
lea ecx, [esp + 0x18]
call fcn.00610330
test ax, ax
je 0x58e22a
lea ecx, [esp + 0x18]
call fcn.00610330
test ax, ax
jg 0x58e2f4
xor esi, esi
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x70d99c
call fcn.0060ff10
mov ecx, dword [0x71b93c]
call fcn.00620870
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x703774
call fcn.0060ff10
mov ecx, dword [0x71b93c]
call fcn.00620870
mov ecx, dword [0x71b93c]
call fcn.00620cd0
movsx eax, ax
sub eax, ebx
je 0x58e156
dec eax
je 0x58ec35
jmp case.0x58c39e.88
mov esi, 1
jmp case.0x58c39e.88
push ebx
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push 6
push 0x7037f4
call fcn.0060ff10
push ecx
mov byte [esp + 0x508], 0x23
mov ecx, esp
mov dword [esp + 0x2c], esp
push 6
push 0x703840
call fcn.0060ff10
mov ecx, 0x71b930
mov byte [esp + 0x508], 6
call fcn.006115e0
lea ecx, [esp + 0x30]
mov byte [esp + 0x4f8], 5
call fcn.0060ffb0
lea ecx, [esp + 0x40]
mov byte [esp + 0x4f8], 4
call fcn.004131d0
lea ecx, [esp + 0x20]
mov byte [esp + 0x4f8], 3
call fcn.004131d0
lea ecx, [esp + 0xa4]
mov byte [esp + 0x4f8], 2
call fcn.00548470
lea ecx, [esp + 0x18]
mov byte [esp + 0x4f8], 1
call fcn.0060ffb0
lea ecx, [esp + 0x50]
mov byte [esp + 0x4f8], bl
call fcn.0060d280
lea ecx, [esp + 0x500]
mov dword [esp + 0x4f8], 0xffffffff
call fcn.0060ffb0
xor ax, ax
jmp 0x58e3c2
push ebx
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push 6
push 0x7037f4
call fcn.0060ff10
push ecx
mov byte [esp + 0x508], 0x24
mov ecx, esp
mov dword [esp + 0x2c], esp
push 6
push 0x703840
call fcn.0060ff10
mov ecx, 0x71b930
mov byte [esp + 0x508], 6
call fcn.006115e0
lea ecx, [esp + 0x30]
mov byte [esp + 0x4f8], 5
call fcn.0060ffb0
lea ecx, [esp + 0x40]
mov byte [esp + 0x4f8], 4
call fcn.004131d0
lea ecx, [esp + 0x20]
mov byte [esp + 0x4f8], 3
call fcn.004131d0
lea ecx, [esp + 0xa4]
mov byte [esp + 0x4f8], 2
call fcn.00548470
lea ecx, [esp + 0x18]
mov byte [esp + 0x4f8], 1
call fcn.0060ffb0
lea ecx, [esp + 0x50]
mov byte [esp + 0x4f8], bl
call fcn.0060d280
lea ecx, [esp + 0x500]
mov dword [esp + 0x4f8], 0xffffffff
call fcn.0060ffb0
xor ax, ax
jmp 0x58e3c2
push ebx
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push 6
push 0x703420
call fcn.0060ff10
push ecx
mov byte [esp + 0x508], 0x25
mov ecx, esp
mov dword [esp + 0x2c], esp
push 6
push 0x70c07c
call fcn.0060ff10
mov ecx, 0x71b930
mov byte [esp + 0x508], 6
call fcn.006115e0
mov eax, dword [ebp]
mov ecx, ebp
call dword [eax + 0x1c]
lea ecx, [esp + 0x30]
mov byte [esp + 0x4f8], 5
call fcn.0060ffb0
lea ecx, [esp + 0x40]
mov byte [esp + 0x4f8], 4
call fcn.004131d0
lea ecx, [esp + 0x20]
mov byte [esp + 0x4f8], 3
call fcn.004131d0
lea ecx, [esp + 0xa4]
mov byte [esp + 0x4f8], 2
call fcn.00548470
lea ecx, [esp + 0x18]
mov byte [esp + 0x4f8], 1
call fcn.0060ffb0
lea ecx, [esp + 0x50]
mov byte [esp + 0x4f8], bl
call fcn.0060d280
lea ecx, [esp + 0x500]
mov dword [esp + 0x4f8], 0xffffffff
call fcn.0060ffb0
mov ax, 1
mov ecx, dword [esp + 0x4f0]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x4ec
ret 4
mov byte [esp + 0x13], bl
push ecx
lea eax, [esp + 0x504]
mov ecx, esp
mov dword [esp + 0x18], esp
push eax
call fcn.0060fe80
mov ecx, dword [0x71b93c]
call fcn.006206f0
cmp si, bx
je 0x58e585
cmp byte [0x71bb5c], bl
je 0x58e426
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 8
push 0x710158
call fcn.0060ff10
jmp 0x58e467
movsx eax, si
sub esp, 0x24
lea edx, [eax + eax*4]
mov ecx, esp
mov dword [esp + 0x38], esp
push ebx
lea eax, [esp + edx*2 + 0xf6]
push 1
push eax
push ecx
lea ecx, [esp + 0xd8]
call fcn.00548ea0
lea ecx, [esp + 0x74]
call fcn.0060d330
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push ecx
lea ecx, [esp + 0x58]
call fcn.0060d6b0
lea ecx, [esp + 0x1c]
call fcn.006101a0
lea ecx, [esp + 0x18]
call fcn.00610330
test ax, ax
jle 0x58e583
cmp si, 1
jne 0x58e4da
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x703784
call fcn.0060ff10
lea edx, [esp + 0x3f4]
push edx
call fcn.0060f170
add esp, 8
push eax
lea ecx, [esp + 0x24]
mov byte [esp + 0x4fc], 0x26
call fcn.0044fd20
lea ecx, [esp + 0x3f0]
mov byte [esp + 0x4f8], 6
call fcn.004131d0
mov byte [esp + 0x13], bl
jmp 0x58e583
cmp si, 2
jne 0x58e52f
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x70377c
call fcn.0060ff10
lea eax, [esp + 0x474]
push eax
call fcn.0060f170
add esp, 8
push eax
lea ecx, [esp + 0x24]
mov byte [esp + 0x4fc], 0x27
call fcn.0044fd20
lea ecx, [esp + 0x470]
mov byte [esp + 0x4f8], 6
call fcn.004131d0
mov byte [esp + 0x13], bl
jmp 0x58e583
cmp si, 3
jne 0x58e583
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x703764
call fcn.0060ff10
lea ecx, [esp + 0x414]
push ecx
call fcn.0060f170
add esp, 8
push eax
lea ecx, [esp + 0x24]
mov byte [esp + 0x4fc], 0x28
call fcn.0044fd20
lea ecx, [esp + 0x410]
mov byte [esp + 0x4f8], 6
call fcn.004131d0
mov byte [esp + 0x13], 1
xor esi, esi
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x703784
call fcn.0060ff10
mov ecx, dword [0x71b93c]
call fcn.00620870
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x70377c
call fcn.0060ff10
mov ecx, dword [0x71b93c]
call fcn.00620870
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x703774
call fcn.0060ff10
mov ecx, dword [0x71b93c]
call fcn.00620870
sub esp, 0x10
lea edx, [esp + 0x30]
mov ecx, esp
mov dword [esp + 0x24], esp
push edx
call fcn.00412ff0
push ecx
mov byte [esp + 0x50c], 0x29
mov ecx, esp
mov dword [esp + 0x30], esp
push 6
push 0x70379c
call fcn.0060ff10
mov ecx, dword [0x71b93c]
mov byte [esp + 0x50c], 6
call fcn.006208f0
mov ecx, dword [0x71b93c]
call fcn.00620cd0
movsx eax, ax
sub eax, ebx
je 0x58e662
dec eax
je 0x58e658
dec eax
jne 0x58e3e1
mov al, byte [esp + 0x13]
mov esi, 3
cmp al, bl
jne case.0x58d676.6
jmp 0x58e3e1
mov esi, 2
jmp 0x58e3e1
mov esi, 1
jmp 0x58e3e1
push ebx
push 4
push ecx
mov byte [esp + 0x1f], bl
mov ecx, esp
mov dword [esp + 0x20], esp
push 6
push 0x703420
call fcn.0060ff10
push ecx
mov byte [esp + 0x508], 0x2a
mov ecx, esp
mov dword [esp + 0x2c], esp
push 6
push 0x710150
call fcn.0060ff10
mov ecx, 0x71b930
mov byte [esp + 0x508], 6
call fcn.006115e0
xor edi, edi
cmp byte [0x71bb5c], bl
je 0x58e6d2
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 8
push 0x710158
call fcn.0060ff10
jmp 0x58e713
movsx eax, di
sub esp, 0x24
lea edx, [esp + eax + 0x344]
mov ecx, esp
mov dword [esp + 0x38], esp
push ebx
lea eax, [edx + eax*4]
push 1
push eax
push ecx
lea ecx, [esp + 0xd8]
call fcn.00548ea0
lea ecx, [esp + 0x74]
call fcn.0060d330
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push ecx
lea ecx, [esp + 0x58]
call fcn.0060d6b0
lea ecx, [esp + 0x1c]
call fcn.006101a0
lea ecx, [esp + 0x18]
call fcn.00610330
test ax, ax
je 0x58e77d
inc edi
cmp di, 3
jl 0x58e6b5
push ecx
lea eax, [esp + 0x504]
mov ecx, esp
mov dword [esp + 0x18], esp
push eax
call fcn.0060fe80
mov ecx, dword [0x71b93c]
call fcn.006206f0
cmp si, bx
je 0x58eae6
cmp byte [0x71bb5c], bl
je 0x58e84f
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 8
push 0x710144
call fcn.0060ff10
jmp 0x58e88a
push ebx
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push 6
push 0x7033ac
call fcn.0060ff10
push ecx
mov byte [esp + 0x508], 0x2b
mov ecx, esp
mov dword [esp + 0x2c], esp
push 6
push 0x70345c
call fcn.0060ff10
mov ecx, 0x71b930
mov byte [esp + 0x508], 6
call fcn.006115e0
mov edx, dword [ebp]
mov ecx, ebp
call dword [edx + 0x1c]
lea ecx, [esp + 0x30]
mov byte [esp + 0x4f8], 5
call fcn.0060ffb0
lea ecx, [esp + 0x40]
mov byte [esp + 0x4f8], 4
call fcn.004131d0
lea ecx, [esp + 0x20]
mov byte [esp + 0x4f8], 3
call fcn.004131d0
lea ecx, [esp + 0xa4]
mov byte [esp + 0x4f8], 2
call fcn.00548470
lea ecx, [esp + 0x18]
mov byte [esp + 0x4f8], 1
call fcn.0060ffb0
lea ecx, [esp + 0x50]
mov byte [esp + 0x4f8], bl
call fcn.0060d280
lea ecx, [esp + 0x500]
mov dword [esp + 0x4f8], 0xffffffff
call fcn.0060ffb0
xor ax, ax
jmp 0x58e3c2
sub esp, 0x24
lea edx, [esp + 0x34e]
mov ecx, esp
mov dword [esp + 0x38], esp
push ebx
push 1
push edx
push ecx
lea ecx, [esp + 0xd8]
call fcn.00548ea0
lea ecx, [esp + 0x74]
call fcn.0060d330
push ecx
lea ecx, [esp + 0x54]
mov eax, esp
mov dword [esp + 0x18], esp
push eax
call fcn.0060d6b0
lea ecx, [esp + 0x1c]
call fcn.006101a0
push 6
lea ecx, [esp + 0x1c]
call fcn.00610190
mov dl, al
push 7
and edx, 0xff
lea ecx, [esp + 0x1c]
shl edx, 8
mov dword [esp + 0x20], edx
call fcn.00610190
mov ecx, dword [esp + 0x1c]
and eax, 0xff
add eax, ecx
cdq
and edx, 3
add eax, edx
lea edx, [esp + 0x334]
sar eax, 2
push eax
push 0x70350c
push edx
call fcn.00698355
add esp, 0xc
lea eax, [esp + 0x334]
lea ecx, [esp + 0x40]
push eax
call fcn.004c2200
movsx edi, si
mov eax, edi
dec eax
je 0x58e90f
dec eax
je 0x58e908
dec eax
jne 0x58e914
mov byte [esp + 0x7a], 0xfa
jmp 0x58e914
mov byte [esp + 0x7a], 0x7d
jmp 0x58e914
mov byte [esp + 0x7a], 0x4b
cmp byte [0x71bb5c], bl
je 0x58e931
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 8
push 0x710144
call fcn.0060ff10
jmp 0x58e989
cmp si, 4
jne 0x58e94e
sub esp, 0x24
lea edx, [esp + 0xa2]
mov ecx, esp
mov dword [esp + 0x38], esp
push ebx
push 1
push edx
push ecx
jmp 0x58e963
sub esp, 0x24
lea ecx, [esp + 0x98]
mov eax, esp
mov dword [esp + 0x38], esp
push ebx
push 1
push ecx
push eax
lea ecx, [esp + 0xd8]
call fcn.00548ea0
lea ecx, [esp + 0x74]
call fcn.0060d330
push ecx
lea ecx, [esp + 0x54]
mov edx, esp
mov dword [esp + 0x18], esp
push edx
call fcn.0060d6b0
lea ecx, [esp + 0x1c]
call fcn.006101a0
dec edi
cmp edi, 3
ja case.default.0x58e99c
jmp dword [edi*4 + 0x58eed0]
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x71013c
call fcn.0060ff10
lea eax, [esp + 0x4b4]
push eax
call fcn.0060f170
add esp, 8
push eax
lea ecx, [esp + 0x24]
mov byte [esp + 0x4fc], 0x2c
call fcn.0044fd20
lea ecx, [esp + 0x4b0]
mov byte [esp + 0x4f8], 6
call fcn.004131d0
mov byte [esp + 0x13], bl
jmp case.default.0x58e99c
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x710134
call fcn.0060ff10
lea ecx, [esp + 0x434]
push ecx
call fcn.0060f170
add esp, 8
push eax
lea ecx, [esp + 0x24]
mov byte [esp + 0x4fc], 0x2d
call fcn.0044fd20
lea ecx, [esp + 0x430]
mov byte [esp + 0x4f8], 6
call fcn.004131d0
mov byte [esp + 0x13], bl
jmp case.default.0x58e99c
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x71012c
call fcn.0060ff10
lea edx, [esp + 0x494]
push edx
call fcn.0060f170
add esp, 8
push eax
lea ecx, [esp + 0x24]
mov byte [esp + 0x4fc], 0x2e
call fcn.0044fd20
lea ecx, [esp + 0x490]
mov byte [esp + 0x4f8], 6
call fcn.004131d0
mov byte [esp + 0x13], bl
jmp case.default.0x58e99c
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x703764
call fcn.0060ff10
lea eax, [esp + 0x454]
push eax
call fcn.0060f170
add esp, 8
push eax
lea ecx, [esp + 0x24]
mov byte [esp + 0x4fc], 0x2f
call fcn.0044fd20
lea ecx, [esp + 0x450]
mov byte [esp + 0x4f8], 6
call fcn.004131d0
mov byte [esp + 0x13], 1
xor esi, esi
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x71013c
call fcn.0060ff10
mov ecx, dword [0x71b93c]
call fcn.00620870
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x710134
call fcn.0060ff10
mov ecx, dword [0x71b93c]
call fcn.00620870
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x71012c
call fcn.0060ff10
mov ecx, dword [0x71b93c]
call fcn.00620870
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x703774
call fcn.0060ff10
mov ecx, dword [0x71b93c]
call fcn.00620870
sub esp, 0x10
lea edx, [esp + 0x30]
mov ecx, esp
mov dword [esp + 0x24], esp
push edx
call fcn.00412ff0
push ecx
mov byte [esp + 0x50c], 0x30
mov ecx, esp
mov dword [esp + 0x30], esp
push 6
push 0x70379c
call fcn.0060ff10
mov ecx, dword [0x71b93c]
mov byte [esp + 0x50c], 6
call fcn.006208f0
sub esp, 0x10
lea eax, [esp + 0x50]
mov ecx, esp
mov dword [esp + 0x24], esp
push eax
call fcn.00412ff0
push ecx
mov byte [esp + 0x50c], 0x31
mov ecx, esp
mov dword [esp + 0x30], esp
push 6
push 0x710124
call fcn.0060ff10
mov ecx, dword [0x71b93c]
mov byte [esp + 0x50c], 6
call fcn.006208f0
mov ecx, dword [0x71b93c]
call fcn.00620cd0
movsx eax, ax
cmp eax, 3
ja case.default.0x58ebff
jmp dword [eax*4 + 0x58eee0]
mov esi, 1
jmp case.default.0x58ebff
mov esi, 2
jmp case.default.0x58ebff
mov esi, 3
jmp case.default.0x58ebff
mov al, byte [esp + 0x13]
mov esi, 4
cmp al, bl
je case.default.0x58ebff
mov edx, dword [ebp]
mov ecx, ebp
call dword [edx + 0x1c]
jmp case.0x58c39e.92
mov byte [esp + 0x13], bl
push ecx
lea eax, [esp + 0x504]
mov ecx, esp
mov dword [esp + 0x18], esp
push eax
call fcn.0060fe80
mov ecx, dword [0x71b93c]
call fcn.006206f0
cmp si, bx
je 0x58ed97
cmp si, 1
jne 0x58ed41
cmp byte [0x71bb5c], bl
je 0x58ec9e
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 8
push 0x710144
call fcn.0060ff10
lea ecx, [esp + 0x1c]
call fcn.006101a0
jmp 0x58ecf2
sub esp, 0x24
lea edx, [esp + 0xb4]
mov ecx, esp
mov dword [esp + 0x38], esp
push ebx
push 1
push edx
push ecx
lea ecx, [esp + 0xd8]
call fcn.00548ea0
lea ecx, [esp + 0x74]
call fcn.0060d330
sub esp, 0x24
lea ecx, [esp + 0xc8]
mov eax, esp
mov dword [esp + 0x38], esp
push ebx
push 1
push ecx
push eax
lea ecx, [esp + 0xd8]
call fcn.00548ea0
lea ecx, [esp + 0x74]
call fcn.0060d330
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x70d99c
call fcn.0060ff10
lea edx, [esp + 0x4d4]
push edx
call fcn.0060f170
add esp, 8
push eax
lea ecx, [esp + 0x24]
mov byte [esp + 0x4fc], 0x32
call fcn.0044fd20
lea ecx, [esp + 0x4d0]
mov byte [esp + 0x4f8], 6
call fcn.004131d0
mov byte [esp + 0x13], bl
jmp 0x58ed95
cmp si, 2
jne 0x58ed95
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x703764
call fcn.0060ff10
lea eax, [esp + 0x3e4]
push eax
call fcn.0060f170
add esp, 8
push eax
lea ecx, [esp + 0x24]
mov byte [esp + 0x4fc], 0x33
call fcn.0044fd20
lea ecx, [esp + 0x3e0]
mov byte [esp + 0x4f8], 6
call fcn.004131d0
mov byte [esp + 0x13], 1
xor esi, esi
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x70d99c
call fcn.0060ff10
mov ecx, dword [0x71b93c]
call fcn.00620870
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x703774
call fcn.0060ff10
mov ecx, dword [0x71b93c]
call fcn.00620870
sub esp, 0x10
lea edx, [esp + 0x30]
mov ecx, esp
mov dword [esp + 0x24], esp
push edx
call fcn.00412ff0
push ecx
mov byte [esp + 0x50c], 0x34
mov ecx, esp
mov dword [esp + 0x30], esp
push 6
push 0x70379c
call fcn.0060ff10
mov ecx, dword [0x71b93c]
mov byte [esp + 0x50c], 6
call fcn.006208f0
mov ecx, dword [0x71b93c]
call fcn.00620cd0
movsx eax, ax
sub eax, ebx
je 0x58ee47
dec eax
jne 0x58ec46
mov al, byte [esp + 0x13]
mov esi, 2
cmp al, bl
jne case.0x58d676.6
jmp 0x58ec46
mov esi, 1
jmp 0x58ec46