Function at 0x1000478b
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x170
push esi
mov byte [0x1001b624], 0
mov dword [0x1001b724], 0
cmp dword [0x1001b728], 0
jne 0x100047c8
mov dword [0x1001b620], str.NULL_input_line
mov dword [0x1001b72c], 0xff
jmp 0x1000623a
mov eax, dword [0x1001b728]
xor ecx, ecx
mov cl, byte [eax]
cmp ecx, 0x20
je 0x100047e5
mov edx, dword [0x1001b728]
xor eax, eax
mov al, byte [edx]
cmp eax, 9
jne 0x100047f6
mov ecx, dword [0x1001b728]
add ecx, 1
mov dword [0x1001b728], ecx
jmp 0x100047c8
mov edx, dword [0x1001b728]
xor eax, eax
mov al, byte [edx]
test eax, eax
je 0x10004813
mov ecx, dword [0x1001b728]
xor edx, edx
mov dl, byte [ecx]
cmp edx, 0x3b
jne 0x10004822
mov dword [0x1001b72c], 0
jmp 0x1000623a
cmp dword [0x1001a598], 1
jle 0x1000484a
push 0x103
mov eax, dword [0x1001b728]
xor ecx, ecx
mov cl, byte [eax]
push ecx
call fcn.1000be28
add esp, 8
mov dword [ebp - 0x130], eax
jmp 0x1000486c
mov edx, dword [0x1001b728]
xor eax, eax
mov al, byte [edx]
mov ecx, dword [str.________________________________H]
xor edx, edx
mov dx, word [ecx + eax*2]
and edx, 0x103
mov dword [ebp - 0x130], edx
cmp dword [ebp - 0x130], 0
jne 0x10004896
mov eax, dword [0x1001b728]
xor ecx, ecx
mov cl, byte [eax]
cmp ecx, 0x5f
je 0x10004896
mov edx, dword [0x1001b728]
xor eax, eax
mov al, byte [edx]
cmp eax, 0x40
jne 0x10005529
mov ecx, dword [0x1001b728]
mov dl, byte [ecx]
mov byte [0x1001b624], dl
mov eax, dword [0x1001b728]
add eax, 1
mov dword [0x1001b728], eax
mov dword [ebp - 0x118], 1
cmp dword [0x1001a598], 1
jle 0x100048e4
push 0x107
mov ecx, dword [0x1001b728]
xor edx, edx
mov dl, byte [ecx]
push edx
call fcn.1000be28
add esp, 8
mov dword [ebp - 0x134], eax
jmp 0x10004904
mov eax, dword [0x1001b728]
xor ecx, ecx
mov cl, byte [eax]
mov edx, dword [str.________________________________H]
xor eax, eax
mov ax, word [edx + ecx*2]
and eax, 0x107
mov dword [ebp - 0x134], eax
cmp dword [ebp - 0x134], 0
jne 0x1000492a
mov ecx, dword [0x1001b728]
xor edx, edx
mov dl, byte [ecx]
cmp edx, 0x5f
je 0x1000492a
mov eax, dword [0x1001b728]
xor ecx, ecx
mov cl, byte [eax]
cmp ecx, 0x40
jne 0x1000496a
cmp dword [ebp - 0x118], 0x100
jae 0x1000496a
mov edx, dword [ebp - 0x118]
mov eax, dword [0x1001b728]
mov cl, byte [eax]
mov byte [edx + 0x1001b624], cl
mov edx, dword [ebp - 0x118]
add edx, 1
mov dword [ebp - 0x118], edx
mov eax, dword [0x1001b728]
add eax, 1
mov dword [0x1001b728], eax
jmp 0x100048bb
cmp dword [ebp - 0x118], 0x100
jb 0x1000498f
mov dword [0x1001b620], str.Too_long_identifier
mov dword [0x1001b72c], 0xff
jmp 0x1000623a
mov ecx, dword [ebp - 0x118]
mov byte [ecx + 0x1001b624], 0
mov edx, dword [0x1001b728]
xor eax, eax
mov al, byte [edx]
cmp eax, 0x20
je 0x100049ba
mov ecx, dword [0x1001b728]
xor edx, edx
mov dl, byte [ecx]
cmp edx, 9
jne 0x100049c9
mov eax, dword [0x1001b728]
add eax, 1
mov dword [0x1001b728], eax
jmp 0x1000499c
push 0x1001b624
lea ecx, [ebp - 0x104]
push ecx
call fcn.1000b9e0
add esp, 8
lea edx, [ebp - 0x104]
push edx
call fcn.100132d6
add esp, 4
mov dword [ebp - 0x120], 0
jmp 0x10004a07
mov eax, dword [ebp - 0x120]
add eax, 1
mov dword [ebp - 0x120], eax
cmp dword [ebp - 0x120], 8
jg 0x10004a4e
mov ecx, dword [ebp - 0x120]
mov edx, dword [ecx*4 + 0x10018030]
push edx
lea eax, [ebp - 0x104]
push eax
call fcn.1000b870
add esp, 8
test eax, eax
je 0x10004a33
jmp 0x100049f8
mov ecx, dword [ebp - 0x120]
mov dword [0x1001b724], ecx
mov dword [0x1001b72c], 1
jmp 0x1000623a
mov dword [ebp - 0x120], 0
jmp 0x10004a69
mov edx, dword [ebp - 0x120]
add edx, 1
mov dword [ebp - 0x120], edx
cmp dword [ebp - 0x120], 8
jg 0x10004aaf
mov eax, dword [ebp - 0x120]
mov ecx, dword [eax*4 + 0x10018054]
push ecx
lea edx, [ebp - 0x104]
push edx
call fcn.1000b870
add esp, 8
test eax, eax
je 0x10004a95
jmp 0x10004a5a
mov eax, dword [ebp - 0x120]
mov dword [0x1001b724], eax
mov dword [0x1001b72c], 2
jmp 0x1000623a
mov dword [ebp - 0x120], 0
jmp 0x10004aca
mov ecx, dword [ebp - 0x120]
add ecx, 1
mov dword [ebp - 0x120], ecx
cmp dword [ebp - 0x120], 8
jg 0x10004b11
mov edx, dword [ebp - 0x120]
mov eax, dword [edx*4 + 0x10018078]
push eax
lea ecx, [ebp - 0x104]
push ecx
call fcn.1000b870
add esp, 8
test eax, eax
je 0x10004af6
jmp 0x10004abb
mov edx, dword [ebp - 0x120]
mov dword [0x1001b724], edx
mov dword [0x1001b72c], 3
jmp 0x1000623a
mov dword [ebp - 0x120], 0
jmp 0x10004b2c
mov eax, dword [ebp - 0x120]
add eax, 1
mov dword [ebp - 0x120], eax
cmp dword [ebp - 0x120], 6
jge 0x10004ba0
mov ecx, dword [ebp - 0x120]
mov edx, dword [ecx*4 + 0x1001809c]
push edx
lea eax, [ebp - 0x104]
push eax
call fcn.1000b870
add esp, 8
test eax, eax
je 0x10004b58
jmp 0x10004b1d
mov ecx, dword [ebp - 0x120]
mov dword [0x1001b724], ecx
mov dword [0x1001b72c], 4
mov edx, dword [0x1001b728]
xor eax, eax
mov al, byte [edx]
cmp eax, 0x20
je 0x10004b8c
mov ecx, dword [0x1001b728]
xor edx, edx
mov dl, byte [ecx]
cmp edx, 9
jne 0x10004b9b
mov eax, dword [0x1001b728]
add eax, 1
mov dword [0x1001b728], eax
jmp 0x10004b6e
jmp 0x1000623a
push 0x10019a54
lea ecx, [ebp - 0x104]
push ecx
call fcn.1000b870
add esp, 8
test eax, eax
jne 0x10004ca5
mov edx, dword [0x1001b728]
mov dword [ebp - 4], edx
push 1
call fcn.1000478b
add esp, 4
cmp dword [0x1001b72c], 0x40
jne 0x10004be1
cmp dword [0x1001b724], 0x28
je 0x10004c02
mov eax, dword [ebp - 4]
mov dword [0x1001b728], eax
mov dword [0x1001b724], 0
mov dword [0x1001b72c], 5
jmp 0x1000623a
push 1
call fcn.1000478b
add esp, 4
mov ecx, dword [0x1001b724]
mov dword [ebp - 0x120], ecx
cmp dword [0x1001b72c], 0x1a
je 0x10004c2a
cmp dword [0x1001b72c], 0x1b
jne 0x10004c3c
cmp dword [0x1001b724], 0
jl 0x10004c3c
cmp dword [0x1001b724], 7
jle 0x10004c55
mov dword [0x1001b620], str.FPU_registers_have_indexes_0_to_7
mov dword [0x1001b72c], 0xff
jmp 0x1000623a
push 1
call fcn.1000478b
add esp, 4
cmp dword [0x1001b72c], 0x40
jne 0x10004c71
cmp dword [0x1001b724], 0x29
je 0x10004c8a
mov dword [0x1001b620], str.Closing_parenthesis_expected
mov dword [0x1001b72c], 0xff
jmp 0x1000623a
mov edx, dword [ebp - 0x120]
mov dword [0x1001b724], edx
mov dword [0x1001b72c], 5
jmp 0x1000623a
mov dword [ebp - 0x120], 0
jmp 0x10004cc0
mov eax, dword [ebp - 0x120]
add eax, 1
mov dword [ebp - 0x120], eax
cmp dword [ebp - 0x120], 8
jg 0x10004d07
mov ecx, dword [ebp - 0x120]
mov edx, dword [ecx*4 + 0x100180e8]
push edx
lea eax, [ebp - 0x104]
push eax
call fcn.1000b870
add esp, 8
test eax, eax
je 0x10004cec
jmp 0x10004cb1
mov ecx, dword [ebp - 0x120]
mov dword [0x1001b724], ecx
mov dword [0x1001b72c], 5
jmp 0x1000623a
mov dword [ebp - 0x120], 0
jmp 0x10004d22
mov edx, dword [ebp - 0x120]
add edx, 1
mov dword [ebp - 0x120], edx
cmp dword [ebp - 0x120], 8
jg 0x10004d68
mov eax, dword [ebp - 0x120]
mov ecx, dword [eax*4 + 0x1001810c]
push ecx
lea edx, [ebp - 0x104]
push edx
call fcn.1000b870
add esp, 8
test eax, eax
je 0x10004d4e
jmp 0x10004d13
mov eax, dword [ebp - 0x120]
mov dword [0x1001b724], eax
mov dword [0x1001b72c], 6
jmp 0x1000623a
mov dword [ebp - 0x120], 0
jmp 0x10004d83
mov ecx, dword [ebp - 0x120]
add ecx, 1
mov dword [ebp - 0x120], ecx
cmp dword [ebp - 0x120], 8
jg 0x10004dca
mov edx, dword [ebp - 0x120]
mov eax, dword [edx*4 + 0x10018130]
push eax
lea ecx, [ebp - 0x104]
push ecx
call fcn.1000b870
add esp, 8
test eax, eax
je 0x10004daf
jmp 0x10004d74
mov edx, dword [ebp - 0x120]
mov dword [0x1001b724], edx
mov dword [0x1001b72c], 7
jmp 0x1000623a
mov dword [ebp - 0x120], 0
jmp 0x10004de5
mov eax, dword [ebp - 0x120]
add eax, 1
mov dword [ebp - 0x120], eax
cmp dword [ebp - 0x120], 8
jg 0x10004e2c
mov ecx, dword [ebp - 0x120]
mov edx, dword [ecx*4 + 0x10018154]
push edx
lea eax, [ebp - 0x104]
push eax
call fcn.1000b870
add esp, 8
test eax, eax
je 0x10004e11
jmp 0x10004dd6
mov ecx, dword [ebp - 0x120]
mov dword [0x1001b724], ecx
mov dword [0x1001b72c], 8
jmp 0x1000623a
mov dword [ebp - 0x120], 0
jmp 0x10004e47
mov edx, dword [ebp - 0x120]
add edx, 1
mov dword [ebp - 0x120], edx
cmp dword [ebp - 0x120], 0xb
jae 0x10004eb2
mov eax, dword [ebp - 0x120]
mov ecx, dword [eax*4 + 0x100180bc]
push ecx
lea edx, [ebp - 0x104]
push edx
call fcn.1000b870
add esp, 8
test eax, eax
je 0x10004e73
jmp 0x10004e38
mov eax, dword [0x1001b728]
mov dword [ebp - 4], eax
push 1
call fcn.1000478b
add esp, 4
cmp dword [0x1001b72c], 0x14
je 0x10004e97
mov ecx, dword [ebp - 4]
mov dword [0x1001b728], ecx
mov edx, dword [ebp - 0x120]
mov dword [0x1001b724], edx
mov dword [0x1001b72c], 9
jmp 0x1000623a
push 0x10019a9c
lea eax, [ebp - 0x104]
push eax
call fcn.1000b870
add esp, 8
test eax, eax
jne 0x10004ee3
mov dword [0x1001b72c], 0x1e
mov dword [0x1001b724], 0
jmp 0x1000623a
push 0x10019aa0
lea ecx, [ebp - 0x104]
push ecx
call fcn.1000b870
add esp, 8
test eax, eax
jne 0x10004f14
mov dword [0x1001b72c], 0xa
mov dword [0x1001b724], 1
jmp 0x1000623a
push str.LONG
lea edx, [ebp - 0x104]
push edx
call fcn.1000b870
add esp, 8
test eax, eax
jne 0x10004f45
mov dword [0x1001b72c], 0xa
mov dword [0x1001b724], 2
jmp 0x1000623a
push 0x10019ab0
lea eax, [ebp - 0x104]
push eax
call fcn.1000b870
add esp, 8
test eax, eax
jne 0x10004f76
mov dword [0x1001b72c], 0xa
mov dword [0x1001b724], 4
jmp 0x1000623a
push 0x10019ab8
lea ecx, [ebp - 0x104]
push ecx
call fcn.1000b870
add esp, 8
test eax, eax
jne 0x10004fa7
mov dword [0x1001b72c], 0xa
mov dword [0x1001b724], 8
jmp 0x1000623a
push str.LOCAL
lea edx, [ebp - 0x104]
push edx
call fcn.1000b870
add esp, 8
test eax, eax
jne 0x100050ff
mov eax, dword [0x1001b728]
xor ecx, ecx
mov cl, byte [eax]
cmp ecx, 0x2e
jne 0x100050ff
mov edx, dword [0x1001b728]
add edx, 1
mov dword [0x1001b728], edx
mov eax, dword [0x1001b728]
xor ecx, ecx
mov cl, byte [eax]
cmp ecx, 0x20
je 0x10005001
mov edx, dword [0x1001b728]
xor eax, eax
mov al, byte [edx]
cmp eax, 9
jne 0x10005012
mov ecx, dword [0x1001b728]
add ecx, 1
mov dword [0x1001b728], ecx
jmp 0x10004fe4
cmp dword [0x1001a598], 1
jle 0x10005038
push 4
mov edx, dword [0x1001b728]
xor eax, eax
mov al, byte [edx]
push eax
call fcn.1000be28
add esp, 8
mov dword [ebp - 0x138], eax
jmp 0x10005056
mov ecx, dword [0x1001b728]
xor edx, edx
mov dl, byte [ecx]
mov eax, dword [str.________________________________H]
xor ecx, ecx
mov cx, word [eax + edx*2]
and ecx, 4
mov dword [ebp - 0x138], ecx
cmp dword [ebp - 0x138], 0
jne 0x10005078
mov dword [0x1001b620], 0x10019ac4
mov dword [0x1001b72c], 0xff
jmp 0x1000623a
cmp dword [0x1001a598], 1
jle 0x1000509e
push 4
mov edx, dword [0x1001b728]
xor eax, eax
mov al, byte [edx]
push eax
call fcn.1000be28
add esp, 8
mov dword [ebp - 0x13c], eax
jmp 0x100050bc
mov ecx, dword [0x1001b728]
xor edx, edx
mov dl, byte [ecx]
mov eax, dword [str.________________________________H]
xor ecx, ecx
mov cx, word [eax + edx*2]
and ecx, 4
mov dword [ebp - 0x13c], ecx
cmp dword [ebp - 0x13c], 0
je 0x100050f0
mov edx, dword [0x1001b724]
imul edx, edx, 0xa
mov eax, dword [0x1001b728]
xor ecx, ecx
mov cl, byte [eax]
lea edx, [edx + ecx - 0x30]
mov dword [0x1001b724], edx
mov eax, dword [0x1001b728]
add eax, 1
mov dword [0x1001b728], eax
jmp 0x10005078
mov dword [0x1001b72c], 0xb
jmp 0x1000623a
push 0x10019adc
lea ecx, [ebp - 0x104]
push ecx
call fcn.1000b870
add esp, 8
test eax, eax
jne 0x1000525a
mov edx, dword [0x1001b728]
xor eax, eax
mov al, byte [edx]
cmp eax, 0x2e
jne 0x1000525a
mov ecx, dword [0x1001b728]
add ecx, 1
mov dword [0x1001b728], ecx
mov edx, dword [0x1001b728]
xor eax, eax
mov al, byte [edx]
cmp eax, 0x20
je 0x1000515b
mov ecx, dword [0x1001b728]
xor edx, edx
mov dl, byte [ecx]
cmp edx, 9
jne 0x1000516a
mov eax, dword [0x1001b728]
add eax, 1
mov dword [0x1001b728], eax
jmp 0x1000513d
cmp dword [0x1001a598], 1
jle 0x10005190
push 4
mov ecx, dword [0x1001b728]
xor edx, edx
mov dl, byte [ecx]
push edx
call fcn.1000be28
add esp, 8
mov dword [ebp - 0x140], eax
jmp 0x100051ae
mov eax, dword [0x1001b728]
xor ecx, ecx
mov cl, byte [eax]
mov edx, dword [str.________________________________H]
xor eax, eax
mov ax, word [edx + ecx*2]
and eax, 4
mov dword [ebp - 0x140], eax
cmp dword [ebp - 0x140], 0
jne 0x100051d0
mov dword [0x1001b620], 0x10019ae0
mov dword [0x1001b72c], 0xff
jmp 0x1000623a
cmp dword [0x1001a598], 1
jle 0x100051f6
push 4
mov ecx, dword [0x1001b728]
xor edx, edx
mov dl, byte [ecx]
push edx
call fcn.1000be28
add esp, 8
mov dword [ebp - 0x144], eax
jmp 0x10005214
mov eax, dword [0x1001b728]
xor ecx, ecx
mov cl, byte [eax]
mov edx, dword [str.________________________________H]
xor eax, eax
mov ax, word [edx + ecx*2]
and eax, 4
mov dword [ebp - 0x144], eax
cmp dword [ebp - 0x144], 0
je 0x1000524b
mov ecx, dword [0x1001b724]
imul ecx, ecx, 0xa
mov edx, dword [0x1001b728]
xor eax, eax
mov al, byte [edx]
lea ecx, [ecx + eax - 0x30]
mov dword [0x1001b724], ecx
mov edx, dword [0x1001b728]
add edx, 1
mov dword [0x1001b728], edx
jmp 0x100051d0
mov dword [0x1001b72c], 0xc
jmp 0x1000623a
push 0x10019af8
lea eax, [ebp - 0x104]
push eax
call fcn.1000b870
add esp, 8
test eax, eax
jne 0x10005281
mov dword [0x1001b72c], 0x15
jmp 0x1000623a
push 0x10019afc
lea ecx, [ebp - 0x104]
push ecx
call fcn.1000b870
add esp, 8
test eax, eax
je 0x100052b1
push str.REPZ
lea edx, [ebp - 0x104]
push edx
call fcn.1000b870
add esp, 8
test eax, eax
jne 0x100052c0
mov dword [0x1001b72c], 0x16
jmp 0x1000623a
push 0x10019b0c
lea eax, [ebp - 0x104]
push eax
call fcn.1000b870
add esp, 8
test eax, eax
je 0x100052f0
push str.REPNZ
lea ecx, [ebp - 0x104]
push ecx
call fcn.1000b870
add esp, 8
test eax, eax
jne 0x100052ff
mov dword [0x1001b72c], 0x17
jmp 0x1000623a
push 0x10019b1c
lea edx, [ebp - 0x104]
push edx
call fcn.1000b870
add esp, 8
test eax, eax
jne 0x10005326
mov dword [0x1001b72c], 0x18
jmp 0x1000623a
push 0x10019b24
lea eax, [ebp - 0x104]
push eax
call fcn.1000b870
add esp, 8
test eax, eax
jne 0x1000534d
mov dword [0x1001b72c], 0x14
jmp 0x1000623a
push str.CONST
lea ecx, [ebp - 0x104]
push ecx
call fcn.1000b870
add esp, 8
test eax, eax
je 0x1000537d
push str.OFFSET
lea edx, [ebp - 0x104]
push edx
call fcn.1000b870
add esp, 8
test eax, eax
jne 0x1000538c
mov dword [0x1001b72c], 0x1c
jmp 0x1000623a
push str.SIGNED
lea eax, [ebp - 0x104]
push eax
call fcn.1000b870
add esp, 8
test eax, eax
jne 0x100053b3
mov dword [0x1001b72c], 0x1f
jmp 0x1000623a
push str.UNSIGNED
lea ecx, [ebp - 0x104]
push ecx
call fcn.1000b870
add esp, 8
test eax, eax
jne 0x100053da
mov dword [0x1001b72c], 0x20
jmp 0x1000623a
push str.CHAR
lea edx, [ebp - 0x104]
push edx
call fcn.1000b870
add esp, 8
test eax, eax
jne 0x10005401
mov dword [0x1001b72c], 0x21
jmp 0x1000623a
push str.FLOAT
lea eax, [ebp - 0x104]
push eax
call fcn.1000b870
add esp, 8
test eax, eax
jne 0x10005428
mov dword [0x1001b72c], 0x22
jmp 0x1000623a
push str.DOUBLE
lea ecx, [ebp - 0x104]
push ecx
call fcn.1000b870
add esp, 8
test eax, eax
jne 0x1000544f
mov dword [0x1001b72c], 0x23
jmp 0x1000623a
push str.FLOAT10
lea edx, [ebp - 0x104]
push edx
call fcn.1000b870
add esp, 8
test eax, eax
jne 0x10005476
mov dword [0x1001b72c], 0x24
jmp 0x1000623a
push str.STRING
lea eax, [ebp - 0x104]
push eax
call fcn.1000b870
add esp, 8
test eax, eax
jne 0x1000549d
mov dword [0x1001b72c], 0x25
jmp 0x1000623a
push str.UNICODE
lea ecx, [ebp - 0x104]
push ecx
call fcn.1000b870
add esp, 8
test eax, eax
jne 0x100054c4
mov dword [0x1001b72c], 0x26
jmp 0x1000623a
push 0x10019b7c
lea edx, [ebp - 0x104]
push edx
call fcn.1000b870
add esp, 8
test eax, eax
jne 0x100054eb
mov dword [0x1001b72c], 0x27
jmp 0x1000623a
mov eax, dword [ebp + 8]
and eax, 1
test eax, eax
je 0x10005510
mov ecx, dword [ebp - 0x118]
mov dword [0x1001b724], ecx
mov dword [0x1001b72c], 0x19
jmp 0x1000623a
mov dword [0x1001b620], str.Unknown_identifier
mov dword [0x1001b72c], 0xff
jmp 0x1000623a
cmp dword [0x1001a598], 1
jle 0x1000554f
push 4
mov edx, dword [0x1001b728]
xor eax, eax
mov al, byte [edx]
push eax
call fcn.1000be28
add esp, 8
mov dword [ebp - 0x148], eax
jmp 0x1000556d
mov ecx, dword [0x1001b728]
xor edx, edx
mov dl, byte [ecx]
mov eax, dword [str.________________________________H]
xor ecx, ecx
mov cx, word [eax + edx*2]
and ecx, 4
mov dword [ebp - 0x148], ecx
cmp dword [ebp - 0x148], 0
je 0x10005bed
mov dword [ebp - 0x124], 0
mov dword [ebp - 0x11c], 0
mov dword [ebp - 0x108], 0
mov edx, dword [ebp - 0x108]
mov dword [ebp - 0x10c], edx
mov dword [ebp - 0x12c], 0
mov dword [ebp - 0x128], 0
mov eax, dword [0x1001b728]
xor ecx, ecx
mov cl, byte [eax]
cmp ecx, 0x30
jne 0x100055f8
mov edx, dword [0x1001b728]
xor eax, eax
mov al, byte [edx + 1]
push eax
call fcn.1000bced
add esp, 4
cmp eax, 0x58
jne 0x100055f8
mov dword [ebp - 0x124], 0x10
mov ecx, dword [0x1001b728]
add ecx, 2
mov dword [0x1001b728], ecx
mov edx, 1
test edx, edx
je 0x1000578e
cmp dword [0x1001a598], 1
jle 0x1000562a
push 4
mov eax, dword [0x1001b728]
xor ecx, ecx
mov cl, byte [eax]
push ecx
call fcn.1000be28
add esp, 8
mov dword [ebp - 0x14c], eax
jmp 0x10005649
mov edx, dword [0x1001b728]
xor eax, eax
mov al, byte [edx]
mov ecx, dword [str.________________________________H]
xor edx, edx
mov dx, word [ecx + eax*2]
and edx, 4
mov dword [ebp - 0x14c], edx
cmp dword [ebp - 0x14c], 0
je 0x100056e7
mov eax, dword [ebp - 0x10c]
imul eax, eax, 0xa
mov ecx, dword [0x1001b728]
xor edx, edx
mov dl, byte [ecx]
lea eax, [eax + edx - 0x30]
mov dword [ebp - 0x10c], eax
fld qword [ebp - 0x12c]
fmul qword [0x10016fe8]
mov ecx, dword [0x1001b728]
xor edx, edx
mov dl, byte [ecx]
mov dword [ebp - 0x150], edx
fild dword [ebp - 0x150]
faddp st(1)
fsub qword [0x10016fe0]
fstp qword [ebp - 0x12c]
mov eax, dword [ebp - 0x108]
shl eax, 4
mov ecx, dword [0x1001b728]
xor edx, edx
mov dl, byte [ecx]
lea eax, [eax + edx - 0x30]
mov dword [ebp - 0x108], eax
cmp dword [ebp - 0x11c], 0
jne 0x100056d3
mov dword [ebp - 0x11c], 9
mov ecx, dword [0x1001b728]
add ecx, 1
mov dword [0x1001b728], ecx
jmp 0x10005789
cmp dword [0x1001a598], 1
jle 0x10005710
push 0x80
mov edx, dword [0x1001b728]
xor eax, eax
mov al, byte [edx]
push eax
call fcn.1000be28
add esp, 8
mov dword [ebp - 0x154], eax
jmp 0x10005731
mov ecx, dword [0x1001b728]
xor edx, edx
mov dl, byte [ecx]
mov eax, dword [str.________________________________H]
xor ecx, ecx
mov cx, word [eax + edx*2]
and ecx, 0x80
mov dword [ebp - 0x154], ecx
cmp dword [ebp - 0x154], 0
je 0x10005787
mov esi, dword [ebp - 0x108]
shl esi, 4
mov edx, dword [0x1001b728]
xor eax, eax
mov al, byte [edx]
mov dword [ebp - 0x158], eax
mov ecx, dword [ebp - 0x158]
push ecx
mov edx, dword [0x1001b728]
add edx, 1
mov dword [0x1001b728], edx
call fcn.1000bced
add esp, 4
lea eax, [esi + eax - 0x37]
mov dword [ebp - 0x108], eax
mov dword [ebp - 0x11c], 0xf
jmp 0x10005789
jmp 0x1000578e
jmp 0x100055f8
cmp dword [ebp - 0x11c], 0
jne 0x100057b0
mov dword [0x1001b620], str.Hexadecimal_digits_after_0x..._expected
mov dword [0x1001b72c], 0xff
jmp 0x1000623a
mov ecx, dword [0x1001b728]
xor edx, edx
mov dl, byte [ecx]
push edx
call fcn.1000bced
add esp, 4
cmp eax, 0x48
jne 0x1000583f
cmp dword [ebp - 0x124], 0x10
jne 0x100057ea
mov dword [0x1001b620], str.Please_dont_mix_0xXXXX_and_XXXXh_forms
mov dword [0x1001b72c], 0xff
jmp 0x1000623a
mov eax, dword [0x1001b728]
add eax, 1
mov dword [0x1001b728], eax
mov ecx, dword [ebp - 0x108]
mov dword [0x1001b724], ecx
mov dword [0x1001b72c], 0x1a
mov edx, dword [0x1001b728]
xor eax, eax
mov al, byte [edx]
cmp eax, 0x20
je 0x1000582b
mov ecx, dword [0x1001b728]
xor edx, edx
mov dl, byte [ecx]
cmp edx, 9
jne 0x1000583a
mov eax, dword [0x1001b728]
add eax, 1
mov dword [0x1001b728], eax
jmp 0x1000580d
jmp 0x1000623a
mov ecx, dword [0x1001b728]
xor edx, edx
mov dl, byte [ecx]
cmp edx, 0x2e
jne 0x10005ba4
cmp dword [ebp - 0x124], 0x10
je 0x10005864
cmp dword [ebp - 0x11c], 9
jle 0x1000587d
mov dword [0x1001b620], str.Not_a_decimal_number
mov dword [0x1001b72c], 0xff
jmp 0x1000623a
mov eax, dword [0x1001b728]
add eax, 1
mov dword [0x1001b728], eax
cmp dword [0x1001a598], 1
jle 0x100058b0
push 4
mov ecx, dword [0x1001b728]
xor edx, edx
mov dl, byte [ecx]
push edx
call fcn.1000be28
add esp, 8
mov dword [ebp - 0x15c], eax
jmp 0x100058ce
mov eax, dword [0x1001b728]
xor ecx, ecx
mov cl, byte [eax]
mov edx, dword [str.________________________________H]
xor eax, eax
mov ax, word [edx + ecx*2]
and eax, 4
mov dword [ebp - 0x15c], eax
cmp dword [ebp - 0x15c], 0
jne 0x100058f3
mov ecx, dword [0x1001b728]
xor edx, edx
mov dl, byte [ecx]
push edx
call fcn.1000bced
add esp, 4
cmp eax, 0x45
jne 0x10005b5b
mov dword [ebp - 0x114], 0
mov dword [ebp - 0x110], 0x3ff00000
cmp dword [0x1001a598], 1
jle 0x1000592c
push 4
mov eax, dword [0x1001b728]
xor ecx, ecx
mov cl, byte [eax]
push ecx
call fcn.1000be28
add esp, 8
mov dword [ebp - 0x160], eax
jmp 0x1000594b
mov edx, dword [0x1001b728]
xor eax, eax
mov al, byte [edx]
mov ecx, dword [str.________________________________H]
xor edx, edx
mov dx, word [ecx + eax*2]
and edx, 4
mov dword [ebp - 0x160], edx
cmp dword [ebp - 0x160], 0
je 0x100059a4
fld qword [ebp - 0x114]
fdiv qword [0x10016fe8]
fstp qword [ebp - 0x114]
mov eax, dword [0x1001b728]
xor ecx, ecx
mov cl, byte [eax]
sub ecx, 0x30
mov dword [ebp - 0x164], ecx
fild dword [ebp - 0x164]
fmul qword [ebp - 0x114]
fadd qword [ebp - 0x12c]
fstp qword [ebp - 0x12c]
mov edx, dword [0x1001b728]
add edx, 1
mov dword [0x1001b728], edx
jmp 0x10005907
mov eax, dword [0x1001b728]
xor ecx, ecx
mov cl, byte [eax]
push ecx
call fcn.1000bced
add esp, 4
cmp eax, 0x45
jne 0x10005b35
mov edx, dword [0x1001b728]
add edx, 1
mov dword [0x1001b728], edx
mov eax, dword [0x1001b728]
xor ecx, ecx
mov cl, byte [eax]
cmp ecx, 0x2d
jne 0x100059f7
mov dword [ebp - 0x124], 0xffffffff
mov edx, dword [0x1001b728]
add edx, 1
mov dword [0x1001b728], edx
jmp 0x10005a01
mov dword [ebp - 0x124], 1
cmp dword [0x1001a598], 1
jle 0x10005a26
push 4
mov eax, dword [0x1001b728]
xor ecx, ecx
mov cl, byte [eax]
push ecx
call fcn.1000be28
add esp, 8
mov dword [ebp - 0x168], eax
jmp 0x10005a45
mov edx, dword [0x1001b728]
xor eax, eax
mov al, byte [edx]
mov ecx, dword [str.________________________________H]
xor edx, edx
mov dx, word [ecx + eax*2]
and edx, 4
mov dword [ebp - 0x168], edx
cmp dword [ebp - 0x168], 0
jne 0x10005a67
mov dword [0x1001b620], str.Invalid_exponent
mov dword [0x1001b72c], 0xff
jmp 0x1000623a
mov dword [ebp - 0x10c], 0
cmp dword [0x1001a598], 1
jle 0x10005a96
push 4
mov eax, dword [0x1001b728]
xor ecx, ecx
mov cl, byte [eax]
push ecx
call fcn.1000be28
add esp, 8
mov dword [ebp - 0x16c], eax
jmp 0x10005ab5
mov edx, dword [0x1001b728]
xor eax, eax
mov al, byte [edx]
mov ecx, dword [str.________________________________H]
xor edx, edx
mov dx, word [ecx + eax*2]
and edx, 4
mov dword [ebp - 0x16c], edx
cmp dword [ebp - 0x16c], 0
je 0x10005afb
cmp dword [ebp - 0x10c], 0x10000
jge 0x10005af6
mov eax, dword [ebp - 0x10c]
imul eax, eax, 0xa
mov ecx, dword [0x1001b728]
xor edx, edx
mov dl, byte [ecx]
lea eax, [eax + edx - 0x30]
mov dword [ebp - 0x10c], eax
mov ecx, dword [0x1001b728]
add ecx, 1
mov dword [0x1001b728], ecx
jmp 0x10005a71
push 0x40240000
push 0
mov edx, dword [ebp - 0x10c]
imul edx, dword [ebp - 0x124]
mov dword [ebp - 0x170], edx
fild dword [ebp - 0x170]
sub esp, 8
fstp qword [esp]
call fcn.1000bae9
add esp, 0x10
fmul qword [ebp - 0x12c]
fstp qword [ebp - 0x12c]
mov eax, dword [ebp - 0x12c]
mov dword [0x1001b738], eax
mov ecx, dword [ebp - 0x128]
mov dword [0x1001b73c], ecx
mov dword [0x1001b72c], 0x1d
jmp 0x1000623a
mov edx, dword [ebp - 0x10c]
mov dword [0x1001b724], edx
mov dword [0x1001b72c], 0x1b
mov eax, dword [0x1001b728]
xor ecx, ecx
mov cl, byte [eax]
cmp ecx, 0x20
je 0x10005b8e
mov edx, dword [0x1001b728]
xor eax, eax
mov al, byte [edx]
cmp eax, 9
jne 0x10005b9f
mov ecx, dword [0x1001b728]
add ecx, 1
mov dword [0x1001b728], ecx
jmp 0x10005b71
jmp 0x1000623a
mov edx, dword [ebp - 0x108]
mov dword [0x1001b724], edx
mov dword [0x1001b72c], 0x1a
mov eax, dword [0x1001b728]
xor ecx, ecx
mov cl, byte [eax]
cmp ecx, 0x20
je 0x10005bd7
mov edx, dword [0x1001b728]
xor eax, eax
mov al, byte [edx]
cmp eax, 9
jne 0x10005be8
mov ecx, dword [0x1001b728]
add ecx, 1
mov dword [0x1001b728], ecx
jmp 0x10005bba
jmp 0x1000623a
mov edx, dword [0x1001b728]
xor eax, eax
mov al, byte [edx]
cmp eax, 0x27
jne 0x10005d26
mov ecx, dword [0x1001b728]
add ecx, 1
mov dword [0x1001b728], ecx
mov edx, dword [0x1001b728]
xor eax, eax
mov al, byte [edx]
test eax, eax
je 0x10005c3a
mov ecx, dword [0x1001b728]
xor edx, edx
mov dl, byte [ecx]
cmp edx, 0x5c
jne 0x10005c53
mov eax, dword [0x1001b728]
xor ecx, ecx
mov cl, byte [eax + 1]
test ecx, ecx
jne 0x10005c53
mov dword [0x1001b620], 0x10019c10
mov dword [0x1001b72c], 0xff
jmp 0x1000623a
mov edx, dword [0x1001b728]
xor eax, eax
mov al, byte [edx]
cmp eax, 0x27
jne 0x10005c7b
mov dword [0x1001b620], str.Empty_character_constant
mov dword [0x1001b72c], 0xff
jmp 0x1000623a
mov ecx, dword [0x1001b728]
xor edx, edx
mov dl, byte [ecx]
cmp edx, 0x5c
jne 0x10005c97
mov eax, dword [0x1001b728]
add eax, 1
mov dword [0x1001b728], eax
mov ecx, dword [0x1001b728]
xor edx, edx
mov dl, byte [ecx]
mov dword [0x1001b724], edx
mov eax, dword [0x1001b728]
add eax, 1
mov dword [0x1001b728], eax
mov ecx, dword [0x1001b728]
xor edx, edx
mov dl, byte [ecx]
cmp edx, 0x27
je 0x10005cdc
mov dword [0x1001b620], str.Unterminated_character_constant
mov dword [0x1001b72c], 0xff
jmp 0x1000623a
mov eax, dword [0x1001b728]
add eax, 1
mov dword [0x1001b728], eax
mov ecx, dword [0x1001b728]
xor edx, edx
mov dl, byte [ecx]
cmp edx, 0x20
je 0x10005d06
mov eax, dword [0x1001b728]
xor ecx, ecx
mov cl, byte [eax]
cmp ecx, 9
jne 0x10005d17
mov edx, dword [0x1001b728]
add edx, 1
mov dword [0x1001b728], edx
jmp 0x10005ce9
mov dword [0x1001b72c], 0x1a
jmp 0x1000623a
mov eax, dword [0x1001b728]
mov cl, byte [eax]
mov byte [0x1001b624], cl
xor edx, edx
mov dl, byte [0x1001b624]
mov dword [0x1001b724], edx
mov eax, dword [0x1001b728]
add eax, 1
mov dword [0x1001b728], eax
mov byte [0x1001b626], 0
mov cl, byte [0x1001b626]
mov byte [0x1001b625], cl
cmp dword [0x1001b724], 0x7c
jne 0x10005dad
mov edx, dword [0x1001b728]
xor eax, eax
mov al, byte [edx]
cmp eax, 0x7c
jne 0x10005dad
mov dword [0x1001b724], 0x7c7c
mov dword [0x1001b730], 0xa
mov ecx, dword [0x1001b728]
mov dl, byte [ecx]
mov byte [0x1001b625], dl
mov eax, dword [0x1001b728]
add eax, 1
mov dword [0x1001b728], eax
jmp 0x10006230
cmp dword [0x1001b724], 0x26
jne 0x10005dfa
mov ecx, dword [0x1001b728]
xor edx, edx
mov dl, byte [ecx]
cmp edx, 0x26
jne 0x10005dfa
mov dword [0x1001b724], 0x2626
mov dword [0x1001b730], 9
mov eax, dword [0x1001b728]
mov cl, byte [eax]
mov byte [0x1001b625], cl
mov edx, dword [0x1001b728]
add edx, 1
mov dword [0x1001b728], edx
jmp 0x10006230
cmp dword [0x1001b724], 0x3d
jne 0x10005e46
mov eax, dword [0x1001b728]
xor ecx, ecx
mov cl, byte [eax]
cmp ecx, 0x3d
jne 0x10005e46
mov dword [0x1001b724], 0x3d3d
mov dword [0x1001b730], 5
mov edx, dword [0x1001b728]
mov al, byte [edx]
mov byte [0x1001b625], al
mov ecx, dword [0x1001b728]
add ecx, 1
mov dword [0x1001b728], ecx
jmp 0x10006230
cmp dword [0x1001b724], 0x21
jne 0x10005e92
mov edx, dword [0x1001b728]
xor eax, eax
mov al, byte [edx]
cmp eax, 0x3d
jne 0x10005e92
mov dword [0x1001b724], 0x213d
mov dword [0x1001b730], 5
mov ecx, dword [0x1001b728]
mov dl, byte [ecx]
mov byte [0x1001b625], dl
mov eax, dword [0x1001b728]
add eax, 1
mov dword [0x1001b728], eax
jmp 0x10006230
cmp dword [0x1001b724], 0x3c
jne 0x10005edf
mov ecx, dword [0x1001b728]
xor edx, edx
mov dl, byte [ecx]
cmp edx, 0x3d
jne 0x10005edf
mov dword [0x1001b724], 0x3c3d
mov dword [0x1001b730], 4
mov eax, dword [0x1001b728]
mov cl, byte [eax]
mov byte [0x1001b625], cl
mov edx, dword [0x1001b728]
add edx, 1
mov dword [0x1001b728], edx
jmp 0x10006230
cmp dword [0x1001b724], 0x3e
jne 0x10005f2b
mov eax, dword [0x1001b728]
xor ecx, ecx
mov cl, byte [eax]
cmp ecx, 0x3d
jne 0x10005f2b
mov dword [0x1001b724], 0x3e3d
mov dword [0x1001b730], 4
mov edx, dword [0x1001b728]
mov al, byte [edx]
mov byte [0x1001b625], al
mov ecx, dword [0x1001b728]
add ecx, 1
mov dword [0x1001b728], ecx
jmp 0x10006230
cmp dword [0x1001b724], 0x3c
jne 0x10005f77
mov edx, dword [0x1001b728]
xor eax, eax
mov al, byte [edx]
cmp eax, 0x3c
jne 0x10005f77
mov dword [0x1001b724], 0x3c3c
mov dword [0x1001b730], 3
mov ecx, dword [0x1001b728]
mov dl, byte [ecx]
mov byte [0x1001b625], dl
mov eax, dword [0x1001b728]
add eax, 1
mov dword [0x1001b728], eax
jmp 0x10006230
cmp dword [0x1001b724], 0x3e
jne 0x10005fc4
mov ecx, dword [0x1001b728]
xor edx, edx
mov dl, byte [ecx]
cmp edx, 0x3e
jne 0x10005fc4
mov dword [0x1001b724], 0x3e3e
mov dword [0x1001b730], 3
mov eax, dword [0x1001b728]
mov cl, byte [eax]
mov byte [0x1001b625], cl
mov edx, dword [0x1001b728]
add edx, 1
mov dword [0x1001b728], edx
jmp 0x10006230
cmp dword [0x1001b724], 0x7c
jne 0x10005fdc
mov dword [0x1001b730], 8
jmp 0x10006230
cmp dword [0x1001b724], 0x5e
jne 0x10005ff4
mov dword [0x1001b730], 7
jmp 0x10006230
cmp dword [0x1001b724], 0x26
jne 0x1000600c
mov dword [0x1001b730], 6
jmp 0x10006230
cmp dword [0x1001b724], 0x3c
jne 0x10006137
mov eax, dword [0x1001b728]
xor ecx, ecx
mov cl, byte [eax]
cmp ecx, 0x26
jne 0x10006128
mov edx, dword [ebp + 8]
and edx, 2
test edx, edx
jne 0x1000604e
mov dword [0x1001b620], 0x10019c6c
mov dword [0x1001b72c], 0xff
jmp 0x1000623a
mov eax, dword [0x1001b728]
add eax, 1
mov dword [0x1001b728], eax
mov dword [ebp - 0x118], 0
mov ecx, dword [0x1001b728]
xor edx, edx
mov dl, byte [ecx]
test edx, edx
je 0x100060d7
mov eax, dword [0x1001b728]
xor ecx, ecx
mov cl, byte [eax]
cmp ecx, 0x3e
je 0x100060d7
mov edx, dword [ebp - 0x118]
mov eax, dword [0x1001b728]
mov cl, byte [eax]
mov byte [edx + 0x1001b624], cl
mov edx, dword [ebp - 0x118]
add edx, 1
mov dword [ebp - 0x118], edx
mov eax, dword [0x1001b728]
add eax, 1
mov dword [0x1001b728], eax
cmp dword [ebp - 0x118], 0x100
jb 0x100060d5
mov dword [0x1001b620], str.Too_long_import_name
mov dword [0x1001b72c], 0xff
jmp 0x1000623a
jmp 0x10006065
mov ecx, dword [0x1001b728]
xor edx, edx
mov dl, byte [ecx]
cmp edx, 0x3e
je 0x100060ff
mov dword [0x1001b620], str.Unterminated_import_name
mov dword [0x1001b72c], 0xff
jmp 0x1000623a
mov eax, dword [0x1001b728]
add eax, 1
mov dword [0x1001b728], eax
mov ecx, dword [ebp - 0x118]
mov byte [ecx + 0x1001b624], 0
mov dword [0x1001b72c], 0x41
jmp 0x1000623a
mov dword [0x1001b730], 4
jmp 0x10006230
cmp dword [0x1001b724], 0x3e
jne 0x1000614f
mov dword [0x1001b730], 4
jmp 0x10006230
cmp dword [0x1001b724], 0x2b
jne 0x10006167
mov dword [0x1001b730], 2
jmp 0x10006230
cmp dword [0x1001b724], 0x2d
jne 0x1000617f
mov dword [0x1001b730], 2
jmp 0x10006230
cmp dword [0x1001b724], 0x2a
jne 0x10006197
mov dword [0x1001b730], 1
jmp 0x10006230
cmp dword [0x1001b724], 0x2f
jne 0x100061af
mov dword [0x1001b730], 1
jmp 0x10006230
cmp dword [0x1001b724], 0x25
jne 0x100061c4
mov dword [0x1001b730], 1
jmp 0x10006230
cmp dword [0x1001b724], 0x5d
jne 0x10006226
mov edx, dword [0x1001b728]
mov dword [ebp - 4], edx
push 1
call fcn.1000478b
add esp, 4
cmp dword [0x1001b72c], 0x40
jne 0x100061f2
cmp dword [0x1001b724], 0x5b
je 0x10006210
mov dword [0x1001b724], 0x5d
mov eax, dword [ebp - 4]
mov dword [0x1001b728], eax
mov dword [0x1001b730], 0
jmp 0x10006224
mov dword [0x1001b724], 0x2b
mov dword [0x1001b730], 2
jmp 0x10006230
mov dword [0x1001b730], 0
mov dword [0x1001b72c], 0x40
pop esi
mov esp, ebp
pop ebp
ret