Function at 0x408020
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x118
mov eax, dword [0x4b8bd0]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0x10]
push ebx
push esi
push edi
mov edi, dword [ebp + 0x1c]
xor ebx, ebx
mov dword [ebp - 0x100], eax
mov dword [ebp - 0xbc], edi
cmp eax, ebx
je 0x408051
mov dword [eax + 0x20], ebx
mov ecx, dword [ebp + 8]
cmp ecx, ebx
je 0x409b08
cmp eax, ebx
je 0x409b08
cmp edi, ebx
je 0x409b1b
mov eax, dword [ebp - 0xbc]
xor edi, edi
xor esi, esi
push 1
mov dword [0x4ba558], ecx
mov dword [ebp - 0x110], edi
mov dword [ebp - 0x114], esi
mov byte [eax], bl
call fcn.00405430
mov eax, dword [0x4ba55c]
add esp, 4
cmp eax, ebx
je 0x409b1b
cmp eax, 0x15
je 0x4080d2
cmp eax, 0x16
je 0x4080d2
cmp eax, 0x17
je 0x4080d2
cmp eax, 0x18
jne 0x40810d
cmp edi, ebx
jne 0x4080f3
mov edi, eax
push 1
mov dword [ebp - 0x110], edi
call fcn.00405430
mov eax, dword [0x4ba55c]
add esp, 4
jmp 0x4080a1
cmp esi, ebx
jne 0x409aa4
mov esi, eax
push 1
mov dword [ebp - 0x114], esi
call fcn.00405430
mov eax, dword [0x4ba55c]
add esp, 4
jmp 0x4080a1
mov edi, dword [ebp - 0xbc]
mov ecx, 5
mov esi, str.Duplicated_LOCK_prefix
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
jmp 0x409ae1
cmp eax, 0x19
jne 0x409a8e
cmp dword [0x4ba660], 0x10
jg 0x409a8e
mov ecx, dword [0x4ba558]
push 0x4ba560
mov dword [ebp - 0x118], ecx
call fcn.00478a20
add esp, 4
cmp esi, 0x15
jne 0x408159
push 0x4ba560
lea edx, [ebp - 0x44]
push str.REP__s
push edx
call fcn.0044fcaa
add esp, 0xc
jmp 0x4081a4
cmp esi, 0x16
jne 0x408176
push 0x4ba560
lea eax, [ebp - 0x44]
push str.REPE__s
push eax
call fcn.0044fcaa
add esp, 0xc
jmp 0x4081a4
cmp esi, 0x17
jne 0x408193
push 0x4ba560
lea ecx, [ebp - 0x44]
push str.REPNE__s
push ecx
call fcn.0044fcaa
add esp, 0xc
jmp 0x4081a4
xor eax, eax
mov cl, byte [eax + 0x4ba560]
mov byte [ebp + eax - 0x44], cl
inc eax
test cl, cl
jne 0x408195
push ebx
call fcn.00405430
or eax, 0xffffffff
add esp, 4
lea ecx, [ebp - 0xb0]
mov dword [ebp - 0xb0], ebx
mov dword [ebp - 0xac], ebx
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0xa4], ebx
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0x9c], ebx
mov dword [ebp - 0x98], ebx
mov dword [ebp - 0x94], eax
mov dword [ebp - 0x90], ebx
mov dword [ebp - 0x8c], ebx
mov dword [ebp - 0x88], ebx
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x80], ebx
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0x78], ebx
mov dword [ebp - 0x74], ebx
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], ebx
mov dword [ebp - 0x68], ebx
mov dword [ebp - 0x64], ebx
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], ebx
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], ebx
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], ebx
call fcn.00407310
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0xc0], eax
cmp eax, ebx
je 0x40824b
or eax, 0x80
mov dword [ebp - 0xc0], eax
mov eax, dword [0x4ba55c]
mov esi, 0x2c
cmp eax, 0x40
jne 0x40829e
cmp dword [0x4ba660], esi
jne 0x4082c5
push ebx
call fcn.00405430
add esp, 4
lea ecx, [ebp - 0x8c]
call fcn.00407310
mov eax, dword [0x4ba55c]
cmp eax, 0x40
jne 0x40829e
cmp dword [0x4ba660], esi
jne 0x4082c5
push ebx
call fcn.00405430
add esp, 4
lea ecx, [ebp - 0x68]
call fcn.00407310
mov eax, dword [0x4ba55c]
cmp eax, 0xff
jne 0x4082c1
mov eax, dword [0x4ba54c]
mov edx, dword [ebp - 0xbc]
sub edx, eax
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x4082b2
jmp 0x409ae1
cmp eax, ebx
je 0x4082de
mov edi, dword [ebp - 0xbc]
mov ecx, 6
mov esi, str.Extra_input_after_operand
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
jmp 0x409ae1
mov dword [ebp - 0x108], ebx
mov ebx, dword [ebp - 0xb4]
xor esi, esi
lea eax, [ebp - 0x44]
nop
mov dword [ebp - 0xdc], esi
mov dword [ebp - 0xd0], 3
mov dword [ebp - 0xd8], esi
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x408310
sub eax, edx
mov dword [ebp - 0xec], eax
mov dword [ebp - 0xc4], 0x48cfa0
cmp dword [0x48cfa0], esi
je 0x409707
mov edx, dword [ebp - 0xc4]
mov edx, dword [edx + 0x10]
mov al, byte [edx]
cmp al, 0x26
jne 0x408407
mov ecx, 1
mov dword [ebp - 0xb8], 2
mov dword [ebp - 0xf8], 4
mov al, byte [edx + ecx]
xor esi, esi
test al, al
je 0x4083bf
mov edi, dword [0x4ba544]
cmp al, 0x3a
je 0x4083bf
cmp al, 0x2a
jne 0x4083af
mov al, byte [ebp + esi - 0x44]
cmp al, 0x57
jne 0x40838c
mov dword [ebp - 0xb8], 2
jmp 0x4083b5
cmp al, 0x44
jne 0x40839c
mov dword [ebp - 0xb8], 4
jmp 0x4083b5
xor eax, eax
test edi, edi
setne al
lea eax, [eax + eax + 2]
mov dword [ebp - 0xb8], eax
jmp 0x4083b6
cmp al, byte [ebp + esi - 0x44]
jne 0x4083bf
inc esi
mov al, byte [edx + ecx + 1]
inc ecx
test al, al
jne 0x408370
cmp byte [ebp + esi - 0x44], 0
jne 0x4083d9
mov al, byte [edx + ecx]
test al, al
je 0x4084c7
cmp al, 0x3a
je 0x4084c7
mov al, byte [edx + ecx]
test al, al
je 0x4083ed
cmp al, 0x3a
je 0x4083ed
mov al, byte [edx + ecx + 1]
inc ecx
test al, al
jne 0x4083e0
cmp byte [edx + ecx], 0x3a
jne 0x408d54
inc ecx
mov dword [ebp - 0xb8], 4
jmp 0x408361
cmp al, 0x24
jne 0x4084da
mov ecx, 1
mov dword [ebp - 0xb8], 0
mov dword [ebp - 0xf8], 2
mov al, byte [edx + ecx]
xor esi, esi
test al, al
je 0x408486
mov edi, dword [0x4ba544]
cmp al, 0x3a
je 0x408486
cmp al, 0x2a
jne 0x408476
mov al, byte [ebp + esi - 0x44]
cmp al, 0x57
jne 0x408453
mov dword [ebp - 0xf8], 2
jmp 0x40847c
cmp al, 0x44
jne 0x408463
mov dword [ebp - 0xf8], 4
jmp 0x40847c
xor eax, eax
test edi, edi
setne al
lea eax, [eax + eax + 2]
mov dword [ebp - 0xf8], eax
jmp 0x40847d
cmp al, byte [ebp + esi - 0x44]
jne 0x408486
inc esi
mov al, byte [edx + ecx + 1]
inc ecx
test al, al
jne 0x408437
cmp byte [ebp + esi - 0x44], 0
jne 0x408498
mov al, byte [edx + ecx]
test al, al
je 0x4084c7
cmp al, 0x3a
je 0x4084c7
mov al, byte [edx + ecx]
test al, al
je 0x4084ad
nop
cmp al, 0x3a
je 0x4084ad
mov al, byte [edx + ecx + 1]
inc ecx
test al, al
jne 0x4084a0
cmp byte [edx + ecx], 0x3a
jne 0x408d54
inc ecx
mov dword [ebp - 0xf8], 4
jmp 0x408428
test esi, esi
je 0x408d54
mov ecx, dword [ebp - 0xc4]
jmp 0x40854e
xor esi, esi
xor edi, edi
mov dword [ebp - 0xb8], esi
mov dword [ebp - 0xf8], 4
mov edi, edi
mov al, byte [edx + esi]
cmp al, 0x2c
je 0x408504
test al, al
je 0x408504
mov al, byte [edx + esi + 1]
inc esi
cmp al, 0x2c
jne 0x4084f7
mov ecx, esi
sub ecx, edi
cmp ecx, dword [ebp - 0xec]
jne 0x40852a
mov eax, dword [ebp - 0xec]
push eax
add edx, edi
push edx
lea ecx, [ebp - 0x44]
push ecx
call fcn.00476b24
add esp, 0xc
test eax, eax
je 0x408540
mov ecx, dword [ebp - 0xc4]
mov edx, dword [ecx + 0x10]
cmp byte [edx + esi], 0
lea edi, [esi + 1]
je 0x408546
mov esi, edi
jmp 0x4084f0
mov ecx, dword [ebp - 0xc4]
cmp edi, esi
jg 0x408d54
mov dl, byte [ecx + 0xa]
mov esi, 1
add dword [ebp - 0xdc], esi
mov byte [ebp - 0xc5], dl
test dl, dl
je 0x4085d6
cmp dl, 0x80
jae 0x4085d6
mov al, byte [ecx + 0xb]
test al, al
je 0x4085b8
cmp al, 0x80
jae 0x4085b8
mov al, byte [ecx + 0xc]
test al, al
je 0x408595
cmp al, 0x80
jae 0x408595
mov dword [ebp - 0xd8], 3
jmp 0x4085e0
mov eax, 2
cmp dword [ebp - 0xd0], eax
jle 0x4085a8
mov dword [ebp - 0xd0], eax
cmp dword [ebp - 0xd8], eax
jge 0x4085e0
mov dword [ebp - 0xd8], eax
jmp 0x4085e0
cmp dword [ebp - 0xd0], esi
jle 0x4085c6
mov dword [ebp - 0xd0], esi
cmp dword [ebp - 0xd8], esi
jge 0x4085e0
mov dword [ebp - 0xd8], esi
jmp 0x4085e0
mov dword [ebp - 0xd0], 0
mov al, byte [ecx + 9]
cmp al, 0x20
jne 0x4085f1
mov dword [ebp - 0xb8], 2
cmp al, 1
je 0x40860b
cmp al, 3
je 0x40860b
cmp al, 8
je 0x40860b
mov dword [ebp - 0xe4], 0
cmp al, 0x81
jne 0x408611
mov dword [ebp - 0xe4], esi
xor ebx, ebx
mov dword [ebp - 0xb4], ebx
mov dword [ebp - 0xfc], ebx
mov edi, esi
jmp 0x408636
mov dl, byte [ebp - 0xc5]
mov eax, dword [ebp - 0xfc]
lea ecx, [eax + eax*8]
lea ecx, [ebp + ecx*4 - 0xb0]
test eax, eax
jne 0x40864f
movzx edx, dl
jmp 0x408669
cmp eax, edi
jne 0x40865f
mov edx, dword [ebp - 0xc4]
movzx edx, byte [edx + 0xb]
jmp 0x408669
mov eax, dword [ebp - 0xc4]
movzx edx, byte [eax + 0xc]
test edx, edx
je 0x408e25
cmp edx, 0x80
jge 0x408e25
mov eax, dword [ecx]
test eax, eax
je 0x408e2e
lea esi, [edx - 1]
cmp esi, 0x87
ja case.0x408ee9.57
movzx esi, byte [esi + 0x409be0]
jmp dword [esi*4 + 0x409b30]
cmp eax, edi
je 0x4086b3
mov ebx, 4
mov dword [ebp - 0xb4], ebx
cmp edx, 4
jne 0x4086cc
mov eax, dword [ecx + 8]
test eax, eax
je 0x4086cc
cmp eax, 8
je 0x4086cc
or ebx, edx
mov dword [ebp - 0xb4], ebx
cmp dword [ebp - 0xe4], 0
jne 0x4086e3
cmp dword [ecx + 4], edi
jne 0x4086e3
or ebx, 0x10
mov dword [ebp - 0xb4], ebx
mov eax, dword [ebp - 0xb8]
test eax, eax
jne 0x4086f6
mov eax, dword [ecx + 4]
mov dword [ebp - 0xb8], eax
cmp eax, dword [ecx + 4]
jmp 0x408d05
cmp eax, edi
je 0x40870d
mov ebx, 4
mov dword [ebp - 0xb4], ebx
mov ecx, dword [ecx + 4]
cmp ecx, 4
je 0x40871e
or ebx, 0x10
mov dword [ebp - 0xb4], ebx
mov eax, dword [ebp - 0xb8]
test eax, eax
jne 0x408730
mov eax, ecx
mov dword [ebp - 0xb8], eax
cmp eax, ecx
jmp 0x408d05
cmp eax, edi
jne 0x408747
mov eax, dword [ecx + 8]
test eax, eax
je 0x408752
cmp eax, 8
je 0x408752
mov ebx, 4
mov dword [ebp - 0xb4], ebx
mov ecx, dword [ecx + 4]
cmp ecx, 2
jmp 0x408713
cmp eax, edi
jne 0x40876b
mov eax, dword [ecx + 8]
cmp eax, 2
je 0x408776
cmp eax, 8
je 0x408776
mov ebx, 4
mov dword [ebp - 0xb4], ebx
cmp dword [ecx + 4], 2
je case.0x40869d.128
or ebx, 0x10
jmp 0x408d0a
cmp eax, edi
jne 0x408798
mov eax, dword [ecx + 8]
cmp eax, edi
je 0x4087a3
cmp eax, 8
je 0x4087a3
mov ebx, 4
mov dword [ebp - 0xb4], ebx
cmp dword [ecx + 4], edi
je case.0x40869d.128
or ebx, 0x10
jmp 0x408d0a
cmp eax, 9
jne 0x4087cd
mov ecx, dword [ecx + 8]
test ecx, ecx
je case.0x40869d.128
cmp ecx, 8
je case.0x40869d.128
mov ebx, 4
jmp 0x408d0a
cmp eax, 9
je case.0x40869d.128
mov ebx, 4
jmp 0x408d0a
cmp eax, 0xa
je case.0x40869d.128
mov ebx, 4
jmp 0x408d0a
cmp eax, 0xc
je 0x408811
cmp eax, edi
je 0x408811
mov ebx, 4
mov dword [ebp - 0xb4], ebx
cmp dword [ebp - 0xe4], 0
jne 0x408828
cmp dword [ecx + 4], edi
jne 0x408828
or ebx, 0x10
mov dword [ebp - 0xb4], ebx
mov eax, dword [ebp - 0xb8]
test eax, eax
jne 0x40883b
mov eax, dword [ecx + 4]
mov dword [ebp - 0xb8], eax
mov ecx, dword [ecx + 4]
test ecx, ecx
je case.0x40869d.128
cmp ecx, eax
jmp 0x408d05
cmp eax, 0xc
je 0x408861
cmp eax, edi
je 0x408861
mov ebx, 4
mov dword [ebp - 0xb4], ebx
mov ecx, dword [ecx + 4]
test ecx, ecx
je case.0x40869d.128
cmp ecx, edi
je case.0x40869d.128
or ebx, 0x10
jmp 0x408d0a
cmp eax, 0xc
je 0x408890
cmp eax, edi
je 0x408890
mov ebx, 4
mov dword [ebp - 0xb4], ebx
mov ecx, dword [ecx + 4]
test ecx, ecx
je case.0x40869d.128
cmp ecx, 2
je case.0x40869d.128
or ebx, 0x10
jmp 0x408d0a
cmp eax, 0xc
je 0x4088c0
cmp eax, edi
je 0x4088c0
mov ebx, 4
mov dword [ebp - 0xb4], ebx
mov ecx, dword [ecx + 4]
test ecx, ecx
je case.0x40869d.128
cmp ecx, 4
je case.0x40869d.128
or ebx, 0x10
jmp 0x408d0a
cmp eax, 0xc
je 0x4088f0
cmp eax, edi
je 0x4088f0
mov ebx, 4
mov dword [ebp - 0xb4], ebx
mov ecx, dword [ecx + 4]
test ecx, ecx
je 0x408bc2
cmp ecx, 4
je 0x408bc2
or ebx, 0x10
jmp 0x408bbc
cmp eax, 0xc
je 0x408921
cmp eax, 0xa
je 0x408921
mov ebx, 4
mov dword [ebp - 0xb4], ebx
mov ecx, dword [ecx + 4]
test ecx, ecx
je case.0x40869d.128
cmp ecx, 8
jmp 0x4088ce
cmp eax, 0xc
je case.0x40869d.128
mov ebx, 4
jmp 0x408d0a
cmp eax, 0xc
je 0x408954
mov ebx, 4
mov dword [ebp - 0xb4], ebx
mov ecx, dword [ecx + 4]
test ecx, ecx
je 0x408cec
cmp ecx, 6
je 0x408cec
or ebx, 0x10
jmp 0x408ce6
cmp eax, 0xc
je 0x408980
mov ebx, 4
mov dword [ebp - 0xb4], ebx
mov ecx, dword [ecx + 4]
test ecx, ecx
je 0x408995
cmp ecx, 6
je 0x408995
or ebx, 0x10
mov dword [ebp - 0xb4], ebx
test byte [ebp - 0xc0], 7
je 0x408bd3
or ebx, edi
and dword [ebp - 0xc0], 0x7f
jmp 0x408d0a
cmp eax, 0xc
je 0x4089c0
mov ebx, 4
mov dword [ebp - 0xb4], ebx
mov ecx, dword [ecx + 4]
test ecx, ecx
je case.0x40869d.128
cmp ecx, 6
jmp 0x4088ce
cmp eax, 0xc
je 0x4089e3
mov ebx, 4
mov dword [ebp - 0xb4], ebx
cmp dword [0x4ba548], 0
mov eax, dword [ecx + 4]
jne 0x4089f8
cmp eax, edi
jle 0x4089f8
cdq
sub eax, edx
sar eax, 1
test eax, eax
je case.0x40869d.128
cmp eax, dword [ebp - 0xb8]
jmp 0x408d05
cmp eax, 0xc
jmp 0x408883
cmp eax, 0xc
je 0x408a23
mov ebx, 4
mov dword [ebp - 0xb4], ebx
mov ecx, dword [ecx + 4]
test ecx, ecx
je case.0x40869d.128
cmp ecx, 4
jmp 0x40889e
cmp eax, 0xc
je 0x408a46
mov ebx, 4
mov dword [ebp - 0xb4], ebx
mov ecx, dword [ecx + 4]
test ecx, ecx
je case.0x40869d.128
cmp ecx, 8
jmp 0x40889e
cmp eax, 0xc
je 0x408a69
mov ebx, 4
mov dword [ebp - 0xb4], ebx
mov ecx, dword [ecx + 4]
test ecx, ecx
je case.0x40869d.128
cmp ecx, 0xa
jmp 0x40889e
cmp eax, 0xc
je 0x408a8c
mov ebx, 4
mov dword [ebp - 0xb4], ebx
cmp dword [ecx + 4], 0
jmp 0x40889e
cmp eax, 0xc
jne 0x408ab6
cmp dword [ecx + 0x10], 6
jne 0x408ab6
cmp dword [ecx + 8], 0xffffffff
jne 0x408ab6
cmp dword [ecx + 0x14], 0
jne 0x408ab6
cmp dword [ecx + 0x18], 0
je 0x408828
mov ebx, 4
jmp 0x408822
cmp eax, 0xc
jne 0x408add
cmp dword [ecx + 0x10], 7
jne 0x408add
cmp dword [ecx + 8], 0xffffffff
jne 0x408add
cmp dword [ecx + 0x14], 0
jne 0x408add
cmp dword [ecx + 0x18], 0
je 0x408ae8
mov ebx, 4
mov dword [ebp - 0xb4], ebx
mov eax, dword [ecx + 0x1c]
cmp eax, 0xffffffff
je 0x408828
test eax, eax
je 0x408828
or ebx, 0x40
jmp 0x408822
cmp eax, 0x28
je case.0x40869d.128
mov ebx, 4
jmp 0x408d0a
cmp eax, 0x29
je case.0x40869d.128
mov ebx, 4
jmp 0x408d0a
cmp eax, 0x29
je 0x408b3a
mov ebx, 4
mov dword [ebp - 0xb4], ebx
mov eax, dword [ebp - 0xb8]
test eax, eax
jne 0x408b53
mov dword [ebp - 0xb8], 4
jmp case.0x40869d.128
cmp eax, 4
jmp 0x40889e
cmp eax, 0x34
je 0x408b6b
mov ebx, 4
mov dword [ebp - 0xb4], ebx
test byte [ebp - 0xc0], 5
je 0x408bd3
or ebx, edi
and dword [ebp - 0xc0], 0x7f
jmp 0x408d0a
cmp eax, 0x29
jne 0x408b90
cmp dword [ebp - 0x108], 0
je 0x408b9b
mov ebx, 4
mov dword [ebp - 0xb4], ebx
test byte [ebp - 0xc0], 0xa
je 0x408bd3
or ebx, edi
and dword [ebp - 0xc0], 0x7f
jmp 0x408d0a
cmp eax, 0x29
je 0x408bc2
mov ebx, 4
mov dword [ebp - 0xb4], ebx
test byte [ebp - 0xc0], 9
je 0x408bd3
or ebx, edi
mov dword [ebp - 0xb4], ebx
and dword [ebp - 0xc0], 0x7f
jmp case.0x40869d.128
cmp eax, 0xc
jne 0x408bf4
cmp dword [ecx + 0x10], 0
jge 0x408bf4
cmp dword [ecx + 8], 0
jl case.0x40869d.128
mov ebx, 4
jmp 0x408d0a
cmp eax, 0x29
je 0x408c0e
mov ebx, 4
mov dword [ebp - 0xb4], ebx
mov ecx, dword [ecx + 0x14]
cmp ecx, 0xffffff80
jl 0x408c1f
cmp ecx, 0x7f
jle case.0x40869d.128
or ebx, 0x80
jmp 0x408d0a
cmp eax, 0x29
jne 0x408c42
cmp dword [ecx + 0x14], edi
je case.0x40869d.128
cmp dword [ecx + 0x18], 0
jne case.0x40869d.128
mov ebx, 4
jmp 0x408d0a
cmp eax, 0x29
je 0x408c5c
mov ebx, 4
mov dword [ebp - 0xb4], ebx
mov ecx, dword [ecx + 0x14]
cmp ecx, 0xffffff80
jl 0x408c70
cmp ecx, 0xff
jle case.0x40869d.128
or ebx, 0x80
jmp 0x408d0a
cmp eax, 0x29
je 0x408c8b
mov ebx, 4
mov dword [ebp - 0xb4], ebx
mov ecx, dword [ecx + 0x14]
test ecx, ecx
js 0x408c9e
cmp ecx, 0xffff
jle case.0x40869d.128
or ebx, 0x80
jmp 0x408d0a
cmp eax, 0x35
je 0x408cb6
mov ebx, 4
mov dword [ebp - 0xb4], ebx
mov eax, dword [ebp - 0xb8]
test eax, eax
jne 0x408ccc
mov dword [ebp - 0xb8], 2
jmp case.0x40869d.128
cmp eax, 2
jmp 0x408d05
cmp eax, 0x35
je case.0x40869d.128
mov ebx, 4
jmp 0x408d0a
cmp eax, edx
je 0x408cec
mov ebx, 4
mov dword [ebp - 0xb4], ebx
mov eax, dword [ebp - 0xb8]
test eax, eax
jne 0x408d02
mov dword [ebp - 0xb8], 4
jmp case.0x40869d.128
cmp eax, 4
je case.0x40869d.128
or ebx, 0x20
mov dword [ebp - 0xb4], ebx
test byte [ebp - 0xc0], 0x80
je 0x408d21
or ebx, edi
mov dword [ebp - 0xb4], ebx
test ebx, ebx
jne 0x408d54
mov eax, dword [ebp - 0xfc]
mov edi, 1
add eax, edi
mov dword [ebp - 0xfc], eax
cmp eax, 3
jl 0x408630
cmp dword [ebp + 0x14], 0
jle 0x408d71
sub dword [ebp + 0x14], edi
mov dword [ebp - 0xdc], 0
mov eax, dword [ebp - 0xc4]
add eax, 0x14
cmp dword [eax], 0
mov dword [ebp - 0xc4], eax
jne 0x408335
mov edi, 1
mov ecx, dword [ebp - 0xdc]
test ecx, ecx
je 0x409707
test ebx, ebx
jne 0x409753
mov edi, dword [ebp - 0xc4]
movzx ebx, byte [edi + 8]
mov ecx, dword [edi]
mov edx, dword [edi + 4]
xor eax, eax
and edx, ecx
dec ebx
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0xf4], eax
mov dword [ebp - 0xec], eax
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xd4], eax
mov dword [ebp - 0xe8], 0xffffffff
mov dword [ebp - 0xdc], eax
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], eax
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x24], ecx
cmp dword [ebp - 0x114], eax
je 0x408dea
inc ebx
mov dl, byte [edi + 9]
mov byte [ebp - 0xc5], dl
cmp dl, 1
je 0x408e3e
cmp dl, 3
je 0x408e3e
cmp dl, 0x81
je 0x408e3e
cmp dl, 8
jne 0x408e5b
mov ecx, dword [ebp - 0xb8]
cmp ecx, eax
je 0x409964
cmp ecx, 1
jle 0x408e1e
or byte [ebp + ebx - 0x14], dl
or byte [ebp + ebx - 0x24], 8
jmp 0x408e5b
cmp dword [ecx], 0
je 0x408d41
mov ebx, 2
mov dword [ebp - 0xb4], ebx
jmp 0x408d54
mov ecx, dword [ebp - 0xb8]
cmp ecx, eax
je 0x409964
cmp ecx, 1
jle 0x408e56
or byte [ebp + ebx - 0x14], 1
or byte [ebp + ebx - 0x24], 1
mov cl, byte [edi + 0xd]
and cl, 0xf0
cmp cl, 0xe0
jne 0x408e7a
movzx ecx, byte [edi + 6]
mov dword [ebp - 0xd4], 1
mov dword [ebp - 0xe0], ecx
xor ecx, ecx
mov dword [ebp - 0xe4], eax
mov dword [ebp - 0xd0], eax
mov dword [ebp - 0xd8], eax
mov dword [ebp - 0xfc], ecx
jmp 0x408ea6
mov dl, byte [ebp - 0xc5]
lea eax, [ecx + ecx*8]
lea eax, [ebp + eax*4 - 0xb0]
mov esi, 1
test ecx, ecx
jne 0x408ebf
movzx ecx, byte [edi + 0xa]
jmp 0x408ecd
cmp ecx, esi
jne 0x408ec9
movzx ecx, byte [edi + 0xb]
jmp 0x408ecd
movzx ecx, byte [edi + 0xc]
test ecx, ecx
je 0x4094d8
dec ecx
cmp ecx, 0x87
ja case.0x408ee9.57
movzx ecx, byte [ecx + 0x409ca8]
jmp dword [ecx*4 + 0x409c68]
cmp dword [eax + 8], 8
mov dword [ebp - 0xf4], esi
jge case.0x408ee9.4
mov dl, byte [eax + 8]
add dl, dl
add dl, dl
add dl, dl
or byte [ebp + ebx - 0x13], dl
or byte [ebp + ebx - 0x23], 0x38
jmp case.0x408ee9.4
cmp dword [eax + 8], 8
jge case.0x408ee9.4
mov al, byte [eax + 8]
or byte [ebp + ebx - 0x14], al
or byte [ebp + ebx - 0x24], 7
jmp case.0x408ee9.4
mov eax, dword [eax + 0x1c]
cmp eax, 0xffffffff
je case.0x408ee9.4
cmp eax, 3
je case.0x408ee9.4
mov dword [ebp - 0xe8], eax
jmp case.0x408ee9.4
cmp dword [eax], 0xc
mov dword [ebp - 0xf4], esi
je case.0x408ee9.22
or byte [ebp + ebx - 0x13], 0xc0
or byte [ebp + ebx - 0x23], 0xc0
cmp dword [eax + 8], 8
mov dl, byte [ebp + ebx - 0x13]
mov cl, byte [ebp + ebx - 0x23]
jge case.0x408ee9.4
mov al, byte [eax + 8]
mov edi, dword [ebp - 0xc4]
or al, dl
or cl, 7
mov byte [ebp + ebx - 0x13], al
mov byte [ebp + ebx - 0x23], cl
jmp case.0x408ee9.4
mov edx, dword [eax + 0x10]
mov esi, dword [eax + 0x14]
mov edi, dword [eax + 0x18]
mov dword [ebp - 0xf4], 1
mov dword [ebp - 0x10c], esi
mov dword [ebp - 0xd8], edi
test edx, edx
jns 0x408fef
cmp dword [eax + 8], 0
jge 0x408fef
mov eax, dword [eax + 0x1c]
mov dword [ebp - 0xcc], 4
cmp eax, 0xffffffff
je 0x408fda
cmp eax, 3
je 0x408fda
mov dword [ebp - 0xe8], eax
or byte [ebp + ebx - 0x13], 5
or byte [ebp + ebx - 0x23], 0xc7
mov edi, dword [ebp - 0xc4]
jmp case.0x408ee9.4
mov ecx, dword [eax + 8]
test ecx, ecx
jns 0x4090a1
cmp edx, 4
je 0x4090a1
or byte [ebp + ebx - 0x23], 0xc0
test esi, esi
jne 0x409019
cmp dword [ebp - 0xd8], esi
jne 0x409019
cmp edx, 5
jne 0x409055
test byte [ebp + 0x18], 1
je 0x409046
cmp esi, 0xffffff80
jl 0x40902c
cmp esi, 0x80
jl 0x409035
cmp dword [ebp - 0xd8], 0
je 0x409046
or byte [ebp + ebx - 0x13], 0x40
mov dword [ebp - 0xcc], 1
jmp 0x409055
or byte [ebp + ebx - 0x13], 0x80
mov dword [ebp - 0xcc], 4
cmp edx, 8
jge 0x40908d
mov ecx, dword [eax + 0x1c]
cmp ecx, 0xffffffff
je 0x409071
cmp ecx, dword [edx*8 + 0x48cf60]
je 0x409071
mov dword [ebp - 0xe8], ecx
mov dl, byte [eax + 0x10]
mov al, byte [ebp + ebx - 0x23]
or byte [ebp + ebx - 0x13], dl
mov edi, dword [ebp - 0xc4]
or al, 7
mov byte [ebp + ebx - 0x23], al
jmp case.0x408ee9.4
mov eax, dword [eax + 0x1c]
mov edi, dword [ebp - 0xc4]
mov dword [ebp - 0xe8], eax
jmp case.0x408ee9.4
mov dword [ebp - 0xec], 1
cmp edx, 5
jne 0x4090c8
test ecx, ecx
js 0x4090c8
cmp dword [eax + 0xc], 1
jne 0x4090c8
test esi, esi
jne 0x4090c8
test edi, edi
jne 0x4090c8
mov dword [eax + 0x10], ecx
mov dword [eax + 8], edx
mov ecx, 4
cmp dword [eax + 8], ecx
jne 0x4090e8
cmp dword [eax + 0xc], 1
jg 0x4090e8
mov edx, dword [eax + 0x10]
mov dword [eax + 8], edx
mov dword [eax + 0x10], ecx
mov dword [eax + 0xc], 1
cmp dword [eax + 0x10], 0
jge 0x409116
mov ecx, dword [eax + 8]
test ecx, ecx
js 0x409116
cmp dword [eax + 0xc], 2
jne 0x409116
cmp esi, 0xffffff80
jl 0x409116
cmp esi, 0x80
jge 0x409116
test edi, edi
jne 0x409116
mov dword [eax + 0x10], ecx
mov dword [eax + 0xc], 1
mov edx, dword [eax + 8]
cmp edx, 4
je 0x409926
mov ecx, dword [eax + 0x10]
test ecx, ecx
jns 0x409130
or byte [ebp + ebx - 0x13], 4
jmp 0x409171
test esi, esi
jne 0x409144
test edi, edi
jne 0x409144
cmp ecx, 5
je 0x409144
or byte [ebp + ebx - 0x13], 4
jmp 0x40917b
test byte [ebp + 0x18], 1
je 0x40916c
cmp esi, 0xffffff80
jl 0x409157
cmp esi, 0x80
jl 0x40915b
test edi, edi
je 0x40916c
or byte [ebp + ebx - 0x13], 0x44
mov dword [ebp - 0xcc], 1
jmp 0x40917b
or byte [ebp + ebx - 0x13], 0x84
mov dword [ebp - 0xcc], 4
mov ecx, dword [eax + 0xc]
or byte [ebp + ebx - 0x23], 0xc7
cmp ecx, 2
jne 0x40918f
or byte [ebp + ebx - 0x12], 0x40
jmp 0x4091a5
cmp ecx, 4
jne 0x40919b
or byte [ebp + ebx - 0x12], 0x80
jmp 0x4091a5
cmp ecx, 8
jne 0x4091a5
or byte [ebp + ebx - 0x12], 0xc0
or byte [ebp + ebx - 0x22], 0xc0
mov cl, byte [ebp + ebx - 0x22]
cmp edx, 8
jge 0x4091d2
test edx, edx
jns 0x4091be
mov dword [eax + 8], 4
mov dl, byte [eax + 8]
add dl, dl
add dl, dl
add dl, dl
or byte [ebp + ebx - 0x12], dl
or cl, 0x38
mov byte [ebp + ebx - 0x22], cl
mov ecx, dword [eax + 0x10]
cmp ecx, 8
jge 0x409216
test ecx, ecx
jns 0x4091e5
mov dword [eax + 0x10], 5
mov ecx, dword [eax + 0x1c]
cmp ecx, 0xffffffff
je 0x4091ff
mov edx, dword [eax + 0x10]
cmp ecx, dword [edx*8 + 0x48cf60]
je 0x4091ff
mov dword [ebp - 0xe8], ecx
mov al, byte [eax + 0x10]
or byte [ebp + ebx - 0x12], al
or byte [ebp + ebx - 0x22], 7
mov edi, dword [ebp - 0xc4]
jmp case.0x408ee9.4
mov ecx, dword [eax + 0x1c]
mov edi, dword [ebp - 0xc4]
mov dword [ebp - 0xe8], ecx
jmp case.0x408ee9.4
mov ecx, dword [ebp - 0xb8]
test ecx, ecx
jne 0x409256
cmp byte [edi + 0xb], cl
jne 0x409964
cmp dl, 2
je 0x40924b
cmp dl, 3
jne 0x409964
mov ecx, 4
mov dword [ebp - 0xb8], ecx
mov esi, dword [eax + 0x14]
mov eax, dword [eax + 0x18]
mov dword [ebp - 0xe0], esi
mov dword [ebp - 0xd0], eax
cmp dl, 2
je 0x40927d
cmp dl, 3
je 0x40927d
mov dword [ebp - 0xd4], ecx
jmp case.0x408ee9.4
cmp ecx, 1
jle 0x4092b2
test byte [ebp + 0x18], 2
je 0x4092b2
cmp esi, 0xffffff80
jl 0x409295
cmp esi, 0x80
jl 0x409299
test eax, eax
je 0x4092b2
or byte [ebp + ebx - 0x14], 2
or byte [ebp + ebx - 0x24], 2
mov dword [ebp - 0xd4], 1
jmp case.0x408ee9.4
or byte [ebp + ebx - 0x24], 2
mov dword [ebp - 0xd4], ecx
jmp case.0x408ee9.4
cmp dword [ebp - 0xd4], 2
mov edx, dword [eax + 0x14]
jne 0x4092df
mov ecx, dword [ebp - 0xe0]
shl edx, 0x10
and ecx, 0xffff
or edx, ecx
mov eax, dword [eax + 0x18]
or dword [ebp - 0xd0], eax
add dword [ebp - 0xd4], esi
mov dword [ebp - 0xe0], edx
jmp case.0x408ee9.4
mov ecx, dword [eax + 0x14]
mov edx, dword [eax + 0x18]
mov dword [ebp - 0xe0], ecx
mov dword [ebp - 0xd0], edx
mov dword [ebp - 0xd4], 2
jmp case.0x408ee9.4
mov ecx, dword [eax + 0x1c]
cmp ecx, 0xffffffff
je 0x40932d
cmp ecx, 3
je 0x40932d
mov dword [ebp - 0xe8], ecx
mov ecx, dword [eax + 0x14]
mov edx, dword [eax + 0x18]
mov dword [ebp - 0x10c], ecx
mov dword [ebp - 0xd8], edx
mov dword [ebp - 0xcc], 4
jmp case.0x408ee9.4
mov ecx, dword [eax + 0x14]
mov edx, dword [eax + 0x18]
mov dword [ebp - 0x104], ecx
mov dword [ebp - 0xe4], edx
mov dword [ebp - 0xdc], esi
jmp case.0x408ee9.4
mov ecx, dword [eax + 0x14]
mov edx, dword [eax + 0x18]
mov dword [ebp - 0x104], ecx
mov dword [ebp - 0xe4], edx
mov dword [ebp - 0xdc], 4
jmp case.0x408ee9.4
mov ecx, dword [eax + 0x14]
mov edx, dword [eax + 0x1c]
mov dword [ebp - 0x10c], ecx
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0xd8], ecx
mov dword [ebp - 0xcc], 4
mov dword [ebp - 0xe0], edx
mov dword [ebp - 0xd0], ecx
mov dword [ebp - 0xd4], 2
jmp case.0x408ee9.4
cmp dword [eax + 8], 6
mov dword [ebp - 0xf4], esi
jge case.0x408ee9.4
mov al, byte [eax + 8]
add al, al
add al, al
add al, al
or byte [ebp + ebx - 0x13], al
or byte [ebp + ebx - 0x23], 0x38
jmp case.0x408ee9.4
mov ecx, dword [eax + 8]
cmp ecx, 4
je 0x409461
cmp ecx, 5
je 0x409461
cmp ecx, 6
jge 0x409455
cmp ecx, esi
jne 0x40943d
mov esi, 0x48cd4c
lea ecx, [ebp - 0x44]
jmp 0x409410
mov dl, byte [ecx]
cmp dl, byte [esi]
jne 0x409430
test dl, dl
je 0x40942c
mov dl, byte [ecx + 1]
cmp dl, byte [esi + 1]
jne 0x409430
add ecx, 2
add esi, 2
test dl, dl
jne 0x409410
xor ecx, ecx
jmp 0x409435
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
je 0x40997b
mov dl, byte [eax + 8]
mov cl, byte [ebp + ebx - 0x14]
add dl, dl
add dl, dl
and cl, 0xc7
add dl, dl
or cl, dl
mov byte [ebp + ebx - 0x14], cl
jmp case.0x408ee9.4
and byte [ebp + ebx - 0x14], 0xc7
and byte [ebp + ebx - 0x24], 0xc7
jmp case.0x408ee9.4
mov byte [ebp - 0x14], 0xf
mov byte [ebp - 0x24], 0xff
mov ebx, 1
mov esi, 0x48cd64
lea ecx, [ebp - 0x44]
mov dl, byte [ecx]
cmp dl, byte [esi]
jne 0x409496
test dl, dl
je 0x409492
mov dl, byte [ecx + 1]
cmp dl, byte [esi + 1]
jne 0x409496
add ecx, 2
add esi, 2
test dl, dl
jne 0x409476
xor ecx, ecx
jmp 0x40949b
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
jne 0x4094af
mov al, byte [eax + 8]
or al, 0xf0
add al, al
add al, al
add al, al
mov byte [ebp - 0x13], al
jmp 0x4094be
mov cl, byte [eax + 8]
add cl, cl
add cl, cl
add cl, cl
or cl, 0x81
mov byte [ebp - 0x13], cl
mov byte [ebp - 0x23], 0xff
mov ecx, dword [ebp - 0xfc]
inc ecx
mov dword [ebp - 0xfc], ecx
cmp ecx, 3
jl 0x408ea0
mov eax, dword [ebp - 0x100]
xor esi, esi
cmp dword [ebp - 0x110], esi
je 0x4094f4
mov byte [eax], 0xf0
mov byte [eax + 0x10], 0xff
mov esi, 1
mov edx, 2
cmp dword [ebp - 0xb8], edx
jne 0x409511
cmp byte [edi + 9], 0x20
je 0x409511
mov byte [eax + esi], 0x66
mov byte [eax + esi + 0x10], 0xff
inc esi
cmp dword [ebp - 0xf8], edx
jne 0x409523
mov byte [eax + esi], 0x67
mov byte [eax + esi + 0x10], 0xff
inc esi
mov ecx, dword [ebp - 0xe8]
cmp ecx, 0xffffffff
je 0x409576
test ecx, ecx
jne 0x409538
mov byte [eax + esi], 0x26
jmp 0x409570
cmp ecx, 1
jne 0x409543
mov byte [eax + esi], 0x2e
jmp 0x409570
cmp ecx, edx
jne 0x40954d
mov byte [eax + esi], 0x36
jmp 0x409570
cmp ecx, 3
jne 0x409558
mov byte [eax + esi], 0x3e
jmp 0x409570
cmp ecx, 4
jne 0x409563
mov byte [eax + esi], 0x64
jmp 0x409570
cmp ecx, 5
jne case.0x408ee9.57
mov byte [eax + esi], 0x65
mov byte [eax + esi + 0x10], 0xff
inc esi
cmp dword [ebp - 0xcc], 0
jle 0x4095cc
mov edi, dword [ebp - 0xec]
add edi, dword [ebp - 0xf4]
mov ecx, dword [ebp - 0xcc]
push ecx
lea edx, [ebp - 0x10c]
lea eax, [ebp + edi - 0x13]
push edx
add eax, ebx
push eax
call fcn.004507b0
add esp, 0xc
cmp dword [ebp - 0xd8], 0
jne 0x4095cc
mov ecx, dword [ebp - 0xcc]
push ecx
lea edx, [ebp + edi - 0x23]
add edx, ebx
push 0xff
push edx
call fcn.00450730
add esp, 0xc
mov eax, dword [ebp - 0xd4]
test eax, eax
jle 0x40965b
cmp eax, 1
jne 0x4095e6
mov eax, 0xffffff00
jmp 0x4095f6
xor ecx, ecx
cmp eax, 2
setne cl
lea eax, [ecx - 1]
and eax, 0xffff0000
mov ecx, eax
and ecx, dword [ebp - 0xe0]
je 0x409608
cmp ecx, eax
jne 0x4099ca
mov edi, dword [ebp - 0xcc]
add edi, dword [ebp - 0xec]
mov edx, dword [ebp - 0xd4]
add edi, dword [ebp - 0xf4]
push edx
lea eax, [ebp - 0xe0]
lea ecx, [ebp + edi - 0x13]
push eax
add ecx, ebx
push ecx
call fcn.004507b0
add esp, 0xc
cmp dword [ebp - 0xd0], 0
jne 0x40965b
mov edx, dword [ebp - 0xd4]
push edx
lea eax, [ebp + edi - 0x23]
add eax, ebx
push 0xff
push eax
call fcn.00450730
add esp, 0xc
mov ecx, dword [ebp - 0xd4]
add ecx, dword [ebp - 0xcc]
mov eax, dword [ebp - 0xdc]
add ecx, dword [ebp - 0xec]
mov edx, dword [ebp - 0x104]
add ecx, dword [ebp - 0xf4]
lea edi, [ebx + ecx + 1]
lea ecx, [eax + esi]
add ecx, edi
sub edx, ecx
mov ecx, dword [ebp - 0x100]
lea ebx, [esi + edi]
mov dword [ecx + 0x24], eax
mov dword [ecx + 0x28], edx
mov dword [ecx + 0x2c], ebx
test eax, eax
je 0x409a4c
mov ecx, dword [ebp + 0xc]
test ecx, ecx
je 0x409a22
sub edx, ecx
mov dword [ebp - 0x104], edx
cmp eax, 1
jne 0x409a01
cmp dword [ebp - 0xe4], 0
jne 0x409a01
cmp edx, 0xffffff80
jl 0x4096de
cmp edx, 0x80
jl 0x409a01
cmp dword [ebp - 0x108], 0
jne 0x4099e4
test byte [ebp - 0xc0], 3
jne 0x4099e4
mov dword [ebp - 0x108], 1
jmp 0x4082e4
mov edx, dword [str.Unrecognized_command]
mov eax, dword [ebp - 0xbc]
mov dword [eax], edx
mov ecx, dword [0x4910bc]
mov dword [eax + 4], ecx
mov edx, dword [0x4910c0]
mov dword [eax + 8], edx
mov ecx, dword [0x4910c4]
mov dword [eax + 0xc], ecx
mov edx, dword [0x4910c8]
mov dword [eax + 0x10], edx
mov cl, byte [0x4910cc]
mov edx, dword [ebp - 0x118]
mov byte [eax + 0x14], cl
mov dword [0x4ba558], edx
jmp 0x409ae1
mov eax, dword [ebp - 0xd0]
test eax, eax
jle 0x4097a1
lea eax, [eax + eax*8]
cmp dword [ebp + eax*4 - 0xd4], 0
jne 0x4097a1
mov ecx, dword [str.Too_few_operands]
mov eax, dword [ebp - 0xbc]
mov dword [eax], ecx
mov edx, dword [0x4910a8]
mov dword [eax + 4], edx
mov ecx, dword [0x4910ac]
mov dword [eax + 8], ecx
mov edx, dword [0x4910b0]
mov dword [eax + 0xc], edx
mov cl, byte [0x4910b4]
mov byte [eax + 0x10], cl
jmp 0x409ae1
mov eax, dword [ebp - 0xd8]
cmp eax, 3
jge 0x4097f2
lea edx, [eax + eax*8]
cmp dword [ebp + edx*4 - 0xb0], 0
je 0x4097f2
mov ecx, dword [str.Too_many_operands]
mov eax, dword [ebp - 0xbc]
mov dword [eax], ecx
mov edx, dword [0x491090]
mov dword [eax + 4], edx
mov ecx, dword [0x491094]
mov dword [eax + 8], ecx
mov edx, dword [0x491098]
mov dword [eax + 0xc], edx
mov cx, word [0x49109c]
mov word [eax + 0x10], cx
jmp 0x409ae1
cmp ecx, edi
jg 0x409837
test bl, 1
je 0x409815
mov edi, dword [ebp - 0xbc]
mov ecx, 6
mov esi, str.Invalid_jump_size_modifier
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
jmp 0x409ae1
test bl, 2
je 0x409832
mov edi, dword [ebp - 0xbc]
mov ecx, 6
mov esi, str.Wrong_number_of_operands
rep movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
jmp 0x409ae1
test bl, 4
je 0x40984e
mov edi, dword [ebp - 0xbc]
mov ecx, 0xa
mov esi, str.Command_does_not_support_given_operands
rep movsd dword es:[edi], dword [esi]
jmp 0x409ae1
test bl, 8
jne 0x409964
test bl, 0x10
je 0x409893
mov edx, dword [str.Bad_operand_size]
mov eax, dword [ebp - 0xbc]
mov dword [eax], edx
mov ecx, dword [0x49100c]
mov dword [eax + 4], ecx
mov edx, dword [0x491010]
mov dword [eax + 8], edx
mov ecx, dword [0x491014]
mov dword [eax + 0xc], ecx
mov dl, byte [0x491018]
mov byte [eax + 0x10], dl
jmp 0x409ae1
test bl, 0x20
je 0x4098b2
mov edi, dword [ebp - 0xbc]
mov ecx, 6
mov esi, str.Different_size_of_operands
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
jmp 0x409ae1
test bl, 0x40
je 0x4098cf
mov edi, dword [ebp - 0xbc]
mov ecx, 6
mov esi, str.Invalid_segment_register
rep movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
jmp 0x409ae1
test bl, bl
jns 0x4098ed
mov edi, dword [ebp - 0xbc]
mov ecx, 7
mov esi, str.Constant_out_of_expected_range
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
jmp 0x409ae1
mov ecx, dword [str.Erroneous_command]
mov eax, dword [ebp - 0xbc]
mov dword [eax], ecx
mov edx, dword [0x490f8c]
mov dword [eax + 4], edx
mov ecx, dword [0x490f90]
mov dword [eax + 8], ecx
mov edx, dword [0x490f94]
mov dword [eax + 0xc], edx
mov cx, word [0x490f98]
mov word [eax + 0x10], cx
jmp 0x409ae1
mov edx, dword [str.Invalid_indexing_mode]
mov eax, dword [ebp - 0xbc]
mov dword [eax], edx
mov ecx, dword [0x490f70]
mov dword [eax + 4], ecx
mov edx, dword [0x490f74]
mov dword [eax + 8], edx
mov ecx, dword [0x490f78]
mov dword [eax + 0xc], ecx
mov edx, dword [0x490f7c]
mov dword [eax + 0x10], edx
mov cx, word [0x490f80]
jmp 0x409add
mov edi, dword [ebp - 0xbc]
mov ecx, 7
mov esi, str.Please_specify_operand_size
rep movsd dword es:[edi], dword [esi]
jmp 0x409ae1
mov edx, dword [str.Unable_to_POP_CS]
mov eax, dword [ebp - 0xbc]
mov dword [eax], edx
mov ecx, dword [0x490f38]
mov dword [eax + 4], ecx
mov edx, dword [0x490f3c]
mov dword [eax + 8], edx
mov ecx, dword [0x490f40]
mov dword [eax + 0xc], ecx
mov dl, byte [0x490f44]
mov byte [eax + 0x10], dl
jmp 0x409ae1
mov edi, dword [ebp - 0xbc]
mov ecx, 6
mov esi, str.Internal_Assembler_error
rep movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
jmp 0x409ae1
mov edi, dword [ebp - 0xbc]
mov ecx, 8
mov esi, str.Constant_does_not_fit_into_operand
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
jmp 0x409ae1
mov ecx, dword [ebp - 0xbc]
lea eax, [ebp - 0x44]
push eax
push str.Relative_jump_out_of_range__use__s_LONG_form
push ecx
call fcn.0044fcaa
add esp, 0xc
jmp 0x409ae1
mov edx, dword [ebp - 0xdc]
push edx
lea eax, [ebp - 0x104]
push eax
lea ecx, [ebp + edi - 0x14]
push ecx
call fcn.004507b0
mov eax, dword [ebp - 0xdc]
add esp, 0xc
cmp dword [ebp - 0xe4], 0
jne 0x409a4a
mov edx, dword [ebp - 0xdc]
push edx
lea eax, [ebp + edi - 0x24]
push 0xff
push eax
call fcn.00450730
mov eax, dword [ebp - 0xdc]
add esp, 0xc
add edi, eax
mov ebx, dword [ebp - 0x100]
push edi
lea edx, [ebp - 0x14]
push edx
add ebx, esi
push ebx
call fcn.004507b0
push edi
lea eax, [ebp - 0x24]
push eax
add ebx, 0x10
push ebx
call fcn.004507b0
mov ecx, dword [ebp - 0x100]
add esp, 0x18
add edi, esi
mov dword [ecx + 0x20], edi
mov eax, edi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0044fef1
mov esp, ebp
pop ebp
ret
mov edi, dword [ebp - 0xbc]
mov ecx, 6
mov esi, str.Command_mnemonic_expected
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
jmp 0x409ae1
mov edx, dword [str.Duplicated_REP_prefix]
mov eax, dword [ebp - 0xbc]
mov dword [eax], edx
mov ecx, dword [0x490e78]
mov dword [eax + 4], ecx
mov edx, dword [0x490e7c]
mov dword [eax + 8], edx
mov ecx, dword [0x490e80]
mov dword [eax + 0xc], ecx
mov edx, dword [0x490e84]
mov dword [eax + 0x10], edx
mov cx, word [0x490e88]
mov word [eax + 0x14], cx
mov edx, dword [ebp - 0x100]
mov eax, dword [ebp + 8]
sub eax, dword [0x4ba558]
pop edi
pop esi
mov dword [edx + 0x20], 0
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0044fef1
mov esp, ebp
pop ebp
ret
cmp edi, ebx
je 0x409b1b
mov ecx, 5
mov esi, str.Internal_OLLYDBG_error
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
xor eax, eax
pop ebx
call fcn.0044fef1
mov esp, ebp
pop ebp
ret