Function at 0x401150
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffebc
xor eax, eax
mov byte [0x4cd180], 0
mov dword [0x4cd280], eax
push ebx
mov ebx, 0x4cd170
push esi
push edi
cmp dword [ebx], 0
jne 0x40118f
mov dword [0x4cd290], str.NULL_input_line
mov dword [0x4cd178], 0xff
jmp 0x402c26
inc dword [ebx]
mov edx, dword [ebx]
xor eax, eax
mov al, byte [edx]
cmp eax, 0x20
je 0x40118d
cmp eax, 9
je 0x40118d
mov edx, dword [ebx]
cmp byte [edx], 0
je 0x4011b1
mov ecx, dword [ebx]
xor eax, eax
mov al, byte [ecx]
cmp eax, 0x3b
jne 0x4011be
xor edx, edx
mov dword [0x4cd178], edx
jmp 0x402c26
mov ecx, dword [ebx]
mov dword [0x4cd174], ecx
mov eax, dword [ebx]
xor edx, edx
mov dl, byte [eax]
push edx
call fcn.004a7b90
pop ecx
test eax, eax
jne 0x4011f1
mov ecx, dword [ebx]
xor eax, eax
mov al, byte [ecx]
cmp eax, 0x5f
je 0x4011f1
mov edx, dword [ebx]
xor ecx, ecx
mov cl, byte [edx]
cmp ecx, 0x40
jne 0x402298
mov eax, dword [ebx]
mov dl, byte [eax]
mov byte [0x4cd180], dl
inc dword [ebx]
mov dword [ebp - 4], 1
mov edi, 0x4cd181
jmp 0x401217
mov eax, dword [ebx]
mov dl, byte [eax]
mov byte [edi], dl
inc dword [ebx]
inc dword [ebp - 4]
inc edi
mov ecx, dword [ebx]
xor eax, eax
mov al, byte [ecx]
push eax
call fcn.004a7b64
pop ecx
test eax, eax
jne 0x40123e
mov edx, dword [ebx]
xor ecx, ecx
mov cl, byte [edx]
cmp ecx, 0x5f
je 0x40123e
mov eax, dword [ebx]
xor edx, edx
mov dl, byte [eax]
cmp edx, 0x40
jne 0x401247
cmp dword [ebp - 4], 0x100
jl 0x40120b
cmp dword [ebp - 4], 0x100
jl 0x401269
mov dword [0x4cd290], str.Too_long_identifier
mov dword [0x4cd178], 0xff
jmp 0x402c26
mov ecx, dword [ebp - 4]
mov byte [ecx + 0x4cd180], 0
jmp 0x401277
inc dword [ebx]
mov eax, dword [ebx]
movzx eax, byte [eax]
cmp eax, 0x20
je 0x401275
cmp eax, 9
je 0x401275
xor eax, eax
or ecx, 0xffffffff
mov edi, 0x4cd180
lea esi, [ebp - 0x140]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
xchg edi, esi
shr ecx, 2
mov eax, edi
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
lea eax, [ebp - 0x140]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push eax
call fcn.004a9850
pop ecx
xor esi, esi
mov edi, 0x4c2608
lea eax, [ebp - 0x140]
mov edx, dword [edi]
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x4012fd
test cl, cl
je 0x4012e6
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x4012fd
add eax, 2
add edx, 2
test cl, cl
jne 0x4012ca
jne 0x4012fd
mov dword [0x4cd280], esi
mov dword [0x4cd178], 1
jmp 0x402c26
inc esi
add edi, 4
cmp esi, 8
jle 0x4012c2
xor esi, esi
mov edi, 0x4c262c
lea eax, [ebp - 0x140]
mov edx, dword [edi]
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x401348
test cl, cl
je 0x401331
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x401348
add eax, 2
add edx, 2
test cl, cl
jne 0x401315
jne 0x401348
mov dword [0x4cd280], esi
mov dword [0x4cd178], 2
jmp 0x402c26
inc esi
add edi, 4
cmp esi, 8
jle 0x40130d
xor esi, esi
mov edi, 0x4c2650
lea eax, [ebp - 0x140]
mov edx, dword [edi]
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x401393
test cl, cl
je 0x40137c
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x401393
add eax, 2
add edx, 2
test cl, cl
jne 0x401360
jne 0x401393
mov dword [0x4cd280], esi
mov dword [0x4cd178], 3
jmp 0x402c26
inc esi
add edi, 4
cmp esi, 8
jle 0x401358
lea eax, [ebp - 0x140]
mov edx, 0x4b0158
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x4013de
test cl, cl
je 0x4013c3
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x4013de
add eax, 2
add edx, 2
test cl, cl
jne 0x4013a7
jne 0x4013de
mov dword [0x4cd280], 9
mov dword [0x4cd178], 3
jmp 0x402c26
lea eax, [ebp - 0x140]
mov edx, 0x4b015b
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x401420
test cl, cl
je 0x401405
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x401420
add eax, 2
add edx, 2
test cl, cl
jne 0x4013e9
jne 0x401420
mov dword [0x4cd280], 0xa
mov dword [0x4cd178], 3
jmp 0x402c26
xor esi, esi
mov edi, 0x4c2674
lea eax, [ebp - 0x140]
mov edx, dword [edi]
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x401475
test cl, cl
je 0x40144b
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x401475
add eax, 2
add edx, 2
test cl, cl
jne 0x40142f
jne 0x401475
mov dword [0x4cd280], esi
mov dword [0x4cd178], 4
jmp 0x401461
inc dword [ebx]
mov eax, dword [ebx]
movzx eax, byte [eax]
cmp eax, 0x20
je 0x40145f
cmp eax, 9
je 0x40145f
jmp 0x402c26
inc esi
add edi, 4
cmp esi, 6
jl 0x401427
lea eax, [ebp - 0x140]
mov edx, 0x4b015e
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x40157a
test cl, cl
je 0x4014ad
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x40157a
add eax, 2
add edx, 2
test cl, cl
jne 0x401489
jne 0x40157a
mov edi, dword [ebx]
push 1
call fcn.00401150
pop ecx
cmp dword [0x4cd178], 0x40
jne 0x4014cf
cmp dword [0x4cd280], 0x28
je 0x4014e7
mov dword [ebx], edi
xor eax, eax
mov dword [0x4cd280], eax
mov dword [0x4cd178], 5
jmp 0x402c26
push 1
call fcn.00401150
pop ecx
mov esi, dword [0x4cd280]
cmp dword [0x4cd178], 0x1a
je 0x401507
cmp dword [0x4cd178], 0x1b
jne 0x401519
cmp dword [0x4cd280], 0
jl 0x401519
cmp dword [0x4cd280], 7
jle 0x401532
mov dword [0x4cd290], str.FPU_registers_have_indexes_0_to_7
mov dword [0x4cd178], 0xff
jmp 0x402c26
push 1
call fcn.00401150
pop ecx
cmp dword [0x4cd178], 0x40
jne 0x40154c
cmp dword [0x4cd280], 0x29
je 0x401565
mov dword [0x4cd290], str.Closing_parenthesis_expected
mov dword [0x4cd178], 0xff
jmp 0x402c26
mov dword [0x4cd280], esi
mov dword [0x4cd178], 5
jmp 0x402c26
xor esi, esi
mov edi, 0x4c2758
lea eax, [ebp - 0x140]
mov edx, dword [edi]
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x4015bc
test cl, cl
je 0x4015a5
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x4015bc
add eax, 2
add edx, 2
test cl, cl
jne 0x401589
jne 0x4015bc
mov dword [0x4cd280], esi
mov dword [0x4cd178], 5
jmp 0x402c26
inc esi
add edi, 4
cmp esi, 8
jle 0x401581
xor esi, esi
mov edi, 0x4c277c
lea eax, [ebp - 0x140]
mov edx, dword [edi]
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x401607
test cl, cl
je 0x4015f0
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x401607
add eax, 2
add edx, 2
test cl, cl
jne 0x4015d4
jne 0x401607
mov dword [0x4cd280], esi
mov dword [0x4cd178], 6
jmp 0x402c26
inc esi
add edi, 4
cmp esi, 8
jle 0x4015cc
xor esi, esi
mov edi, 0x4c27a0
lea eax, [ebp - 0x140]
mov edx, dword [edi]
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x401652
test cl, cl
je 0x40163b
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x401652
add eax, 2
add edx, 2
test cl, cl
jne 0x40161f
jne 0x401652
mov dword [0x4cd280], esi
mov dword [0x4cd178], 7
jmp 0x402c26
inc esi
add edi, 4
cmp esi, 8
jle 0x401617
xor esi, esi
mov edi, 0x4c27c4
lea eax, [ebp - 0x140]
mov edx, dword [edi]
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x40169d
test cl, cl
je 0x401686
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x40169d
add eax, 2
add edx, 2
test cl, cl
jne 0x40166a
jne 0x40169d
mov dword [0x4cd280], esi
mov dword [0x4cd178], 8
jmp 0x402c26
inc esi
add edi, 4
cmp esi, 8
jle 0x401662
xor esi, esi
mov edi, 0x4c27e8
lea eax, [ebp - 0x140]
mov edx, dword [edi]
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x4016e8
test cl, cl
je 0x4016d1
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x4016e8
add eax, 2
add edx, 2
test cl, cl
jne 0x4016b5
jne 0x4016e8
mov dword [0x4cd280], esi
mov dword [0x4cd178], 9
jmp 0x402c26
inc esi
add edi, 4
cmp esi, 8
jle 0x4016ad
xor esi, esi
mov edi, 0x4c2694
lea eax, [ebp - 0x140]
mov edx, dword [edi]
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x401748
test cl, cl
je 0x40171c
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x401748
add eax, 2
add edx, 2
test cl, cl
jne 0x401700
jne 0x401748
mov edi, dword [ebx]
push 1
call fcn.00401150
pop ecx
cmp dword [0x4cd178], 0x14
je 0x401733
mov dword [ebx], edi
mov dword [0x4cd280], esi
mov dword [0x4cd178], 0xa
jmp 0x402c26
inc esi
add edi, 4
cmp esi, 0x11
jl 0x4016f8
lea eax, [ebp - 0x140]
mov edx, str.XMMWORD
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x4017a8
test cl, cl
je 0x401778
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x4017a8
add eax, 2
add edx, 2
test cl, cl
jne 0x40175c
jne 0x4017a8
mov edi, dword [ebx]
push 1
call fcn.00401150
pop ecx
cmp dword [0x4cd178], 0x14
je 0x40178f
mov dword [ebx], edi
mov dword [0x4cd280], 0x10
mov dword [0x4cd178], 0xa
jmp 0x402c26
lea eax, [ebp - 0x140]
mov edx, 0x4b01a8
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x4017e7
test cl, cl
je 0x4017cf
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x4017e7
add eax, 2
add edx, 2
test cl, cl
jne 0x4017b3
jne 0x4017e7
mov dword [0x4cd178], 0x1e
xor eax, eax
mov dword [0x4cd280], eax
jmp 0x402c26
lea eax, [ebp - 0x140]
mov edx, 0x4b01ac
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x401829
test cl, cl
je 0x40180e
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x401829
add eax, 2
add edx, 2
test cl, cl
jne 0x4017f2
jne 0x401829
mov dword [0x4cd178], 0xb
mov dword [0x4cd280], 1
jmp 0x402c26
lea eax, [ebp - 0x140]
mov edx, str.LONG
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x40186b
test cl, cl
je 0x401850
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x40186b
add eax, 2
add edx, 2
test cl, cl
jne 0x401834
jne 0x40186b
mov dword [0x4cd178], 0xb
mov dword [0x4cd280], 2
jmp 0x402c26
lea eax, [ebp - 0x140]
mov edx, 0x4b01b7
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x4018ad
test cl, cl
je 0x401892
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x4018ad
add eax, 2
add edx, 2
test cl, cl
jne 0x401876
jne 0x4018ad
mov dword [0x4cd178], 0xb
mov dword [0x4cd280], 4
jmp 0x402c26
lea eax, [ebp - 0x140]
mov edx, 0x4b01bc
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x4018ef
test cl, cl
je 0x4018d4
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x4018ef
add eax, 2
add edx, 2
test cl, cl
jne 0x4018b8
jne 0x4018ef
mov dword [0x4cd178], 0xb
mov dword [0x4cd280], 8
jmp 0x402c26
lea eax, [ebp - 0x140]
mov edx, str.LOCAL
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x4019ab
test cl, cl
je 0x40191e
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x4019ab
add eax, 2
add edx, 2
test cl, cl
jne 0x4018fa
jne 0x4019ab
mov eax, dword [ebx]
xor edx, edx
mov dl, byte [eax]
cmp edx, 0x2e
jne 0x4019ab
inc dword [ebx]
jmp 0x401935
inc dword [ebx]
mov ecx, dword [ebx]
xor eax, eax
mov al, byte [ecx]
cmp eax, 0x20
je 0x401933
cmp eax, 9
je 0x401933
mov edx, dword [ebx]
xor ecx, ecx
mov cl, byte [edx]
push ecx
call fcn.004a7bbc
pop ecx
test eax, eax
jne 0x40198b
mov dword [0x4cd290], str.Integer_number_expected
mov dword [0x4cd178], 0xff
jmp 0x402c26
mov eax, dword [0x4cd280]
mov edx, dword [ebx]
add eax, eax
xor ecx, ecx
mov cl, byte [edx]
lea eax, [eax + eax*4]
add eax, ecx
add eax, 0xffffffd0
mov dword [0x4cd280], eax
inc dword [ebx]
mov eax, dword [ebx]
xor edx, edx
mov dl, byte [eax]
push edx
call fcn.004a7bbc
pop ecx
test eax, eax
jne 0x40196f
mov dword [0x4cd178], 0xc
jmp 0x402c26
lea eax, [ebp - 0x140]
mov edx, 0x4b01de
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x401a73
test cl, cl
je 0x4019da
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x401a73
add eax, 2
add edx, 2
test cl, cl
jne 0x4019b6
jne 0x401a73
mov eax, dword [ebx]
xor edx, edx
mov dl, byte [eax]
cmp edx, 0x2e
jne 0x401a73
inc dword [ebx]
jmp 0x4019f5
inc dword [ebx]
mov ecx, dword [ebx]
xor eax, eax
mov al, byte [ecx]
cmp eax, 0x20
je 0x4019f3
mov edx, dword [ebx]
xor ecx, ecx
mov cl, byte [edx]
cmp ecx, 9
je 0x4019f3
mov eax, dword [ebx]
xor edx, edx
mov dl, byte [eax]
push edx
call fcn.004a7bbc
pop ecx
test eax, eax
jne 0x401a53
mov dword [0x4cd290], str.Integer_number_expected
mov dword [0x4cd178], 0xff
jmp 0x402c26
mov ecx, dword [0x4cd280]
mov eax, dword [ebx]
add ecx, ecx
xor edx, edx
mov dl, byte [eax]
lea ecx, [ecx + ecx*4]
add ecx, edx
add ecx, 0xffffffd0
mov dword [0x4cd280], ecx
inc dword [ebx]
mov ecx, dword [ebx]
xor eax, eax
mov al, byte [ecx]
push eax
call fcn.004a7bbc
pop ecx
test eax, eax
jne 0x401a35
mov dword [0x4cd178], 0xd
jmp 0x402c26
lea eax, [ebp - 0x140]
mov edx, 0x4b01e2
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x401aab
test cl, cl
je 0x401a9a
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x401aab
add eax, 2
add edx, 2
test cl, cl
jne 0x401a7e
jne 0x401aab
mov dword [0x4cd178], 0x15
jmp 0x402c26
lea eax, [ebp - 0x140]
mov edx, str.REPE
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x401ad2
test cl, cl
je 0x401afd
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x401ad2
add eax, 2
add edx, 2
test cl, cl
jne 0x401ab6
je 0x401afd
lea eax, [ebp - 0x140]
mov edx, str.REPZ
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x401b0c
test cl, cl
je 0x401afb
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x401b0c
add eax, 2
add edx, 2
test cl, cl
jne 0x401adf
jne 0x401b0c
mov dword [0x4cd178], 0x16
jmp 0x402c26
lea eax, [ebp - 0x140]
mov edx, 0x4b01f0
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x401b33
test cl, cl
je 0x401b5e
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x401b33
add eax, 2
add edx, 2
test cl, cl
jne 0x401b17
je 0x401b5e
lea eax, [ebp - 0x140]
mov edx, str.REPNZ
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x401b6d
test cl, cl
je 0x401b5c
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x401b6d
add eax, 2
add edx, 2
test cl, cl
jne 0x401b40
jne 0x401b6d
mov dword [0x4cd178], 0x17
jmp 0x402c26
lea eax, [ebp - 0x140]
mov edx, 0x4b01fc
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x401ba5
test cl, cl
je 0x401b94
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x401ba5
add eax, 2
add edx, 2
test cl, cl
jne 0x401b78
jne 0x401ba5
mov dword [0x4cd178], 0x18
jmp 0x402c26
lea eax, [ebp - 0x140]
mov edx, 0x4b0201
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x401bdd
test cl, cl
je 0x401bcc
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x401bdd
add eax, 2
add edx, 2
test cl, cl
jne 0x401bb0
jne 0x401bdd
mov dword [0x4cd178], 0x14
jmp 0x402c26
lea eax, [ebp - 0x140]
mov edx, 0x4b0205
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x401c04
test cl, cl
je 0x401c2f
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x401c04
add eax, 2
add edx, 2
test cl, cl
jne 0x401be8
je 0x401c2f
lea eax, [ebp - 0x140]
mov edx, 0x4b020b
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x401c3e
test cl, cl
je 0x401c2d
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x401c3e
add eax, 2
add edx, 2
test cl, cl
jne 0x401c11
jne 0x401c3e
mov dword [0x4cd178], 0x1c
jmp 0x402c26
lea eax, [ebp - 0x140]
mov edx, str.SIGNED
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x401c76
test cl, cl
je 0x401c65
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x401c76
add eax, 2
add edx, 2
test cl, cl
jne 0x401c49
jne 0x401c76
mov dword [0x4cd178], 0x1f
jmp 0x402c26
lea eax, [ebp - 0x140]
mov edx, str.UNSIGNED
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x401cae
test cl, cl
je 0x401c9d
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x401cae
add eax, 2
add edx, 2
test cl, cl
jne 0x401c81
jne 0x401cae
mov dword [0x4cd178], 0x20
jmp 0x402c26
lea eax, [ebp - 0x140]
mov edx, 0x4b0222
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x401ce6
test cl, cl
je 0x401cd5
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x401ce6
add eax, 2
add edx, 2
test cl, cl
jne 0x401cb9
jne 0x401ce6
mov dword [0x4cd178], 0x21
jmp 0x402c26
lea eax, [ebp - 0x140]
mov edx, 0x4b0227
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x401d1e
test cl, cl
je 0x401d0d
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x401d1e
add eax, 2
add edx, 2
test cl, cl
jne 0x401cf1
jne 0x401d1e
mov dword [0x4cd178], 0x22
jmp 0x402c26
lea eax, [ebp - 0x140]
mov edx, str.DOUBLE
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x401d56
test cl, cl
je 0x401d45
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x401d56
add eax, 2
add edx, 2
test cl, cl
jne 0x401d29
jne 0x401d56
mov dword [0x4cd178], 0x23
jmp 0x402c26
lea eax, [ebp - 0x140]
mov edx, str.FLOAT10
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x401d8e
test cl, cl
je 0x401d7d
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x401d8e
add eax, 2
add edx, 2
test cl, cl
jne 0x401d61
jne 0x401d8e
mov dword [0x4cd178], 0x24
jmp 0x402c26
lea eax, [ebp - 0x140]
mov edx, 0x4b023c
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x401dc6
test cl, cl
je 0x401db5
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x401dc6
add eax, 2
add edx, 2
test cl, cl
jne 0x401d99
jne 0x401dc6
mov dword [0x4cd178], 0x25
jmp 0x402c26
lea eax, [ebp - 0x140]
mov edx, 0x4b0243
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x401dfe
test cl, cl
je 0x401ded
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x401dfe
add eax, 2
add edx, 2
test cl, cl
jne 0x401dd1
jne 0x401dfe
mov dword [0x4cd178], 0x26
jmp 0x402c26
lea eax, [ebp - 0x140]
mov edx, 0x4b024b
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x401e36
test cl, cl
je 0x401e25
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x401e36
add eax, 2
add edx, 2
test cl, cl
jne 0x401e09
jne 0x401e36
mov dword [0x4cd178], 0x27
jmp 0x402c26
lea eax, [ebp - 0x140]
mov edx, str.WINTEXT
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x401e5d
test cl, cl
je 0x401e88
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x401e5d
add eax, 2
add edx, 2
test cl, cl
jne 0x401e41
je 0x401e88
lea eax, [ebp - 0x140]
mov edx, str.GETWINDOWTEXT
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x401e97
test cl, cl
je 0x401e86
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x401e97
add eax, 2
add edx, 2
test cl, cl
jne 0x401e6a
jne 0x401e97
mov dword [0x4cd178], 0x2b
jmp 0x402c26
lea eax, [ebp - 0x140]
mov edx, 0x4b0265
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x401ed9
test cl, cl
je 0x401ebe
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x401ed9
add eax, 2
add edx, 2
test cl, cl
jne 0x401ea2
jne 0x401ed9
mov dword [0x4cd178], 0x29
mov dword [0x4cd280], 1
jmp 0x402c26
lea eax, [ebp - 0x140]
mov edx, 0x4b0268
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x401f1b
test cl, cl
je 0x401f00
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x401f1b
add eax, 2
add edx, 2
test cl, cl
jne 0x401ee4
jne 0x401f1b
mov dword [0x4cd178], 0x29
mov dword [0x4cd280], 2
jmp 0x402c26
lea eax, [ebp - 0x140]
mov edx, 0x4b026b
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x401f5d
test cl, cl
je 0x401f42
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x401f5d
add eax, 2
add edx, 2
test cl, cl
jne 0x401f26
jne 0x401f5d
mov dword [0x4cd178], 0x29
mov dword [0x4cd280], 4
jmp 0x402c26
lea eax, [ebp - 0x140]
mov edx, 0x4b026e
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x401f9f
test cl, cl
je 0x401f84
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x401f9f
add eax, 2
add edx, 2
test cl, cl
jne 0x401f68
jne 0x401f9f
mov dword [0x4cd178], 0x29
mov dword [0x4cd280], 8
jmp 0x402c26
lea eax, [ebp - 0x140]
mov edx, 0x4b0271
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x401fe1
test cl, cl
je 0x401fc6
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x401fe1
add eax, 2
add edx, 2
test cl, cl
jne 0x401faa
jne 0x401fe1
mov dword [0x4cd178], 0x29
mov dword [0x4cd280], 0xa
jmp 0x402c26
lea eax, [ebp - 0x140]
mov edx, 0x4b0274
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x402008
test cl, cl
je 0x40200a
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x402008
add eax, 2
add edx, 2
test cl, cl
jne 0x401fec
jne 0x402072
test byte [ebp + 8], 4
je 0x402027
mov eax, dword [ebp - 4]
mov dword [0x4cd280], eax
mov dword [0x4cd178], 0x19
jmp 0x402c26
xor eax, eax
mov dword [0x4cd280], 0x4e49
mov dword [0x4cd17c], 1
lea edi, [ebp - 0x140]
or ecx, 0xffffffff
mov esi, 0x4cd180
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
xchg edi, esi
shr ecx, 2
mov eax, edi
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov dword [0x4cd178], 0x40
jmp 0x402c26
test byte [ebp + 8], 1
je 0x40208f
mov eax, dword [ebp - 4]
mov dword [0x4cd280], eax
mov dword [0x4cd178], 0x19
jmp 0x402c26
push 0x4cd280
lea edx, [ebp - 0x140]
push edx
call fcn.0040dabc
add esp, 8
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jne 0x4020bb
mov dword [0x4cd178], 0x1a
jmp 0x402c26
cmp dword [ebp - 4], 1
jne 0x4020da
mov dword [0x4cd290], str.Ambiguous_constant
mov dword [0x4cd178], 0xff
jmp 0x402c26
mov ecx, dword [ebx]
xor eax, eax
mov al, byte [ecx]
cmp eax, 0x2e
jne 0x4021d9
mov edx, dword [ebx]
xor ecx, ecx
mov cl, byte [edx + 1]
cmp ecx, 0x2e
je 0x4021d9
mov edi, dword [0x4d7218]
test edi, edi
jne 0x40211c
mov dword [0x4cd290], str.Unable_to_process_label
mov dword [0x4cd178], 0xff
jmp 0x402c26
cmp dword [ebp - 4], 8
jle 0x40213b
mov dword [0x4cd290], str.Unknown_module
mov dword [0x4cd178], 0xff
jmp 0x402c26
xor esi, esi
jmp 0x40215f
push 8
lea eax, [ebp - 0x140]
push eax
lea edx, [edi + 0x48]
push edx
call fcn.004a3954
add esp, 0xc
test eax, eax
je 0x402167
inc esi
add edi, 0x465
cmp esi, dword [0x4d7200]
jl 0x40213f
cmp esi, dword [0x4d7200]
jl 0x402188
mov dword [0x4cd290], str.Unknown_module
mov dword [0x4cd178], 0xff
jmp 0x402c26
inc dword [ebx]
push 3
call fcn.00401150
pop ecx
cmp dword [0x4cd178], 0xff
je 0x402c26
cmp dword [0x4cd178], 0x19
je 0x4021cd
cmp dword [0x4cd178], 0x41
je 0x4021cd
mov dword [0x4cd290], str.Label_expected
mov dword [0x4cd178], 0xff
jmp 0x402c26
mov ebx, dword [edi]
mov eax, dword [edi + 4]
add eax, ebx
mov dword [ebp - 0x14], eax
jmp 0x4021ec
mov dword [0x4cd178], 0x19
xor ebx, ebx
mov dword [ebp - 0x14], 0xffffffff
cmp dword [0x4cd178], 0x19
jne 0x40224c
mov eax, dword [ebp - 0x14]
lea edx, [ebp - 0x10]
push eax
push ebx
push edx
push 0x4cd180
call sym.ollydbg.exe__Findlabelbyname
add esp, 0x10
mov esi, eax
test esi, esi
jne 0x40222a
mov dword [0x4cd290], str.Unknown_identifier
mov dword [0x4cd178], 0xff
jmp 0x402c26
cmp esi, 0x35
jne 0x402280
test ebx, ebx
je 0x402280
mov dword [0x4cd290], str.Constant_has_no_associated_module
mov dword [0x4cd178], 0xff
jmp 0x402c26
mov eax, dword [ebp - 0x14]
push eax
push ebx
push 0x4cd180
call sym.ollydbg.exe__Findimportbyname
add esp, 0xc
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jne 0x402280
mov dword [0x4cd290], str.Unknown_import_name
mov dword [0x4cd178], 0xff
jmp 0x402c26
mov edx, dword [ebp - 0x10]
mov dword [0x4cd280], edx
mov dword [0x4cd178], 0x1a
jmp 0x402c26
mov ecx, dword [ebx]
xor eax, eax
mov al, byte [ecx]
push eax
call fcn.004a7bbc
pop ecx
test eax, eax
je 0x402609
xor eax, eax
xor edx, edx
mov dword [ebp - 8], edx
xor ecx, ecx
mov edi, eax
mov esi, eax
xor eax, eax
mov dword [ebp - 0xc], ecx
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
mov word [ebp - 0x18], ax
xor ecx, ecx
mov edx, dword [ebx]
mov cl, byte [edx]
cmp ecx, 0x30
jne 0x4022f7
mov eax, dword [ebx]
xor edx, edx
mov dl, byte [eax + 1]
mov dword [ebp - 0x30], edx
mov ecx, dword [ebp - 0x30]
push ecx
call fcn.004a98c8
pop ecx
cmp eax, 0x58
jne 0x4022f7
mov dword [ebp - 8], 0x10
add dword [ebx], 2
mov eax, dword [ebx]
xor edx, edx
mov dl, byte [eax]
push edx
call fcn.004a7bbc
pop ecx
test eax, eax
je 0x402354
mov eax, dword [ebx]
mov ecx, esi
add ecx, ecx
movzx eax, byte [eax]
fld xword [ebp - 0x20]
lea ecx, [ecx + ecx*4]
add ecx, eax
add ecx, 0xffffffd0
mov esi, ecx
fmul dword [0x402c30]
mov dword [ebp - 0x144], eax
fild dword [ebp - 0x144]
faddp st(1)
fsub dword [0x402c34]
fstp xword [ebp - 0x20]
shl edi, 4
add edi, eax
add edi, 0xffffffd0
cmp dword [ebp - 0xc], 0
jne 0x402350
mov dword [ebp - 0xc], 9
inc dword [ebx]
jmp 0x4022f7
mov edx, dword [ebx]
xor ecx, ecx
mov cl, byte [edx]
push ecx
call fcn.004a7c50
pop ecx
test eax, eax
je 0x402390
mov eax, dword [ebx]
xor edx, edx
mov dl, byte [eax]
mov dword [ebp - 0x34], edx
inc dword [ebx]
mov ecx, dword [ebp - 0x34]
push ecx
call fcn.004a98c8
shl edi, 4
pop ecx
add eax, edi
add eax, 0xffffffc9
mov dword [ebp - 0xc], 0xf
mov edi, eax
jmp 0x4022f7
cmp dword [ebp - 0xc], 0
jne 0x4023af
mov dword [0x4cd290], str.Hexadecimal_digits_after_0x..._expected
mov dword [0x4cd178], 0xff
jmp 0x402c26
mov eax, dword [ebx]
xor edx, edx
mov dl, byte [eax]
mov dword [ebp - 0x38], edx
mov ecx, dword [ebp - 0x38]
push ecx
call fcn.004a98c8
pop ecx
cmp eax, 0x48
jne 0x402417
cmp dword [ebp - 8], 0x10
jne 0x4023e6
mov dword [0x4cd290], str.Please_dont_mix_0xXXXX_and_XXXXh_forms
mov dword [0x4cd178], 0xff
jmp 0x402c26
inc dword [ebx]
mov dword [0x4cd280], edi
mov dword [0x4cd178], 0x1a
jmp 0x4023fc
inc dword [ebx]
mov eax, dword [ebx]
xor edx, edx
mov dl, byte [eax]
cmp edx, 0x20
je 0x4023fa
mov ecx, dword [ebx]
xor eax, eax
mov al, byte [ecx]
cmp eax, 9
je 0x4023fa
jmp 0x402c26
mov edx, dword [ebx]
xor ecx, ecx
mov cl, byte [edx]
cmp ecx, 0x2e
jne 0x4025e0
mov eax, dword [ebx]
xor edx, edx
mov dl, byte [eax + 1]
cmp edx, 0x2e
je 0x4025e0
cmp dword [ebp - 8], 0x10
je 0x402442
cmp dword [ebp - 0xc], 9
jle 0x40245b
mov dword [0x4cd290], str.Not_a_decimal_number
mov dword [0x4cd178], 0xff
jmp 0x402c26
inc dword [ebx]
mov ecx, dword [ebx]
xor eax, eax
mov al, byte [ecx]
push eax
call fcn.004a7bbc
pop ecx
test eax, eax
jne 0x40248a
mov edx, dword [ebx]
xor ecx, ecx
mov cl, byte [edx]
mov dword [ebp - 0x3c], ecx
mov eax, dword [ebp - 0x3c]
push eax
call fcn.004a98c8
pop ecx
cmp eax, 0x45
jne 0x4025b8
xor edx, edx
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], 0x80000000
mov word [ebp - 0x24], 0x3fff
jmp 0x4024d0
fld xword [0x402c38]
fld xword [ebp - 0x2c]
fmulp st(1)
fstp xword [ebp - 0x2c]
mov ecx, dword [ebx]
xor eax, eax
mov al, byte [ecx]
add eax, 0xffffffd0
mov dword [ebp - 0x144], eax
fild dword [ebp - 0x144]
fld xword [ebp - 0x2c]
fmulp st(1)
fld xword [ebp - 0x20]
faddp st(1)
fstp xword [ebp - 0x20]
inc dword [ebx]
mov edx, dword [ebx]
xor ecx, ecx
mov cl, byte [edx]
push ecx
call fcn.004a7bbc
pop ecx
test eax, eax
jne 0x40249e
mov eax, dword [ebx]
xor edx, edx
mov dl, byte [eax]
mov dword [ebp - 0x40], edx
mov ecx, dword [ebp - 0x40]
push ecx
call fcn.004a98c8
pop ecx
cmp eax, 0x45
jne 0x40258c
inc dword [ebx]
mov eax, dword [ebx]
xor edx, edx
mov dl, byte [eax]
cmp edx, 0x2d
jne 0x402515
mov dword [ebp - 8], 0xffffffff
inc dword [ebx]
jmp 0x40251c
mov dword [ebp - 8], 1
mov ecx, dword [ebx]
xor eax, eax
mov al, byte [ecx]
push eax
call fcn.004a7bbc
pop ecx
test eax, eax
jne 0x402546
mov dword [0x4cd290], str.Invalid_exponent
mov dword [0x4cd178], 0xff
jmp 0x402c26
xor esi, esi
jmp 0x402568
cmp esi, 0x10000
jge 0x402568
mov eax, esi
mov edx, dword [ebx]
add eax, eax
xor ecx, ecx
mov cl, byte [edx]
lea eax, [eax + eax*4]
add eax, ecx
add eax, 0xffffffd0
inc dword [ebx]
mov esi, eax
mov eax, dword [ebx]
xor edx, edx
mov dl, byte [eax]
push edx
call fcn.004a7bbc
pop ecx
test eax, eax
jne 0x40254a
imul esi, dword [ebp - 8]
push esi
call fcn.004aa660
fld xword [ebp - 0x20]
fmulp st(1)
pop ecx
fstp xword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
mov dword [0x4cd284], ecx
mov ecx, dword [ebp - 0x1c]
mov dword [0x4cd288], ecx
mov cx, word [ebp - 0x18]
mov word [0x4cd28c], cx
mov dword [0x4cd178], 0x1d
jmp 0x402c26
mov dword [0x4cd280], esi
mov dword [0x4cd178], 0x1b
jmp 0x4025cc
inc dword [ebx]
mov eax, dword [ebx]
movzx eax, byte [eax]
cmp eax, 0x20
je 0x4025ca
cmp eax, 9
je 0x4025ca
jmp 0x402c26
mov dword [0x4cd280], edi
mov dword [0x4cd178], 0x1a
jmp 0x4025f4
inc dword [ebx]
mov edx, dword [ebx]
xor eax, eax
mov al, byte [edx]
cmp eax, 0x20
je 0x4025f2
cmp eax, 9
je 0x4025f2
jmp 0x402c26
mov edx, dword [ebx]
xor ecx, ecx
mov cl, byte [edx]
cmp ecx, 0x27
jne 0x4026da
inc dword [ebx]
mov eax, dword [ebx]
cmp byte [eax], 0
je 0x402634
mov edx, dword [ebx]
xor ecx, ecx
mov cl, byte [edx]
cmp ecx, 0x5c
jne 0x40264d
mov eax, dword [ebx]
cmp byte [eax + 1], 0
jne 0x40264d
mov dword [0x4cd290], str.Unterminated_character_constant
mov dword [0x4cd178], 0xff
jmp 0x402c26
mov edx, dword [ebx]
xor ecx, ecx
mov cl, byte [edx]
cmp ecx, 0x27
jne 0x402671
mov dword [0x4cd290], str.Empty_character_constant
mov dword [0x4cd178], 0xff
jmp 0x402c26
mov eax, dword [ebx]
xor edx, edx
mov dl, byte [eax]
cmp edx, 0x5c
jne 0x40267e
inc dword [ebx]
mov ecx, dword [ebx]
xor eax, eax
mov al, byte [ecx]
mov dword [0x4cd280], eax
inc dword [ebx]
mov edx, dword [ebx]
xor ecx, ecx
mov cl, byte [edx]
cmp ecx, 0x27
je 0x4026af
mov dword [0x4cd290], str.Unterminated_character_constant
mov dword [0x4cd178], 0xff
jmp 0x402c26
inc dword [ebx]
jmp 0x4026b5
inc dword [ebx]
mov eax, dword [ebx]
xor edx, edx
mov dl, byte [eax]
cmp edx, 0x20
je 0x4026b3
mov ecx, dword [ebx]
xor eax, eax
mov al, byte [ecx]
cmp eax, 9
je 0x4026b3
mov dword [0x4cd178], 0x1a
jmp 0x402c26
mov edx, dword [ebx]
xor ecx, ecx
mov cl, byte [edx]
cmp ecx, 0x22
jne 0x402820
inc dword [ebx]
xor eax, eax
mov dword [0x4cd280], eax
jmp 0x4027f4
mov edx, dword [ebx]
mov al, byte [edx]
test al, al
jne 0x402718
mov dword [0x4cd290], str.Unterminated_string
mov dword [0x4cd178], 0xff
jmp 0x402c26
xor edx, edx
mov dl, al
cmp edx, 0x22
jne 0x402728
inc dword [ebx]
jmp 0x402804
mov ecx, dword [ebx]
xor eax, eax
mov al, byte [ecx]
cmp eax, 0x5c
jne 0x4027dd
inc dword [ebx]
mov edx, dword [ebx]
mov dl, byte [edx]
test dl, dl
jne 0x40275a
mov dword [0x4cd290], str.Unterminated_string
mov dword [0x4cd178], 0xff
jmp 0x402c26
xor eax, eax
mov al, dl
cmp eax, 0x74
jne 0x402772
mov ecx, dword [0x4cd280]
mov byte [ecx + 0x4cd180], 9
jmp 0x4027d9
cmp eax, 0x6e
jne 0x402785
mov eax, dword [0x4cd280]
mov byte [eax + 0x4cd180], 0xa
jmp 0x4027d9
cmp eax, 0x72
jne 0x402799
mov edx, dword [0x4cd280]
mov byte [edx + 0x4cd180], 0xd
jmp 0x4027d9
cmp eax, 0x5c
jne 0x4027ad
mov ecx, dword [0x4cd280]
mov byte [ecx + 0x4cd180], 0x5c
jmp 0x4027d9
cmp eax, 0x22
jne 0x4027c0
mov eax, dword [0x4cd280]
mov byte [eax + 0x4cd180], 0x22
jmp 0x4027d9
mov dword [0x4cd290], str.Unknown_character_sequence
mov dword [0x4cd178], 0xff
jmp 0x402c26
inc dword [ebx]
jmp 0x4027ee
mov edx, dword [ebx]
mov eax, dword [0x4cd280]
mov cl, byte [edx]
mov byte [eax + 0x4cd180], cl
inc dword [ebx]
inc dword [0x4cd280]
cmp dword [0x4cd280], 0xff
jb 0x4026f7
mov edx, dword [0x4cd280]
mov byte [edx + 0x4cd180], 0
mov dword [0x4cd178], 0x28
jmp 0x402c26
mov ecx, dword [ebx]
xor edx, edx
mov al, byte [ecx]
xor ecx, ecx
mov byte [0x4cd180], al
mov dl, al
mov dword [0x4cd280], edx
inc dword [ebx]
mov byte [0x4cd182], cl
mov byte [0x4cd181], cl
cmp dword [0x4cd280], 0x7c
jne 0x40287c
mov eax, dword [ebx]
xor edx, edx
mov dl, byte [eax]
cmp edx, 0x7c
jne 0x40287c
mov dword [0x4cd280], 0x7c7c
mov dword [0x4cd17c], 0xa
mov eax, dword [ebx]
mov dl, byte [eax]
mov byte [0x4cd181], dl
inc dword [ebx]
jmp 0x402c1c
cmp dword [0x4cd280], 0x26
jne 0x4028b5
mov ecx, dword [ebx]
xor eax, eax
mov al, byte [ecx]
cmp eax, 0x26
jne 0x4028b5
mov dword [0x4cd280], 0x2626
mov dword [0x4cd17c], 9
mov edx, dword [ebx]
mov cl, byte [edx]
mov byte [0x4cd181], cl
inc dword [ebx]
jmp 0x402c1c
cmp dword [0x4cd280], 0x3d
jne 0x4028ed
mov eax, dword [ebx]
xor edx, edx
mov dl, byte [eax]
cmp edx, 0x3d
jne 0x4028ed
mov dword [0x4cd280], 0x3d3d
mov dword [0x4cd17c], 5
mov ecx, dword [ebx]
mov al, byte [ecx]
mov byte [0x4cd181], al
inc dword [ebx]
jmp 0x402c1c
cmp dword [0x4cd280], 0x21
jne 0x402926
mov edx, dword [ebx]
xor ecx, ecx
mov cl, byte [edx]
cmp ecx, 0x3d
jne 0x402926
mov dword [0x4cd280], 0x3d21
mov dword [0x4cd17c], 5
mov eax, dword [ebx]
mov dl, byte [eax]
mov byte [0x4cd181], dl
inc dword [ebx]
jmp 0x402c1c
cmp dword [0x4cd280], 0x3c
jne 0x40295f
mov ecx, dword [ebx]
xor eax, eax
mov al, byte [ecx]
cmp eax, 0x3d
jne 0x40295f
mov dword [0x4cd280], 0x3d3c
mov dword [0x4cd17c], 4
mov edx, dword [ebx]
mov cl, byte [edx]
mov byte [0x4cd181], cl
inc dword [ebx]
jmp 0x402c1c
cmp dword [0x4cd280], 0x3e
jne 0x402997
mov eax, dword [ebx]
xor edx, edx
mov dl, byte [eax]
cmp edx, 0x3d
jne 0x402997
mov dword [0x4cd280], 0x3d3e
mov dword [0x4cd17c], 4
mov ecx, dword [ebx]
mov al, byte [ecx]
mov byte [0x4cd181], al
inc dword [ebx]
jmp 0x402c1c
cmp dword [0x4cd280], 0x3c
jne 0x4029d0
mov edx, dword [ebx]
xor ecx, ecx
mov cl, byte [edx]
cmp ecx, 0x3c
jne 0x4029d0
mov dword [0x4cd280], 0x3c3c
mov dword [0x4cd17c], 3
mov eax, dword [ebx]
mov dl, byte [eax]
mov byte [0x4cd181], dl
inc dword [ebx]
jmp 0x402c1c
cmp dword [0x4cd280], 0x3e
jne 0x402a09
mov ecx, dword [ebx]
xor eax, eax
mov al, byte [ecx]
cmp eax, 0x3e
jne 0x402a09
mov dword [0x4cd280], 0x3e3e
mov dword [0x4cd17c], 3
mov edx, dword [ebx]
mov cl, byte [edx]
mov byte [0x4cd181], cl
inc dword [ebx]
jmp 0x402c1c
cmp dword [0x4cd280], 0x7c
jne 0x402a21
mov dword [0x4cd17c], 8
jmp 0x402c1c
cmp dword [0x4cd280], 0x5e
jne 0x402a39
mov dword [0x4cd17c], 7
jmp 0x402c1c
cmp dword [0x4cd280], 0x26
jne 0x402a51
mov dword [0x4cd17c], 6
jmp 0x402c1c
cmp dword [0x4cd280], 0x3c
jne 0x402b23
mov eax, dword [ebx]
xor edx, edx
mov dl, byte [eax]
cmp edx, 0x26
jne 0x402b14
test byte [ebp + 8], 2
jne 0x402a8c
mov dword [0x4cd290], 0x4b03e7
mov dword [0x4cd178], 0xff
jmp 0x402c26
inc dword [ebx]
xor ecx, ecx
mov dword [ebp - 4], ecx
mov edi, 0x4cd180
jmp 0x402ac4
mov byte [edi], al
inc dword [ebx]
inc dword [ebp - 4]
inc edi
cmp dword [ebp - 4], 0x100
jl 0x402ac4
mov dword [0x4cd290], str.Too_long_import_name
mov dword [0x4cd178], 0xff
jmp 0x402c26
mov eax, dword [ebx]
mov al, byte [eax]
test al, al
je 0x402ad5
xor edx, edx
mov dl, al
cmp edx, 0x3e
jne 0x402a9a
mov ecx, dword [ebx]
xor eax, eax
mov al, byte [ecx]
cmp eax, 0x3e
je 0x402af9
mov dword [0x4cd290], str.Unterminated_import_name
mov dword [0x4cd178], 0xff
jmp 0x402c26
inc dword [ebx]
mov edx, dword [ebp - 4]
mov byte [edx + 0x4cd180], 0
mov dword [0x4cd178], 0x41
jmp 0x402c26
mov dword [0x4cd17c], 4
jmp 0x402c1c
mov eax, dword [0x4cd280]
cmp eax, 0x3e
jne 0x402b3c
mov dword [0x4cd17c], 4
jmp 0x402c1c
cmp eax, 0x2b
jne 0x402b50
mov dword [0x4cd17c], 2
jmp 0x402c1c
cmp eax, 0x2d
jne 0x402b64
mov dword [0x4cd17c], 2
jmp 0x402c1c
cmp eax, 0x2a
jne 0x402b78
mov dword [0x4cd17c], 1
jmp 0x402c1c
cmp eax, 0x2f
jne 0x402b8c
mov dword [0x4cd17c], 1
jmp 0x402c1c
cmp eax, 0x25
jne 0x402b9d
mov dword [0x4cd17c], 1
jmp 0x402c1c
cmp eax, 0x5d
jne 0x402be9
mov edi, dword [ebx]
push 1
call fcn.00401150
pop ecx
cmp dword [0x4cd178], 0x40
jne 0x402bbe
cmp dword [0x4cd280], 0x5b
je 0x402bd3
mov dword [0x4cd280], 0x5d
mov dword [ebx], edi
xor eax, eax
mov dword [0x4cd17c], eax
jmp 0x402c1c
mov dword [0x4cd280], 0x2b
mov dword [0x4cd17c], 2
jmp 0x402c1c
cmp dword [0x4cd280], 0x2e
jne 0x402c15
mov edx, dword [ebx]
xor ecx, ecx
mov cl, byte [edx]
cmp ecx, 0x2e
jne 0x402c15
mov dword [0x4cd178], 0x2a
mov dword [0x4cd280], 0x2e2e
inc dword [ebx]
jmp 0x402c26
xor eax, eax
mov dword [0x4cd17c], eax
mov dword [0x4cd178], 0x40
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret