Function at 0x5cd4b0
Capabilities:
Authenticate hmac
Contain obfuscated stackstrings
Encode data using base64
Encrypt data using speck
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
mov eax, 0x1210
call fcn.007ce210
mov dword [esp + 0x4dc], 0
call fcn.00457920
mov ecx, eax
imul ecx, ecx
and ecx, 3
cmp ecx, 2
sete cl
movzx ecx, cl
cmp eax, ecx
jne 0x5cdd33
mov edi, 0x15
call fcn.0061b500
cmp eax, 2
jne 0x5ce57e
mov ecx, eax
not ecx
and ecx, 1
add ecx, eax
mov byte [esp + 0x213], al
mov byte [esp + 0x109], al
mov byte [esp + 0x27f], al
mov byte [esp + 0x21a], al
mov byte [esp + 0x2ce], al
mov byte [esp + 0x45f], al
mov byte [esp + 0x266], al
mov byte [esp + 0x265], al
mov byte [esp + 0x157], al
mov byte [esp + 0x11f], al
mov byte [esp + 0x17e], al
mov byte [esp + 0x24f], al
mov byte [esp + 0x1e6], al
mov byte [esp + 0x10b], al
mov dword [esp + 0x40], eax
mov dword [esp + 0x480], eax
mov dword [esp + 0x1c4], eax
mov dword [esp + 0x200], eax
mov dword [esp + 0x254], eax
mov dword [esp + 0x168], eax
mov dword [esp + 0x3c4], eax
mov dword [esp + 0x3f8], eax
mov dword [esp + 0x360], eax
mov dword [esp + 0x340], eax
mov dword [esp + 0x2b0], eax
mov dword [esp + 0x4b8], eax
mov dword [esp + 0x380], eax
mov dword [esp + 0x3a8], eax
mov dword [esp + 0x424], eax
mov dword [esp + 0x420], eax
mov dword [esp + 0x41c], eax
mov dword [esp + 0x48c], eax
mov dword [esp + 0x3ac], eax
mov dword [esp + 0x38c], eax
mov dword [esp + 0x384], eax
mov dword [esp + 0x300], eax
mov dword [esp + 0x2a0], eax
mov dword [esp + 0x428], eax
mov dword [esp + 0x284], eax
mov dword [esp + 0x214], eax
mov dword [esp + 0x430], eax
mov dword [esp + 0xfc], eax
mov dword [esp + 0x15c], eax
mov dword [esp + 0xc8], eax
mov dword [esp + 0xc4], eax
mov dword [esp + 0x120], eax
mov dword [esp + 0x408], eax
mov dword [esp + 0x404], eax
mov dword [esp + 0x400], eax
mov dword [esp + 0x3fc], eax
mov dword [esp + 0x2c0], eax
mov dword [esp + 0xcc], eax
mov dword [esp + 0xf4], eax
mov dword [esp + 0xf0], eax
mov dword [esp + 0xec], eax
mov dword [esp + 0xe8], eax
mov dword [esp + 0xe4], eax
mov dword [esp + 0xe0], eax
mov dword [esp + 0xdc], eax
mov dword [esp + 0xd8], eax
mov dword [esp + 0xd4], eax
mov dword [esp + 0xa8], eax
mov dword [esp + 0xa4], eax
mov dword [esp + 0xa0], eax
mov dword [esp + 0x2f4], eax
mov dword [esp + 0x170], eax
mov dword [esp + 0x2c8], eax
mov dword [esp + 0x9c], eax
mov dword [esp + 0x98], eax
mov dword [esp + 0x16c], eax
mov dword [esp + 0x13c], eax
mov dword [esp + 0x138], eax
mov dword [esp + 0x134], eax
mov dword [esp + 0x130], eax
mov dword [esp + 0x144], eax
mov dword [esp + 0x110], eax
mov dword [esp + 0x2e8], eax
mov dword [esp + 0x150], eax
mov dword [esp + 0x194], eax
mov dword [esp + 0x190], eax
mov dword [esp + 0x10c], eax
mov dword [esp + 0x14c], eax
mov dword [esp + 0x234], eax
mov dword [esp + 0x94], eax
mov dword [esp + 0x90], eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x1a4], eax
mov dword [esp + 0x204], eax
mov dword [esp + 0x58], eax
mov dword [esp + 0x54], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x2c4], eax
mov dword [esp + 0x2bc], eax
mov dword [esp + 0x2b8], eax
mov dword [esp + 0x2b4], eax
mov dword [esp + 0x104], eax
mov dword [esp + 0xc0], eax
mov dword [esp + 0x3dc], eax
mov dword [esp + 0xb8], eax
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb0], eax
mov dword [esp + 0xac], eax
mov dword [esp + 0x78], eax
mov dword [esp + 0x74], eax
mov dword [esp + 0x70], eax
mov dword [esp + 0x6c], eax
mov dword [esp + 0x68], eax
mov dword [esp + 0x64], eax
mov dword [esp + 0x280], eax
mov dword [esp + 0x3c8], eax
mov dword [esp + 0x318], eax
mov dword [esp + 0x324], eax
mov dword [esp + 0x4ac], eax
mov dword [esp + 0x148], eax
mov dword [esp + 0x184], eax
mov dword [esp + 0x388], eax
mov dword [esp + 0x4c0], eax
mov dword [esp + 0x2f0], eax
mov dword [esp + 0x4b4], eax
mov dword [esp + 0x4c4], eax
mov dword [esp + 0x278], eax
mov dword [esp + 0x488], eax
mov dword [esp + 0x478], eax
mov dword [esp + 0x268], eax
mov dword [esp + 0x2fc], eax
mov dword [esp + 0x364], eax
mov dword [esp + 0x470], eax
mov dword [esp + 0x434], eax
mov dword [esp + 0x4bc], eax
mov dword [esp + 0x1d0], eax
mov dword [esp + 0x44c], eax
mov dword [esp + 0x410], eax
mov dword [esp + 0x1a8], eax
mov dword [esp + 0x1dc], eax
mov dword [esp + 0x320], eax
mov dword [esp + 0xbc], eax
mov dword [esp + 0x3f4], eax
mov dword [esp + 0x36c], eax
mov dword [esp + 0x1d8], eax
mov dword [esp + 0x114], eax
mov dword [esp + 0x334], eax
mov dword [esp + 0x2a4], eax
mov dword [esp + 0x3e4], eax
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x394], eax
mov dword [esp + 0x498], eax
mov dword [esp + 0x350], eax
mov dword [esp + 0x22c], eax
mov dword [esp + 0x228], eax
mov dword [esp + 0x440], eax
mov dword [esp + 0x43c], eax
mov dword [esp + 0x3b4], eax
mov dword [esp + 0x438], eax
mov dword [esp + 0x29c], eax
mov dword [esp + 0x1cc], eax
mov dword [esp + 0x1f0], eax
mov dword [esp + 0x2d0], eax
mov dword [esp + 0x1ec], eax
mov dword [esp + 0x33c], eax
mov dword [esp + 0x49c], eax
mov dword [esp + 0x338], eax
mov dword [esp + 0x160], eax
mov dword [esp + 0x444], eax
mov dword [esp + 0x250], eax
mov dword [esp + 0x344], eax
mov dword [esp + 0x448], eax
mov dword [esp + 0x454], eax
mov dword [esp + 0x290], eax
mov dword [esp + 0x294], eax
mov dword [esp + 0x2dc], eax
mov dword [esp + 0x4b0], eax
mov dword [esp + 0x3c0], eax
mov dword [esp + 0x3bc], eax
mov dword [esp + 0x314], eax
mov dword [esp + 0x4a0], eax
mov dword [esp + 0x100], eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x270], eax
mov dword [esp + 0xd0], eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x20c], eax
mov dword [esp + 0x308], eax
mov dword [esp + 0x3d8], eax
mov dword [esp + 0x124], eax
mov dword [esp + 0x1b4], eax
mov dword [esp + 0x40c], eax
mov dword [esp + 0x158], eax
mov dword [esp + 0x490], eax
mov dword [esp + 0x484], eax
mov dword [esp + 0x31c], eax
mov dword [esp + 0x37c], eax
mov dword [esp + 0x368], eax
mov dword [esp + 0x4a8], eax
mov dword [esp + 0x378], eax
mov dword [esp + 0x3f0], eax
mov dword [esp + 0x3ec], eax
mov dword [esp + 0x180], eax
mov dword [esp + 0x328], eax
mov dword [esp + 0x248], eax
mov dword [esp + 0x244], eax
mov dword [esp + 0x260], eax
mov dword [esp + 0x474], eax
mov dword [esp + 0x21c], eax
mov dword [esp + 0x330], eax
mov dword [esp + 0x12c], eax
mov dword [esp + 0x140], eax
mov dword [esp + 0x304], eax
mov dword [esp + 0x25c], eax
mov dword [esp + 0x30c], eax
mov dword [esp + 0x1e8], eax
mov dword [esp + 0x28c], eax
mov dword [esp + 0x458], eax
mov dword [esp + 0x288], eax
mov dword [esp + 0x2f8], eax
mov dword [esp + 0x2ac], eax
mov dword [esp + 0x310], eax
mov dword [esp + 0x398], eax
mov dword [esp + 0x60], eax
mov dword [esp + 0x3e8], eax
mov dword [esp + 0x118], eax
mov dword [esp + 0x1c8], eax
mov dword [esp + 0x1c0], eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x1bc], eax
mov dword [esp + 0x178], eax
mov dword [esp + 0x2e4], eax
mov dword [esp + 0x39c], eax
mov byte [esp + 0x2cd], al
mov byte [esp + 0x20b], al
mov byte [esp + 0x233], al
mov byte [esp + 0x18f], al
mov byte [esp + 0x1d7], al
mov byte [esp + 0x393], al
mov byte [esp + 0x35f], al
mov byte [esp + 0x32f], al
mov byte [esp + 0x34f], al
mov byte [esp + 0x2e3], al
mov byte [esp + 0x155], al
mov byte [esp + 0x156], al
mov byte [esp + 0x21b], al
mov byte [esp + 0x1e7], al
mov byte [esp + 0x18b], al
mov byte [esp + 0x167], al
mov byte [esp + 0x3a7], al
mov byte [esp + 0x19b], al
mov byte [esp + 0x18c], al
mov byte [esp + 0x1b3], al
mov byte [esp + 0x23a], al
mov byte [esp + 0x18e], al
mov byte [esp + 0x17f], al
mov byte [esp + 0x227], al
mov byte [esp + 0x177], al
mov byte [esp + 0x2cf], al
mov byte [esp + 0x2ef], al
mov byte [esp + 0x20a], al
mov byte [esp + 0x25b], al
mov byte [esp + 0x2db], al
mov byte [esp + 0x2ab], al
mov byte [esp + 0x1bb], al
mov byte [esp + 0x23b], al
mov byte [esp + 0x10a], al
mov byte [esp + 0x29b], al
mov byte [esp + 0x176], al
mov byte [esp + 0x243], al
mov byte [esp + 0x26f], al
mov byte [esp + 0x175], al
mov byte [esp + 0x267], al
mov byte [esp + 0x7f], al
mov byte [esp + 0xfb], al
mov byte [esp + 0x5f], al
mov byte [esp + 0x18d], al
mov dword [esp + 0x3d0], eax
mov dword [esp + 0x1f4], eax
mov dword [esp + 0x460], eax
mov dword [esp + 0x1a0], eax
mov dword [esp + 0x418], eax
mov dword [esp + 0x23c], eax
mov dword [esp + 0x414], eax
mov dword [esp + 0x2d4], eax
mov dword [esp + 0x3b8], eax
mov dword [esp + 0x348], eax
mov dword [esp + 0x19c], eax
mov dword [esp + 0x3d4], eax
mov dword [esp + 0x3cc], eax
mov dword [esp + 0x354], eax
mov dword [esp + 0x1fc], eax
mov dword [esp + 0x274], eax
mov dword [esp + 0x370], eax
mov dword [esp + 0x374], eax
mov dword [esp + 0x3e0], eax
mov dword [esp + 0x220], eax
mov dword [esp + 0x450], eax
mov dword [esp + 0x42c], eax
mov dword [esp + 0x3b0], eax
mov dword [esp + 0x4a4], eax
mov dword [esp + 0x1f8], eax
mov dword [esp + 0x1e0], eax
mov dword [esp + 0x46c], eax
mov dword [esp + 0x468], eax
mov dword [esp + 0x128], eax
mov dword [esp + 0x3a0], eax
jne 0x5d7989
jmp 0x5d72ac
mov byte [esp + 0x109], al
mov byte [esp + 0x27f], al
mov byte [esp + 0x29b], al
mov byte [esp + 0x21a], al
mov byte [esp + 0x2ce], al
mov byte [esp + 0x45f], al
mov byte [esp + 0x176], al
mov byte [esp + 0x18b], al
mov byte [esp + 0x11f], al
mov byte [esp + 0x19b], al
mov byte [esp + 0x24f], al
mov byte [esp + 0x1e6], al
mov byte [esp + 0x10b], al
mov byte [esp + 0x1b3], al
mov ecx, 0x14
mov dword [esp + 0x168], eax
mov dword [esp + 0x33c], eax
mov dword [esp + 0x49c], eax
mov dword [esp + 0x338], eax
mov dword [esp + 0x160], eax
mov dword [esp + 0x4b8], eax
mov dword [esp + 0x380], eax
mov dword [esp + 0x3a8], eax
mov dword [esp + 0x38c], eax
mov dword [esp + 0x384], eax
mov dword [esp + 0x148], eax
mov dword [esp + 0x158], eax
mov dword [esp + 0x1c4], eax
mov dword [esp + 0x3f4], eax
mov dword [esp + 0x36c], eax
mov dword [esp + 0x3e8], eax
mov dword [esp + 0x494], eax
mov dword [esp + 0x21c], eax
mov dword [esp + 0x498], eax
mov dword [esp + 0x200], eax
mov dword [esp + 0x1f0], eax
mov dword [esp + 0x2d0], eax
mov dword [esp + 0x3c4], eax
mov dword [esp + 0x28c], eax
mov dword [esp + 0x458], eax
mov dword [esp + 0x288], eax
mov dword [esp + 0x2b0], eax
mov dword [esp + 0x2f8], eax
mov dword [esp + 0x344], eax
mov dword [esp + 0x4b0], eax
mov dword [esp + 0x3c0], eax
mov dword [esp + 0x3bc], eax
mov dword [esp + 0x314], eax
mov dword [esp + 0x4a0], eax
mov dword [esp + 0x2a0], eax
mov dword [esp + 0x428], eax
mov dword [esp + 0x284], eax
mov dword [esp + 0x214], eax
mov dword [esp + 0x430], eax
mov dword [esp + 0xfc], eax
mov dword [esp + 0xc8], eax
mov dword [esp + 0xc4], eax
mov dword [esp + 0x120], eax
mov dword [esp + 0x408], eax
mov dword [esp + 0x404], eax
mov dword [esp + 0x400], eax
mov dword [esp + 0x3fc], eax
mov dword [esp + 0x2c0], eax
mov dword [esp + 0xcc], eax
mov dword [esp + 0xf4], eax
mov dword [esp + 0xf0], eax
mov dword [esp + 0xec], eax
mov dword [esp + 0xe8], eax
mov dword [esp + 0xe4], eax
mov dword [esp + 0xe0], eax
mov dword [esp + 0xdc], eax
mov dword [esp + 0xd8], eax
mov dword [esp + 0xd4], eax
mov dword [esp + 0xa8], eax
mov dword [esp + 0xa4], eax
mov dword [esp + 0xa0], eax
mov dword [esp + 0x2f4], eax
mov dword [esp + 0x170], eax
mov dword [esp + 0x2c8], eax
mov dword [esp + 0x9c], eax
mov dword [esp + 0x98], eax
mov dword [esp + 0x16c], eax
mov dword [esp + 0x13c], eax
mov dword [esp + 0x138], eax
mov dword [esp + 0x134], eax
mov dword [esp + 0x130], eax
mov dword [esp + 0x144], eax
mov dword [esp + 0x110], eax
mov dword [esp + 0x2e8], eax
mov dword [esp + 0x150], eax
mov dword [esp + 0x194], eax
mov dword [esp + 0x190], eax
mov dword [esp + 0x10c], eax
mov dword [esp + 0x14c], eax
mov dword [esp + 0x234], eax
mov dword [esp + 0x94], eax
mov dword [esp + 0x90], eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x1a4], eax
mov dword [esp + 0x204], eax
mov dword [esp + 0x58], eax
mov dword [esp + 0x54], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x2c4], eax
mov dword [esp + 0x2bc], eax
mov dword [esp + 0x2b8], eax
mov dword [esp + 0x2b4], eax
mov dword [esp + 0x104], eax
mov dword [esp + 0xc0], eax
mov dword [esp + 0x3dc], eax
mov dword [esp + 0xb8], eax
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb0], eax
mov dword [esp + 0xac], eax
mov dword [esp + 0x78], eax
mov dword [esp + 0x74], eax
mov dword [esp + 0x70], eax
mov dword [esp + 0x6c], eax
mov dword [esp + 0x68], eax
mov dword [esp + 0x64], eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x480], eax
mov dword [esp + 0x484], eax
mov dword [esp + 0x48], eax
mov dword [esp + 0xbc], eax
mov dword [esp + 0x31c], eax
mov dword [esp + 0x368], eax
mov dword [esp + 0x178], eax
mov dword [esp + 0x39c], eax
mov dword [esp + 0x260], eax
mov dword [esp + 0x1d8], eax
mov dword [esp + 0x334], eax
mov dword [esp + 0x330], eax
mov dword [esp + 0x12c], eax
mov dword [esp + 0x140], eax
mov dword [esp + 0x304], eax
mov dword [esp + 0x350], eax
mov dword [esp + 0x1c0], eax
mov dword [esp + 0x2e4], eax
mov dword [esp + 0x25c], eax
mov dword [esp + 0x22c], eax
mov dword [esp + 0x228], eax
mov dword [esp + 0x440], eax
mov dword [esp + 0x43c], eax
mov dword [esp + 0x3b4], eax
mov dword [esp + 0x438], eax
mov dword [esp + 0x254], eax
mov dword [esp + 0x3f8], eax
mov dword [esp + 0x360], eax
mov dword [esp + 0x340], eax
mov dword [esp + 0x444], eax
mov dword [esp + 0x250], eax
mov dword [esp + 0x448], eax
mov dword [esp + 0x454], eax
mov dword [esp + 0x290], eax
mov dword [esp + 0x2ac], eax
mov dword [esp + 0x310], eax
mov dword [esp + 0x398], eax
mov dword [esp + 0x294], eax
mov dword [esp + 0x2dc], eax
mov dword [esp + 0x280], eax
mov dword [esp + 0x3c8], eax
mov dword [esp + 0x318], eax
mov dword [esp + 0x324], eax
mov dword [esp + 0x4ac], eax
mov dword [esp + 0x100], eax
mov dword [esp + 0x60], eax
mov dword [esp + 0x184], eax
mov dword [esp + 0x388], eax
mov dword [esp + 0x4c0], eax
mov dword [esp + 0x2f0], eax
mov dword [esp + 0x4b4], eax
mov dword [esp + 0x4c4], eax
mov dword [esp + 0x278], eax
mov dword [esp + 0x488], eax
mov dword [esp + 0x478], eax
mov dword [esp + 0x268], eax
mov dword [esp + 0x2fc], eax
mov dword [esp + 0x364], eax
mov dword [esp + 0x44c], eax
mov dword [esp + 0x410], eax
mov dword [esp + 0x490], eax
mov dword [esp + 0x320], eax
mov dword [esp + 0x37c], eax
mov dword [esp + 0x4a8], eax
mov dword [esp + 0x378], eax
mov dword [esp + 0x3f0], eax
mov dword [esp + 0x3ec], eax
mov dword [esp + 0x180], eax
mov dword [esp + 0x328], eax
mov dword [esp + 0x248], eax
mov dword [esp + 0x244], eax
mov dword [esp + 0x1bc], eax
mov dword [esp + 0x118], eax
mov dword [esp + 0x114], eax
mov dword [esp + 0x474], eax
mov dword [esp + 0x2a4], eax
mov dword [esp + 0x3e4], eax
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x394], eax
mov dword [esp + 0x1c8], eax
mov dword [esp + 0x30c], eax
mov dword [esp + 0x29c], eax
mov dword [esp + 0x1e8], eax
mov dword [esp + 0x1cc], eax
mov dword [esp + 0x424], eax
mov dword [esp + 0x420], eax
mov dword [esp + 0x41c], eax
mov dword [esp + 0x48c], eax
mov dword [esp + 0x3ac], eax
mov dword [esp + 0x470], eax
mov dword [esp + 0x434], eax
mov dword [esp + 0x4bc], eax
mov dword [esp + 0x1d0], eax
mov dword [esp + 0x3d8], eax
mov dword [esp + 0x124], eax
mov dword [esp + 0x1b4], eax
mov dword [esp + 0x40c], eax
mov dword [esp + 0x1ec], eax
mov dword [esp + 0x270], eax
mov dword [esp + 0xd0], eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x20c], eax
mov dword [esp + 0x308], eax
mov byte [esp + 0x2cd], al
mov byte [esp + 0x20b], al
mov byte [esp + 0x26f], al
mov byte [esp + 0x175], al
mov byte [esp + 0x5f], al
mov byte [esp + 0x18e], al
mov byte [esp + 0x17f], al
mov byte [esp + 0x393], al
mov byte [esp + 0x35f], al
mov byte [esp + 0x32f], al
mov byte [esp + 0x20a], al
mov byte [esp + 0x18d], al
mov byte [esp + 0x25b], al
mov byte [esp + 0x2db], al
mov byte [esp + 0x34f], al
mov byte [esp + 0x155], al
mov byte [esp + 0x156], al
mov byte [esp + 0x213], al
mov byte [esp + 0x10a], al
mov byte [esp + 0x266], al
mov byte [esp + 0x157], al
mov byte [esp + 0x243], al
mov byte [esp + 0x18c], al
mov byte [esp + 0xfb], al
mov byte [esp + 0x233], al
mov byte [esp + 0x23a], al
mov byte [esp + 0x18f], al
mov byte [esp + 0x227], al
mov byte [esp + 0x177], al
mov byte [esp + 0x1d7], al
mov byte [esp + 0x2cf], al
mov byte [esp + 0x2ef], al
mov byte [esp + 0x267], al
mov byte [esp + 0x7f], al
mov byte [esp + 0x2ab], al
mov byte [esp + 0x1bb], al
mov byte [esp + 0x23b], al
mov byte [esp + 0x2e3], al
mov byte [esp + 0x265], al
mov byte [esp + 0x167], al
mov byte [esp + 0x3a7], al
mov byte [esp + 0x17e], al
mov byte [esp + 0x21b], al
mov byte [esp + 0x1e7], al
mov dword [esp + 0x460], eax
mov dword [esp + 0x1a0], eax
mov dword [esp + 0x418], eax
mov dword [esp + 0x23c], eax
mov dword [esp + 0x414], eax
mov dword [esp + 0x3b8], eax
mov dword [esp + 0x348], eax
mov dword [esp + 0x19c], eax
mov dword [esp + 0x3d4], eax
mov dword [esp + 0x1e0], eax
mov dword [esp + 0x3cc], eax
mov dword [esp + 0x354], eax
mov dword [esp + 0x1fc], eax
mov dword [esp + 0x274], eax
mov dword [esp + 0x370], eax
mov dword [esp + 0x374], eax
mov dword [esp + 0x46c], eax
mov dword [esp + 0x3e0], eax
mov dword [esp + 0x128], eax
mov dword [esp + 0x220], eax
mov dword [esp + 0x450], eax
mov dword [esp + 0x42c], eax
mov dword [esp + 0x4a4], eax
mov dword [esp + 0x1f4], eax
mov dword [esp + 0x2d4], eax
mov dword [esp + 0x3a0], eax
mov dword [esp + 0x468], eax
mov dword [esp + 0x3b0], eax
mov dword [esp + 0x3d0], eax
mov dword [esp + 0x1f8], eax
mov dword [esp + 0x1a8], edx
mov dword [esp + 0x300], ebx
mov dword [esp + 0x1dc], edi
mov dword [esp + 0x15c], esi
cmp ecx, 6
mov edi, dword [esp + 0x4c0]
je 0x5d2e43
xor eax, eax
test al, al
je 0x5cedc4
jmp 0x5d2e43
mov byte [esp + 0x213], al
mov byte [esp + 0x109], al
mov byte [esp + 0x27f], al
mov byte [esp + 0x21a], al
mov byte [esp + 0x2ce], al
mov byte [esp + 0x45f], al
mov byte [esp + 0x266], al
mov byte [esp + 0x265], al
mov byte [esp + 0x157], al
mov byte [esp + 0x11f], al
mov byte [esp + 0x17e], al
mov byte [esp + 0x24f], al
mov byte [esp + 0x1e6], al
mov byte [esp + 0x10b], al
mov dword [esp + 0x40], eax
mov dword [esp + 0x480], eax
mov dword [esp + 0x1c4], eax
mov dword [esp + 0x200], eax
mov dword [esp + 0x254], eax
mov dword [esp + 0x168], eax
mov dword [esp + 0x3c4], eax
mov dword [esp + 0x3f8], eax
mov dword [esp + 0x360], eax
mov dword [esp + 0x340], eax
mov dword [esp + 0x2b0], eax
mov dword [esp + 0x4b8], eax
mov dword [esp + 0x380], eax
mov dword [esp + 0x3a8], eax
mov dword [esp + 0x424], eax
mov dword [esp + 0x420], eax
mov dword [esp + 0x41c], eax
mov dword [esp + 0x48c], eax
mov dword [esp + 0x3ac], eax
mov dword [esp + 0x38c], eax
mov dword [esp + 0x384], eax
mov dword [esp + 0x300], eax
mov dword [esp + 0x2a0], eax
mov dword [esp + 0x428], eax
mov dword [esp + 0x284], eax
mov dword [esp + 0x214], eax
mov dword [esp + 0x430], eax
mov dword [esp + 0xfc], eax
mov dword [esp + 0x15c], eax
mov dword [esp + 0xc8], eax
mov dword [esp + 0xc4], eax
mov dword [esp + 0x120], eax
mov dword [esp + 0x408], eax
mov dword [esp + 0x404], eax
mov dword [esp + 0x400], eax
mov dword [esp + 0x3fc], eax
mov dword [esp + 0x2c0], eax
mov dword [esp + 0xcc], eax
mov dword [esp + 0xf4], eax
mov dword [esp + 0xf0], eax
mov dword [esp + 0xec], eax
mov dword [esp + 0xe8], eax
mov dword [esp + 0xe4], eax
mov dword [esp + 0xe0], eax
mov dword [esp + 0xdc], eax
mov dword [esp + 0xd8], eax
mov dword [esp + 0xd4], eax
mov dword [esp + 0xa8], eax
mov dword [esp + 0xa4], eax
mov dword [esp + 0xa0], eax
mov dword [esp + 0x2f4], eax
mov dword [esp + 0x170], eax
mov dword [esp + 0x2c8], eax
mov dword [esp + 0x9c], eax
mov dword [esp + 0x98], eax
mov dword [esp + 0x16c], eax
mov dword [esp + 0x13c], eax
mov dword [esp + 0x138], eax
mov dword [esp + 0x134], eax
mov dword [esp + 0x130], eax
mov dword [esp + 0x144], eax
mov dword [esp + 0x110], eax
mov dword [esp + 0x2e8], eax
mov dword [esp + 0x150], eax
mov dword [esp + 0x194], eax
mov dword [esp + 0x190], eax
mov dword [esp + 0x10c], eax
mov dword [esp + 0x14c], eax
mov dword [esp + 0x234], eax
mov dword [esp + 0x94], eax
mov dword [esp + 0x90], eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x1a4], eax
mov dword [esp + 0x204], eax
mov dword [esp + 0x58], eax
mov dword [esp + 0x54], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x2c4], eax
mov dword [esp + 0x2bc], eax
mov dword [esp + 0x2b8], eax
mov dword [esp + 0x2b4], eax
mov dword [esp + 0x104], eax
mov dword [esp + 0xc0], eax
mov dword [esp + 0x3dc], eax
mov dword [esp + 0xb8], eax
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb0], eax
mov dword [esp + 0xac], eax
mov dword [esp + 0x78], eax
mov dword [esp + 0x74], eax
mov dword [esp + 0x70], eax
mov dword [esp + 0x6c], eax
mov dword [esp + 0x68], eax
mov dword [esp + 0x64], eax
mov dword [esp + 0x280], eax
mov dword [esp + 0x3c8], eax
mov dword [esp + 0x318], eax
mov dword [esp + 0x324], eax
mov dword [esp + 0x4ac], eax
mov dword [esp + 0x148], eax
mov dword [esp + 0x184], eax
mov dword [esp + 0x388], eax
mov dword [esp + 0x4c0], eax
mov dword [esp + 0x2f0], eax
mov dword [esp + 0x4b4], eax
mov dword [esp + 0x4c4], eax
mov dword [esp + 0x278], eax
mov dword [esp + 0x488], eax
mov dword [esp + 0x478], eax
mov dword [esp + 0x268], eax
mov dword [esp + 0x2fc], eax
mov dword [esp + 0x364], eax
mov dword [esp + 0x470], eax
mov dword [esp + 0x434], eax
mov dword [esp + 0x4bc], eax
mov dword [esp + 0x1d0], eax
mov dword [esp + 0x44c], eax
mov dword [esp + 0x410], eax
mov dword [esp + 0x1a8], eax
mov dword [esp + 0x1dc], eax
mov dword [esp + 0x320], eax
mov dword [esp + 0xbc], eax
mov dword [esp + 0x3f4], eax
mov dword [esp + 0x36c], eax
mov dword [esp + 0x1d8], eax
mov dword [esp + 0x114], eax
mov dword [esp + 0x334], eax
mov dword [esp + 0x2a4], eax
mov dword [esp + 0x3e4], eax
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x394], eax
mov dword [esp + 0x498], eax
mov dword [esp + 0x350], eax
mov dword [esp + 0x22c], eax
mov dword [esp + 0x228], eax
mov dword [esp + 0x440], eax
mov dword [esp + 0x43c], eax
mov dword [esp + 0x3b4], eax
mov dword [esp + 0x438], eax
mov dword [esp + 0x29c], eax
mov dword [esp + 0x1cc], eax
mov dword [esp + 0x1f0], eax
mov dword [esp + 0x2d0], eax
mov dword [esp + 0x1ec], eax
mov dword [esp + 0x33c], eax
mov dword [esp + 0x49c], eax
mov dword [esp + 0x338], eax
mov dword [esp + 0x160], eax
mov dword [esp + 0x444], eax
mov dword [esp + 0x250], eax
mov dword [esp + 0x344], eax
mov dword [esp + 0x448], eax
mov dword [esp + 0x454], eax
mov dword [esp + 0x290], eax
mov dword [esp + 0x294], eax
mov dword [esp + 0x2dc], eax
mov dword [esp + 0x4b0], eax
mov dword [esp + 0x3c0], eax
mov dword [esp + 0x3bc], eax
mov dword [esp + 0x314], eax
mov dword [esp + 0x4a0], eax
mov dword [esp + 0x100], eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x270], eax
mov dword [esp + 0xd0], eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x20c], eax
mov dword [esp + 0x308], eax
mov dword [esp + 0x3d8], eax
mov dword [esp + 0x124], eax
mov dword [esp + 0x1b4], eax
mov dword [esp + 0x40c], eax
mov dword [esp + 0x158], eax
mov dword [esp + 0x490], eax
mov dword [esp + 0x484], eax
mov dword [esp + 0x31c], eax
mov dword [esp + 0x37c], eax
mov dword [esp + 0x368], eax
mov dword [esp + 0x4a8], eax
mov dword [esp + 0x378], eax
mov dword [esp + 0x3f0], eax
mov dword [esp + 0x3ec], eax
mov dword [esp + 0x180], eax
mov dword [esp + 0x328], eax
mov dword [esp + 0x248], eax
mov dword [esp + 0x244], eax
mov dword [esp + 0x260], eax
mov dword [esp + 0x474], eax
mov dword [esp + 0x21c], eax
mov dword [esp + 0x330], eax
mov dword [esp + 0x12c], eax
mov dword [esp + 0x140], eax
mov dword [esp + 0x304], eax
mov dword [esp + 0x25c], eax
mov dword [esp + 0x30c], eax
mov dword [esp + 0x1e8], eax
mov dword [esp + 0x28c], eax
mov dword [esp + 0x458], eax
mov dword [esp + 0x288], eax
mov dword [esp + 0x2f8], eax
mov dword [esp + 0x2ac], eax
mov dword [esp + 0x310], eax
mov dword [esp + 0x398], eax
mov dword [esp + 0x60], eax
mov dword [esp + 0x3e8], eax
mov dword [esp + 0x118], eax
mov dword [esp + 0x1c8], eax
mov dword [esp + 0x1c0], eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x1bc], eax
mov dword [esp + 0x178], eax
mov dword [esp + 0x2e4], eax
mov dword [esp + 0x39c], eax
mov byte [esp + 0x2cd], al
mov byte [esp + 0x20b], al
mov byte [esp + 0x233], al
mov byte [esp + 0x18f], al
mov byte [esp + 0x1d7], al
mov byte [esp + 0x393], al
mov byte [esp + 0x35f], al
mov byte [esp + 0x32f], al
mov byte [esp + 0x34f], al
mov byte [esp + 0x2e3], al
mov byte [esp + 0x155], al
mov byte [esp + 0x156], al
mov byte [esp + 0x21b], al
mov byte [esp + 0x1e7], al
mov byte [esp + 0x18b], al
mov byte [esp + 0x167], al
mov byte [esp + 0x3a7], al
mov byte [esp + 0x19b], al
mov byte [esp + 0x18c], al
mov byte [esp + 0x1b3], al
mov byte [esp + 0x23a], al
mov byte [esp + 0x18e], al
mov byte [esp + 0x17f], al
mov byte [esp + 0x227], al
mov byte [esp + 0x177], al
mov byte [esp + 0x2cf], al
mov byte [esp + 0x2ef], al
mov byte [esp + 0x20a], al
mov byte [esp + 0x25b], al
mov byte [esp + 0x2db], al
mov byte [esp + 0x2ab], al
mov byte [esp + 0x1bb], al
mov byte [esp + 0x23b], al
mov byte [esp + 0x10a], al
mov byte [esp + 0x29b], al
mov byte [esp + 0x176], al
mov byte [esp + 0x243], al
mov byte [esp + 0x26f], al
mov byte [esp + 0x175], al
mov byte [esp + 0x267], al
mov byte [esp + 0x7f], al
mov byte [esp + 0xfb], al
mov byte [esp + 0x5f], al
mov byte [esp + 0x18d], al
mov dword [esp + 0x3d0], eax
mov dword [esp + 0x1f4], eax
mov dword [esp + 0x460], eax
mov dword [esp + 0x1a0], eax
mov dword [esp + 0x418], eax
mov dword [esp + 0x23c], eax
mov dword [esp + 0x414], eax
mov dword [esp + 0x2d4], eax
mov dword [esp + 0x3b8], eax
mov dword [esp + 0x348], eax
mov dword [esp + 0x19c], eax
mov dword [esp + 0x3d4], eax
mov dword [esp + 0x3cc], eax
mov dword [esp + 0x354], eax
mov dword [esp + 0x1fc], eax
mov dword [esp + 0x274], eax
mov dword [esp + 0x370], eax
mov dword [esp + 0x374], eax
mov dword [esp + 0x3e0], eax
mov dword [esp + 0x220], eax
mov dword [esp + 0x450], eax
mov dword [esp + 0x42c], eax
mov dword [esp + 0x3b0], eax
mov dword [esp + 0x4a4], eax
mov dword [esp + 0x1f8], eax
mov dword [esp + 0x1e0], eax
mov dword [esp + 0x46c], eax
mov dword [esp + 0x468], eax
mov dword [esp + 0x128], eax
mov dword [esp + 0x3a0], eax
jmp 0x5d72ac
mov eax, edi
and eax, 1
xor eax, edi
not eax
test eax, eax
mov dword [esp + 0x494], edx
mov dword [esp + 0x47c], edx
mov edi, ecx
jne 0x5d7228
call fcn.004578a0
test eax, eax
je 0x5cedd7
xor eax, eax
test al, al
je 0x5d7989
mov cl, 0x3c
mov eax, 0xb
movzx edx, cl
cmp edx, 0x13
je 0x5cee05
xor eax, eax
test al, al
jne 0x5d4c31
mov dword [esp + 0x4dc], 0
lea eax, [esp + 0x4c8]
mov dword [esp], eax
call fcn.00419e10
lea eax, [esp + 0x4d8]
mov dword [esp + 0x4b0], eax
mov dword [esp + 0x4d8], 0
mov dword [esp + 0x4d0], 0
mov eax, dword [esp + 0x4dc]
lea ecx, [esp + 0x4d0]
mov dword [esp + 0x10], ecx
lea ecx, [esp + 0x4dc]
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
mov dword [esp + 0x14], 0xc
mov dword [esp + 0xc], 4
mov dword [esp], 0x80dcf8
call fcn.0078aa10
mov dword [esp + 0x3c0], eax
mov ecx, dword [esp + 0x4d0]
mov dword [esp + 0x3bc], ecx
or eax, ecx
mov ecx, eax
and ecx, 1
inc ecx
xor ecx, eax
sete cl
movzx ecx, cl
cmp eax, ecx
je 0x5cefdd
xor esi, esi
jmp 0x5cef24
mov eax, esi
not eax
and eax, 1
add eax, esi
setne al
movzx eax, al
add esi, eax
mov eax, dword [esp + 0x3bc]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x3c0]
mov dword [esp + 4], eax
mov dword [esp], str.Failed_to_retrieve_list_of_connected_Sentinel_HL_keys___error_0x_x_0x_x__n
call fcn.004414c0
mov eax, dword [esp + 0x4b0]
mov eax, dword [eax]
mov dword [esp], eax
call fcn.004936c0
test esi, esi
je 0x5ceee0
jmp 0x5d7989
mov ebx, 6
mov dword [esp + 0x4dc], 0
lea eax, [esp + 0x4c8]
mov dword [esp], eax
call fcn.00419e10
lea eax, [esp + 0x4d8]
mov dword [esp + 0x4b0], eax
mov dword [esp + 0x4d8], 0
mov dword [esp + 0x4d0], 0
mov eax, dword [esp + 0x4dc]
lea ecx, [esp + 0x4d0]
mov dword [esp + 0x10], ecx
lea ecx, [esp + 0x4dc]
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
mov dword [esp + 0x14], 0xc
mov dword [esp + 0xc], 4
mov dword [esp], 0x80dcf8
call fcn.0078aa10
mov dword [esp + 0x3c0], eax
mov ecx, dword [esp + 0x4d0]
mov dword [esp + 0x3bc], ecx
or eax, ecx
mov ecx, eax
imul ecx, ecx
and ecx, 3
cmp ecx, 2
sete cl
movzx ecx, cl
cmp eax, ecx
jne 0x5d90c9
lea eax, [esp + 0x4d4]
mov dword [esp + 0x314], eax
mov eax, dword [esp + 0x4d4]
shl eax, 2
mov dword [esp], eax
call fcn.004939e0
mov dword [esp + 0x4a0], eax
mov dword [esp], 4
call fcn.00412120
mov eax, dword [esp + 0x4d4]
mov ecx, eax
imul ecx, ecx
and ecx, 3
cmp ecx, 2
sete cl
movzx ecx, cl
cmp eax, ecx
jne 0x5cf048
mov edx, dword [esp + 0x4b0]
mov eax, dword [edx]
mov edi, dword [esp + 0x254]
imul ecx, edi, 0x470
mov eax, dword [eax + ecx]
mov esi, dword [esp + 0x4a0]
mov dword [esi + edi*4], eax
mov eax, dword [edx]
mov dword [esp + 0x280], eax
movzx edx, byte [eax + ecx + 0x42b]
cmp edx, 5
je 0x5cf777
mov eax, 0xb
imul edx, edx
and edx, 3
cmp edx, 2
je 0x5cf777
mov ecx, dword [esp + 0x494]
mov dword [esp + 0x47c], ecx
mov dword [esp + 0x3e4], edi
cmp eax, 2
je 0x5cf79a
xor eax, eax
test al, al
mov eax, dword [esp + 0x47c]
mov dword [esp + 0x494], eax
je 0x5cf7ad
jmp 0x5d5856
mov eax, 0xd
mov edx, dword [esp + 0x280]
cmp dword [edx + ecx + 8], 0
mov dword [esp + 0x3e4], edi
jne 0x5d868a
jmp 0x5d7808
mov eax, dword [esp + 0x47c]
mov dword [esp + 0x494], eax
jmp 0x5d5856
imul ecx, dword [esp + 0x3e4], 0x470
mov eax, dword [esp + 0x280]
movzx eax, byte [eax + ecx + 0x1c]
cmp eax, 5
jne 0x5cf7d8
mov edx, 3
sub edx, eax
xor edx, eax
jne 0x5d7808
mov eax, 0xe
mov dl, byte [esp + 0x156]
movzx edx, dl
cmp edx, 0x31
je 0x5cf817
cmp edx, 0x41
jne 0x5cf838
mov edi, 1
mov byte [esp + 0x156], 0x7e
mov eax, dword [esp + 0x280]
mov esi, dword [eax + ecx + 4]
call fcn.0061b160
cmp esi, eax
jne 0x5cf871
jmp 0x5d1584
mov ecx, dword [esp + 0x300]
mov esi, dword [esp + 0x340]
mov edi, dword [esp + 0x388]
mov edx, dword [esp + 0x334]
jmp 0x5d80a8
mov byte [esp + 0x156], 0x41
mov eax, dword [esp + 0x280]
mov esi, dword [eax + ecx + 4]
call fcn.0061b160
cmp esi, eax
je 0x5d811b
mov eax, 1
imul esi, esi
and esi, 3
cmp esi, 3
jne 0x5d41ba
jmp 0x5d811b
mov eax, 0x12
mov ecx, dword [esp + 0x4b0]
mov edx, dword [ecx]
imul esi, dword [esp + 0x3e4], 0x470
movzx ecx, byte [edx + esi + 0x42b]
cmp ecx, 7
mov edi, dword [esp + 0x4ac]
jne 0x5d05b5
imul ecx, ecx
and ecx, 3
cmp ecx, 1
ja 0x5d05b5
mov edi, dword [esp + 0x4ac]
lea eax, [edi + 0xcc]
mov dword [esp + 0x100], eax
mov eax, dword [edi + 0xcc]
mov ecx, dword [esp + 0x318]
cmp eax, dword [ecx]
mov ebx, dword [esp + 0x1f4]
je 0x5cfb7d
mov ecx, eax
and ecx, 1
inc ecx
xor ecx, eax
je 0x5cfb7d
movzx ecx, bl
cmp ecx, 0x1d
je 0x5cfbda
mov eax, 1
mov edi, 8
cmp ecx, 0x45
mov ecx, dword [esp + 0x3b0]
mov esi, dword [esp + 0x47c]
je 0x5d00fe
jmp 0x5d8057
mov eax, dword [edi + 0x1cc]
mov ecx, eax
imul ecx, ecx
and ecx, 3
cmp ecx, 3
sete cl
movzx ecx, cl
cmp eax, ecx
jne 0x5d063f
mov eax, dword [edi + 0xe8]
mov ecx, dword [esp + 0x3e4]
imul edi, ecx, 0x470
mov ecx, dword [esp + 0x3c8]
cmp eax, dword [ecx + edi + 0x14]
je 0x5cfc1b
mov esi, 0xc
mov al, 1
test al, al
je 0x5cfc1b
mov eax, dword [esp + 0x310]
mov ebx, dword [esp + 0x220]
jmp 0x5d66ed
xor esi, esi
jmp 0x5cfbfb
mov ebx, 0x8d
add bl, 0xb8
cmp eax, 0xffffffff
setne al
movzx eax, al
add esi, eax
mov dword [esp], edi
call fcn.005bf5d0
mov eax, esi
and eax, 1
xor eax, esi
cmp eax, 0xffffffff
setne cl
movzx ecx, cl
cmp esi, ecx
jb 0x5cfbe0
mov dword [esp + 0x1f4], ebx
jmp 0x5d063f
mov eax, dword [esp + 0x4ac]
mov eax, dword [eax + 0xec]
mov ecx, dword [esp + 0x3c8]
cmp eax, dword [ecx + edi + 0x18]
jne 0x5d063f
mov ecx, eax
not ecx
and ecx, 1
add ecx, eax
je 0x5d063f
mov esi, 0x20
mov ebx, dword [esp + 0x4ac]
mov eax, dword [ebx + 0x114]
mov dword [esp], eax
call fcn.004936c0
lea eax, [ebx + 0x110]
mov dword [esp + 0x40], eax
mov eax, dword [ebx + 0x110]
mov dword [esp], eax
call fcn.004936c0
mov dword [ebx + 0x114], 0
mov dword [ebx + 0x110], 0
mov eax, dword [esp + 0x3c8]
cmp byte [eax + edi + 0x228], 0
jne 0x5cfcbb
mov ecx, dword [esp + 0x47c]
mov dword [esp + 0x494], ecx
mov edi, eax
mov eax, dword [esp + 0x4c0]
jmp 0x5d0d4e
lea esi, [eax + edi + 0x228]
xor edi, edi
mov ebx, 0xcf
add ebx, 0xffffff40
jmp 0x5cfd06
mov eax, edi
not eax
and eax, 1
add eax, edi
setne al
movzx eax, al
add edi, eax
mov dword [esp], esi
call fcn.00493b90
mov ecx, dword [esp + 0x4ac]
mov dword [ecx + 0x114], eax
mov eax, edi
and eax, 1
xor eax, edi
cmp eax, 0xffffffff
setne al
movzx eax, al
cmp edi, eax
jb 0x5cfce0
mov esi, dword [esp + 0x47c]
cmp ebx, 9
mov dword [esp + 0x494], esi
je 0x5d32cf
mov edx, dword [esp + 0x3e4]
imul esi, edx, 0x470
mov edi, dword [esp + 0x3c8]
cmp byte [edi + esi + 0x28], 0
je 0x5cfd62
lea eax, [edi + esi + 0x28]
mov dword [esp], eax
mov ebx, edx
call fcn.00493b90
mov edx, ebx
mov ecx, dword [esp + 0x40]
mov dword [ecx], eax
movzx eax, byte [esp + 0x109]
cmp eax, 0x47
jne 0x5cfe26
mov dword [esp + 0x3e4], edx
mov byte [esp + 0x109], 0x47
movsd xmm0, qword [edi + esi + 0x20]
mov ecx, dword [esp + 0x4ac]
movsd qword [ecx + 0x108], xmm0
mov dword [esp + 0x7dc], 1
lea eax, [esp + 0x7dc]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x144]
mov dword [esp + 0xc], eax
mov dword [esp + 0x24], 1
mov dword [esp + 0x1c], 0x40
mov dword [esp + 0x18], 0x19ffff01
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0x14
mov dword [esp + 4], 0
mov dword [esp], 0
mov dword [esp + 0x168], 0
xor edx, edx
call fcn.005e4eb0
test eax, eax
je 0x5d020d
mov edi, 0xd
cmp eax, 0xfb00006f
je 0x5cfedd
jmp 0x5d058a
mov dword [esp + 0x3e4], edx
mov eax, edi
mov edi, 0x13
mov byte [esp + 0x109], 0x48
movsd xmm0, qword [eax + esi + 0x20]
mov ecx, dword [esp + 0x4ac]
movsd qword [ecx + 0x108], xmm0
mov dword [esp + 0x7dc], 1
lea eax, [esp + 0x7dc]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x144]
mov dword [esp + 0xc], eax
mov dword [esp + 0x24], 1
mov dword [esp + 0x1c], 0x40
mov dword [esp + 0x18], 0x19ffff01
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0x14
mov dword [esp + 4], 0
mov dword [esp], 0
mov dword [esp + 0x168], 0
xor edx, edx
call fcn.005e4eb0
cmp eax, 0xfb00006f
je 0x5d33b5
mov ecx, 3
test eax, eax
je 0x5d5951
jmp 0x5cfee8
mov dword [esp + 0x168], 1
xor eax, eax
mov esi, dword [esp + 0x4ac]
jmp 0x5cff12
cmp ecx, 0xffffffff
setne cl
movzx ecx, cl
add eax, ecx
mov byte [esi + 0x168], 0
mov ecx, eax
and ecx, 1
xor ecx, eax
cmp ecx, 0xffffffff
setne dl
movzx edx, dl
cmp eax, edx
jb 0x5cff00
mov eax, dword [esp + 0x168]
mov dword [esp + 0x47c], eax
movzx eax, byte [esp + 0x27f]
cmp eax, 0x52
jne 0x5cff7f
mov eax, 9
mov ecx, 4
mov byte [esp + 0x27f], 0x42
mov esi, dword [esp + 0x4ac]
mov edi, dword [esi + 8]
mov dword [esp + 0x148], edi
mov edx, edi
imul edx, edx
and edx, 3
cmp edx, 3
sete dl
movzx edx, dl
cmp edi, edx
je 0x5d7e1e
jmp 0x5cffc1
mov byte [esp + 0x27f], 0x52
mov eax, dword [esp + 0x4ac]
mov ecx, dword [eax + 8]
mov dword [esp + 0x148], ecx
mov eax, ecx
imul eax, eax
and eax, 3
cmp eax, 3
sete al
movzx eax, al
cmp ecx, eax
mov eax, dword [esp + 0x47c]
mov dword [esp + 0x494], eax
je 0x5d0250
jmp 0x5cffe0
cmp eax, 9
je 0x5cffd9
mov esi, dword [esp + 0x47c]
mov eax, esi
and eax, 1
inc eax
xor eax, esi
sete al
movzx eax, al
cmp esi, eax
jne 0x5d0123
mov ebx, 0xc
mov edi, 0x17
mov dword [esp + 0xca4], 0
mov dword [esp + 0xca0], 0
mov eax, dword [esp + 0xc0]
mov dword [eax + 4], 0
mov dword [eax], 0
mov dword [eax + 0xc], 0
mov dword [eax + 8], 0
mov dword [eax + 0x14], 0
mov dword [eax + 0x10], 0
mov dword [esp + 0x824], 1
mov ecx, dword [esp + 0xb8]
mov dword [ecx], 0x2ffff10
mov eax, dword [esp + 0xb4]
mov edx, dword [esp + 0x148]
mov dword [eax], edx
mov eax, dword [esp + 0xb0]
mov dword [eax], 0x1fffff0
mov eax, dword [esp + 0xac]
mov dword [eax], 0
lea eax, [esp + 0xa58]
mov dword [esp + 0x20], eax
lea eax, [esp + 0x824]
mov dword [esp + 0x1c], eax
mov dword [esp + 8], ecx
mov dword [esp + 0x18], 4
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x10000001
mov dword [esp + 4], 4
mov dword [esp], 0
call fcn.00790e60
mov dword [esp + 0x2d0], eax
mov dword [esp + 0x1f0], 0
test eax, eax
mov ecx, dword [esp + 0x3b0]
jne 0x5d719b
mov dword [esp + 0x3b0], ecx
cmp edi, 8
jne 0x5d0159
mov eax, edi
not eax
and eax, 1
add eax, edi
je 0x5d0159
mov dword [esp + 0x47c], esi
mov al, 0x1d
jmp 0x5d0629
mov eax, 0x11
mov ecx, dword [esp + 0x4ac]
mov byte [ecx + 0x169], 1
mov ecx, dword [esp + 0x3b0]
mov bl, cl
mov edx, dword [esp + 0x4b8]
mov edi, dword [esp + 0x4c0]
mov dword [esp + 0x494], esi
jmp 0x5d56f7
mov ecx, dword [esp + 0xc0]
mov dword [ecx], 7
mov eax, dword [esp + 0x100]
mov eax, dword [eax]
mov edx, dword [esp + 0x78]
mov dword [edx], eax
mov eax, dword [esp + 0x4ac]
mov eax, dword [eax + 0x158]
mov edx, dword [esp + 0x74]
mov dword [edx], eax
lea eax, [esp + 0xa58]
mov edx, dword [esp + 0x70]
mov dword [edx], eax
mov eax, dword [esp + 0x6c]
mov dword [eax], 0x230
lea eax, [esp + 0x838]
mov edx, dword [esp + 0x68]
mov dword [edx], eax
mov edi, 0x12
mov eax, dword [esp + 0x104]
mov dword [esp + 0x10], eax
mov dword [esp + 8], ecx
mov dword [esp + 0x14], 8
mov dword [esp + 0xc], 0x18
mov dword [esp + 4], 7
mov dword [esp], 0x80dcf8
call fcn.0078aa10
test eax, eax
je 0x5d0204
mov edx, 6
mov ecx, eax
and ecx, 1
inc ecx
xor ecx, eax
mov dword [esp + 0x44], eax
jne 0x5d977a
jmp 0x5d6658
mov dword [esp + 0x44], eax
jmp 0x5d6658
mov eax, dword [esp + 0x64]
movzx eax, byte [eax]
mov ecx, eax
not ecx
and ecx, 1
add ecx, eax
setne cl
and cl, al
movzx eax, cl
lea edx, [eax + 1]
xor edx, eax
sete dl
movzx edx, dl
mov dword [esp + 0x47c], 0
cmp eax, edx
mov eax, dword [esp + 0x4ac]
mov byte [eax + 0x168], cl
je 0x5cff34
xor esi, esi
mov ebx, 0xffffffff
mov eax, 0x23
add eax, 0xfffffff1
mov dword [esp + 0x47c], eax
mov ecx, dword [esp + 0x38c]
mov edx, dword [esp + 0x384]
mov edi, dword [esp + 0x4ac]
jmp 0x5d0296
inc esi
mov dword [esp], edi
call fcn.00411700
mov dword [esp], edi
call fcn.0041d160
dec ebx
xor ecx, ecx
xor edx, edx
mov eax, esi
and eax, 1
xor eax, ebx
setne al
movzx eax, al
cmp esi, eax
jb 0x5d0280
mov esi, dword [esp + 0x47c]
cmp esi, 0xf
jne 0x5d02f2
mov edi, 0xc
mov byte [esp + 0x20b], 0xe
mov eax, dword [esp + 0x330]
cmp eax, 0xffff
jne 0x5d0313
mov dword [esp + 0x384], edx
mov dword [esp + 0x38c], ecx
mov ecx, eax
and eax, 1
xor eax, ecx
not eax
test eax, eax
jne 0x5d87fc
jmp 0x5d834d
mov dword [esp + 0x38c], ecx
mov ebx, dword [esp + 0x470]
mov eax, dword [esp + 0x330]
mov edi, dword [esp + 0x3b4]
jmp 0x5d8937
mov dword [esp + 0x384], edx
mov dword [esp + 0x38c], ecx
jmp 0x5d834d
mov eax, esi
not eax
and eax, 1
add eax, esi
setne al
movzx eax, al
cmp esi, eax
jb 0x5d0330
mov dword [esp + 0x47c], esi
mov byte [esp + 0x10a], 0x5b
mov eax, dword [esp + 0x104]
mov eax, dword [eax]
mov dword [esp + 0x60], eax
test eax, eax
mov dword [esp + 0x1f0], eax
mov dword [esp + 0x2d0], eax
jne 0x5d8e68
xor esi, esi
lea edi, [esp + 0x838]
xor ebx, ebx
mov ecx, dword [esp + 0x1f0]
mov eax, dword [esp + 0x2d0]
jmp 0x5d042c
mov eax, ebx
not eax
and eax, 1
add eax, ebx
setne al
movzx eax, al
add ebx, eax
mov eax, dword [esp + 0x824]
mov ecx, dword [esp + 0x3dc]
mov dword [esp + 8], ecx
mov dword [esp + 4], edi
mov dword [esp], eax
call fcn.00791100
mov ecx, eax
imul ecx, ecx
and ecx, 3
cmp ecx, 2
sete cl
movzx ecx, cl
cmp eax, ecx
mov ecx, dword [esp + 0x820]
cmovne ecx, esi
mov edx, ebx
imul edx, edx
and edx, 3
cmp edx, 2
sbb edx, edx
and edx, 1
cmp ebx, edx
jb 0x5d03e0
mov dword [esp + 0x2d0], eax
mov dword [esp + 0x1f0], ecx
mov eax, dword [esp + 0x47c]
mov dword [esp + 0x494], eax
movzx ecx, byte [esp + 0x29b]
cmp ecx, 1
je 0x5d0497
mov eax, 8
cmp ecx, 0x36
jne 0x5d04c9
mov byte [esp + 0x29b], 0x36
mov eax, dword [esp + 0x2d0]
cmp eax, 0xfb0000b2
je 0x5d643f
test eax, eax
je 0x5d05f1
mov edi, 4
mov byte [esp + 0x29b], 0xb
mov ecx, dword [esp + 0x2d0]
cmp ecx, 0xfb0000b2
je 0x5d6398
mov eax, 0xd
test ecx, ecx
je 0x5d05f1
jmp 0x5d7d8f
mov ebx, dword [esp + 0x434]
jmp 0x5d4583
cmp edi, 2
je 0x5d0250
xor eax, eax
test al, al
je 0x5cfee8
jmp 0x5d0250
mov dword [esp + 0x4ac], edi
cmp eax, 0xc
je 0x5d0250
mov edi, 0xf
call fcn.004449d0
mov ecx, dword [esp + 0x1f0]
cmp ecx, eax
jne 0x5d74ae
mov dword [esp + 0x47c], esi
mov al, 0xc
mov dword [esp + 0x1f4], eax
mov eax, dword [esp + 0x4ac]
mov dword [esp], eax
call fcn.005bf5d0
mov eax, dword [esp + 0x4ac]
mov dword [esp], eax
call fcn.0041d160
mov eax, dword [esp + 0x47c]
mov dword [esp + 0x494], eax
mov al, byte [esp + 0x2ce]
movzx ecx, al
cmp ecx, 0x4f
je 0x5d068a
mov ebx, 0x16
mov eax, 7
cmp ecx, 0x50
mov edi, dword [esp + 0x388]
je 0x5d4db6
jmp 0x5d2403
mov byte [esp + 0x2ce], 0x4f
mov eax, dword [esp + 0x2a0]
mov dword [esp], eax
mov dword [esp + 4], 0x100
call fcn.00454a70
mov eax, dword [esp + 0x324]
mov ecx, dword [eax]
xor edx, edx
mov eax, dword [0x80dd14]
test eax, eax
jne 0x5d0880
mov esi, eax
and esi, 1
xor esi, eax
not esi
test esi, esi
jne 0x5d0afc
jmp 0x5d0880
mov byte [esp + 0x2ce], 0x50
mov eax, dword [esp + 0x2a0]
mov dword [esp], eax
mov dword [esp + 4], 0x100
call fcn.00454a70
mov eax, dword [esp + 0x324]
mov ecx, dword [eax]
xor edx, edx
mov eax, dword [0x80dd14]
test eax, eax
jne 0x5d0728
mov dword [esp + 0x388], edi
mov edi, 8
mov esi, eax
imul esi, esi
and esi, 3
cmp esi, 2
jb 0x5d0734
jmp 0x5d0880
mov dword [esp + 0x388], edi
jmp 0x5d0880
cmp edi, 3
je 0x5d0748
xor ecx, ecx
nop word cs:[eax + eax]
mov esi, ecx
mov ecx, dword [esp + 0x4b4]
mov ecx, dword [ecx]
mov dword [esp + 0x47c], ecx
mov eax, dword [eax + 8]
mov edx, esi
shl edx, 6
mov ecx, dword [eax + edx]
mov dword [esp + 0x464], ecx
mov ebx, dword [eax + edx + 4]
mov eax, dword [eax + edx + 0xc]
mov ecx, dword [esp + 0x4c4]
mov edx, dword [ecx]
mov ecx, dword [ecx + 4]
mov edi, dword [esp + 0x47c]
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x464]
mov dword [esp + 8], eax
mov dword [esp + 4], ecx
mov dword [esp], edx
mov dword [esp + 0x3c], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x34], 0
mov dword [esp + 0x30], 0
mov dword [esp + 0x2c], 0
mov dword [esp + 0x28], 0
mov dword [esp + 0x24], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
call fcn.0042fd40
mov edi, eax
mov dword [esp], edi
call fcn.00411e90
mov dword [esp], edi
call fcn.004302d0
mov eax, esi
not eax
and eax, 1
add eax, esi
setne al
movzx ecx, al
add ecx, esi
mov eax, dword [esp + 0xfa0]
cmp ecx, dword [eax]
jb 0x5d0780
movzx esi, byte [esp + 0x45f]
cmp esi, 0x1c
je 0x5d08d0
cmp esi, 0x47
je 0x5d0910
cmp esi, 0x73
jne 0x5d0940
mov byte [esp + 0x45f], 0x73
mov edi, dword [eax + 0xc]
mov dword [esp + 0x3c4], edi
mov esi, dword [edi + 4]
xor esi, edx
mov edi, dword [edi]
xor edi, ecx
or edi, esi
jne 0x5d0980
jmp 0x5d09a6
mov edi, dword [eax + 0xc]
mov dword [esp + 0x3c4], edi
mov esi, dword [edi]
mov edi, dword [edi + 4]
xor edi, edx
mov ebx, esi
xor ebx, ecx
or ebx, edi
mov byte [esp + 0x45f], 0x47
jne 0x5d0980
mov ebx, 0x13
imul esi, esi
and esi, 3
cmp esi, 2
jae 0x5d0980
jmp 0x5d7f78
mov edi, dword [eax + 0xc]
mov dword [esp + 0x3c4], edi
mov esi, dword [edi]
mov edi, dword [edi + 4]
xor edi, edx
mov ebx, esi
xor ebx, ecx
or ebx, edi
mov byte [esp + 0x45f], 0x2b
jne 0x5d0980
mov edi, 3
sub edi, esi
xor edi, esi
je 0x5d0980
jmp 0x5d09a6
mov edi, dword [eax + 0xc]
mov dword [esp + 0x3c4], edi
mov esi, dword [edi]
mov edi, dword [edi + 4]
xor edi, edx
mov ebx, esi
xor ebx, ecx
or ebx, edi
mov byte [esp + 0x45f], 0x1c
jne 0x5d0980
mov ebx, 0xe
mov edi, esi
and edi, 1
xor edi, esi
not edi
test edi, edi
jne 0x5d09b9
nop word cs:[eax + eax]
mov edi, 2
mov eax, dword [eax + 4]
test eax, eax
je 0x5d6084
mov esi, eax
imul esi, esi
and esi, 3
cmp esi, 3
jne 0x5d0880
jmp 0x5d6084
mov edx, dword [esp + 0x4b8]
mov edi, dword [esp + 0x4c0]
jmp 0x5d7f8f
mov edx, dword [esp + 0x4b8]
mov edi, dword [esp + 0x4c0]
jmp 0x5d5493
mov esi, dword [esp + 0x1ac]
lea eax, [esi + 0x18]
mov dword [esp + 4], eax
mov dword [esp], 0x80dd14
call fcn.007c5260
mov edi, dword [esi + 0xc]
test edi, edi
je 0x5d0a72
mov eax, 0xf
mov ecx, dword [esp + 0x460]
movzx edx, cl
cmp edx, 0x38
je 0x5d0a9c
mov ecx, 2
cmp edx, 0x5c
jne 0x5d0ac4
mov byte [esp + 0x47c], bl
xor esi, esi
mov bl, 1
mov bh, byte [esp + 0x2e3]
jmp 0x5d0a47
mov eax, 0x91
xor al, 0x83
mov dword [esp + 0x460], eax
inc esi
mov dword [esp], edi
call fcn.004936c0
test esi, esi
je 0x5d0a30
test bl, bl
je 0x5d0a30
mov dword [esp + 0x388], edi
mov dl, bh
mov eax, dword [esp + 0x1ac]
mov dword [esp + 0x184], eax
mov ebx, dword [esp + 0x480]
jmp 0x5d57dd
mov byte [esp + 0x47c], bl
mov dword [esp + 0x388], edi
mov al, byte [esp + 0x2e3]
mov dl, al
mov dword [esp + 0x184], esi
mov ebx, dword [esp + 0x480]
jmp 0x5d57dd
mov byte [esp + 0x47c], bl
mov ecx, dword [esp + 0x4c0]
mov dword [esp + 0x464], ecx
mov dword [esp + 0x184], esi
mov dl, byte [esp + 0x2ef]
jmp 0x5d5665
mov byte [esp + 0x47c], bl
mov al, byte [esp + 0x2e3]
mov dword [esp + 0x3b0], eax
mov dword [esp + 0x184], esi
jmp 0x5d24da
mov byte [esp + 0x266], 0x11
mov eax, dword [esp + 0x184]
mov dword [esp], eax
call fcn.004936c0
call fcn.0041cc50
mov edi, eax
mov dword [esp + 0x4c0], edi
imul esi, dword [esp + 0x3e4], 0x470
mov ebx, dword [esp + 0x3c8]
lea eax, [ebx + esi + 4]
mov dword [esp + 0x2f0], eax
mov eax, dword [ebx + esi + 4]
lea ecx, [edi + 8]
mov dword [esp + 0x4b4], ecx
mov dword [edi + 8], eax
mov eax, dword [esp + 0x324]
mov eax, dword [eax]
mov dword [edi], eax
mov dword [edi + 4], 0
mov al, byte [ebx + esi + 0x1c]
mov byte [edi + 0xd8], al
mov eax, dword [esp + 0x318]
mov eax, dword [eax]
lea ecx, [edi + 0xcc]
mov dword [esp + 0x278], ecx
mov dword [edi + 0xcc], eax
mov eax, dword [ebx + esi + 0xc]
mov dword [edi + 0xd4], eax
mov eax, dword [ebx + esi + 0x10]
mov dword [edi + 0xe4], eax
mov byte [edi + 0xf4], 0
lea eax, [edi + 0xc]
mov dword [esp + 0x488], eax
mov dword [edi + 0xc], 0
mov dword [edi + 0x60], 4
mov eax, dword [str.WALLE]
lea ecx, [edi + 0x68]
mov dword [esp + 8], eax
mov dword [esp], ecx
mov dword [esp + 4], 0x20
call fcn.004959f0
mov dword [edi + 0x1d4], 0
lea eax, [edi + 0x160]
mov dword [esp + 0x478], eax
mov dword [edi + 0x160], 0
lea eax, [edi + 0x10]
mov dword [esp + 0x268], eax
mov dword [esp], eax
mov dword [esp + 4], 0x29
call fcn.00446640
mov al, byte [ebx + esi + 0x42b]
lea ecx, [edi + 0x167]
mov dword [esp + 0x2fc], ecx
mov byte [edi + 0x167], al
mov edi, ebx
lea eax, [edi + esi + 0x228]
mov dword [esp + 0x364], eax
movzx eax, byte [edi + esi + 0x228]
test eax, eax
jne 0x5d0ca2
mov ecx, 3
sub ecx, eax
xor ecx, eax
je 0x5d0ca2
mov ebx, 0x1e
mov eax, dword [esp + 0x424]
mov edx, dword [esp + 0x420]
mov edi, dword [esp + 0x41c]
mov ecx, dword [esp + 0x4c0]
mov dword [esp + 0x4c4], ecx
cmp ebx, 0xe
je 0x5d0d21
mov ecx, ebx
and ecx, 1
inc ecx
xor ecx, ebx
mov ecx, dword [esp + 0x4b8]
mov dword [esp + 0x424], eax
mov dword [esp + 0x420], edx
mov dword [esp + 0x41c], edi
mov edi, dword [esp + 0x4c0]
jne 0x5d0de8
mov ebx, dword [esp + 0x1a0]
movzx eax, bl
cmp eax, 0x25
jne 0x5d0d3b
xor esi, esi
mov edi, dword [esp + 0x364]
jmp 0x5d0ceb
mov ebx, 0x17
xor bl, 0x32
mov eax, esi
imul eax, eax
and eax, 3
cmp eax, 2
adc esi, 0
mov dword [esp], edi
call fcn.00493b90
mov ecx, dword [esp + 0x4c0]
mov dword [ecx + 0x114], eax
mov eax, esi
not eax
and eax, 1
add eax, esi
setne al
movzx eax, al
cmp esi, eax
jb 0x5d0cc0
mov dword [esp + 0x1a0], ebx
mov ecx, dword [esp + 0x4b8]
mov eax, dword [esp + 0x4c0]
mov edi, eax
mov dword [esp + 0x4c4], eax
jmp 0x5d0de8
mov dword [esp + 0x424], eax
mov dword [esp + 0x420], edx
mov dword [esp + 0x41c], edi
jmp 0x5d930f
mov esi, 0x10
mov eax, dword [esp + 0x4c0]
mov dword [esp + 0x4c4], eax
mov dword [esp + 0x4c0], eax
cmp esi, 0x10
jne 0x5d0e37
mov eax, esi
not eax
and eax, 1
add eax, esi
je 0x5d0e43
xor esi, esi
mov ebx, dword [esp + 0x1a0]
jmp 0x5d0db8
mov ebx, 0xc1
xor bl, 0xcb
mov eax, esi
or eax, 2
mov ecx, esi
xor ecx, 2
add ecx, eax
setne al
movzx eax, al
add esi, eax
mov eax, dword [esp + 0x364]
mov dword [esp], eax
call fcn.00493b90
mov ecx, dword [esp + 0x4c0]
mov dword [ecx + 0x114], eax
mov eax, esi
and eax, 1
xor eax, esi
cmp eax, 0xffffffff
setne al
movzx eax, al
cmp esi, eax
jb 0x5d0d80
mov dword [esp + 0x1a0], ebx
mov dword [esp + 0x3c8], edi
mov ecx, dword [esp + 0x4b8]
mov edi, dword [esp + 0x4c0]
mov esi, ecx
imul eax, dword [esp + 0x3e4], 0x470
mov edx, dword [esp + 0x3c8]
movzx ecx, byte [edx + eax + 0x28]
test ecx, ecx
jne 0x5d0e19
imul ecx, ecx
and ecx, 3
cmp ecx, 2
jae 0x5d0e19
mov dword [esp + 0x4b8], esi
jmp 0x5d0e4f
lea eax, [edx + eax + 0x28]
mov ebx, 0x1b
mov dword [esp], eax
call fcn.00493b90
mov dword [edi + 0x110], eax
mov edx, esi
jmp 0x5d8521
mov dword [esp + 0x3c8], edi
jmp 0x5cfd31
mov dword [esp + 0x3c8], edi
jmp 0x5cfd31
mov al, byte [esp + 0x265]
movzx eax, al
cmp eax, 0x52
jne 0x5d0eb4
mov ebx, 5
mov byte [esp + 0x265], 0x52
imul eax, dword [esp + 0x3e4], 0x470
movsd xmm0, qword [edx + eax + 0x20]
movsd qword [edi + 0x108], xmm0
mov eax, dword [esp + 0x2fc]
movzx ecx, byte [eax]
cmp ecx, 7
jne 0x5d0ef9
mov dword [esp + 0x3c8], edx
mov eax, 4
mov edx, ecx
or edx, 2
xor ecx, 2
add ecx, edx
jne 0x5d9705
jmp 0x5d6d55
mov eax, 0xe
mov byte [esp + 0x265], 0x37
imul ecx, dword [esp + 0x3e4], 0x470
movsd xmm0, qword [edx + ecx + 0x20]
mov dword [esp + 0x3c8], edx
movsd qword [edi + 0x108], xmm0
mov ecx, dword [esp + 0x2fc]
movzx ecx, byte [ecx]
cmp ecx, 7
je 0x5d4460
jmp 0x5d6d74
mov dword [esp + 0x3c8], edx
jmp 0x5d6d55
mov eax, 0x10
mov edx, dword [esp + 0x3e4]
imul ecx, edx, 0x470
cmp byte [edi + ecx + 0x467], 0
jne 0x5d0f47
mov eax, 0x10
cmp byte [edi + ecx + 0x468], 0
mov dword [esp + 0x3c8], edi
mov edi, dword [esp + 0x464]
jne 0x5d6d74
jmp 0x5d6947
mov ebx, dword [esp + 0x250]
xor ecx, ecx
cmp eax, 0x10
jne 0x5d0f81
mov dword [esp + 0x3e4], edx
mov edx, eax
not edx
and edx, 1
add edx, eax
je 0x5d0fc4
mov dword [esp + 0x250], ebx
mov dword [esp + 0x3c8], edi
mov edi, dword [esp + 0x464]
jmp 0x5d6d74
mov dword [esp + 0x3e4], edx
jmp 0x5d0fc4
mov edx, 0x10
lea eax, [edx + 0x73]
xor eax, edx
xor eax, 0x97
lea edx, [eax + edx + 0x73]
add dl, 0xec
mov dword [esp + 0x374], edx
inc ecx
mov edx, dword [esp + 0x3f4]
mov dword [edx], 1
mov edx, dword [esp + 0x378]
mov ebx, dword [edx]
mov edx, ecx
or edx, 2
mov esi, ecx
xor esi, 2
add esi, edx
setne dl
movzx edx, dl
cmp ecx, edx
jb 0x5d0f90
mov ecx, dword [esp + 0x464]
mov dword [esp + 0x4c0], ecx
mov dword [esp + 0x250], ebx
mov dword [esp + 0x3c8], edi
cmp eax, 4
je 0x5d1016
imul eax, eax
and eax, 3
cmp eax, 3
mov edi, dword [esp + 0x4c0]
jne 0x5d6eb8
jmp 0x5d96b7
mov edi, dword [esp + 0x4c0]
jmp 0x5d96b7
mov ebx, 0xf0
xor bl, 0xd1
inc eax
mov ecx, dword [edx]
mov esi, dword [esp + 0x4c4]
mov dword [esi], ecx
mov dword [esi + 4], 0
mov ecx, dword [esp + 0x4b4]
mov dword [ecx], 0xffffff
mov ecx, dword [esp + 0x478]
mov dword [ecx], 1
mov dword [esp + 0x458], 0
mov esi, dword [esp + 0x464]
xor edi, edi
mov ecx, eax
not ecx
and ecx, 1
add ecx, eax
setne cl
movzx ecx, cl
cmp eax, ecx
jb 0x5d1030
mov dword [esp + 0x418], ebx
mov dword [esp + 0x288], edi
mov dword [esp + 0x28c], esi
mov dword [esp + 0x15c], edx
mov edi, dword [esp + 0x464]
jmp 0x5d7c48
mov eax, dword [esp + 0xc8]
mov dword [eax], 0xffffff
mov eax, dword [esp + 0xc4]
mov byte [eax], 0xff
mov eax, dword [esp + 0x284]
mov byte [eax], 0xff
mov eax, dword [esp + 0x214]
mov dword [esp], eax
mov dword [esp + 8], 0x2a
mov dword [esp + 4], 0x7f7594
call fcn.007c51d0
lea esi, [esp + 0x630]
mov dword [esp], esi
call fcn.0078a330
test eax, eax
jne 0x5d11bd
mov al, byte [esp + 0x157]
movzx eax, al
cmp eax, 0x23
je 0x5d1221
mov dword [esp + 0x434], ebx
mov dword [esp + 0x470], edi
mov ecx, 7
mov dword [esp + 0x48c], 0x70000003
mov dword [esp + 0x3ac], 0
mov dword [esp + 0x3d0], 0x700002bb
mov eax, dword [esp + 0x464]
mov dword [esp + 0x4c0], eax
mov dword [esp + 0x424], 0
mov dword [esp + 0x41c], eax
mov dword [esp + 0x420], 0
jmp 0x5d1381
cmp ecx, 7
je 0x5d930f
imul ecx, ecx
and ecx, 3
cmp ecx, 3
je 0x5d930f
mov edi, 7
mov byte [esp + 0x393], 4
mov eax, dword [esp + 0x4a8]
mov dword [esp], eax
call fcn.00411ea0
mov esi, dword [esp + 0x494]
cmp edi, 7
jne 0x5d13dc
mov dword [esp + 0x47c], esi
imul edi, edi
and edi, 3
cmp edi, 2
jb 0x5d4c3d
jmp 0x5d8e68
mov dword [esp + 0x47c], esi
jmp 0x5d8e68
mov eax, edi
and eax, 1
xor eax, edi
cmp eax, 0xffffffff
setne al
movzx eax, al
cmp edi, eax
je 0x5d811b
cmp eax, 1
jne 0x5d16a8
imul eax, eax
and eax, 3
cmp eax, 2
jae 0x5d16a8
mov dword [esp + 0x1a8], edx
mov dword [esp + 0x300], ebx
mov dword [esp + 0x1dc], edi
mov dword [esp + 0x15c], esi
jmp 0x5d2ff8
mov dword [esp + 0x1a8], edx
mov dword [esp + 0x300], ebx
mov dword [esp + 0x1dc], edi
mov dword [esp + 0x15c], esi
mov byte [esp + 0x21b], 0x66
mov esi, dword [esp + 0x2c0]
mov dword [esp], esi
mov dword [esp + 8], 0x268
mov dword [esp + 4], 0
call fcn.007ce3c0
mov dword [esp + 0xc], esi
mov dword [esp + 0x24], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0x12
mov dword [esp + 4], 0
mov dword [esp], 0
xor edx, edx
mov ecx, dword [esp + 0x4c0]
call fcn.005e4eb0
mov ecx, eax
imul ecx, ecx
and ecx, 3
cmp ecx, 3
sete cl
movzx ecx, cl
cmp eax, ecx
jne 0x5d3018
mov eax, dword [esp + 0xcc]
movzx edx, byte [eax]
mov eax, edx
imul eax, eax
and eax, 3
cmp eax, 3
sete al
movzx esi, al
mov eax, dword [esp + 0x2c0]
movzx eax, byte [eax]
mov ecx, eax
not ecx
and ecx, 1
add ecx, eax
setne cl
cmp edx, esi
je 0x5d17c1
movzx ecx, cl
movzx eax, al
cmp eax, ecx
je 0x5d17c1
mov ecx, dword [esp + 0x4c4]
mov eax, dword [ecx]
mov ecx, dword [ecx + 4]
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
mov dword [esp], str.Sentinel_HL__llu_supports_unknown_protocol_revision._Ignoring_key_n
call fcn.004414c0
jmp 0x5d3018
mov eax, 1
mov cl, byte [esp + 0x1e7]
movzx ecx, cl
cmp ecx, 0x1a
je 0x5d855f
cmp ecx, 0x48
jne 0x5d1856
mov byte [esp + 0x1e7], 0x48
mov eax, dword [esp + 0x2c0]
mov dword [esp + 0xc], eax
mov dword [esp + 0x24], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0x12
mov dword [esp + 4], 0
mov dword [esp], 0
mov edx, 1
mov ecx, dword [esp + 0x4c0]
call fcn.005e4eb0
test eax, eax
je 0x5d18eb
jmp 0x5d3018
mov byte [esp + 0x1e7], 0x1a
jmp 0x5d186f
mov dword [esp + 0x320], esi
mov byte [esp + 0x1e7], 0x2d
mov eax, dword [esp + 0x2c0]
mov dword [esp + 0xc], eax
mov dword [esp + 0x24], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0x12
mov dword [esp + 4], 0
mov dword [esp], 0
mov edx, 1
mov ecx, dword [esp + 0x4c0]
call fcn.005e4eb0
mov ecx, eax
imul ecx, ecx
and ecx, 3
cmp ecx, 3
sete cl
movzx ecx, cl
cmp eax, ecx
jne 0x5d3018
mov eax, dword [esp + 0xf4]
movzx eax, word [eax]
imul eax, eax, 0x15180
mov edi, dword [esp + 0x4c0]
mov dword [edi + 0x130], eax
mov eax, dword [esp + 0xf0]
mov al, byte [eax]
mov ecx, dword [esp + 0x2fc]
mov byte [ecx], al
mov eax, dword [esp + 0xec]
mov eax, dword [eax]
movzx ecx, al
mov dword [edi + 0x134], ecx
movzx ecx, ah
mov dword [edi + 0x138], ecx
shr eax, 0x10
movzx eax, al
mov dword [edi + 0x13c], eax
mov eax, dword [esp + 0xe8]
mov al, byte [eax]
mov byte [edi + 0xf5], al
mov eax, dword [esp + 0xe4]
movzx eax, byte [eax]
cmp eax, 4
sete cl
mov byte [edi + 0x119], al
mov edx, dword [esp + 0xe0]
mov dl, byte [edx]
mov ch, al
and ch, 0xf
mov dh, dl
shl dh, 4
or dh, ch
mov esi, eax
not esi
and esi, 1
add esi, eax
mov byte [edi + 0x11a], dl
mov byte [edi + 0x118], dh
mov byte [edi + 0x11b], al
mov byte [edi + 0x11c], dl
setne al
and al, cl
movzx eax, al
mov dword [edi + 0x144], eax
mov eax, dword [esp + 0xdc]
mov al, byte [eax]
mov byte [edi + 0x11e], al
mov eax, dword [esp + 0xd4]
movzx eax, byte [eax]
shl eax, 8
mov ecx, dword [esp + 0xd8]
movzx ecx, byte [ecx]
or ecx, eax
mov dword [edi + 0xd0], ecx
lea eax, [edi + 0x11e]
mov dword [esp + 0x270], eax
mov eax, dword [esp + 0x2c0]
mov dword [esp + 0xc], eax
mov dword [esp + 0x24], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0x12
mov dword [esp + 4], 0
mov dword [esp], 0
mov edx, 2
mov ecx, edi
call fcn.005e4eb0
mov ecx, eax
imul ecx, ecx
and ecx, 3
cmp ecx, 3
sete cl
movzx ecx, cl
cmp eax, ecx
jne 0x5d3018
mov eax, dword [esp + 0xa8]
mov ax, word [eax]
mov word [edi + 0x164], ax
mov eax, dword [esp + 0xa4]
movzx eax, byte [eax]
mov ecx, 3
sub ecx, eax
xor ecx, eax
setne cl
sub al, cl
mov byte [edi + 0x166], al
mov eax, dword [esp + 0xa0]
mov eax, dword [eax]
mov dword [edi + 0x174], eax
call fcn.0044c050
mov dword [edi + 0x17c], edx
mov dword [edi + 0x178], eax
mov dword [esp], 0x1600
call fcn.004939e0
mov dword [esp + 0xd0], eax
lea eax, [esp + 0xf38]
mov dword [esp], eax
call fcn.00419e10
mov eax, dword [esp + 0x2f4]
mov dword [eax + 4], 0
mov dword [eax], 0
mov dword [eax + 0xc], 0
mov dword [eax + 8], 0
mov ecx, dword [esp + 0x170]
mov dword [ecx + 4], 0
mov dword [ecx], 0
mov dword [ecx + 8], 0
mov ecx, dword [esp + 0x2c8]
mov dword [ecx + 4], 0
mov dword [ecx], 0
mov dword [ecx + 0xc], 0
mov dword [ecx + 8], 0
mov dword [ecx + 0x14], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x18], 0
mov dword [eax], 2
mov eax, dword [esp + 0x278]
mov eax, dword [eax]
mov ecx, dword [esp + 0x9c]
mov dword [ecx], eax
mov eax, dword [esp + 0x98]
mov byte [eax], 1
mov eax, dword [esp + 0x16c]
mov dword [eax], 0
lea eax, [edi + 0x158]
mov dword [esp + 0x4c], eax
cmp dword [edi + 0x158], 0
mov eax, edi
jne 0x5d1b9c
mov dword [esp + 0x1ec], 2
mov esi, dword [esp + 0x360]
jmp 0x5d1d39
xor esi, esi
mov edx, 2
mov ebx, dword [esp + 0x1f8]
movzx eax, bl
cmp eax, 0x3e
je 0x5d1be1
cmp eax, 0x53
jne 0x5d1c8c
mov eax, 0xf
mov ecx, dword [esp + 0x4c0]
mov dword [esp + 0x464], ecx
mov edi, dword [esp + 0x360]
mov ebx, dword [esp + 0x340]
jmp 0x5d2d32
mov edi, 0xffffffff
mov eax, dword [esp + 0x4c0]
lea ebx, [eax + 0x148]
jmp 0x5d1c61
mov eax, 0xb1
add al, 0x95
mov dword [esp + 0x1f8], eax
inc esi
mov dword [esp + 4], ebx
mov eax, dword [esp + 0x2bc]
mov dword [esp], eax
mov dword [esp + 8], 0x10
call fcn.007c51d0
mov eax, dword [esp + 0x4c0]
mov eax, dword [eax + 0x158]
mov ecx, dword [esp + 0x2c8]
mov dword [ecx], eax
mov eax, dword [esp + 0x2b8]
mov byte [eax], 0xff
mov eax, dword [esp + 0x2b4]
mov dword [eax], 0xffffff
mov eax, dword [esp + 0x2f4]
mov edx, dword [eax]
dec edi
mov eax, esi
and eax, 1
xor eax, edi
setne al
movzx eax, al
cmp esi, eax
jb 0x5d1c00
mov dword [esp + 0x1ec], edx
mov esi, dword [esp + 0x360]
mov eax, dword [esp + 0x4c0]
jmp 0x5d1d39
mov eax, dword [esp + 0x4c0]
lea edi, [eax + 0x148]
jmp 0x5d1d07
mov ebx, 0x6c
add bl, 0xd2
mov eax, esi
imul eax, eax
and eax, 3
cmp eax, 2
adc esi, 0
mov dword [esp + 4], edi
mov eax, dword [esp + 0x2bc]
mov dword [esp], eax
mov dword [esp + 8], 0x10
call fcn.007c51d0
mov eax, dword [esp + 0x4c0]
mov eax, dword [eax + 0x158]
mov ecx, dword [esp + 0x2c8]
mov dword [ecx], eax
mov eax, dword [esp + 0x2b8]
mov byte [eax], 0xff
mov eax, dword [esp + 0x2b4]
mov dword [eax], 0xffffff
mov eax, dword [esp + 0x2f4]
mov edx, dword [eax]
mov eax, esi
or eax, 2
mov ecx, esi
xor ecx, 2
add ecx, eax
setne al
movzx eax, al
cmp esi, eax
jb 0x5d1ca0
mov dword [esp + 0x1f8], ebx
mov dword [esp + 0x1ec], edx
mov eax, dword [esp + 0x4c0]
mov esi, dword [esp + 0x360]
mov dword [esp + 0x360], esi
mov dword [esp + 0x4c0], eax
lea eax, [esp + 0xf44]
mov ecx, dword [esp + 0x16c]
mov dword [ecx], eax
mov eax, dword [esp + 0x13c]
mov byte [eax], 0
mov eax, dword [esp + 0x138]
mov dword [eax], 0
mov edi, dword [esp + 0x134]
mov dword [edi], pe_nt_image_headers32
mov ebx, dword [esp + 0x130]
mov eax, dword [esp + 0xd0]
mov dword [ebx], eax
mov esi, dword [esp + 0x170]
mov dword [esp + 0x10], esi
mov eax, dword [esp + 0x2f4]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x1ec]
mov dword [esp + 4], eax
mov dword [esp + 0x14], 0xc
mov dword [esp + 0xc], 0x14
mov dword [esp], 0x80dcf8
call fcn.0078aa10
mov ecx, dword [edi]
mov dword [esp + 0x20c], ecx
mov ecx, dword [ebx]
mov dword [esp + 0x308], ecx
test eax, eax
cmove eax, dword [esi]
mov ecx, eax
and ecx, 1
inc ecx
xor ecx, eax
sete cl
movzx ecx, cl
cmp eax, ecx
jne 0x5d1e53
movzx eax, byte [esp + 0x18b]
cmp eax, 9
je 0x5d1efb
cmp eax, 0x6e
je 0x5d1f38
cmp eax, 0x79
mov ebx, dword [esp + 0x434]
mov edi, dword [esp + 0x3b4]
jne 0x5d2045
mov eax, 0xd
mov byte [esp + 0x18b], 9
mov edx, dword [esp + 0x20c]
mov dword [ebx], edx
mov ecx, edx
and ecx, 1
inc ecx
xor ecx, edx
sete cl
movzx ecx, cl
cmp edx, ecx
je 0x5d2074
jmp 0x5d4d1c
mov eax, 0xb
mov cl, byte [esp + 0x17e]
movzx ecx, cl
cmp ecx, 0x5c
je 0x5d4be1
cmp ecx, 0x6c
jne 0x5d1e9a
mov edi, 0x10
mov byte [esp + 0x17e], 0x6c
mov eax, dword [esp + 0x4bc]
mov eax, dword [eax]
mov dword [esp + 0x1a8], eax
test eax, eax
jne 0x5d4362
jmp 0x5d2ff8
mov eax, 1
mov byte [esp + 0x17e], 0x5c
mov ecx, dword [esp + 0x4bc]
mov edx, dword [ecx]
test edx, edx
mov esi, dword [esp + 0x15c]
mov edi, dword [esp + 0x1dc]
mov ebx, dword [esp + 0x300]
je 0x5d1677
mov ecx, 6
mov dword [esp + 0x1a8], edx
mov edx, dword [esp + 0x1a8]
imul edx, edx
and edx, 3
cmp edx, 2
mov edx, dword [esp + 0x1a8]
jne 0x5ce543
jmp 0x5d1677
mov byte [esp + 0x18b], 0x79
mov ebx, dword [esp + 0x434]
mov ecx, dword [esp + 0x20c]
mov dword [ebx], ecx
mov eax, ecx
imul eax, eax
and eax, 3
cmp eax, 2
sete al
movzx eax, al
cmp ecx, eax
mov edi, dword [esp + 0x3b4]
jne 0x5d9423
jmp 0x5d2074
mov byte [esp + 0x18b], 0x6e
mov ebx, dword [esp + 0x434]
mov edx, dword [esp + 0x20c]
mov dword [ebx], edx
test edx, edx
mov edi, dword [esp + 0x3b4]
jne 0x5d9423
mov eax, 0x1b
mov ecx, 3
sub ecx, edx
xor ecx, edx
je 0x5d9423
cmp eax, 0xb
je 0x5d1f82
xor eax, eax
test al, al
je 0x5d2074
mov dword [esp + 0x434], ebx
mov dword [esp + 0x4dc], 0
lea eax, [esp + 0x4c8]
mov dword [esp], eax
call fcn.00419e10
mov dword [esp + 0x4d8], 0
mov dword [esp + 0x4d0], 0
mov eax, dword [esp + 0x4dc]
lea ecx, [esp + 0x4d0]
mov dword [esp + 0x10], ecx
lea ecx, [esp + 0x4dc]
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
mov dword [esp + 0x14], 0xc
mov dword [esp + 0xc], 4
mov dword [esp], 0x80dcf8
call fcn.0078aa10
mov dword [esp + 0x3c0], eax
mov ecx, dword [esp + 0x4d0]
mov dword [esp + 0x3bc], ecx
mov edx, ecx
or edx, eax
or ecx, eax
mov ebx, 8
lea ecx, [esp + 0x4d8]
mov dword [esp + 0x4b0], ecx
je 0x5d20c1
mov dword [esp + 0x3b4], edi
imul edx, edx
and edx, 3
cmp edx, 2
jne 0x5ceed1
jmp 0x5d90e6
mov eax, 8
mov byte [esp + 0x18b], 0x24
mov edx, dword [esp + 0x20c]
mov dword [ebx], edx
mov ecx, edx
imul ecx, ecx
and ecx, 3
cmp ecx, 2
sete cl
movzx ecx, cl
cmp edx, ecx
jne 0x5d941a
movzx eax, byte [esp + 0x11f]
cmp eax, 0x6e
jne 0x5d2099
mov dword [esp + 0x3b4], edi
mov dword [esp + 0x434], ebx
mov byte [esp + 0x11f], 0x3f
jmp 0x5d20af
mov dword [esp + 0x3b4], edi
mov dword [esp + 0x434], ebx
mov byte [esp + 0x11f], 0x6e
mov eax, dword [esp + 0x4bc]
mov dword [eax], 0
jmp 0x5d2ff8
mov dword [esp + 0x3b4], edi
jmp 0x5d90e6
mov dword [esp + 0x3b4], edi
mov byte [esp + 0x243], 9
imul eax, eax, 0x39
mov dword [esp], eax
call fcn.004939e0
mov ecx, dword [esp + 0x4bc]
mov dword [ecx], eax
mov ecx, dword [ebx]
mov edx, ecx
imul edx, edx
and edx, 3
cmp edx, 2
sete dl
movzx edx, dl
cmp ecx, edx
jne 0x5d9475
mov dword [esp + 0x434], ebx
mov edi, dword [esp + 0x4c0]
mov eax, dword [esp + 0x308]
mov dword [esp], eax
call fcn.004936c0
mov eax, dword [esp + 0x478]
mov eax, dword [eax]
mov ecx, eax
imul ecx, ecx
and ecx, 3
cmp ecx, 2
sete cl
movzx ecx, cl
cmp eax, ecx
jne 0x5d225e
mov eax, dword [esp + 0x2e8]
mov dword [eax + 4], 0
mov dword [eax], 0
mov dword [eax + 0xc], 0
mov dword [eax + 8], 0
mov dword [eax + 0x14], 0
mov dword [eax + 0x10], 0
mov dword [esp + 0xf34], 1
lea eax, [esp + 0xf34]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x144]
mov dword [esp + 0xc], eax
mov dword [esp + 0x24], 1
mov dword [esp + 0x1c], 0x40
mov dword [esp + 0x18], 0x5ffff02
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0x14
mov dword [esp + 4], 0
mov dword [esp], 0
xor edx, edx
mov ecx, edi
call fcn.005e4eb0
test eax, eax
jne 0x5d2278
mov ecx, 0xe
movzx edx, byte [esp + 0x18c]
cmp edx, 0x4b
je 0x5d228b
mov ecx, esi
mov esi, 0x11
cmp edx, 0x7d
jne 0x5d2297
mov dword [esp + 0x444], eax
mov dword [esp + 0x360], ecx
mov byte [esp + 0x18c], 0x66
lea eax, [edi + 0x64]
mov dword [esp + 0x490], eax
mov dword [edi + 0x64], 0
mov eax, dword [esp + 0x150]
movzx ecx, byte [eax]
mov dword [esp + 0x4a4], 0
cmp ecx, 4
ja case.default.0x5d2257
mov eax, 0xd
jmp dword [ecx*4 + 0x7deeb8]
mov dword [esp + 0x360], esi
mov dword [esp + 0x4c0], edi
mov esi, dword [esp + 0x494]
jmp 0x5d3917
mov dword [esp + 0x444], eax
mov dword [esp + 0x360], esi
jmp 0x5d30cf
mov dword [esp + 0x360], esi
jmp 0x5d4ae9
mov dword [esp + 0x464], edi
mov dword [esp + 0x444], eax
mov edx, dword [esp + 0x4a4]
mov ebx, dword [esp + 0x1fc]
mov edi, dword [esp + 0x320]
jmp 0x5d3fd6
mov dword [esp + 0x4c0], edi
jmp 0x5d32cf
mov edx, 0xdd
add dl, 0x49
mov dword [esp + 0x414], edx
inc ecx
mov edx, ecx
imul edx, edx
and edx, 3
cmp edx, 2
sbb edx, edx
and edx, 1
cmp ecx, edx
jb 0x5d22d0
mov dword [esp + 0x434], ebx
xor edi, edi
mov esi, 0xffffffff
mov ecx, eax
mov ebx, dword [esp + 0x308]
mov dword [esp + 0x3f8], ecx
mov dword [esp + 0x480], ebx
mov dword [esp + 0x360], esi
imul eax, edi, 0x39
mov dword [ecx + eax], 0xffff
mov edx, dword [esp + 0x4bc]
mov ecx, dword [edx]
mov dword [ecx + eax + 0x10], 0
mov ecx, dword [edx]
lea eax, [ecx + eax + 0x29]
mov dword [esp], eax
mov dword [esp + 8], 0x10
mov dword [esp + 4], 0
call fcn.007c51a0
imul eax, edi, 0x2c
lea ecx, [ebx + eax + 0xa]
mov dword [esp + 0x44c], ecx
movzx edx, byte [ebx + eax + 0xa]
mov eax, edx
not eax
and eax, 1
add eax, edx
mov ecx, esi
cmovne ecx, edi
cmp edx, 0x40
cmovne ecx, esi
mov dword [esp + 0x410], ecx
mov eax, ecx
not eax
and eax, 1
add eax, ecx
setne al
movzx eax, al
neg eax
cmp ecx, eax
jle 0x5d2467
mov dword [esp + 0x340], edi
mov ecx, 4
movzx eax, dl
cmp eax, 9
jne 0x5d24a9
mov eax, 2
mov ecx, 0xa
mov ebx, edx
mov dword [esp + 0x3b0], ebx
movzx edx, byte [esp + 0x167]
cmp edx, 0x71
mov dl, bl
mov byte [esp + 0x47c], dl
mov edx, dword [esp + 0x340]
mov dword [esp + 0x394], edx
mov dl, bl
mov byte [esp + 0x2e3], dl
mov edi, dword [esp + 0x388]
jne 0x5d24da
cmp eax, 2
mov ebx, dword [esp + 0x480]
jne 0x5d06d7
imul eax, eax
and eax, 3
cmp eax, 2
jae 0x5d06d7
mov dword [esp + 0x388], edi
imul eax, dword [esp + 0x394], 0x2c
mov ecx, 0x9000000
or ecx, dword [ebx + eax]
mov edi, dword [esp + 0x4bc]
mov edx, dword [edi]
imul esi, dword [esp + 0x410], 0x39
mov dword [edx + esi + 0x29], ecx
mov ax, word [ebx + eax + 8]
mov ecx, dword [edi]
mov word [ecx + esi + 0x2d], ax
mov byte [esp + 0x167], 0x71
jmp 0x5d2531
mov dword [esp + 0x3b0], edx
mov eax, dword [esp + 0x4c0]
mov dword [esp + 0x394], edi
mov dword [esp + 0x340], edi
mov edi, eax
mov edx, 1
mov eax, edx
or eax, 2
mov ecx, edx
xor ecx, 2
add ecx, eax
setne al
movzx eax, al
cmp edx, eax
je 0x5d2705
jmp case.0x5d2257.96
mov al, dl
mov dword [esp + 0x3b0], edx
mov byte [esp + 0x2e3], al
mov esi, dword [esp + 0x340]
mov dword [esp + 0x394], esi
mov edi, dword [esp + 0x388]
mov ebx, dword [esp + 0x334]
jmp 0x5d2571
cmp ecx, 2
je 0x5d2546
imul ecx, ecx
and ecx, 3
cmp ecx, 2
je 0x5d2546
mov dword [esp + 0x388], edi
imul eax, dword [esp + 0x394], 0x2c
mov ecx, 0x9000000
mov edi, dword [esp + 0x480]
or ecx, dword [edi + eax]
mov ebx, dword [esp + 0x4bc]
mov edx, dword [ebx]
imul esi, dword [esp + 0x410], 0x39
mov dword [edx + esi + 0x29], ecx
mov ax, word [edi + eax + 8]
mov ecx, dword [ebx]
mov word [ecx + esi + 0x2d], ax
mov byte [esp + 0x167], 0x44
mov eax, dword [esp + 0x44c]
mov dl, byte [eax]
mov edi, dword [esp + 0x4c0]
jmp 0x5d2600
mov al, 0x5c
mov dword [esp + 0x460], eax
mov dword [esp], edi
mov dword [esp + 0x388], edi
call fcn.004936c0
mov ebx, dword [esp + 0x480]
mov edx, dword [esp + 0x3b0]
jmp 0x5d57dd
cmp ecx, 2
jne 0x5d25dd
xor eax, eax
mov edx, dword [esp + 0x300]
jmp 0x5d25ab
mov ecx, 0x79
add cl, 0x93
mov dword [esp + 0x468], ecx
inc eax
mov ecx, dword [esp + 0x474]
mov ebx, dword [ecx]
xor edx, edx
test eax, eax
jne 0x5d25bc
mov ecx, eax
not ecx
and ecx, 1
neg ecx
cmp ecx, eax
jne 0x5d2590
mov dword [esp + 0x334], ebx
mov dword [esp + 0x388], edi
mov dword [esp + 0x340], esi
mov dword [esp + 0x300], edx
jmp 0x5d83b3
mov dword [esp + 0x334], ebx
mov dword [esp + 0x388], edi
mov dword [esp + 0x340], esi
mov edi, dword [esp + 0x4c0]
mov dl, byte [esp + 0x2e3]
mov ecx, 0x18
movzx eax, dl
cmp eax, 0xa
je 0x5d262e
imul eax, eax
and eax, 3
cmp eax, 3
mov al, dl
mov dword [esp + 0x3b0], eax
mov byte [esp + 0x2e3], dl
jne 0x5d2705
jmp case.0x5d4041.99
mov al, dl
mov dword [esp + 0x3b0], eax
mov byte [esp + 0x2e3], dl
cmp ecx, 0xd
je case.0x5d2257.99
mov dword [esp + 0x464], edi
xor eax, eax
imul ecx, dword [esp + 0x394], 0x2c
mov dword [esp + 0x3d8], ecx
imul ecx, dword [esp + 0x410], 0x39
mov dword [esp + 0x358], ecx
mov ecx, dword [esp + 0x3b0]
mov esi, dword [esp + 0x4bc]
jmp 0x5d26e3
mov ebx, eax
not ebx
and ebx, 1
add ebx, eax
setne byte [esp + 0x47c]
mov ecx, dword [esp + 0x480]
mov ebx, dword [esp + 0x3d8]
mov edi, dword [ecx + ebx]
mov edx, 0xa000000
or edi, edx
mov edx, dword [esi]
mov dword [esp + 0x4c0], eax
mov eax, dword [esp + 0x358]
mov dword [edx + eax + 0x31], edi
mov dx, word [ecx + ebx + 8]
mov edi, dword [esi]
mov word [edi + eax + 0x35], dx
mov eax, dword [esp + 0x4c0]
movzx edx, byte [esp + 0x47c]
add eax, edx
mov ecx, dword [esp + 0x44c]
mov cl, byte [ecx]
mov ebx, eax
and ebx, 1
xor ebx, eax
cmp ebx, 0xffffffff
setne bl
movzx ebx, bl
cmp eax, ebx
jb 0x5d2680
mov dword [esp + 0x3b0], ecx
mov edi, dword [esp + 0x464]
mov dword [esp + 0x464], edi
mov ebx, dword [esp + 0x4bc]
mov esi, dword [ebx]
mov edx, dword [esp + 0x394]
imul ecx, edx, 0x39
mov eax, dword [esp + 0x3b0]
mov byte [esi + ecx + 4], al
imul edx, edx, 0x2c
mov edi, dword [esp + 0x480]
mov al, byte [edi + edx + 6]
mov esi, dword [ebx]
mov byte [esi + ecx + 5], al
mov ax, word [edi + edx + 8]
mov esi, dword [ebx]
mov word [esi + ecx + 6], ax
mov al, byte [edi + edx + 0x28]
mov esi, dword [ebx]
mov byte [esi + ecx + 0x28], al
mov eax, 0xc
mov esi, dword [ebx]
mov dword [esp + 0x3d8], esi
test byte [esi + ecx + 5], 1
jne 0x5d27b2
mov al, byte [esp + 0x3a7]
movzx eax, al
cmp eax, 0x54
jne 0x5d2826
mov eax, dword [esp + 0x44c]
movzx eax, byte [eax]
shl eax, 0x18
or eax, dword [edi + edx]
mov edx, dword [esp + 0x3d8]
mov dword [edx + ecx + 0x14], eax
mov byte [esp + 0x3a7], 0x54
mov ecx, dword [esp + 0x4b8]
mov edi, dword [esp + 0x464]
jmp 0x5d29ea
mov ecx, dword [esp + 0x464]
mov dword [esp + 0x4c0], ecx
mov esi, dword [esp + 0x494]
cmp eax, 0xc
jne 0x5d281a
mov edi, esi
mov esi, 0xf
imul eax, dword [esp + 0x394], 0x39
mov ecx, dword [esp + 0x3d8]
movzx ecx, byte [ecx + eax + 0x28]
mov edx, ecx
imul edx, edx
and edx, 3
cmp edx, 2
sete dl
movzx edx, dl
cmp ecx, edx
jne 0x5d28a8
mov dword [esp + 0x47c], esi
jmp 0x5d03b9
xor esi, esi
mov ebx, 0x87
lea eax, [ebx - 0x6f]
mov dword [esp + 0x4c0], eax
xor ebx, eax
jmp 0x5d287b
mov dword [esp + 0x4b8], ecx
mov dword [esp + 0x464], edi
mov edx, dword [esp + 0x394]
imul eax, edx, 0x2c
mov ecx, dword [esp + 0x480]
lea eax, [ecx + eax + 0x18]
mov edi, dword [esp + 0x4bc]
mov ecx, dword [edi]
imul esi, edx, 0x39
lea ecx, [ecx + esi + 0x18]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 0x10
call fcn.007c51d0
mov ebx, dword [edi]
xor eax, eax
mov ecx, ebx
add ecx, esi
mov edx, dword [esp + 0x2e8]
mov dword [edx + 4], 0
mov dword [edx], 0
mov dword [edx + 0xc], 0
mov dword [edx + 8], 0
mov dword [edx + 0x14], 0
mov dword [edx + 0x10], 0
je 0x5d2ba6
mov edx, ecx
and edx, 1
inc edx
xor edx, ecx
je 0x5d2ba6
movzx eax, byte [ebx + esi + 5]
mov ecx, eax
and ecx, 1
xor ecx, eax
cmp ecx, 0xffffffff
setne cl
movzx edx, byte [ebx + esi + 0x28]
shl edx, 2
test al, cl
lea eax, [ebx + esi + 0x18]
mov dword [esp + 0x1b4], eax
je 0x5d2ad9
mov eax, 0x10
xor ecx, ecx
test cl, cl
jne 0x5d2ad9
mov dword [esp + 0x124], edx
mov ecx, dword [esp + 0x464]
mov dword [esp + 0x4c0], ecx
mov ecx, dword [esp + 0x38c]
mov edx, dword [esp + 0x384]
jmp 0x5d7521
lea eax, [ebx + esi + 0x28]
mov dword [esp + 0x4c0], eax
mov dword [esp + 8], edx
mov dword [esp + 0x124], edx
mov eax, dword [esp + 0x1b4]
mov dword [esp + 4], eax
mov edi, dword [esp + 0x2e8]
mov dword [esp], edi
call fcn.007c51d0
lea eax, [ebx + esi + 0x14]
mov esi, dword [esp + 0x4c0]
movzx ecx, byte [esi]
lea ecx, [esp + ecx*4 + 0xf10]
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 4
call fcn.007c51d0
movzx eax, byte [esi]
lea eax, [eax*4 + 4]
mov dword [esp + 4], eax
mov dword [esp], edi
mov dword [esp + 8], 0
call fcn.007ca970
jmp 0x5d2ba6
mov edx, dword [esp + 0x480]
mov ecx, dword [esp + 0x434]
mov dword [esp + 0x434], ecx
mov dword [esp + 0x480], edx
mov ebx, dword [esp + 0x4bc]
mov esi, dword [ebx]
mov edi, dword [esp + 0x394]
mov ecx, edx
imul edx, edi, 0x39
mov dword [esi + edx], eax
imul eax, edi, 0x2c
mov si, word [ecx + eax + 0x10]
mov word [esp + 0x4c0], si
mov esi, dword [ebx]
mov di, word [esp + 0x4c0]
mov word [esi + edx + 0xb], di
mov si, word [ecx + eax + 0xc]
mov word [esp + 0x4c0], si
mov edi, ecx
mov esi, dword [ebx]
mov cx, word [esp + 0x4c0]
mov word [esi + edx + 8], cx
mov cl, byte [edi + eax + 0xe]
mov byte [esp + 0x4c0], cl
mov esi, dword [ebx]
mov cl, byte [esp + 0x4c0]
mov byte [esi + edx + 0xa], cl
mov cl, byte [edi + eax + 0x13]
mov byte [esp + 0x4c0], cl
mov esi, dword [ebx]
mov cl, byte [esp + 0x4c0]
mov byte [esi + edx + 0xd], cl
mov cl, byte [edi + eax + 0x14]
mov byte [esp + 0x4c0], cl
mov esi, dword [ebx]
mov cl, byte [esp + 0x4c0]
mov byte [esi + edx + 0xe], cl
mov al, byte [edi + eax + 0x15]
mov ecx, dword [ebx]
mov byte [ecx + edx + 0xf], al
mov eax, 9
mov edx, dword [esp + 0x394]
mov ecx, edx
imul ecx, ecx
and ecx, 3
cmp ecx, 2
mov ecx, edx
adc ecx, 0
mov edx, dword [esp + 0x434]
cmp ecx, dword [edx]
jb 0x5d2cbe
mov ebx, 0x10
mov dword [esp + 0x40c], ecx
imul ecx, ecx
and ecx, 3
cmp ecx, 2
mov edi, dword [esp + 0x464]
mov edx, dword [esp + 0x4b8]
jne 0x5d2df9
jmp 0x5d8769
mov dword [esp + 0x40c], ecx
mov edi, dword [esp + 0x464]
mov edx, dword [esp + 0x4b8]
jmp 0x5d8769
mov dword [esp + 0x340], ebx
mov dword [esp + 0x360], edi
cmp eax, 4
jne 0x5d2d86
imul eax, eax
and eax, 3
cmp eax, 2
jae 0x5d2d86
mov dword [esp + 0x1ec], edx
mov eax, dword [esp + 0x464]
mov dword [esp + 0x4c0], eax
mov esi, dword [esp + 0x360]
mov edi, dword [esp + 0x340]
mov ebx, dword [esp + 0x480]
mov ecx, dword [esp + 0x3f8]
jmp 0x5d230b
mov ebx, 5
mov al, 0x53
mov dword [esp + 0x1f8], eax
mov edi, dword [esp + 0x464]
lea eax, [edi + 0x148]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x2bc]
mov dword [esp], eax
mov dword [esp + 8], 0x10
call fcn.007c51d0
mov eax, dword [esp + 0x4c]
mov eax, dword [eax]
mov ecx, dword [esp + 0x2c8]
mov dword [ecx], eax
mov eax, dword [esp + 0x2b8]
mov byte [eax], 0xff
mov eax, dword [esp + 0x2b4]
mov dword [eax], 0xffffff
mov eax, dword [esp + 0x2f4]
mov eax, dword [eax]
mov dword [esp + 0x1ec], eax
mov edx, dword [esp + 0x4b8]
cmp ebx, 5
je 0x5d2e1d
xor eax, eax
test al, al
mov dword [esp + 0x4b8], edx
mov eax, edi
mov esi, dword [esp + 0x360]
je 0x5d2119
jmp 0x5d1d39
mov dword [esp + 0x4b8], edx
mov eax, edi
mov esi, dword [esp + 0x360]
jmp 0x5d1d39
xor eax, eax
test al, al
mov edi, dword [esp + 0x4c0]
jne 0x5d92d3
mov eax, dword [esp + 0x434]
mov ecx, dword [eax]
mov dword [esp + 0x33c], ecx
mov eax, ecx
imul eax, eax
and eax, 3
cmp eax, 3
sete al
movzx eax, al
mov dword [esp + 0x338], 0
cmp ecx, eax
mov eax, dword [esp + 0x1a8]
mov dword [esp + 0x49c], eax
mov eax, dword [esp + 0x494]
mov dword [esp + 0x47c], eax
je 0x5d2fdd
mov ebx, dword [esp + 0x338]
imul esi, ebx, 0x39
mov eax, dword [esp + 0x49c]
mov edx, dword [eax + esi + 0x10]
test edx, edx
jne 0x5d2ee8
mov eax, edx
not eax
and eax, 1
add eax, edx
je 0x5d2ee8
mov dword [esp + 0x158], edx
mov eax, dword [esp + 0x494]
mov dword [esp + 0x47c], eax
mov esi, dword [esp + 0x33c]
mov edx, esi
mov dword [esp + 0x21c], ebx
mov edi, dword [esp + 0x328]
jmp 0x5d5c34
mov eax, 0xf
movzx ecx, byte [esp + 0x19b]
cmp ecx, 0x5f
mov edi, dword [esp + 0x328]
jne 0x5d2f53
mov byte [esp + 0x19b], 0x11
mov dword [esp], edx
mov dword [esp + 0x158], edx
call fcn.004936c0
mov eax, dword [esp + 0x4bc]
mov eax, dword [eax]
mov dword [eax + esi + 0x10], 0
mov eax, dword [esp + 0x434]
mov edx, dword [eax]
mov eax, dword [esp + 0x494]
mov dword [esp + 0x47c], eax
mov dword [esp + 0x21c], ebx
mov esi, dword [esp + 0x33c]
jmp 0x5d5c34
mov ecx, dword [esp + 0x494]
mov dword [esp + 0x47c], ecx
mov esi, dword [esp + 0x33c]
mov dword [esp + 0x160], esi
mov dword [esp + 0x21c], ebx
jmp 0x5d5b64
mov dword [esp + 0x328], edi
mov byte [esp + 0x24f], 0x34
mov eax, dword [esp + 0x21c]
lea esi, [eax + 1]
cmp esi, edx
jae 0x5d2fc8
mov eax, 0x10
mov ecx, esi
or ecx, 2
mov edi, edx
mov dword [esp + 0x160], edi
mov edx, esi
mov dword [esp + 0x1dc], esi
xor edx, 2
add edx, ecx
mov dword [esp + 0x498], edi
jne 0x5d34e3
jmp 0x5d2fdd
mov dword [esp + 0x1dc], esi
mov dword [esp + 0x498], edx
mov dword [esp + 0x160], edx
mov eax, dword [esp + 0x4bc]
mov dword [eax], 0
mov eax, dword [esp + 0x47c]
mov dword [esp + 0x494], eax
mov eax, dword [esp + 0x308]
mov dword [esp], eax
call fcn.004936c0
mov eax, dword [esp + 0x4bc]
mov eax, dword [eax]
mov dword [esp], eax
call fcn.004936c0
mov ebx, 7
mov eax, 1
mov ecx, dword [esp + 0x354]
movzx ecx, cl
cmp ecx, 0x14
je 0x5d6137
jmp 0x5d7b89
mov edx, ecx
or edx, 2
mov esi, ecx
xor esi, 2
add esi, edx
setne dl
movzx edx, dl
add ecx, edx
mov edx, dword [esp + 0x4bc]
mov edx, dword [edx]
mov dword [esp + 0x49c], edx
mov esi, dword [esp + 0x498]
mov ebx, edi
mov edx, 3
sub edx, ecx
xor edx, ecx
setne dl
movzx edx, dl
cmp ecx, edx
jb 0x5d3040
mov dword [esp + 0x338], ebx
mov dword [esp + 0x33c], esi
mov ecx, dword [esp + 0x47c]
mov dword [esp + 0x494], ecx
mov edi, dword [esp + 0x30c]
cmp eax, 0xc
jne 0x5d30c3
mov dword [esp + 0x30c], edi
mov ecx, 3
sub ecx, eax
xor ecx, eax
jne 0x5d2e93
jmp 0x5d7808
mov dword [esp + 0x30c], edi
jmp 0x5d7808
mov edx, dword [esp + 0x4b8]
mov ebx, 0x12
mov eax, dword [esp + 0x444]
test eax, eax
je 0x5d385a
mov eax, 0x17
xor ecx, ecx
test cl, cl
jne 0x5d385a
mov dword [esp + 0x4b8], edx
mov dword [esp + 0x464], edi
xor ecx, ecx
cmp eax, 7
mov esi, dword [esp + 0x14c]
mov ebx, dword [esp + 0x1e0]
je 0x5d315c
imul eax, eax
and eax, 3
cmp eax, 3
je 0x5d315c
mov eax, dword [esp + 0x464]
mov dword [esp + 0x4c0], eax
jmp 0x5d3018
mov ebx, 0x87
add bl, 0xb6
mov eax, 3
sub eax, ecx
xor eax, ecx
setne al
movzx eax, al
add ecx, eax
movzx edi, word [esi]
mov edx, ecx
imul edx, edx
and edx, 3
cmp edx, 2
sbb edx, edx
and edx, 1
cmp ecx, edx
jb 0x5d3140
mov dword [esp + 0x1e0], ebx
mov eax, dword [esp + 0x464]
mov dword [esp + 0x4c0], eax
jmp 0x5d36af
mov ecx, eax
not ecx
and ecx, 1
mov edx, eax
add edx, ecx
setne dl
movzx edx, dl
cmp eax, edx
jb 0x5d3190
mov edx, 3
sub edx, eax
xor edx, eax
setne dl
movzx edx, dl
cmp eax, edx
jb 0x5d31e0
mov eax, dword [esp + 0x490]
mov dword [eax], 6
mov dword [esp + 0x4a4], 6
mov dword [esp + 0x4c0], edi
jmp 0x5d32cf
mov byte [esp + 0x1e6], 0x7f
mov eax, dword [esp + 0x490]
mov dword [eax], 4
mov dword [esp + 0x4a4], 4
mov eax, dword [esp + 0x270]
movzx eax, byte [eax]
cmp eax, 0x10
mov eax, dword [esp + 0x4a4]
mov esi, eax
jb 0x5d32f9
mov eax, dword [esp + 0x490]
mov dword [eax], 9
mov esi, 9
mov ebx, 0x1a
mov eax, dword [esp + 0x194]
movzx eax, byte [eax]
mov ecx, eax
imul ecx, ecx
and ecx, 3
cmp ecx, 2
setb cl
mov dl, al
shr dl, cl
movzx ecx, dl
imul ecx, ecx
and ecx, 3
cmp ecx, 2
sbb cl, cl
and cl, dl
and cl, 1
movzx ecx, cl
mov edx, dword [esp + 0x4c0]
mov dword [edx + 0x16c], ecx
shr al, 3
movzx ecx, al
imul ecx, ecx
and ecx, 3
cmp ecx, 2
sbb cl, cl
and cl, al
and cl, 1
movzx eax, cl
mov dword [edx + 0x170], eax
mov eax, dword [esp + 0x190]
movzx edx, word [eax]
mov dword [esp + 0x1c4], edx
mov eax, edx
or eax, 2
mov ecx, edx
xor ecx, 2
add ecx, eax
setne al
movzx eax, al
add ax, dx
jne 0x5d341b
cmp edi, 0xd
jne 0x5cfedd
mov eax, edi
or eax, 2
xor edi, 2
add edi, eax
je 0x5cfedd
xor eax, eax
mov ebx, dword [esp + 0x19c]
jmp 0x5d33fb
mov ebx, 0x5a
add bl, 0xe9
cmp ecx, 2
adc eax, 0
mov ecx, dword [esp + 0x488]
mov dword [ecx], 0xffffffff
mov ecx, eax
imul ecx, ecx
and ecx, 3
cmp ecx, 2
sbb edx, edx
and edx, 1
cmp eax, edx
jb 0x5d33e0
mov dword [esp + 0x19c], ebx
jmp 0x5d5856
cmp ebx, 0xa
jne 0x5d34a1
mov eax, ebx
or eax, 2
xor ebx, 2
add ebx, eax
je 0x5d34a1
mov dword [esp + 0x47c], edx
jmp 0x5d4c3d
mov eax, 9
movzx ecx, byte [esp + 0x1b3]
cmp ecx, 0x34
jne 0x5d3516
mov dword [esp + 0x47c], edx
mov eax, 2
mov byte [esp + 0x1b3], 0x34
mov ecx, dword [esp + 0x1c4]
movzx ecx, cx
mov edx, dword [esp + 0x488]
mov dword [edx], ecx
test cx, cx
jne 0x5cf759
cmp eax, 2
mov ecx, dword [esp + 0x47c]
je 0x5d350a
imul eax, eax
and eax, 3
cmp eax, 3
mov dword [esp + 0x494], ecx
jne 0x5d5d4f
jmp 0x5d35bd
mov dword [esp + 0x494], ecx
jmp 0x5d35bd
mov dword [esp + 0x494], edx
mov ecx, dword [esp + 0x3b0]
jmp 0x5d580a
cmp eax, 5
je 0x5d5856
xor eax, eax
test al, al
mov ecx, dword [esp + 0x4b8]
je 0x5d758f
jmp 0x5d5856
mov byte [esp + 0x2cd], 0x7d
cmp dword [esp + 0x200], 6
je 0x5d3569
mov esi, 0x11
mov al, 1
test al, al
jne 0x5d424b
mov eax, 0x17
mov ecx, dword [esp + 0x490]
mov dword [ecx], 0xb
jmp 0x5d507f
mov edx, 0x3b
xor dl, 0x5e
mov dword [esp + 0x3d4], edx
cmp ecx, 2
adc eax, 0
mov dword [esi], 0xa
mov ecx, eax
imul ecx, ecx
and ecx, 3
cmp ecx, 2
sbb edx, edx
and edx, 1
cmp eax, edx
jb 0x5d3580
mov eax, dword [esp + 0x47c]
mov dword [esp + 0x494], eax
mov eax, dword [esp + 0x4b4]
mov eax, dword [eax]
mov ecx, eax
imul ecx, ecx
and ecx, 3
cmp ecx, 2
sete cl
movzx ecx, cl
cmp eax, ecx
jne 0x5d35f2
mov dword [esp + 0x444], 0
mov edi, dword [esp + 0x4c0]
jmp 0x5d30cf
mov ebx, 0x10
mov ecx, dword [esp + 0x2e8]
mov dword [ecx], 0x2ffff10
or eax, 0x2000000
mov edx, dword [esp + 0x10c]
mov dword [edx], eax
mov dword [esp + 0xf34], 1
lea eax, [esp + 0xf34]
mov dword [esp + 0x20], eax
mov dword [esp + 0x14], ecx
mov eax, dword [esp + 0x110]
mov dword [esp + 0xc], eax
mov dword [esp + 0x24], 0
mov dword [esp + 0x1c], 0xc
mov dword [esp + 0x18], 0x5ffff12
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0x14
mov dword [esp + 4], 0
mov dword [esp], 0
mov edx, 2
mov ecx, dword [esp + 0x4c0]
call fcn.005e4eb0
mov dword [esp + 0x484], eax
xor edi, edi
test eax, eax
mov dword [esp + 0x444], 0
jne 0x5d36af
jmp 0x5d3a53
mov al, 0x75
mov dword [esp + 0x1e0], eax
mov eax, dword [esp + 0x14c]
movzx edi, word [eax]
mov ecx, 0x19
mov eax, dword [esp + 0x488]
cmp dword [eax], 0
jne 0x5d36cc
mov dword [esp + 0x330], edi
jmp 0x5d74d6
xor ecx, ecx
mov edx, edi
and edx, 1
inc edx
mov eax, dword [esp + 0x444]
jmp 0x5d370a
mov esi, ecx
not esi
and esi, 1
add esi, ecx
setne bl
movzx esi, bl
add ecx, esi
mov esi, edi
xor esi, edx
sete bl
movzx esi, bl
cmp edi, esi
mov eax, 0x70000006
cmove eax, dword [esp + 0x484]
test ecx, ecx
jne 0x5d371b
mov esi, ecx
imul esi, esi
and esi, 3
cmp esi, 1
jbe 0x5d36e0
mov dword [esp + 0x444], eax
mov eax, dword [esp + 0x4c0]
mov edx, dword [esp + 0x4b8]
mov dword [esp + 0x330], edi
mov edi, eax
jmp 0x5d30d6
cmp ecx, 0xe
jne 0x5d88b1
mov eax, ecx
or eax, 2
xor ecx, 2
add ecx, eax
jne 0x5d32af
jmp 0x5d88b1
mov byte [esp + 0x26f], 0x51
cmp dword [ecx], 0
jne 0x5d3979
mov dword [esp + 0x4b4], ecx
mov edi, dword [esp + 0x4c0]
mov dword [esp + 0x494], esi
mov ebx, 0xf
mov eax, dword [esp + 0x2f0]
mov eax, dword [eax]
mov dword [esp], eax
call fcn.00434c50
mov dword [esp + 0x31c], eax
mov dword [esp], eax
call fcn.004116e0
mov eax, dword [esp + 0x478]
mov eax, dword [eax]
mov ecx, eax
and ecx, 1
inc ecx
xor ecx, eax
sete cl
movzx ecx, cl
cmp eax, ecx
mov edx, dword [esp + 0x4b8]
jne 0x5d3b86
cmp ebx, 0xf
jne 0x5d3902
mov ebx, 5
movzx eax, byte [esp + 0x18f]
cmp eax, 0x5e
jne 0x5d3a45
mov ebx, 7
mov byte [esp + 0x18f], 0x5e
lea eax, [edi + 0xb8]
mov dword [esp + 0x10], eax
mov dword [esp + 0x24], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x13
mov dword [esp + 4], 0
mov dword [esp], 0
mov esi, edx
xor edx, edx
mov ecx, edi
call fcn.005e4eb0
mov edx, esi
mov ecx, eax
imul ecx, ecx
and ecx, 3
cmp ecx, 2
sete cl
movzx ecx, cl
cmp eax, ecx
jne 0x5d4f38
jmp 0x5d43c6
mov dword [esp + 0x4c0], edi
mov esi, dword [esp + 0x494]
mov dword [esp + 0x4b8], edx
mov ecx, dword [esp + 0x4b4]
movzx eax, byte [esp + 0x26f]
cmp eax, 0x7e
mov edx, dword [esp + 0x320]
jne 0x5d37e9
mov eax, 0x1d
mov byte [esp + 0x26f], 0x7e
cmp dword [ecx], 0
jne 0x5d3979
mov dword [esp + 0x4b4], ecx
mov dword [esp + 0x494], esi
mov edi, dword [esp + 0x4c0]
cmp eax, 0xd
je case.0x5d4041.98
mov ecx, eax
and ecx, 1
inc ecx
xor ecx, eax
jne 0x5d380f
jmp case.0x5d4041.98
mov dword [esp + 0x4b4], ecx
mov eax, 0xa
movzx ecx, byte [esp + 0x175]
cmp ecx, 0x5b
jne 0x5d3ae4
mov dword [esp + 0x47c], esi
mov edi, 0x13
mov byte [esp + 0x175], 0x55
mov byte [esp + 0x4e7], 0
mov dword [esp + 0x4e0], 1
lea eax, [esp + 0x4e0]
mov dword [esp + 0x20], eax
lea eax, [esp + 0x4e7]
mov dword [esp + 0xc], eax
mov dword [esp + 0x24], 0
mov dword [esp + 0x1c], 1
mov dword [esp + 0x18], 0x19ffff01
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0x14
mov dword [esp + 4], 0
mov dword [esp], 0
xor edx, edx
mov ecx, dword [esp + 0x4c0]
call fcn.005e4eb0
mov dword [esp + 0x2f8], eax
mov ecx, eax
imul ecx, ecx
and ecx, 3
cmp ecx, 2
sete cl
movzx ecx, cl
cmp eax, ecx
jne 0x5d5d75
jmp 0x5d9272
mov dword [esp + 0x4b8], edx
mov dword [esp + 0x4c0], edi
cmp ebx, 5
jne 0x5d3af7
mov eax, 3
sub eax, ebx
xor eax, ebx
je 0x5d3af7
mov edi, 0xf
mov byte [esp + 0x18f], 0x1f
mov ecx, dword [esp + 0x4c0]
lea eax, [ecx + 0xb8]
mov dword [esp + 0x10], eax
mov dword [esp + 0x24], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x13
mov dword [esp + 4], 0
mov dword [esp], 0
xor edx, edx
call fcn.005e4eb0
test eax, eax
jne 0x5d440d
jmp 0x5d8fab
mov edi, dword [esp + 0x4c0]
mov dword [esp + 0x494], esi
jmp 0x5d91a9
mov ebx, dword [esp + 0x1e0]
movzx ecx, bl
cmp ecx, 0x3d
je 0x5d3b6c
mov eax, 7
cmp ecx, 0x58
je 0x5d3b73
cmp ecx, 0x75
je 0x5d369c
xor ecx, ecx
mov esi, dword [esp + 0x14c]
jmp 0x5d3b4c
mov ebx, 0xed
add bl, 0x3a
mov eax, 3
sub eax, ecx
xor eax, ecx
setne al
movzx eax, al
add ecx, eax
movzx edi, word [esi]
mov edx, ecx
imul edx, edx
and edx, 3
cmp edx, 2
sbb edx, edx
and edx, 1
cmp ecx, edx
jb 0x5d3b30
mov dword [esp + 0x1e0], ebx
jmp 0x5d36af
mov al, 0x58
jmp 0x5d369e
mov edi, dword [esp + 0x4c0]
mov edx, dword [esp + 0x4b8]
jmp 0x5d30f9
movzx eax, byte [esp + 0x2cf]
mov esi, edx
cmp eax, 0x1b
je 0x5d3c0b
cmp eax, 0x2f
jne 0x5d3c6b
mov ebx, 0xb
mov byte [esp + 0x2cf], 0x2c
mov ecx, dword [esp + 0x4c4]
mov eax, dword [ecx]
mov dword [esp + 0x3f0], eax
mov ecx, dword [ecx + 4]
mov dword [esp + 0x3ec], ecx
mov dword [esp + 4], ecx
mov dword [esp], eax
call fcn.00412bf0
mov eax, dword [esp + 0x4bc]
mov edx, dword [eax]
test edx, edx
jne 0x5d3cc3
mov eax, 0xd
mov ecx, edx
not ecx
and ecx, 1
add ecx, edx
mov dword [esp + 0x180], edx
mov edx, esi
mov dword [esp + 0x4b8], edx
jne 0x5d84ed
jmp 0x5d6a78
mov byte [esp + 0x2cf], 0x1b
mov ecx, dword [esp + 0x4c4]
mov eax, dword [ecx]
mov dword [esp + 0x3f0], eax
mov ecx, dword [ecx + 4]
mov dword [esp + 0x3ec], ecx
mov dword [esp + 4], ecx
mov dword [esp], eax
call fcn.00412bf0
mov eax, dword [esp + 0x4bc]
mov edx, dword [eax]
test edx, edx
je 0x5d3cd6
mov eax, 1
mov ecx, edx
and ecx, 1
inc ecx
xor ecx, edx
mov dword [esp + 0x180], edx
mov edx, esi
jne 0x5d72ef
jmp 0x5d5edd
mov ebx, 0x14
mov byte [esp + 0x2cf], 0x2f
mov ecx, dword [esp + 0x4c4]
mov eax, dword [ecx]
mov dword [esp + 0x3f0], eax
mov ecx, dword [ecx + 4]
mov dword [esp + 0x3ec], ecx
mov dword [esp + 4], ecx
mov dword [esp], eax
call fcn.00412bf0
mov eax, dword [esp + 0x4bc]
mov eax, dword [eax]
mov dword [esp + 0x180], eax
test eax, eax
je 0x5d3ce4
xor eax, eax
test al, al
mov edx, esi
je 0x5d4e45
jmp 0x5d535c
mov dword [esp + 0x180], edx
mov dword [esp + 0x4b8], esi
jmp 0x5d6a78
mov dword [esp + 0x180], edx
mov edx, esi
jmp 0x5d5edd
mov edx, esi
jmp 0x5d535c
mov byte [esp + 0xfb], 0x27
movzx eax, byte [esp + 0x4e7]
cmp eax, 3
je 0x5d3d18
imul eax, eax
and eax, 3
cmp eax, 2
mov edi, dword [esp + 0x464]
jne 0x5d380f
mov edi, dword [esp + 0x464]
cmp dword [edi + 0x170], 0
jne 0x5d3dfb
movzx eax, byte [esp + 0x5f]
cmp eax, 0x34
jne 0x5d3e07
mov dword [esp + 0x464], edi
mov byte [esp + 0x5f], 0x23
mov eax, dword [esp + 0x1a4]
mov dword [eax + 4], 0
mov dword [eax], 0
mov dword [eax + 0xc], 0
mov dword [eax + 8], 0
mov dword [esp + 0xf84], 0
mov dword [esp + 0xf80], 0
mov dword [eax], 9
mov eax, dword [esp + 0x278]
mov eax, dword [eax]
mov ecx, dword [esp + 0x58]
mov dword [ecx], eax
mov eax, dword [esp + 0x54]
mov byte [eax], 0
mov eax, dword [esp + 0x50]
mov dword [eax], 1
mov dword [esp + 4], 0x1e8
mov dword [esp], 1
call fcn.00493a50
mov edi, eax
mov eax, dword [esp + 0x2c4]
mov dword [eax], edi
mov eax, dword [esp + 0x2fc]
mov al, byte [eax]
add al, 0xf7
movzx eax, al
cmp eax, 2
jb 0x5d3ed3
mov dword [esp + 0x4c0], edi
jmp 0x5d60d4
mov dword [esp + 0x464], edi
mov byte [esp + 0x5f], 0x34
mov eax, dword [esp + 0x1a4]
mov dword [eax + 4], 0
mov dword [eax], 0
mov dword [eax + 0xc], 0
mov dword [eax + 8], 0
mov dword [esp + 0xf84], 0
mov dword [esp + 0xf80], 0
mov dword [eax], 9
mov eax, dword [esp + 0x278]
mov eax, dword [eax]
mov ecx, dword [esp + 0x58]
mov dword [ecx], eax
mov eax, dword [esp + 0x54]
mov byte [eax], 0
mov eax, dword [esp + 0x50]
mov dword [eax], 1
mov dword [esp + 4], 0x1e8
mov dword [esp], 1
call fcn.00493a50
mov edi, eax
mov eax, dword [esp + 0x2c4]
mov dword [eax], edi
mov eax, dword [esp + 0x2fc]
mov al, byte [eax]
add al, 0xf7
movzx eax, al
cmp eax, 2
jb 0x5d3ed3
mov byte [esp + 0x233], 0x66
mov ecx, dword [esp + 0x1a4]
mov eax, dword [ecx]
mov edx, dword [esp + 0x204]
mov dword [esp + 0x10], edx
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
mov dword [esp + 0x14], 8
mov dword [esp + 0xc], 0x14
mov dword [esp], 0x80dcf8
call fcn.0078aa10
mov edi, eax
test edi, edi
je 0x5d4177
mov esi, 0xd
xor ecx, ecx
test cl, cl
jne 0x5d4177
mov eax, dword [esp + 0x4c0]
mov dword [esp + 0x464], eax
mov edx, dword [esp + 0x4a4]
mov ecx, dword [esp + 0x360]
mov ebx, dword [esp + 0x1fc]
cmp esi, 0xd
je 0x5d40da
xor eax, eax
test al, al
jne 0x5d40e6
mov dword [esp + 0x4a4], 0
mov dword [esp + 0x320], edi
mov dword [esp + 0x1fc], ebx
mov dword [esp + 0x360], ecx
mov byte [esp + 0x18c], 0x7d
mov edi, dword [esp + 0x464]
lea eax, [edi + 0x64]
mov dword [esp + 0x490], eax
mov dword [edi + 0x64], 0
mov eax, dword [esp + 0x150]
movzx eax, byte [eax]
cmp eax, 4
ja case.default.0x5d4041
mov ecx, 0xd
jmp dword [eax*4 + 0x7deecc]
mov esi, 4
mov eax, dword [esp + 0x348]
movzx ecx, al
cmp ecx, 6
je 0x5d4093
mov eax, 0xf
cmp ecx, 0x15
jne 0x5d40ad
mov edx, dword [esp + 0x4b8]
jmp 0x5d54ef
mov eax, dword [esp + 0x494]
mov dword [esp + 0x47c], eax
mov dword [esp + 0x4c0], edi
jmp 0x5d49ef
mov al, 6
mov dword [esp + 0x348], eax
mov eax, dword [esp + 0x490]
mov dword [eax], 0xd
mov dword [esp + 0x4a4], 0xd
mov dword [esp + 0x4c0], edi
jmp 0x5d32cf
mov dword [esp + 0x360], ecx
jmp 0x5d7009
mov dword [esp + 0x360], ecx
jmp 0x5d7009
mov dword [esp + 0x4c0], edi
jmp 0x5d32cf
mov eax, 0xa
mov ecx, dword [esp + 0x204]
mov ecx, dword [ecx]
mov dword [esp + 0xbc], ecx
mov dword [esp + 0x2b0], 0
test ecx, ecx
je 0x5d41b3
mov dword [esp + 0x320], edi
mov ecx, 0xe
xor edx, edx
test dl, dl
je 0x5d6044
jmp 0x5d41ba
mov dword [esp + 0x320], edi
mov ecx, eax
not ecx
and ecx, 1
add ecx, eax
setne cl
movzx ecx, cl
cmp eax, ecx
mov ecx, dword [esp + 0x4b8]
mov esi, dword [esp + 0x4c0]
je 0x5cf871
jmp 0x5d60a4
mov esi, 0xc4
add esi, 0xffffff3d
mov eax, edi
imul eax, eax
and eax, 3
cmp eax, 2
adc edi, 0
mov ecx, dword [esp + 0x4c4]
mov eax, dword [ecx]
mov ecx, dword [ecx + 4]
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
mov dword [esp], str.Failed_to_enable_dynamic_memory_into__llu_n
call fcn.004414c0
mov edx, 0x7000002b
mov eax, edi
or eax, 2
mov ecx, edi
xor ecx, 2
add ecx, eax
setne al
movzx eax, al
cmp edi, eax
jb 0x5d41f0
mov dword [esp + 0x2f8], edx
mov eax, esi
and eax, 1
xor eax, esi
cmp eax, 0xffffffff
setne al
movzx eax, al
cmp esi, eax
mov eax, dword [esp + 0x494]
mov dword [esp + 0x47c], eax
mov edi, dword [esp + 0x4c0]
jne 0x5d5968
jmp 0x5d92d3
mov byte [esp + 0x23a], 0x75
call fcn.004449d0
mov dword [esp], eax
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov ecx, 0x23
mov edi, dword [esp + 0x4c0]
mov edx, edi
call fcn.005ec220
cmp eax, 0xfb000099
je 0x5d380f
cmp edi, 0xb
jne 0x5d2e32
mov edi, dword [esp + 0x4c0]
jmp 0x5d92d3
mov ebx, 0x93
xor bl, 0xb5
mov edx, eax
not edx
and edx, 1
add edx, eax
setne dl
movzx edx, dl
add eax, edx
test eax, eax
je 0x5d4380
test cl, cl
je 0x5d4380
mov dword [esp + 0x3ac], 0
mov dword [esp + 0x274], ebx
mov dword [esp + 0x4c0], edi
mov dword [esp + 0x3d0], esi
jmp 0x5d930f
mov ebx, 6
mov esi, edx
call fcn.0044c050
mov dword [edi + 0xc4], edx
mov ecx, esi
mov dword [edi + 0xc0], eax
cmp ebx, 6
je 0x5d43ff
xor eax, eax
test al, al
mov dword [esp + 0x4b8], ecx
mov dword [esp + 0x4c0], edi
je 0x5d29ea
jmp 0x5d440d
mov dword [esp + 0x4b8], ecx
mov dword [esp + 0x4c0], edi
mov ecx, dword [esp + 0x4c4]
mov eax, dword [ecx]
mov ecx, dword [ecx + 4]
mov dword [esp + 4], ecx
mov dword [esp], eax
call fcn.004125d0
mov eax, dword [esp + 0x4bc]
mov ecx, dword [eax]
test ecx, ecx
je 0x5d44a4
mov eax, ecx
and eax, 1
inc eax
xor eax, ecx
je 0x5d44a4
mov dword [esp + 0x37c], ecx
mov eax, 1
movzx ecx, byte [esp + 0x18e]
cmp ecx, 0x53
jne 0x5d453d
mov edi, dword [esp + 0x4c0]
mov ecx, eax
imul ecx, ecx
and ecx, 3
cmp ecx, 2
sbb ecx, ecx
and ecx, 1
cmp eax, ecx
jne 0x5d45c4
mov byte [esp + 0x18e], 0x61
mov ebx, dword [esp + 0x434]
mov eax, dword [ebx]
mov dword [esp + 0x368], eax
test eax, eax
mov dword [esp + 0x4c0], edi
je 0x5d94e9
jmp 0x5d455d
mov dword [esp + 0x37c], ecx
call fcn.004233f0
mov edi, eax
mov dword [edi], 0xffffffff
mov eax, dword [esp + 0x4c4]
movsd xmm0, qword [eax]
movsd qword [edi + 0x20], xmm0
mov dword [edi + 0x28], 1
mov dword [edi + 0x2c], 1
mov eax, 4
movd xmm0, eax
movupd xmmword [edi + 8], xmm0
mov dword [edi + 0x18], 0
mov dword [edi + 0xd0], 0
mov dword [edi + 0xd4], 0
mov dword [edi + 0x48], 5
lea eax, [edi + 0x4c]
mov dword [esp], eax
mov dword [esp + 8], str.invalid
mov dword [esp + 4], 0x40
call fcn.004959f0
mov dword [esp], edi
call fcn.00411ea0
mov dword [esp], edi
call fcn.004234b0
mov ebx, dword [esp + 0x434]
jmp 0x5d94e9
mov byte [esp + 0x18e], 0x53
mov ebx, dword [esp + 0x434]
mov eax, dword [ebx]
mov dword [esp + 0x368], eax
test eax, eax
je 0x5d94e9
mov eax, 8
mov ecx, dword [esp + 0x370]
movzx ecx, cl
cmp ecx, 0x49
je 0x5d4624
mov eax, 0x15
cmp ecx, 0x6c
jne 0x5d4645
mov ecx, dword [esp + 0x2d0]
mov edi, dword [esp + 0x3b4]
cmp eax, 8
jne 0x5d45d7
mov dword [esp + 0x464], edi
mov edi, dword [esp + 0x3c8]
jmp 0x5d0f05
mov dword [esp + 0x434], ebx
mov edx, dword [esp + 0x4b8]
mov ecx, dword [esp + 0x3a8]
mov dword [esp + 0x47c], ecx
jmp 0x5d5150
mov dword [esp + 0x434], ebx
xor eax, eax
mov edx, 3
mov ebx, 0x82
lea ecx, [ebx - 0x7d]
mov dword [esp + 0x47c], ecx
xor ebx, ecx
mov ecx, dword [esp + 0x4c0]
lea esi, [ecx + 0xc8]
lea edi, [ecx + 0x15c]
jmp 0x5d46c3
mov cl, bl
add cl, 0xe4
mov dword [esp + 0x370], ecx
inc eax
dec edx
mov dword [esp + 0x3a8], 0
mov ecx, dword [esp + 0x368]
mov dword [esp + 0x4b8], ecx
mov ecx, dword [esp + 0x37c]
mov dword [esp + 0x380], ecx
mov dword [esp + 0x3f4], esi
mov dword [esp + 0x36c], edi
mov ecx, eax
xor ecx, edx
setne cl
movzx ecx, cl
cmp eax, ecx
jb 0x5d4680
mov esi, dword [esp + 0x380]
mov edx, dword [esp + 0x384]
mov ebx, dword [esp + 0x470]
mov edi, dword [esp + 0x3b4]
mov ecx, dword [esp + 0x47c]
jmp 0x5d89f9
imul ecx, esi, 0x39
mov eax, dword [esp + 0x380]
cmp dword [eax + ecx], 0xffff
je 0x5d4784
mov dword [esp + 0x3b4], edi
mov edi, esi
mov esi, edx
mov dword [esp + 0x434], ebx
xor edx, edx
test dl, dl
jne 0x5d47ba
mov dword [esp + 0x358], 0x18
movzx eax, byte [esp + 0x17f]
cmp eax, 0x73
mov edx, esi
mov ebx, edi
jne 0x5d47f7
mov eax, dword [esp + 0x4c0]
mov dword [esp + 0x464], eax
mov esi, ebx
mov ecx, edx
mov dword [esp + 0x12c], edx
mov eax, ebx
mov ebx, dword [esp + 0x380]
mov dword [esp + 0x140], ebx
mov dword [esp + 0x304], eax
mov edi, dword [esp + 0x3b4]
jmp 0x5d52d8
mov dword [esp + 0x434], ebx
mov dword [esp + 0x4b8], edx
mov ecx, esi
mov dword [esp + 0x344], edx
mov dword [esp + 0x12c], edx
mov dword [esp + 0x140], eax
mov dword [esp + 0x304], esi
mov eax, 4
jmp 0x5d4f77
mov dword [esp + 0x4b8], esi
mov ecx, edi
mov dword [esp + 0x344], esi
mov dword [esp + 0x12c], esi
mov edx, dword [esp + 0x380]
mov dword [esp + 0x140], edx
mov dword [esp + 0x304], edi
mov edi, dword [esp + 0x3b4]
mov eax, 4
jmp 0x5d4f77
mov edi, 6
mov byte [esp + 0x17f], 0x77
mov esi, dword [esp + 0x380]
movzx eax, byte [esi + ecx + 4]
cmp eax, 0x40
mov dword [esp + 0x4b8], edx
mov dword [esp + 0x12c], edx
mov dword [esp + 0x140], esi
mov dword [esp + 0x304], ebx
mov dword [esp + 0x344], edx
jne 0x5d4ca0
jmp 0x5d8ec3
mov byte [esp + 0x177], 0x1e
mov ecx, dword [esp + 0x4a8]
mov eax, dword [ecx]
mov dword [esp + 0x250], eax
test eax, eax
je 0x5d486e
mov al, 1
test al, al
mov dword [esp + 0x378], ecx
jne 0x5d96b7
mov dword [esp + 0x464], edi
mov edi, dword [esp + 0x4a8]
mov eax, dword [edi + 0x14]
mov ecx, 3
sub ecx, eax
xor ecx, eax
setne cl
movzx ecx, cl
test eax, ecx
jne 0x5d48ac
mov eax, dword [esp + 0x464]
mov dword [esp + 0x4c0], eax
mov dword [esp + 0x378], edi
jmp 0x5d4945
mov eax, 0x12
mov ebx, dword [esp + 0x374]
movzx ecx, bl
cmp ecx, 0x73
jne 0x5d4924
xor eax, eax
mov cl, 1
mov edx, dword [esp + 0x250]
jmp 0x5d48fb
mov ebx, 0x4f
xor bl, 0x7e
mov edx, eax
or edx, 2
mov esi, eax
xor esi, 2
add esi, edx
setne dl
movzx edx, dl
add eax, edx
mov edx, dword [esp + 0x3f4]
mov dword [edx], 1
mov edx, dword [edi]
test eax, eax
je 0x5d48d0
test cl, cl
je 0x5d48d0
mov dword [esp + 0x374], ebx
mov dword [esp + 0x250], edx
mov dword [esp + 0x378], edi
mov edi, dword [esp + 0x464]
jmp 0x5d96b7
mov dword [esp + 0x378], edi
mov edi, dword [esp + 0x3c8]
mov ebx, dword [esp + 0x250]
mov edx, dword [esp + 0x3e4]
jmp 0x5d0f4e
mov edi, dword [esp + 0x3c8]
mov al, byte [esp + 0x393]
movzx edx, al
cmp edx, 4
je 0x5d4a76
mov dword [esp + 0x3c8], edi
mov ecx, 0x11
mov eax, 0x1b
cmp edx, 0x2d
jne 0x5d1381
cmp eax, 0xc
je 0x5d9196
imul eax, eax
and eax, 3
cmp eax, 2
je 0x5d9196
xor edi, edi
mov eax, 0x96
lea ebx, [eax + eax - 0xd1]
lea esi, [eax - 0x95]
jmp 0x5d49cb
mov eax, edi
or eax, 2
mov ecx, edi
xor ecx, 2
add ecx, eax
setne al
movzx eax, al
cmp edi, eax
jb 0x5d49b0
mov eax, esi
imul eax, eax
and eax, 3
cmp eax, 2
sbb eax, eax
and eax, 1
cmp esi, eax
je 0x5d4c3d
xor eax, eax
mov ebx, 0x46
add ebx, 0xffffffc3
mov edx, dword [esp + 0x490]
mov esi, dword [esp + 0x47c]
jmp 0x5d4a5e
mov ecx, eax
not ecx
and ecx, 1
add ecx, eax
setne cl
movzx ecx, cl
cmp eax, ecx
jb 0x5d4a30
mov dword [esp + 0x3c8], edi
mov byte [esp + 0x393], 0x2d
mov eax, dword [esp + 0x4a8]
mov dword [esp], eax
call fcn.00411ea0
mov eax, dword [esp + 0x494]
mov dword [esp + 0x47c], eax
mov dword [esp + 0x344], eax
jmp 0x5d4c3d
mov ebx, 0xf
mov byte [esp + 0x1d7], 0x6c
mov esi, dword [esp + 0x250]
cmp esi, 0xfff2
jne 0x5d4c1a
mov ecx, 5
mov edx, 3
sub edx, esi
xor edx, esi
mov eax, dword [esp + 0x444]
je 0x5d4c21
mov dword [esp + 0x444], eax
cmp ecx, 5
jne 0x5d4b05
mov eax, ecx
or eax, 2
xor ecx, 2
add ecx, eax
jne 0x5d96ef
mov eax, 0x15
mov byte [esp + 0x18c], 0x4b
lea edx, [edi + 0x64]
mov dword [edi + 0x64], 0
mov ecx, dword [esp + 0x150]
movzx ecx, byte [ecx]
mov dword [esp + 0x4a4], 0
cmp ecx, 4
ja case.default.0x5d4b4b
mov dword [esp + 0x490], edx
mov eax, 9
mov edx, 8
jmp dword [ecx*4 + 0x7deee0]
mov edx, 0x13
mov ecx, 0xe
mov eax, dword [esp + 0x3b8]
movzx eax, al
mov dword [esp + 0x4a4], 0
cmp eax, 0x2c
mov dword [esp + 0x4c0], edi
jne 0x5d79c1
jmp 0x5d7038
mov bl, byte [esp + 0x10b]
movzx eax, bl
cmp eax, 0x49
jne 0x5d4ba7
xor eax, eax
mov ecx, 0xc7
add ecx, 0xffffff76
jmp 0x5d3206
mov byte [esp + 0x10b], 0x49
mov eax, dword [esp + 0x490]
mov dword [eax], 5
mov dword [esp + 0x4a4], 5
mov dword [esp + 0x4c0], edi
jmp 0x5d32cf
mov dword [esp + 0x490], edx
mov dword [esp + 0x4c0], edi
cmp eax, 0xb
je 0x5d4bf0
xor eax, eax
test al, al
je 0x5d32cf
mov eax, 4
mov byte [esp + 0x17e], 0x4c
mov ecx, dword [esp + 0x4bc]
mov ecx, dword [ecx]
mov dword [esp + 0x1a8], ecx
test ecx, ecx
jne 0x5d5ec6
jmp 0x5d2ff8
mov eax, dword [esp + 0x444]
mov dword [esp + 0x444], eax
cmp ebx, 0xf
jne 0x5cee1f
mov dword [esp + 0x4c0], edi
jmp 0x5d4945
xor esi, esi
mov edi, 3
mov ebx, dword [esp + 0x434]
mov ecx, dword [esp + 0x344]
jmp 0x5d4c73
inc esi
mov eax, dword [esp + 0x4a8]
mov dword [esp], eax
call fcn.004234b0
mov ecx, dword [ebx]
dec edi
test esi, esi
jne 0x5d4c7d
mov eax, esi
xor eax, edi
jne 0x5d4c60
mov eax, dword [esp + 0x47c]
mov dword [esp + 0x494], eax
mov edx, dword [esp + 0x4b8]
mov ebx, dword [esp + 0x3a8]
mov dword [esp + 0x4b8], ecx
mov esi, edx
mov ecx, dword [esp + 0x304]
mov eax, ecx
and eax, 1
xor eax, ecx
cmp eax, 0xffffffff
setne al
movzx edx, al
add edx, ecx
cmp edx, dword [esp + 0x4b8]
jb 0x5d4ce4
mov eax, 7
mov cl, 1
test cl, cl
je 0x5d4ce4
mov dword [esp + 0x3a8], ebx
mov ecx, dword [esp + 0x4b8]
mov edx, esi
jmp 0x5d9343
mov dword [esp + 0x3a8], edx
mov eax, 0xf
mov ecx, dword [esp + 0x4bc]
mov ecx, dword [ecx]
mov dword [esp + 0x380], ecx
mov ecx, dword [esp + 0x4b8]
mov dword [esp + 0x344], ecx
mov ebx, dword [esp + 0x434]
mov edi, dword [esp + 0x3b4]
cmp eax, 0xd
jne 0x5d4d44
mov ecx, eax
or ecx, 2
xor eax, 2
add eax, ecx
mov edx, dword [esp + 0x4b8]
mov esi, dword [esp + 0x3a8]
jne 0x5d9423
jmp 0x5d46f9
mov edx, dword [esp + 0x4b8]
mov esi, dword [esp + 0x3a8]
jmp 0x5d46f9
mov dl, bl
add dl, 0xb
mov dword [esp + 0x46c], edx
add eax, ecx
setne al
movzx eax, al
add esi, eax
mov ecx, dword [esp + 0x4c4]
mov eax, dword [ecx]
mov ecx, dword [ecx + 4]
mov dword [esp + 4], ecx
mov dword [esp], eax
mov dword [esp + 0xc], 0x5cd000
mov dword [esp + 8], 0x5cd020
call fcn.00412620
mov eax, esi
or eax, 2
mov ecx, esi
xor ecx, 2
mov edx, eax
add edx, ecx
setne dl
movzx edx, dl
cmp esi, edx
jb 0x5d4d60
cmp ebx, 6
jne 0x5d4dd2
mov eax, 3
sub eax, ebx
xor eax, ebx
je 0x5d4dd2
mov dword [esp + 0x388], edi
jmp 0x5d95b7
mov byte [esp + 0x2ce], 5
mov eax, dword [esp + 0x2a0]
mov dword [esp], eax
mov dword [esp + 4], 0x100
call fcn.00454a70
mov eax, dword [0x80dd14]
test eax, eax
je 0x5d4e1e
mov ecx, eax
imul ecx, ecx
and ecx, 3
cmp ecx, 2
je 0x5d4e2a
mov dword [esp + 0x388], edi
mov ecx, dword [esp + 0x324]
mov ecx, dword [ecx]
xor edx, edx
jmp 0x5d0880
mov dword [esp + 0x388], edi
jmp 0x5d0afc
mov dword [esp + 0x388], edi
jmp 0x5d0afc
mov ecx, eax
not ecx
and ecx, 1
add ecx, eax
je 0x5d72fa
mov eax, dword [esp + 0x434]
mov eax, dword [eax]
mov ecx, eax
imul ecx, ecx
and ecx, 3
cmp ecx, 2
sete cl
movzx ecx, cl
mov dword [esp + 0x454], 0
cmp eax, ecx
mov dword [esp + 0x4b8], edx
mov eax, dword [esp + 0x180]
mov dword [esp + 0x448], eax
je 0x5d5edd
mov eax, 5
imul esi, dword [esp + 0x454], 0x39
mov ecx, dword [esp + 0x448]
mov ecx, dword [ecx + esi + 0x14]
cmp ecx, 0x12ffff44
je 0x5d4f54
cmp ebx, 7
mov dword [esp + 0x4b8], edx
mov dword [esp + 0x4c0], edi
je 0x5d440d
jmp 0x5d562a
cmp eax, 4
jne 0x5d4f9f
mov dword [esp + 0x3b4], edi
mov edx, dword [esp + 0x4b8]
mov ebx, ecx
mov eax, dword [esp + 0x344]
mov dword [esp + 0x4b8], eax
jmp 0x5d4ca0
mov dword [esp + 0x3a8], ecx
movzx ecx, byte [esp + 0x35f]
cmp ecx, 0x27
je 0x5d520b
mov dword [esp + 0x3b4], edi
mov ebx, 4
mov eax, 0xe
cmp ecx, 0x4b
mov ecx, dword [esp + 0x494]
mov dword [esp + 0x47c], ecx
jne 0x5d8dbb
cmp eax, 0xe
je 0x5d4ff2
mov ecx, eax
and ecx, 1
inc ecx
xor ecx, eax
jne 0x5d87fc
mov ebx, 0xd
mov byte [esp + 0x35f], 0x4b
call fcn.0042d7f0
mov edi, eax
mov eax, dword [esp + 0x3ec]
mov dword [edi + 4], eax
mov eax, dword [esp + 0x3f0]
mov dword [edi], eax
mov dword [edi + 8], 0xfff4
mov dword [edi + 0xc], 2
mov eax, dword [esp + 0x4bc]
mov eax, dword [eax]
imul ecx, dword [esp + 0x350], 0x39
movzx eax, word [eax + ecx + 6]
mov dword [edi + 0x10], eax
mov dword [esp], edi
call fcn.004120f0
mov dword [esp], edi
call fcn.00434c70
cmp ebx, 0xd
jne 0x5d5064
mov eax, ebx
not eax
and eax, 1
add eax, ebx
jne 0x5d561c
mov eax, 0x10
mov cl, 0x53
mov dword [esp + 0x19c], ecx
mov ecx, dword [esp + 0x488]
mov dword [ecx], 0xffffffff
cmp eax, 0x10
je 0x5d5856
xor eax, eax
test al, al
je 0x5d35bd
jmp 0x5d5856
mov ecx, dword [esp + 0x3b4]
xor ebx, ebx
cmp eax, 8
jne 0x5d53bd
mov dword [esp + 0x3b4], ecx
mov edi, edx
mov ecx, dword [esp + 0x4c0]
lea eax, [ecx + 0xc8]
lea ecx, [ecx + 0x15c]
mov esi, dword [esp + 0x380]
jmp 0x5d51d4
mov edx, ebx
and edx, 1
xor edx, ebx
cmp edx, 0xffffffff
setne dl
movzx edx, dl
cmp ebx, edx
jb 0x5d5190
xor ebx, ebx
mov eax, 0x16
add eax, 0xfffffff2
mov dword [esp + 0x358], eax
imul eax, dword [esp + 0x350], 0x39
mov dword [esp + 0x47c], eax
jmp 0x5d529d
mov byte [esp + 0x35f], 0x27
mov eax, ebx
not eax
and eax, 1
add eax, ebx
setne al
movzx eax, al
add ebx, eax
call fcn.0042d7f0
mov esi, edi
mov edi, eax
mov eax, dword [esp + 0x3ec]
mov dword [edi + 4], eax
mov eax, dword [esp + 0x3f0]
mov dword [edi], eax
mov dword [edi + 8], 0xfff4
mov dword [edi + 0xc], 2
mov eax, dword [esp + 0x4bc]
mov eax, dword [eax]
mov ecx, dword [esp + 0x47c]
movzx eax, word [eax + ecx + 6]
mov dword [edi + 0x10], eax
mov dword [esp], edi
call fcn.004120f0
mov dword [esp], edi
mov edi, esi
call fcn.00434c70
mov eax, ebx
imul eax, eax
and eax, 3
test ebx, ebx
je 0x5d5230
cmp eax, 2
je 0x5d5230
mov eax, dword [esp + 0x4c0]
mov dword [esp + 0x464], eax
mov edx, dword [esp + 0x4b8]
mov ebx, dword [esp + 0x380]
mov esi, dword [esp + 0x3a8]
mov ecx, dword [esp + 0x344]
cmp dword [esp + 0x358], 8
je 0x5d5395
xor eax, eax
test al, al
jne 0x5d5395
mov eax, edx
mov byte [esp + 0x17f], 0x73
imul ecx, dword [esp + 0x304], 0x39
mov edx, dword [esp + 0x140]
movzx ecx, byte [edx + ecx + 4]
cmp ecx, 0x40
je 0x5d54be
mov dword [esp + 0x3a8], esi
mov dword [esp + 0x3b4], edi
mov dword [esp + 0x380], ebx
mov ebx, 0xe
imul ecx, ecx
and ecx, 3
cmp ecx, 3
mov ecx, dword [esp + 0x12c]
mov dword [esp + 0x344], ecx
mov edi, dword [esp + 0x464]
mov edx, eax
mov eax, 0xb
je 0x5d54ef
cmp ebx, 0xe
je 0x5d54ab
imul ebx, ebx
and ebx, 3
cmp ebx, 3
mov dword [esp + 0x4c0], edi
mov ebx, dword [esp + 0x3a8]
mov eax, dword [esp + 0x344]
mov dword [esp + 0x4b8], eax
jne 0x5d5edd
jmp 0x5d4ca0
mov dword [esp + 0x344], ecx
mov dword [esp + 0x3a8], esi
mov dword [esp + 0x3b4], edi
mov dword [esp + 0x380], ebx
mov edi, dword [esp + 0x464]
jmp 0x5d562a
mov dword [esp + 0x4b8], edx
mov dword [esp + 0x3b4], ecx
mov esi, 3
mov eax, 0x16
mov ecx, 0x16
xor ecx, 0xb
mov dword [esp + 0x358], ecx
sub ecx, eax
mov dword [esp + 0x464], ecx
imul eax, dword [esp + 0x350], 0x39
mov dword [esp + 0x3a8], eax
jmp 0x5d5462
mov eax, ebx
xor eax, esi
setne al
movzx eax, al
cmp ebx, eax
jb 0x5d5400
cmp ebx, 0xe
je 0x5d7f8f
xor eax, eax
test al, al
je 0x5d562a
jmp 0x5d7f8f
mov dword [esp + 0x4c0], edi
mov ebx, dword [esp + 0x3a8]
jmp 0x5d4f8c
mov dword [esp + 0x3a8], esi
mov dword [esp + 0x3b4], edi
mov dword [esp + 0x380], ebx
mov ecx, dword [esp + 0x12c]
mov dword [esp + 0x344], ecx
mov edi, dword [esp + 0x464]
mov edx, eax
mov eax, 0xb
cmp eax, 0xb
jne 0x5d5507
mov dword [esp + 0x4c0], edi
mov dword [esp + 0x4b8], edx
jmp 0x5d8ef5
mov dword [esp + 0x4b8], edx
xor eax, eax
mov esi, dword [esp + 0x490]
mov ebx, dword [esp + 0x348]
mov edx, dword [esp + 0x4a4]
jmp 0x5d3287
inc esi
call fcn.0042d7f0
mov edi, eax
mov eax, dword [esp + 0x3ec]
mov dword [edi + 4], eax
mov eax, dword [esp + 0x3f0]
mov dword [edi], eax
mov ebx, dword [esp + 0x4bc]
mov eax, dword [ebx]
imul ecx, dword [esp + 0x350], 0x39
mov edx, 0xffffff
and edx, dword [eax + ecx + 0x14]
mov dword [edi + 8], edx
mov dword [edi + 0xc], 2
mov eax, dword [ebx]
movzx eax, word [eax + ecx + 6]
mov dword [edi + 0x10], eax
mov dword [esp], edi
call fcn.004120f0
mov dword [esp], edi
call fcn.00434c70
mov eax, esi
not eax
and eax, 1
add eax, esi
setne al
movzx eax, al
cmp esi, eax
jb 0x5d55b0
mov edi, dword [esp + 0x4c0]
mov edx, dword [esp + 0x4b8]
mov dword [esp + 0x4b8], edx
mov eax, 0x18
mov dl, byte [esp + 0x2ef]
movzx ecx, dl
cmp ecx, 0xd
jne 0x5d5726
mov dword [esp + 0x464], edi
mov ecx, dword [esp + 0x3b0]
mov byte [esp + 0x47c], cl
mov edi, dword [esp + 0x388]
mov ebx, dword [esp + 0x480]
xor esi, esi
cmp eax, 0xf
je 0x5d5772
mov ecx, eax
and ecx, 1
inc ecx
xor ecx, eax
je 0x5d577b
mov ecx, dword [esp + 0x350]
mov eax, ecx
and eax, 1
xor eax, ecx
cmp eax, 0xffffffff
setne al
movzx eax, al
add eax, ecx
mov dword [esp + 0x328], eax
mov ecx, dword [esp + 0x434]
cmp eax, dword [ecx]
jb 0x5d5a4b
mov dword [esp + 0x480], ebx
mov byte [esp + 0x2ef], 0xd
mov dword [esp + 0x388], edi
mov eax, 0x10
xor ecx, ecx
test cl, cl
mov bl, byte [esp + 0x47c]
mov cl, bl
mov dword [esp + 0x3b0], ecx
mov edi, dword [esp + 0x464]
mov edx, dword [esp + 0x4b8]
jne 0x5d5a8e
cmp eax, 0x10
je 0x5d5ed4
xor eax, eax
test al, al
mov dword [esp + 0x4b8], edx
mov al, bl
mov dword [esp + 0x3b0], eax
mov dword [esp + 0x4c0], edi
je 0x5d0250
jmp 0x5d5edd
mov eax, 3
mov ecx, dword [esp + 0x350]
sub eax, ecx
xor eax, ecx
setne al
movzx eax, al
add eax, ecx
mov ecx, dword [esp + 0x434]
cmp eax, dword [ecx]
mov edx, dword [esp + 0x4b8]
jb 0x5d5a7f
mov byte [esp + 0x2ef], 0x68
mov dword [esp + 0x328], eax
xor eax, eax
test al, al
je 0x5d5edd
jmp 0x5d5a8e
mov byte [esp + 0x2ef], dl
jmp 0x5d57ac
mov byte [esp + 0x2ef], dl
jmp 0x5d57ac
mov eax, 0xf9
xor eax, 0x90
xor al, 0x51
mov dword [esp + 0x460], eax
inc esi
mov dword [esp], edi
call fcn.004936c0
mov eax, esi
not eax
and eax, 1
add eax, esi
setne al
movzx eax, al
cmp esi, eax
jb 0x5d5790
mov dword [esp + 0x388], edi
mov eax, dword [esp + 0x464]
mov dword [esp + 0x4c0], eax
mov al, byte [esp + 0x2e3]
mov dl, al
mov eax, 4
movzx ecx, byte [esp + 0x266]
cmp ecx, 8
jne 0x5d58b6
mov dword [esp + 0x480], ebx
mov cl, dl
mov byte [esp + 0x2e3], cl
mov cl, byte [esp + 0x47c]
mov dword [esp + 0x3b0], ecx
cmp eax, 4
jne 0x5d5825
mov ecx, 3
sub ecx, eax
xor ecx, eax
jne 0x5d0ae5
mov byte [esp + 0x1b3], 0x19
mov eax, dword [esp + 0x1c4]
movzx eax, ax
mov ecx, dword [esp + 0x488]
mov dword [ecx], eax
mov ecx, eax
and ecx, 1
inc ecx
xor ecx, eax
sete cl
movzx ecx, cl
cmp eax, ecx
je 0x5d35bd
movzx eax, byte [esp + 0x2cd]
cmp eax, 0x11
je 0x5d5926
cmp eax, 0x1a
jne 0x5d3548
mov byte [esp + 0x2cd], 0x11
mov ecx, dword [esp + 0x200]
cmp ecx, 6
je 0x5d3569
mov eax, 0xa
imul ecx, ecx
and ecx, 3
cmp ecx, 2
je 0x5d3569
mov ecx, dword [esp + 0x494]
mov dword [esp + 0x47c], ecx
mov esi, dword [esp + 0x4ac]
jmp 0x5cffc1
mov dword [esp + 0x480], ebx
mov edi, 0x10
mov byte [esp + 0x266], 8
mov eax, dword [esp + 0x184]
mov dword [esp], eax
mov ebx, edx
call fcn.004936c0
mov esi, dword [esp + 0x494]
mov al, bl
mov byte [esp + 0x2e3], al
mov al, byte [esp + 0x47c]
mov cl, al
mov dword [esp + 0x3b0], ecx
cmp edi, 0xd
jne 0x5d5a3f
imul edi, edi
and edi, 3
cmp edi, 2
mov dword [esp + 0x494], esi
mov dword [esp + 0x47c], esi
jb 0x5d7228
jmp 0x5d0afc
mov byte [esp + 0x2cd], 0x1a
mov edx, dword [esp + 0x200]
cmp edx, 6
je 0x5d3569
mov ecx, 8
mov eax, edx
and eax, 1
inc eax
xor eax, edx
je 0x5d3569
cmp ecx, 3
mov eax, dword [esp + 0x494]
mov dword [esp + 0x47c], eax
je 0x5d020d
mov eax, dword [esp + 0x3d4]
movzx ecx, al
cmp ecx, 0x35
je 0x5d599f
mov eax, 0x18
cmp ecx, 0x65
mov esi, dword [esp + 0x490]
jne 0x5d5a38
mov ecx, dword [esp + 0x47c]
mov dword [esp + 0x494], ecx
jmp 0x5d7ec9
mov eax, 0xf
mov dl, 0x35
mov ecx, dword [esp + 0x490]
mov dword [ecx], 0xa
mov esi, dword [esp + 0x47c]
mov dword [esp + 0x494], esi
mov dword [esp + 0x3d4], edx
mov dword [esp + 0x490], ecx
cmp eax, 0xf
je 0x5d35bd
imul eax, eax
and eax, 3
cmp eax, 2
je 0x5d35bd
mov ebx, 0xd
mov eax, dword [esp + 0x48]
mov dword [eax], 0x38
mov eax, dword [esp + 0x2c4]
mov eax, dword [eax]
add eax, 4
mov dword [esp], eax
mov dword [esp + 8], 0x38
mov dword [esp + 4], 0x7f762c
call fcn.007c51d0
cmp ebx, 0xa
jne 0x5d6f86
mov eax, ebx
or eax, 2
xor ebx, 2
add ebx, eax
jne 0x5d930f
jmp 0x5d6f86
xor eax, eax
jmp 0x5d359b
mov dword [esp + 0x494], esi
jmp 0x5d0afc
mov dword [esp + 0x480], ebx
mov byte [esp + 0x2ef], 0xd
mov dword [esp + 0x388], edi
mov al, byte [esp + 0x47c]
mov dword [esp + 0x3b0], eax
mov edi, dword [esp + 0x464]
mov edx, dword [esp + 0x4b8]
jmp 0x5d5a8e
mov byte [esp + 0x2ef], 0x68
mov dword [esp + 0x328], eax
mov eax, 8
mov ebx, dword [esp + 0x3e0]
movzx ecx, bl
cmp ecx, 0x24
je 0x5d5b2c
mov eax, 1
cmp ecx, 0x31
je 0x5d5da7
cmp ecx, 0x6a
mov esi, dword [esp + 0x328]
jne 0x5d5dba
mov dword [esp + 0x464], edi
mov edi, edx
xor eax, eax
mov ecx, 0xffffffff
jmp 0x5d5b01
mov ebx, 0x3b
add bl, 0x21
inc eax
mov edx, dword [esp + 0x4bc]
mov edx, dword [edx]
mov dword [esp + 0x448], edx
dec ecx
mov dword [esp + 0x454], esi
mov edx, eax
and edx, 1
xor edx, ecx
setne dl
movzx edx, dl
cmp eax, edx
jb 0x5d5ae0
mov dword [esp + 0x3e0], ebx
mov dword [esp + 0x4b8], edi
mov edi, dword [esp + 0x464]
jmp 0x5d4e87
mov ecx, dword [esp + 0x494]
mov dword [esp + 0x47c], ecx
mov dword [esp + 0x4b8], edx
mov dword [esp + 0x4c0], edi
mov edi, dword [esp + 0x328]
mov edx, dword [esp + 0x158]
mov esi, dword [esp + 0x33c]
mov ebx, dword [esp + 0x338]
cmp eax, 8
jne 0x5d5bfb
mov dword [esp + 0x33c], esi
mov dword [esp + 0x158], edx
xor ecx, ecx
mov eax, 0xb9
add eax, 0xffffff57
jmp 0x5d5bc4
mov dl, al
xor dl, 0x34
mov dword [esp + 0x3e0], edx
mov edx, ecx
not edx
and edx, 1
add edx, ecx
setne dl
movzx edx, dl
add ecx, edx
mov edx, dword [esp + 0x4bc]
mov edx, dword [edx]
mov dword [esp + 0x448], edx
mov dword [esp + 0x454], edi
mov edx, ecx
or edx, 2
mov esi, ecx
xor esi, 2
add esi, edx
setne dl
movzx edx, dl
cmp ecx, edx
jb 0x5d5b90
mov dword [esp + 0x338], ebx
mov dword [esp + 0x328], edi
mov ecx, dword [esp + 0x47c]
mov dword [esp + 0x494], ecx
jmp 0x5d6200
mov byte [esp + 0x19b], 0x5f
mov dword [esp], edx
mov dword [esp + 0x158], edx
call fcn.004936c0
mov eax, dword [esp + 0x4bc]
mov eax, dword [eax]
imul ecx, dword [esp + 0x21c], 0x39
mov dword [eax + ecx + 0x10], 0
mov eax, dword [esp + 0x434]
mov edx, dword [eax]
mov eax, 9
mov cl, byte [esp + 0x24f]
movzx ecx, cl
cmp ecx, 0x2c
je 0x5d5ca7
mov dword [esp + 0x338], ebx
mov dword [esp + 0x33c], esi
cmp ecx, 0x34
je 0x5d2f7b
mov dword [esp + 0x328], edi
mov byte [esp + 0x24f], 0x2c
mov ecx, dword [esp + 0x21c]
mov eax, ecx
imul eax, eax
and eax, 3
cmp eax, 2
mov eax, ecx
adc eax, 0
mov dword [esp + 0x1dc], eax
cmp eax, edx
mov dword [esp + 0x498], edx
mov dword [esp + 0x160], edx
jae 0x5d2fdd
jmp 0x5d5d4f
mov dword [esp + 0x338], ebx
mov dword [esp + 0x33c], esi
mov dword [esp + 0x328], edi
cmp eax, 5
jne 0x5d5d11
mov ecx, eax
not ecx
and ecx, 1
add ecx, eax
je 0x5d5d11
mov dword [esp + 0x160], edx
mov dword [esp + 0x494], 0x19
mov byte [esp + 0x10a], 0x73
mov eax, dword [esp + 0x104]
mov ecx, dword [eax]
mov dword [esp + 0x60], ecx
mov eax, ecx
imul eax, eax
and eax, 3
cmp eax, 3
sete al
movzx eax, al
cmp ecx, eax
je 0x5d03b9
jmp 0x5d8e3f
mov edi, 6
mov byte [esp + 0x24f], 0x47
mov ecx, dword [esp + 0x21c]
mov eax, ecx
not eax
and eax, 1
add eax, ecx
setne al
movzx eax, al
add eax, ecx
mov dword [esp + 0x1dc], eax
cmp eax, edx
mov dword [esp + 0x498], edx
mov dword [esp + 0x160], edx
jae 0x5d5d75
xor ecx, ecx
mov eax, 0xe4
add eax, 0xffffff28
mov edi, dword [esp + 0x1dc]
mov esi, dword [esp + 0x33c]
mov ebx, dword [esp + 0x338]
jmp 0x5d306d
cmp edi, 6
je 0x5d2fdd
imul edi, edi
and edi, 3
cmp edi, 3
mov eax, dword [esp + 0x47c]
mov dword [esp + 0x494], eax
mov edi, dword [esp + 0x4c0]
jne 0x5d92d3
jmp 0x5d2fdd
mov dword [esp + 0x4b8], edx
mov dword [esp + 0x4c0], edi
jmp 0x5d70ab
mov eax, 0x11
mov cl, 0x31
mov dword [esp + 0x3e0], ecx
mov ecx, dword [esp + 0x4bc]
mov ecx, dword [ecx]
mov dword [esp + 0x448], ecx
mov dword [esp + 0x4b8], edx
mov dword [esp + 0x454], esi
cmp eax, 9
jne 0x5d4e87
mov ecx, eax
or ecx, 2
xor eax, 2
add eax, ecx
je 0x5d4e87
mov bh, byte [esp + 0x1e6]
movzx eax, bh
cmp eax, 6
mov ecx, dword [esp + 0x490]
je 0x5d5e2b
mov ecx, 0xe
cmp eax, 0x7f
jne 0x5d5e50
mov dword [esp + 0x4c0], edi
jmp 0x5d3778
mov byte [esp + 0x1e6], 6
mov dword [ecx], 4
mov dword [esp + 0x4a4], 4
mov dword [esp + 0x4c0], edi
jmp 0x5d32cf
mov eax, edi
xor ecx, ecx
mov edx, 0x82
mov esi, 0x82
xor esi, 0x85
mov dword [esp + 0x47c], esi
add edx, esi
jmp 0x5d5e9b
mov bh, dl
add bh, 0xc1
mov esi, ecx
imul esi, esi
and esi, 3
cmp esi, 2
adc ecx, 0
mov esi, dword [esp + 0x490]
mov dword [esi], 4
mov dword [esp + 0x4a4], 4
mov esi, ecx
or esi, 2
mov edi, ecx
xor edi, 2
add edi, esi
setne bl
movzx esi, bl
cmp ecx, esi
jb 0x5d5e70
mov byte [esp + 0x1e6], bh
mov dword [esp + 0x4c0], eax
mov eax, dword [esp + 0x47c]
cmp eax, 4
je 0x5d2e43
mov al, bl
mov dword [esp + 0x3b0], eax
mov esi, edx
mov eax, dword [esp + 0x3ec]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x3f0]
mov dword [esp], eax
call fcn.00412c30
mov eax, dword [esp + 0x234]
mov dword [esp], eax
mov dword [esp + 8], 0x268
mov dword [esp + 4], 0
call fcn.007ce3c0
mov dword [esp + 0xfa0], 0
mov dword [esp + 0xf9c], 0
mov ecx, dword [esp + 0x4c4]
mov eax, dword [ecx]
mov dword [esp + 0x248], eax
mov eax, dword [ecx + 4]
mov dword [esp + 0x244], eax
mov eax, dword [0x80dd14]
test eax, eax
mov dword [esp + 0x398], 0x70000007
je 0x5d5f70
mov dword [esp + 0x290], eax
xor eax, eax
test al, al
mov edx, esi
je 0x5d5fb6
jmp 0x5d6b6b
mov dword [esp + 0x290], eax
mov edx, esi
jmp 0x5d6b6b
mov eax, dword [esp + 0x1c8]
mov eax, dword [eax + 4]
test eax, eax
je 0x5d61e9
mov dword [esp + 0x290], eax
mov edx, dword [esp + 0x4b8]
mov edi, dword [esp + 0x4c0]
mov eax, 0xc
mov ecx, 0x15
mov esi, edx
movzx edx, byte [esp + 0x267]
mov dword [esp + 0x398], 0x70000007
cmp edx, 0x72
mov dword [esp + 0x4b8], esi
mov dword [esp + 0x4c0], edi
je 0x5d79fe
cmp ecx, 0xa
je 0x5d784a
imul ecx, ecx
and ecx, 3
cmp ecx, 3
je 0x5d784a
mov edx, dword [esp + 0x290]
mov ecx, dword [edx + 0xc]
mov dword [esp + 0x2ac], ecx
mov eax, dword [ecx + 4]
xor eax, dword [esp + 0x244]
mov ecx, dword [ecx]
xor ecx, dword [esp + 0x248]
or ecx, eax
mov ecx, 0x1a
mov byte [esp + 0x267], 0x72
mov dword [esp + 0x1c8], edx
je 0x5d621c
cmp ecx, 0xe
jne 0x5d5f8f
mov edi, 0x10
mov ecx, dword [esp + 0x4c4]
mov eax, dword [ecx]
mov ecx, dword [ecx + 4]
mov esi, dword [esp + 0xbc]
mov dword [esp + 0xc], esi
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
mov dword [esp], str.Sentinel_HL__llu_failed_to_execute_UPDATE_FILE_command__error_0x_x__n
call fcn.004414c0
mov dword [esp + 0x2b0], esi
mov eax, dword [esp + 0x4b8]
mov dword [esp + 0x4b8], eax
cmp edi, 2
mov ecx, eax
mov esi, dword [esp + 0x4c0]
je 0x5d0afc
mov ebx, 0x14
mov eax, dword [esp + 0x2c4]
mov eax, dword [eax]
mov dword [esp], eax
mov edi, ecx
call fcn.004936c0
cmp dword [esp + 0x2b0], 0
mov dword [esp + 0x4b8], edi
mov dword [esp + 0x4c0], esi
jne 0x5d6137
movzx eax, byte [esp + 0x23a]
cmp eax, 0x23
je 0x5d427d
mov byte [esp + 0x23a], 0x23
call fcn.004449d0
mov dword [esp], eax
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov ecx, 0x23
mov edi, dword [esp + 0x4c0]
mov edx, edi
call fcn.005ec220
cmp eax, 0xfb000099
je 0x5d380f
xor edi, edi
cmp ebx, 7
mov ecx, dword [esp + 0x3ac]
mov edx, dword [esp + 0x3d0]
jne 0x5d61dd
mov eax, ebx
not eax
and eax, 1
add eax, ebx
je 0x5d61dd
mov ebx, dword [esp + 0x354]
jmp 0x5d61b0
mov ebx, 0x4f
add bl, 0xc5
mov eax, 3
sub eax, edi
xor eax, edi
setne al
movzx eax, al
add edi, eax
mov ecx, dword [esp + 0x4c4]
mov eax, dword [ecx]
mov ecx, dword [ecx + 4]
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
mov dword [esp], str.Sentinel_HL__llu_was_not_added_to_the_list_of_known_keys_n
call fcn.004414c0
mov edx, 0x7000002b
xor ecx, ecx
mov eax, edi
not eax
and eax, 1
add eax, edi
setne al
movzx eax, al
cmp edi, eax
jb 0x5d6170
mov dword [esp + 0x3d0], edx
mov dword [esp + 0x3ac], ecx
mov dword [esp + 0x354], ebx
jmp 0x5d930f
mov edx, dword [esp + 0x2f8]
jmp 0x5d422e
mov dword [esp + 0x290], eax
mov eax, 0xe
mov dword [esp + 0x398], 0x70000007
cmp eax, 0xe
mov edi, dword [esp + 0x4c0]
mov edx, dword [esp + 0x4b8]
jne 0x5d4e87
jmp 0x5d6b6b
cmp edi, 4
je 0x5d643f
imul edi, edi
and edi, 3
cmp edi, 2
je 0x5d643f
mov edi, 0x13
movzx eax, byte [esp + 0x21a]
cmp eax, 0x79
jne 0x5d8331
cmp eax, 5
je 0x5d6520
mov dword [esp + 0x2ac], esi
xor eax, eax
test al, al
jne 0x5d6530
mov esi, 0x10
mov al, 0x61
mov dword [esp + 0x42c], eax
mov dword [esp], edi
call fcn.0041d160
mov eax, dword [esp + 0x438]
mov dword [esp], eax
call fcn.00434c70
mov ecx, dword [esp + 0x440]
mov edx, dword [esp + 0x43c]
jmp 0x5d88fe
mov dword [esp + 0x3b4], edi
mov dword [esp + 0x2ac], esi
jmp 0x5d6537
mov dword [esp + 0x3b4], edi
mov edx, dword [esp + 0x4b8]
mov edi, dword [esp + 0x4c0]
jmp 0x5d6b6b
mov byte [esp + 0x20a], 0x5b
mov eax, dword [esp + 0xfa0]
mov ecx, dword [eax]
test ecx, ecx
jne 0x5d0772
mov edx, ecx
and edx, 1
xor edx, ecx
not edx
test edx, edx
je 0x5d0772
cmp edi, 0xa
je 0x5d66c5
xor eax, eax
test al, al
jne 0x5d66c5
movzx ecx, byte [esp + 0x10a]
cmp ecx, 0x1a
je 0x5d0387
cmp ecx, 0x5b
je 0x5d6743
mov eax, 5
cmp ecx, 0x73
jne 0x5d6774
mov eax, 0x1b
mov edi, 0xf
mov byte [esp + 0x10a], 0x56
mov ecx, dword [esp + 0x104]
mov edx, dword [ecx]
mov dword [esp + 0x60], edx
mov ecx, edx
and ecx, 1
inc ecx
xor ecx, edx
sete cl
movzx ecx, cl
cmp edx, ecx
jne 0x5d13bc
jmp 0x5d27c7
mov dword [esp + 0x47c], esi
mov esi, 0xd
mov bl, 0x4f
mov ecx, dword [esp + 0x4c4]
mov eax, dword [ecx]
mov ecx, dword [ecx + 4]
mov dword [esp + 4], ecx
mov dword [esp], eax
call fcn.00412560
xor eax, eax
cmp esi, 0xc
jne 0x5d6730
mov dword [esp + 0x220], ebx
mov dword [esp + 0x310], eax
imul esi, esi
and esi, 3
cmp esi, 2
mov edx, dword [esp + 0x4b8]
mov eax, dword [esp + 0x47c]
mov dword [esp + 0x494], eax
mov edi, dword [esp + 0x4c0]
jb 0x5d063f
jmp 0x5d6892
mov dword [esp + 0x220], ebx
mov dword [esp + 0x310], eax
jmp 0x5d67f0
mov dword [esp + 0x47c], esi
mov byte [esp + 0x10a], 0x1a
mov eax, dword [esp + 0x104]
mov ecx, dword [eax]
mov dword [esp + 0x60], ecx
mov eax, ecx
and eax, 1
inc eax
xor eax, ecx
sete al
movzx eax, al
cmp ecx, eax
jmp 0x5d03a5
mov dword [esp + 0x47c], esi
mov edi, dword [esp + 0x328]
mov edx, dword [esp + 0x160]
jmp 0x5d5cb5
mov byte [esp + 0x25b], 8
mov eax, dword [esp + 0xfa0]
lea ecx, [esp + 0xf9c]
mov dword [esp + 4], ecx
mov dword [esp], eax
call fcn.00627df0
mov dword [esp + 0x310], eax
test eax, eax
jne 0x5d67f0
mov eax, 0x10
mov ecx, dword [esp + 0x3a0]
movzx ecx, cl
cmp ecx, 0x60
jne 0x5d680a
mov esi, dword [esp + 0x4b8]
mov ecx, dword [esp + 0x47c]
mov dword [esp + 0x494], ecx
mov edi, dword [esp + 0x4c0]
jmp 0x5d8b70
mov edx, dword [esp + 0x4b8]
mov eax, dword [esp + 0x47c]
mov dword [esp + 0x494], eax
jmp 0x5d688b
xor eax, eax
imul ecx, dword [esp + 0x2e4], 0x39
mov edx, 0xffffff
jmp 0x5d6862
mov edi, dword [esp + 0x4c0]
movzx ecx, byte [esp + 0x2db]
cmp ecx, 0x18
je 0x5d68f9
cmp eax, 0x10
jne 0x5d6a8d
cmp ebx, 0xb
mov edx, dword [esp + 0x4b8]
je 0x5d4e45
jmp 0x5d7b5c
mov ecx, dword [esp + 0x398]
mov eax, ecx
imul eax, eax
and eax, 3
cmp eax, 3
sete al
movzx eax, al
mov dword [esp + 0x41c], 0
cmp ecx, eax
mov dword [esp + 0x4b8], edx
mov dword [esp + 0x4c0], edi
mov eax, dword [esp + 0x494]
mov dword [esp + 0x47c], eax
mov eax, dword [esp + 0x31c]
mov dword [esp + 0x3ac], eax
mov dword [esp + 0x3d0], ecx
mov dword [esp + 0x424], edi
mov dword [esp + 0x420], eax
mov dword [esp + 0x48c], 0
je 0x5d7e9c
jmp 0x5d930f
imul eax, dword [esp + 0x2e4], 0x39
mov ecx, dword [esp + 0x3e8]
add eax, dword [ecx]
mov ecx, 0xffffff
mov edx, dword [esp + 0x39c]
and ecx, dword [eax + edx*4 + 0x18]
mov eax, dword [esp + 0xf9c]
mov dword [eax], ecx
mov al, 0x7e
mov dword [esp + 0x3a0], eax
mov dword [esp + 0x4c0], edi
mov dword [esp + 0x4b8], esi
mov eax, 0x10
mov edx, dword [esp + 0xf9c]
test edx, edx
jne 0x5d6c99
mov ecx, edx
and ecx, 1
xor ecx, edx
mov dword [esp + 0x118], edx
not ecx
test ecx, ecx
jne 0x5d6eb8
jmp 0x5d6ca0
mov dword [esp + 0x118], edx
cmp eax, 0xc
je 0x5d6e43
xor eax, eax
test al, al
jne 0x5d6e43
mov eax, dword [esp + 0x3e8]
mov ecx, dword [eax]
imul edx, dword [esp + 0x2e4], 0x39
movzx eax, byte [ecx + edx + 4]
cmp eax, 0x40
jne 0x5d6eb8
mov eax, 6
lea edi, [ecx + edx]
movzx ebx, byte [ecx + edx + 0x28]
mov esi, 0xffffff
and esi, dword [edi + ebx*4 + 0x10]
cmp esi, 0xffffff
je 0x5d6e70
imul esi, esi
and esi, 3
cmp esi, 3
mov edi, dword [esp + 0x3c8]
mov ebx, dword [esp + 0x250]
je 0x5d0fe8
movzx eax, byte [esp + 0x7f]
cmp eax, 0x70
jne 0x5d6e83
mov ebx, 0xd
mov byte [esp + 0x7f], 0x70
mov eax, dword [ecx + edx]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x118]
mov dword [esp], eax
call fcn.00627d50
mov dword [esp + 0x310], eax
test eax, eax
mov edi, dword [esp + 0x4c0]
je 0x5d6eb8
cmp ebx, 5
jne 0x5d6e64
mov eax, 3
sub eax, ebx
xor eax, ebx
mov edx, dword [esp + 0x4b8]
je 0x5d6892
mov dword [esp + 0x464], edi
mov eax, dword [esp + 0x4c4]
mov esi, dword [eax]
mov ebx, dword [eax + 4]
mov dword [esp], 0x28
call fcn.004939e0
mov dword [eax + 4], ebx
mov edi, eax
mov dword [edi], esi
lea ebx, [edi + 8]
mov dword [edi + 8], 0
lea eax, [edi + 0xc]
mov dword [esp + 0x4bc], eax
mov dword [edi + 0xc], 0
lea eax, [edi + 0x18]
mov dword [esp + 0x1d0], eax
mov dword [esp + 8], edi
mov dword [esp + 4], eax
mov dword [esp], 0x80dd14
call fcn.007c5230
test edi, edi
jne 0x5d10b4
mov eax, edi
imul eax, eax
and eax, 3
cmp eax, 2
jae 0x5d10b4
mov dword [esp + 0x434], ebx
mov dword [esp + 0x470], edi
mov dword [esp + 0x48c], 0x70000003
mov dword [esp + 0x424], 0
mov eax, dword [esp + 0x464]
mov dword [esp + 0x4c0], eax
mov ecx, dword [esp + 0x494]
mov dword [esp + 0x47c], ecx
mov dword [esp + 0x420], 0
mov dword [esp + 0x41c], eax
jmp 0x5d7e9c
mov al, 0x3b
mov dword [esp + 0x128], eax
mov eax, dword [esp + 0x1c0]
lea eax, [eax + 0xc]
mov dword [esp + 0x3e8], eax
xor eax, eax
jmp 0x5d6f1f
mov edx, dword [esp + 0x4b8]
jmp 0x5d6892
mov edi, dword [esp + 0x3c8]
mov ebx, dword [esp + 0x250]
jmp 0x5d0fe8
mov byte [esp + 0x7f], 0x4f
mov eax, dword [ecx + edx]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x118]
mov dword [esp], eax
call fcn.00627d50
mov dword [esp + 0x310], eax
test eax, eax
je 0x5d6eb8
mov eax, 0xc
mov cl, 1
test cl, cl
jne 0x5d4979
mov ecx, dword [esp + 0x2e4]
mov eax, ecx
and eax, 1
xor eax, ecx
cmp eax, 0xffffffff
setne al
movzx eax, al
add eax, ecx
mov ecx, dword [esp + 0x1bc]
cmp eax, dword [ecx]
jb 0x5d6f1f
xor ecx, ecx
test cl, cl
jne 0x5d6f1f
movzx eax, byte [esp + 0x20a]
cmp eax, 1
je 0x5d654a
mov edi, 3
cmp eax, 0x53
jne 0x5d0734
mov byte [esp + 0x20a], 0x53
mov eax, dword [esp + 0xfa0]
mov ecx, dword [eax]
mov edx, ecx
and edx, 1
inc edx
xor edx, ecx
jmp 0x5d0764
mov ecx, 4
mov edx, dword [esp + 0x3e8]
mov esi, dword [edx]
mov dword [esp + 0x178], esi
imul edx, eax, 0x39
movzx edx, byte [esi + edx + 4]
mov esi, edx
imul esi, esi
and esi, 3
cmp esi, 2
sbb esi, esi
and esi, 1
cmp edx, esi
mov ebx, 0x11
mov esi, dword [esp + 0x494]
mov dword [esp + 0x2e4], eax
jne 0x5d7038
mov eax, ebx
and eax, 1
xor eax, ebx
cmp eax, 0xffffffff
setne al
movzx eax, al
cmp ebx, eax
jne 0x5d7125
mov dword [esp + 0x494], esi
movzx eax, byte [esp + 0x233]
cmp eax, 0x66
je 0x5d3f5a
mov byte [esp + 0x233], 0x70
mov ecx, dword [esp + 0x1a4]
mov eax, dword [ecx]
mov edx, dword [esp + 0x204]
mov dword [esp + 0x10], edx
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
mov dword [esp + 0x14], 8
mov dword [esp + 0xc], 0x14
mov dword [esp], 0x80dcf8
call fcn.0078aa10
mov edi, eax
and eax, 1
inc eax
xor eax, edi
sete al
movzx eax, al
cmp edi, eax
je 0x5d4177
mov eax, dword [esp + 0x4c0]
mov dword [esp + 0x464], eax
mov ebx, dword [esp + 0x1fc]
mov edx, dword [esp + 0x4a4]
mov eax, 9
movzx ecx, bl
cmp ecx, 0xe
je 0x5d72cc
mov dword [esp + 0x4a4], edx
cmp ecx, 0x47
jne 0x5d7364
xor esi, esi
mov ecx, dword [esp + 0x2b0]
jmp 0x5d413b
cmp ecx, 4
je 0x5d6c6f
imul ecx, ecx
and ecx, 3
cmp ecx, 3
je 0x5d6c6f
xor ecx, ecx
mov edx, 0x98
lea eax, [edx - 0x92]
xor edx, eax
jmp 0x5d7095
mov bl, dl
add bl, 0xb4
mov dword [esp + 0x3b8], ebx
inc ecx
mov esi, dword [esp + 0x490]
mov dword [esi], 3
mov dword [esp + 0x4a4], 3
mov esi, ecx
or esi, 2
mov edi, ecx
xor edi, 2
add edi, esi
setne bl
movzx esi, bl
cmp ecx, esi
jb 0x5d7070
mov edi, dword [esp + 0x328]
mov ecx, eax
and ecx, 1
xor ecx, eax
cmp ecx, 0xffffffff
setne cl
movzx ecx, cl
cmp eax, ecx
jne 0x5d71b7
xor eax, eax
jmp 0x5d70fa
mov bl, 0x6a
mov dword [esp + 0x3e0], ebx
add ecx, edx
setne cl
movzx ecx, cl
add eax, ecx
mov ecx, dword [esp + 0x4bc]
mov ecx, dword [ecx]
mov dword [esp + 0x448], ecx
mov dword [esp + 0x454], edi
mov ecx, eax
or ecx, 2
mov edx, eax
xor edx, 2
mov esi, ecx
add esi, edx
setne bl
movzx esi, bl
cmp eax, esi
jb 0x5d70d0
mov dword [esp + 0x328], edi
mov edi, dword [esp + 0x4c0]
jmp 0x5d4e87
movzx eax, byte [esp + 0x18d]
cmp eax, 0x28
je 0x5d71c3
cmp eax, 0x56
jne 0x5d7246
imul eax, dword [esp + 0x2e4], 0x39
mov edx, dword [esp + 0x178]
lea ecx, [edx + eax]
movzx edx, byte [edx + eax + 0x28]
mov eax, edx
not eax
and eax, 1
add eax, edx
setne al
movzx eax, al
sub edx, eax
mov dword [esp + 0x39c], edx
mov eax, 0xffffff
and eax, dword [ecx + edx*4 + 0x18]
mov ebx, 0x12
cmp eax, 0xffffff
mov edi, 0xd
mov byte [esp + 0x18d], 0x56
mov ecx, dword [esp + 0x3b0]
jne 0x5d58f4
mov dword [esp + 0x3b0], ecx
cmp ebx, 0xc
mov dword [esp + 0x494], esi
je 0x5d045c
jmp 0x5d6eb8
mov dword [esp + 0x328], edi
jmp 0x5d32cf
mov byte [esp + 0x18d], 0x32
imul eax, dword [esp + 0x2e4], 0x39
mov edx, dword [esp + 0x178]
lea ecx, [edx + eax]
movzx edx, byte [edx + eax + 0x28]
mov eax, edx
imul eax, eax
and eax, 3
cmp eax, 2
sbb edx, 0
mov dword [esp + 0x39c], edx
mov eax, 0xffffff
and eax, dword [ecx + edx*4 + 0x18]
cmp eax, 0xffffff
je 0x5d7390
imul eax, eax
and eax, 3
cmp eax, 3
mov dword [esp + 0x494], esi
mov dword [esp + 0x47c], esi
je 0x5d6eb8
movzx eax, byte [esp + 0x25b]
cmp eax, 8
jne 0x5d678e
mov byte [esp + 0x25b], 0x2e
jmp 0x5d6796
mov byte [esp + 0x18d], 0x28
imul eax, dword [esp + 0x2e4], 0x39
mov edx, dword [esp + 0x178]
lea ecx, [edx + eax]
movzx edx, byte [edx + eax + 0x28]
mov eax, edx
not eax
and eax, 1
add eax, edx
setne al
movzx eax, al
sub edx, eax
mov dword [esp + 0x39c], edx
mov eax, 0xffffff
and eax, dword [ecx + edx*4 + 0x18]
cmp eax, 0xffffff
je 0x5d739c
mov edi, 0xb
imul eax, eax
and eax, 3
cmp eax, 3
mov dword [esp + 0x494], esi
je 0x5d6eb8
cmp edi, 0xb
mov ecx, dword [esp + 0x4c0]
mov edx, esi
je 0x5ceda3
mov dword [esp + 0x494], edx
mov edi, ecx
jmp 0x5cedc4
mov dword [esp + 0x4a4], edx
mov dword [esp + 0x320], edi
mov dword [esp + 0x1fc], ebx
mov edi, dword [esp + 0x464]
mov edx, dword [esp + 0x4b8]
xor esi, esi
cmp eax, 1
je 0x5d4e36
mov dword [esp + 0x4b8], edx
mov dword [esp + 0x464], edi
mov ecx, dword [esp + 0x2b0]
mov ebx, dword [esp + 0x1fc]
mov edi, dword [esp + 0x320]
jmp 0x5d734b
mov al, 0xe
mov dword [esp + 0x1fc], eax
mov dword [esp + 4], edi
mov dword [esp], str.WALLE_driver_failed_to_execute_UPDATE_FILE_command__error_0x_x__n
call fcn.004414c0
mov dword [esp + 0x2b0], edi
mov dword [esp + 0x320], edi
jmp 0x5d4164
mov dword [esp + 0x494], esi
jmp 0x5d6eb8
mov dword [esp + 0x494], esi
jmp 0x5d6eb8
xor ecx, ecx
mov edx, 3
mov ebx, dword [esp + 0x470]
jmp 0x5d73db
mov eax, 4
add al, 0x1c
mov dword [esp + 0x450], eax
inc ecx
cmp dword [esp + 0x48c], 0
setne al
dec edx
test ecx, ecx
jne 0x5d73e5
mov esi, ecx
xor esi, edx
jne 0x5d73c0
mov ecx, dword [esp + 0x47c]
mov dword [esp + 0x494], ecx
mov ecx, dword [esp + 0x424]
mov dword [esp + 0x440], ecx
mov ecx, dword [esp + 0x48c]
mov dword [esp + 0x43c], ecx
mov edi, dword [esp + 0x41c]
mov ecx, dword [esp + 0x420]
jmp 0x5d75f8
mov edi, 7
mov byte [esp + 0x34f], 0x4c
mov eax, dword [esp + 0x1d0]
mov dword [esp + 4], eax
mov dword [esp], 0x80dd14
call fcn.007c5260
mov eax, dword [esp + 0x4bc]
mov edx, dword [eax]
test edx, edx
je 0x5d748b
mov eax, 6
mov ecx, edx
and ecx, 1
inc ecx
xor ecx, edx
mov dword [esp + 0x1d8], edx
mov ecx, dword [esp + 0x3ac]
mov dword [esp + 0x22c], ecx
mov ecx, dword [esp + 0x3d0]
mov dword [esp + 0x228], ecx
jne 0x5d3529
jmp 0x5d74ae
mov dword [esp + 0x1d8], edx
mov eax, dword [esp + 0x3ac]
mov dword [esp + 0x22c], eax
mov eax, dword [esp + 0x3d0]
mov dword [esp + 0x228], eax
cmp edi, 7
jne 0x5d74c3
mov eax, edi
or eax, 2
xor edi, 2
add edi, eax
jne 0x5d75a7
mov ecx, 0xb
mov eax, dword [esp + 0x4ac]
mov byte [eax + 0x169], 1
cmp ecx, 0xb
jne 0x5d74ea
mov eax, 3
sub eax, ecx
xor eax, ecx
jne 0x5d0250
mov eax, 9
movzx ecx, byte [esp + 0x20b]
cmp ecx, 0xe
je 0x5d87cf
mov esi, 0xf
mov eax, 0xa
cmp ecx, 0x54
mov ecx, dword [esp + 0x38c]
mov edx, dword [esp + 0x384]
jne 0x5d02ae
mov dword [esp + 0x38c], ecx
cmp eax, 0xa
je 0x5d373e
mov eax, ecx
and eax, 1
inc eax
xor eax, ecx
mov dword [esp + 0x1d8], ecx
mov ecx, dword [esp + 0x4b8]
mov eax, dword [esp + 0x3ac]
mov dword [esp + 0x22c], eax
mov eax, dword [esp + 0x3d0]
mov dword [esp + 0x228], eax
je 0x5d75a7
mov eax, dword [esp + 0x1d8]
mov dword [esp], eax
mov esi, ecx
call fcn.004936c0
mov dword [esp + 0x4b8], esi
mov dword [esp + 0x440], 0
xor esi, esi
mov ebx, dword [esp + 0x470]
jmp 0x5d75c9
inc esi
mov dword [esp], ebx
call fcn.004936c0
mov al, 1
test esi, esi
jne 0x5d75dc
mov ecx, esi
not ecx
and ecx, 1
neg ecx
cmp ecx, esi
jne 0x5d75c0
mov ecx, dword [esp + 0x228]
mov dword [esp + 0x43c], ecx
mov edi, dword [esp + 0x4c0]
mov ecx, dword [esp + 0x22c]
mov dword [esp + 0x438], ecx
mov esi, dword [esp + 0x490]
test edi, edi
setne cl
mov edx, edi
and edx, 1
inc edx
xor edx, edi
sete dl
test al, 1
je 0x5d7626
or cl, dl
je 0x5d7626
mov dword [esp], edi
call fcn.005cd040
mov dword [esp + 0x490], esi
mov eax, 0x15
mov ecx, dword [esp + 0x42c]
movzx ecx, cl
cmp ecx, 0x61
jne 0x5d76c3
xor esi, esi
mov ecx, dword [esp + 0x38c]
mov edx, dword [esp + 0x384]
jmp 0x5d76a4
mov eax, 0xec
add al, 0x4c
mov dword [esp + 0x42c], eax
mov eax, esi
not eax
and eax, 1
add eax, esi
setne al
movzx eax, al
add esi, eax
mov dword [esp], edi
call fcn.0041d160
mov eax, dword [esp + 0x438]
mov dword [esp], eax
call fcn.00434c70
mov ecx, dword [esp + 0x440]
mov edx, dword [esp + 0x43c]
mov eax, 3
sub eax, esi
xor eax, esi
setne al
movzx eax, al
cmp esi, eax
jb 0x5d7660
mov dword [esp + 0x38c], ecx
jmp 0x5d8930
mov dword [esp + 0x470], ebx
mov esi, dword [esp + 0x2ac]
jmp 0x5d64d6
mov dword [esp + 0x3b4], edi
mov dword [esp + 0x470], ebx
mov byte [esp + 0x2ab], 0x67
mov eax, edx
imul eax, eax
and eax, 3
cmp eax, 2
sete cl
mov esi, edx
mov edx, dword [esp + 0x38c]
test edx, edx
je 0x5d774f
mov eax, 0xc
movzx ecx, cl
cmp esi, ecx
mov dword [esp + 0x384], esi
mov dword [esp + 0x30c], edx
jne 0x5d7808
xor esi, esi
cmp eax, 0xc
jne 0x5d5609
mov ecx, eax
and ecx, 1
xor ecx, eax
not ecx
test ecx, ecx
je 0x5d5609
mov edi, dword [esp + 0x30c]
xor esi, esi
jmp 0x5d77e9
mov dword [esp + 0x384], esi
mov dword [esp + 0x30c], edx
jmp 0x5d7808
mov eax, 3
sub eax, esi
xor eax, esi
setne al
movzx eax, al
add esi, eax
mov dword [esp], edi
call fcn.00411700
mov dword [esp + 0x24], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x10
mov dword [esp + 4], 0
mov dword [esp], 0
xor edx, edx
mov ecx, edi
call fcn.005e4eb0
mov dword [esp], edi
call fcn.0041d160
mov eax, esi
and eax, 1
xor eax, esi
cmp eax, 0xffffffff
setne al
movzx eax, al
cmp esi, eax
jb 0x5d7770
mov dword [esp + 0x30c], edi
mov ecx, dword [esp + 0x3e4]
mov eax, ecx
imul eax, eax
and eax, 3
cmp eax, 2
adc ecx, 0
mov eax, dword [esp + 0x314]
mov eax, dword [eax]
cmp ecx, eax
jb 0x5d78e2
mov dword [esp + 0x294], eax
mov eax, ecx
and eax, 1
inc eax
xor eax, ecx
mov dword [esp + 0x254], ecx
je 0x5cf6fb
mov edx, dword [0x80dd1c]
test edx, edx
je 0x5d7922
mov esi, 9
mov ecx, edx
imul ecx, ecx
and ecx, 3
cmp ecx, 3
mov eax, dword [esp + 0x294]
mov dword [esp + 0x29c], eax
mov edi, dword [esp + 0x4c0]
je 0x5d7922
cmp esi, 9
jne 0x5d78f5
mov dword [esp + 0x4c0], edi
mov eax, 3
sub eax, esi
xor eax, esi
je 0x5d7908
mov byte [esp + 0x23b], 0x6d
mov byte [esp + 0x1bb], 0x64
mov al, 0x43
mov dword [esp + 0x468], eax
mov ecx, dword [esp + 0x29c]
test ecx, ecx
sete al
imul ecx, ecx
and ecx, 3
cmp ecx, 2
sete cl
or cl, al
mov byte [esp + 0x155], cl
mov ecx, edx
mov dword [esp + 0x114], edx
jmp 0x5d7991
mov dword [esp + 0x294], eax
mov dword [esp + 0x254], ecx
jmp 0x5cf6fb
mov dword [esp + 0x114], edx
mov ecx, dword [esp + 0x4b8]
jmp 0x5d29ea
mov dword [esp + 0x114], edx
mov ecx, dword [esp + 0x4b8]
mov edi, dword [esp + 0x4c0]
jmp 0x5d29ea
xor esi, esi
jmp 0x5d7975
mov eax, esi
not eax
and eax, 1
add eax, esi
setne al
movzx eax, al
add esi, eax
mov dword [esp + 4], fcn.005bf5d0
mov dword [esp], 4
call fcn.00412170
mov eax, dword [esp + 0x4a0]
mov dword [esp], eax
call fcn.004936c0
mov eax, dword [esp + 0x4b0]
mov eax, dword [eax]
mov dword [esp], eax
call fcn.004936c0
mov eax, esi
imul eax, eax
and eax, 3
cmp eax, 2
sbb eax, eax
and eax, 1
cmp esi, eax
jb 0x5d7930
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov edx, 0xe
mov eax, 0x12
mov esi, dword [ecx + 0xc]
mov dword [esp + 0x474], esi
mov dword [esp + 0x2dc], 0
test byte [esp + 0x155], 1
mov dword [esp + 0x1e8], ecx
je 0x5d79fe
xor eax, eax
cmp edx, 0xe
jne 0x5d837c
mov ecx, edx
and ecx, 1
xor ecx, edx
not ecx
test ecx, ecx
mov esi, dword [esp + 0x490]
mov ebx, dword [esp + 0x3b8]
je 0x5d31b3
mov edx, dword [esp + 0x4b8]
mov edi, dword [esp + 0x4c0]
jmp 0x5d861e
cmp eax, 0xc
je 0x5d7d39
imul eax, eax
and eax, 3
cmp eax, 2
je 0x5d7d39
mov eax, dword [esp + 0x468]
movzx edx, al
cmp edx, 0xc
mov edi, dword [esp + 0x388]
je 0x5d838f
mov eax, dword [esp + 0x418]
movzx edx, al
cmp edx, 0x6f
je 0x5d83f2
mov eax, 6
mov ecx, 4
cmp edx, 0x70
mov dword [esp + 0x4c0], edi
je 0x5d97bf
cmp eax, 1
je 0x5d7cf5
mov edx, 0xd
mov ebx, dword [esp + 0x23c]
movzx ecx, bl
cmp ecx, 0x2c
je 0x5d7dac
mov esi, dword [esp + 0x290]
mov eax, dword [esi + 0xc]
mov dword [esp + 0x2ac], eax
mov ecx, dword [eax]
mov eax, dword [eax + 4]
xor eax, dword [esp + 0x244]
mov edx, ecx
xor edx, dword [esp + 0x248]
or edx, eax
mov edi, 0x1c
mov byte [esp + 0x267], 0x42
jne 0x5d83d4
mov eax, 0xf
mov edx, ecx
not edx
and edx, 1
add edx, ecx
mov dword [esp + 0x1c8], esi
je 0x5d83db
mov dword [esp + 0x4ac], esi
cmp ecx, 4
jne 0x5d7e9c
imul ecx, ecx
and ecx, 3
cmp ecx, 2
mov eax, dword [esp + 0x47c]
mov dword [esp + 0x494], eax
jb 0x5d0250
jmp 0x5d7e9c
mov eax, 0xf
mov ecx, dword [esp + 0x450]
movzx ecx, cl
cmp ecx, 9
jne 0x5d73a8
mov ecx, dword [esp + 0x47c]
mov dword [esp + 0x494], ecx
mov esi, dword [esp + 0x490]
mov ebx, dword [esp + 0x470]
xor ecx, ecx
cmp eax, 0xf
jne 0x5d7f26
mov edx, eax
not edx
and edx, 1
add edx, eax
je 0x5d7f26
mov al, 9
mov dword [esp + 0x450], eax
mov ecx, dword [esp + 0x48c]
test ecx, ecx
setne al
mov edx, dword [esp + 0x424]
mov dword [esp + 0x440], edx
mov dword [esp + 0x43c], ecx
mov edi, dword [esp + 0x41c]
mov ecx, dword [esp + 0x420]
mov dword [esp + 0x438], ecx
jmp 0x5d7606
mov dword [esp + 0x470], ebx
mov edx, dword [esp + 0x3d4]
jmp 0x5d7f66
mov ebx, 0xfb
add ebx, 0xffffff0b
mov dl, bl
inc dl
mov eax, 3
sub eax, ecx
xor eax, ecx
setne al
movzx eax, al
add ecx, eax
mov dword [esi], 0xa
test ecx, ecx
je 0x5d7f40
mov dword [esp + 0x3d4], edx
mov dword [esp + 0x490], esi
cmp ebx, 6
mov edx, dword [esp + 0x4b8]
mov edi, dword [esp + 0x4c0]
je 0x5d35bd
mov eax, 0xe
mov ecx, dword [esp + 0x3c4]
test ecx, ecx
mov dword [esp + 0x4b8], edx
mov dword [esp + 0x1ac], ecx
mov dword [esp + 0x4c0], edi
mov ecx, dword [esp + 0x3b0]
mov bl, cl
je 0x5d0afc
cmp eax, 0xe
je 0x5d09cc
xor eax, eax
test al, al
jne 0x5d09cc
mov byte [esp + 0x47c], bl
xor ecx, ecx
mov eax, 0xc5
add eax, 0xffffff43
mov edi, dword [esp + 0x300]
mov ebx, dword [esp + 0x334]
jmp 0x5d8025
mov dl, al
add dl, 0x2c
mov dword [esp + 0x468], edx
mov edx, ecx
imul edx, edx
and edx, 3
cmp edx, 2
adc ecx, 0
mov edx, dword [esp + 0x474]
mov ebx, dword [edx]
xor edi, edi
mov edx, ecx
or edx, 2
mov esi, ecx
xor esi, 2
add esi, edx
setne dl
movzx edx, dl
cmp ecx, edx
jb 0x5d8000
mov dword [esp + 0x334], ebx
mov dword [esp + 0x300], edi
mov esi, dword [esp + 0x494]
mov cl, byte [esp + 0x47c]
mov dword [esp + 0x3b0], ecx
mov ecx, 3
sub ecx, eax
xor ecx, eax
setne cl
movzx ecx, cl
cmp eax, ecx
je 0x5d0620
mov dword [esp + 0x494], esi
jmp 0x5d83b3
mov dword [esp + 0x300], ecx
cmp eax, 0xe
jne 0x5d8365
imul eax, eax
and eax, 3
cmp eax, 2
jae 0x5d8365
mov dword [esp + 0x334], edx
mov dword [esp + 0x388], edi
mov dword [esp + 0x340], esi
mov edi, 0xd
mov byte [esp + 0x156], 0x31
imul eax, dword [esp + 0x3e4], 0x470
mov ecx, dword [esp + 0x280]
mov esi, dword [ecx + eax + 4]
call fcn.0061b160
cmp esi, eax
jne 0x5d834d
mov edi, 0xe
movzx eax, byte [esp + 0x213]
cmp eax, 0x6c
je 0x5d8b8c
cmp eax, 0x6e
je 0x5cf8fb
cmp edi, 0xc
je 0x5d88b1
xor eax, eax
test al, al
je 0x5cf871
jmp 0x5d88b1
mov dword [esp + 0x334], edx
mov dword [esp + 0x388], edi
mov dword [esp + 0x340], esi
jmp 0x5d83b3
mov esi, dword [esp + 0x490]
mov ebx, dword [esp + 0x3b8]
jmp 0x5d31b3
mov edx, dword [esp + 0x4b8]
mov edi, dword [esp + 0x4c0]
jmp 0x5d849d
mov dword [esp + 0x1c8], esi
cmp edi, 0xd
mov eax, dword [esp + 0x3d0]
jne 0x5d5f7e
mov al, 0x6f
mov dword [esp + 0x418], eax
mov eax, dword [esp + 0x15c]
mov eax, dword [eax]
mov ecx, dword [esp + 0x4c4]
mov dword [ecx], eax
mov dword [ecx + 4], 0
mov eax, dword [esp + 0x4b4]
mov dword [eax], 0xffffff
mov eax, dword [esp + 0x478]
mov dword [eax], 1
mov dword [esp + 0x458], 0
mov dword [esp + 0x28c], edi
mov dword [esp + 0x288], 0
jmp 0x5d7c48
mov byte [esp + 0x1bb], 0x64
mov ecx, dword [esp + 0x1cc]
mov eax, ecx
imul eax, eax
and eax, 3
cmp eax, 2
mov eax, ecx
adc eax, 0
mov dword [esp + 0x300], eax
cmp eax, dword [esp + 0x29c]
mov dword [esp + 0x2dc], eax
jae 0x5d861e
mov dword [esp + 0x464], edi
mov edi, edx
mov ebx, 0xc
mov esi, dword [esp + 0x300]
mov edx, dword [esp + 0x334]
mov eax, dword [esp + 0x4a0]
cmp edx, dword [eax + esi*4]
jne 0x5d850a
mov eax, 0x1c
mov ecx, edx
or ecx, 2
xor edx, 2
add edx, ecx
mov dword [esp + 0x2dc], esi
mov dword [esp + 0x1cc], esi
mov edx, edi
mov edi, dword [esp + 0x464]
je 0x5d8521
cmp eax, 0xd
je 0x5d5edd
imul eax, eax
and eax, 3
cmp eax, 3
jne 0x5d861e
jmp 0x5d5edd
mov dword [esp + 0x2dc], esi
mov dword [esp + 0x1cc], esi
mov edx, edi
mov edi, dword [esp + 0x464]
cmp ebx, 0xc
jne 0x5d85e0
mov eax, 3
sub eax, ebx
xor eax, ebx
je 0x5d85e0
mov eax, 2
mov cl, byte [esp + 0x1bb]
movzx ecx, cl
cmp ecx, 0x64
je 0x5d8463
mov dword [esp + 0x4b8], edx
mov dword [esp + 0x4c0], edi
mov esi, dword [esp + 0x320]
mov ecx, eax
or ecx, 2
mov edx, eax
xor edx, 2
add edx, ecx
setne cl
movzx ecx, cl
cmp eax, ecx
je 0x5d1860
mov edx, dword [esp + 0x1cc]
mov eax, edx
and eax, 1
xor eax, edx
cmp eax, 0xffffffff
setne al
movzx ecx, al
add ecx, edx
cmp ecx, dword [esp + 0x29c]
jae 0x5d85f3
mov dword [esp + 0x320], esi
mov byte [esp + 0x1bb], 6
mov eax, ecx
and eax, 1
xor eax, ecx
not eax
test eax, eax
mov edx, dword [esp + 0x4b8]
mov edi, dword [esp + 0x4c0]
mov dword [esp + 0x2dc], ecx
mov dword [esp + 0x300], ecx
jne 0x5d849d
jmp 0x5d861e
mov dword [esp + 0x4b8], edx
mov edx, dword [esp + 0x3c8]
jmp 0x5d0e4f
mov dword [esp + 0x320], esi
mov byte [esp + 0x1bb], 6
mov edx, dword [esp + 0x4b8]
mov edi, dword [esp + 0x4c0]
mov dword [esp + 0x2dc], ecx
mov dword [esp + 0x300], ecx
movzx eax, byte [esp + 0x23b]
cmp eax, 0x37
je 0x5d86b1
mov esi, edx
cmp eax, 0x6d
mov edx, dword [esp + 0x2dc]
jne 0x5d86eb
mov byte [esp + 0x23b], 0x37
mov eax, dword [esp + 0x1e8]
mov eax, dword [eax + 4]
mov dword [esp + 0x2a4], eax
cmp edx, dword [esp + 0x29c]
jne 0x5d8757
cmp eax, 6
mov edx, dword [esp + 0x4b8]
mov edi, dword [esp + 0x4c0]
je 0x5d8721
mov ecx, eax
and ecx, 1
inc ecx
xor ecx, eax
jne 0x5cf7ad
jmp 0x5d8721
mov byte [esp + 0x23b], 0x6d
mov eax, dword [esp + 0x1e8]
mov eax, dword [eax + 4]
mov dword [esp + 0x2a4], eax
mov eax, dword [esp + 0x2dc]
cmp eax, dword [esp + 0x29c]
je 0x5d8721
mov eax, 0x1b
mov cl, 1
test cl, cl
jne 0x5d8980
mov eax, 0xa
mov byte [esp + 0x23b], 0x21
mov ecx, dword [esp + 0x1e8]
mov ecx, dword [ecx + 4]
mov dword [esp + 0x2a4], ecx
cmp edx, dword [esp + 0x29c]
jne 0x5d8767
mov esi, dword [esp + 0x474]
lea eax, [esi + 0xc]
mov dword [esp + 4], eax
mov dword [esp], 0x80dd1c
mov ebx, edi
mov edi, edx
call fcn.007c5260
mov dword [esp], esi
call fcn.004936c0
mov dword [esp + 0x4b8], edi
mov dword [esp + 0x4c0], ebx
jmp 0x5d87ac
cmp eax, 9
jne 0x5d89d3
mov ecx, eax
not ecx
and ecx, 1
add ecx, eax
je 0x5d89d3
mov dword [esp + 0x4b8], edx
mov dword [esp + 0x464], edi
xor ecx, ecx
mov eax, 0x64
add eax, 0xffffffa0
mov edi, dword [esp + 0x360]
mov ebx, dword [esp + 0x340]
jmp 0x5d2d10
mov eax, 0x19
mov edx, dword [esp + 0x2a4]
test edx, edx
je 0x5d87cf
mov ecx, edx
imul ecx, ecx
and ecx, 3
cmp ecx, 3
mov ecx, edx
jne 0x5d7991
cmp eax, 9
je 0x5d87e3
imul eax, eax
and eax, 3
cmp eax, 2
jne 0x5d7922
mov byte [esp + 0x20b], 0x54
cmp dword [esp + 0x330], 0xffff
jne 0x5d88b1
mov esi, 0x1a
mov eax, dword [esp + 0x3cc]
movzx eax, al
cmp eax, 0x4c
je 0x5d88e9
mov ecx, 7
cmp eax, 0x65
je 0x5d8a90
cmp eax, 0x7f
jne 0x5d8afa
mov ecx, 8
mov eax, dword [esp + 0x488]
mov edx, dword [esp + 0x330]
mov dword [eax], edx
mov edi, dword [esp + 0x4c0]
mov eax, dword [esp + 0x484]
mov dword [esp + 0x444], eax
cmp ecx, 7
je 0x5cef2d
jmp 0x5d30cf
mov ecx, dword [esp + 0x38c]
mov edx, dword [esp + 0x384]
mov edi, dword [esp + 0x3b4]
mov eax, 0xffffffff
cmp esi, 0x10
mov ebx, dword [esp + 0x470]
jne 0x5d8b31
mov dword [esp + 0x38c], ecx
mov ecx, esi
not ecx
and ecx, 1
add ecx, esi
mov ecx, dword [esp + 0x3cc]
je 0x5d37c3
mov eax, dword [esp + 0x330]
movzx ecx, byte [esp + 0x2ab]
cmp ecx, 0x33
je 0x5d89e6
mov dword [esp + 0x330], eax
mov eax, 0xc
cmp ecx, 0x67
jne 0x5d76d6
mov dword [esp + 0x3b4], edi
mov dword [esp + 0x470], ebx
mov dword [esp + 0x384], edx
mov edx, dword [esp + 0x4b8]
mov edi, dword [esp + 0x4c0]
cmp eax, 0xc
jne 0x5d89d3
mov eax, 0x19
mov byte [esp + 0x2ab], 0x33
mov ecx, dword [esp + 0x38c]
mov esi, edx
test ecx, ecx
je 0x5d8b60
mov edx, ecx
imul ecx, ecx
and ecx, 3
cmp ecx, 1
ja 0x5d8b69
mov ecx, 0xf
cmp dword [esp + 0x384], 0
mov dword [esp + 0x30c], edx
je 0x5d8a9e
jmp 0x5d8b70
mov dword [esp + 0x4b8], edx
mov dword [esp + 0x4c0], edi
jmp 0x5d87ac
mov dword [esp + 0x330], eax
mov esi, dword [esp + 0x380]
mov ecx, 7
cmp ecx, 5
je 0x5d8a61
mov eax, ecx
and eax, 1
inc eax
xor eax, ecx
je 0x5d8a61
mov dword [esp + 0x3b4], edi
mov eax, 0xe
mov byte [esp + 0x2ab], 0x4f
mov ecx, edx
and ecx, 1
inc ecx
xor ecx, edx
sete cl
mov edi, edx
mov edx, dword [esp + 0x38c]
test edx, edx
je 0x5d8b44
mov dword [esp + 0x470], ebx
mov dword [esp + 0x380], esi
movzx ecx, cl
cmp edi, ecx
mov dword [esp + 0x384], edi
mov edi, edx
jne 0x5d30a3
xor esi, esi
jmp 0x5d77e9
mov dword [esp + 0x380], esi
mov dword [esp + 0x470], ebx
mov dword [esp + 0x384], edx
mov edx, dword [esp + 0x4b8]
mov esi, dword [esp + 0x3a8]
mov ebx, dword [esp + 0x434]
jmp 0x5d46f9
mov esi, dword [esp + 0x4b8]
mov edi, dword [esp + 0x4c0]
mov edx, edi
cmp ecx, 7
mov edi, dword [esp + 0x30c]
jne 0x5d8ae5
mov dword [esp + 0x38c], ecx
mov ecx, dword [esp + 0x3cc]
jmp 0x5d37c3
mov dword [esp + 0x470], ebx
mov dword [esp + 0x384], edi
mov dword [esp + 0x380], esi
mov edi, edx
jmp 0x5d30a3
mov dword [esp + 0x30c], ecx
jmp 0x5d8b70
mov dword [esp + 0x30c], edx
cmp eax, 0x10
je 0x5d6c2e
mov dword [esp + 0x4b8], esi
mov dword [esp + 0x4c0], edi
jmp 0x5d7808
mov eax, dword [esp + 0x494]
cmp edi, 0xc
jne 0x5d8bb2
cmp ebx, 4
jne 0x5cfb15
imul ebx, ebx
and ebx, 3
cmp ebx, 2
jae 0x5cfb15
mov byte [esp + 0x35f], 0xb
call fcn.0042d7f0
mov edi, eax
mov eax, dword [esp + 0x3ec]
mov dword [edi + 4], eax
mov eax, dword [esp + 0x3f0]
mov dword [edi], eax
mov dword [edi + 8], 0xfff4
mov dword [edi + 0xc], 2
mov eax, dword [esp + 0x4bc]
mov eax, dword [eax]
imul ecx, dword [esp + 0x350], 0x39
movzx eax, word [eax + ecx + 6]
mov dword [edi + 0x10], eax
mov dword [esp], edi
call fcn.004120f0
mov dword [esp], edi
call fcn.00434c70
mov eax, dword [esp + 0x47c]
mov dword [esp + 0x494], eax
jmp 0x5d561c
mov eax, dword [esp + 0x494]
cmp eax, 0xe
jne 0x5d8e68
imul eax, eax
and eax, 3
cmp eax, 2
mov eax, dword [esp + 0x47c]
mov dword [esp + 0x494], eax
jb 0x5d065c
mov edi, 3
mov ecx, dword [esp + 0x4ac]
mov eax, dword [ecx]
mov ecx, dword [ecx + 4]
mov esi, dword [esp + 0x60]
mov dword [esp + 0xc], esi
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
mov dword [esp], str.Sentinel_HL__llu_failed_to_execute_READ_APPDATA_command__error_0x_x__n
call fcn.004414c0
mov dword [esp + 0x1f0], 0
mov eax, dword [esp + 0x47c]
mov dword [esp + 0x494], eax
mov edx, dword [esp + 0x4b8]
mov ebx, dword [esp + 0x3a8]
mov dword [esp + 0x2d0], esi
cmp edi, 3
jne 0x5d8ee7
imul edi, edi
and edi, 3
cmp edi, 2
mov dword [esp + 0x4b8], edx
mov dword [esp + 0x3a8], ebx
jb 0x5d045c
jmp 0x5d8ef5
mov dword [esp + 0x4b8], edx
mov dword [esp + 0x3a8], ebx
movzx eax, byte [esp + 0x227]
cmp eax, 0x2c
jne 0x5d8fc7
mov edi, 0x11
mov ebx, 9
mov byte [esp + 0x227], 0x2c
call fcn.004233f0
mov dword [esp + 0x4a8], eax
mov edx, dword [esp + 0x4bc]
mov esi, dword [edx]
imul ecx, dword [esp + 0x304], 0x39
mov esi, dword [esi + ecx]
mov dword [eax + 0xc], esi
add ecx, dword [edx]
mov dword [esp + 4], ecx
mov dword [esp], eax
mov dword [esp + 0x24], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x11
xor edx, edx
mov ecx, dword [esp + 0x4c0]
call fcn.005e4eb0
mov ecx, eax
imul ecx, ecx
and ecx, 3
cmp ecx, 2
sete cl
movzx ecx, cl
cmp eax, ecx
jne 0x5d90e6
cmp edi, 0xf
mov edi, dword [esp + 0x4c0]
mov edx, dword [esp + 0x4b8]
je 0x5d43c6
jmp 0x5d9070
mov ebx, 0xa
mov byte [esp + 0x227], 0x21
call fcn.004233f0
mov dword [esp + 0x4a8], eax
mov edx, dword [esp + 0x4bc]
mov esi, dword [edx]
imul ecx, dword [esp + 0x304], 0x39
mov esi, dword [esi + ecx]
mov dword [eax + 0xc], esi
add ecx, dword [edx]
mov dword [esp + 4], ecx
mov dword [esp], eax
mov dword [esp + 0x24], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x11
xor edx, edx
mov edi, dword [esp + 0x4c0]
mov ecx, edi
call fcn.005e4eb0
mov ecx, eax
imul ecx, ecx
and ecx, 3
cmp ecx, 3
sete cl
movzx ecx, cl
cmp eax, ecx
mov edx, dword [esp + 0x494]
jne 0x5d3484
mov cl, byte [esp + 0x177]
movsx eax, cl
cmp eax, 0x37
jg 0x5d9109
mov eax, 0x18
movzx ecx, cl
cmp ecx, 0xe
je 0x5d91a2
cmp ecx, 0x1e
jne 0x5d4841
mov ebx, 1
mov byte [esp + 0x177], 0xf
mov ecx, dword [esp + 0x4a8]
mov eax, dword [ecx]
mov dword [esp + 0x250], eax
test eax, eax
mov dword [esp + 0x378], ecx
je 0x5d486e
mov eax, ebx
imul eax, eax
and eax, 3
cmp eax, 2
sbb eax, eax
and eax, 1
cmp ebx, eax
jne 0x5ceed1
cmp ebx, 8
mov edi, dword [esp + 0x4c0]
mov eax, dword [esp + 0x494]
mov dword [esp + 0x47c], eax
je 0x5cefdd
jmp 0x5d4c3d
movzx eax, cl
cmp eax, 0x38
je 0x5d967f
cmp eax, 0x44
jne 0x5d4841
mov dword [esp + 0x47c], 0x17
mov byte [esp + 0x177], 0xe
mov edx, dword [esp + 0x4a8]
mov ecx, dword [edx]
mov dword [esp + 0x250], ecx
mov eax, ecx
imul eax, eax
and eax, 3
cmp eax, 2
sete al
movzx eax, al
cmp ecx, eax
mov dword [esp + 0x4c0], edi
mov dword [esp + 0x378], edx
je 0x5d486e
mov eax, dword [esp + 0x47c]
cmp eax, 8
je 0x5d9196
imul eax, eax
and eax, 3
cmp eax, 3
mov edi, dword [esp + 0x4c0]
mov edx, dword [esp + 0x4b8]
jne 0x5d96b7
jmp 0x5d6892
mov edx, dword [esp + 0x4b8]
jmp 0x5d688b
mov edx, dword [esp + 0x320]
cmp eax, 0xa
jne 0x5d9629
mov ecx, 3
sub ecx, eax
xor ecx, eax
je 0x5d9629
mov dword [esp + 0x320], edx
mov byte [esp + 0x175], 0x5b
mov byte [esp + 0x4e7], 0
mov dword [esp + 0x4e0], 1
lea eax, [esp + 0x4e0]
mov dword [esp + 0x20], eax
lea eax, [esp + 0x4e7]
mov dword [esp + 0xc], eax
mov dword [esp + 0x24], 0
mov dword [esp + 0x1c], 1
mov dword [esp + 0x18], 0x19ffff01
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0x14
mov dword [esp + 4], 0
mov dword [esp], 0
xor edx, edx
mov ecx, edi
call fcn.005e4eb0
mov dword [esp + 0x2f8], eax
mov ecx, eax
imul ecx, ecx
and ecx, 3
cmp ecx, 3
sete cl
movzx ecx, cl
cmp eax, ecx
mov dword [esp + 0x4c0], edi
mov eax, dword [esp + 0x494]
mov dword [esp + 0x47c], eax
jne 0x5d92d3
movzx eax, byte [esp + 0xfb]
cmp eax, 0x27
je 0x5d973d
mov ecx, 0x10
cmp eax, 0x58
jne 0x5d97aa
mov byte [esp + 0xfb], 0x1e
movzx eax, byte [esp + 0x4e7]
cmp eax, 3
mov ecx, dword [esp + 0x47c]
jne 0x5d981b
imul eax, eax
and eax, 3
cmp eax, 2
mov dword [esp + 0x494], ecx
mov edi, dword [esp + 0x4c0]
jb 0x5d3d1f
jmp 0x5d380f
mov ebx, dword [esp + 0x274]
movzx eax, bl
cmp eax, 0x26
jne 0x5d93fc
mov dword [esp + 0x3ac], 0
mov al, 0x6b
mov dword [esp + 0x274], eax
mov dword [esp + 0x4c0], edi
mov eax, dword [esp + 0x2f8]
mov dword [esp + 0x3d0], eax
mov eax, 0xa
mov cl, byte [esp + 0x34f]
movzx ecx, cl
cmp ecx, 0x3c
je 0x5d940c
mov eax, 0xb
cmp ecx, 0x4a
jne 0x5d7422
mov edx, dword [esp + 0x4b8]
mov ecx, dword [esp + 0x344]
cmp eax, 7
mov ebx, dword [esp + 0x434]
je 0x5d94d2
mov dword [esp + 0x344], ecx
xor eax, eax
test al, al
jne 0x5d94e2
mov esi, edx
mov byte [esp + 0x34f], 0x3c
mov eax, dword [esp + 0x1d0]
mov dword [esp + 4], eax
mov dword [esp], 0x80dd14
call fcn.007c5260
mov eax, dword [esp + 0x4bc]
mov ecx, dword [eax]
test ecx, ecx
jne 0x5d9655
mov edi, 0xa
mov eax, 3
sub eax, ecx
xor eax, ecx
mov dword [esp + 0x1d8], ecx
mov eax, dword [esp + 0x3ac]
mov dword [esp + 0x22c], eax
mov eax, dword [esp + 0x3d0]
mov dword [esp + 0x228], eax
mov ecx, esi
mov dword [esp + 0x4b8], ecx
je 0x5d758f
cmp edi, 0xa
je 0x5d75a7
xor eax, eax
test al, al
mov eax, dword [esp + 0x494]
mov dword [esp + 0x47c], eax
je 0x5cfb15
jmp 0x5d75a7
xor eax, eax
mov cl, 1
mov esi, dword [esp + 0x2f8]
jmp 0x5d4399
mov ebx, dword [esp + 0x434]
mov edi, dword [esp + 0x3b4]
cmp eax, 8
jne 0x5d95ca
movzx eax, byte [esp + 0x243]
cmp eax, 0x29
mov esi, dword [esp + 0x360]
mov eax, dword [esp + 0x20c]
jne 0x5d20cd
mov dword [esp + 0x3b4], edi
mov edi, 0xc
mov byte [esp + 0x243], 0x29
imul eax, eax, 0x39
mov dword [esp], eax
call fcn.004939e0
mov ecx, dword [esp + 0x4bc]
mov dword [ecx], eax
cmp dword [ebx], 0
je 0x5d94c6
xor ecx, ecx
test cl, cl
jne 0x5d94c6
mov ecx, dword [esp + 0x414]
movzx edx, cl
xor ecx, ecx
cmp edx, 0x26
je 0x5d22e0
jmp 0x5d94ad
mov edx, 0xb1
add dl, 0x98
mov dword [esp + 0x414], edx
mov edx, ecx
imul edx, edx
and edx, 3
cmp edx, 2
adc ecx, 0
mov edx, ecx
and edx, 1
xor edx, ecx
cmp edx, 0xffffffff
setne dl
movzx edx, dl
cmp ecx, edx
jb 0x5d9490
jmp 0x5d22f4
mov dword [esp + 0x434], ebx
jmp 0x5d8b8c
mov dword [esp + 0x344], ecx
mov dword [esp + 0x4b8], edx
jmp 0x5d94e9
mov dword [esp + 0x4b8], edx
mov eax, dword [esp + 0x46c]
movzx eax, al
cmp eax, 2
je 0x5d957f
xor esi, esi
cmp eax, 0x37
je 0x5d9562
mov dword [esp + 0x434], ebx
mov ebx, 0x75
add ebx, 0xffffff91
mov edi, dword [esp + 0x388]
jmp 0x5d4d9e
mov ecx, 0xdc
add cl, 0x26
mov dword [esp + 0x46c], ecx
cmp eax, 0xffffffff
setne al
movzx eax, al
add esi, eax
mov ecx, dword [esp + 0x4c4]
mov eax, dword [ecx]
mov ecx, dword [ecx + 4]
mov dword [esp + 4], ecx
mov dword [esp], eax
mov dword [esp + 0xc], 0x5cd000
mov dword [esp + 8], 0x5cd020
call fcn.00412620
mov eax, esi
and eax, 1
xor eax, esi
cmp eax, 0xffffffff
setne cl
movzx ecx, cl
cmp esi, ecx
jb 0x5d9520
mov dword [esp + 0x434], ebx
jmp 0x5d95b7
mov dword [esp + 0x434], ebx
mov al, 0x37
mov dword [esp + 0x46c], eax
mov ecx, dword [esp + 0x4c4]
mov eax, dword [ecx]
mov ecx, dword [ecx + 4]
mov dword [esp + 4], ecx
mov dword [esp], eax
mov dword [esp + 0xc], 0x5cd000
mov dword [esp + 8], 0x5cd020
call fcn.00412620
mov edx, dword [esp + 0x4b8]
mov edi, dword [esp + 0x4c0]
jmp 0x5d3b86
mov dword [esp + 0x434], ebx
mov byte [esp + 0x34f], 0x4a
mov eax, dword [esp + 0x1d0]
mov dword [esp + 4], eax
mov dword [esp], 0x80dd14
call fcn.007c5260
mov eax, dword [esp + 0x4bc]
mov ecx, dword [eax]
test ecx, ecx
jne 0x5d755b
mov dword [esp + 0x1d8], ecx
mov eax, dword [esp + 0x3ac]
mov dword [esp + 0x22c], eax
mov eax, dword [esp + 0x3d0]
mov dword [esp + 0x228], eax
jmp 0x5d75a7
mov dword [esp + 0x320], edx
mov byte [esp + 0x177], 0x44
mov edx, dword [esp + 0x4a8]
mov ecx, dword [edx]
mov dword [esp + 0x250], ecx
mov eax, ecx
imul eax, eax
and eax, 3
cmp eax, 3
jmp 0x5d96a2
mov dword [esp + 0x1d8], ecx
mov eax, dword [esp + 0x3ac]
mov dword [esp + 0x22c], eax
mov eax, dword [esp + 0x3d0]
mov dword [esp + 0x228], eax
mov ecx, esi
jmp 0x5d758f
mov byte [esp + 0x177], 0x38
mov edx, dword [esp + 0x4a8]
mov ecx, dword [edx]
mov dword [esp + 0x250], ecx
mov eax, ecx
imul eax, eax
and eax, 3
cmp eax, 2
sete al
movzx eax, al
cmp ecx, eax
mov dword [esp + 0x378], edx
je 0x5d486e
movzx eax, byte [esp + 0x1d7]
cmp eax, 0x14
je 0x5d4aae
mov eax, 0x13
mov byte [esp + 0x1d7], 0x14
mov edx, dword [esp + 0x250]
cmp edx, 0xfff2
jne 0x5d9705
mov ecx, 3
sub ecx, edx
xor ecx, edx
je 0x5d9705
mov eax, dword [esp + 0x36c]
mov byte [eax], 4
mov dword [esp + 0x4c0], edi
jmp 0x5d4945
mov dword [esp + 0x464], edi
cmp eax, 4
mov edi, dword [esp + 0x3c8]
je 0x5d0f05
mov ecx, eax
and ecx, 1
inc ecx
xor ecx, eax
mov eax, dword [esp + 0x464]
mov dword [esp + 0x4c0], eax
jne 0x5d494c
jmp 0x5d0f05
mov byte [esp + 0xfb], 0x58
movzx eax, byte [esp + 0x4e7]
cmp eax, 3
je 0x5d982e
mov edx, 0x11
xor ecx, ecx
test cl, cl
mov esi, dword [esp + 0x47c]
mov dword [esp + 0x494], esi
mov edi, dword [esp + 0x4c0]
jne 0x5d3d1f
cmp edx, 6
jne 0x5d97fc
mov dword [esp + 0x47c], esi
xor esi, esi
mov ebx, 0xad
add ebx, 0xffffff55
mov edi, dword [esp + 0x44]
mov ecx, dword [esp + 0x1f0]
mov edx, dword [esp + 0x2d0]
jmp 0x5d0345
mov eax, dword [esp + 0x47c]
mov dword [esp + 0x494], eax
mov edi, dword [esp + 0x4c0]
mov dword [esp + 0x464], edi
xor eax, eax
cmp ecx, 4
mov esi, dword [esp + 0x28c]
mov edi, dword [esp + 0x288]
mov ebx, dword [esp + 0x418]
je 0x5d980f
mov edx, ecx
and edx, 1
inc edx
xor edx, ecx
jne 0x5d3ceb
mov edx, dword [esp + 0x15c]
jmp 0x5d1079
mov dword [esp + 0x494], esi
mov edi, dword [esp + 0x4c0]
jmp 0x5d380f
mov edx, dword [esp + 0x15c]
jmp 0x5d1079
mov dword [esp + 0x494], ecx
mov edi, dword [esp + 0x4c0]
jmp 0x5d380f
mov eax, dword [esp + 0x47c]
mov dword [esp + 0x494], eax
mov edi, dword [esp + 0x4c0]
jmp 0x5d3d1f