Function at 0x48f370
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x40
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x44]
push ebx
mov ebx, dword [esp + 0x50]
push ebp
mov ebp, dword [esp + 0x50]
push esi
push edi
push eax
push ebx
xor esi, esi
push ebp
push ecx
mov dword [esp + 0x54], 0x40
mov dword [esp + 0x28], esi
or edi, 0xffffffff
mov dword [esp + 0x24], esi
mov dword [esp + 0x50], esi
mov dword [esp + 0x38], esi
call fcn.004b7680
push 0x400
call fcn.00450050
add esp, 0x14
mov dword [esp + 0x34], eax
test eax, eax
jne 0x48f437
push 0x54330c
call fcn.0047c8a0
mov ebx, dword [0x542664]
add esp, 4
test ebx, ebx
jne 0x48f3e4
call fcn.0044c5e0
mov ebx, dword [0x542664]
mov edx, dword [ebx + 0x10]
push 0x54330c
mov dword [esp + 0x18], ebx
mov dword [0x542664], edx
call fcn.0047c8f0
push 0x26
mov dword [ebx], 0
call fcn.0044ffd0
mov ecx, 9
mov esi, str.not_enough_memory_to_parse_expression
mov edi, eax
mov dword [ebx + 4], eax
rep movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
mov eax, dword [ebx + 4]
add esp, 8
mov byte [eax + 0x25], 0
mov dword [ebx + 8], 0x25
mov dword [ebx + 0xc], 0
jmp 0x4904aa
mov eax, dword [esp + 0x34]
mov dword [esp + 0x2c], 1
mov byte [eax + 0xc], 0x84
mov cl, byte [0x51f7f8]
mov byte [eax + 0xd], cl
mov byte [eax + 0xe], 1
mov byte [eax + 0xf], 1
xor eax, eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x38], eax
mov ecx, dword [esp + 0x44]
mov eax, ebp
sub eax, esi
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x2c]
cmp eax, ecx
jl 0x48f4b3
lea esi, [eax + eax]
mov eax, dword [esp + 0x34]
mov edx, esi
shl edx, 4
push edx
push eax
call fcn.00450100
add esp, 8
test eax, eax
jne 0x48f4ab
mov ecx, dword [esp + 0x2c]
mov eax, esi
sub eax, ecx
cdq
sub eax, edx
sar eax, 1
neg eax
add esi, eax
cmp esi, ecx
jle 0x48fd88
jmp 0x48f479
mov dword [esp + 0x44], esi
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x34]
shl eax, 4
add eax, ecx
push ebx
push ebp
mov dword [esp + 0x44], eax
call fcn.004b7d50
lea ecx, [esp + 0x2c]
lea edx, [esp + 0x24]
sub ebx, eax
push ecx
add ebp, eax
push edx
push ebx
push ebp
mov dword [esp + 0x70], ebp
mov dword [esp + 0x74], ebx
call fcn.00490c30
mov dl, byte [esp + 0x34]
add esp, 0x18
mov esi, eax
test dl, 0xc0
mov dword [esp + 0x18], esi
jne case.default.0x48f50d
mov eax, dword [esp + 0x1c]
and eax, 0xff
dec eax
cmp eax, 4
ja case.default.0x48f50d
jmp dword [eax*4 + 0x490678]
mov ecx, ebx
lea edx, [esi + ebp]
sub ecx, esi
push ecx
push edx
call fcn.004b7d50
add eax, esi
add esp, 8
cmp byte [eax + ebp], 0x28
jne 0x48f54c
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x68]
push eax
push ecx
push 0
mov byte [esp + 0x28], 0x83
call fcn.0044b1e0
mov dl, byte [esp + 0x28]
add esp, 0xc
jmp case.default.0x48f50d
mov eax, dword [esp + 0x24]
lea edx, [esp + 0x4c]
push edx
push eax
push 0
call fcn.0044c9f0
add esp, 0xc
test eax, eax
jne 0x48fbef
mov dl, 0xc3
jmp 0x48f57c
mov eax, dword [esp + 0x20]
test eax, eax
jl 0x48f579
or dl, 0x80
jmp 0x48f57c
or dl, 0x40
mov byte [esp + 0x1c], dl
mov ecx, dword [esp + 0x1c]
and ecx, 0xff
mov eax, ecx
and eax, 0xc0
sub eax, 0x40
je 0x48f9be
sub eax, 0x40
je 0x48f96a
sub eax, 0x40
jne 0x48fbda
mov eax, dword [esp + 0x20]
mov dword [esp + 0x30], ebp
test eax, eax
jl 0x48fe2c
sub ecx, 0xc1
je 0x48f944
sub ecx, 2
je 0x48f944
mov ecx, dword [esp + 0x6c]
mov eax, dword [ecx + 0x18]
mov edx, dword [ecx + 0x1c]
add eax, 2
cmp eax, edx
mov dword [esp + 0x48], eax
jle 0x48f660
mov edi, dword [ecx + 0x14]
add ecx, 0x38
lea edx, [eax + eax]
cmp edi, ecx
mov dword [esp + 0x3c], edx
mov dword [esp + 0x20], ecx
jne 0x48f5fd
xor edi, edi
mov eax, dword [esp + 0x3c]
shl eax, 4
push eax
push edi
call fcn.00450100
add esp, 8
test eax, eax
jne 0x48f62a
mov ecx, dword [esp + 0x48]
lea eax, [ecx + 0x34]
mov dword [esp + 0x3c], eax
shl eax, 4
push eax
push edi
call fcn.00450070
add esp, 8
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x3c]
test edi, edi
mov dword [ecx + 0x1c], edx
jne 0x48f659
mov edx, ecx
mov esi, dword [esp + 0x20]
mov edi, eax
mov ecx, dword [edx + 0x18]
shl ecx, 4
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov esi, dword [esp + 0x18]
mov ecx, dword [esp + 0x6c]
mov dword [ecx + 0x14], eax
mov eax, dword [ecx + 0x18]
mov edx, dword [ecx + 0x14]
mov dword [esp + 0x3c], eax
shl eax, 4
mov dword [esp + 0x48], eax
add eax, edx
mov dword [eax], 1
mov dword [eax + 4], ebp
mov eax, dword [ecx + 0x18]
mov edx, dword [esp + 0x1c]
inc eax
and edx, 0xff
mov dword [ecx + 0x18], eax
lea eax, [edx - 0xc2]
cmp eax, 4
ja case.0x48f69c.195
jmp dword [eax*4 + 0x49068c]
mov ecx, dword [esp + 0x6c]
lea eax, [esp + 0x30]
push eax
push 1
push ecx
push ebx
push ebp
push 0
call fcn.004b8e90
mov esi, dword [esp + 0x48]
add esp, 0x18
sub esi, ebp
mov edi, eax
mov dword [esp + 0x18], esi
jmp 0x48f8a5
mov eax, dword [esp + 0x6c]
lea edx, [esp + 0x30]
push edx
push 1
push eax
push ebx
push ebp
push 0
call fcn.004b8b30
mov esi, dword [esp + 0x48]
add esp, 0x18
sub esi, ebp
mov edi, eax
mov dword [esp + 0x18], esi
jmp 0x48f8a5
mov esi, dword [esp + 0x6c]
push 1
push esi
push ebx
push ebp
push 0
call fcn.004b8710
mov ecx, dword [esp + 0x50]
mov edx, dword [esi + 0x14]
mov edi, eax
add esp, 0x14
lea eax, [ecx + 1]
shl eax, 4
add eax, edx
test edi, edi
jne 0x48f726
cmp dword [eax], 0x20
jne 0x48ff4e
mov esi, dword [eax + 8]
mov dword [esp + 0x18], esi
jmp 0x48f8a5
mov edx, dword [esp + 0x54]
push 0x178
push edx
call fcn.004ac6d0
mov ebx, eax
mov eax, dword [esp + 0x74]
mov esi, dword [esp + 0x60]
add esp, 8
mov ebp, dword [eax + 0x18]
mov edx, dword [eax + 0x14]
mov eax, dword [esp + 0x5c]
shl ebp, 4
add ebp, edx
add eax, esi
mov dword [ebp], 0x10
mov dword [ebp + 4], esi
mov dword [ebp + 0xc], 0
mov dword [esp + 0x30], eax
inc esi
mov ecx, dword [esp + 0x54]
push ebx
sub eax, esi
push 1
push eax
push esi
push ecx
call fcn.004b76c0
mov edi, eax
add esp, 0x14
test edi, edi
jne 0x48f7c1
mov esi, dword [ebx + 0xc]
mov edx, dword [ebx + 8]
push ebx
add esi, edx
call fcn.004b86f0
mov ecx, dword [ebx + 0x30]
mov eax, dword [esp + 0x34]
add esp, 4
cmp ecx, eax
jae 0x48f7bb
cmp byte [ecx], 0x5d
jne 0x48f7bb
mov ecx, dword [ebx + 0x34]
test ecx, ecx
je 0x48f876
cmp esi, eax
je 0x48f7e0
jmp 0x48f775
mov eax, dword [esp + 0x6c]
mov edx, dword [ebx + 0x30]
mov dword [esp + 0x58], esi
mov dword [eax + 0x30], edx
mov ecx, dword [ebx + 0x20]
mov dword [eax + 0x20], ecx
mov edx, dword [ebx + 0x34]
mov dword [eax + 0x34], edx
jmp 0x48f87a
push 0x54330c
mov dword [esp + 0x5c], esi
call fcn.0047c8a0
mov esi, dword [0x542664]
add esp, 4
test esi, esi
jne 0x48f806
call fcn.0044c5e0
mov esi, dword [0x542664]
mov eax, dword [esi + 0x10]
push 0x54330c
mov dword [esp + 0x18], esi
mov dword [0x542664], eax
call fcn.0047c8f0
push 0x16
mov dword [esi], 0
call fcn.0044ffd0
mov dword [esi + 4], eax
mov ecx, 5
mov esi, str.missing_close_bracket
mov edi, eax
rep movsd dword es:[edi], dword [esi]
mov eax, dword [esp + 0x1c]
add esp, 8
movsb byte es:[edi], byte [esi]
mov ecx, dword [eax + 4]
mov esi, dword [esp + 0x58]
mov edi, 1
mov byte [ecx + 0x15], 0
mov dword [eax + 8], 0x15
mov dword [eax + 0xc], 0
mov eax, dword [esp + 0x6c]
mov edx, dword [ebp + 4]
mov dword [eax + 0x30], edx
mov dword [eax + 0x20], 4
mov dword [eax + 0x34], edi
jmp 0x48f87a
mov dword [esp + 0x58], esi
mov eax, dword [esp + 0x54]
push ebx
push eax
call fcn.004ac640
mov dword [esp + 0x38], esi
mov eax, dword [ebp + 4]
sub esi, eax
mov dword [esp + 0x60], eax
mov eax, esi
add esp, 8
mov dword [esp + 0x18], eax
mov dword [ebp + 8], eax
mov eax, dword [esp + 0x6c]
inc dword [eax + 0x18]
test edi, edi
jne 0x48ffc3
mov ebx, dword [esp + 0x6c]
mov edi, dword [esp + 0x48]
mov eax, dword [ebx + 0x14]
mov dword [edi + eax + 8], esi
mov ecx, dword [ebx + 0x18]
mov esi, dword [esp + 0x3c]
add edi, eax
mov eax, dword [esp + 0x70]
sub ecx, esi
dec ecx
test eax, eax
mov dword [edi + 0xc], ecx
jne 0x48f936
mov al, byte [esp + 0x1c]
cmp al, 0xc6
je 0x48f8df
cmp al, 0xc4
jne 0x48f936
call fcn.0044c570
push eax
push edi
mov dword [esp + 0x2c], eax
call fcn.004b9db0
add esp, 8
test eax, eax
je 0x48f91b
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x64]
push edx
push eax
push 0
call fcn.0044b1e0
mov edi, 0xfffffffd
add esp, 0xc
mov dword [esp + 0x20], edi
mov dword [ebx + 0x18], esi
jmp 0x48fbda
mov eax, dword [esp + 0x24]
mov edx, dword [eax]
dec edx
mov dword [eax], edx
mov eax, dword [esp + 0x24]
cmp dword [eax], 0
jg 0x48f936
push eax
call fcn.0044c610
add esp, 4
mov edi, 0xfffffffe
mov dword [esp + 0x20], edi
jmp 0x48fbda
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x64]
push ecx
push edx
push 0
call fcn.0044b1e0
mov edi, 0xfffffffd
add esp, 0xc
add ebp, esi
mov dword [esp + 0x20], edi
sub ebx, esi
jmp 0x48f462
mov eax, dword [esp + 0x20]
test eax, eax
jl 0x48ffd6
mov eax, dword [esp + 0x3c]
mov byte [eax + 0xc], dl
mov ecx, dword [esp + 0x1c]
and ecx, 0xff
mov dl, byte [ecx + 0x51f774]
mov byte [eax + 0xe], 1
mov byte [eax + 0xd], dl
mov dl, byte [esp + 0x1c]
cmp dl, 0x83
mov edx, dword [esp + 0x38]
setne cl
mov byte [eax + 0xf], cl
mov dword [eax + 8], edx
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x20], eax
mov dword [esp + 0x38], eax
inc eax
mov dword [esp + 0x2c], eax
jmp 0x48fbda
mov eax, dword [esp + 0x20]
mov bl, byte [ecx + 0x51f774]
test eax, eax
mov byte [esp + 0x13], bl
jl 0x48fa05
mov eax, dword [esp + 0x3c]
cmp dl, 0x5b
jne 0x49002c
cmp byte [eax - 4], 0x85
jne 0x49002c
cmp byte [eax - 0x14], 0x83
jne 0x490001
or edi, 0xffffffff
mov dword [esp + 0x18], 0
mov dword [esp + 0x20], edi
jmp 0x48fbda
mov ebp, dword [esp + 0x38]
mov esi, dword [esp + 0x34]
mov eax, ebp
shl eax, 4
add eax, esi
mov cl, byte [eax + 0xd]
cmp cl, bl
jb 0x48fb1a
jne 0x48fa5c
cmp dl, 0x58
je 0x48fb1a
mov cl, byte [eax + 0xc]
cmp cl, 0x4c
jne 0x48fa4e
test edi, edi
jl 0x48fb1a
mov ebx, edi
shl ebx, 4
cmp byte [ebx + esi + 0xc], 0x4d
mov bl, byte [esp + 0x13]
jne 0x48fb1a
cmp cl, 0x4d
jne 0x48fa5c
cmp dl, 0x4c
je 0x48fb1a
mov cl, byte [eax + 0xc]
cmp cl, 0x85
jne 0x48fa6d
cmp dl, 0x5b
jne 0x49023f
cmp cl, 0x4c
jne 0x48fa8a
test edi, edi
jl 0x4902bf
mov edx, edi
shl edx, 4
cmp byte [edx + esi + 0xc], 0x4d
jne 0x4902bf
test edi, edi
jl 0x48faa3
mov edx, edi
shl edx, 4
cmp byte [edx + esi + 0xc], 0x4d
jne 0x48faa3
cmp cl, 0x4c
jne 0x4902ea
test edi, edi
mov dword [eax + 4], edi
jl 0x48fac9
mov ecx, edi
shl ecx, 4
add ecx, esi
mov dword [ecx + 8], ebp
mov dl, byte [eax + 0xf]
test dl, dl
je 0x48fadc
mov dl, byte [ecx + 0xf]
test dl, dl
je 0x48fadc
mov ecx, 1
jmp 0x48fade
mov cl, byte [eax + 0xf]
test cl, cl
je 0x48fadc
cmp edi, 0xfffffffd
jne 0x48fadc
mov ecx, 1
jmp 0x48fade
xor ecx, ecx
mov byte [eax + 0xf], cl
mov cl, byte [eax + 0xc]
cmp cl, 0x4c
je 0x48faee
cmp cl, 0x83
jne 0x48faf8
mov dl, byte [eax + 0xf]
shl edi, 4
mov byte [edi + esi + 0xf], dl
mov cl, byte [eax + 0xc]
cmp cl, 0x84
je 0x490351
mov dl, byte [esp + 0x1c]
mov edi, ebp
mov ebp, dword [eax + 8]
cmp cl, 0x85
mov dword [esp + 0x38], ebp
jne 0x48fa0d
cmp dl, 0x5b
jne 0x48fb2b
cmp byte [eax + 0xc], 0x85
jne 0x490361
jmp 0x48fb44
cmp dl, 0x43
jne 0x48fb44
cmp byte [eax + 0xc], 0x85
jne 0x4903d0
cmp byte [eax - 4], 0x83
jne 0x4903d0
test edi, edi
jl 0x48fb58
mov eax, edi
shl eax, 4
cmp byte [eax + esi + 0xc], 0x4d
je 0x490435
cmp dl, 0x5b
je 0x48fbda
mov eax, dword [esp + 0x3c]
mov byte [eax + 0xc], dl
mov byte [eax + 0xd], bl
mov byte [eax + 0xe], 0
mov dword [eax], edi
cmp byte [esp + 0x1c], 0x43
setne cl
test edi, edi
mov byte [eax + 0xf], cl
jl 0x48fbad
mov edx, dword [esp + 0x34]
mov ecx, edi
shl ecx, 4
add ecx, edx
mov edx, dword [esp + 0x2c]
mov dword [ecx + 8], edx
mov bl, byte [eax + 0xf]
test bl, bl
je 0x48fba6
mov bl, byte [ecx + 0xf]
test bl, bl
je 0x48fba6
mov ecx, 1
mov byte [eax + 0xf], cl
jmp 0x48fbc6
xor ecx, ecx
mov byte [eax + 0xf], cl
jmp 0x48fbc6
test cl, cl
je 0x48fbbd
cmp edi, 0xfffffffd
jne 0x48fbbd
mov ecx, 1
jmp 0x48fbbf
xor ecx, ecx
mov edx, dword [esp + 0x2c]
mov byte [eax + 0xf], cl
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x20], edx
mov dword [esp + 0x38], edx
inc edx
mov dword [eax + 8], ecx
mov dword [esp + 0x2c], edx
mov ebp, dword [esp + 0x58]
mov esi, dword [esp + 0x18]
mov ebx, dword [esp + 0x5c]
add ebp, esi
sub ebx, esi
jmp 0x48f462
mov eax, dword [esp + 0x24]
mov edx, dword [eax]
dec edx
mov dword [eax], edx
mov eax, dword [esp + 0x24]
cmp dword [eax], 0
jg 0x48fc0a
push eax
call fcn.0044c610
add esp, 4
cmp esi, 0x19
mov ecx, 0x542250
jl 0x48fc19
mov ecx, 0x52bb6c
cmp esi, 0x19
mov eax, esi
jl 0x48fc25
mov eax, 0x16
push ecx
push ebp
push eax
push str.invalid_bareword___.s_s_
call fcn.004531e0
add esp, 0x10
cmp esi, 0x19
mov dword [esp + 0x14], eax
mov edi, 0x542250
jl 0x48fc48
mov edi, 0x52bb6c
cmp esi, 0x19
mov edx, esi
jl 0x48fc54
mov edx, 0x16
cmp esi, 0x19
mov ecx, 0x542250
jl 0x48fc63
mov ecx, 0x52bb6c
cmp esi, 0x19
mov eax, esi
jl 0x48fc6f
mov eax, 0x16
push edi
push ebp
push edx
push ecx
push ebp
push eax
push str.should_be____.s_s__or___.s_s_
call fcn.004531e0
add esp, 0x1c
cmp esi, 0x19
mov dword [esp + 0x40], eax
mov ecx, 0x542250
jl 0x48fc95
mov ecx, 0x52bb6c
cmp esi, 0x19
jl 0x48fc9f
mov esi, 0x16
push ecx
push ebp
push esi
push str._or___.s_s_...___or_...
push eax
call fcn.00452ef0
mov eax, dword [esp + 0x34]
add esp, 0x14
test eax, eax
jge 0x4904aa
mov ebx, dword [esp + 0x48]
cmp byte [ebx], 0x30
jne 0x48fd68
mov al, byte [ebx + 1]
cmp al, 0x6f
je 0x48fcd8
cmp al, 0x4f
jne 0x48fd68
mov al, byte [ebx + 2]
lea esi, [ebx + 2]
cmp al, 0x30
jl 0x48fd68
cmp al, 0x39
jg 0x48fd68
mov edi, dword [sym.imp.MSVCRT.dll__isctype]
mov edx, dword [sym.imp.MSVCRT.dll___mb_cur_max]
cmp dword [edx], 1
jle 0x48fd08
movsx eax, byte [esi]
push 4
push eax
call edi
add esp, 8
jmp 0x48fd19
mov edx, dword [sym.imp.MSVCRT.dll__pctype]
movsx ecx, byte [esi]
mov eax, dword [edx]
mov al, byte [eax + ecx*2]
and eax, 4
test eax, eax
je 0x48fd20
inc esi
jmp 0x48fcf0
sub esi, ebx
push esi
push ebx
call fcn.00450ff0
mov esi, eax
push esi
call fcn.0044c840
push eax
push 0
call fcn.0046ecd0
add esp, 0x14
test eax, eax
je 0x48fd54
mov ecx, dword [esp + 0x40]
push 0xffffffffffffffff
push str._invalid_octal_number__
push ecx
call fcn.00451830
add esp, 0xc
mov ecx, dword [esi]
dec ecx
mov eax, ecx
mov dword [esi], ecx
test eax, eax
jg 0x48fd68
push esi
call fcn.0044c610
add esp, 4
mov edx, dword [esp + 0x6c]
mov dword [esp + 0x18], 0
mov dword [esp + 0x28], 1
mov dword [edx + 0x20], 9
jmp 0x4904aa
push 0x54330c
call fcn.0047c8a0
mov ebx, dword [0x542664]
add esp, 4
test ebx, ebx
jne 0x48fdaa
call fcn.0044c5e0
mov ebx, dword [0x542664]
mov eax, dword [ebx + 0x10]
push 0x54330c
mov dword [esp + 0x18], ebx
mov dword [0x542664], eax
call fcn.0047c8f0
push 0x26
mov dword [ebx], 0
call fcn.0044ffd0
mov ecx, 9
mov esi, str.not_enough_memory_to_parse_expression
mov edi, eax
mov dword [ebx + 4], eax
rep movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
mov ecx, dword [ebx + 4]
add esp, 8
mov byte [ecx + 0x25], 0
mov dword [ebx + 8], 0x25
mov dword [ebx + 0xc], 0
jmp 0x4904aa
push ebp
push esi
push str.invalid_character___.s_
call fcn.004531e0
add esp, 0xc
mov dword [esp + 0x14], eax
jmp 0x4904aa
push ebp
push esi
push str.incomplete_operator___.s_
call fcn.004531e0
add esp, 0xc
mov dword [esp + 0x14], eax
jmp 0x4904aa
push 0x5336e8
push str.missing_operator_at__s
call fcn.004531e0
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x50]
add esp, 8
cmp byte [eax], 0x30
jne 0x48feff
sub esi, eax
add esi, ebp
push esi
push eax
call fcn.00450ff0
mov esi, eax
push esi
mov dword [esp + 0x64], esi
call fcn.0044c840
push eax
push 0
call fcn.0046ecd0
add esp, 0x14
test eax, eax
je 0x48feeb
push 0x54330c
call fcn.0047c8a0
mov ebx, dword [0x542664]
add esp, 4
test ebx, ebx
jne 0x48fe97
call fcn.0044c5e0
mov ebx, dword [0x542664]
mov edx, dword [ebx + 0x10]
push 0x54330c
mov dword [esp + 0x44], ebx
mov dword [0x542664], edx
call fcn.0047c8f0
push 0x20
mov dword [ebx], 0
call fcn.0044ffd0
mov ecx, 7
mov esi, str.looks_like_invalid_octal_number
mov edi, eax
mov dword [ebx + 4], eax
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov eax, dword [ebx + 4]
mov esi, dword [esp + 0x60]
add esp, 8
mov byte [eax + 0x1f], 0
mov dword [ebx + 8], 0x1f
mov dword [ebx + 0xc], 0
mov ecx, dword [esi]
dec ecx
mov eax, ecx
mov dword [esi], ecx
test eax, eax
jg 0x48feff
push esi
call fcn.0044c610
add esp, 4
mov ecx, dword [esp + 0x6c]
mov al, byte [esp + 0x1c]
cmp al, 0xc1
mov dword [esp + 0x18], 0
mov dword [esp + 0x28], 1
mov dword [ecx + 0x20], 9
je 0x48ff2a
cmp al, 0xc3
jne 0x4904aa
mov eax, dword [esp + 0x24]
mov edx, dword [eax]
dec edx
mov dword [eax], edx
mov eax, dword [esp + 0x24]
cmp dword [eax], 0
jg 0x4904aa
push eax
call fcn.0044c610
add esp, 4
jmp 0x4904aa
push 0x54330c
call fcn.0047c8a0
mov ebx, dword [0x542664]
add esp, 4
test ebx, ebx
jne 0x48ff70
call fcn.0044c5e0
mov ebx, dword [0x542664]
mov edx, dword [ebx + 0x10]
push 0x54330c
mov dword [esp + 0x18], ebx
mov dword [0x542664], edx
call fcn.0047c8f0
push 0x16
mov dword [ebx], 0
call fcn.0044ffd0
mov ecx, 5
mov esi, str.invalid_character____
mov edi, eax
mov dword [ebx + 4], eax
rep movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
mov eax, dword [ebx + 4]
add esp, 8
mov byte [eax + 0x15], 0
mov dword [ebx + 8], 0x15
mov dword [ebx + 0xc], 0
jmp 0x4904aa
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax + 0x34]
mov ebp, dword [eax + 0x30]
mov dword [esp + 0x18], ecx
jmp 0x4904aa
push 0x5336e8
push str.missing_operator_at__s
call fcn.004531e0
add esp, 8
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], 0
mov dword [esp + 0x28], 1
jmp 0x4904aa
push 0x5336e8
push str.empty_subexpression_at__s
call fcn.004531e0
add esp, 8
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], 0
mov dword [esp + 0x28], 1
jmp 0x4904aa
cmp byte [eax - 3], bl
jbe 0x490159
mov al, byte [eax - 4]
cmp al, 0x85
jne 0x4900c0
push 0x54330c
call fcn.0047c8a0
mov ebx, dword [0x542664]
add esp, 4
test ebx, ebx
jne 0x490062
call fcn.0044c5e0
mov ebx, dword [0x542664]
mov edx, dword [ebx + 0x10]
push 0x54330c
mov dword [esp + 0x18], ebx
mov dword [0x542664], edx
call fcn.0047c8f0
push 0x16
mov dword [ebx], 0
call fcn.0044ffd0
mov ecx, 5
mov esi, str.unbalanced_open_paren
mov edi, eax
mov dword [ebx + 4], eax
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [esp + 0x74]
add esp, 8
movsb byte es:[edi], byte [esi]
mov eax, dword [ebx + 4]
mov byte [eax + 0x15], 0
mov dword [ebx + 8], 0x15
mov dword [ebx + 0xc], 0
mov dword [ecx + 0x20], 5
jmp 0x490208
cmp al, 0x43
je 0x4901e2
cmp al, 0x84
jne 0x490208
push 0x54330c
call fcn.0047c8a0
mov esi, dword [0x542664]
add esp, 4
test esi, esi
jne 0x4900f2
call fcn.0044c5e0
mov esi, dword [0x542664]
mov edx, dword [esi + 0x10]
push 0x54330c
mov dword [esp + 0x18], esi
mov dword [0x542664], edx
call fcn.0047c8f0
push 0x11
mov dword [esi], 0
call fcn.0044ffd0
mov dword [esi + 4], eax
mov ecx, dword [str.empty_expression]
mov dword [eax], ecx
mov edx, dword [0x533654]
mov dword [eax + 4], edx
mov ecx, dword [0x533658]
mov dword [eax + 8], ecx
mov edx, dword [0x53365c]
mov dword [eax + 0xc], edx
mov eax, dword [esi + 4]
add esp, 8
mov byte [eax + 0x10], 0
mov dword [esi + 8], 0x10
mov dword [esi + 0xc], 0
jmp 0x490208
cmp dl, 0x5b
jne 0x4901d1
push 0x54330c
call fcn.0047c8a0
mov ebx, dword [0x542664]
add esp, 4
test ebx, ebx
jne 0x490180
call fcn.0044c5e0
mov ebx, dword [0x542664]
mov ecx, dword [ebx + 0x10]
push 0x54330c
mov dword [esp + 0x18], ebx
mov dword [0x542664], ecx
call fcn.0047c8f0
push 0x17
mov dword [ebx], 0
call fcn.0044ffd0
mov ecx, 5
mov esi, str.unbalanced_close_paren
mov edi, eax
mov dword [ebx + 4], eax
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov edx, dword [ebx + 4]
add esp, 8
mov byte [edx + 0x16], 0
mov dword [ebx + 8], 0x16
mov dword [ebx + 0xc], 0
jmp 0x490208
cmp dl, 0x43
jne 0x490208
cmp byte [eax - 4], 0x85
jne 0x490208
cmp byte [eax - 0x14], 0x83
jne 0x490208
push 0x5336e8
push str.missing_function_argument_at__s
call fcn.004531e0
add esp, 8
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], 0
mov dword [esp + 0x28], 1
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x4904aa
push 0x5336e8
push str.missing_operand_at__s
call fcn.004531e0
add esp, 8
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], 0
mov dword [esp + 0x28], 1
jmp 0x4904aa
push 0x54330c
call fcn.0047c8a0
mov ebp, dword [0x542664]
add esp, 4
test ebp, ebp
jne 0x490261
call fcn.0044c5e0
mov ebp, dword [0x542664]
mov eax, dword [ebp + 0x10]
push 0x54330c
mov dword [esp + 0x18], ebp
mov dword [0x542664], eax
call fcn.0047c8f0
push 0x16
mov dword [ebp], 0
call fcn.0044ffd0
mov ecx, 5
mov esi, str.unbalanced_open_paren
mov edi, eax
mov dword [ebp + 4], eax
rep movsd dword es:[edi], dword [esi]
mov edx, dword [esp + 0x74]
add esp, 8
movsb byte es:[edi], byte [esi]
mov ecx, dword [ebp + 4]
mov byte [ecx + 0x15], 0
mov dword [ebp + 8], 0x15
mov dword [ebp + 0xc], 0
mov dword [edx + 0x20], 5
jmp 0x4904a6
push 0x5336e8
push str.missing_operator__:__at__s
call fcn.004531e0
add esp, 8
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], 0
mov dword [esp + 0x28], 1
jmp 0x4904a6
push 0x54330c
call fcn.0047c8a0
mov ebp, dword [0x542664]
add esp, 4
test ebp, ebp
jne 0x49030c
call fcn.0044c5e0
mov ebp, dword [0x542664]
mov eax, dword [ebp + 0x10]
push 0x54330c
mov dword [esp + 0x18], ebp
mov dword [0x542664], eax
call fcn.0047c8f0
push 0x2e
mov dword [ebp], 0
call fcn.0044ffd0
mov ecx, 0xb
mov esi, str.unexpected_operator__:__without_preceding____
mov edi, eax
mov dword [ebp + 4], eax
rep movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
mov ecx, dword [ebp + 4]
add esp, 8
mov byte [ecx + 0x2d], 0
jmp 0x490498
mov edx, dword [esp + 0x60]
pop edi
xor eax, eax
mov dword [edx], esi
pop esi
pop ebp
pop ebx
add esp, 0x40
ret
push 0x54330c
call fcn.0047c8a0
mov ebp, dword [0x542664]
add esp, 4
test ebp, ebp
jne 0x490383
call fcn.0044c5e0
mov ebp, dword [0x542664]
mov eax, dword [ebp + 0x10]
push 0x54330c
mov dword [esp + 0x18], ebp
mov dword [0x542664], eax
call fcn.0047c8f0
push 0x17
mov dword [ebp], 0
call fcn.0044ffd0
mov ecx, 5
mov esi, str.unbalanced_close_paren
mov edi, eax
mov dword [ebp + 4], eax
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov ecx, dword [ebp + 4]
add esp, 8
mov byte [ecx + 0x16], 0
mov dword [ebp + 8], 0x16
jmp 0x49049f
push 0x54330c
call fcn.0047c8a0
mov ebp, dword [0x542664]
add esp, 4
test ebp, ebp
jne 0x4903f2
call fcn.0044c5e0
mov ebp, dword [0x542664]
mov edx, dword [ebp + 0x10]
push 0x54330c
mov dword [esp + 0x18], ebp
mov dword [0x542664], edx
call fcn.0047c8f0
push 0x2e
mov dword [ebp], 0
call fcn.0044ffd0
mov ecx, 0xb
mov esi, str.unexpected_____outside_function_argument_list
mov edi, eax
mov dword [ebp + 4], eax
rep movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 4]
add esp, 8
mov byte [eax + 0x2d], 0
jmp 0x490498
push 0x54330c
call fcn.0047c8a0
mov ebp, dword [0x542664]
add esp, 4
test ebp, ebp
jne 0x490457
call fcn.0044c5e0
mov ebp, dword [0x542664]
mov ecx, dword [ebp + 0x10]
push 0x54330c
mov dword [esp + 0x18], ebp
mov dword [0x542664], ecx
call fcn.0047c8f0
push 0x2e
mov dword [ebp], 0
call fcn.0044ffd0
mov ecx, 0xb
mov esi, str.unexpected_operator__:__without_preceding____
mov edi, eax
mov dword [ebp + 4], eax
rep movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
mov edx, dword [ebp + 4]
add esp, 8
mov byte [edx + 0x2d], 0
mov dword [ebp + 8], 0x2d
mov dword [ebp + 0xc], 0
mov ebp, dword [esp + 0x58]
mov esi, dword [esp + 0x6c]
mov eax, dword [esi + 0x20]
test eax, eax
jne 0x4904bc
mov dword [esi + 0x20], 8
mov eax, dword [esp + 0x34]
test eax, eax
je 0x4904cd
push eax
call fcn.00450140
add esp, 4
mov eax, dword [esp + 0x54]
test eax, eax
jne 0x490506
mov eax, dword [esp + 0x14]
test eax, eax
je 0x49066a
mov edx, dword [eax]
dec edx
mov ecx, edx
mov dword [eax], edx
test ecx, ecx
jg 0x49066a
push eax
call fcn.0044c610
add esp, 4
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x40
ret
mov ecx, dword [esp + 0x14]
test ecx, ecx
jne 0x49051b
push eax
call fcn.0044ee30
add esp, 4
mov dword [esp + 0x14], eax
mov edi, dword [esp + 0x18]
mov eax, dword [esi + 0x28]
lea ecx, [edi + ebp + 0x19]
cmp ecx, eax
jbe 0x490535
mov edx, 0x542250
mov dword [esp + 0x58], edx
jmp 0x490542
mov dword [esp + 0x58], 0x52bb6c
mov edx, 0x542250
cmp ecx, eax
jbe 0x490550
sub eax, edi
sub eax, ebp
mov dword [esp + 0x5c], eax
jmp 0x490558
mov dword [esp + 0x5c], 0x16
mov eax, dword [esp + 0x28]
mov dword [esp + 0x64], 0x5336e8
test eax, eax
jne 0x49056c
mov dword [esp + 0x64], edx
cmp edi, 0x19
mov dword [esp + 0x68], edx
jl 0x49057d
mov dword [esp + 0x68], 0x52bb6c
cmp edi, 0x19
mov ebx, edi
jl 0x490589
mov ebx, 0x16
mov edx, dword [esi + 0x24]
lea eax, [ebp - 0x19]
cmp eax, edx
mov esi, edx
jb 0x490598
lea esi, [ebp - 0x16]
cmp eax, edx
jae 0x4905a2
mov ecx, ebp
sub ecx, edx
jmp 0x4905a7
mov ecx, 0x16
cmp eax, edx
mov edx, 0x542250
jb 0x4905b5
mov edx, 0x52bb6c
mov eax, dword [esp + 0x58]
add edi, ebp
push eax
mov eax, dword [esp + 0x60]
push edi
push eax
mov eax, dword [esp + 0x70]
push eax
mov eax, dword [esp + 0x78]
push eax
push ebp
push ebx
push esi
push ecx
mov ecx, dword [esp + 0x38]
push edx
push str._nin_expression___s_.s_.s_s_s_.s_s_
push ecx
call fcn.00452ef0
mov esi, dword [esp + 0x70]
add esp, 0x30
test esi, esi
je 0x49061c
mov edi, dword [esp + 0x14]
push 0xffffffffffffffff
push 0x533558
push edi
call fcn.00451830
push esi
push edi
call fcn.004518b0
mov ecx, dword [esi]
add esp, 0x14
dec ecx
mov eax, ecx
mov dword [esi], ecx
test eax, eax
jg 0x490620
push esi
call fcn.0044c610
add esp, 4
jmp 0x490620
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x54]
push edi
push esi
call fcn.0044ed70
mov eax, dword [esp + 0x74]
add esp, 8
mov edx, 0x542250
mov ecx, dword [eax + 0x24]
mov eax, dword [eax + 0x28]
sub eax, ecx
cmp eax, 0x19
jl 0x490649
mov edx, 0x52bb6c
cmp eax, 0x19
jl 0x490653
mov eax, 0x16
push edx
push ecx
push eax
push str._n_____parsing_expression___.s_s__
call fcn.004531e0
push eax
push esi
call fcn.00441710
add esp, 0x18
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x40
ret